<?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>95892</bug_id>
          
          <creation_ts>2012-09-05 14:09:52 -0700</creation_ts>
          <short_desc>REGRESSION(r122501): replaced elements with percent width are wrongly size when inserted inside an auto-table layout</short_desc>
          <delta_ts>2012-09-12 17:29:49 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Julien Chaffraix">jchaffraix</reporter>
          <assigned_to name="Julien Chaffraix">jchaffraix</assigned_to>
          <cc>aestes</cc>
    
    <cc>eric</cc>
    
    <cc>esprehn</cc>
    
    <cc>hyatt</cc>
    
    <cc>ojan</cc>
    
    <cc>pravind.2k4</cc>
    
    <cc>robert</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>712524</commentid>
    <comment_count>0</comment_count>
      <attachid>162330</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-09-05 14:09:52 -0700</bug_when>
    <thetext>Created attachment 162330
Reproduction - the iframe&apos;s page should fit its content

This is a clear regression from r122501 (tested locally and rolling out the change fixes the issue). In the test case, the iframe&apos;s width should be sized after the intrinsic content and not be over-contrained. Switching to an image gives similar results where the sizing is wrongly computed.

The branch added in r122501 is executed during the auto-table layout resolution and confuses our sizing. I haven&apos;t yet pinpointed what is wrong.

Taking the bug as I am investigating it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714965</commentid>
    <comment_count>1</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-09-07 14:15:46 -0700</bug_when>
    <thetext>Here is what I think is wrong: RenderReplaced::computePreferredLogicalWidth calls computeReplacedLogicalWidth(false). computeReplacedLogicalWidth assumes it is called during layout and thus tries to access the containing block&apos;s layout information (availableLogicalWidth() for example), which are unset / stale.

r122501 exposed this existing issue but did not cause it.

Still figuring out if there is an easy way to cut this dependency without adding a lot of code duplication.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717529</commentid>
    <comment_count>2</comment_count>
      <attachid>163431</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-09-11 14:05:42 -0700</bug_when>
    <thetext>Created attachment 163431
Proposed fix: Avoid calling computeReplacedLogicalWidth for percent logical width during preferred logical width computation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717543</commentid>
    <comment_count>3</comment_count>
      <attachid>163431</attachid>
    <who name="Elliott Sprehn">esprehn</who>
    <bug_when>2012-09-11 14:17:45 -0700</bug_when>
    <thetext>Comment on attachment 163431
Proposed fix: Avoid calling computeReplacedLogicalWidth for percent logical width during preferred logical width computation.

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

&gt; Source/WebCore/rendering/RenderReplaced.cpp:453
&gt; +    // logical widths computation as the layout information are probably invalid.

is probably

&gt; Source/WebCore/rendering/RenderReplaced.cpp:461
&gt;      LayoutUnit borderAndPadding = borderAndPaddingWidth();

This looks wrong. You&apos;re adding the logical width to the physical border and padding. I think this should be borderAndPaddingLogicalWidth()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717608</commentid>
    <comment_count>4</comment_count>
      <attachid>163431</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-11 15:22:31 -0700</bug_when>
    <thetext>Comment on attachment 163431
Proposed fix: Avoid calling computeReplacedLogicalWidth for percent logical width during preferred logical width computation.

This new code will do the wrong thing for -webkit-calc I believe. I guess it&apos;s not really clear what calc should do here, but elsewhere we send it down the percent codepath.

I can&apos;t think of a great way to do this &quot;right&quot; and I can&apos;t think of how you would make that FIXME work. Given that, I&apos;d rather this code just special-cased percent and calc to return intrinsicLogicalWidth and computeReplacedLogicalWidth otherwise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717658</commentid>
    <comment_count>5</comment_count>
      <attachid>163431</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-09-11 16:00:12 -0700</bug_when>
    <thetext>Comment on attachment 163431
Proposed fix: Avoid calling computeReplacedLogicalWidth for percent logical width during preferred logical width computation.

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

