<?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>8408</bug_id>
          
          <creation_ts>2006-04-15 07:09:49 -0700</creation_ts>
          <short_desc>Paint the highlight behind selected list markers</short_desc>
          <delta_ts>2006-04-19 02:26:37 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>VERIFIED</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>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>39328</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-04-15 07:09:49 -0700</bug_when>
    <thetext>Make non-image list markers inside the selection look like other highlighted text, with the selection color painted behind them, not blended in front.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39329</commentid>
    <comment_count>1</comment_count>
      <attachid>7727</attachid>
    <who name="">mitz</who>
    <bug_when>2006-04-15 07:27:01 -0700</bug_when>
    <thetext>Created attachment 7727
Patch

Mostly lifted from RenderReplaced.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39396</commentid>
    <comment_count>2</comment_count>
      <attachid>7727</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-04-15 18:15:30 -0700</bug_when>
    <thetext>Comment on attachment 7727
Patch

Why isn&apos;t there a check of selectionState() inside the &quot;isErrorImage&quot; code path?

The 153 alpha thing from RenderReplaced is really ugly. I&apos;d like it to be something more like this to make the 60% clear:

    const int selectionColorImageOverlayAlpha = 60 * 255 / 100;

If it was in a header file it could be shared with RenderReplaced.

Is it really correct to set the selection state of the item to match the state of the list marker?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39419</commentid>
    <comment_count>3</comment_count>
      <attachid>7744</attachid>
    <who name="">mitz</who>
    <bug_when>2006-04-16 08:15:11 -0700</bug_when>
    <thetext>Created attachment 7744
Revised patch

