<?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>105902</bug_id>
          
          <creation_ts>2013-01-01 16:20:22 -0800</creation_ts>
          <short_desc>Prevent ScrollView::updateScrollbars() from creating scrollbars with negative sizes</short_desc>
          <delta_ts>2013-02-11 17:36:46 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></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 name="Steve Block">steveblock</reporter>
          <assigned_to name="Steve Block">steveblock</assigned_to>
          <cc>ap</cc>
    
    <cc>buildbot</cc>
    
    <cc>cc-bugs</cc>
    
    <cc>danakj</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eae</cc>
    
    <cc>jamesr</cc>
    
    <cc>rniwa</cc>
    
    <cc>shawnsingh</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>steveblock</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>798485</commentid>
    <comment_count>0</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-01 16:20:22 -0800</bug_when>
    <thetext>Creating scrollbars with negative sizes causes problems in GraphicsLayerChromium::setSize(). See http://code.google.com/p/chromium/issues/detail?id=113534 and http://trac.webkit.org/changeset/108007</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798499</commentid>
    <comment_count>1</comment_count>
      <attachid>181001</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-01 16:42:45 -0800</bug_when>
    <thetext>Created attachment 181001
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798531</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-01-01 20:55:23 -0800</bug_when>
    <thetext>Why can the requested size be negative? 

In ChangeLog, you say that there is no change in behavior, but you change WebCore behavior, and update Chromium WebKit accordingly. What about other WebKits? Even if there is no change in observable behavior, there may be equivalent checks in setSize() that now become orphaned.

&gt; See http://code.google.com/p/chromium/issues/detail?id=113534 and http://trac.webkit.org/changeset/108007

Please post reasonably complete rationale in bugs. It is disrespectful of others&apos; time to make everyone looking at a patch guess the rationale from heaps of information in other web pages.

External links are useful when someone wants to do in depth research, not as the only source of information.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798865</commentid>
    <comment_count>3</comment_count>
      <attachid>181001</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2013-01-02 14:02:20 -0800</bug_when>
    <thetext>Comment on attachment 181001
Patch

If I remember correctly, at least one way to get these come out of negative width/heights for RenderBlocks in overconstrained layout situations.  I think we should try to track down and fix those rather than simply clamping in ScrollView</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799212</commentid>
    <comment_count>4</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-02 20:31:58 -0800</bug_when>
    <thetext>A more complete description of the problem ...

GraphicsLayerChromium requires that the width and height of the layer are non-negative.

http://crbug.com/113534 reported LayoutTest crashes due to WebCore setting negative sizes for GraphicsLayerChromium. As a temporary fix, code was added to GraphicsLayerChromium to clamp the size to zero. As noted in the above bug, the correct fix is to avoid generating negative sizes in WebCore, and instead have GraphicsLayerChromium assert that the size is non-negative.

I&apos;ve looked into this and one source of negative layer sizes is ScrollView::updateScrollbars(). If the size of the view is zero, but scrollbars are present, the existing logic attempts to make the size of the scrollbars negative. This bug is concerned with fixing this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799270</commentid>
    <comment_count>5</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-02 22:29:26 -0800</bug_when>
    <thetext>&gt; In ChangeLog, you say that there is no change in behavior, but you change
&gt; WebCore behavior, and update Chromium WebKit accordingly. What about other
&gt; WebKits?
I think that the fix to ScrollView::updateScrollbars() is correct irrespective of whether other ports require layer sizes to be non-negative, as I don&apos;t think it makes sense for the scrollbars to have negative sizes. I was hoping to use the EWS bots to double-check for changes in behavior, but I now learn that only the Chromium and Mac bots run LayoutTests. Is there a way to test all ports?

&gt; Even if there is no change in observable behavior, there may be equivalent
&gt; checks in setSize() that now become orphaned.
I&apos;ve looked into this and there don&apos;t seem to be any such checks.

&gt; If I remember correctly, at least one way to get these come out of negative
&gt; width/heights for RenderBlocks in overconstrained layout situations.
That may be true, but isn&apos;t that a separate problem? I&apos;m happy to look into it: do you have a repro case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799349</commentid>
    <comment_count>6</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2013-01-03 06:15:31 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; &gt; If I remember correctly, at least one way to get these come out of negative
&gt; &gt; width/heights for RenderBlocks in overconstrained layout situations.
&gt; That may be true, but isn&apos;t that a separate problem? I&apos;m happy to look into it: do you have a repro case?

I recall that when we clamped incorrectly (set the position to 0 as well as the size), the http://acko.net website broke. So I guess there are some negative width things generated in that website.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799387</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-01-03 08:36:43 -0800</bug_when>
    <thetext>&gt; I think that the fix to ScrollView::updateScrollbars() is correct irrespective of whether other ports require layer sizes to be non-negative

While this is technically accurate, it would be pretty difficult to remove such orphaned checks in WebKits later. So fixing a WebCore bug without removing obsolete checks would create a minor, but long-term code maintenance burden.

&gt; I&apos;ve looked into this and there don&apos;t seem to be any such checks.

OK.

&gt; I now learn that only the Chromium and Mac bots run LayoutTests. Is there a way to test all ports?

I don&apos;t think that there is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>799948</commentid>
    <comment_count>8</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-03 21:44:58 -0800</bug_when>
    <thetext>&gt; I recall that when we clamped incorrectly (set the position to 0 as well as the
&gt; size), the http://acko.net website broke. So I guess there are some negative
&gt; width things generated in that website.

Reading http://code.google.com/p/chromium/issues/detail?id=113534, it looks like the initial version of the clamping, which broke acko.net, clamped if either the width or height is zero. The problem was that acko.net generates layers which have zero for one dimension, but non-zero for the other, and these should not be clamped. http://trac.webkit.org/changeset/108007 fixed things to only clamp if the width or height is negative.

So acko.net doesn&apos;t produce negative sizes, and testing this again now confirms this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>801992</commentid>
    <comment_count>9</comment_count>
      <attachid>181001</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-07 21:21:09 -0800</bug_when>
    <thetext>Comment on attachment 181001
Patch

Setting r? again, as the issue raised by jamesr seems to be independent of this fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802292</commentid>
    <comment_count>10</comment_count>
      <attachid>181001</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2013-01-08 09:22:48 -0800</bug_when>
    <thetext>Comment on attachment 181001
Patch

I think you misunderstood the feedback.  The right thing to do here is to figure out how we&apos;re entering ScrollView::updateScrollbars() in a situation where these values are negative, figure out why those situations are arising, fix the root causes and add tests.

I also highly highly doubt that ScrollView::updateScrollbars is the only source of negative sizes in GraphicsLayer, so removing the check there will just reintroduce the crash you&apos;re claiming to fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802760</commentid>
    <comment_count>11</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-08 16:07:32 -0800</bug_when>
    <thetext>&gt; The right thing to do here is to figure out how we&apos;re entering
&gt; ScrollView::updateScrollbars() in a situation where these values are negative,
&gt; figure out why those situations are arising, fix the root causes and add tests.

For the particular case I&apos;m looking at, there aren&apos;t any negative sizes when we enter ScrollView::updateScrollbars(). But if the size of the view is zero (or small), but scrollbars are present, the existing logic attempts to make the size of the scrollbars negative. This seems like a bug. Or are you saying that we should we never get into the situation where the view size is this small?