(In reply to comment #4)
&gt; (From update of attachment 163431 [details])
&gt; This new code will do the wrong thing for -webkit-calc I believe. I guess it&apos;s not really clear what calc should do here, but elsewhere we send it down the percent codepath.

The code is right for -webkit-calc AFAICT. That&apos;s because isPercent() returns true for calc (see Length.h).

&gt; I can&apos;t think of a great way to do this &quot;right&quot; and I can&apos;t think of how you would make that FIXME work. Given that, I&apos;d rather this code just special-cased percent and calc to return intrinsicLogicalWidth and computeReplacedLogicalWidth otherwise.

Note sure I entirely follow. What you are describing is pretty much what the new code does with the exception of handling fixed and viewport percentage on the spot which are pretty trivial cases (especially since computePreferredLogicalWidths checks max-width).

The only solution to the FIXME I know is to copy computeReplacedLogicalWidth and have the new code not depend on layout information. I haven&apos;t found a better answer unfortunately but that doesn&apos;t mean the FIXME doesn&apos;t hold. This code reuse screams that something is deeply wrong, however for now, it&apos;s better to avoid code duplication (at least until we have more evidence that it is harming us).

&gt;&gt; Source/WebCore/rendering/RenderReplaced.cpp:461
&gt;&gt;      LayoutUnit borderAndPadding = borderAndPaddingWidth();
&gt; 
&gt; This looks wrong. You&apos;re adding the logical width to the physical border and padding. I think this should be borderAndPaddingLogicalWidth()

True but this is an existing bug. I will see if I can fix it as part of this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718560</commentid>
    <comment_count>6</comment_count>
      <attachid>163666</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-09-12 11:53:36 -0700</bug_when>
    <thetext>Created attachment 163666
Updated change. Fix existing vertical-writing mode bug + took Ojan &amp; Elliot&apos;s comments into account.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718570</commentid>
    <comment_count>7</comment_count>
      <attachid>163666</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-12 12:07:42 -0700</bug_when>
    <thetext>Comment on attachment 163666
Updated change. Fix existing vertical-writing mode bug + took Ojan &amp; Elliot&apos;s comments into account.

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

Please address the test comments before committing. I can show you a check-layout.js example in person.

&gt; LayoutTests/fast/replaced/vertical-writing-mode-max-logical-width-replaced.html:1
&gt; +&lt;!DOCTYPE html&gt;

You should make this a check-layout.js test! You could replace all of your script except the dumpAsText part with data-expected-width=200 data-expected-height=100 attributes on the image.

&gt; LayoutTests/fast/table/bad-replaced-sizing-preferred-logical-widths.html:20
&gt; +        &lt;iframe src=&quot;resources/iframe.html&quot; width=&quot;100%&quot;&gt;&lt;/iframe&gt;

Can you just use a data url or srcdoc attribute? Then you don&apos;t need to add another file.

&gt; LayoutTests/fast/table/bad-replaced-sizing-preferred-logical-widths.html:43
&gt; +    // 50% is a somewhat arbitrary threshold but it should shield us from the viewport size.

How about instead setting a fixed width on the html or body element and then here you can assert actual pixel sizes? Then this could also just be a check-layout.js test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718885</commentid>
    <comment_count>8</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-09-12 16:51:08 -0700</bug_when>
    <thetext>&gt; Please address the test comments before committing. I can show you a check-layout.js example in person.

Will upload a patch with all the changes.

&gt;&gt; LayoutTests/fast/table/bad-replaced-sizing-preferred-logical-widths.html:43
&gt;&gt; +    // 50% is a somewhat arbitrary threshold but it should shield us from the viewport size.

&gt; How about instead setting a fixed width on the html or body element and then here you can 
&gt; assert actual pixel sizes? Then this could also just be a check-layout.js test.

I was not very comfortable with this as I thought our results were pretty different from the other browsers. However it turns out OK due to the fixed length on &lt;html&gt; and we are close enough so that the width is expected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718887</commentid>
    <comment_count>9</comment_count>
      <attachid>163737</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-09-12 16:51:53 -0700</bug_when>
    <thetext>Created attachment 163737
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718912</commentid>
    <comment_count>10</comment_count>
      <attachid>163737</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-12 17:29:45 -0700</bug_when>
    <thetext>Comment on attachment 163737
Patch for landing

Clearing flags on attachment: 163737

Committed r128389: &lt;http://trac.webkit.org/changeset/128389&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718913</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-12 17:29:49 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>162330</attachid>
            <date>2012-09-05 14:09:52 -0700</date>
            <delta_ts>2012-09-05 14:09:52 -0700</delta_ts>
            <desc>Reproduction - the iframe&apos;s page should fit its content</desc>
            <filename>bad-iframe-sizing.html</filename>
            <type>text/html</type>
            <size>589</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8Ym9keT4KPHN0eWxlPgp0YWJsZSB7Cn0KPC9zdHlsZT4K
PGRpdj4KIDx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2Vs
bHBhZGRpbmc9IjAiIGFsaWduPSJjZW50ZXIiPgogICA8dGJvZHk+CiAgICAgPHRyPgogICAgICAg
PHRkIGhlaWdodD0iMjUiPgogICAgICAgICA8ZGl2IHN0eWxlPSJ3aWR0aDoxMDAlIj4KICAgICAg
ICAgICA8aWZyYW1lIHNyYz0iaHR0cHM6Ly9idWd6aWxsYS53ZWJraXQub3JnIiB3aWR0aD0iMTAw
JSI+PC9pZnJhbWU+CiAgICAgICAgICAgPCEtLSA8aW1nIHNyYz0iaHR0cDovL3d3dy53ZWJraXQu
b3JnL2ltYWdlcy9pY29uLWdvbGQucG5nIiB3aWR0aD0iMTAwJSI+PC9pbWc+IC0tPgogICAgICAg
ICA8L2Rpdj4KICAgICAgIDwvdGQ+CiAgICAgICA8dGQgaGVpZ2h0PSIyNSIgYWxpZ249InJpZ2h0
IiB2YWxpZ249Im1pZGRsZSI+CiAgICAgICAgIDxkaXY+CiAgICAgICAgICAgcmlnaHQgdGV4dAog
ICAgICAgICA8L2Rpdj4KICAgICAgIDwvdGQ+CiAgICAgPC90cj4KICAgPC90Ym9keT4KIDwvdGFi
bGU+CjwvZGl2Pgo8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163431</attachid>
            <date>2012-09-11 14:05:42 -0700</date>
            <delta_ts>2012-09-12 11:53:32 -0700</delta_ts>
            <desc>Proposed fix: Avoid calling computeReplacedLogicalWidth for percent logical width during preferred logical width computation.</desc>
            <filename>bug-95892-20120911140517.patch</filename>
            <type>text/plain</type>
            <size>8200</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI4MjA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2JiYjY0MzIwYzE3ODE2
NjY1NjkxMzU0ZDQ0MjIwYmRhYzUwOThmZC4uMjIwZjA1MGU2YWVhNTM0OWRjZTZhZmUyMzkzN2Vl
YjRkNGYyMDI5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTA5LTExICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJ
T04ocjEyMjUwMSk6IHJlcGxhY2VkIGVsZW1lbnRzIHdpdGggcGVyY2VudCB3aWR0aCBhcmUgd3Jv
bmdseSBzaXplIHdoZW4gaW5zZXJ0ZWQgaW5zaWRlIGFuIGF1dG8tdGFibGUgbGF5b3V0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTg5MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHIxMjI1MDEgZXhwb3Nl
ZCBhbiBpc3N1ZSBpbiBob3cgcHJlZmVycmVkIGxvZ2ljYWwgd2lkdGhzIGFyZSBjb21wdXRlZCBv
biByZXBsYWNlZCBvYmplY3RzLiBUaGUgY29kZSByZWxpZXMgb24gdGhlCisgICAgICAgIGxvZ2lj
YWwgd2lkdGggY29tcHV0YXRpb24gbWV0aG9kcy4gVW5mb3J0dW5hdGVseSB0aGUgcHJldmlvdXMg
Y29kZSByZWxpZXMgb24gdGhlIGxheW91dCBpbmZvcm1hdGlvbiwgd2hpY2ggbWF5IG5vdAorICAg
ICAgICBiZSB1cC10by1kYXRlIGR1cmluZyBwcmVmZXJyZWQgbG9naWNhbCB3aWR0aCBjb21wdXRh
dGlvbi4KKworICAgICAgICBUZXN0OiBmYXN0L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJl
ZmVycmVkLWxvZ2ljYWwtd2lkdGhzLmh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJS
ZXBsYWNlZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZU1h
eFByZWZlcnJlZExvZ2ljYWxXaWR0aCk6CisgICAgICAgIEFkZGVkIHRoaXMgaGVscGVyIG1ldGhv
ZC4gVGhlIG1haW4gZGlmZmVyZW5jZSB3aXRoIHRoZSBvbGQgY29kZSBpcyB0aGF0IGl0IGhhbmRs
ZXMgdGhlIHBlcmNlbnQgbG9naWNhbCB3aWR0aAorICAgICAgICBwcm9wZXJseSBiZWZvcmUgY2Fs
bGluZyB0aGUgb2xkIGNvZGUgcGF0aC4gVGhpcyBpcyBub3QgdG90YWxseSByaWdodCBidXQgYmVm
b3JlIGZvcmtpbmcgdGhlIHdob2xlIGNvZGUsIGl0J3MKKyAgICAgICAgYmV0dGVyIHRvIGhhdmUg
bW9yZSBldmlkZW5jZSB0aGF0IGZvcmtpbmcgcHJlZmVycmVkIGxvZ2ljYWwgd2lkdGhzIGFuZCBs
b2dpY2FsIHdpZHRoIGNvbXB1dGF0aW9uIGlzIHRoZSB3YXkgdG8gZ28uCisKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclJlcGxhY2VkOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6Cisg
ICAgICAgIENoYW5nZWQgdG8gY2FsbCBjb21wdXRlTWF4UHJlZmVycmVkTG9naWNhbFdpZHRoLgor
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmg6CisgICAgICAgIChSZW5kZXJS
ZXBsYWNlZCk6IEFkZGVkIGNvbXB1dGVNYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGguCisKIDIwMTIt
MDktMTEgIEppbndvbyBTb25nICA8amlud29vNy5zb25nQHNhbXN1bmcuY29tPgogCiAgICAgICAg
IERlcGxveSBTdHJpbmdCdWlsZGVyOjphcHBlbmROdW1iZXIoKSBhbmQgU3RyaW5nQnVpbGRlcjo6
YXBwZW5kTGl0ZXJhbCgpIGluIG1vcmUgcGxhY2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclJlcGxhY2VkLmNwcAppbmRleCBmNzY1YzM4YzRiMjdhYzEwZWQ2NGI0OGM2NGEyNmI3
MzQwMDk0NjZlLi4wMjIwYmVlMmUxMDM2NDRkNTVjYmViYjEzNzZiODU1NTM0OGVmMzBmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAKQEAgLTQzNywxMiAr
NDM3LDI5IEBAIExheW91dFVuaXQgUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBsYWNlZExvZ2lj
YWxIZWlnaHQoKSBjb25zdAogICAgIHJldHVybiBjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0
UmVzcGVjdGluZ01pbk1heEhlaWdodChpbnRyaW5zaWNMb2dpY2FsSGVpZ2h0KCkpOwogfQogCitM
YXlvdXRVbml0IFJlbmRlclJlcGxhY2VkOjpjb21wdXRlTWF4UHJlZmVycmVkTG9naWNhbFdpZHRo
KCkgY29uc3QKK3sKKyAgICBMZW5ndGggbG9naWNhbFdpZHRoID0gc3R5bGUoKS0+bG9naWNhbFdp
ZHRoKCk7CisgICAgaWYgKGxvZ2ljYWxXaWR0aC5pc1NwZWNpZmllZCgpKSB7CisgICAgICAgIC8v
IFdlIGNhbm5vdCByZXNvbHZlIGFueSBwZXJjZW50IGxvZ2ljYWwgd2lkdGggaGVyZSBhcyB0aGUg
YXZhaWxhYmxlIGxvZ2ljYWwKKyAgICAgICAgLy8gd2lkdGggbWF5IG5vdCBiZSBzZXQgb24gb3Vy
IGNvbnRhaW5pbmcgYmxvY2suCisgICAgICAgIGlmIChsb2dpY2FsV2lkdGguaXNQZXJjZW50KCkp
CisgICAgICAgICAgICByZXR1cm4gaW50cmluc2ljTG9naWNhbFdpZHRoKCk7CisKKyAgICAgICAg
cmV0dXJuIGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JCb3hTaXppbmcodmFsdWVGb3JM
ZW5ndGgobG9naWNhbFdpZHRoLCAwLCB2aWV3KCkpKTsKKyAgICB9CisKKyAgICAvLyBGSVhNRTog
V2Ugc2hvdWxkbid0IGJlIGNhbGxpbmcgYSBsb2dpY2FsIHdpZHRoIGNvbXB1dGluZyBmdW5jdGlv
biBpbiBwcmVmZXJyZWQKKyAgICAvLyBsb2dpY2FsIHdpZHRocyBjb21wdXRhdGlvbiBhcyB0aGUg
bGF5b3V0IGluZm9ybWF0aW9uIGFyZSBwcm9iYWJseSBpbnZhbGlkLgorICAgIHJldHVybiBjb21w
dXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoZmFsc2UpOworfQorCiB2b2lkIFJlbmRlclJlcGxhY2Vk
Ojpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiB7CiAgICAgQVNTRVJUKHByZWZlcnJl
ZExvZ2ljYWxXaWR0aHNEaXJ0eSgpKTsKIAogICAgIExheW91dFVuaXQgYm9yZGVyQW5kUGFkZGlu
ZyA9IGJvcmRlckFuZFBhZGRpbmdXaWR0aCgpOwotICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gY29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKGZhbHNlKSArIGJvcmRlckFuZFBhZGRp
bmc7CisgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBjb21wdXRlTWF4UHJlZmVycmVk
TG9naWNhbFdpZHRoKCkgKyBib3JkZXJBbmRQYWRkaW5nOwogCiAgICAgaWYgKHN0eWxlKCktPm1h
eFdpZHRoKCkuaXNGaXhlZCgpKQogICAgICAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9
IG1pbjxMYXlvdXRVbml0PihtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCwgc3R5bGUoKS0+bWF4
V2lkdGgoKS52YWx1ZSgpICsgKHN0eWxlKCktPmJveFNpemluZygpID09IENPTlRFTlRfQk9YID8g
Ym9yZGVyQW5kUGFkZGluZyA6IFpFUk9fTEFZT1VUX1VOSVQpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5oIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclJlcGxhY2VkLmgKaW5kZXggOWQ3ODE0Mzk0MjI1ZDQwYjEyZjk4NmRiMDlj
ZGFiYjc3ODhmOWE1Mi4uNzgyNmNlYmEzZjYyMDE3MmM0MDllZmNkN2JlMWZmNDNlN2UwODUzZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmgKQEAgLTY3LDYgKzY3
LDcgQEAgcHJpdmF0ZToKIAogICAgIHZpcnR1YWwgYm9vbCBjYW5IYXZlQ2hpbGRyZW4oKSBjb25z
dCB7IHJldHVybiBmYWxzZTsgfQogCisgICAgTGF5b3V0VW5pdCBjb21wdXRlTWF4UHJlZmVycmVk
TG9naWNhbFdpZHRoKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIGNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKCk7CiAgICAgdmlydHVhbCB2b2lkIHBhaW50UmVwbGFjZWQoUGFpbnRJbmZv
JiwgY29uc3QgTGF5b3V0UG9pbnQmKSB7IH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGVlYzBiMjI5ZGUxZWI1ODg4NTFm
ZjBkYjY1MjcxZjk4MTdiNTQ0NWEuLjA1MDY4Mzg5ZDY0N2M3NmUxNTM4OWIxMmFmMzUzN2VjMDg2
OTBjOTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0wOS0xMSAgSnVsaWVuIENoYWZmcmFp
eCAgPGpjaGFmZnJhaXhAd2Via2l0Lm9yZz4KKworICAgICAgICBSRUdSRVNTSU9OKHIxMjI1MDEp
OiByZXBsYWNlZCBlbGVtZW50cyB3aXRoIHBlcmNlbnQgd2lkdGggYXJlIHdyb25nbHkgc2l6ZSB3
aGVuIGluc2VydGVkIGluc2lkZSBhbiBhdXRvLXRhYmxlIGxheW91dAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU4OTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvdGFibGUvYmFkLXJlcGxhY2Vk
LXNpemluZy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJlZmVycmVkLWxvZ2ljYWwt
d2lkdGhzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGFibGUvcmVzb3VyY2VzL2lmcmFt
ZS5odG1sOiBBZGRlZC4KKwogMjAxMi0wOS0xMSAgU2VyZ2lvIFZpbGxhciBTZW5pbiAgPHN2aWxs
YXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBXZWJLaXRHdGsrIGNyYXNoZXMgd2l0aCBu
b24tVVRGOCBIVFRQIGhlYWRlciBuYW1lcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90
YWJsZS9iYWQtcmVwbGFjZWQtc2l6aW5nLXByZWZlcnJlZC1sb2dpY2FsLXdpZHRocy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJlZmVy
cmVkLWxvZ2ljYWwtd2lkdGhzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMWUxMzRhZDllODUx
NzIxZDM4ZjY2YWViZTYxOTVjMDQyNjIzNTEzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC90YWJsZS9iYWQtcmVwbGFjZWQtc2l6aW5nLXByZWZlcnJlZC1sb2dpY2FsLXdpZHRo
cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACitCdWcgOTU4OTI6IFJFR1JFU1NJT04ocjEy
MjUwMSk6IHJlcGxhY2VkIGVsZW1lbnRzIHdpdGggcGVyY2VudCB3aWR0aCBhcmUgd3JvbmdseSBz
aXplIHdoZW4gaW5zZXJ0ZWQgaW5zaWRlIGFuIGF1dG8tdGFibGUgbGF5b3V0CitUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgYSByZXBsYWNlZCBlbGVtZW50IGluc2lkZSBhbiBhdXRvLXRhYmxlIGxheW91
dCBpcyBub3QgaW1wcm9wZXJseSBzaHJ1bmsuIFdlIGNvbnNpZGVyIHRoZSB0ZXN0IHRvIHBhc3Mg
aWYgdGhlIGlmcmFtZSB0YWtlcyBtb3N0IG9mIHRoZSB0YWJsZSBzcGFjZS4KK1BBU1NFRCwgdGhl
IGlmcmFtZSB3YXMgcHJvcGVybHkgc2l6ZWQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJlZmVycmVkLWxvZ2ljYWwtd2lkdGhzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJlZmVycmVkLWxv
Z2ljYWwtd2lkdGhzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTllMGM4NDU1OTVhMDhhNWMwNTQ1MzkxMTM0
YjNjMWIzM2ZkZGJlMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGFibGUv
YmFkLXJlcGxhY2VkLXNpemluZy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMuaHRtbApAQCAtMCww
ICsxLDUxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8c3R5bGU+Cit0YWJs
ZSB7CisgICAgd2lkdGg6IDEwMCU7CisgICAgYm9yZGVyLXNwYWNpbmc6IDBweDsKK30KKwordGQg
eworICAgIGhlaWdodDogMjVweDsKKyAgICBwYWRkaW5nOiAwcHg7Cit9Cis8L3N0eWxlPgorPHRh
YmxlIGFsaWduPSJtaWRkbGUiPgorPHRib2R5PgorICAgIDx0cj4KKyAgICA8dGQ+CisgICAgICAg
IDxkaXYgc3R5bGU9IndpZHRoOjEwMCUiPgorICAgICAgICA8aWZyYW1lIHNyYz0icmVzb3VyY2Vz
L2lmcmFtZS5odG1sIiB3aWR0aD0iMTAwJSI+PC9pZnJhbWU+CisgICAgICAgIDwvZGl2PgorICAg
IDwvdGQ+CisgICAgPHRkIGFsaWduPSJyaWdodCIgdmFsaWduPSJtaWRkbGUiPgorICAgICAgICA8
ZGl2PmRvbG9yIHNpdCBhbWV0Li4uPC9kaXY+CisgICAgPC90ZD4KKyAgICA8L3RyPgorPC90Ym9k
eT4KKzwvdGFibGU+Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICB2YXIgdGFibGUgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgidGFibGUiKVswXTsKKyAgICB2YXIgdGFibGVXaWR0aFN0cmlu
ZyA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRhYmxlLCBudWxsKS53aWR0aDsKKyAgICB2YXIg
dGFibGVXaWR0aCA9IE51bWJlcih0YWJsZVdpZHRoU3RyaW5nLnJlcGxhY2UoInB4IiwgIiIpKTsK
KworICAgIHZhciB0ZFdpdGhSZXBsYWNlZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1l
KCJ0ZCIpWzBdOworICAgIHZhciB0ZFdpZHRoU3RyaW5nID0gd2luZG93LmdldENvbXB1dGVkU3R5
bGUodGRXaXRoUmVwbGFjZWQsIG51bGwpLndpZHRoOworICAgIHZhciB0ZFdpZHRoID0gTnVtYmVy
KHRkV2lkdGhTdHJpbmcucmVwbGFjZSgicHgiLCAiIikpOworCisgICAgdmFyIHJlc3VsdCA9ICJC
dWcgPGEgaHJlZj0naHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk1ODky
Jz45NTg5MjwvYT46IFJFR1JFU1NJT04ocjEyMjUwMSk6IHJlcGxhY2VkIGVsZW1lbnRzIHdpdGgg
cGVyY2VudCB3aWR0aCBhcmUgd3JvbmdseSBzaXplIHdoZW4gaW5zZXJ0ZWQgaW5zaWRlIGFuIGF1
dG8tdGFibGUgbGF5b3V0PGJyPiBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYSByZXBsYWNlZCBlbGVt
ZW50IGluc2lkZSBhbiBhdXRvLXRhYmxlIGxheW91dCBpcyBub3QgaW1wcm9wZXJseSBzaHJ1bmsu
IFdlIGNvbnNpZGVyIHRoZSB0ZXN0IHRvIHBhc3MgaWYgdGhlIGlmcmFtZSB0YWtlcyBtb3N0IG9m
IHRoZSB0YWJsZSBzcGFjZS48YnI+IjsKKworICAgIC8vIDUwJSBpcyBhIHNvbWV3aGF0IGFyYml0
cmFyeSB0aHJlc2hvbGQgYnV0IGl0IHNob3VsZCBzaGllbGQgdXMgZnJvbSB0aGUgdmlld3BvcnQg
c2l6ZS4KKyAgICBpZiAodGRXaWR0aCA+PSB0YWJsZVdpZHRoIC8gMikKKyAgICAgICAgIHJlc3Vs
dCArPSAiUEFTU0VELCB0aGUgaWZyYW1lIHdhcyBwcm9wZXJseSBzaXplZC4iOworICAgIGVsc2UK
KyAgICAgICAgcmVzdWx0ICs9ICJGQUlMRUQsIHRoZSBpZnJhbWUgaGFzbid0IGJlZW4gcHJvcGVy
bHkgc2l6ZWQ6IHNpemUgPSAiICsgdGRXaWR0aFN0cmluZyArICIgd2hpY2ggaXMgdG9vIGxvdy4i
OworICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5pbm5lckhUTUwgPSByZXN1bHQ7Cis8L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGFi
bGUvcmVzb3VyY2VzL2lmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNvdXJj
ZXMvaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTNkYjBlZTc1YzQ4MDVkYjc4NWYzZDkxOWM0ODIz
MTIyODljNzNmMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGFibGUvcmVz
b3VyY2VzL2lmcmFtZS5odG1sCkBAIC0wLDAgKzEsNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxib2R5PgorPHA+TG9yZW0gSXBzdW08L3A+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163666</attachid>
            <date>2012-09-12 11:53:36 -0700</date>
            <delta_ts>2012-09-12 16:51:50 -0700</delta_ts>
            <desc>Updated change. Fix existing vertical-writing mode bug + took Ojan &amp; Elliot&apos;s comments into account.</desc>
            <filename>bug-95892-20120912115310.patch</filename>
            <type>text/plain</type>
            <size>10847</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI4MzMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWFjYzk4NTMwN2JlYzBl
ODhhZmQ2YzM3MTk2YzUxZTg4NTMzMDVjOC4uYjk3ZTY2YzYzMGJhYjJmOTkwZWQzNDhiMDcxZjEy
MWQwYzJmOGQ3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTA5LTEyICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJ
T04ocjEyMjUwMSk6IHJlcGxhY2VkIGVsZW1lbnRzIHdpdGggcGVyY2VudCB3aWR0aCBhcmUgd3Jv
bmdseSBzaXplIHdoZW4gaW5zZXJ0ZWQgaW5zaWRlIGFuIGF1dG8tdGFibGUgbGF5b3V0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTg5MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHIxMjI1MDEgZXhwb3Nl
ZCBhbiBpc3N1ZSBpbiBob3cgcHJlZmVycmVkIGxvZ2ljYWwgd2lkdGhzIGFyZSBjb21wdXRlZCBv
biByZXBsYWNlZCBvYmplY3RzLiBUaGUgY29kZSByZWxpZXMgb24gdGhlCisgICAgICAgIGxvZ2lj
YWwgd2lkdGggY29tcHV0YXRpb24gbWV0aG9kcy4gVW5mb3J0dW5hdGVseSB0aGUgcHJldmlvdXMg
Y29kZSByZWxpZXMgb24gdGhlIGxheW91dCBpbmZvcm1hdGlvbiwgd2hpY2ggbWF5IG5vdAorICAg
ICAgICBiZSB1cC10by1kYXRlIGR1cmluZyBwcmVmZXJyZWQgbG9naWNhbCB3aWR0aCBjb21wdXRh
dGlvbi4KKworICAgICAgICBUZXN0OiBmYXN0L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJl
ZmVycmVkLWxvZ2ljYWwtd2lkdGhzLmh0bWwKKyAgICAgICAgICAgICAgZmFzdC9yZXBsYWNlZC92
ZXJ0aWNhbC13cml0aW5nLW1vZGUtbWF4LWxvZ2ljYWwtd2lkdGguaHRtbAorCisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJl
cGxhY2VkOjpjb21wdXRlTWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKToKKyAgICAgICAgQWRkZWQg
dGhpcyBoZWxwZXIgbWV0aG9kLiBUaGUgbWFpbiBkaWZmZXJlbmNlIHdpdGggdGhlIG9sZCBjb2Rl
IGlzIHRoYXQgaXQgaGFuZGxlcyB0aGUgcGVyY2VudCBsb2dpY2FsIHdpZHRoCisgICAgICAgIHBy
b3Blcmx5IGJlZm9yZSBjYWxsaW5nIHRoZSBvbGQgY29kZSBwYXRoLiBUaGlzIGlzIG5vdCB0b3Rh
bGx5IHJpZ2h0IGJ1dCBiZWZvcmUgZm9ya2luZyB0aGUgd2hvbGUgY29kZSwgaXQncworICAgICAg
ICBiZXR0ZXIgdG8gaGF2ZSBtb3JlIGV2aWRlbmNlIHRoYXQgZm9ya2luZyBwcmVmZXJyZWQgbG9n
aWNhbCB3aWR0aHMgYW5kIGxvZ2ljYWwgd2lkdGggY29tcHV0YXRpb24gaXMgdGhlIHdheSB0byBn
by4KKworICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKToKKyAgICAgICAgQ2hhbmdlZCB0byBjYWxsIGNvbXB1dGVNYXhQcmVmZXJy
ZWRMb2dpY2FsV2lkdGguIEFsc28gZml4ZWQgYW4gZXhpc3RpbmcgYnVnIGluIHZlcnRpY2FsLXdy
aXRpbmcgbW9kZXMgd2hlcmUgd2Ugd291bGQKKyAgICAgICAgYWRkIHRoZSB3cm9uZyBwYWRkaW5n
cyBhbmQgYm9yZGVycy4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5oOgor
ICAgICAgICAoUmVuZGVyUmVwbGFjZWQpOiBBZGRlZCBjb21wdXRlTWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoLgorCiAyMDEyLTA5LTEyICBEb21pbmljIE1henpvbmkgIDxkbWF6em9uaUBnb29nbGUu
Y29tPgogCiAgICAgICAgIEFzc2VydCBoaXQgaW4gaXMgbXVsdGlTZWxlY3RhYmxlKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwCmluZGV4IGY3NjVjMzhjNGIy
N2FjMTBlZDY0YjQ4YzY0YTI2YjczNDAwOTQ2NmUuLjFlYmIxNTI2ZTMwMzA0NTA2ZDBmMjg1MTFh
NmI0MWMwNWI0M2MwOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJSZXBsYWNlZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxh
Y2VkLmNwcApAQCAtNDM3LDEyICs0MzcsMjYgQEAgTGF5b3V0VW5pdCBSZW5kZXJSZXBsYWNlZDo6
Y29tcHV0ZVJlcGxhY2VkTG9naWNhbEhlaWdodCgpIGNvbnN0CiAgICAgcmV0dXJuIGNvbXB1dGVS
ZXBsYWNlZExvZ2ljYWxIZWlnaHRSZXNwZWN0aW5nTWluTWF4SGVpZ2h0KGludHJpbnNpY0xvZ2lj
YWxIZWlnaHQoKSk7CiB9CiAKK0xheW91dFVuaXQgUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVNYXhQ
cmVmZXJyZWRMb2dpY2FsV2lkdGgoKSBjb25zdAoreworICAgIExlbmd0aCBsb2dpY2FsV2lkdGgg
PSBzdHlsZSgpLT5sb2dpY2FsV2lkdGgoKTsKKworICAgIC8vIFdlIGNhbm5vdCByZXNvbHZlIGFu
eSBwZXJjZW50IGxvZ2ljYWwgd2lkdGggaGVyZSBhcyB0aGUgYXZhaWxhYmxlIGxvZ2ljYWwKKyAg
ICAvLyB3aWR0aCBtYXkgbm90IGJlIHNldCBvbiBvdXIgY29udGFpbmluZyBibG9jay4KKyAgICBp
ZiAobG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKQorICAgICAgICByZXR1cm4gaW50cmluc2ljTG9n
aWNhbFdpZHRoKCk7CisKKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkbid0IGJlIGNhbGxpbmcgYSBs
b2dpY2FsIHdpZHRoIGNvbXB1dGluZyBmdW5jdGlvbiBpbiBwcmVmZXJyZWQKKyAgICAvLyBsb2dp
Y2FsIHdpZHRocyBjb21wdXRhdGlvbiBhcyB0aGUgbGF5b3V0IGluZm9ybWF0aW9uIGlzIHByb2Jh
Ymx5IGludmFsaWQuCisgICAgcmV0dXJuIGNvbXB1dGVSZXBsYWNlZExvZ2ljYWxXaWR0aChmYWxz
ZSk7Cit9CisKIHZvaWQgUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lk
dGhzKCkKIHsKICAgICBBU1NFUlQocHJlZmVycmVkTG9naWNhbFdpZHRoc0RpcnR5KCkpOwogCi0g
ICAgTGF5b3V0VW5pdCBib3JkZXJBbmRQYWRkaW5nID0gYm9yZGVyQW5kUGFkZGluZ1dpZHRoKCk7
Ci0gICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBjb21wdXRlUmVwbGFjZWRMb2dpY2Fs
V2lkdGgoZmFsc2UpICsgYm9yZGVyQW5kUGFkZGluZzsKKyAgICBMYXlvdXRVbml0IGJvcmRlckFu
ZFBhZGRpbmcgPSBib3JkZXJBbmRQYWRkaW5nTG9naWNhbFdpZHRoKCk7CisgICAgbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGggPSBjb21wdXRlTWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKCkgKyBi
b3JkZXJBbmRQYWRkaW5nOwogCiAgICAgaWYgKHN0eWxlKCktPm1heFdpZHRoKCkuaXNGaXhlZCgp
KQogICAgICAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1pbjxMYXlvdXRVbml0Piht
X21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCwgc3R5bGUoKS0+bWF4V2lkdGgoKS52YWx1ZSgpICsg
KHN0eWxlKCktPmJveFNpemluZygpID09IENPTlRFTlRfQk9YID8gYm9yZGVyQW5kUGFkZGluZyA6
IFpFUk9fTEFZT1VUX1VOSVQpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJSZXBsYWNlZC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxh
Y2VkLmgKaW5kZXggOWQ3ODE0Mzk0MjI1ZDQwYjEyZjk4NmRiMDljZGFiYjc3ODhmOWE1Mi4uNzgy
NmNlYmEzZjYyMDE3MmM0MDllZmNkN2JlMWZmNDNlN2UwODUzZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmgKQEAgLTY3LDYgKzY3LDcgQEAgcHJpdmF0ZToKIAog
ICAgIHZpcnR1YWwgYm9vbCBjYW5IYXZlQ2hpbGRyZW4oKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQogCisgICAgTGF5b3V0VW5pdCBjb21wdXRlTWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKCkgY29u
c3Q7CiAgICAgdmlydHVhbCB2b2lkIGNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCk7CiAg
ICAgdmlydHVhbCB2b2lkIHBhaW50UmVwbGFjZWQoUGFpbnRJbmZvJiwgY29uc3QgTGF5b3V0UG9p
bnQmKSB7IH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IGM4NmY5MDA0MWVhYjY2ZWZmYWFlYmZkZTI2ZmUyYTRkYjBjYWY0
YWMuLmVkOTQxOTk1Y2I4YjVlOTBjNDE5N2MzOTJmOGJmZDdhYjg1N2M5MjYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxMi0wOS0xMiAgSnVsaWVuIENoYWZmcmFpeCAgPGpjaGFmZnJhaXhAd2Vi
a2l0Lm9yZz4KKworICAgICAgICBSRUdSRVNTSU9OKHIxMjI1MDEpOiByZXBsYWNlZCBlbGVtZW50
cyB3aXRoIHBlcmNlbnQgd2lkdGggYXJlIHdyb25nbHkgc2l6ZSB3aGVuIGluc2VydGVkIGluc2lk
ZSBhbiBhdXRvLXRhYmxlIGxheW91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9OTU4OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGZhc3QvcmVwbGFjZWQvdmVydGljYWwtd3JpdGluZy1tb2RlLW1heC1s
b2dpY2FsLXdpZHRoLXJlcGxhY2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFz
dC9yZXBsYWNlZC92ZXJ0aWNhbC13cml0aW5nLW1vZGUtbWF4LWxvZ2ljYWwtd2lkdGgtcmVwbGFj
ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC90YWJsZS9iYWQtcmVwbGFjZWQtc2l6aW5n
LXByZWZlcnJlZC1sb2dpY2FsLXdpZHRocy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvdGFibGUvYmFkLXJlcGxhY2VkLXNpemluZy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMu
aHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC90YWJsZS9yZXNvdXJjZXMvaWZyYW1lLmh0bWw6
IEFkZGVkLgorCiAyMDEyLTA5LTEyICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1l
ekBpbnRlbC5jb20+CiAKICAgICAgICAgW1dLMl1bV0tUUl0gVGVzdFJ1bm5lciBuZWVkcyB0byBp
bXBsZW1lbnQgZHVtcEFwcGxpY2F0aW9uQ2FjaGVEZWxlZ2F0ZUNhbGxiYWNrcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZXBsYWNlZC92ZXJ0aWNhbC13cml0aW5nLW1vZGUtbWF4LWxv
Z2ljYWwtd2lkdGgtcmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZXBs
YWNlZC92ZXJ0aWNhbC13cml0aW5nLW1vZGUtbWF4LWxvZ2ljYWwtd2lkdGgtcmVwbGFjZWQtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxYjRjNjFmNTBmYzZjYzg4YjQ1MDIzNTg5YWM2NDQwNWQx
OTIxMWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlcGxhY2VkL3ZlcnRp
Y2FsLXdyaXRpbmctbW9kZS1tYXgtbG9naWNhbC13aWR0aC1yZXBsYWNlZC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw0IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgd2UgYWRkIHRoZSByaWdodCBw
YWRkaW5nIG9uIGEgcmVwbGFjZWQgZWxlbWVudCBpbiB2ZXJ0aWNhbC13cml0aW5nIG1vZGUuCitQ
QVNTRUQ6IHdpZHRoIHByb3Blcmx5IHNldCB0byAyMDBweAorUEFTU0VEOiBoZWlnaHQgcHJvcGVy
bHkgc2V0IHRvIDEwMHB4CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVwbGFjZWQv
dmVydGljYWwtd3JpdGluZy1tb2RlLW1heC1sb2dpY2FsLXdpZHRoLXJlcGxhY2VkLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlcGxhY2VkL3ZlcnRpY2FsLXdyaXRpbmctbW9kZS1tYXgtbG9naWNh
bC13aWR0aC1yZXBsYWNlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM4YWQ1NTU4NTNjNmQ0OTFmYTJkYTRk
ZGE5ODczMjJlMTczMTk5MDcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
cGxhY2VkL3ZlcnRpY2FsLXdyaXRpbmctbW9kZS1tYXgtbG9naWNhbC13aWR0aC1yZXBsYWNlZC5o
dG1sCkBAIC0wLDAgKzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGJvZHk+Cis8c3R5bGU+Citk
aXYgeworICAgIGxpbmUtaGVpZ2h0OiAwcHg7Cit9CisKK2ltZyB7CisgICAgcGFkZGluZy1sZWZ0
OiAxMDBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworfQorPC9zdHlsZT4KKzxkaXYg
c3R5bGU9Ii13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsiPjxpbWcgc3JjPSJyZXNv
dXJjZXMvc3F1YXJlLWJsdWUtMTAweDEwMC5wbmciPjwvaW1nPjwvZGl2PgorPHNjcmlwdD4KKyAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgdmFyIGV4cGVjdGVkV2lkdGggPSAiMjAwcHgiOyAvLyBpbnRyaW5zaWMgd2lkdGgg
KyAxMDBweCBwYWRkaW5nIGxlZnQuCisgICAgdmFyIGV4cGVjdGVkSGVpZ2h0ID0gIjEwMHB4Ijsg
Ly8gaW50cmluc2ljIGhlaWdodC4KKworICAgIGZ1bmN0aW9uIGNoZWNrRGltZW5zaW9uKGRpbWVu
c2lvbk5hbWUsIGRpbWVuc2lvbiwgZXhwZWN0ZWREaW1lbnNpb24pIHsKKyAgICAgICAgaWYgKGRp
bWVuc2lvbiA9PSBleHBlY3RlZERpbWVuc2lvbikKKyAgICAgICAgICAgIHJldHVybiAiUEFTU0VE
OiAiICsgZGltZW5zaW9uTmFtZSArICIgcHJvcGVybHkgc2V0IHRvICIgKyBleHBlY3RlZERpbWVu
c2lvbiArICI8YnI+IjsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmV0dXJuICJGQUlMRUQ6
ICIgKyBkaW1lbnNpb25OYW1lICsgIiA9ICIgKyBkaW1lbnNpb24gKyAiLCBleHBlY3RlZCA9ICIg
KyBleHBlY3RlZERpbWVuc2lvbiArICI8YnI+IjsKKyAgICB9CisKKyAgICBmdW5jdGlvbiB0ZXN0
SW1hZ2VEaW1lbnNpb24oKSB7CisgICAgICAgIHZhciBpbWcgPSBkb2N1bWVudC5nZXRFbGVtZW50
c0J5VGFnTmFtZSgiaW1nIilbMF0ucGFyZW50Tm9kZTsKKyAgICAgICAgdmFyIHJlc3VsdCA9ICJU
aGlzIHRlc3QgY2hlY2tzIHRoYXQgd2UgYWRkIHRoZSByaWdodCBwYWRkaW5nIG9uIGEgcmVwbGFj
ZWQgZWxlbWVudCBpbiB2ZXJ0aWNhbC13cml0aW5nIG1vZGUuPGJyPiI7CisgICAgICAgIHJlc3Vs
dCArPSBjaGVja0RpbWVuc2lvbigid2lkdGgiLCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbWcs
IG51bGwpLndpZHRoLCBleHBlY3RlZFdpZHRoKTsKKyAgICAgICAgcmVzdWx0ICs9IGNoZWNrRGlt
ZW5zaW9uKCJoZWlnaHQiLCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbWcsIG51bGwpLmhlaWdo
dCwgZXhwZWN0ZWRIZWlnaHQpOworICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaW5u
ZXJIVE1MID0gcmVzdWx0OworICAgIH0KKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsIHRlc3RJbWFnZURpbWVuc2lvbiwgdHJ1ZSk7Cis8L3NjcmlwdD4KKzwvYm9keT4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGFibGUvYmFkLXJlcGxhY2VkLXNpemluZy1wcmVmZXJy
ZWQtbG9naWNhbC13aWR0aHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9i
YWQtcmVwbGFjZWQtc2l6aW5nLXByZWZlcnJlZC1sb2dpY2FsLXdpZHRocy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMDFlMTM0YWQ5ZTg1MTcyMWQzOGY2NmFlYmU2MTk1YzA0MjYyMzUxMwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGFibGUvYmFkLXJlcGxhY2VkLXNpemlu
Zy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAor
QnVnIDk1ODkyOiBSRUdSRVNTSU9OKHIxMjI1MDEpOiByZXBsYWNlZCBlbGVtZW50cyB3aXRoIHBl
cmNlbnQgd2lkdGggYXJlIHdyb25nbHkgc2l6ZSB3aGVuIGluc2VydGVkIGluc2lkZSBhbiBhdXRv
LXRhYmxlIGxheW91dAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGEgcmVwbGFjZWQgZWxlbWVudCBp
bnNpZGUgYW4gYXV0by10YWJsZSBsYXlvdXQgaXMgbm90IGltcHJvcGVybHkgc2hydW5rLiBXZSBj
b25zaWRlciB0aGUgdGVzdCB0byBwYXNzIGlmIHRoZSBpZnJhbWUgdGFrZXMgbW9zdCBvZiB0aGUg
dGFibGUgc3BhY2UuCitQQVNTRUQsIHRoZSBpZnJhbWUgd2FzIHByb3Blcmx5IHNpemVkLgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9iYWQtcmVwbGFjZWQtc2l6aW5nLXByZWZl
cnJlZC1sb2dpY2FsLXdpZHRocy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9iYWQtcmVw
bGFjZWQtc2l6aW5nLXByZWZlcnJlZC1sb2dpY2FsLXdpZHRocy5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5
ZTBjODQ1NTk1YTA4YTVjMDU0NTM5MTEzNGIzYzFiMzNmZGRiZTEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJlZmVycmVkLWxv
Z2ljYWwtd2lkdGhzLmh0bWwKQEAgLTAsMCArMSw1MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxib2R5PgorPHN0eWxlPgordGFibGUgeworICAgIHdpZHRoOiAxMDAlOworICAgIGJvcmRl
ci1zcGFjaW5nOiAwcHg7Cit9CisKK3RkIHsKKyAgICBoZWlnaHQ6IDI1cHg7CisgICAgcGFkZGlu
ZzogMHB4OworfQorPC9zdHlsZT4KKzx0YWJsZSBhbGlnbj0ibWlkZGxlIj4KKzx0Ym9keT4KKyAg
ICA8dHI+CisgICAgPHRkPgorICAgICAgICA8ZGl2IHN0eWxlPSJ3aWR0aDoxMDAlIj4KKyAgICAg
ICAgPGlmcmFtZSBzcmM9InJlc291cmNlcy9pZnJhbWUuaHRtbCIgd2lkdGg9IjEwMCUiPjwvaWZy
YW1lPgorICAgICAgICA8L2Rpdj4KKyAgICA8L3RkPgorICAgIDx0ZCBhbGlnbj0icmlnaHQiIHZh
bGlnbj0ibWlkZGxlIj4KKyAgICAgICAgPGRpdj5kb2xvciBzaXQgYW1ldC4uLjwvZGl2PgorICAg
IDwvdGQ+CisgICAgPC90cj4KKzwvdGJvZHk+Cis8L3RhYmxlPgorPHNjcmlwdD4KKyAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisg
ICAgdmFyIHRhYmxlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRhYmxlIilbMF07
CisgICAgdmFyIHRhYmxlV2lkdGhTdHJpbmcgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0YWJs
ZSwgbnVsbCkud2lkdGg7CisgICAgdmFyIHRhYmxlV2lkdGggPSBOdW1iZXIodGFibGVXaWR0aFN0
cmluZy5yZXBsYWNlKCJweCIsICIiKSk7CisKKyAgICB2YXIgdGRXaXRoUmVwbGFjZWQgPSBkb2N1
bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGQiKVswXTsKKyAgICB2YXIgdGRXaWR0aFN0cmlu
ZyA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRkV2l0aFJlcGxhY2VkLCBudWxsKS53aWR0aDsK
KyAgICB2YXIgdGRXaWR0aCA9IE51bWJlcih0ZFdpZHRoU3RyaW5nLnJlcGxhY2UoInB4IiwgIiIp
KTsKKworICAgIHZhciByZXN1bHQgPSAiQnVnIDxhIGhyZWY9J2h0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD05NTg5Mic+OTU4OTI8L2E+OiBSRUdSRVNTSU9OKHIxMjI1MDEp
OiByZXBsYWNlZCBlbGVtZW50cyB3aXRoIHBlcmNlbnQgd2lkdGggYXJlIHdyb25nbHkgc2l6ZSB3
aGVuIGluc2VydGVkIGluc2lkZSBhbiBhdXRvLXRhYmxlIGxheW91dDxicj4gVGhpcyB0ZXN0IGNo
ZWNrcyB0aGF0IGEgcmVwbGFjZWQgZWxlbWVudCBpbnNpZGUgYW4gYXV0by10YWJsZSBsYXlvdXQg
aXMgbm90IGltcHJvcGVybHkgc2hydW5rLiBXZSBjb25zaWRlciB0aGUgdGVzdCB0byBwYXNzIGlm
IHRoZSBpZnJhbWUgdGFrZXMgbW9zdCBvZiB0aGUgdGFibGUgc3BhY2UuPGJyPiI7CisKKyAgICAv
LyA1MCUgaXMgYSBzb21ld2hhdCBhcmJpdHJhcnkgdGhyZXNob2xkIGJ1dCBpdCBzaG91bGQgc2hp
ZWxkIHVzIGZyb20gdGhlIHZpZXdwb3J0IHNpemUuCisgICAgaWYgKHRkV2lkdGggPj0gdGFibGVX
aWR0aCAvIDIpCisgICAgICAgICByZXN1bHQgKz0gIlBBU1NFRCwgdGhlIGlmcmFtZSB3YXMgcHJv
cGVybHkgc2l6ZWQuIjsKKyAgICBlbHNlCisgICAgICAgIHJlc3VsdCArPSAiRkFJTEVELCB0aGUg
aWZyYW1lIGhhc24ndCBiZWVuIHByb3Blcmx5IHNpemVkOiBzaXplID0gIiArIHRkV2lkdGhTdHJp
bmcgKyAiIHdoaWNoIGlzIHRvbyBsb3cuIjsKKyAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQu
aW5uZXJIVE1MID0gcmVzdWx0OworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL3Jlc291cmNlcy9pZnJhbWUuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvdGFibGUvcmVzb3VyY2VzL2lmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzZGIw
ZWU3NWM0ODA1ZGI3ODVmM2Q5MTljNDgyMzEyMjg5YzczZjIKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L3RhYmxlL3Jlc291cmNlcy9pZnJhbWUuaHRtbApAQCAtMCwwICsxLDYg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxwPkxvcmVtIElwc3VtPC9wPgor
PC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163737</attachid>
            <date>2012-09-12 16:51:53 -0700</date>
            <delta_ts>2012-09-12 17:29:45 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-95892-20120912165126.patch</filename>
            <type>text/plain</type>
            <size>8826</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI4Mzc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJjZjkyYzVjYTI2Y2Uy
ZDk4MzY4ODM5Yjk1MmM5Zjc4Y2I1NjIzYS4uODAyNTE0NDFhZDcxYWUxYmY4MWExZDYyNWYyMThi
NjQ1YWU2MTkwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTA5LTEyICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJ
T04ocjEyMjUwMSk6IHJlcGxhY2VkIGVsZW1lbnRzIHdpdGggcGVyY2VudCB3aWR0aCBhcmUgd3Jv
bmdseSBzaXplIHdoZW4gaW5zZXJ0ZWQgaW5zaWRlIGFuIGF1dG8tdGFibGUgbGF5b3V0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTg5MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE9qYW4gVmFmYWkuCisKKyAgICAgICAgcjEyMjUwMSBleHBvc2VkIGFu
IGlzc3VlIGluIGhvdyBwcmVmZXJyZWQgbG9naWNhbCB3aWR0aHMgYXJlIGNvbXB1dGVkIG9uIHJl
cGxhY2VkIG9iamVjdHMuIFRoZSBjb2RlIHJlbGllcyBvbiB0aGUKKyAgICAgICAgbG9naWNhbCB3
aWR0aCBjb21wdXRhdGlvbiBtZXRob2RzLiBVbmZvcnR1bmF0ZWx5IHRoZSBwcmV2aW91cyBjb2Rl
IHJlbGllcyBvbiB0aGUgbGF5b3V0IGluZm9ybWF0aW9uLCB3aGljaCBtYXkgbm90CisgICAgICAg
IGJlIHVwLXRvLWRhdGUgZHVyaW5nIHByZWZlcnJlZCBsb2dpY2FsIHdpZHRoIGNvbXB1dGF0aW9u
LgorCisgICAgICAgIFRlc3Q6IGZhc3QvdGFibGUvYmFkLXJlcGxhY2VkLXNpemluZy1wcmVmZXJy
ZWQtbG9naWNhbC13aWR0aHMuaHRtbAorICAgICAgICAgICAgICBmYXN0L3JlcGxhY2VkL3ZlcnRp
Y2FsLXdyaXRpbmctbW9kZS1tYXgtbG9naWNhbC13aWR0aC5odG1sCisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVwbGFj
ZWQ6OmNvbXB1dGVNYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOgorICAgICAgICBBZGRlZCB0aGlz
IGhlbHBlciBtZXRob2QuIFRoZSBtYWluIGRpZmZlcmVuY2Ugd2l0aCB0aGUgb2xkIGNvZGUgaXMg
dGhhdCBpdCBoYW5kbGVzIHRoZSBwZXJjZW50IGxvZ2ljYWwgd2lkdGgKKyAgICAgICAgcHJvcGVy
bHkgYmVmb3JlIGNhbGxpbmcgdGhlIG9sZCBjb2RlIHBhdGguIFRoaXMgaXMgbm90IHRvdGFsbHkg
cmlnaHQgYnV0IGJlZm9yZSBmb3JraW5nIHRoZSB3aG9sZSBjb2RlLCBpdCdzCisgICAgICAgIGJl
dHRlciB0byBoYXZlIG1vcmUgZXZpZGVuY2UgdGhhdCBmb3JraW5nIHByZWZlcnJlZCBsb2dpY2Fs
IHdpZHRocyBhbmQgbG9naWNhbCB3aWR0aCBjb21wdXRhdGlvbiBpcyB0aGUgd2F5IHRvIGdvLgor
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZVByZWZlcnJlZExvZ2lj
YWxXaWR0aHMpOgorICAgICAgICBDaGFuZ2VkIHRvIGNhbGwgY29tcHV0ZU1heFByZWZlcnJlZExv
Z2ljYWxXaWR0aC4gQWxzbyBmaXhlZCBhbiBleGlzdGluZyBidWcgaW4gdmVydGljYWwtd3JpdGlu
ZyBtb2RlcyB3aGVyZSB3ZSB3b3VsZAorICAgICAgICBhZGQgdGhlIHdyb25nIHBhZGRpbmdzIGFu
ZCBib3JkZXJzLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmg6CisgICAg
ICAgIChSZW5kZXJSZXBsYWNlZCk6IEFkZGVkIGNvbXB1dGVNYXhQcmVmZXJyZWRMb2dpY2FsV2lk
dGguCisKIDIwMTItMDktMTIgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4K
IAogICAgICAgICBBWDogc3ZnOmltYWdlIG5vdCBhY2Nlc3NpYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcAppbmRleCBmNzY1YzM4YzRiMjdhYzEwZWQ2NGI0
OGM2NGEyNmI3MzQwMDk0NjZlLi4xZWJiMTUyNmUzMDMwNDUwNmQwZjI4NTExYTZiNDFjMDViNDNj
MDk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAKQEAg
LTQzNywxMiArNDM3LDI2IEBAIExheW91dFVuaXQgUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBs
YWNlZExvZ2ljYWxIZWlnaHQoKSBjb25zdAogICAgIHJldHVybiBjb21wdXRlUmVwbGFjZWRMb2dp
Y2FsSGVpZ2h0UmVzcGVjdGluZ01pbk1heEhlaWdodChpbnRyaW5zaWNMb2dpY2FsSGVpZ2h0KCkp
OwogfQogCitMYXlvdXRVbml0IFJlbmRlclJlcGxhY2VkOjpjb21wdXRlTWF4UHJlZmVycmVkTG9n
aWNhbFdpZHRoKCkgY29uc3QKK3sKKyAgICBMZW5ndGggbG9naWNhbFdpZHRoID0gc3R5bGUoKS0+
bG9naWNhbFdpZHRoKCk7CisKKyAgICAvLyBXZSBjYW5ub3QgcmVzb2x2ZSBhbnkgcGVyY2VudCBs
b2dpY2FsIHdpZHRoIGhlcmUgYXMgdGhlIGF2YWlsYWJsZSBsb2dpY2FsCisgICAgLy8gd2lkdGgg
bWF5IG5vdCBiZSBzZXQgb24gb3VyIGNvbnRhaW5pbmcgYmxvY2suCisgICAgaWYgKGxvZ2ljYWxX
aWR0aC5pc1BlcmNlbnQoKSkKKyAgICAgICAgcmV0dXJuIGludHJpbnNpY0xvZ2ljYWxXaWR0aCgp
OworCisgICAgLy8gRklYTUU6IFdlIHNob3VsZG4ndCBiZSBjYWxsaW5nIGEgbG9naWNhbCB3aWR0
aCBjb21wdXRpbmcgZnVuY3Rpb24gaW4gcHJlZmVycmVkCisgICAgLy8gbG9naWNhbCB3aWR0aHMg
Y29tcHV0YXRpb24gYXMgdGhlIGxheW91dCBpbmZvcm1hdGlvbiBpcyBwcm9iYWJseSBpbnZhbGlk
LgorICAgIHJldHVybiBjb21wdXRlUmVwbGFjZWRMb2dpY2FsV2lkdGgoZmFsc2UpOworfQorCiB2
b2lkIFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiB7CiAg
ICAgQVNTRVJUKHByZWZlcnJlZExvZ2ljYWxXaWR0aHNEaXJ0eSgpKTsKIAotICAgIExheW91dFVu
aXQgYm9yZGVyQW5kUGFkZGluZyA9IGJvcmRlckFuZFBhZGRpbmdXaWR0aCgpOwotICAgIG1fbWF4
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gY29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKGZhbHNl
KSArIGJvcmRlckFuZFBhZGRpbmc7CisgICAgTGF5b3V0VW5pdCBib3JkZXJBbmRQYWRkaW5nID0g
Ym9yZGVyQW5kUGFkZGluZ0xvZ2ljYWxXaWR0aCgpOworICAgIG1fbWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoID0gY29tcHV0ZU1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpICsgYm9yZGVyQW5kUGFk
ZGluZzsKIAogICAgIGlmIChzdHlsZSgpLT5tYXhXaWR0aCgpLmlzRml4ZWQoKSkKICAgICAgICAg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtaW48TGF5b3V0VW5pdD4obV9tYXhQcmVmZXJy
ZWRMb2dpY2FsV2lkdGgsIHN0eWxlKCktPm1heFdpZHRoKCkudmFsdWUoKSArIChzdHlsZSgpLT5i
b3hTaXppbmcoKSA9PSBDT05URU5UX0JPWCA/IGJvcmRlckFuZFBhZGRpbmcgOiBaRVJPX0xBWU9V
VF9VTklUKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVw
bGFjZWQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5oCmluZGV4
IDlkNzgxNDM5NDIyNWQ0MGIxMmY5ODZkYjA5Y2RhYmI3Nzg4ZjlhNTIuLjc4MjZjZWJhM2Y2MjAx
NzJjNDA5ZWZjZDdiZTFmZjQzZTdlMDg1M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJSZXBsYWNlZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJSZXBsYWNlZC5oCkBAIC02Nyw2ICs2Nyw3IEBAIHByaXZhdGU6CiAKICAgICB2aXJ0dWFs
IGJvb2wgY2FuSGF2ZUNoaWxkcmVuKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAorICAgIExh
eW91dFVuaXQgY29tcHV0ZU1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpIGNvbnN0OwogICAgIHZp
cnR1YWwgdm9pZCBjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpOwogICAgIHZpcnR1YWwg
dm9pZCBwYWludFJlcGxhY2VkKFBhaW50SW5mbyYsIGNvbnN0IExheW91dFBvaW50JikgeyB9CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1NDkwMGY1ODZhNTJhOTA4MzZhMmRlMGQwZWUyYjllNmJjY2RhMGUwLi5jNTEzNmYy
N2VjYjQzMmJmM2E5MWNiNmFiZWYyZDJlYzQ4NmM1MTEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMTItMDktMTIgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdlYmtpdC5vcmc+CisK
KyAgICAgICAgUkVHUkVTU0lPTihyMTIyNTAxKTogcmVwbGFjZWQgZWxlbWVudHMgd2l0aCBwZXJj
ZW50IHdpZHRoIGFyZSB3cm9uZ2x5IHNpemUgd2hlbiBpbnNlcnRlZCBpbnNpZGUgYW4gYXV0by10
YWJsZSBsYXlvdXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk1ODkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgT2phbiBWYWZhaS4KKworICAgICAgICAq
IGZhc3QvcmVwbGFjZWQvdmVydGljYWwtd3JpdGluZy1tb2RlLW1heC1sb2dpY2FsLXdpZHRoLXJl
cGxhY2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9yZXBsYWNlZC92ZXJ0
aWNhbC13cml0aW5nLW1vZGUtbWF4LWxvZ2ljYWwtd2lkdGgtcmVwbGFjZWQuaHRtbDogQWRkZWQu
CisgICAgICAgICogZmFzdC90YWJsZS9iYWQtcmVwbGFjZWQtc2l6aW5nLXByZWZlcnJlZC1sb2dp
Y2FsLXdpZHRocy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGFibGUvYmFk
LXJlcGxhY2VkLXNpemluZy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC90YWJsZS9yZXNvdXJjZXMvaWZyYW1lLmh0bWw6IEFkZGVkLgorCiAyMDEy
LTA5LTEyICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAg
QVg6IHN2ZzppbWFnZSBub3QgYWNjZXNzaWJsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZXBsYWNlZC92ZXJ0aWNhbC13cml0aW5nLW1vZGUtbWF4LWxvZ2ljYWwtd2lkdGgtcmVwbGFj
ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZXBsYWNlZC92ZXJ0aWNhbC13cml0
aW5nLW1vZGUtbWF4LWxvZ2ljYWwtd2lkdGgtcmVwbGFjZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjA1NzhhNmNkOTYwMWE1YTZjNWJmN2FmMWM5ZDc5YTFmMjc0ZTU4ZGYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlcGxhY2VkL3ZlcnRpY2FsLXdyaXRpbmctbW9kZS1t
YXgtbG9naWNhbC13aWR0aC1yZXBsYWNlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitU
aGlzIHRlc3QgY2hlY2tzIHRoYXQgd2UgYWRkIHRoZSByaWdodCBwYWRkaW5nIG9uIGEgcmVwbGFj
ZWQgZWxlbWVudCBpbiB2ZXJ0aWNhbC13cml0aW5nIG1vZGUuCisKKworUEFTUwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZXBsYWNlZC92ZXJ0aWNhbC13cml0aW5nLW1vZGUtbWF4LWxv
Z2ljYWwtd2lkdGgtcmVwbGFjZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVwbGFjZWQvdmVy
dGljYWwtd3JpdGluZy1tb2RlLW1heC1sb2dpY2FsLXdpZHRoLXJlcGxhY2VkLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZTdmZDg2MTU4NjEzMjA3YmM0MGYxODFhZjRlM2I1NGQ0ZWI5NmFlMgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVwbGFjZWQvdmVydGljYWwtd3JpdGluZy1tb2Rl
LW1heC1sb2dpY2FsLXdpZHRoLXJlcGxhY2VkLmh0bWwKQEAgLTAsMCArMSwyMiBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvY2hlY2stbGF5
b3V0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKzwvc2NyaXB0PgorPHN0eWxlPgorZGl2
IHsKKyAgICBsaW5lLWhlaWdodDogMHB4OworfQorCitpbWcgeworICAgIHBhZGRpbmctbGVmdDog
MTAwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTsKK30KKzwvc3R5bGU+Cis8L2hlYWQ+
Cis8Ym9keSBvbmxvYWQ9ImNoZWNrTGF5b3V0KCdpbWcnKSI+Cis8cD5UaGlzIHRlc3QgY2hlY2tz
IHRoYXQgd2UgYWRkIHRoZSByaWdodCBwYWRkaW5nIG9uIGEgcmVwbGFjZWQgZWxlbWVudCBpbiB2
ZXJ0aWNhbC13cml0aW5nIG1vZGUuPC9wPgorPGRpdiBzdHlsZT0iLXdlYmtpdC13cml0aW5nLW1v
ZGU6IHZlcnRpY2FsLWxyOyI+PGltZyBzcmM9InJlc291cmNlcy9zcXVhcmUtYmx1ZS0xMDB4MTAw
LnBuZyIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAw
Ij48L2ltZz48L2Rpdj4KKzwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGFi
bGUvYmFkLXJlcGxhY2VkLXNpemluZy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9iYWQtcmVwbGFjZWQtc2l6aW5nLXByZWZlcnJl
ZC1sb2dpY2FsLXdpZHRocy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTYzOGRlZWMwN2Q4YjY1
YWU3MTI4ZmI4ZWE4ZmE4NjBlNzA2NjM0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvdGFibGUvYmFkLXJlcGxhY2VkLXNpemluZy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorQnVnIDk1ODkyOiBSRUdSRVNTSU9OKHIxMjI1
MDEpOiByZXBsYWNlZCBlbGVtZW50cyB3aXRoIHBlcmNlbnQgd2lkdGggYXJlIHdyb25nbHkgc2l6
ZSB3aGVuIGluc2VydGVkIGluc2lkZSBhbiBhdXRvLXRhYmxlIGxheW91dC4KKworVGhpcyB0ZXN0
IGNoZWNrcyB0aGF0IGEgcmVwbGFjZWQgZWxlbWVudCBpbnNpZGUgYW4gYXV0by10YWJsZSBsYXlv
dXQgcHJvcGVybHkgY29tcHV0ZXMgaXRzIHByZWZlcnJlZCBsb2dpY2FsIHdpZHRoLgorCisKK1BB
U1MKK2RvbG9yIHNpdCBhbWV0Li4uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RhYmxl
L2JhZC1yZXBsYWNlZC1zaXppbmctcHJlZmVycmVkLWxvZ2ljYWwtd2lkdGhzLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3RhYmxlL2JhZC1yZXBsYWNlZC1zaXppbmctcHJlZmVycmVkLWxvZ2ljYWwt
d2lkdGhzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODg0NGY4MTk1ZTI3ZGVkNjdjNTM3NThlMWEzNmUyMDgw
MWY5MTNhYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGFibGUvYmFkLXJl
cGxhY2VkLXNpemluZy1wcmVmZXJyZWQtbG9naWNhbC13aWR0aHMuaHRtbApAQCAtMCwwICsxLDQ0
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2NoZWNrLWxheW91dC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Cis8L3Nj
cmlwdD4KKzxzdHlsZT4KK2h0bWwgeworICAgIHdpZHRoOiA4MDBweDsKK30KKwordGFibGUgewor
ICAgIHdpZHRoOiAxMDAlOworICAgIGJvcmRlci1zcGFjaW5nOiAwcHg7Cit9CisKK3RkIHsKKyAg
ICBoZWlnaHQ6IDI1cHg7CisgICAgcGFkZGluZzogMHB4OworfQorPC9zdHlsZT4KKzwvaGVhZD4K
Kzxib2R5IG9ubG9hZD0iY2hlY2tMYXlvdXQoJ2lmcmFtZScpIj4KKzxwPkJ1ZyA8YSBocmVmPSdo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU4OTInPjk1ODkyPC9hPjog
UkVHUkVTU0lPTihyMTIyNTAxKTogcmVwbGFjZWQgZWxlbWVudHMgd2l0aCBwZXJjZW50IHdpZHRo
IGFyZSB3cm9uZ2x5IHNpemUgd2hlbiBpbnNlcnRlZCBpbnNpZGUgYW4gYXV0by10YWJsZSBsYXlv
dXQuPC9wPgorPHA+VGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGEgcmVwbGFjZWQgZWxlbWVudCBpbnNp
ZGUgYW4gYXV0by10YWJsZSBsYXlvdXQgcHJvcGVybHkgY29tcHV0ZXMgaXRzIHByZWZlcnJlZCBs
b2dpY2FsIHdpZHRoLjwvcD4KKzx0YWJsZSBhbGlnbj0ibWlkZGxlIj4KKzx0Ym9keT4KKyAgICA8
dHI+CisgICAgPHRkPgorICAgICAgICA8ZGl2IHN0eWxlPSJ3aWR0aDoxMDAlIj4KKyAgICAgICAg
PGlmcmFtZSBzcmNkb2M9IjwhRE9DVFlQRSBodG1sPjxwPkxvcmVtIElwc3VtPC9wPiIgd2lkdGg9
IjEwMCUiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjYwMiI+PC9pZnJhbWU+CisgICAgICAgIDwvZGl2
PgorICAgIDwvdGQ+CisgICAgPHRkIGFsaWduPSJyaWdodCIgdmFsaWduPSJtaWRkbGUiPgorICAg
ICAgICA8ZGl2PmRvbG9yIHNpdCBhbWV0Li4uPC9kaXY+CisgICAgPC90ZD4KKyAgICA8L3RyPgor
PC90Ym9keT4KKzwvdGFibGU+Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>