(In reply to comment #2)
&gt; Why isn&apos;t there a check of selectionState() inside the &quot;isErrorImage&quot; code
&gt; path?

My mistake, corrected in this version.

&gt; The 153 alpha thing from RenderReplaced is really ugly. I&apos;d like it to be
&gt; something more like this to make the 60% clear:
&gt; 
&gt;     const int selectionColorImageOverlayAlpha = 60 * 255 / 100;
&gt; 
&gt; If it was in a header file it could be shared with RenderReplaced.

Added in RenderObject.h.

&gt; Is it really correct to set the selection state of the item to match the state
&gt; of the list marker?

Yet another mistake. In this version I replaced the list item with the containing block both in setSelecitonState() and in selectionRect().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39454</commentid>
    <comment_count>4</comment_count>
      <attachid>7744</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-04-16 19:49:30 -0700</bug_when>
    <thetext>Comment on attachment 7744
Revised patch

In RenderListMarker::selectionRect, I think it&apos;s a little strange to compute selectionRight by adding width() to selectionLeft, then later just subtract selectionLeft out. Instead we should either just use width() directly or have a selectionWidth local variable.

Otherwise this looks perfect to me.

r=me with or without that change.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>7727</attachid>
            <date>2006-04-15 07:27:01 -0700</date>
            <delta_ts>2006-04-16 08:15:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>8408_r1.patch</filename>
            <type>text/plain</type>
            <size>12710</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDEzODc3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDYtMDQtIyMgIE1pdHogUGV0dGVsICA8b3Bl
bmRhcndpbi5vcmdAbWl0enBldHRlbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgLSB0ZXN0IGZvciBodHRwOi8vYnVnemlsbGEub3BlbmRhcndp
bi5vcmcvc2hvd19idWcuY2dpP2lkPTg0MDgKKyAgICAgICAgICBQYWludCB0aGUgaGlnaGxpZ2h0
IGJlaGluZCBzZWxlY3RlZCBsaXN0IG1hcmtlcnMKKworICAgICAgICAqIGVkaXRpbmcvc2VsZWN0
aW9uL2V4dGVuZC1ieS13b3JkLTAwMi1leHBlY3RlZC5jaGVja3N1bTogVXBkYXRlZC4KKyAgICAg
ICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQtYnktd29yZC0wMDItZXhwZWN0ZWQucG5nOiBV
cGRhdGVkLgorICAgICAgICAqIGZhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rpb24tZXhwZWN0
ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIGZhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxl
Y3Rpb24tZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2xpc3RzL21hcmtlcnMt
aW4tc2VsZWN0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9saXN0cy9t
YXJrZXJzLWluLXNlbGVjdGlvbi5odG1sOiBBZGRlZC4KKwogMjAwNi0wNC0xMiAgR2VvZmZyZXkg
R2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29tPgogCiAgICAgICAgIExheW91dCB0ZXN0IGZvciBkb2N1
bWVudC5kZWZhdWx0VmlldwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZXh0
ZW5kLWJ5LXdvcmQtMDAyLWV4cGVjdGVkLmNoZWNrc3VtCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1ieS13b3JkLTAwMi1leHBlY3RlZC5jaGVja3N1
bQkocmV2aXNpb24gMTM4NzcpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9leHRl
bmQtYnktd29yZC0wMDItZXhwZWN0ZWQuY2hlY2tzdW0JKHdvcmtpbmcgY29weSkKQEAgLTEgKzEg
QEAKLWRjOTEzYjRkMWQ0ZTI3YTJjYTM3Yjk3Mzc5NWIzNmNmClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQorMDYwNzY2Y2FlMzBmNjJlN2NkY2NhNzg4YTAxZjc2Y2IKXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQt
Ynktd29yZC0wMDItZXhwZWN0ZWQucG5nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUg
bWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2bjptaW1lLXR5cGUgPSBpbWFnZS9wbmcKSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rp
b24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9saXN0cy9t
YXJrZXJzLWluLXNlbGVjdGlvbi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
NzEgQEAKK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmll
d0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4
NjAwCisgIFJlbmRlckNhbnZhcyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDAp
IHNpemUgODAweDYwMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4NjAw
CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsOCkgc2l6ZSA3ODR4NTg0CisgICAgICBSZW5k
ZXJCbG9jayB7UH0gYXQgKDAsMCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVuZGVyVGV4dCB7I3Rl
eHR9IGF0ICgwLDApIHNpemUgNTN4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0
aCA1MzogIlRlc3QgZm9yICIKKyAgICAgICAgUmVuZGVySW5saW5lIHtJfSBhdCAoMCwwKSBzaXpl
IDY0OHgxOAorICAgICAgICAgIFJlbmRlcklubGluZSB7QX0gYXQgKDAsMCkgc2l6ZSAzNDh4MTgg
W2NvbG9yPSMwMDAwRUVdCisgICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDUzLDAp
IHNpemUgMzQ4eDE4CisgICAgICAgICAgICAgIHRleHQgcnVuIGF0ICg1MywwKSB3aWR0aCAzNDg6
ICJodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lkPTg0MDgiCisg
ICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICg0MDEsMCkgc2l6ZSAzMDB4MTgKKyAgICAg
ICAgICAgIHRleHQgcnVuIGF0ICg0MDEsMCkgd2lkdGggNDogIiAiCisgICAgICAgICAgICB0ZXh0
IHJ1biBhdCAoNDA1LDApIHdpZHRoIDI5NjogIlBhaW50IHRoZSBoaWdobGlnaHQgYmVoaW5kIHNl
bGVjdGVkIGxpc3QgbWFya2VycyIKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICg3MDEs
MCkgc2l6ZSA0eDE4CisgICAgICAgICAgdGV4dCBydW4gYXQgKDcwMSwwKSB3aWR0aCA0OiAiLiIK
KyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwzNCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMzY2eDE4CisgICAgICAgICAgdGV4dCBydW4g
YXQgKDAsMCkgd2lkdGggMzY2OiAiVGhpcyB0ZXN0cyB0aGUgcmVuZGVyaW5nIG9mIGxpc3QgbWFy
a2VycyBpbnNpZGUgdGhlIHNlbGVjdGlvbi4iCisgICAgICBSZW5kZXJCbG9jayAoYW5vbnltb3Vz
KSBhdCAoMCw2OCkgc2l6ZSA3ODR4MAorICAgICAgICBSZW5kZXJJbmxpbmUge0F9IGF0ICgwLDAp
IHNpemUgMHgwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAor
ICAgICAgUmVuZGVyQmxvY2sge0hSfSBhdCAoMCw2OCkgc2l6ZSA3ODR4MiBbYm9yZGVyOiAoMXB4
IGluc2V0ICMwMDAwMDApXQorICAgICAgUmVuZGVyQmxvY2sge1VMfSBhdCAoMCw4Nikgc2l6ZSA3
ODR4MTgKKyAgICAgICAgUmVuZGVyTGlzdEl0ZW0ge0xJfSBhdCAoNDAsMCkgc2l6ZSA3NDR4MTgK
KyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgtMTcsMCkgc2l6ZSA3eDE4CisgICAgICAg
ICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMTU3eDE4CisgICAgICAgICAgICB0
ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAxNTc6ICJJdGVtIHdpdGggb3V0c2lkZSBtYXJrZXIiCisg
ICAgICBSZW5kZXJCbG9jayB7VUx9IGF0ICgwLDEyMCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVu
ZGVyTGlzdEl0ZW0ge0xJfSBhdCAoNDAsMCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJM
aXN0TWFya2VyIGF0ICgtMSwwKSBzaXplIDd4MTgKKyAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDE0LDApIHNpemUgMTQ5eDE4CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTQsMCkg
d2lkdGggMTQ5OiAiSXRlbSB3aXRoIGluc2lkZSBtYXJrZXIiCisgICAgICBSZW5kZXJCbG9jayB7
VUx9IGF0ICgwLDE1NCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVuZGVyTGlzdEl0ZW0ge0xJfSBh
dCAoNDAsMCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgtMTcs
NCkgc2l6ZSAxMHgxMAorICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXpl
IDE5OXgxOAorICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMTk5OiAiSXRlbSB3
aXRoIG91dHNpZGUgaW1hZ2UgbWFya2VyIgorICAgICAgUmVuZGVyQmxvY2sge1VMfSBhdCAoMCwx
ODgpIHNpemUgNzg0eDE4CisgICAgICAgIFJlbmRlckxpc3RJdGVtIHtMSX0gYXQgKDQwLDApIHNp
emUgNzQ0eDE4CisgICAgICAgICAgUmVuZGVyTGlzdE1hcmtlciBhdCAoMCw0KSBzaXplIDEweDEw
CisgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxNywwKSBzaXplIDE5MXgxOAorICAg
ICAgICAgICAgdGV4dCBydW4gYXQgKDE3LDApIHdpZHRoIDE5MTogIkl0ZW0gd2l0aCBpbnNpZGUg
aW1hZ2UgbWFya2VyIgorICAgICAgUmVuZGVyQmxvY2sge09MfSBhdCAoMCwyMjIpIHNpemUgNzg0
eDM2CisgICAgICAgIFJlbmRlckxpc3RJdGVtIHtMSX0gYXQgKDQwLDApIHNpemUgNzQ0eDE4Cisg
ICAgICAgICAgUmVuZGVyTGlzdE1hcmtlciBhdCAoLTIwLDApIHNpemUgMTZ4MTgKKyAgICAgICAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAxNTd4MTgKKyAgICAgICAgICAgIHRl
eHQgcnVuIGF0ICgwLDApIHdpZHRoIDE1NzogIkl0ZW0gd2l0aCBvdXRzaWRlIG9yZGluYWwiCisg
ICAgICAgIFJlbmRlckxpc3RJdGVtIHtMSX0gYXQgKDQwLDE4KSBzaXplIDc0NHgxOAorICAgICAg
ICAgIFJlbmRlckxpc3RNYXJrZXIgYXQgKC0yMCwwKSBzaXplIDE2eDE4CisgICAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMTAxeDE4CisgICAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCAxMDE6ICJhbmQgYW5vdGhlciBvbmUiCisgICAgICBSZW5kZXJCbG9j
ayB7T0x9IGF0ICgwLDI3NCkgc2l6ZSA3ODR4MzYKKyAgICAgICAgUmVuZGVyTGlzdEl0ZW0ge0xJ
fSBhdCAoNDAsMCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgw
LDApIHNpemUgMTZ4MTgKKyAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNp
emUgMTQ5eDE4CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggMTQ5OiAiSXRl
bSB3aXRoIGluc2lkZSBvcmRpbmFsIgorICAgICAgICBSZW5kZXJMaXN0SXRlbSB7TEl9IGF0ICg0
MCwxOCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgwLDApIHNp
emUgMTZ4MTgKKyAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNpemUgMTAx
eDE4CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggMTAxOiAiYW5kIGFub3Ro
ZXIgb25lIgorICAgICAgUmVuZGVyQmxvY2sge0hSfSBhdCAoMCwzMjYpIHNpemUgNzg0eDIgW2Jv
cmRlcjogKDFweCBpbnNldCAjMDAwMDAwKV0KKyAgICAgIFJlbmRlckJsb2NrIChhbm9ueW1vdXMp
IGF0ICgwLDMzNikgc2l6ZSA3ODR4MAorICAgICAgICBSZW5kZXJJbmxpbmUge0F9IGF0ICgwLDAp
IHNpemUgMHgwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAor
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCitzZWxlY3Rpb24gc3RhcnQ6IHBvc2l0
aW9uIDAgb2YgY2hpbGQgNyB7SFJ9IG9mIGNoaWxkIDEge0JPRFl9IG9mIGNoaWxkIDAge0hUTUx9
IG9mIGRvY3VtZW50CitzZWxlY3Rpb24gZW5kOiAgIHBvc2l0aW9uIDAgb2YgY2hpbGQgMjEge0hS
fSBvZiBjaGlsZCAxIHtCT0RZfSBvZiBjaGlsZCAwIHtIVE1MfSBvZiBkb2N1bWVudApJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9saXN0cy9tYXJrZXJzLWluLXNlbGVjdGlvbi5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rpb24uaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rp
b24uaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw1NSBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8SFRNTD4KKzxI
RUFEPgorPFRJVExFPjwvVElUTEU+Cis8c3R5bGU+CisuaW5zaWRlIHsgbGlzdC1zdHlsZS1wb3Np
dGlvbjogaW5zaWRlOyB9CisuaW1nIHsgbGlzdC1zdHlsZS1pbWFnZTogdXJsKHJlc291cmNlcy93
aGl0ZS5naWYpIH0KKzwvc3R5bGU+Cis8c2NyaXB0PgorICAgIGZ1bmN0aW9uIHNlbGVjdCgpIHsK
KyAgICAgICAgdmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RhcnQiKTsKKyAgICAg
ICAgdmFyIGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW5kIik7CisgICAgICAgIHdpbmRv
dy5nZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KHMsIDAsIGUsIDApOworICAgIH0KKzwv
c2NyaXB0PgorPC9IRUFEPgorPEJPRFkgb25sb2FkPSJzZWxlY3QoKTsiPgorPHA+CisgICAgVGVz
dCBmb3IgPGk+PGEgaHJlZj0iaHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVn
LmNnaT9pZD04NDA4Ij5odHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dp
P2lkPTg0MDg8L2E+CisgICAgUGFpbnQgdGhlIGhpZ2hsaWdodCBiZWhpbmQgc2VsZWN0ZWQgbGlz
dCBtYXJrZXJzPC9pPi4KKzwvcD4KKzxwPgorICAgIFRoaXMgdGVzdHMgdGhlIHJlbmRlcmluZyBv
ZiBsaXN0IG1hcmtlcnMgaW5zaWRlIHRoZSBzZWxlY3Rpb24uCis8L3A+Cis8YSBpZD0ic3RhcnQi
PjwvYT4KKzxocj4KKzxVTD4KKzxMST5JdGVtIHdpdGggb3V0c2lkZSBtYXJrZXIKKzwvVUw+CisK
KzxVTCBjbGFzcz0iaW5zaWRlIj4KKzxMST5JdGVtIHdpdGggaW5zaWRlIG1hcmtlcgorPC9VTD4K
KworPFVMIGNsYXNzPSJpbWciPgorPExJPkl0ZW0gd2l0aCBvdXRzaWRlIGltYWdlIG1hcmtlcgor
PC9VTD4KKworPFVMIGNsYXNzPSJpbWcgaW5zaWRlIj4KKzxMST5JdGVtIHdpdGggaW5zaWRlIGlt
YWdlIG1hcmtlcgorPC9VTD4KKworPE9MPgorPExJPkl0ZW0gd2l0aCBvdXRzaWRlIG9yZGluYWwK
KzxMST5hbmQgYW5vdGhlciBvbmUKKzwvT0w+CisKKzxPTCBjbGFzcz0iaW5zaWRlIj4KKzxMST5J
dGVtIHdpdGggaW5zaWRlIG9yZGluYWwKKzxMST5hbmQgYW5vdGhlciBvbmUKKzwvT0w+Cis8aHI+
Cis8YSBpZD0iZW5kIj48L2E+Cis8L0JPRFk+Cis8L0hUTUw+CkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2xpc3RzL21hcmtlcnMtaW4tc2VsZWN0aW9uLWV4cGVjdGVkLnBuZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNh
bm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBl
ID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBtYXJrZXJz
LWluLXNlbGVjdGlvbi1leHBlY3RlZC5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1lOiBzdm46bWltZS10eXBl
CiAgICsgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9s
aXN0cy9tYXJrZXJzLWluLXNlbGVjdGlvbi1leHBlY3RlZC5jaGVja3N1bQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2xpc3RzL21hcmtlcnMtaW4tc2VsZWN0aW9uLWV4cGVjdGVkLmNo
ZWNrc3VtCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9saXN0cy9tYXJrZXJzLWlu
LXNlbGVjdGlvbi1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKQEAgLTAsMCArMSBAQAor
YzZjZjNjNWI5YzQ0ZmUyMjI1ODk2NTU4ZTUyNzA1YmYKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5n
ZUxvZwkocmV2aXNpb24gMTM4NzcpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDI1IEBACisyMDA2LTA0LSMjICBNaXR6IFBldHRlbCAgPG9wZW5kYXJ3aW4u
b3JnQG1pdHpwZXR0ZWwuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIC0gZml4IGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODQwOAorICAgICAgICAgIFBhaW50IHRoZSBoaWdobGlnaHQgYmVoaW5kIHNlbGVj
dGVkIGxpc3QgbWFya2VycworCisgICAgICAgIFRlc3Q6IGZhc3QvbGlzdHMvbWFya2Vycy1pbi1z
ZWxlY3Rpb24uaHRtbAorCisgICAgICAgICogcmVuZGVyaW5nL3JlbmRlcl9saXN0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RNYXJrZXI6OlJlbmRlckxpc3RNYXJrZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTGlzdE1hcmtlcjo6cGFpbnQpOiBQYWludCB0aGUgc2VsZWN0
aW9uIGhpZ2hsaWdodAorICAgICAgICBpZiBzZWxlY3RlZDogb3ZlciB0aGUgbWFya2VyIGZvciBp
bWFnZSBtYXJrZXJzLCB1bmRlciB0aGUgbWFya2VyIGZvciBhbGwgb3RoZXIKKyAgICAgICAgbWFy
a2Vycy4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RNYXJrZXI6OnNldFNlbGVjdGlvblN0
YXRlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMaXN0TWFya2VyOjpzZWxlY3Rp
b25SZWN0KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMaXN0TWFya2VyOjpzZWxl
Y3Rpb25Db2xvcik6IEFkZGVkLiBFbnN1cmVzIHRoYXQgdGhlIHNlbGVjdGlvbgorICAgICAgICBj
b2xvciBpcyB0cmFuc3BhcmVudCBmb3IgaW1hZ2UgbWFya2Vycy4KKyAgICAgICAgKiByZW5kZXJp
bmcvcmVuZGVyX2xpc3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RNYXJrZXI6OnNl
bGVjdGlvblN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RNYXJrZXI6OmNhbkJl
U2VsZWN0aW9uTGVhZik6CisKIDIwMDYtMDQtMTQgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUu
Y29tPgogCiAgICAgICAgIENTUyB2ZW5kb3Itc3BlY2lmaWMgcHJvcGVydHkvdmFsdWUgY2xlYW51
cC4gIFByb3Blcmx5IHF1YWxpZnkgYmFja2dyb3VuZC1jbGlwLApJbmRleDogV2ViQ29yZS9yZW5k
ZXJpbmcvcmVuZGVyX2xpc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL3Jl
bmRlcl9saXN0LmNwcAkocmV2aXNpb24gMTM4NzcpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9yZW5k
ZXJfbGlzdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM0MSw3ICszNDEsNyBAQCB2b2lkIFJlbmRl
ckxpc3RJdGVtOjpwYWludChQYWludEluZm8mIGksCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBSZW5kZXJMaXN0TWFya2Vy
OjpSZW5kZXJMaXN0TWFya2VyKERvY3VtZW50KiBkb2N1bWVudCkKLSAgICA6IFJlbmRlckJveChk
b2N1bWVudCksIG1fbGlzdEltYWdlKDApCisgICAgOiBSZW5kZXJCb3goZG9jdW1lbnQpLCBtX2xp
c3RJbWFnZSgwKSwgbV9zZWxlY3Rpb25TdGF0ZShTZWxlY3Rpb25Ob25lKQogewogICAgIC8vIGlu
aXQgUmVuZGVyT2JqZWN0IGF0dHJpYnV0ZXMKICAgICBzZXRJbmxpbmUodHJ1ZSk7ICAgLy8gb3Vy
IG9iamVjdCBpcyBJbmxpbmUKQEAgLTQxNSw2ICs0MTUsNyBAQCB2b2lkIFJlbmRlckxpc3RNYXJr
ZXI6OnBhaW50KFBhaW50SW5mbyYgCiAKICAgICBpZiAobV9saXN0SW1hZ2UgJiYgIW1fbGlzdElt
YWdlLT5pc0Vycm9ySW1hZ2UoKSkgewogICAgICAgICBwLT5kcmF3SW1hZ2VBdFBvaW50KG1fbGlz
dEltYWdlLT5pbWFnZSgpLCBtYXJrZXIubG9jYXRpb24oKSk7CisgICAgICAgIHAtPmZpbGxSZWN0
KHNlbGVjdGlvblJlY3QoKSwgc2VsZWN0aW9uQ29sb3IocCkpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQogCkBAIC00MjMsNiArNDI0LDkgQEAgdm9pZCBSZW5kZXJMaXN0TWFya2VyOjpwYWludChQ
YWludEluZm8mIAogICAgIHAtPmRyYXdSZWN0KGJveC54KCksIGJveC55KCksIGJveC53aWR0aCgp
LCBib3guaGVpZ2h0KCkpOwogI2VuZGlmCiAKKyAgICBpZiAoc2VsZWN0aW9uU3RhdGUoKSAhPSBT
ZWxlY3Rpb25Ob25lKQorICAgICAgICBwLT5maWxsUmVjdChzZWxlY3Rpb25SZWN0KCksIHNlbGVj
dGlvbkNvbG9yKHApKTsKKwogICAgIGNvbnN0IENvbG9yIGNvbG9yKCBzdHlsZSgpLT5jb2xvcigp
ICk7CiAgICAgcC0+c2V0UGVuKCBjb2xvciApOwogCkBAIC02NzcsNCArNjgxLDQzIEBAIEludFJl
Y3QgUmVuZGVyTGlzdE1hcmtlcjo6Z2V0UmVsYXRpdmVNYXIKICAgICB9CiB9CiAKK3ZvaWQgUmVu
ZGVyTGlzdE1hcmtlcjo6c2V0U2VsZWN0aW9uU3RhdGUoU2VsZWN0aW9uU3RhdGUgc3RhdGUpCit7
CisgICAgbV9zZWxlY3Rpb25TdGF0ZSA9IHN0YXRlOworICAgIFJvb3RJbmxpbmVCb3gqIHJvb3Qg
PSBpbmxpbmVCb3hXcmFwcGVyKCktPnJvb3QoKTsKKyAgICBpZiAocm9vdCkKKyAgICAgICAgcm9v
dC0+c2V0SGFzU2VsZWN0ZWRDaGlsZHJlbihzdGF0ZSAhPSBTZWxlY3Rpb25Ob25lKTsKKyAgICBs
aXN0SXRlbSgpLT5zZXRTZWxlY3Rpb25TdGF0ZShzdGF0ZSk7Cit9CisKK0ludFJlY3QgUmVuZGVy
TGlzdE1hcmtlcjo6c2VsZWN0aW9uUmVjdCgpCit7CisgICAgaWYgKHNlbGVjdGlvblN0YXRlKCkg
PT0gU2VsZWN0aW9uTm9uZSkKKyAgICAgICAgcmV0dXJuIEludFJlY3QoKTsKKworICAgIFJvb3RJ
bmxpbmVCb3gqIHJvb3QgPSBpbmxpbmVCb3hXcmFwcGVyKCktPnJvb3QoKTsKKyAgICBpbnQgc2Vs
ZWN0aW9uVG9wID0gcm9vdC0+c2VsZWN0aW9uVG9wKCk7CisgICAgaW50IHNlbGVjdGlvbkhlaWdo
dCA9IHJvb3QtPnNlbGVjdGlvbkhlaWdodCgpOworICAgIGludCBzZWxlY3Rpb25MZWZ0ID0geFBv
cygpOworICAgIGludCBzZWxlY3Rpb25SaWdodCA9IHhQb3MoKSArIHdpZHRoKCk7CisgICAgCisg
ICAgaW50IGFic3gsIGFic3k7CisgICAgbGlzdEl0ZW0oKS0+YWJzb2x1dGVQb3NpdGlvbihhYnN4
LCBhYnN5KTsKKyAgICBpZiAobGlzdEl0ZW0oKS0+aGFzT3ZlcmZsb3dDbGlwKCkpCisgICAgICAg
IGxpc3RJdGVtKCktPmxheWVyKCktPnN1YnRyYWN0U2Nyb2xsT2Zmc2V0KGFic3gsIGFic3kpOwor
CisgICAgcmV0dXJuIEludFJlY3Qoc2VsZWN0aW9uTGVmdCArIGFic3gsIHNlbGVjdGlvblRvcCAr
IGFic3ksIHNlbGVjdGlvblJpZ2h0IC0gc2VsZWN0aW9uTGVmdCwgc2VsZWN0aW9uSGVpZ2h0KTsK
K30KKworQ29sb3IgUmVuZGVyTGlzdE1hcmtlcjo6c2VsZWN0aW9uQ29sb3IoR3JhcGhpY3NDb250
ZXh0KiBwKSBjb25zdAoreworICAgIENvbG9yIGNvbG9yID0gUmVuZGVyQm94OjpzZWxlY3Rpb25D
b2xvcihwKTsKKyAgICBpZiAoIW1fbGlzdEltYWdlIHx8IG1fbGlzdEltYWdlLT5pc0Vycm9ySW1h
Z2UoKSkKKyAgICAgICAgcmV0dXJuIGNvbG9yOworICAgIC8vIEZvcmNlIGEgNjAlIGFscGhhIHNv
IHRoYXQgbm8gdXNlci1zcGVjaWZpZWQgc2VsZWN0aW9uIGNvbG9yIGNhbiBvYnNjdXJlIHNlbGVj
dGVkIGltYWdlcy4KKyAgICBpZiAoY29sb3IuYWxwaGEoKSA+IDE1MykKKyAgICAgICAgY29sb3Ig
PSBDb2xvcihjb2xvci5yZWQoKSwgY29sb3IuZ3JlZW4oKSwgY29sb3IuYmx1ZSgpLCAxNTMpOwor
ICAgIHJldHVybiBjb2xvcjsKK30KKwogfQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvcmVuZGVy
X2xpc3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9yZW5kZXJfbGlzdC5oCShy
ZXZpc2lvbiAxMzg3NykKKysrIFdlYkNvcmUvcmVuZGVyaW5nL3JlbmRlcl9saXN0LmgJKHdvcmtp
bmcgY29weSkKQEAgLTczLDEwICs3MywxNyBAQCBwdWJsaWM6CiAgICAgCiAgICAgSW50UmVjdCBn
ZXRSZWxhdGl2ZU1hcmtlclJlY3QoKTsKICAgICAKKyAgICB2aXJ0dWFsIFNlbGVjdGlvblN0YXRl
IHNlbGVjdGlvblN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9zZWxlY3Rpb25TdGF0ZTsgfQorICAg
IHZpcnR1YWwgdm9pZCBzZXRTZWxlY3Rpb25TdGF0ZShTZWxlY3Rpb25TdGF0ZSk7CisgICAgdmly
dHVhbCBJbnRSZWN0IHNlbGVjdGlvblJlY3QoKTsKKyAgICB2aXJ0dWFsIENvbG9yIHNlbGVjdGlv
bkNvbG9yKEdyYXBoaWNzQ29udGV4dCopIGNvbnN0OworICAgIHZpcnR1YWwgYm9vbCBjYW5CZVNl
bGVjdGlvbkxlYWYoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisKIHByaXZhdGU6CiAgICAgRGVw
cmVjYXRlZFN0cmluZyBtX2l0ZW07CiAgICAgQ2FjaGVkSW1hZ2UgKm1fbGlzdEltYWdlOwogICAg
IFJlbmRlckxpc3RJdGVtKiBtX2xpc3RJdGVtOworICAgIFNlbGVjdGlvblN0YXRlIG1fc2VsZWN0
aW9uU3RhdGU7CiB9OwogCiBjbGFzcyBMaXN0TWFya2VyQm94IDogcHVibGljIElubGluZUJveAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>7744</attachid>
            <date>2006-04-16 08:15:11 -0700</date>
            <delta_ts>2006-04-16 19:49:30 -0700</delta_ts>
            <desc>Revised patch</desc>
            <filename>8408_r2.patch</filename>
            <type>text/plain</type>
            <size>14446</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDEzODc3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDYtMDQtIyMgIE1pdHogUGV0dGVsICA8b3Bl
bmRhcndpbi5vcmdAbWl0enBldHRlbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgLSB0ZXN0IGZvciBodHRwOi8vYnVnemlsbGEub3BlbmRhcndp
bi5vcmcvc2hvd19idWcuY2dpP2lkPTg0MDgKKyAgICAgICAgICBQYWludCB0aGUgaGlnaGxpZ2h0
IGJlaGluZCBzZWxlY3RlZCBsaXN0IG1hcmtlcnMKKworICAgICAgICAqIGVkaXRpbmcvc2VsZWN0
aW9uL2V4dGVuZC1ieS13b3JkLTAwMi1leHBlY3RlZC5jaGVja3N1bTogVXBkYXRlZC4KKyAgICAg
ICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQtYnktd29yZC0wMDItZXhwZWN0ZWQucG5nOiBV
cGRhdGVkLgorICAgICAgICAqIGZhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rpb24tZXhwZWN0
ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIGZhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxl
Y3Rpb24tZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2xpc3RzL21hcmtlcnMt
aW4tc2VsZWN0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9saXN0cy9t
YXJrZXJzLWluLXNlbGVjdGlvbi5odG1sOiBBZGRlZC4KKwogMjAwNi0wNC0xMiAgR2VvZmZyZXkg
R2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29tPgogCiAgICAgICAgIExheW91dCB0ZXN0IGZvciBkb2N1
bWVudC5kZWZhdWx0VmlldwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZXh0
ZW5kLWJ5LXdvcmQtMDAyLWV4cGVjdGVkLmNoZWNrc3VtCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2VkaXRpbmcvc2VsZWN0aW9uL2V4dGVuZC1ieS13b3JkLTAwMi1leHBlY3RlZC5jaGVja3N1
bQkocmV2aXNpb24gMTM4NzcpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9leHRl
bmQtYnktd29yZC0wMDItZXhwZWN0ZWQuY2hlY2tzdW0JKHdvcmtpbmcgY29weSkKQEAgLTEgKzEg
QEAKLWRjOTEzYjRkMWQ0ZTI3YTJjYTM3Yjk3Mzc5NWIzNmNmClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQorMDYwNzY2Y2FlMzBmNjJlN2NkY2NhNzg4YTAxZjc2Y2IKXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9leHRlbmQt
Ynktd29yZC0wMDItZXhwZWN0ZWQucG5nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUg
bWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2bjptaW1lLXR5cGUgPSBpbWFnZS9wbmcKSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rp
b24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9saXN0cy9t
YXJrZXJzLWluLXNlbGVjdGlvbi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
NzEgQEAKK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmll
d0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4
NjAwCisgIFJlbmRlckNhbnZhcyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDAp
IHNpemUgODAweDYwMAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4NjAw
CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsOCkgc2l6ZSA3ODR4NTg0CisgICAgICBSZW5k
ZXJCbG9jayB7UH0gYXQgKDAsMCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVuZGVyVGV4dCB7I3Rl
eHR9IGF0ICgwLDApIHNpemUgNTN4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0
aCA1MzogIlRlc3QgZm9yICIKKyAgICAgICAgUmVuZGVySW5saW5lIHtJfSBhdCAoMCwwKSBzaXpl
IDY0OHgxOAorICAgICAgICAgIFJlbmRlcklubGluZSB7QX0gYXQgKDAsMCkgc2l6ZSAzNDh4MTgg
W2NvbG9yPSMwMDAwRUVdCisgICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDUzLDAp
IHNpemUgMzQ4eDE4CisgICAgICAgICAgICAgIHRleHQgcnVuIGF0ICg1MywwKSB3aWR0aCAzNDg6
ICJodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lkPTg0MDgiCisg
ICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICg0MDEsMCkgc2l6ZSAzMDB4MTgKKyAgICAg
ICAgICAgIHRleHQgcnVuIGF0ICg0MDEsMCkgd2lkdGggNDogIiAiCisgICAgICAgICAgICB0ZXh0
IHJ1biBhdCAoNDA1LDApIHdpZHRoIDI5NjogIlBhaW50IHRoZSBoaWdobGlnaHQgYmVoaW5kIHNl
bGVjdGVkIGxpc3QgbWFya2VycyIKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICg3MDEs
MCkgc2l6ZSA0eDE4CisgICAgICAgICAgdGV4dCBydW4gYXQgKDcwMSwwKSB3aWR0aCA0OiAiLiIK
KyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwzNCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMzY2eDE4CisgICAgICAgICAgdGV4dCBydW4g
YXQgKDAsMCkgd2lkdGggMzY2OiAiVGhpcyB0ZXN0cyB0aGUgcmVuZGVyaW5nIG9mIGxpc3QgbWFy
a2VycyBpbnNpZGUgdGhlIHNlbGVjdGlvbi4iCisgICAgICBSZW5kZXJCbG9jayAoYW5vbnltb3Vz
KSBhdCAoMCw2OCkgc2l6ZSA3ODR4MAorICAgICAgICBSZW5kZXJJbmxpbmUge0F9IGF0ICgwLDAp
IHNpemUgMHgwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAor
ICAgICAgUmVuZGVyQmxvY2sge0hSfSBhdCAoMCw2OCkgc2l6ZSA3ODR4MiBbYm9yZGVyOiAoMXB4
IGluc2V0ICMwMDAwMDApXQorICAgICAgUmVuZGVyQmxvY2sge1VMfSBhdCAoMCw4Nikgc2l6ZSA3
ODR4MTgKKyAgICAgICAgUmVuZGVyTGlzdEl0ZW0ge0xJfSBhdCAoNDAsMCkgc2l6ZSA3NDR4MTgK
KyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgtMTcsMCkgc2l6ZSA3eDE4CisgICAgICAg
ICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMTU3eDE4CisgICAgICAgICAgICB0
ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAxNTc6ICJJdGVtIHdpdGggb3V0c2lkZSBtYXJrZXIiCisg
ICAgICBSZW5kZXJCbG9jayB7VUx9IGF0ICgwLDEyMCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVu
ZGVyTGlzdEl0ZW0ge0xJfSBhdCAoNDAsMCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJM
aXN0TWFya2VyIGF0ICgtMSwwKSBzaXplIDd4MTgKKyAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDE0LDApIHNpemUgMTQ5eDE4CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTQsMCkg
d2lkdGggMTQ5OiAiSXRlbSB3aXRoIGluc2lkZSBtYXJrZXIiCisgICAgICBSZW5kZXJCbG9jayB7
VUx9IGF0ICgwLDE1NCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVuZGVyTGlzdEl0ZW0ge0xJfSBh
dCAoNDAsMCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgtMTcs
NCkgc2l6ZSAxMHgxMAorICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXpl
IDE5OXgxOAorICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMTk5OiAiSXRlbSB3
aXRoIG91dHNpZGUgaW1hZ2UgbWFya2VyIgorICAgICAgUmVuZGVyQmxvY2sge1VMfSBhdCAoMCwx
ODgpIHNpemUgNzg0eDE4CisgICAgICAgIFJlbmRlckxpc3RJdGVtIHtMSX0gYXQgKDQwLDApIHNp
emUgNzQ0eDE4CisgICAgICAgICAgUmVuZGVyTGlzdE1hcmtlciBhdCAoMCw0KSBzaXplIDEweDEw
CisgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxNywwKSBzaXplIDE5MXgxOAorICAg
ICAgICAgICAgdGV4dCBydW4gYXQgKDE3LDApIHdpZHRoIDE5MTogIkl0ZW0gd2l0aCBpbnNpZGUg
aW1hZ2UgbWFya2VyIgorICAgICAgUmVuZGVyQmxvY2sge09MfSBhdCAoMCwyMjIpIHNpemUgNzg0
eDM2CisgICAgICAgIFJlbmRlckxpc3RJdGVtIHtMSX0gYXQgKDQwLDApIHNpemUgNzQ0eDE4Cisg
ICAgICAgICAgUmVuZGVyTGlzdE1hcmtlciBhdCAoLTIwLDApIHNpemUgMTZ4MTgKKyAgICAgICAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAxNTd4MTgKKyAgICAgICAgICAgIHRl
eHQgcnVuIGF0ICgwLDApIHdpZHRoIDE1NzogIkl0ZW0gd2l0aCBvdXRzaWRlIG9yZGluYWwiCisg
ICAgICAgIFJlbmRlckxpc3RJdGVtIHtMSX0gYXQgKDQwLDE4KSBzaXplIDc0NHgxOAorICAgICAg
ICAgIFJlbmRlckxpc3RNYXJrZXIgYXQgKC0yMCwwKSBzaXplIDE2eDE4CisgICAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMTAxeDE4CisgICAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCAxMDE6ICJhbmQgYW5vdGhlciBvbmUiCisgICAgICBSZW5kZXJCbG9j
ayB7T0x9IGF0ICgwLDI3NCkgc2l6ZSA3ODR4MzYKKyAgICAgICAgUmVuZGVyTGlzdEl0ZW0ge0xJ
fSBhdCAoNDAsMCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgw
LDApIHNpemUgMTZ4MTgKKyAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNp
emUgMTQ5eDE4CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggMTQ5OiAiSXRl
bSB3aXRoIGluc2lkZSBvcmRpbmFsIgorICAgICAgICBSZW5kZXJMaXN0SXRlbSB7TEl9IGF0ICg0
MCwxOCkgc2l6ZSA3NDR4MTgKKyAgICAgICAgICBSZW5kZXJMaXN0TWFya2VyIGF0ICgwLDApIHNp
emUgMTZ4MTgKKyAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNpemUgMTAx
eDE4CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggMTAxOiAiYW5kIGFub3Ro
ZXIgb25lIgorICAgICAgUmVuZGVyQmxvY2sge0hSfSBhdCAoMCwzMjYpIHNpemUgNzg0eDIgW2Jv
cmRlcjogKDFweCBpbnNldCAjMDAwMDAwKV0KKyAgICAgIFJlbmRlckJsb2NrIChhbm9ueW1vdXMp
IGF0ICgwLDMzNikgc2l6ZSA3ODR4MAorICAgICAgICBSZW5kZXJJbmxpbmUge0F9IGF0ICgwLDAp
IHNpemUgMHgwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAor
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCitzZWxlY3Rpb24gc3RhcnQ6IHBvc2l0
aW9uIDAgb2YgY2hpbGQgNyB7SFJ9IG9mIGNoaWxkIDEge0JPRFl9IG9mIGNoaWxkIDAge0hUTUx9
IG9mIGRvY3VtZW50CitzZWxlY3Rpb24gZW5kOiAgIHBvc2l0aW9uIDAgb2YgY2hpbGQgMjEge0hS
fSBvZiBjaGlsZCAxIHtCT0RZfSBvZiBjaGlsZCAwIHtIVE1MfSBvZiBkb2N1bWVudApJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9saXN0cy9tYXJrZXJzLWluLXNlbGVjdGlvbi5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rpb24uaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvbGlzdHMvbWFya2Vycy1pbi1zZWxlY3Rp
b24uaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw1NSBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8SFRNTD4KKzxI
RUFEPgorPFRJVExFPjwvVElUTEU+Cis8c3R5bGU+CisuaW5zaWRlIHsgbGlzdC1zdHlsZS1wb3Np
dGlvbjogaW5zaWRlOyB9CisuaW1nIHsgbGlzdC1zdHlsZS1pbWFnZTogdXJsKHJlc291cmNlcy93
aGl0ZS5naWYpIH0KKzwvc3R5bGU+Cis8c2NyaXB0PgorICAgIGZ1bmN0aW9uIHNlbGVjdCgpIHsK
KyAgICAgICAgdmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RhcnQiKTsKKyAgICAg
ICAgdmFyIGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW5kIik7CisgICAgICAgIHdpbmRv
dy5nZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KHMsIDAsIGUsIDApOworICAgIH0KKzwv
c2NyaXB0PgorPC9IRUFEPgorPEJPRFkgb25sb2FkPSJzZWxlY3QoKTsiPgorPHA+CisgICAgVGVz
dCBmb3IgPGk+PGEgaHJlZj0iaHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVn
LmNnaT9pZD04NDA4Ij5odHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dp
P2lkPTg0MDg8L2E+CisgICAgUGFpbnQgdGhlIGhpZ2hsaWdodCBiZWhpbmQgc2VsZWN0ZWQgbGlz
dCBtYXJrZXJzPC9pPi4KKzwvcD4KKzxwPgorICAgIFRoaXMgdGVzdHMgdGhlIHJlbmRlcmluZyBv
ZiBsaXN0IG1hcmtlcnMgaW5zaWRlIHRoZSBzZWxlY3Rpb24uCis8L3A+Cis8YSBpZD0ic3RhcnQi
PjwvYT4KKzxocj4KKzxVTD4KKzxMST5JdGVtIHdpdGggb3V0c2lkZSBtYXJrZXIKKzwvVUw+CisK
KzxVTCBjbGFzcz0iaW5zaWRlIj4KKzxMST5JdGVtIHdpdGggaW5zaWRlIG1hcmtlcgorPC9VTD4K
KworPFVMIGNsYXNzPSJpbWciPgorPExJPkl0ZW0gd2l0aCBvdXRzaWRlIGltYWdlIG1hcmtlcgor
PC9VTD4KKworPFVMIGNsYXNzPSJpbWcgaW5zaWRlIj4KKzxMST5JdGVtIHdpdGggaW5zaWRlIGlt
YWdlIG1hcmtlcgorPC9VTD4KKworPE9MPgorPExJPkl0ZW0gd2l0aCBvdXRzaWRlIG9yZGluYWwK
KzxMST5hbmQgYW5vdGhlciBvbmUKKzwvT0w+CisKKzxPTCBjbGFzcz0iaW5zaWRlIj4KKzxMST5J
dGVtIHdpdGggaW5zaWRlIG9yZGluYWwKKzxMST5hbmQgYW5vdGhlciBvbmUKKzwvT0w+Cis8aHI+
Cis8YSBpZD0iZW5kIj48L2E+Cis8L0JPRFk+Cis8L0hUTUw+CkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2xpc3RzL21hcmtlcnMtaW4tc2VsZWN0aW9uLWV4cGVjdGVkLnBuZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNh
bm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBl
ID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBtYXJrZXJz
LWluLXNlbGVjdGlvbi1leHBlY3RlZC5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1lOiBzdm46bWltZS10eXBl
CiAgICsgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9s
aXN0cy9tYXJrZXJzLWluLXNlbGVjdGlvbi1leHBlY3RlZC5jaGVja3N1bQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2xpc3RzL21hcmtlcnMtaW4tc2VsZWN0aW9uLWV4cGVjdGVkLmNo
ZWNrc3VtCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9saXN0cy9tYXJrZXJzLWlu
LXNlbGVjdGlvbi1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKQEAgLTAsMCArMSBAQAor
YzZjZjNjNWI5YzQ0ZmUyMjI1ODk2NTU4ZTUyNzA1YmYKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5n
ZUxvZwkocmV2aXNpb24gMTM4NzcpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDMwIEBACisyMDA2LTA0LSMjICBNaXR6IFBldHRlbCAgPG9wZW5kYXJ3aW4u
b3JnQG1pdHpwZXR0ZWwuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIC0gZml4IGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODQwOAorICAgICAgICAgIFBhaW50IHRoZSBoaWdobGlnaHQgYmVoaW5kIHNlbGVj
dGVkIGxpc3QgbWFya2VycworCisgICAgICAgIFRlc3Q6IGZhc3QvbGlzdHMvbWFya2Vycy1pbi1z
ZWxlY3Rpb24uaHRtbAorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOiBBZGRl
ZCBzZWxlY3Rpb25Db2xvckltYWdlT3ZlcmxheUFscGhhIGNvbnN0YW50IC0KKyAgICAgICAgdGhl
IG1heGltdW0gb3BhY2l0eSBvZiB0aGUgc2VsZWN0aW9uIGNvbG9yIHdoZW4gcGFpbnRlZCBvdmVy
IGltYWdlcy4KKyAgICAgICAgKiByZW5kZXJpbmcvcmVuZGVyX2xpc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyTGlzdE1hcmtlcjo6UmVuZGVyTGlzdE1hcmtlcik6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJMaXN0TWFya2VyOjpwYWludCk6IFBhaW50IHRoZSBzZWxlY3Rpb24gaGln
aGxpZ2h0CisgICAgICAgIGlmIHNlbGVjdGVkOiBvdmVyIHRoZSBtYXJrZXIgZm9yIGltYWdlIG1h
cmtlcnMsIHVuZGVyIHRoZSBtYXJrZXIgZm9yIGFsbCBvdGhlcgorICAgICAgICBtYXJrZXJzLgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGlzdE1hcmtlcjo6c2V0U2VsZWN0aW9uU3RhdGUpOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RNYXJrZXI6OnNlbGVjdGlvblJlY3Qp
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxpc3RNYXJrZXI6OnNlbGVjdGlvbkNv
bG9yKTogQWRkZWQuIEVuc3VyZXMgdGhhdCB0aGUgc2VsZWN0aW9uCisgICAgICAgIGNvbG9yIGlz
IHRyYW5zcGFyZW50IGZvciBpbWFnZSBtYXJrZXJzLgorICAgICAgICAqIHJlbmRlcmluZy9yZW5k
ZXJfbGlzdC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGlzdE1hcmtlcjo6c2VsZWN0aW9u
U3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGlzdE1hcmtlcjo6Y2FuQmVTZWxlY3Rp
b25MZWFmKToKKyAgICAgICAgKiByZW5kZXJpbmcvcmVuZGVyX3JlcGxhY2VkLmNwcAorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyUmVwbGFjZWQ6OnNlbGVjdGlvbkNvbG9yKTogQ2hhbmdlZCB0byB1
c2UgdGhlIHNlbGVjdGlvbkNvbG9ySW1hZ2VPdmVybGF5QWxwaGEKKyAgICAgICAgY29uc3RhbnQu
CisKIDIwMDYtMDQtMTQgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgogCiAgICAgICAg
IENTUyB2ZW5kb3Itc3BlY2lmaWMgcHJvcGVydHkvdmFsdWUgY2xlYW51cC4gIFByb3Blcmx5IHF1
YWxpZnkgYmFja2dyb3VuZC1jbGlwLApJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2Jq
ZWN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgJKHJl
dmlzaW9uIDEzODgwKQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgJKHdvcmtp
bmcgY29weSkKQEAgLTcxLDYgKzcxLDggQEAgY2xhc3MgUmVuZGVyVGFibGU7CiBjbGFzcyBSZW5k
ZXJUZXh0OwogY2xhc3MgVmlzaWJsZVBvc2l0aW9uOwogCitjb25zdCBpbnQgc2VsZWN0aW9uQ29s
b3JJbWFnZU92ZXJsYXlBbHBoYSA9IDYwICogMjU1IC8gMTAwOworCiBlbnVtIFBhaW50UGhhc2Ug
ewogICAgIFBhaW50UGhhc2VCbG9ja0JhY2tncm91bmQsCiAgICAgUGFpbnRQaGFzZUNoaWxkQmxv
Y2tCYWNrZ3JvdW5kLApJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvcmVuZGVyX2xpc3QuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL3JlbmRlcl9saXN0LmNwcAkocmV2aXNpb24g
MTM4ODApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9yZW5kZXJfbGlzdC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTM0MSw3ICszNDEsNyBAQCB2b2lkIFJlbmRlckxpc3RJdGVtOjpwYWludChQYWludElu
Zm8mIGksCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQogCiBSZW5kZXJMaXN0TWFya2VyOjpSZW5kZXJMaXN0TWFya2VyKERvY3Vt
ZW50KiBkb2N1bWVudCkKLSAgICA6IFJlbmRlckJveChkb2N1bWVudCksIG1fbGlzdEltYWdlKDAp
CisgICAgOiBSZW5kZXJCb3goZG9jdW1lbnQpLCBtX2xpc3RJbWFnZSgwKSwgbV9zZWxlY3Rpb25T
dGF0ZShTZWxlY3Rpb25Ob25lKQogewogICAgIC8vIGluaXQgUmVuZGVyT2JqZWN0IGF0dHJpYnV0
ZXMKICAgICBzZXRJbmxpbmUodHJ1ZSk7ICAgLy8gb3VyIG9iamVjdCBpcyBJbmxpbmUKQEAgLTQx
NSw2ICs0MTUsOCBAQCB2b2lkIFJlbmRlckxpc3RNYXJrZXI6OnBhaW50KFBhaW50SW5mbyYgCiAK
ICAgICBpZiAobV9saXN0SW1hZ2UgJiYgIW1fbGlzdEltYWdlLT5pc0Vycm9ySW1hZ2UoKSkgewog
ICAgICAgICBwLT5kcmF3SW1hZ2VBdFBvaW50KG1fbGlzdEltYWdlLT5pbWFnZSgpLCBtYXJrZXIu
bG9jYXRpb24oKSk7CisgICAgICAgIGlmIChzZWxlY3Rpb25TdGF0ZSgpICE9IFNlbGVjdGlvbk5v
bmUpCisgICAgICAgICAgICBwLT5maWxsUmVjdChzZWxlY3Rpb25SZWN0KCksIHNlbGVjdGlvbkNv
bG9yKHApKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtNDIzLDYgKzQyNSw5IEBAIHZv
aWQgUmVuZGVyTGlzdE1hcmtlcjo6cGFpbnQoUGFpbnRJbmZvJiAKICAgICBwLT5kcmF3UmVjdChi
b3gueCgpLCBib3gueSgpLCBib3gud2lkdGgoKSwgYm94LmhlaWdodCgpKTsKICNlbmRpZgogCisg
ICAgaWYgKHNlbGVjdGlvblN0YXRlKCkgIT0gU2VsZWN0aW9uTm9uZSkKKyAgICAgICAgcC0+Zmls
bFJlY3Qoc2VsZWN0aW9uUmVjdCgpLCBzZWxlY3Rpb25Db2xvcihwKSk7CisKICAgICBjb25zdCBD
b2xvciBjb2xvciggc3R5bGUoKS0+Y29sb3IoKSApOwogICAgIHAtPnNldFBlbiggY29sb3IgKTsK
IApAQCAtNjc3LDQgKzY4Miw0NCBAQCBJbnRSZWN0IFJlbmRlckxpc3RNYXJrZXI6OmdldFJlbGF0
aXZlTWFyCiAgICAgfQogfQogCit2b2lkIFJlbmRlckxpc3RNYXJrZXI6OnNldFNlbGVjdGlvblN0
YXRlKFNlbGVjdGlvblN0YXRlIHN0YXRlKQoreworICAgIG1fc2VsZWN0aW9uU3RhdGUgPSBzdGF0
ZTsKKyAgICBSb290SW5saW5lQm94KiByb290ID0gaW5saW5lQm94V3JhcHBlcigpLT5yb290KCk7
CisgICAgaWYgKHJvb3QpCisgICAgICAgIHJvb3QtPnNldEhhc1NlbGVjdGVkQ2hpbGRyZW4oc3Rh
dGUgIT0gU2VsZWN0aW9uTm9uZSk7CisgICAgY29udGFpbmluZ0Jsb2NrKCktPnNldFNlbGVjdGlv
blN0YXRlKHN0YXRlKTsKK30KKworSW50UmVjdCBSZW5kZXJMaXN0TWFya2VyOjpzZWxlY3Rpb25S
ZWN0KCkKK3sKKyAgICBpZiAoc2VsZWN0aW9uU3RhdGUoKSA9PSBTZWxlY3Rpb25Ob25lKQorICAg
ICAgICByZXR1cm4gSW50UmVjdCgpOworCisgICAgUm9vdElubGluZUJveCogcm9vdCA9IGlubGlu
ZUJveFdyYXBwZXIoKS0+cm9vdCgpOworICAgIGludCBzZWxlY3Rpb25Ub3AgPSByb290LT5zZWxl
Y3Rpb25Ub3AoKTsKKyAgICBpbnQgc2VsZWN0aW9uSGVpZ2h0ID0gcm9vdC0+c2VsZWN0aW9uSGVp
Z2h0KCk7CisgICAgaW50IHNlbGVjdGlvbkxlZnQgPSB4UG9zKCk7CisgICAgaW50IHNlbGVjdGlv
blJpZ2h0ID0geFBvcygpICsgd2lkdGgoKTsKKyAgICAKKyAgICBpbnQgYWJzeCwgYWJzeTsKKyAg
ICBSZW5kZXJCbG9jayAqY2IgPSBjb250YWluaW5nQmxvY2soKTsKKyAgICBjYi0+YWJzb2x1dGVQ
b3NpdGlvbihhYnN4LCBhYnN5KTsKKyAgICBpZiAoY2ItPmhhc092ZXJmbG93Q2xpcCgpKQorICAg
ICAgICBjYi0+bGF5ZXIoKS0+c3VidHJhY3RTY3JvbGxPZmZzZXQoYWJzeCwgYWJzeSk7CisKKyAg
ICByZXR1cm4gSW50UmVjdChzZWxlY3Rpb25MZWZ0ICsgYWJzeCwgc2VsZWN0aW9uVG9wICsgYWJz
eSwgc2VsZWN0aW9uUmlnaHQgLSBzZWxlY3Rpb25MZWZ0LCBzZWxlY3Rpb25IZWlnaHQpOworfQor
CitDb2xvciBSZW5kZXJMaXN0TWFya2VyOjpzZWxlY3Rpb25Db2xvcihHcmFwaGljc0NvbnRleHQq
IHApIGNvbnN0Cit7CisgICAgQ29sb3IgY29sb3IgPSBSZW5kZXJCb3g6OnNlbGVjdGlvbkNvbG9y
KHApOworICAgIGlmICghbV9saXN0SW1hZ2UgfHwgbV9saXN0SW1hZ2UtPmlzRXJyb3JJbWFnZSgp
KQorICAgICAgICByZXR1cm4gY29sb3I7CisgICAgLy8gTGltaXQgdGhlIG9wYWNpdHkgc28gdGhh
dCBubyB1c2VyLXNwZWNpZmllZCBzZWxlY3Rpb24gY29sb3IgY2FuIG9ic2N1cmUgc2VsZWN0ZWQg
aW1hZ2VzLgorICAgIGlmIChjb2xvci5hbHBoYSgpID4gc2VsZWN0aW9uQ29sb3JJbWFnZU92ZXJs
YXlBbHBoYSkKKyAgICAgICAgY29sb3IgPSBDb2xvcihjb2xvci5yZWQoKSwgY29sb3IuZ3JlZW4o
KSwgY29sb3IuYmx1ZSgpLCBzZWxlY3Rpb25Db2xvckltYWdlT3ZlcmxheUFscGhhKTsKKyAgICBy
ZXR1cm4gY29sb3I7Cit9CisKIH0KSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL3JlbmRlcl9yZXBs
YWNlZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvcmVuZGVyX3JlcGxhY2Vk
LmNwcAkocmV2aXNpb24gMTM4ODApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9yZW5kZXJfcmVwbGFj
ZWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMjgsOSArMjI4LDkgQEAgQ29sb3IgUmVuZGVyUmVw
bGFjZWQ6OnNlbGVjdGlvbkNvbG9yKEdyYQogewogICAgIENvbG9yIGNvbG9yID0gUmVuZGVyQm94
OjpzZWxlY3Rpb25Db2xvcihwKTsKICAgICAgICAgIAotICAgIC8vIEZvcmNlIGEgNjAlIGFscGhh
IHNvIHRoYXQgbm8gdXNlci1zcGVjaWZpZWQgc2VsZWN0aW9uIGNvbG9yIGNhbiBvYnNjdXJlIHNl
bGVjdGVkIGltYWdlcy4KLSAgICBpZiAoY29sb3IuYWxwaGEoKSA+IDE1MykKLSAgICAgICAgY29s
b3IgPSBDb2xvcihjb2xvci5yZWQoKSwgY29sb3IuZ3JlZW4oKSwgY29sb3IuYmx1ZSgpLCAxNTMp
OworICAgIC8vIExpbWl0IHRoZSBvcGFjaXR5IHNvIHRoYXQgbm8gdXNlci1zcGVjaWZpZWQgc2Vs
ZWN0aW9uIGNvbG9yIGNhbiBvYnNjdXJlIHNlbGVjdGVkIGltYWdlcy4KKyAgICBpZiAoY29sb3Iu
YWxwaGEoKSA+IHNlbGVjdGlvbkNvbG9ySW1hZ2VPdmVybGF5QWxwaGEpCisgICAgICAgIGNvbG9y
ID0gQ29sb3IoY29sb3IucmVkKCksIGNvbG9yLmdyZWVuKCksIGNvbG9yLmJsdWUoKSwgc2VsZWN0
aW9uQ29sb3JJbWFnZU92ZXJsYXlBbHBoYSk7CiAKICAgICByZXR1cm4gY29sb3I7CiB9CkluZGV4
OiBXZWJDb3JlL3JlbmRlcmluZy9yZW5kZXJfbGlzdC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cmVuZGVyaW5nL3JlbmRlcl9saXN0LmgJKHJldmlzaW9uIDEzODgwKQorKysgV2ViQ29yZS9yZW5k
ZXJpbmcvcmVuZGVyX2xpc3QuaAkod29ya2luZyBjb3B5KQpAQCAtNzMsMTAgKzczLDE3IEBAIHB1
YmxpYzoKICAgICAKICAgICBJbnRSZWN0IGdldFJlbGF0aXZlTWFya2VyUmVjdCgpOwogICAgIAor
ICAgIHZpcnR1YWwgU2VsZWN0aW9uU3RhdGUgc2VsZWN0aW9uU3RhdGUoKSBjb25zdCB7IHJldHVy
biBtX3NlbGVjdGlvblN0YXRlOyB9CisgICAgdmlydHVhbCB2b2lkIHNldFNlbGVjdGlvblN0YXRl
KFNlbGVjdGlvblN0YXRlKTsKKyAgICB2aXJ0dWFsIEludFJlY3Qgc2VsZWN0aW9uUmVjdCgpOwor
ICAgIHZpcnR1YWwgQ29sb3Igc2VsZWN0aW9uQ29sb3IoR3JhcGhpY3NDb250ZXh0KikgY29uc3Q7
CisgICAgdmlydHVhbCBib29sIGNhbkJlU2VsZWN0aW9uTGVhZigpIGNvbnN0IHsgcmV0dXJuIHRy
dWU7IH0KKwogcHJpdmF0ZToKICAgICBEZXByZWNhdGVkU3RyaW5nIG1faXRlbTsKICAgICBDYWNo
ZWRJbWFnZSAqbV9saXN0SW1hZ2U7CiAgICAgUmVuZGVyTGlzdEl0ZW0qIG1fbGlzdEl0ZW07Cisg
ICAgU2VsZWN0aW9uU3RhdGUgbV9zZWxlY3Rpb25TdGF0ZTsKIH07CiAKIGNsYXNzIExpc3RNYXJr
ZXJCb3ggOiBwdWJsaWMgSW5saW5lQm94Cg==
</data>
<flag name="review"
          id="2117"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>