I agree that there may also be cases when we enter ScrollView::updateScrollbars() with negative sizes. However, this seems to be a separate issue, and I don&apos;t have a repro case.

&gt; I also highly highly doubt that ScrollView::updateScrollbars is the only source
&gt; of negative sizes in GraphicsLayer, so removing the check there will just
&gt; reintroduce the crash you&apos;re claiming to fix.

OK, though this case isn&apos;t hit by any LayoutTests. I&apos;ll update the patch to reinstate the check, but perhaps we should also add an ASSERT to help track down the bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802762</commentid>
    <comment_count>12</comment_count>
      <attachid>181794</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-01-08 16:08:36 -0800</bug_when>
    <thetext>Created attachment 181794
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>807982</commentid>
    <comment_count>13</comment_count>
      <attachid>181794</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2013-01-15 19:56:36 -0800</bug_when>
    <thetext>Comment on attachment 181794
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=181794&amp;action=review

&gt; Source/WebCore/ChangeLog:8
&gt; +        No change in behaviour, covered by existing tests.

are you saying this test case:

&lt;!DOCTYPE html&gt;
&lt;div style=&quot;overflow:scroll; width:6px; height:30px&quot;&gt;x

and this one:

&lt;!DOCTYPE html&gt;
&lt;body dir=&quot;rtl&quot;&gt;
&lt;div style=&quot;overflow:scroll; width:6px; height:30px&quot;&gt;x


render the same with and without this patch?  I really doubt that&apos;s the case and the behavior (even if it is unchanged) needs to be covered by layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>824968</commentid>
    <comment_count>14</comment_count>
      <attachid>186512</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2013-02-04 17:57:34 -0800</bug_when>
    <thetext>Created attachment 186512
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825025</commentid>
    <comment_count>15</comment_count>
      <attachid>186512</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-04 19:10:45 -0800</bug_when>
    <thetext>Comment on attachment 186512
Patch

Attachment 186512 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16369500

New failing tests:
scrollbars/clamp-to-zero-size.html
scrollbars/clamp-to-zero-size-rtl.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825051</commentid>
    <comment_count>16</comment_count>
      <attachid>186512</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-04 20:03:29 -0800</bug_when>
    <thetext>Comment on attachment 186512
Patch

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

New failing tests:
platform/chromium/virtual/gpu/compositedscrolling/scrollbars/clamp-to-zero-size.html
platform/chromium/virtual/gpu/compositedscrolling/scrollbars/clamp-to-zero-size-rtl.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825078</commentid>
    <comment_count>17</comment_count>
      <attachid>186512</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-04 20:39:41 -0800</bug_when>
    <thetext>Comment on attachment 186512
Patch

Attachment 186512 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16371539

New failing tests:
scrollbars/clamp-to-zero-size.html
scrollbars/clamp-to-zero-size-rtl.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825079</commentid>
    <comment_count>18</comment_count>
      <attachid>186512</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2013-02-04 20:41:37 -0800</bug_when>
    <thetext>Comment on attachment 186512
Patch

Can you add tests for horizontal scrollbars too, since you&apos;re also changing their behavior?

It&apos;s not immediately obvious what the expected output on these layout tests are.  Could these be reference tests?  If not, could you add an HTML comment to the tests describing what the pixel output should be and add testRunner.dumpAsText(true) in a script block inside the tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825122</commentid>
    <comment_count>19</comment_count>
      <attachid>186512</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-04 21:42:11 -0800</bug_when>
    <thetext>Comment on attachment 186512
Patch

Attachment 186512 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16375525

New failing tests:
scrollbars/clamp-to-zero-size.html
scrollbars/clamp-to-zero-size-rtl.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825244</commentid>
    <comment_count>20</comment_count>
      <attachid>186512</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-05 01:01:06 -0800</bug_when>
    <thetext>Comment on attachment 186512
Patch

Attachment 186512 did not pass win-ews (win):
Output: http://queues.webkit.org/results/16368554</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181001</attachid>
            <date>2013-01-01 16:42:45 -0800</date>
            <delta_ts>2013-01-08 16:08:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105902-20130102113953.patch</filename>
            <type>text/plain</type>
            <size>5119</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NDIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2U4MGJkM2ZkZGJiYTQ2
