<?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>78775</bug_id>
          
          <creation_ts>2012-02-15 19:47:05 -0800</creation_ts>
          <short_desc>[chromium] Clipping/Transforms applied in wrong order in opaque paint tracking</short_desc>
          <delta_ts>2012-02-16 15:51:23 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>78755</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dana Jansens">danakj</reporter>
          <assigned_to name="Dana Jansens">danakj</assigned_to>
          <cc>backer</cc>
    
    <cc>dglazkov</cc>
    
    <cc>jamesr</cc>
    
    <cc>piman</cc>
    
    <cc>senorblanco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>557850</commentid>
    <comment_count>0</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-02-15 19:47:05 -0800</bug_when>
    <thetext>[chromium] Clipping/Transforms applied in wrong order in opaque paint tracking</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557851</commentid>
    <comment_count>1</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-02-15 19:48:27 -0800</bug_when>
    <thetext>The clip is applied in device coordinates, before transforming the painted rect into device coordinates. This makes any translations get doubly represented, and gives incorrect paint tracking results.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557861</commentid>
    <comment_count>2</comment_count>
      <attachid>127301</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-02-15 19:58:36 -0800</bug_when>
    <thetext>Created attachment 127301
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>557955</commentid>
    <comment_count>3</comment_count>
      <attachid>127301</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-15 23:58:04 -0800</bug_when>
    <thetext>Comment on attachment 127301
Patch

Attachment 127301 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/11534680

New failing tests:
compositing/scrollbar-painting.html
compositing/overflow/clip-content-under-overflow-controls.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558310</commentid>
    <comment_count>4</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-02-16 10:33:45 -0800</bug_when>
    <thetext>(I edited the scrollbar-painting.html test to remove the body margin/padding for easier numbers.)

===

Before this change, we see the draw in the bottom left corner as:

diddraw 85.000000 85.000000 15.000000x15.000000

The device clip is 0,0 15x15. So the draw is ignored for opaque tracking as it assumes it is not drawn at all.

===

After this change, we see it as:

diddraw 85.000000 85.000000 15.000000x15.000000
canvasTransform 0.000000 0.000000 15.000000x15.000000 1
clipped 0.000000 0.000000 15.000000x15.000000 1
targetTransform 0.000000 0.000000 15.000000x15.000000 1
opaque 1

ie. The transform puts us at 0,0 where the clip is applied, and the opaque paint can be used now for opaque tracking (and turning off blending). Making this our lovely off-by-1 friend again.

===

The paint in question here is

#0  WebCore::OpaqueRegionSkia::markRectAsOpaque (this=0x7fffde4523a0, rect=...) at ../../third_party/WebKit/Source/WebCore/platform/graphics/skia/OpaqueRegionSkia.cpp:293
#1  0x00007fffedcea9a2 in WebCore::OpaqueRegionSkia::didDraw (this=0x7fffde4523a0, context=0x7fffde452370, transform=..., rect=..., paint=..., drawsOpaque=true, fillsBounds=true) at ../../third_party/WebKit/Source/WebCore/platform/graphics/skia/OpaqueRegionSkia.cpp:271
#2  0x00007fffedcea1d8 in WebCore::OpaqueRegionSkia::didDrawRect (this=0x7fffde4523a0, context=0x7fffde452370, transform=..., fillRect=..., paint=..., bitmap=0x0) at ../../third_party/WebKit/Source/WebCore/platform/graphics/skia/OpaqueRegionSkia.cpp:169
#3  0x00007fffedcee2f6 in WebCore::PlatformContextSkia::didDrawRect (this=0x7fffde452370, rect=..., paint=..., bitmap=0x0) at ../../third_party/WebKit/Source/WebCore/platform/graphics/skia/PlatformContextSkia.cpp:611
#4  0x00007fffedce1f37 in WebCore::GraphicsContext::fillRect (this=0x7fffdd8cdaa0, rect=..., color=..., colorSpace=WebCore::ColorSpaceDeviceRGB) at ../../third_party/WebKit/Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp:865
#5  0x00007fffed5f0f48 in WebCore::RenderLayer::paintScrollCorner (this=0x7fffe03a2438, context=0x7fffdd8cdaa0, paintOffset=..., damageRect=...) at ../../third_party/WebKit/Source/WebCore/rendering/RenderLayer.cpp:2496

Which is:
        context-&gt;fillRect(absRect, Color::white, box-&gt;style()-&gt;colorSpace());

With absRect = {85, 85, 15x15}. Clearly an opaque paint.

===

I will include new linux baselines in this CL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558320</commentid>
    <comment_count>5</comment_count>
      <attachid>127407</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-02-16 10:46:04 -0800</bug_when>
    <thetext>Created attachment 127407
Patch

Includes new baselines for the off-by-1 fails. I suspect the mac platform baselines can go away after this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558365</commentid>
    <comment_count>6</comment_count>
      <attachid>127407</attachid>
    <who name="Stephen White">senorblanco</who>
    <bug_when>2012-02-16 11:24:50 -0800</bug_when>
    <thetext>Comment on attachment 127407
Patch

OK.  r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558615</commentid>
    <comment_count>7</comment_count>
      <attachid>127407</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-16 15:51:18 -0800</bug_when>
    <thetext>Comment on attachment 127407
Patch

Clearing flags on attachment: 127407

Committed r107988: &lt;http://trac.webkit.org/changeset/107988&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>558616</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-16 15:51:23 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127301</attachid>
            <date>2012-02-15 19:58:36 -0800</date>
            <delta_ts>2012-02-16 10:45:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-78775-20120215225833.patch</filename>
            <type>text/plain</type>
            <size>9634</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3ODU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2Y3YTMwM2U2ZTRjNmM2