NzkzYTBiYTFiYjU0MzU2MjA4YWE0OWQxMC4uNDZkMTg1NDMzN2EwNjk1MGU5YjE3M2NmODJlYjg0
NmEwZDUwYWE0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAxLTAxICBTdGV2
ZSBCbG9jayAgPHN0ZXZlYmxvY2tAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFByZXZlbnQgU2Ny
b2xsVmlldzo6dXBkYXRlU2Nyb2xsYmFycygpIGZyb20gY3JlYXRpbmcgc2Nyb2xsYmFycyB3aXRo
IG5lZ2F0aXZlIHNpemVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMDU5MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3VyLCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3Rz
LgorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxWaWV3Ojp1cGRhdGVTY3JvbGxiYXJzKToKKyAgICAgICAgSW1wb3NlIGEgbG93ZXIg
Ym91bmQgb2YgemVybyBmb3Igc2Nyb2xsYmFyIGRpbWVuc2lvbnMuCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRmxvYXRTaXplLmg6CisgICAgICAgIChXZWJDb3JlOjpGbG9hdFNpemU6Omhh
c05lZ2F0aXZlRGltZW5zaW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NM
YXllckNocm9taXVtOjpzZXRTaXplKToKKyAgICAgICAgUmVtb3ZlIGxvZ2ljIHRvIGhhbmRsZSBu
ZWdhdGl2ZSBzaXplcyBhbmQgaW5zdGVhZCBhc3NlcnQgdGhhdCBzaXplcyBhcmUgbm90IG5lZ2F0
aXZlLgorCiAyMDEyLTEyLTIzICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgW1F0XVtNYWNdIFVucmV2aWV3ZWQgZml4IHRoZSBidWlsZCBhZnRlciByMTM4NDEzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCmluZGV4IDgyYTBkYWI0YjM3OGFlZjhm
OWRmNzhjMGExNTYwZjRmODc0ODc3YTkuLjZiNjEzYjdlNzVhNTA5MzMwZjFiZjA5ZjJmYmI5OTUw
NjUwZTQwNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC01NjUs
OSArNTY1LDkgQEAgdm9pZCBTY3JvbGxWaWV3Ojp1cGRhdGVTY3JvbGxiYXJzKGNvbnN0IEludFNp
emUmIGRlc2lyZWRPZmZzZXQpCiAgICAgICAgIGludCBwYWdlU3RlcCA9IG1heChtYXg8aW50Pihj
bGllbnRXaWR0aCAqIFNjcm9sbGJhcjo6bWluRnJhY3Rpb25Ub1N0ZXBXaGVuUGFnaW5nKCksIGNs
aWVudFdpZHRoIC0gU2Nyb2xsYmFyOjptYXhPdmVybGFwQmV0d2VlblBhZ2VzKCkpLCAxKTsKICAg
ICAgICAgSW50UmVjdCBvbGRSZWN0KG1faG9yaXpvbnRhbFNjcm9sbGJhci0+ZnJhbWVSZWN0KCkp
OwogICAgICAgICBJbnRSZWN0IGhCYXJSZWN0KDAsCi0gICAgICAgICAgICAgICAgICAgICAgICBo
ZWlnaHQoKSAtIG1faG9yaXpvbnRhbFNjcm9sbGJhci0+aGVpZ2h0KCksCi0gICAgICAgICAgICAg
ICAgICAgICAgICB3aWR0aCgpIC0gKG1fdmVydGljYWxTY3JvbGxiYXIgPyBtX3ZlcnRpY2FsU2Ny
b2xsYmFyLT53aWR0aCgpIDogMCksCi0gICAgICAgICAgICAgICAgICAgICAgICBtX2hvcml6b250
YWxTY3JvbGxiYXItPmhlaWdodCgpKTsKKyAgICAgICAgICAgIGhlaWdodCgpIC0gbV9ob3Jpem9u
dGFsU2Nyb2xsYmFyLT5oZWlnaHQoKSwKKyAgICAgICAgICAgIHN0ZDo6bWF4KDAsIHdpZHRoKCkg
LSAobV92ZXJ0aWNhbFNjcm9sbGJhciA/IG1fdmVydGljYWxTY3JvbGxiYXItPndpZHRoKCkgOiAw
KSksCisgICAgICAgICAgICBtX2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdodCgpKTsKICAgICAg
ICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5zZXRGcmFtZVJlY3QoaEJhclJlY3QpOwogICAgICAg
ICBpZiAoIW1fc2Nyb2xsYmFyc1N1cHByZXNzZWQgJiYgb2xkUmVjdCAhPSBtX2hvcml6b250YWxT
Y3JvbGxiYXItPmZyYW1lUmVjdCgpKQogICAgICAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFy
LT5pbnZhbGlkYXRlKCk7CkBAIC01ODUsMTAgKzU4NSwxMCBAQCB2b2lkIFNjcm9sbFZpZXc6OnVw
ZGF0ZVNjcm9sbGJhcnMoY29uc3QgSW50U2l6ZSYgZGVzaXJlZE9mZnNldCkKICAgICAgICAgaW50
IGNsaWVudEhlaWdodCA9IHZpc2libGVIZWlnaHQoKTsKICAgICAgICAgaW50IHBhZ2VTdGVwID0g
bWF4KG1heDxpbnQ+KGNsaWVudEhlaWdodCAqIFNjcm9sbGJhcjo6bWluRnJhY3Rpb25Ub1N0ZXBX
aGVuUGFnaW5nKCksIGNsaWVudEhlaWdodCAtIFNjcm9sbGJhcjo6bWF4T3ZlcmxhcEJldHdlZW5Q
YWdlcygpKSwgMSk7CiAgICAgICAgIEludFJlY3Qgb2xkUmVjdChtX3ZlcnRpY2FsU2Nyb2xsYmFy
LT5mcmFtZVJlY3QoKSk7Ci0gICAgICAgIEludFJlY3QgdkJhclJlY3Qod2lkdGgoKSAtIG1fdmVy
dGljYWxTY3JvbGxiYXItPndpZHRoKCksIAotICAgICAgICAgICAgICAgICAgICAgICAgIDAsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJhci0+d2lkdGgoKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQoKSAtIChtX2hvcml6b250YWxTY3JvbGxiYXIg
PyBtX2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdodCgpIDogMCkpOworICAgICAgICBJbnRSZWN0
IHZCYXJSZWN0KHdpZHRoKCkgLSBtX3ZlcnRpY2FsU2Nyb2xsYmFyLT53aWR0aCgpLAorICAgICAg
ICAgICAgMCwKKyAgICAgICAgICAgIG1fdmVydGljYWxTY3JvbGxiYXItPndpZHRoKCksCisgICAg
ICAgICAgICBzdGQ6Om1heCgwLCBoZWlnaHQoKSAtIChtX2hvcml6b250YWxTY3JvbGxiYXIgPyBt
X2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdodCgpIDogMCkpKTsKICAgICAgICAgbV92ZXJ0aWNh
bFNjcm9sbGJhci0+c2V0RnJhbWVSZWN0KHZCYXJSZWN0KTsKICAgICAgICAgaWYgKCFtX3Njcm9s
bGJhcnNTdXBwcmVzc2VkICYmIG9sZFJlY3QgIT0gbV92ZXJ0aWNhbFNjcm9sbGJhci0+ZnJhbWVS
ZWN0KCkpCiAgICAgICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyLT5pbnZhbGlkYXRlKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFNpemUuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5oCmluZGV4IDJjYTIy
Y2RkNDUxNTgyMDAwMTk3YTNlYjZjODIwZTc2YjQzNmY1OWYuLjllOWQwNWY0OTQ0ZjM5OWNkNzkx
Nzg3NzMxZGE4NjA5YTQzZWYxMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL0Zsb2F0U2l6ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0Zsb2F0U2l6ZS5oCkBAIC03OCw2ICs3OCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEhl
aWdodChmbG9hdCBoZWlnaHQpIHsgbV9oZWlnaHQgPSBoZWlnaHQ7IH0KIAogICAgIGJvb2wgaXNF
bXB0eSgpIGNvbnN0IHsgcmV0dXJuIG1fd2lkdGggPD0gMCB8fCBtX2hlaWdodCA8PSAwOyB9Cisg
ICAgYm9vbCBoYXNOZWdhdGl2ZURpbWVuc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1fd2lkdGggPCAw
IHx8IG1faGVpZ2h0IDwgMDsgfQogICAgIGJvb2wgaXNaZXJvKCkgY29uc3Q7CiAgICAgYm9vbCBp
c0V4cHJlc3NpYmxlQXNJbnRTaXplKCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0dyYXBoaWNzTGF5ZXJDaHJvbWl1bS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVy
Q2hyb21pdW0uY3BwCmluZGV4IDU0OWFmYjU3NjNlNjFhYjc2MDQxNzljYjNjMDU2NzE0YjZjMjll
ZTQuLjkxNjA5NGE0YjQwMjFiNzVkMjZjYTFkZDU3ZjVhYTQ4OTNiOTkyZDggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0dyYXBoaWNzTGF5ZXJD
aHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vR3JhcGhpY3NMYXllckNocm9taXVtLmNwcApAQCAtMjE5LDE3ICsyMTksMTEgQEAgdm9pZCBH
cmFwaGljc0xheWVyQ2hyb21pdW06OnNldEFuY2hvclBvaW50KGNvbnN0IEZsb2F0UG9pbnQzRCYg
cG9pbnQpCiAKIHZvaWQgR3JhcGhpY3NMYXllckNocm9taXVtOjpzZXRTaXplKGNvbnN0IEZsb2F0
U2l6ZSYgc2l6ZSkKIHsKLSAgICAvLyBXZSBhcmUgcmVjZWl2aW5nIG5lZ2F0aXZlIHNpemVzIGhl
cmUgdGhhdCBjYXVzZSBhc3NlcnRpb25zIHRvIGZhaWwgaW4gdGhlIGNvbXBvc2l0b3IuIENsYW1w
IHRoZW0gdG8gMCB0bwotICAgIC8vIGF2b2lkIHRob3NlIGFzc2VydGlvbnMuCi0gICAgLy8gRklY
TUU6IFRoaXMgc2hvdWxkIGJlIGFuIEFTU0VSVCBpbnN0ZWFkLCBhcyBuZWdhdGl2ZSBzaXplcyBz
aG91bGQgbm90IGV4aXN0IGluIFdlYkNvcmUuCi0gICAgRmxvYXRTaXplIGNsYW1wZWRTaXplID0g
c2l6ZTsKLSAgICBpZiAoY2xhbXBlZFNpemUud2lkdGgoKSA8IDAgfHwgY2xhbXBlZFNpemUuaGVp
Z2h0KCkgPCAwKQotICAgICAgICBjbGFtcGVkU2l6ZSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgaWYg
KGNsYW1wZWRTaXplID09IG1fc2l6ZSkKKyAgICBBU1NFUlQoIXNpemUuaGFzTmVnYXRpdmVEaW1l
bnNpb24oKSk7CisgICAgaWYgKHNpemUgPT0gbV9zaXplKQogICAgICAgICByZXR1cm47CiAKLSAg
ICBHcmFwaGljc0xheWVyOjpzZXRTaXplKGNsYW1wZWRTaXplKTsKKyAgICBHcmFwaGljc0xheWVy
OjpzZXRTaXplKHNpemUpOwogICAgIHVwZGF0ZUxheWVyU2l6ZSgpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181794</attachid>
            <date>2013-01-08 16:08:36 -0800</date>
            <delta_ts>2013-02-04 17:57:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105902-20130109110539.patch</filename>
            <type>text/plain</type>
            <size>5108</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MTIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGJiM2NjYzI4Y2E0Nzg1
OWI5NDA0MjhjYjgyNmFlZWMwZjAxMWE1NC4uNTRhNmY3NDgwOWY5M2QyYjA3NzZmZTY1Y2YxNjYx
Nzk4MTM5Y2Q3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAxLTAxICBTdGV2
ZSBCbG9jayAgPHN0ZXZlYmxvY2tAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFByZXZlbnQgU2Ny
b2xsVmlldzo6dXBkYXRlU2Nyb2xsYmFycygpIGZyb20gY3JlYXRpbmcgc2Nyb2xsYmFycyB3aXRo
IG5lZ2F0aXZlIHNpemVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMDU5MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3VyLCBjb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3Rz
LgorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxWaWV3Ojp1cGRhdGVTY3JvbGxiYXJzKToKKyAgICAgICAgSW1wb3NlIGEgbG93ZXIg
Ym91bmQgb2YgemVybyBmb3Igc2Nyb2xsYmFyIGRpbWVuc2lvbnMuCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRmxvYXRTaXplLmg6CisgICAgICAgIChXZWJDb3JlOjpGbG9hdFNpemU6Omhh
c05lZ2F0aXZlRGltZW5zaW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NM
YXllckNocm9taXVtOjpzZXRTaXplKToKKyAgICAgICAgQWRkIGFuIEFTU0VSVCB0aGF0IHNpemVz
IGFyZSBub3QgbmVnYXRpdmUuCisKIDIwMTMtMDEtMDggIFRvbSBTZXBleiAgPHRzZXBlekBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgQ29weS1wYXN0ZSBwcmVzZXJ2ZXMgPGVtYmVkPiB0YWdzIGNv
bnRhaW5pbmcgYWN0aXZlIGNvbnRlbnQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9TY3JvbGxWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcu
Y3BwCmluZGV4IDgyYTBkYWI0YjM3OGFlZjhmOWRmNzhjMGExNTYwZjRmODc0ODc3YTkuLjZiNjEz
YjdlNzVhNTA5MzMwZjFiZjA5ZjJmYmI5OTUwNjUwZTQwNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbFZpZXcuY3BwCkBAIC01NjUsOSArNTY1LDkgQEAgdm9pZCBTY3JvbGxWaWV3Ojp1
cGRhdGVTY3JvbGxiYXJzKGNvbnN0IEludFNpemUmIGRlc2lyZWRPZmZzZXQpCiAgICAgICAgIGlu
dCBwYWdlU3RlcCA9IG1heChtYXg8aW50PihjbGllbnRXaWR0aCAqIFNjcm9sbGJhcjo6bWluRnJh
Y3Rpb25Ub1N0ZXBXaGVuUGFnaW5nKCksIGNsaWVudFdpZHRoIC0gU2Nyb2xsYmFyOjptYXhPdmVy
bGFwQmV0d2VlblBhZ2VzKCkpLCAxKTsKICAgICAgICAgSW50UmVjdCBvbGRSZWN0KG1faG9yaXpv
bnRhbFNjcm9sbGJhci0+ZnJhbWVSZWN0KCkpOwogICAgICAgICBJbnRSZWN0IGhCYXJSZWN0KDAs
Ci0gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQoKSAtIG1faG9yaXpvbnRhbFNjcm9sbGJh
ci0+aGVpZ2h0KCksCi0gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCgpIC0gKG1fdmVydGlj
YWxTY3JvbGxiYXIgPyBtX3ZlcnRpY2FsU2Nyb2xsYmFyLT53aWR0aCgpIDogMCksCi0gICAgICAg
ICAgICAgICAgICAgICAgICBtX2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdodCgpKTsKKyAgICAg
ICAgICAgIGhlaWdodCgpIC0gbV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5oZWlnaHQoKSwKKyAgICAg
ICAgICAgIHN0ZDo6bWF4KDAsIHdpZHRoKCkgLSAobV92ZXJ0aWNhbFNjcm9sbGJhciA/IG1fdmVy
dGljYWxTY3JvbGxiYXItPndpZHRoKCkgOiAwKSksCisgICAgICAgICAgICBtX2hvcml6b250YWxT
Y3JvbGxiYXItPmhlaWdodCgpKTsKICAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5zZXRG
cmFtZVJlY3QoaEJhclJlY3QpOwogICAgICAgICBpZiAoIW1fc2Nyb2xsYmFyc1N1cHByZXNzZWQg
JiYgb2xkUmVjdCAhPSBtX2hvcml6b250YWxTY3JvbGxiYXItPmZyYW1lUmVjdCgpKQogICAgICAg
ICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5pbnZhbGlkYXRlKCk7CkBAIC01ODUsMTAgKzU4
NSwxMCBAQCB2b2lkIFNjcm9sbFZpZXc6OnVwZGF0ZVNjcm9sbGJhcnMoY29uc3QgSW50U2l6ZSYg
ZGVzaXJlZE9mZnNldCkKICAgICAgICAgaW50IGNsaWVudEhlaWdodCA9IHZpc2libGVIZWlnaHQo
KTsKICAgICAgICAgaW50IHBhZ2VTdGVwID0gbWF4KG1heDxpbnQ+KGNsaWVudEhlaWdodCAqIFNj
cm9sbGJhcjo6bWluRnJhY3Rpb25Ub1N0ZXBXaGVuUGFnaW5nKCksIGNsaWVudEhlaWdodCAtIFNj
cm9sbGJhcjo6bWF4T3ZlcmxhcEJldHdlZW5QYWdlcygpKSwgMSk7CiAgICAgICAgIEludFJlY3Qg
b2xkUmVjdChtX3ZlcnRpY2FsU2Nyb2xsYmFyLT5mcmFtZVJlY3QoKSk7Ci0gICAgICAgIEludFJl
Y3QgdkJhclJlY3Qod2lkdGgoKSAtIG1fdmVydGljYWxTY3JvbGxiYXItPndpZHRoKCksIAotICAg
ICAgICAgICAgICAgICAgICAgICAgIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgbV92ZXJ0
aWNhbFNjcm9sbGJhci0+d2lkdGgoKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQo
KSAtIChtX2hvcml6b250YWxTY3JvbGxiYXIgPyBtX2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdo
dCgpIDogMCkpOworICAgICAgICBJbnRSZWN0IHZCYXJSZWN0KHdpZHRoKCkgLSBtX3ZlcnRpY2Fs
U2Nyb2xsYmFyLT53aWR0aCgpLAorICAgICAgICAgICAgMCwKKyAgICAgICAgICAgIG1fdmVydGlj
YWxTY3JvbGxiYXItPndpZHRoKCksCisgICAgICAgICAgICBzdGQ6Om1heCgwLCBoZWlnaHQoKSAt
IChtX2hvcml6b250YWxTY3JvbGxiYXIgPyBtX2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdodCgp
IDogMCkpKTsKICAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJhci0+c2V0RnJhbWVSZWN0KHZCYXJS
ZWN0KTsKICAgICAgICAgaWYgKCFtX3Njcm9sbGJhcnNTdXBwcmVzc2VkICYmIG9sZFJlY3QgIT0g
bV92ZXJ0aWNhbFNjcm9sbGJhci0+ZnJhbWVSZWN0KCkpCiAgICAgICAgICAgICBtX3ZlcnRpY2Fs
U2Nyb2xsYmFyLT5pbnZhbGlkYXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9GbG9hdFNpemUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0Zsb2F0U2l6ZS5oCmluZGV4IDJjYTIyY2RkNDUxNTgyMDAwMTk3YTNlYjZjODIwZTc2YjQz
NmY1OWYuLjllOWQwNWY0OTQ0ZjM5OWNkNzkxNzg3NzMxZGE4NjA5YTQzZWYxMmMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zsb2F0U2l6ZS5oCkBAIC03OCw2ICs3OCw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEhlaWdodChmbG9hdCBoZWlnaHQpIHsgbV9oZWlnaHQg
PSBoZWlnaHQ7IH0KIAogICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsgcmV0dXJuIG1fd2lkdGgg
PD0gMCB8fCBtX2hlaWdodCA8PSAwOyB9CisgICAgYm9vbCBoYXNOZWdhdGl2ZURpbWVuc2lvbigp
IGNvbnN0IHsgcmV0dXJuIG1fd2lkdGggPCAwIHx8IG1faGVpZ2h0IDwgMDsgfQogICAgIGJvb2wg
aXNaZXJvKCkgY29uc3Q7CiAgICAgYm9vbCBpc0V4cHJlc3NpYmxlQXNJbnRTaXplKCkgY29uc3Q7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L0dyYXBoaWNzTGF5ZXJDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uY3BwCmluZGV4IDU0OWFmYjU3NjNl
NjFhYjc2MDQxNzljYjNjMDU2NzE0YjZjMjllZTQuLmY3ZGY3MDJhYjk3NmE0YjcyYzY4YTA1Nzli
NGRlMThhZjIzZDcyNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL0dyYXBoaWNzTGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vR3JhcGhpY3NMYXllckNocm9taXVtLmNwcApA
QCAtMjE5LDkgKzIxOSwxMCBAQCB2b2lkIEdyYXBoaWNzTGF5ZXJDaHJvbWl1bTo6c2V0QW5jaG9y
UG9pbnQoY29uc3QgRmxvYXRQb2ludDNEJiBwb2ludCkKIAogdm9pZCBHcmFwaGljc0xheWVyQ2hy
b21pdW06OnNldFNpemUoY29uc3QgRmxvYXRTaXplJiBzaXplKQogewotICAgIC8vIFdlIGFyZSBy
ZWNlaXZpbmcgbmVnYXRpdmUgc2l6ZXMgaGVyZSB0aGF0IGNhdXNlIGFzc2VydGlvbnMgdG8gZmFp
bCBpbiB0aGUgY29tcG9zaXRvci4gQ2xhbXAgdGhlbSB0byAwIHRvCi0gICAgLy8gYXZvaWQgdGhv
c2UgYXNzZXJ0aW9ucy4KLSAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUgYW4gQVNTRVJUIGlu
c3RlYWQsIGFzIG5lZ2F0aXZlIHNpemVzIHNob3VsZCBub3QgZXhpc3QgaW4gV2ViQ29yZS4KKyAg
ICAvLyBOZWdhdGl2ZSBzaXplcyBzaG91bGQgbm90IGV4aXN0IGluIFdlYkNvcmUuCisgICAgQVNT
RVJUKCFzaXplLmhhc05lZ2F0aXZlRGltZW5zaW9uKCkpOworICAgIC8vIEZJWE1FOiBXZSBhcmUg
cmVjZWl2aW5nIG5lZ2F0aXZlIHNpemVzIGhlcmUgdGhhdCBjYXVzZSBhc3NlcnRpb25zIHRvIGZh
aWwKKyAgICAvLyBpbiB0aGUgY29tcG9zaXRvci4gQ2xhbXAgdGhlbSB0byAwIHRvIGF2b2lkIHRo
b3NlIGFzc2VydGlvbnMuCiAgICAgRmxvYXRTaXplIGNsYW1wZWRTaXplID0gc2l6ZTsKICAgICBp
ZiAoY2xhbXBlZFNpemUud2lkdGgoKSA8IDAgfHwgY2xhbXBlZFNpemUuaGVpZ2h0KCkgPCAwKQog
ICAgICAgICBjbGFtcGVkU2l6ZSA9IEZsb2F0U2l6ZSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186512</attachid>
            <date>2013-02-04 17:57:34 -0800</date>
            <delta_ts>2013-02-05 01:01:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105902-20130205125412.patch</filename>
            <type>text/plain</type>
            <size>10137</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxODMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjZkMmNjMTM1NGZiZjFm