ZDAxYzg4NDMyZmZjMWY0ZWMzMzFkMzdkYy4uZTIzYWQ4YTdjODE3YjM3ZmEwZjNjNDU4NDU5NWIz
ZmFmN2Y5NjAyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAyLTE1ICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gQ2xp
cHBpbmcvVHJhbnNmb3JtcyBhcHBsaWVkIGluIHdyb25nIG9yZGVyIGluIG9wYXF1ZSBwYWludCB0
cmFja2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Nzg3NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBU
aGUgY2xpcCB3YXMgYmVpbmcgYXBwbGllZCBpbiBkZXZpY2UgY29vcmRpbmF0ZXMsIGJlZm9yZSB0
cmFuc2Zvcm1pbmcgdGhlIHBhaW50ZWQKKyAgICAgICAgcmVjdCBpbnRvIGRldmljZSBjb29yZGlu
YXRlcy4gVGhpcyBtYWRlIGFueSB0cmFuc2xhdGlvbnMgZ2V0IGRvdWJseSByZXByZXNlbnRlZCwK
KyAgICAgICAgYW5kIGdhdmUgaW5jb3JyZWN0IHBhaW50IHRyYWNraW5nIHJlc3VsdHMuCisKKyAg
ICAgICAgVGVzdDogY29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFk
b3cuaHRtbAorCisgICAgICAgIFVuaXQgdGVzdDogUGxhdGZvcm1Db250ZXh0U2tpYVRlc3QuY3Bw
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9za2lhL09wYXF1ZVJlZ2lvblNraWEuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6T3BhcXVlUmVnaW9uU2tpYTo6ZGlkRHJhdyk6CisKIDIwMTIt
MDEtMzEgIFJhcGhhZWwgS3VibyBkYSBDb3N0YSAgPGt1Ym9AcHJvZnVzaW9uLm1vYmk+CiAKICAg
ICAgICAgW3NvdXBdIEFkZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBTb3VwU2Vzc2lvbnMuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDU3ZjNiZTU2N2RkOTkzY2E3ODQzYjJjYTk5MjU1ODZi
MDg3ODEyMzEuLmFlMDU2MGUzNDQyYmUyNjMxYWRiMjg2ZGNmMTI4ZWUxMDFlZjAyM2IgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDItMTUgIERhbmEg
SmFuc2VucyAgPGRhbmFrakBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBDbGlw
cGluZy9UcmFuc2Zvcm1zIGFwcGxpZWQgaW4gd3Jvbmcgb3JkZXIgaW4gb3BhcXVlIHBhaW50IHRy
YWNraW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
ODc3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
dGVzdHMvUGxhdGZvcm1Db250ZXh0U2tpYVRlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VEVT
VCk6CisKIDIwMTItMDItMTUgIFBldGVyIEJldmVybG9vICA8cGV0ZXJAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFtDaHJvbWl1bV0gUm9sbCBERVBTIHRvIHIxMjIxMjIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3NraWEvT3BhcXVlUmVnaW9uU2tpYS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9za2lhL09wYXF1ZVJlZ2lvblNraWEu
Y3BwCmluZGV4IDMwYjhhMzgwNWI4ODUzZjQyZGE0ZjBhMjU1YjhmOGRjNTQ4ZjNkODYuLjIxZmFj
YWFkYjhiMTg5MzZmNDI4MjQ5NGQ1MmQyNDcwZGFjNzdkYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3NraWEvT3BhcXVlUmVnaW9uU2tpYS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc2tpYS9PcGFxdWVSZWdpb25Ta2lhLmNw
cApAQCAtMjM1LDcgKzIzNSwxMiBAQCB2b2lkIE9wYXF1ZVJlZ2lvblNraWE6OmRpZERyYXcoY29u
c3QgUGxhdGZvcm1Db250ZXh0U2tpYSogY29udGV4dCwgY29uc3QgQWZmaW5lVAogewogICAgIFNr
UmVjdCB0YXJnZXRSZWN0ID0gcmVjdDsKIAotICAgIC8vIEFwcGx5IHRoZSBjdXJyZW50IGNsaXAu
CisgICAgLy8gQXBwbHkgdGhlIHRyYW5zZm9ybSB0byBkZXZpY2UgY29vcmRpbmF0ZSBzcGFjZS4K
KyAgICBTa01hdHJpeCBjYW52YXNUcmFuc2Zvcm0gPSBjb250ZXh0LT5jYW52YXMoKS0+Z2V0VG90
YWxNYXRyaXgoKTsKKyAgICBpZiAoIWNhbnZhc1RyYW5zZm9ybS5tYXBSZWN0KCZ0YXJnZXRSZWN0
KSkKKyAgICAgICAgZmlsbHNCb3VuZHMgPSBmYWxzZTsKKworICAgIC8vIEFwcGx5IHRoZSBjdXJy
ZW50IGNsaXAgaW4gZGV2aWNlIGNvb3JkaW5hdGUgc3BhY2UuCiAgICAgaWYgKGNvbnRleHQtPmNh
bnZhcygpLT5nZXRDbGlwVHlwZSgpICE9IFNrQ2FudmFzOjprUmVjdF9DbGlwVHlwZSkKICAgICAg
ICAgZmlsbHNCb3VuZHMgPSBmYWxzZTsKICAgICBlbHNlIHsKQEAgLTI0NywxMCArMjUyLDcgQEAg
dm9pZCBPcGFxdWVSZWdpb25Ta2lhOjpkaWREcmF3KGNvbnN0IFBsYXRmb3JtQ29udGV4dFNraWEq
IGNvbnRleHQsIGNvbnN0IEFmZmluZVQKICAgICBpZiAoIWNvbnRleHQtPmNsaXBwZWRUb0ltYWdl
KCkuaXNPcGFxdWUoKSkKICAgICAgICAgZmlsbHNCb3VuZHMgPSBmYWxzZTsKIAotICAgIC8vIEFw
cGx5IHRoZSB0cmFuc2Zvcm1zLgotICAgIFNrTWF0cml4IGNhbnZhc1RyYW5zZm9ybSA9IGNvbnRl
eHQtPmNhbnZhcygpLT5nZXRUb3RhbE1hdHJpeCgpOwotICAgIGlmICghY2FudmFzVHJhbnNmb3Jt
Lm1hcFJlY3QoJnRhcmdldFJlY3QpKQotICAgICAgICBmaWxsc0JvdW5kcyA9IGZhbHNlOworICAg
IC8vIEFwcGx5IHRoZSB0cmFuc2Zvcm0gdG8gdGhlIHRyYWNraW5nIHNwYWNlLgogICAgIFNrTWF0
cml4IGNhbnZhc1RvVGFyZ2V0VHJhbnNmb3JtID0gdHJhbnNmb3JtOwogICAgIGlmICghY2FudmFz
VG9UYXJnZXRUcmFuc2Zvcm0ubWFwUmVjdCgmdGFyZ2V0UmVjdCkpCiAgICAgICAgIGZpbGxzQm91
bmRzID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1Bs
YXRmb3JtQ29udGV4dFNraWFUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
UGxhdGZvcm1Db250ZXh0U2tpYVRlc3QuY3BwCmluZGV4IDkyNGI0MmQyOGJlODE3MDI1ZTQ4ZGJk
MDY5Y2U2ODk4NzQyNDYxMWUuLmQwOTdjNDk5YTJmZGZkNDU1OWEwYzIzM2ZiMmU3YTdlNDgzMTI5
ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvUGxhdGZvcm1Db250
ZXh0U2tpYVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvUGxhdGZv
cm1Db250ZXh0U2tpYVRlc3QuY3BwCkBAIC0xNjMsNiArMTYzLDMwIEBAIFRFU1QoUGxhdGZvcm1D
b250ZXh0U2tpYVRlc3QsIHRyYWNrT3BhcXVlQ2xpcFRlc3QpCiAgICAgY29udGV4dC5jbGVhclJl
Y3QoRmxvYXRSZWN0KDEwLCAxMCwgOTAsIDkwKSk7CiAgICAgRVhQRUNUX0VRX1JFQ1QoSW50UmVj
dCgpLCBwbGF0Zm9ybUNvbnRleHQub3BhcXVlUmVnaW9uKCkuYXNSZWN0KCkpOwogCisgICAgLy8g
VGhlIHRyYW5zZm9ybSBhbmQgdGhlIGNsaXAgbmVlZCB0byBpbnRlcmFjdCBjb3JyZWN0bHkgKHRy
YW5zZm9ybSBmaXJzdCkKKyAgICBjb250ZXh0LnNhdmUoKTsKKyAgICBjb250ZXh0LnRyYW5zbGF0
ZSgxMCwgMTApOworICAgIGNvbnRleHQuY2xpcChGbG9hdFJlY3QoMjAsIDIwLCAxMCwgMTApKTsK
KyAgICBjb250ZXh0LmZpbGxSZWN0KEZsb2F0UmVjdCgxMCwgMTAsIDkwLCA5MCksIG9wYXF1ZSwg
Q29sb3JTcGFjZURldmljZVJHQiwgQ29tcG9zaXRlU291cmNlT3Zlcik7CisgICAgRVhQRUNUX0VR
X1JFQ1QoSW50UmVjdCgzMCwgMzAsIDEwLCAxMCksIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdp
b24oKS5hc1JlY3QoKSk7CisgICAgRVhQRUNUX1BJWEVMU19NQVRDSChiaXRtYXAsIHBsYXRmb3Jt
Q29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisgICAgY29udGV4dC5yZXN0b3JlKCk7
CisKKyAgICBjb250ZXh0LmNsZWFyUmVjdChGbG9hdFJlY3QoMTAsIDEwLCA5MCwgOTApKTsKKyAg
ICBFWFBFQ1RfRVFfUkVDVChJbnRSZWN0KCksIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24o
KS5hc1JlY3QoKSk7CisKKyAgICAvLyBUaGUgdHJhbnNmb3JtIGFuZCB0aGUgY2xpcCBuZWVkIHRv
IGludGVyYWN0IGNvcnJlY3RseSAoY2xpcCBmaXJzdCkKKyAgICBjb250ZXh0LnNhdmUoKTsKKyAg
ICBjb250ZXh0LmNsaXAoRmxvYXRSZWN0KDIwLCAyMCwgMTAsIDEwKSk7CisgICAgY29udGV4dC50
cmFuc2xhdGUoMTAsIDEwKTsKKyAgICBjb250ZXh0LmZpbGxSZWN0KEZsb2F0UmVjdCgxMCwgMTAs
IDkwLCA5MCksIG9wYXF1ZSwgQ29sb3JTcGFjZURldmljZVJHQiwgQ29tcG9zaXRlU291cmNlT3Zl
cik7CisgICAgRVhQRUNUX0VRX1JFQ1QoSW50UmVjdCgyMCwgMjAsIDEwLCAxMCksIHBsYXRmb3Jt
Q29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisgICAgRVhQRUNUX1BJWEVMU19NQVRD
SChiaXRtYXAsIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisgICAg
Y29udGV4dC5yZXN0b3JlKCk7CisKKyAgICBjb250ZXh0LmNsZWFyUmVjdChGbG9hdFJlY3QoMTAs
IDEwLCA5MCwgOTApKTsKKyAgICBFWFBFQ1RfRVFfUkVDVChJbnRSZWN0KCksIHBsYXRmb3JtQ29u
dGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisKICAgICBQYXRoIHBhdGg7CiAgICAgcGF0
aC5tb3ZlVG8oRmxvYXRQb2ludCgwLCAwKSk7CiAgICAgcGF0aC5hZGRMaW5lVG8oRmxvYXRQb2lu
dCgxMDAsIDApKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCAxYmQwMDU5YzcwNDZjYTk5MmNiMDBiYmZhZGFiNzNiYjYzYjUw
NWU3Li4xYzk0MTJkOWQyZTM2NmJiZTEwNTllZjVjODJkMWY4YTE4N2I1YTU2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTQgQEAKKzIwMTItMDItMTUgIERhbmEgSmFuc2VucyAgPGRhbmFrakBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBDbGlwcGluZy9UcmFuc2Zvcm1zIGFwcGxpZWQgaW4g
d3Jvbmcgb3JkZXIgaW4gb3BhcXVlIHBhaW50IHRyYWNraW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03ODc3NQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9s
bGVkLXdpdGhpbi1ib3hzaGFkb3ctZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjb21w
b3NpdGluZy9jdWxsaW5nL3Vuc2Nyb2xsZWQtd2l0aGluLWJveHNoYWRvdy1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3JvbGxlZC13aXRoaW4t
Ym94c2hhZG93Lmh0bWw6IEFkZGVkLgorCiAyMDEyLTAyLTE1ICBUb255IENoYW5nICA8dG9ueUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBVbnJldmlld2VkLCByZWJhc2luZyB0
ZXN0cyBhZnRlciByMTA3ODM2LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcv
Y3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFkb3ctZXhwZWN0ZWQucG5nIGIvTGF5b3V0
VGVzdHMvY29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFkb3ctZXhw
ZWN0ZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmMTE3MzcyOGYzZTI0ZmIyYzIyNTk2MjI1ZDkyMDAyYWEy
ZDBmMDUKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDM1NzQKemNtZUFTQE4/KG9sSHlgdVZCcSFp
YTB5fnlVeyt2WVYyYT5pMCpaKT1oXmhsQSVAV3MkbEhgb2s8bX0/b1RuMGwrCnpHbXtrS3c2c0tu
V0NKNHVHdmt5YjZIe3xqT093UjNCcUlaSjxIVnBJTyU5LTg5aUE/WkFyKjdwLXIxT1VKNDRETAp6
YUZTNSs7bHs/b2QrRURZZW94IyFGWWxmQFV4TGE2PDwyYHpqPU5haFpvTGsqdX5gMCNvQk1+Pjw0
MkdFYChFJGoKelZfK3kqN1J9R1ZAV0VlczB8UEA2NkV9bGA4cCh7YHVqe3QpeSpBKV56M1pSTjZs
Y1opPDtOQyRoWWsyMXBGZ30tCnp5e1lgPXRPSFQpcklGSzlXNiE7PXZ8YmFQJkc9em5GSHByfTZU
aXpBWjsjekF5QVY7KCtSZENUZCtsP1AtUCt9awp6aX5pTDh0QmRKN3smV1k9PX1taDFoVmwmbSVg
YVF7OXlhbStZOyN0PU8jV0hzejVkXkt3X0pgV1NiM1QkYCohVHkKelluTENeezMhZU4/ZHktUHdf
bzBWU1l4NGd7QnpafEJUTjxoan1fa08tQ2E1QmVmZjkoLXxoWE1rR0tDbHtQJGc1CnpqQy19dGp3
P3J7KlFDYndvJkVeYUdYMSoje0NJbyZ7ZFc2aDtgeUUqJmF7azdWJSFyQ2JsbWQ0ZjhZSHB0Z0cy
bwp6e2NCNSZSOW05P3lLVSpNK3ZvQSFvNV5oK0B3ekpSe1FkTHlfc2l8Q3ROWilzX3h9MyYjVHl4
UnRsal9iPnZmeTYKejwoS2M7b1pWZnp7Y2FgdXpoJjhTZl9jKHdvP21+U0RBOHRyRkdZdFRAOCRX
Mktmbkcybm1rOC15Wk92S1RZKXtzCno7YHoxUDRfTTlOKkZRZGV5OTdyPXtLMnhuazlXdyN7JV9F
WjVzU0ZwekpBKDZfdkYxN2VIaVpDPkU5KCkpNHsmMwp6QEZRRHg/RGU8WTV6QylgNW8yY2pwbHpZ
TXtCM2drRTNTMH5QckRWUCkzej5WYDAjb3sqb1haZXA2TjA7XyNga2cKejlBT2F+V3NDO0dYaTZC
KDEqNXJPRyM4QktnMygrc0lDODw4UXdPQXU3Zkt6S0pZYXYjI1A2fWl5KCtHWF4/SDN2Cnpia34r
VyZhOzFlS1NfYjFqYGVydWUoNz19P3NkaEgzNlNRYSZ1NWVTQDg4fGVQLURuQFM2NlFEfEpsVW5A
d2ZmKgp6SkJ8UkdjQTAreSF9fnUhal48JUd1PkxffC1KZ3BRZE15V0A+USRkSD1YKSNgMGM7SH0t
QFAydjhvTGlfamxGKlAKej9xJVp0NFhvRUpaWF9IYEp5c2d+fDZsejIhJk9tIT9WbGUke3FnRFAq
VkU2aHBGaDk7Smd7a1lfLTg/cy18MWFACno/ay1eMXZvZHFleDY1X2E0ailVdGV8aD10YSg/OyMt
MEMlZHdfSn1YbkFva3E+aT9ZdC1vcG18cENBOUp1I2c5fgp6R3h5Qlgmb1g3Ryh8bTA0NCVwYDll
M0pQOEwqYyg0I20lTCFGRnlGWUdwRV48PWRqaDk9VEI+KntFdDhWQCVQVykKejlXd289M25qJX5Z
ZDN0KWxVbn1QYlhueXJgIXt4SEY3Sns1ekJAQyRtVWEzcml3JGp3NWxBaVQhJiRZZ0FNWDlGCnoy
KDZqMz9mbDBhX0VPZ0g5Y21DWTY1Q2UmRChyYTleZ3dLenpSe21RQ2U2RT1VZEtwQUZmalp2VSNH
YDMrQXlUQgpjYl5PTUBiM3omU2xhaH4lZmdMI3BQZ2cmZWJ4c0xRMDA8eGF3ZzNQQwoKbGl0ZXJh
bCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvY3Vs
bGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFkb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvY29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFkb3ctZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjhiMTM3ODkxNzkxZmU5NjkyN2FkNzhlNjRiMGFhZDdiZGVkMDhi
ZGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9jdWxsaW5nL3Vu
c2Nyb2xsZWQtd2l0aGluLWJveHNoYWRvdy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9jdWxsaW5nL3Vuc2Nyb2xsZWQtd2l0
aGluLWJveHNoYWRvdy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvY3VsbGluZy91bnNj
cm9sbGVkLXdpdGhpbi1ib3hzaGFkb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYTBjOTYzMzRlOGI4YzMz
NTRhZDdkYzIxZjE5NTU3ODQyYmQzNWQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
Y29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFkb3cuaHRtbApAQCAt
MCwwICsxLDU5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+Cisu
Y29tcCB7CisgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7Cit9Citib2R5IHsK
KyAgbWFyZ2luOjA7CisgIHBhZGRpbmc6MDsKK30KKy5zaGFkb3cgeworICBwb3NpdGlvbjphYnNv
bHV0ZTsKKyAgbGVmdDoyMHB4OyByaWdodDoyMHB4OworICB3aWR0aDo1MDBweDsKKyAgaGVpZ2h0
OjUwMHB4OworICB0b3A6MHB4OyBib3R0b206MjBweDsKKyAgei1pbmRleDoxMjA7CisgIG1hcmdp
bi10b3A6MjBweDsKKyAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CisgIC13ZWJraXQt
Ym94LXNoYWRvdzogMCAwIDZweCAjMDkwOworICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDkwOworfQor
I3Njcm9sbCB7CisgIG92ZXJmbG93LXk6IGhpZGRlbjsgLyogc2Nyb2xsYWJsZSBidXQgbm8gc2Ny
b2xsYmFycyB2aXNpYmxlLiAqLworICB3aWR0aDo1MDBweDsKKyAgaGVpZ2h0OiA1MDBweDsKK30K
Ky5zY3JvbGxDb250ZW50IHsKKyAgd2lkdGg6MTAwJTsKKyAgaGVpZ2h0OiAxMDAwcHg7IC8qIG1h
a2UgdGhlIGNvbnRhaW5lciBzY3JvbGxhYmxlICovCisgIGJhY2tncm91bmQtY29sb3I6ICMwZDA7
Cit9Cis8L3N0eWxlPgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVt
cEFzVGV4dCh0cnVlKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7
CisgIH0KKworICB3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKSB7IHNldFRpbWVvdXQoZnVuY3Rp
b24oKSB7CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgIH0KKyAgfSwgMCk7IH07Cis8L3Nj
cmlwdD4KKzwvaGVhZD4KKworPGJvZHk+Cis8IS0tIElmIGN1bGxlZCBpbmNvcnJlY3RseSwgdGhl
IHRvcC9sZWZ0IGVkZ2VzIG91dHNpZGUgb2YgdGhlIHNoYWRvd2VkIGJveCBlbmQgdXAgYmVpbmcg
Y3VsbGVkIGluc3RlYWQgb2YgcGFpbnRlZC9kcmF3biBwcm9wZXJseS4KKyAgICAgSWYgY2xpcHBp
bmcvdHJhbnNmb3JtcyBhcmUgYXBwbGllZCB3cm9uZ2x5LCBvdXRzaWRlIHRoZSByaWdodC9ib3R0
b20gZWRnZXMgbWF5IGFsc28gZW5kIHVwIGJlaW5nIGN1bGxlZC4gLS0+Cis8ZGl2IGNsYXNzPSJj
b21wIHNoYWRvdyI+CisgIDxkaXYgaWQ9InNjcm9sbCI+CisgICAgPGRpdiBjbGFzcz0ic2Nyb2xs
Q29udGVudCI+CisgICAgPC9kaXY+CisgIDwvZGl2PgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127407</attachid>
            <date>2012-02-16 10:46:04 -0800</date>
            <delta_ts>2012-02-16 15:51:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-78775-20120216134603.patch</filename>
            <type>text/plain</type>
            <size>13485</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3ODU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2Y3YTMwM2U2ZTRjNmM2