NWE5YjBkOGE2OGI5NmJiZjA4OGY5NDIwZC4uYWExMmZkMjJhNDZiYmY0NjgxMGRlOTZmYTg1NjU5
Njk1ODA1YTdhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEzLTAyLTA0ICBTdGV2
ZSBCbG9jayAgPHN0ZXZlYmxvY2tAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFByZXZlbnQgU2Ny
b2xsVmlldzo6dXBkYXRlU2Nyb2xsYmFycygpIGZyb20gY3JlYXRpbmcgc2Nyb2xsYmFycyB3aXRo
IG5lZ2F0aXZlIHNpemVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMDU5MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBUZXN0czogc2Nyb2xsYmFycy9jbGFtcC10by16ZXJvLXNpemUtcnRsLmh0bWwKKyAg
ICAgICAgICAgICAgIHNjcm9sbGJhcnMvY2xhbXAtdG8temVyby1zaXplLmh0bWwKKworICAgICAg
ICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsVmll
dzo6dXBkYXRlU2Nyb2xsYmFycyk6CisgICAgICAgIEltcG9zZSBhIGxvd2VyIGJvdW5kIG9mIHpl
cm8gZm9yIHNjcm9sbGJhciBkaW1lbnNpb25zLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L0Zsb2F0U2l6ZS5oOgorICAgICAgICAoV2ViQ29yZTo6RmxvYXRTaXplOjpoYXNOZWdhdGl2ZURp
bWVuc2lvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vR3JhcGhpY3NM
YXllckNocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJDaHJvbWl1
bTo6c2V0U2l6ZSk6CisgICAgICAgIEFkZCBhbiBBU1NFUlQgdGhhdCBzaXplcyBhcmUgbm90IG5l
Z2F0aXZlLgorCiAyMDEzLTAyLTA0ICBTdGVwaGVuIFdoaXRlICA8c2Vub3JibGFuY29AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFtza2lhXSBSZW1vdmUgdXNlIG9mIFNrU2luZ2xlSW5wdXRJbWFn
ZUZpbHRlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggYTcyN2M0
YWU0NjUwNzEwZjRiOTA5OWQ0NTFjNWFkZjI3NDJkMTE5Ni4uMjkyZTVkZDkyMGFjODAzMjEzMDEy
YWU3OWFiOTIwMTQwZTIzNDJmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U2Nyb2xsVmlldy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5j
cHAKQEAgLTU2OSw5ICs1NjksOSBAQCB2b2lkIFNjcm9sbFZpZXc6OnVwZGF0ZVNjcm9sbGJhcnMo
Y29uc3QgSW50U2l6ZSYgZGVzaXJlZE9mZnNldCkKICAgICAgICAgaW50IHBhZ2VTdGVwID0gbWF4
KG1heDxpbnQ+KGNsaWVudFdpZHRoICogU2Nyb2xsYmFyOjptaW5GcmFjdGlvblRvU3RlcFdoZW5Q
YWdpbmcoKSwgY2xpZW50V2lkdGggLSBTY3JvbGxiYXI6Om1heE92ZXJsYXBCZXR3ZWVuUGFnZXMo
KSksIDEpOwogICAgICAgICBJbnRSZWN0IG9sZFJlY3QobV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5m
cmFtZVJlY3QoKSk7CiAgICAgICAgIEludFJlY3QgaEJhclJlY3QoMCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGhlaWdodCgpIC0gbV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5oZWlnaHQoKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIHdpZHRoKCkgLSAobV92ZXJ0aWNhbFNjcm9sbGJhciA/IG1f
dmVydGljYWxTY3JvbGxiYXItPndpZHRoKCkgOiAwKSwKLSAgICAgICAgICAgICAgICAgICAgICAg
IG1faG9yaXpvbnRhbFNjcm9sbGJhci0+aGVpZ2h0KCkpOworICAgICAgICAgICAgaGVpZ2h0KCkg
LSBtX2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdodCgpLAorICAgICAgICAgICAgc3RkOjptYXgo
MCwgd2lkdGgoKSAtIChtX3ZlcnRpY2FsU2Nyb2xsYmFyID8gbV92ZXJ0aWNhbFNjcm9sbGJhci0+
d2lkdGgoKSA6IDApKSwKKyAgICAgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbGJhci0+aGVpZ2h0
KCkpOwogICAgICAgICBtX2hvcml6b250YWxTY3JvbGxiYXItPnNldEZyYW1lUmVjdChoQmFyUmVj
dCk7CiAgICAgICAgIGlmICghbV9zY3JvbGxiYXJzU3VwcHJlc3NlZCAmJiBvbGRSZWN0ICE9IG1f
aG9yaXpvbnRhbFNjcm9sbGJhci0+ZnJhbWVSZWN0KCkpCiAgICAgICAgICAgICBtX2hvcml6b250
YWxTY3JvbGxiYXItPmludmFsaWRhdGUoKTsKQEAgLTU4OSwxMCArNTg5LDEwIEBAIHZvaWQgU2Ny
b2xsVmlldzo6dXBkYXRlU2Nyb2xsYmFycyhjb25zdCBJbnRTaXplJiBkZXNpcmVkT2Zmc2V0KQog
ICAgICAgICBpbnQgY2xpZW50SGVpZ2h0ID0gdmlzaWJsZUhlaWdodCgpOwogICAgICAgICBpbnQg
cGFnZVN0ZXAgPSBtYXgobWF4PGludD4oY2xpZW50SGVpZ2h0ICogU2Nyb2xsYmFyOjptaW5GcmFj
dGlvblRvU3RlcFdoZW5QYWdpbmcoKSwgY2xpZW50SGVpZ2h0IC0gU2Nyb2xsYmFyOjptYXhPdmVy
bGFwQmV0d2VlblBhZ2VzKCkpLCAxKTsKICAgICAgICAgSW50UmVjdCBvbGRSZWN0KG1fdmVydGlj
YWxTY3JvbGxiYXItPmZyYW1lUmVjdCgpKTsKLSAgICAgICAgSW50UmVjdCB2QmFyUmVjdCh3aWR0
aCgpIC0gbV92ZXJ0aWNhbFNjcm9sbGJhci0+d2lkdGgoKSwgCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyLT53
aWR0aCgpLAotICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodCgpIC0gKG1faG9yaXpvbnRh
bFNjcm9sbGJhciA/IG1faG9yaXpvbnRhbFNjcm9sbGJhci0+aGVpZ2h0KCkgOiAwKSk7CisgICAg
ICAgIEludFJlY3QgdkJhclJlY3Qod2lkdGgoKSAtIG1fdmVydGljYWxTY3JvbGxiYXItPndpZHRo
KCksCisgICAgICAgICAgICAwLAorICAgICAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJhci0+d2lk
dGgoKSwKKyAgICAgICAgICAgIHN0ZDo6bWF4KDAsIGhlaWdodCgpIC0gKG1faG9yaXpvbnRhbFNj
cm9sbGJhciA/IG1faG9yaXpvbnRhbFNjcm9sbGJhci0+aGVpZ2h0KCkgOiAwKSkpOwogICAgICAg
ICBtX3ZlcnRpY2FsU2Nyb2xsYmFyLT5zZXRGcmFtZVJlY3QodkJhclJlY3QpOwogICAgICAgICBp
ZiAoIW1fc2Nyb2xsYmFyc1N1cHByZXNzZWQgJiYgb2xkUmVjdCAhPSBtX3ZlcnRpY2FsU2Nyb2xs
YmFyLT5mcmFtZVJlY3QoKSkKICAgICAgICAgICAgIG1fdmVydGljYWxTY3JvbGxiYXItPmludmFs
aWRhdGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zs
b2F0U2l6ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRTaXplLmgK
aW5kZXggNjAxMDIxMTNjZTkwMmEyMTFiZmY3ZTEwMzI4YjE2ZWMwYjJjZjE1NS4uYWY1Y2E4NzIz
ODkxODI0YjgyMzg1NjllMDI1NWE0OGZlODhhMmFjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRTaXplLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRmxvYXRTaXplLmgKQEAgLTc4LDYgKzc4LDcgQEAgcHVibGljOgogICAg
IHZvaWQgc2V0SGVpZ2h0KGZsb2F0IGhlaWdodCkgeyBtX2hlaWdodCA9IGhlaWdodDsgfQogCiAg
ICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gbV93aWR0aCA8PSAwIHx8IG1faGVpZ2h0
IDw9IDA7IH0KKyAgICBib29sIGhhc05lZ2F0aXZlRGltZW5zaW9uKCkgY29uc3QgeyByZXR1cm4g
bV93aWR0aCA8IDAgfHwgbV9oZWlnaHQgPCAwOyB9CiAgICAgYm9vbCBpc1plcm8oKSBjb25zdDsK
ICAgICBib29sIGlzRXhwcmVzc2libGVBc0ludFNpemUoKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vR3JhcGhpY3NMYXllckNo
cm9taXVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0dy
YXBoaWNzTGF5ZXJDaHJvbWl1bS5jcHAKaW5kZXggZjU5MmM4NWUwNTA5YjYxNmZmOTRlMjU3Zjgw
ODQ5ZjcyMDVmMzYwNS4uM2EyMTJkMzZjYjNlNDNjM2E1ZDYzZGEwZjVjYWNjMDE2NjI3MjUzOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vR3Jh
cGhpY3NMYXllckNocm9taXVtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uY3BwCkBAIC0yMTcsOSArMjE3LDEw
IEBAIHZvaWQgR3JhcGhpY3NMYXllckNocm9taXVtOjpzZXRBbmNob3JQb2ludChjb25zdCBGbG9h
dFBvaW50M0QmIHBvaW50KQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJDaHJvbWl1bTo6c2V0U2l6ZShj
b25zdCBGbG9hdFNpemUmIHNpemUpCiB7Ci0gICAgLy8gV2UgYXJlIHJlY2VpdmluZyBuZWdhdGl2
ZSBzaXplcyBoZXJlIHRoYXQgY2F1c2UgYXNzZXJ0aW9ucyB0byBmYWlsIGluIHRoZSBjb21wb3Np
dG9yLiBDbGFtcCB0aGVtIHRvIDAgdG8KLSAgICAvLyBhdm9pZCB0aG9zZSBhc3NlcnRpb25zLgot
ICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBiZSBhbiBBU1NFUlQgaW5zdGVhZCwgYXMgbmVnYXRp
dmUgc2l6ZXMgc2hvdWxkIG5vdCBleGlzdCBpbiBXZWJDb3JlLgorICAgIC8vIE5lZ2F0aXZlIHNp
emVzIHNob3VsZCBub3QgZXhpc3QgaW4gV2ViQ29yZS4KKyAgICBBU1NFUlQoIXNpemUuaGFzTmVn
YXRpdmVEaW1lbnNpb24oKSk7CisgICAgLy8gRklYTUU6IFdlIGFyZSByZWNlaXZpbmcgbmVnYXRp
dmUgc2l6ZXMgaGVyZSB0aGF0IGNhdXNlIGFzc2VydGlvbnMgdG8gZmFpbAorICAgIC8vIGluIHRo
ZSBjb21wb3NpdG9yLiBDbGFtcCB0aGVtIHRvIDAgdG8gYXZvaWQgdGhvc2UgYXNzZXJ0aW9ucy4K
ICAgICBGbG9hdFNpemUgY2xhbXBlZFNpemUgPSBzaXplOwogICAgIGlmIChjbGFtcGVkU2l6ZS53
aWR0aCgpIDwgMCB8fCBjbGFtcGVkU2l6ZS5oZWlnaHQoKSA8IDApCiAgICAgICAgIGNsYW1wZWRT
aXplID0gRmxvYXRTaXplKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZTcwMmEwNDgwNzliMDZlMDY3MWJkNDlhYTEwNmM5
Njk2YWNmOTZlNS4uZDRmZDE5ZDg2YzdhMzVjZmE3ZjdmMGExMmIxMWRlZTJiYWRmMDBhNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTAyLTA0ICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxvY2tA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFByZXZlbnQgU2Nyb2xsVmlldzo6dXBkYXRlU2Nyb2xs
YmFycygpIGZyb20gY3JlYXRpbmcgc2Nyb2xsYmFycyB3aXRoIG5lZ2F0aXZlIHNpemVzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU5MDIKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHNjcm9sbGJhcnMv
Y2xhbXAtdG8temVyby1zaXplLWV4cGVjdGVkLnBuZzogQWRkZWQuCisgICAgICAgICogc2Nyb2xs
YmFycy9jbGFtcC10by16ZXJvLXNpemUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBz
Y3JvbGxiYXJzL2NsYW1wLXRvLXplcm8tc2l6ZS1ydGwtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAg
ICAgICAgKiBzY3JvbGxiYXJzL2NsYW1wLXRvLXplcm8tc2l6ZS1ydGwtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBzY3JvbGxiYXJzL2NsYW1wLXRvLXplcm8tc2l6ZS1ydGwuaHRtbDog
QWRkZWQuCisgICAgICAgICogc2Nyb2xsYmFycy9jbGFtcC10by16ZXJvLXNpemUuaHRtbDogQWRk
ZWQuCisKIDIwMTMtMDItMDQgIEplc3NpZSBCZXJsaW4gIDxqYmVybGluQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSRUdSRVNTSU9OIChyMTI5NDc4LXIxMjk0ODApOiBodHRwL3Rlc3RzL2xvYWRpbmcv
dGV4dC1jb250ZW50LXR5cGUtd2l0aC1iaW5hcnktZXh0ZW5zaW9uLmh0bWwgZmFpbGluZyBvbiBB
cHBsZSBNb3VudGFpbkxpb24gRGVidWcgV0syIChUZXN0cykKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3Njcm9sbGJhcnMvY2xhbXAtdG8temVyby1zaXplLWV4cGVjdGVkLnBuZyBiL0xheW91dFRl
c3RzL3Njcm9sbGJhcnMvY2xhbXAtdG8temVyby1zaXplLWV4cGVjdGVkLnBuZwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zMGJlNWFiNmNkNTMwMDE3ZDk4Mjg5N2E2YTA3ZTgwNGE4NWZjMjBjCkdJVCBiaW5hcnkgcGF0
Y2gKbGl0ZXJhbCAyOTk5CnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEweX55VXsrdllWMmE+aTAqWik9
aF5obEElQFdzJGxIYG9rPG19P29UIXZKJAp6KVp7Y25nVmE8KmdHNVZuZ0F7fCpXRGA/TTN2JnpP
KU1PKD0hPDVmbloxKSkkeElIfng5NzhKUnl1RXVjY2QtTTUKekx0d3s+I3pgQClyeCRhMTYkIXNs
NDA8RFJ5bkR8MkhKaHM1SCV5cHVTWjA2USNXT297WiE8N0JKYnhTUyYlcDRZCnpVVT5ycExsUDQ9
Z011MGMhO0pVdmhJT3g+N1g4ZFJWc24xXjwoS1RzU3J8VS1fQzM5NiZpVXVob0JNaGc4Nk1vLQp6
VlNuOyhxVGt4clMrZCo9ND8yRl5NeDVTTVcwUDxEdno+JEN6Kl8mdCglWWZHazErdmR2Sj44UmRu
R2U2PmBDfWwKenZBSXs0TEJVV3FYNCRNfEZXKXlhRmk1biRkfmomJHtaPEFCX1NveDdqfV9qanpi
RjVRZiNFPiRiPkRadHJ2LSZHCnpGekVqJUBqMDl1eEtmKjs7cmJuVWxWQTVqZkE1PDB7QVlVXyZf
U3A3ekFheUd6c0tnZHR0SFRhLXJMKk96VygoQAp6WkJGSTl0RCsxQzNpPFZfKiUlJkp6eCRyUiRu
ZTF6eUZXMn5KfVFEV0w1djI9WHQzWmFFSm9BRFh4YlB9OD42e2sKakcjOEJLZn14bFR6T2sxZGps
N20jKiYrcE9pOEZZKmBuanhnTkB4TkErZXxzKgoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9jbGFtcC10by16ZXJvLXNpemUtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9jbGFtcC10by16ZXJvLXNpemUtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmZiOWRlMjliZjY2ZjQ1MWU3ZTc2ZjY1MGMzOWIzYzYwYzdjYWQz
ODIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zY3JvbGxiYXJzL2NsYW1wLXRvLXpl
cm8tc2l6ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACitsYXllciBhdCAoMCwwKSBzaXpl
IDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgw
LDApIHNpemUgODAweDQ2CisgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDgwMHg0
NgorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0eDMwCitsYXllciBhdCAo
OCw4KSBzaXplIDZ4MzAgY2xpcCBhdCAoMCwwKSBzaXplIDB4MCBzY3JvbGxXaWR0aCA3IHNjcm9s
bEhlaWdodCAyMAorICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDZ4MzAKKyAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA3eDE5CisgICAgICB0ZXh0IHJ1biBhdCAo
MCwwKSB3aWR0aCA3OiAieCIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvY2xh
bXAtdG8temVyby1zaXplLXJ0bC1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9zY3JvbGxiYXJz
L2NsYW1wLXRvLXplcm8tc2l6ZS1ydGwtZXhwZWN0ZWQucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1NDZjNDAx
OTU0MTNhNDZlMWMzMWQwNDAxMjk1ZTgyNWNmNGMyOGQKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFs
IDI5OTIKemNtZUFTQE4/KG9sSHlgdVZCcSFpYTB5fnlVeyt2WVYyYT5pMCpaKT1oXmhsQSVAV3Mk
bEhgb2s8bX0/b1RuMitBCnozcmt+NUdYckNiQiRMRHhiSWE2WnZzNnBWV0staUwlVCFaaUdiNlRi
O29KLWkrKWtiQGp2KkN1LXJoWiFgUGYwQwp6O2lBUzh3eTdxZUo4V2NRbiFTcDZuY2djVnZ+MWx5
QGkyU2heelZGakoqNXt1Q089Q3p4JT5YUklSa14kZDs3bVkKej47RnFQdk44dz1NPSZyTFZsWCFM
JiN6LS1Yc0FFQVl1KXpTWn5nekRgKXFTZTBIYHV1X2pKK0RuMCs7QU1VJC09Cno0b0pTPCluXzxR
dGJUUygrNkQjJktnKVNNZFokMUF4Qz03IXs+SnlLbUxDJVd2aD1Pck1aRkVAKn4hZVg9Z3NAWQp6
QDduRyNHV2hMYFRZcjFvK3sjT1FWaGpmfloqUXh1YlUmO1BiaTs+RG5YfiUzYDxvcXwtK31iO01a
T0paMGplbH0KeilCUzRZYmBWU1J2eUpgUW56RX5mPUgzYTY0MERXKlM7VzxzdUY8fSkjS0tUPGNH
dFMmYE9qPzVLd1dDKy1oJDB6CnptfGgoZiFJfWFfZ0ptPldhRnFfRFg9NX5QakhacHpUcmlwb01z
dlpDJT59PCVRX0E5WnhWVC1MMSNFJmRjKUkkegpKdGFEMGUwc3hyJj9PeS1ACgpsaXRlcmFsIDAK
SGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zY3JvbGxiYXJzL2NsYW1wLXRv
LXplcm8tc2l6ZS1ydGwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9jbGFt
cC10by16ZXJvLXNpemUtcnRsLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OWY0ZjZkNGE2ZTZj
YWIxZDlkMjkxY2IxYjAwMTk3M2Q1ZmUwODY2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvc2Nyb2xsYmFycy9jbGFtcC10by16ZXJvLXNpemUtcnRsLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDkgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgw
LDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NDYKKyAgUmVuZGVyQmxv
Y2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDQ2CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQg
KDgsOCkgc2l6ZSA3ODR4MzAKK2xheWVyIGF0ICg3ODYsOCkgc2l6ZSA2eDMwIGNsaXAgYXQgKDAs
MCkgc2l6ZSAweDAgc2Nyb2xsWCAxNiBzY3JvbGxXaWR0aCA3IHNjcm9sbEhlaWdodCAxOQorICBS
ZW5kZXJCbG9jayB7RElWfSBhdCAoNzc4LDApIHNpemUgNngzMAorICAgIFJlbmRlclRleHQgeyN0
ZXh0fSBhdCAoLTE2LDApIHNpemUgN3gxOQorICAgICAgdGV4dCBydW4gYXQgKC0xNiwwKSB3aWR0
aCA3OiAieCIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvY2xhbXAtdG8temVy
by1zaXplLXJ0bC5odG1sIGIvTGF5b3V0VGVzdHMvc2Nyb2xsYmFycy9jbGFtcC10by16ZXJvLXNp
emUtcnRsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzE1NDRlZGY3YmVmOTdmMzEwOWZmNGQ0NTA4ODRhYWM4
MWM0OTAzMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvY2xhbXAt
dG8temVyby1zaXplLXJ0bC5odG1sCkBAIC0wLDAgKzEsMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8
Ym9keSBkaXI9InJ0bCI+Cis8ZGl2IHN0eWxlPSJvdmVyZmxvdzpzY3JvbGw7IHdpZHRoOjZweDsg
aGVpZ2h0OjMwcHgiPngKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Njcm9sbGJhcnMvY2xhbXAt
dG8temVyby1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9zY3JvbGxiYXJzL2NsYW1wLXRvLXplcm8t
c2l6ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkyMjNlYTQ2MGRmYjE5OWUzNjZjNzU5MjExNjc4ZTA1Yjhk
MThmYzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zY3JvbGxiYXJzL2NsYW1wLXRv
LXplcm8tc2l6ZS5odG1sCkBAIC0wLDAgKzEsMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8ZGl2IHN0
eWxlPSJvdmVyZmxvdzpzY3JvbGw7IHdpZHRoOjZweDsgaGVpZ2h0OjMwcHgiPngK
</data>
<flag name="commit-queue"
          id="205981"
          type_id="3"
          status="-"
          setter="steveblock"
    />
          </attachment>
      

    </bug>

</bugzilla>