ZDAxYzg4NDMyZmZjMWY0ZWMzMzFkMzdkYy4uMjY1N2JmMDZkZGE2OTk4YTRlYzNjZTA3Y2Q0Y2E0
MjViNTFjYjdkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAyLTE2ICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gQ2xp
cHBpbmcvVHJhbnNmb3JtcyBhcHBsaWVkIGluIHdyb25nIG9yZGVyIGluIG9wYXF1ZSBwYWludCB0
cmFja2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Nzg3NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBU
aGUgY2xpcCB3YXMgYmVpbmcgYXBwbGllZCBpbiBkZXZpY2UgY29vcmRpbmF0ZXMsIGJlZm9yZSB0
cmFuc2Zvcm1pbmcgdGhlIHBhaW50ZWQKKyAgICAgICAgcmVjdCBpbnRvIGRldmljZSBjb29yZGlu
YXRlcy4gVGhpcyBtYWRlIGFueSB0cmFuc2xhdGlvbnMgZ2V0IGRvdWJseSByZXByZXNlbnRlZCwK
KyAgICAgICAgYW5kIGdhdmUgaW5jb3JyZWN0IHBhaW50IHRyYWNraW5nIHJlc3VsdHMuCisKKyAg
ICAgICAgVGVzdDogY29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFk
b3cuaHRtbAorCisgICAgICAgIFVuaXQgdGVzdDogUGxhdGZvcm1Db250ZXh0U2tpYVRlc3QuY3Bw
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9za2lhL09wYXF1ZVJlZ2lvblNraWEuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6T3BhcXVlUmVnaW9uU2tpYTo6ZGlkRHJhdyk6CisKIDIwMTIt
MDEtMzEgIFJhcGhhZWwgS3VibyBkYSBDb3N0YSAgPGt1Ym9AcHJvZnVzaW9uLm1vYmk+CiAKICAg
ICAgICAgW3NvdXBdIEFkZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBTb3VwU2Vzc2lvbnMuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDU3ZjNiZTU2N2RkOTkzY2E3ODQzYjJjYTk5MjU1ODZi
MDg3ODEyMzEuLmUzY2E5NGQ3NmQwMjQ3YzdmZTc3ZmFkZDRhNDg2ZGU1Mzk4ZDhhMDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDItMTYgIERhbmEg
SmFuc2VucyAgPGRhbmFrakBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBDbGlw
cGluZy9UcmFuc2Zvcm1zIGFwcGxpZWQgaW4gd3Jvbmcgb3JkZXIgaW4gb3BhcXVlIHBhaW50IHRy
YWNraW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
ODc3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
dGVzdHMvUGxhdGZvcm1Db250ZXh0U2tpYVRlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VEVT
VCk6CisKIDIwMTItMDItMTUgIFBldGVyIEJldmVybG9vICA8cGV0ZXJAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFtDaHJvbWl1bV0gUm9sbCBERVBTIHRvIHIxMjIxMjIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3NraWEvT3BhcXVlUmVnaW9uU2tpYS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9za2lhL09wYXF1ZVJlZ2lvblNraWEu
Y3BwCmluZGV4IDMwYjhhMzgwNWI4ODUzZjQyZGE0ZjBhMjU1YjhmOGRjNTQ4ZjNkODYuLjIxZmFj
YWFkYjhiMTg5MzZmNDI4MjQ5NGQ1MmQyNDcwZGFjNzdkYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3NraWEvT3BhcXVlUmVnaW9uU2tpYS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc2tpYS9PcGFxdWVSZWdpb25Ta2lhLmNw
cApAQCAtMjM1LDcgKzIzNSwxMiBAQCB2b2lkIE9wYXF1ZVJlZ2lvblNraWE6OmRpZERyYXcoY29u
c3QgUGxhdGZvcm1Db250ZXh0U2tpYSogY29udGV4dCwgY29uc3QgQWZmaW5lVAogewogICAgIFNr
UmVjdCB0YXJnZXRSZWN0ID0gcmVjdDsKIAotICAgIC8vIEFwcGx5IHRoZSBjdXJyZW50IGNsaXAu
CisgICAgLy8gQXBwbHkgdGhlIHRyYW5zZm9ybSB0byBkZXZpY2UgY29vcmRpbmF0ZSBzcGFjZS4K
KyAgICBTa01hdHJpeCBjYW52YXNUcmFuc2Zvcm0gPSBjb250ZXh0LT5jYW52YXMoKS0+Z2V0VG90
YWxNYXRyaXgoKTsKKyAgICBpZiAoIWNhbnZhc1RyYW5zZm9ybS5tYXBSZWN0KCZ0YXJnZXRSZWN0
KSkKKyAgICAgICAgZmlsbHNCb3VuZHMgPSBmYWxzZTsKKworICAgIC8vIEFwcGx5IHRoZSBjdXJy
ZW50IGNsaXAgaW4gZGV2aWNlIGNvb3JkaW5hdGUgc3BhY2UuCiAgICAgaWYgKGNvbnRleHQtPmNh
bnZhcygpLT5nZXRDbGlwVHlwZSgpICE9IFNrQ2FudmFzOjprUmVjdF9DbGlwVHlwZSkKICAgICAg
ICAgZmlsbHNCb3VuZHMgPSBmYWxzZTsKICAgICBlbHNlIHsKQEAgLTI0NywxMCArMjUyLDcgQEAg
dm9pZCBPcGFxdWVSZWdpb25Ta2lhOjpkaWREcmF3KGNvbnN0IFBsYXRmb3JtQ29udGV4dFNraWEq
IGNvbnRleHQsIGNvbnN0IEFmZmluZVQKICAgICBpZiAoIWNvbnRleHQtPmNsaXBwZWRUb0ltYWdl
KCkuaXNPcGFxdWUoKSkKICAgICAgICAgZmlsbHNCb3VuZHMgPSBmYWxzZTsKIAotICAgIC8vIEFw
cGx5IHRoZSB0cmFuc2Zvcm1zLgotICAgIFNrTWF0cml4IGNhbnZhc1RyYW5zZm9ybSA9IGNvbnRl
eHQtPmNhbnZhcygpLT5nZXRUb3RhbE1hdHJpeCgpOwotICAgIGlmICghY2FudmFzVHJhbnNmb3Jt
Lm1hcFJlY3QoJnRhcmdldFJlY3QpKQotICAgICAgICBmaWxsc0JvdW5kcyA9IGZhbHNlOworICAg
IC8vIEFwcGx5IHRoZSB0cmFuc2Zvcm0gdG8gdGhlIHRyYWNraW5nIHNwYWNlLgogICAgIFNrTWF0
cml4IGNhbnZhc1RvVGFyZ2V0VHJhbnNmb3JtID0gdHJhbnNmb3JtOwogICAgIGlmICghY2FudmFz
VG9UYXJnZXRUcmFuc2Zvcm0ubWFwUmVjdCgmdGFyZ2V0UmVjdCkpCiAgICAgICAgIGZpbGxzQm91
bmRzID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1Bs
YXRmb3JtQ29udGV4dFNraWFUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
UGxhdGZvcm1Db250ZXh0U2tpYVRlc3QuY3BwCmluZGV4IDkyNGI0MmQyOGJlODE3MDI1ZTQ4ZGJk
MDY5Y2U2ODk4NzQyNDYxMWUuLmQwOTdjNDk5YTJmZGZkNDU1OWEwYzIzM2ZiMmU3YTdlNDgzMTI5
ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvUGxhdGZvcm1Db250
ZXh0U2tpYVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvUGxhdGZv
cm1Db250ZXh0U2tpYVRlc3QuY3BwCkBAIC0xNjMsNiArMTYzLDMwIEBAIFRFU1QoUGxhdGZvcm1D
b250ZXh0U2tpYVRlc3QsIHRyYWNrT3BhcXVlQ2xpcFRlc3QpCiAgICAgY29udGV4dC5jbGVhclJl
Y3QoRmxvYXRSZWN0KDEwLCAxMCwgOTAsIDkwKSk7CiAgICAgRVhQRUNUX0VRX1JFQ1QoSW50UmVj
dCgpLCBwbGF0Zm9ybUNvbnRleHQub3BhcXVlUmVnaW9uKCkuYXNSZWN0KCkpOwogCisgICAgLy8g
VGhlIHRyYW5zZm9ybSBhbmQgdGhlIGNsaXAgbmVlZCB0byBpbnRlcmFjdCBjb3JyZWN0bHkgKHRy
YW5zZm9ybSBmaXJzdCkKKyAgICBjb250ZXh0LnNhdmUoKTsKKyAgICBjb250ZXh0LnRyYW5zbGF0
ZSgxMCwgMTApOworICAgIGNvbnRleHQuY2xpcChGbG9hdFJlY3QoMjAsIDIwLCAxMCwgMTApKTsK
KyAgICBjb250ZXh0LmZpbGxSZWN0KEZsb2F0UmVjdCgxMCwgMTAsIDkwLCA5MCksIG9wYXF1ZSwg
Q29sb3JTcGFjZURldmljZVJHQiwgQ29tcG9zaXRlU291cmNlT3Zlcik7CisgICAgRVhQRUNUX0VR
X1JFQ1QoSW50UmVjdCgzMCwgMzAsIDEwLCAxMCksIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdp
b24oKS5hc1JlY3QoKSk7CisgICAgRVhQRUNUX1BJWEVMU19NQVRDSChiaXRtYXAsIHBsYXRmb3Jt
Q29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisgICAgY29udGV4dC5yZXN0b3JlKCk7
CisKKyAgICBjb250ZXh0LmNsZWFyUmVjdChGbG9hdFJlY3QoMTAsIDEwLCA5MCwgOTApKTsKKyAg
ICBFWFBFQ1RfRVFfUkVDVChJbnRSZWN0KCksIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24o
KS5hc1JlY3QoKSk7CisKKyAgICAvLyBUaGUgdHJhbnNmb3JtIGFuZCB0aGUgY2xpcCBuZWVkIHRv
IGludGVyYWN0IGNvcnJlY3RseSAoY2xpcCBmaXJzdCkKKyAgICBjb250ZXh0LnNhdmUoKTsKKyAg
ICBjb250ZXh0LmNsaXAoRmxvYXRSZWN0KDIwLCAyMCwgMTAsIDEwKSk7CisgICAgY29udGV4dC50
cmFuc2xhdGUoMTAsIDEwKTsKKyAgICBjb250ZXh0LmZpbGxSZWN0KEZsb2F0UmVjdCgxMCwgMTAs
IDkwLCA5MCksIG9wYXF1ZSwgQ29sb3JTcGFjZURldmljZVJHQiwgQ29tcG9zaXRlU291cmNlT3Zl
cik7CisgICAgRVhQRUNUX0VRX1JFQ1QoSW50UmVjdCgyMCwgMjAsIDEwLCAxMCksIHBsYXRmb3Jt
Q29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisgICAgRVhQRUNUX1BJWEVMU19NQVRD
SChiaXRtYXAsIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisgICAg
Y29udGV4dC5yZXN0b3JlKCk7CisKKyAgICBjb250ZXh0LmNsZWFyUmVjdChGbG9hdFJlY3QoMTAs
IDEwLCA5MCwgOTApKTsKKyAgICBFWFBFQ1RfRVFfUkVDVChJbnRSZWN0KCksIHBsYXRmb3JtQ29u
dGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisKICAgICBQYXRoIHBhdGg7CiAgICAgcGF0
aC5tb3ZlVG8oRmxvYXRQb2ludCgwLCAwKSk7CiAgICAgcGF0aC5hZGRMaW5lVG8oRmxvYXRQb2lu
dCgxMDAsIDApKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCAxYmQwMDU5YzcwNDZjYTk5MmNiMDBiYmZhZGFiNzNiYjYzYjUw
NWU3Li5iODY1MTk2ZmE4NmZkMDlmZmRlZTY0ZWJmZDYyMjA3NGYzNWUxMjllIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTYgQEAKKzIwMTItMDItMTYgIERhbmEgSmFuc2VucyAgPGRhbmFrakBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBDbGlwcGluZy9UcmFuc2Zvcm1zIGFwcGxpZWQgaW4g
d3Jvbmcgb3JkZXIgaW4gb3BhcXVlIHBhaW50IHRyYWNraW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03ODc3NQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogY29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9s
bGVkLXdpdGhpbi1ib3hzaGFkb3ctZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBjb21w
b3NpdGluZy9jdWxsaW5nL3Vuc2Nyb2xsZWQtd2l0aGluLWJveHNoYWRvdy1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3JvbGxlZC13aXRoaW4t
Ym94c2hhZG93Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL292ZXJmbG93L2Ns
aXAtY29udGVudC11bmRlci1vdmVyZmxvdy1jb250cm9scy1leHBlY3RlZC5wbmc6CisgICAgICAg
ICogY29tcG9zaXRpbmcvc2Nyb2xsYmFyLXBhaW50aW5nLWV4cGVjdGVkLnBuZzoKKwogMjAxMi0w
Mi0xNSAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1
bV0gVW5yZXZpZXdlZCwgcmViYXNpbmcgdGVzdHMgYWZ0ZXIgcjEwNzgzNi4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3JvbGxlZC13aXRoaW4tYm94c2hh
ZG93LWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3Jv
bGxlZC13aXRoaW4tYm94c2hhZG93LWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZjExNzM3Mjhm
M2UyNGZiMmMyMjU5NjIyNWQ5MjAwMmFhMmQwZjA1CkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAz
NTc0CnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9aF5obEElQFdzJGxI
YG9rPG19P29UbjBsKwp6R217a0t3NnNLbldDSjR1R3ZreWI2SHt8ak9Pd1IzQnFJWko8SFZwSU8l
OS04OWlBP1pBcio3cC1yMU9VSjQ0REwKemFGUzUrO2x7P29kK0VEWWVveCMhRllsZkBVeExhNjw8
MmB6aj1OYWhab0xrKnV+YDAjb0JNfj48NDJHRWAoRSRqCnpWXyt5KjdSfUdWQFdFZXMwfFBANjZF
fWxgOHAoe2B1ant0KXkqQSleejNaUk42bGNaKTw7TkMkaFlrMjFwRmd9LQp6eXtZYD10T0hUKXJJ
Rks5VzYhOz12fGJhUCZHPXpuRkhwcn02VGl6QVo7I3pBeUFWOygrUmRDVGQrbD9QLVArfWsKeml+
aUw4dEJkSjd7JldZPT19bWgxaFZsJm0lYGFRezl5YW0rWTsjdD1PI1dIc3o1ZF5Ld19KYFdTYjNU
JGAqIVR5CnpZbkxDXnszIWVOP2R5LVB3X28wVlNZeDRne0J6WnxCVE48aGp9X2tPLUNhNUJlZmY5
KC18aFhNa0dLQ2x7UCRnNQp6akMtfXRqdz9yeypRQ2J3byZFXmFHWDEqI3tDSW8me2RXNmg7YHlF
KiZhe2s3ViUhckNibG1kNGY4WUhwdGdHMm8KentjQjUmUjltOT95S1UqTSt2b0EhbzVeaCtAd3pK
UntRZEx5X3NpfEN0Tlopc194fTMmI1R5eFJ0bGpfYj52Znk2Cno8KEtjO29aVmZ6e2NhYHV6aCY4
U2ZfYyh3bz9tflNEQTh0ckZHWXRUQDgkVzJLZm5HMm5tazgteVpPdktUWSl7cwp6O2B6MVA0X005
TipGUWRleTk3cj17SzJ4bms5V3cjeyVfRVo1c1NGcHpKQSg2X3ZGMTdlSGlaQz5FOSgpKTR7JjMK
ekBGUUR4P0RlPFk1ekMpYDVvMmNqcGx6WU17QjNna0UzUzB+UHJEVlApM3o+VmAwI297Km9YWmVw
Nk4wO18jYGtnCno5QU9hfldzQztHWGk2QigxKjVyT0cjOEJLZzMoK3NJQzg8OFF3T0F1N2ZLektK
WWF2IyNQNn1peSgrR1heP0gzdgp6Ymt+K1cmYTsxZUtTX2IxamBlcnVlKDc9fT9zZGhIMzZTUWEm
dTVlU0A4OHxlUC1EbkBTNjZRRHxKbFVuQHdmZioKekpCfFJHY0EwK3khfX51IWpePCVHdT5MX3wt
SmdwUWRNeVdAPlEkZEg9WCkjYDBjO0h9LUBQMnY4b0xpX2psRipQCno/cSVadDRYb0VKWlhfSGBK
eXNnfnw2bHoyISZPbSE/VmxlJHtxZ0RQKlZFNmhwRmg5O0pne2tZXy04P3MtfDFhQAp6P2stXjF2
b2RxZXg2NV9hNGopVXRlfGg9dGEoPzsjLTBDJWR3X0p9WG5Bb2txPmk/WXQtb3BtfHBDQTlKdSNn
OX4Kekd4eUJYJm9YN0cofG0wNDQlcGA5ZTNKUDhMKmMoNCNtJUwhRkZ5RllHcEVePD1kamg5PVRC
Pip7RXQ4VkAlUFcpCno5V3dvPTNuaiV+WWQzdClsVW59UGJYbnlyYCF7eEhGN0p7NXpCQEMkbVVh
M3JpdyRqdzVsQWlUISYkWWdBTVg5Rgp6Mig2ajM/ZmwwYV9FT2dIOWNtQ1k2NUNlJkQocmE5Xmd3
S3p6UnttUUNlNkU9VWRLcEFGZmpadlUjR2AzK0F5VEIKY2JeT01AYjN6JlNsYWh+JWZnTCNwUGdn
JmVieHNMUTAwPHhhd2czUEMKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3JvbGxlZC13aXRoaW4tYm94c2hhZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3JvbGxl
ZC13aXRoaW4tYm94c2hhZG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjEzNzg5MTc5MWZl
OTY5MjdhZDc4ZTY0YjBhYWQ3YmRlZDA4YmRjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvY29tcG9zaXRpbmcvY3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFkb3ctZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEgQEAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRp
bmcvY3VsbGluZy91bnNjcm9sbGVkLXdpdGhpbi1ib3hzaGFkb3cuaHRtbCBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3JvbGxlZC13aXRoaW4tYm94c2hhZG93Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMmEwYzk2MzM0ZThiOGMzMzU0YWQ3ZGMyMWYxOTU1Nzg0MmJkMzVkMQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2N1bGxpbmcvdW5zY3JvbGxlZC13
aXRoaW4tYm94c2hhZG93Lmh0bWwKQEAgLTAsMCArMSw1OSBAQAorPCFET0NUWVBFIGh0bWw+Cis8
aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorLmNvbXAgeworICAtd2Via2l0LXRyYW5zZm9ybTogdHJh
bnNsYXRlWigwcHgpOworfQorYm9keSB7CisgIG1hcmdpbjowOworICBwYWRkaW5nOjA7Cit9Cisu
c2hhZG93IHsKKyAgcG9zaXRpb246YWJzb2x1dGU7CisgIGxlZnQ6MjBweDsgcmlnaHQ6MjBweDsK
KyAgd2lkdGg6NTAwcHg7CisgIGhlaWdodDo1MDBweDsKKyAgdG9wOjBweDsgYm90dG9tOjIwcHg7
CisgIHotaW5kZXg6MTIwOworICBtYXJnaW4tdG9wOjIwcHg7CisgIGJvcmRlcjogMXB4IHNvbGlk
IHRyYW5zcGFyZW50OworICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA2cHggIzA5MDsKKyAgYmFj
a2dyb3VuZC1jb2xvcjogIzA5MDsKK30KKyNzY3JvbGwgeworICBvdmVyZmxvdy15OiBoaWRkZW47
IC8qIHNjcm9sbGFibGUgYnV0IG5vIHNjcm9sbGJhcnMgdmlzaWJsZS4gKi8KKyAgd2lkdGg6NTAw
cHg7CisgIGhlaWdodDogNTAwcHg7Cit9Cisuc2Nyb2xsQ29udGVudCB7CisgIHdpZHRoOjEwMCU7
CisgIGhlaWdodDogMTAwMHB4OyAvKiBtYWtlIHRoZSBjb250YWluZXIgc2Nyb2xsYWJsZSAqLwor
ICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQwOworfQorPC9zdHlsZT4KKzxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0Ij4KKyAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQodHJ1ZSk7CisgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICB9CisKKyAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0
aW9uKCkgeyBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgIGlmICh3aW5kb3cubGF5b3V0VGVz
dENvbnRyb2xsZXIpIHsKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsK
KyAgICB9CisgIH0sIDApOyB9OworPC9zY3JpcHQ+Cis8L2hlYWQ+CisKKzxib2R5PgorPCEtLSBJ
ZiBjdWxsZWQgaW5jb3JyZWN0bHksIHRoZSB0b3AvbGVmdCBlZGdlcyBvdXRzaWRlIG9mIHRoZSBz
aGFkb3dlZCBib3ggZW5kIHVwIGJlaW5nIGN1bGxlZCBpbnN0ZWFkIG9mIHBhaW50ZWQvZHJhd24g
cHJvcGVybHkuCisgICAgIElmIGNsaXBwaW5nL3RyYW5zZm9ybXMgYXJlIGFwcGxpZWQgd3Jvbmds
eSwgb3V0c2lkZSB0aGUgcmlnaHQvYm90dG9tIGVkZ2VzIG1heSBhbHNvIGVuZCB1cCBiZWluZyBj
dWxsZWQuIC0tPgorPGRpdiBjbGFzcz0iY29tcCBzaGFkb3ciPgorICA8ZGl2IGlkPSJzY3JvbGwi
PgorICAgIDxkaXYgY2xhc3M9InNjcm9sbENvbnRlbnQiPgorICAgIDwvZGl2PgorICA8L2Rpdj4K
KzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9z
aXRpbmcvb3ZlcmZsb3cvY2xpcC1jb250ZW50LXVuZGVyLW92ZXJmbG93LWNvbnRyb2xzLWV4cGVj
dGVkLnBuZyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL292ZXJmbG93L2NsaXAtY29udGVudC11
bmRlci1vdmVyZmxvdy1jb250cm9scy1leHBlY3RlZC5wbmcKaW5kZXggODY5NWU4MGJmZTAxNjA3
ZDgyMzMyNDhjM2NmNTAyNDBkYjNjNTRlZS4uYzViODQ5YTIzMTViMDcxOGNjZjk3Y2ZlODc3YTg5
NmZhMmQ4MjgyMSAxMDA2NDQKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI4NzUKemNtZUFTQE4/
KG9sSHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMCpaKT1oXmhsQSVAV3MkbEhgb2s8bX0/b1RtfTxr
CnozKEomTEJPcHBOSEwpfktPMGg2QkhaeDkxTmluZG5GZn5nfWQ9YD4zbTRTaWx0Znp9KE5YNEFE
SCNZSmYzSl9wKgp6PzFfPD44KEhGKD8jYE5geSlYQ2RsSWVSMk5eaFVCVlBKUys2VkFgVHV0VTAk
bHxldV9mYFAjaGdSJH1OXkBvMmUKent9JiUkRCFWQFVEK3xLfG16b1U+M2B0RGYzPF8kYTRFaEdi
dylKdWFMQl5ZX20+M0V8P1hib2NYOGhxMHh0KjV3CnptNXJleGByfDwraDdMfDBoSzNtak1qNH1s
RnEjclpiSFFqWDd8akt2eG5NTEc0M2I8PiVhfDR+dSE9RzUoc3k4TQpPbjhETjQmdDt1Y0xLNlVo
MkwrJTIKCmxpdGVyYWwgMjg2Nwp6Y21lQVNATj8ob2xIeWB1VkJxIWlhMHl+eVV7K3ZZVjJhPmkw
KlopPWheaGxBJUBXcyRsSGBvazxtfT9vVCF1dGIKejw3QmYkNk44amdMbjlNUTwzdDFGTGB4JH12
czQya0d0PVptISZHVCRydV9eSVR0X2AhOTc4SlJ5dUdvSl9mVVdVCnp0N0RIdyZwRGxQeEFmOyti
SnFTeUlKOyF9b2BUWmJYS1daNFVmNns1R2NmRnNaZShROzVSUERBRnZNVk55bmdsSgp6NTFJUlNL
M0BPIWVQMHo1IXcyVkA0R2F1UE94ejMjWU5MI3k3WU1oe3RodlgpUEBydnhITVRNMWVeZ3tOcG0z
RTkKdXFpSklfWkglVWsoT2ZXXjNyMkdSKXBObHs7azlZSnQ3fj5UPjt0eGY4OVpKNlQtR0B5R3l3
cVdqOz88SQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL3Njcm9sbGJhci1w
YWludGluZy1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9zY3JvbGxiYXIt
cGFpbnRpbmctZXhwZWN0ZWQucG5nCmluZGV4IGJmN2MxOWVlYzJlYTEwOGVmMzY3NjdiYjM1Zjc2
MzE4NzE4Mzk0M2EuLmM1Yjg0OWEyMzE1YjA3MThjY2Y5N2NmZTg3N2E4OTZmYTJkODI4MjEgMTAw
NjQ0CkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAyODc1CnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEw
eX55VXsrdllWMmE+aTAqWik9aF5obEElQFdzJGxIYG9rPG19P29UbX08awp6MyhKJkxCT3BwTkhM
KX5LTzBoNkJIWng5MU5pbmRuRmZ+Z31kPWA+M200U2lsdGZ6fShOWDRBREgjWUpmM0pfcCoKej8x
Xzw+OChIRig/I2BOYHkpWENkbEllUjJOXmhVQlZQSlMrNlZBYFR1dFUwJGx8ZXVfZmBQI2hnUiR9
Tl5AbzJlCnp7fSYlJEQhVkBVRCt8S3xtem9VPjNgdERmMzxfJGE0RWhHYncpSnVhTEJeWV9tPjNF
fD9YYm9jWDhocTB4dCo1dwp6bTVyZXhgcnw8K2g3THwwaEszbWpNajR9bEZxI3JaYkhRalg3fGpL
dnhuTUxHNDNiPD4lYXw0fnUhPUc1KHN5OE0KT244RE40JnQ7dWNMSzZVaDJMKyUyCgpsaXRlcmFs
IDExMzkxCnpjbWVITntYYk1gNnUmY1dqUTBffSRTbGA7cjQpazwjbXlqWjhCJnNKcmZFaHNNSSVP
T1ljb2B2bW9USyU2dChHUAp6T0Mhe2wkVi1afXlSczN8ZTlHOXckQnZQUnZUSj96JmFSc0tDK3ZS
cWBSVSYwZUN8MlZ4IyNtZD1YOyotZEQyM0gKelNMdGZhKH1FeUsqV2JeMzRGc3RuNUpaZTFzYmRv
SC1qckRFdXxWSnhBPml6WTtfUWt+aD1KSjdSRWBWVlgoPjAjCnohT0A5RVdpTz8mWF51M1BzSEtp
QiZLJE53bCEqems3UERmP3F0aXFEPjJ4RntqPXpsOzlSKSMmZ3JqU19jZVJCVwp6T30mZ05EREJC
YCtpc3hndV9JP1VIJXZmM2NXMmw3JUkzKTVUPCk2dG94S3ZYTiEpMHFJOD5fOW1CRHZ3KiFOejsK
elY/c2x4Pm9FVTd1NVAwZGBfcWs3aT1jNmZUWkx6eFJAO1dELVRQUzhKdXlWSD9lQXE/bkFqODlY
MCR9I1hrOGVpCnpwPz5tRnVUbDMxZmt+bTtQM35Cb0AkS3ZZbl5tWk9UbHhOWHc/XzMkOD4wbjd7
TztsQFBQX1B8aj0/WW1zbVhKRwp6V1lNJFgwJm1sRWZ1WEQ7P09sT2BiQTVBQWU4ZzIpKGA+c2Rw
T2Y1a0prIz5qSFlhQ1B0WFokbztOPSFyZng0ZE4KeiR3cVp3SldWJDB3WTltSFlvRD5hKmt7ZD53
X0tsY28kK0NfX2BAVHQoKG0mSSZQd3twbks1R0g7QWFRWlV6XmRzCnppOU95MndMa0Q9Jjg9UXBR
NGt5OUB9fGk3a1hOJStpR2ZYWnxCISVwU2BqN0EtPl9oJkhPMT13KjBtK25Ya01TVAp6VEFIfThQ
NE9XbHhBZVNJdHJLO189bz59SU5tJWFDRmc3ME9gPVBTQlE8YCVePEJoWSYpZGR8JT12NEtgdkFG
Y04KemAqVmxvd0Bvd0tLV3hsKDN6dGZKbzNCX3RlNiVtclFfYXNTQzV5dEhGVSNATFZUKERCdTcz
KWVaRU8qNnNnKTtLCnp5VDlERSErcmpWUXdxd2UjM3dBaDNnK3l3anBZXk52T2Z4NlMkQWdMcExN
azFacWJXUyNTaDU/bUYwJEZsY1dVcAp6PClZbV4la0k1QllaNm5lTyR3YiNlX1E2cWpRV3cwNjU1
Jkkoa0JZYnBHP3FoYW0qWEMtYTlpd3J9RC15XlY3bTsKekV5bUZ+XzQmMldvMVZVdzgybHZNdiZm
XmtGcyErOCg3SDlLUm5EIWJPJnt9V29JND9NcGhwKGVTZ2smblA4KWR7CnpxSFV8YkZHYiQ+PiF1
fjA4aWlGcVp8P2QxOSFYKiFYUEgkJFhVeWxJYEVVKWojKUVhMnBVUz19dCFkLVJpeVJ7NQp6UmMk
JHk3dDZsUiVhKz1YdWdKUD9YazE9YVErNm52V093QF9YSl4xSTBSdkxBanRSfm1vcEl1dyE0ZDYp
c1U/ZmsKenZXdkhfN2N1TyNfLUF5T2A4eGhMe2tyVCstTG47SGNmdlkwX3dpV3F3OSRwSjExNWh5
bC1uO2ByX01DNGRscWokCno9Sz9qTVNGYGpXYkNHPE8pTkZhLVUxNSY5bHB8UlkhPi1LbTJycmZq
Pl5HVmNzYFFLNyYkbkR9ZjdSY2NxQDdxYQp6c2VhODt0RTJ1cW1MbWlxa2lZbEp3VFQycCpNbD8p
TmBfWSFofWF7OHFVfEd0ZitrQEohfH48fHteQXduTEVFbkUKem85fGxtJjRANkdqRyNoQGZXMGd5
ZjB+ZiNHUU56bDdnPzxrZFFib1NmbF9jcjI8YFYobkIoLXwpYjc5NHJ9YkszCnp4UVYoYC0kMTI9
cHApdlZTOyZidDJ3RTY9QVhUTjUlKnYzcGJiSEZ9IypZIXQqTHNAT15lc0A/bWs1KjROSmJ+bAp6
ZkdhamJHUkk9dFlpIXlKdiZlfCM+TXE9YFA+OTZkSXRRRSZ6aTUjfTljfDdrdiM9aDQ1R09tMEdy
TUMzPj9hP1gKenI7Tm4odU4pSVh3QWkzOEx6cn0lTlczJkEkaSNWME19LXR1ODxoJGlOZyVYLVVG
ckt6TTNye3glbj8rTlZ1Jio8Cno1a2tCYm49TXVUJWdBSXpCUCRKT0hYSWUrRS1iPE1BND8qTSlF
O31RJSVYTSgybnp6amZ+fSV0dXYpTjwxfiFwMAp6SWVeXnF1Uz5hUnRuVHhpV3c+MDlCOEoySWUh
Y0BfOTN9KiEhYlJycEkwMSZVUHYoRHgxR3oxbEIjfH1PUilyZGYKekFzSTJnT3Zrfn5BX0FmTyRS
SkxAQkAoVFExYkMjaU0kbDhEMHZ5cj1wK2F0Kzk/cldgM3woaUk4Pi0tMmdpVTxCCnopZnxVJHIt
YVozdWV+XmRCWX1fYD5WYHc3eHx3N291cWhZXlJ+WUMhMXwwajB0ZUI0eEw/VHpTT0xIMShGK21k
eQp6Z1A/JCpwa1NwNCFTKjQtQWcyJnZrWjJLcks0Yih5R0wjSko2ZXQtS1p6TkZCIVghfVVWPCN3
Wl81bFklMHVoeyYKejJ9RDMwME98bm5ETX1zKlB6UEFNMnszUGZJPjJ+aktwcCZfc1JOMDM7QnlF
Zk50Smcyekh8JSNqUjByX1d4RSpBCnoyIUtZd25zPE9rMDVrJHRIM0ojfSY8TSZ0e2VPIV9zUGp5
VioxemBuej42WDVNbHN+PzZZTzIkd0kkXio5cXgqNQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>