<?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>123769</bug_id>
          
          <creation_ts>2013-11-04 16:52:26 -0800</creation_ts>
          <short_desc>[CSS Shapes] Image valued shape-outside that extends vertically into the margin-box is top-clipped</short_desc>
          <delta_ts>2013-11-08 15:45:00 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>116348</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hans Muller">giles_joplin</reporter>
          <assigned_to name="Hans Muller">giles_joplin</assigned_to>
          <cc>bjonesbe</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>hyatt</cc>
    
    <cc>kling</cc>
    
    <cc>kondapallykalyan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>946897</commentid>
    <comment_count>0</comment_count>
      <attachid>215972</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2013-11-04 16:52:26 -0800</bug_when>
    <thetext>Created attachment 215972
Test case.

If shape-margin is specified it can cause the shape to extend outside the content-box on all four sides. Currently, the part of the shape-margin boundary that extends above the content-box is clipped.

The attached test case demonstrates this. The layout of the lines of text above the rectangle should mirror the layout of the lines below the rectangle.

Note also: despite the apparent similarities, this bug doesn&apos;t haven anything to do with the patch for https://bugs.webkit.org/show_bug.cgi?id=123743.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>948341</commentid>
    <comment_count>1</comment_count>
      <attachid>216315</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2013-11-07 11:03:13 -0800</bug_when>
    <thetext>Created attachment 216315
Patch

Remove the assumption that Y coordinates are &gt;= 0 from the RasterShapeIntervals class and correct its computeShapeMarginIntervals() method. The computeShapeMarginIntervals() method now generates intervals with Y coordinates that begin at the image shape&apos;s bounds.y - shape-margin, which may be less than 0.

The RasterShapeIntervals::intervalsAt() method now offsets its Y coordinate parameter by the shape-margin. A non-const overload of the method was added to centralize all access to m_intervalLists.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>948829</commentid>
    <comment_count>2</comment_count>
      <attachid>216315</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2013-11-08 13:57:48 -0800</bug_when>
    <thetext>Comment on attachment 216315
Patch

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

r=me Looks like the patch does not apply anymore though.

&gt; LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-image-margin-004-expected.html:6
&gt; +        font: 25px/1 Ahem, sans-serif;

Snippet , but it looks weird to have 25px/1, could you add spaces please? :) Ditto for the others.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>948879</commentid>
    <comment_count>3</comment_count>
      <attachid>216452</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2013-11-08 15:28:08 -0800</bug_when>
    <thetext>Created attachment 216452
Patch

Made the requested changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>948892</commentid>
    <comment_count>4</comment_count>
      <attachid>216452</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-08 15:44:59 -0800</bug_when>
    <thetext>Comment on attachment 216452
Patch

Clearing flags on attachment: 216452

Committed r158967: &lt;http://trac.webkit.org/changeset/158967&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>948893</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-08 15:45:00 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>215972</attachid>
            <date>2013-11-04 16:52:26 -0800</date>
            <delta_ts>2013-11-04 16:52:26 -0800</delta_ts>
            <desc>Test case.</desc>
            <filename>margin-fail.html</filename>
            <type>text/html</type>
            <size>1298</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8IS0tCltDU1MgU2hhcGVzXSBJbWFnZSB2YWx1ZWQgc2hh
cGUtb3V0c2lkZSB0aGF0IGV4dGVuZHMgdmVydGljYWxseSBpbnRvIHRoZSBtYXJnaW4tYm94IGlz
IHRvcC1jbGlwcGVkCgpJZiBzaGFwZS1tYXJnaW4gaXMgc3BlY2lmaWVkIGl0IGNhbiBjYXVzZSB0
aGUgc2hhcGUgdG8gZXh0ZW5kIG91dHNpZGUgdGhlIGNvbnRlbnQtYm94IG9uIGFsbCBmb3VyIHNp
ZGVzLiBDdXJyZW50bHksIHRoZSBwYXJ0IG9mIHRoZSBzaGFwZS1tYXJnaW4gYm91bmRhcnkgdGhh
dCBleHRlbmRzIGFib3ZlIHRoZSBjb250ZW50LWJveCBpcyBjbGlwcGVkLgoKVGhlIGF0dGFjaGVk
IHRlc3QgY2FzZSBkZW1vbnN0cmF0ZXMgdGhpcy4gVGhlIGxheW91dCBvZiB0aGUgbGluZXMgb2Yg
dGV4dCBhYm92ZSB0aGUgcmVjdGFuZ2xlIHNob3VsZCBtaXJyb3IgdGhlIGxheW91dCBvZiB0aGUg
bGluZXMgYmVsb3cgdGhlIHJlY3RhbmdsZS4KLS0+CjxoZWFkPgo8c3R5bGU+CiAgICAjaW1hZ2Ut
c2hhcGUgewogICAgICAgIGZsb2F0OiBsZWZ0OwogICAgICAgIC13ZWJraXQtc2hhcGUtb3V0c2lk
ZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3Lncz
Lm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMHB4JyBoZWlnaHQ9JzEwMHB4Jz48cmVjdCB4PScwJyB5
PScwJyB3aWR0aD0nMTAwJyBoZWlnaHQ9JzEwMCcgZmlsbD0nZ3JlZW4nLz48L3N2Zz4iKTsKICAg
ICAgICAtd2Via2l0LXNoYXBlLW1hcmdpbjogMzVweDsKICAgICAgICB3aWR0aDogMTAwcHg7CiAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKICAgICAgICBtYXJnaW46IDM1cHg7CiAgICAgICAgYm9yZGVy
OiAxcHggc29saWQgZ3JlZW47CiAgICB9Cjwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+CiAgPHA+VEJE
IC4uLiB0ZXh0IHNob3VsZCBhcHBlYXIgdG8gdGhlIHJpZ2h0IG9mIHRoZSBncmVlbiAxMDB4MTAw
IHJlY3RhbmdsZS48L3A+CiAgPGRpdiBzdHlsZT0iZm9udC1zaXplOiA1cHgiPgogICAgICA8ZGl2
IGlkPSJpbWFnZS1zaGFwZSI+PC9kaXY+CiAgICAgIEE8YnI+Qjxicj5DPGJyPkQ8YnI+RTxicj5G
PGJyPgogICAgICBBPGJyPkI8YnI+Qzxicj5EPGJyPkU8YnI+Rjxicj4KICAgICAgQTxicj5CPGJy
PkM8YnI+RDxicj5FPGJyPkY8YnI+CiAgICAgIEE8YnI+Qjxicj5DPGJyPkQ8YnI+RTxicj5GPGJy
PgogICAgICBBPGJyPkI8YnI+Qzxicj5EPGJyPkU8YnI+Rjxicj4KICAgICAgQTxicj5CPGJyPkM8
YnI+RDxicj5FPGJyPkY8YnI+CiAgPC9kaXY+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216315</attachid>
            <date>2013-11-07 11:03:13 -0800</date>
            <delta_ts>2013-11-08 15:28:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>13254</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlOTA2MWVmLi4wNTg2NTQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMTEt
MDcgIEhhbnMgTXVsbGVyICA8aG11bGxlckBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBTaGFw
ZXNdIEltYWdlIHZhbHVlZCBzaGFwZS1vdXRzaWRlIHRoYXQgZXh0ZW5kcyB2ZXJ0aWNhbGx5IGlu
dG8gdGhlIG1hcmdpbi1ib3ggaXMgdG9wLWNsaXBwZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzc2OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFZlcmlmeSB0aGF0IGxpbmVzIG92ZXJsYXAgYSBzaGFw
ZS1vdXRzaWRlIHRoYXQgZXh0ZW5kcyBpbnRvIHRoZSB0b3Agb2YgdGhlIG1hcmdpbi1ib3gKKyAg
ICAgICAgZG8gd3JhcCBhcm91bmQgdGhlIHRvcCBvZiB0aGUgc2hhcGUgYXMgd2VsbCBpdHMgc2lk
ZSBhbmQgYm90dG9tLgorCisgICAgICAgICogZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9h
dHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNC1leHBlY3RlZC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1v
dXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdl
LW1hcmdpbi0wMDUtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFwZXMv
c2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAw
NS5odG1sOiBBZGRlZC4KKwogMjAxMy0xMS0wNiAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIEZpeCB0ZXN0IGNhc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdl
LW1hcmdpbi0wMDQtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBl
LW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdlLW1hcmdpbi0wMDQtZXhw
ZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNzAwOTQ2Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1m
bG9hdHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNC1leHBlY3RlZC5odG1s
CkBAIC0wLDAgKzEsMjYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHls
ZT4KKyAgICAjY29udGVudCB7CisgICAgICAgIGZvbnQ6IDI1cHgvMSBBaGVtLCBzYW5zLXNlcmlm
OworICAgICAgICBjb2xvcjogZ3JlZW47CisgICAgfQorCisgICAgI2ltYWdlLXNoYXBlIHsKKyAg
ICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0
OiAxMDBweDsKKyAgICAgICAgbWFyZ2luOiAyNXB4OworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiBibHVlOworICAgIH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgPHA+VGhlIGdyZWVu
IHJlY3RhbmdsZXMgc2hvdWxkIHdyYXAgYXJvdW5kIHRoZSBibHVlIDEwMHgxMDAgcmVjdGFuZ2xl
IGFuZCBhIDI1IHBpeGVsIG1hcmdpbi48L3A+CisgIDxkaXYgaWQ9ImNvbnRlbnQiPgorICAgICAg
PGRpdiBpZD0iaW1hZ2Utc2hhcGUiPjwvZGl2PgorICAgICAgWDxicj5YPGJyPlg8YnI+WDxicj5Y
PGJyPlg8YnI+WAorICA8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxv
YXRzLWltYWdlLW1hcmdpbi0wMDQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBl
LW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdlLW1hcmdpbi0wMDQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMGFmZjQyCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNC5odG1sCkBAIC0wLDAgKzEsMjggQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyAgICAjY29udGVudCB7
CisgICAgICAgIGZvbnQ6IDI1cHgvMSBBaGVtLCBzYW5zLXNlcmlmOworICAgICAgICBjb2xvcjog
Z3JlZW47CisgICAgfQorCisgICAgI2ltYWdlLXNoYXBlIHsKKyAgICAgICAgZmxvYXQ6IGxlZnQ7
CisgICAgICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7
dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMHB4
JyBoZWlnaHQ9JzEwMHB4Jz48cmVjdCB3aWR0aD0nMTAwJyBoZWlnaHQ9JzEwMCcgZmlsbD0nZ3Jl
ZW4nLz48L3N2Zz4iKTsKKyAgICAgICAgLXdlYmtpdC1zaGFwZS1tYXJnaW46IDEwMHB4OyAvKiBv
dmVyZmxvdyB0aGUgbWFyZ2luIGJveCAqLworICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAg
IGhlaWdodDogMTAwcHg7CisgICAgICAgIG1hcmdpbjogMjVweDsKKyAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogYmx1ZTsKKyAgICB9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgIDxwPlRo
ZSBncmVlbiByZWN0YW5nbGVzIHNob3VsZCB3cmFwIGFyb3VuZCB0aGUgYmx1ZSAxMDB4MTAwIHJl
Y3RhbmdsZSBhbmQgYSAyNSBwaXhlbCBtYXJnaW4uPC9wPgorICA8ZGl2IGlkPSJjb250ZW50Ij4K
KyAgICAgIDxkaXYgaWQ9ImltYWdlLXNoYXBlIj48L2Rpdj4KKyAgICAgIFg8YnI+WDxicj5YPGJy
Plg8YnI+WDxicj5YPGJyPlgKKyAgPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA1LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1pbWFn
ZS1tYXJnaW4tMDA1LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uZWYyN2Y1YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVz
L3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdlLW1hcmdpbi0w
MDUtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+Cis8c3R5bGU+CisgICAgI2NvbnRlbnQgeworICAgICAgICBmb250OiAyNXB4LzEg
QWhlbSwgc2Fucy1zZXJpZjsKKyAgICAgICAgY29sb3I6IGdyZWVuOworICAgICAgICB0ZXh0LWFs
aWduOiByaWdodDsKKyAgICB9CisKKyAgICAjaW1hZ2Utc2hhcGUgeworICAgICAgICBmbG9hdDog
cmlnaHQ7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAg
ICAgICAgbWFyZ2luOiAyNXB4OworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworICAg
IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgPHA+VGhlIGdyZWVuIHJlY3RhbmdsZXMg
c2hvdWxkIHdyYXAgYXJvdW5kIHRoZSBibHVlIDEwMHgxMDAgcmVjdGFuZ2xlIGFuZCBhIDI1IHBp
eGVsIG1hcmdpbi48L3A+CisgIDxkaXYgaWQ9ImNvbnRlbnQiPgorICAgICAgPGRpdiBpZD0iaW1h
Z2Utc2hhcGUiPjwvZGl2PgorICAgICAgWDxicj5YPGJyPlg8YnI+WDxicj5YPGJyPlg8YnI+WAor
ICA8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
c2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdlLW1h
cmdpbi0wMDUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxv
YXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdlLW1hcmdpbi0wMDUuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYzY0MjAwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1m
bG9hdHMtaW1hZ2UtbWFyZ2luLTAwNS5odG1sCkBAIC0wLDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyAgICAjY29udGVudCB7CisgICAgICAgIGZv
bnQ6IDI1cHgvMSBBaGVtLCBzYW5zLXNlcmlmOworICAgICAgICBjb2xvcjogZ3JlZW47CisgICAg
ICAgIHRleHQtYWxpZ246IHJpZ2h0OworICAgIH0KKworICAgICNpbWFnZS1zaGFwZSB7CisgICAg
ICAgIGZsb2F0OiByaWdodDsKKyAgICAgICAgLXdlYmtpdC1zaGFwZS1vdXRzaWRlOiB1cmwoImRh
dGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAv
c3ZnJyB3aWR0aD0nMTAwcHgnIGhlaWdodD0nMTAwcHgnPjxyZWN0IHdpZHRoPScxMDAnIGhlaWdo
dD0nMTAwJyBmaWxsPSdncmVlbicvPjwvc3ZnPiIpOworICAgICAgICAtd2Via2l0LXNoYXBlLW1h
cmdpbjogMTAwcHg7IC8qIG92ZXJmbG93IHRoZSBtYXJnaW4gYm94ICovCisgICAgICAgIHdpZHRo
OiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgbWFyZ2luOiAyNXB4Owor
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworICAgIH0KKzwvc3R5bGU+Cis8L2hlYWQ+
Cis8Ym9keT4KKyAgPHA+VGhlIGdyZWVuIHJlY3RhbmdsZXMgc2hvdWxkIHdyYXAgYXJvdW5kIHRo
ZSBibHVlIDEwMHgxMDAgcmVjdGFuZ2xlIGFuZCBhIDI1IHBpeGVsIG1hcmdpbi48L3A+CisgIDxk
aXYgaWQ9ImNvbnRlbnQiPgorICAgICAgPGRpdiBpZD0iaW1hZ2Utc2hhcGUiPjwvZGl2PgorICAg
ICAgWDxicj5YPGJyPlg8YnI+WDxicj5YPGJyPlg8YnI+WAorICA8L2Rpdj4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCBkYjA4N2QwLi5mNDU2NzE3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMzEgQEAKKzIwMTMtMTEtMDcgIEhhbnMgTXVsbGVyICA8aG11bGxlckBhZG9iZS5jb20+CisK
KyAgICAgICAgW0NTUyBTaGFwZXNdIEltYWdlIHZhbHVlZCBzaGFwZS1vdXRzaWRlIHRoYXQgZXh0
ZW5kcyB2ZXJ0aWNhbGx5IGludG8gdGhlIG1hcmdpbi1ib3ggaXMgdG9wLWNsaXBwZWQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzc2OQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSB0aGUgYXNz
dW1wdGlvbiB0aGF0IFkgY29vcmRpbmF0ZXMgYXJlID49IDAgZnJvbSB0aGUgUmFzdGVyU2hhcGVJ
bnRlcnZhbHMgY2xhc3MKKyAgICAgICAgYW5kIGNvcnJlY3QgaXRzIGNvbXB1dGVTaGFwZU1hcmdp
bkludGVydmFscygpIG1ldGhvZC4gVGhlIGNvbXB1dGVTaGFwZU1hcmdpbkludGVydmFscygpCisg
ICAgICAgIG1ldGhvZCBub3cgZ2VuZXJhdGVzIGludGVydmFscyB3aXRoIFkgY29vcmRpbmF0ZXMg
dGhhdCBiZWdpbiBhdCB0aGUgaW1hZ2Ugc2hhcGUncworICAgICAgICBib3VuZHMueSAtIHNoYXBl
LW1hcmdpbiwgd2hpY2ggbWF5IGJlIGxlc3MgdGhhbiAwLgorCisgICAgICAgIFRoZSBSYXN0ZXJT
aGFwZUludGVydmFsczo6aW50ZXJ2YWxzQXQoKSBtZXRob2Qgbm93IG9mZnNldHMgaXRzIFkgY29v
cmRpbmF0ZSBwYXJhbWV0ZXIKKyAgICAgICAgYnkgdGhlIHNoYXBlLW1hcmdpbi4gQSBub24tY29u
c3Qgb3ZlcmxvYWQgb2YgdGhlIG1ldGhvZCB3YXMgYWRkZWQgdG8gY2VudHJhbGl6ZSBhbGwKKyAg
ICAgICAgYWNjZXNzIHRvIG1faW50ZXJ2YWxMaXN0cy4KKworICAgICAgICBUZXN0OiBmYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJn
aW4tMDA0Lmh0bWwKKyAgICAgICAgICAgICAgZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9h
dHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNS5odG1sCisgICAgICAgIAor
ICAgICAgICAqIHJlbmRlcmluZy9zaGFwZXMvUmFzdGVyU2hhcGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6TWFyZ2luSW50ZXJ2YWxHZW5lcmF0b3I6OmludGVydmFsQXQpOiBEb24ndCBjbGlwIFgg
Y29vcmRpbmF0ZXMgdG8gMCBzaW5jZSB0aGV5IGNhbiBleHRlbmQgaW50byB0aGUgbWFyZ2luLWJv
eC4KKyAgICAgICAgKFdlYkNvcmU6OlJhc3RlclNoYXBlSW50ZXJ2YWxzOjphcHBlbmRJbnRlcnZh
bCk6IFVzZSB0aGUgbm9uLWNvbnN0IGludGVydmFsc0F0KCkgbWV0aG9kLgorICAgICAgICAoV2Vi
Q29yZTo6UmFzdGVyU2hhcGVJbnRlcnZhbHM6OnVuaXRlTWFyZ2luSW50ZXJ2YWwpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OlJhc3RlclNoYXBlSW50ZXJ2YWxzOjpjb21wdXRlU2hhcGVNYXJn
aW5JbnRlcnZhbHMpOiBTZWUgYWJvdmUuCisgICAgICAgICogcmVuZGVyaW5nL3NoYXBlcy9SYXN0
ZXJTaGFwZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmFzdGVyU2hhcGVJbnRlcnZhbHM6OlJhc3Rl
clNoYXBlSW50ZXJ2YWxzKTogQWRkZWQgYSBmaWVsZCBmb3IgdGhlIG1hcmdpbi4KKyAgICAgICAg
KFdlYkNvcmU6OlJhc3RlclNoYXBlSW50ZXJ2YWxzOjppbnRlcnZhbHNBdCk6IE9mZnNldCB5IGNv
b3JkaW5hdGVzIGJ5IHRoZSBtYXJnaW47IGFkZGVkIGEgbm9uLWNvbnN0IG92ZXJsb2FkLgorCiAy
MDEzLTExLTA2ICBCZW0gSm9uZXMtQmV5ICA8YmpvbmVzYmVAYWRvYmUuY29tPgogCiAgICAgICAg
IFJlbmFtZSByZWdpb24gbGluZSBvZmZzZXQgbWV0aG9kcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9SYXN0ZXJTaGFwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc2hhcGVzL1Jhc3RlclNoYXBlLmNwcAppbmRleCBiY2NhMGE4Li43MzQwYmE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1Jhc3RlclNoYXBlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1Jhc3RlclNoYXBlLmNwcApA
QCAtNzAsMjUgKzcwLDI0IEBAIEludFNoYXBlSW50ZXJ2YWwgTWFyZ2luSW50ZXJ2YWxHZW5lcmF0
b3I6OmludGVydmFsQXQoaW50IHkpIGNvbnN0CiB7CiAgICAgdW5zaWduZWQgeEludGVyY2VwdHNJ
bmRleCA9IGFicyh5IC0gbV95KTsKICAgICBpbnQgZHggPSAoeEludGVyY2VwdHNJbmRleCA+PSBt
X3hJbnRlcmNlcHRzLnNpemUoKSkgPyAwIDogbV94SW50ZXJjZXB0c1t4SW50ZXJjZXB0c0luZGV4
XTsKLSAgICByZXR1cm4gSW50U2hhcGVJbnRlcnZhbChzdGQ6Om1heCgwLCBtX3gxIC0gZHgpLCBt
X3gyICsgZHgpOworICAgIHJldHVybiBJbnRTaGFwZUludGVydmFsKG1feDEgLSBkeCwgbV94MiAr
IGR4KTsKIH0KIAogdm9pZCBSYXN0ZXJTaGFwZUludGVydmFsczo6YXBwZW5kSW50ZXJ2YWwoaW50
IHksIGludCB4MSwgaW50IHgyKQogewotICAgIEFTU0VSVCh5ID49IDAgJiYgeSA8IHNpemUoKSAm
JiB4MSA+PSAwICYmIHgyID4geDEgJiYgKG1faW50ZXJ2YWxMaXN0c1t5XS5pc0VtcHR5KCkgfHwg
eDEgPiBtX2ludGVydmFsTGlzdHNbeV0ubGFzdCgpLngyKCkpKTsKLQorICAgIEFTU0VSVCh4MiA+
IHgxICYmIChpbnRlcnZhbHNBdCh5KS5pc0VtcHR5KCkgfHwgeDEgPiBpbnRlcnZhbHNBdCh5KS5s
YXN0KCkueDIoKSkpOwogICAgIG1fYm91bmRzLnVuaXRlKEludFJlY3QoeDEsIHksIHgyIC0geDEs
IDEpKTsKLSAgICBtX2ludGVydmFsTGlzdHNbeV0uYXBwZW5kKEludFNoYXBlSW50ZXJ2YWwoeDEs
IHgyKSk7CisgICAgaW50ZXJ2YWxzQXQoeSkuYXBwZW5kKEludFNoYXBlSW50ZXJ2YWwoeDEsIHgy
KSk7CiB9CiAKIHZvaWQgUmFzdGVyU2hhcGVJbnRlcnZhbHM6OnVuaXRlTWFyZ2luSW50ZXJ2YWwo
aW50IHksIGNvbnN0IEludFNoYXBlSW50ZXJ2YWwmIGludGVydmFsKQogewotICAgIEFTU0VSVCht
X2ludGVydmFsTGlzdHNbeV0uc2l6ZSgpIDw9IDEpOyAvLyBFYWNoIG1faW50ZXJ2YWxMaXN0cyBl
bnRyeSBoYXMgMCBvciBvbmUgaW50ZXJ2YWwuCisgICAgQVNTRVJUKGludGVydmFsc0F0KHkpLnNp
emUoKSA8PSAxKTsgLy8gRWFjaCBtX2ludGVydmFsTGlzdHMgZW50cnkgaGFzIDAgb3Igb25lIGlu
dGVydmFsLgogCi0gICAgaWYgKG1faW50ZXJ2YWxMaXN0c1t5XS5pc0VtcHR5KCkpCi0gICAgICAg
IG1faW50ZXJ2YWxMaXN0c1t5XS5hcHBlbmQoaW50ZXJ2YWwpOworICAgIGlmIChpbnRlcnZhbHNB
dCh5KS5pc0VtcHR5KCkpCisgICAgICAgIGludGVydmFsc0F0KHkpLmFwcGVuZChpbnRlcnZhbCk7
CiAgICAgZWxzZSB7Ci0gICAgICAgIEludFNoYXBlSW50ZXJ2YWwmIHJlc3VsdEludGVydmFsID0g
bV9pbnRlcnZhbExpc3RzW3ldWzBdOworICAgICAgICBJbnRTaGFwZUludGVydmFsJiByZXN1bHRJ
bnRlcnZhbCA9IGludGVydmFsc0F0KHkpWzBdOwogICAgICAgICByZXN1bHRJbnRlcnZhbC5zZXQo
c3RkOjptaW4ocmVzdWx0SW50ZXJ2YWwueDEoKSwgaW50ZXJ2YWwueDEoKSksIHN0ZDo6bWF4KHJl
c3VsdEludGVydmFsLngyKCksIGludGVydmFsLngyKCkpKTsKICAgICB9CiAKQEAgLTIyMywyMiAr
MjIyLDI1IEBAIHZvaWQgUmFzdGVyU2hhcGVJbnRlcnZhbHM6OmdldEV4Y2x1ZGVkSW50ZXJ2YWxz
KGludCB5MSwgaW50IHkyLCBJbnRTaGFwZUludGVydmFsCiAKIC8vIEN1cnJlbnRseSBsaW1pdGVk
IHRvIGNvbXB1dGluZyB0aGUgbWFyZ2luIGJvdW5kYXJ5IGZvciBzaGFwZS1vdXRzaWRlIGZvciBm
bG9hdHMsIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE2MzQ4
LgogCi1QYXNzT3duUHRyPFJhc3RlclNoYXBlSW50ZXJ2YWxzPiBSYXN0ZXJTaGFwZUludGVydmFs
czo6Y29tcHV0ZVNoYXBlTWFyZ2luSW50ZXJ2YWxzKHVuc2lnbmVkIG1hcmdpbikgY29uc3QKK1Bh
c3NPd25QdHI8UmFzdGVyU2hhcGVJbnRlcnZhbHM+IFJhc3RlclNoYXBlSW50ZXJ2YWxzOjpjb21w
dXRlU2hhcGVNYXJnaW5JbnRlcnZhbHModW5zaWduZWQgc2hhcGVNYXJnaW4pIGNvbnN0CiB7Ci0g
ICAgT3duUHRyPFJhc3RlclNoYXBlSW50ZXJ2YWxzPiByZXN1bHQgPSBhZG9wdFB0cihuZXcgUmFz
dGVyU2hhcGVJbnRlcnZhbHMoc2l6ZSgpICsgbWFyZ2luKSk7Ci0gICAgTWFyZ2luSW50ZXJ2YWxH
ZW5lcmF0b3IgbWFyZ2luSW50ZXJ2YWxHZW5lcmF0b3IobWFyZ2luKTsKKyAgICBPd25QdHI8UmFz
dGVyU2hhcGVJbnRlcnZhbHM+IHJlc3VsdCA9IGFkb3B0UHRyKG5ldyBSYXN0ZXJTaGFwZUludGVy
dmFscyhzaXplKCksIHNoYXBlTWFyZ2luKSk7CisgICAgTWFyZ2luSW50ZXJ2YWxHZW5lcmF0b3Ig
bWFyZ2luSW50ZXJ2YWxHZW5lcmF0b3Ioc2hhcGVNYXJnaW4pOworCisgICAgaW50IG1pblkgPSBi
b3VuZHMoKS55KCk7CisgICAgaW50IG1heFkgPSBib3VuZHMoKS5tYXhZKCk7CiAKLSAgICBmb3Ig
KGludCB5ID0gYm91bmRzKCkueSgpOyB5IDwgYm91bmRzKCkubWF4WSgpOyArK3kpIHsKKyAgICBm
b3IgKGludCB5ID0gbWluWTsgeSA8IG1heFk7ICsreSkgewogICAgICAgICBjb25zdCBJbnRTaGFw
ZUludGVydmFsJiBpbnRlcnZhbEF0WSA9IGxpbWl0SW50ZXJ2YWxBdCh5KTsKICAgICAgICAgaWYg
KGludGVydmFsQXRZLmlzRW1wdHkoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAg
IG1hcmdpbkludGVydmFsR2VuZXJhdG9yLnNldCh5LCBpbnRlcnZhbEF0WSk7Ci0gICAgICAgIGlu
dCBtYXJnaW5ZMCA9IHN0ZDo6bWF4KDAsIGNsYW1wVG9Qb3NpdGl2ZUludGVnZXIoeSAtIG1hcmdp
bikpOwotICAgICAgICBpbnQgbWFyZ2luWTEgPSBzdGQ6Om1pbihyZXN1bHQtPnNpemUoKSAtIDEs
IGNsYW1wVG9Qb3NpdGl2ZUludGVnZXIoeSArIG1hcmdpbikpOworICAgICAgICBpbnQgbWFyZ2lu
WTAgPSB5IC0gY2xhbXBUb0ludGVnZXIoc2hhcGVNYXJnaW4pOworICAgICAgICBpbnQgbWFyZ2lu
WTEgPSB5ICsgY2xhbXBUb0ludGVnZXIoc2hhcGVNYXJnaW4pOwogCiAgICAgICAgIGZvciAoaW50
IG1hcmdpblkgPSB5IC0gMTsgbWFyZ2luWSA+PSBtYXJnaW5ZMDsgLS1tYXJnaW5ZKSB7Ci0gICAg
ICAgICAgICBpZiAobGltaXRJbnRlcnZhbEF0KG1hcmdpblkpLmNvbnRhaW5zKGludGVydmFsQXRZ
KSkKKyAgICAgICAgICAgIGlmIChtYXJnaW5ZID4gbWluWSAmJiBsaW1pdEludGVydmFsQXQobWFy
Z2luWSkuY29udGFpbnMoaW50ZXJ2YWxBdFkpKQogICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICAgcmVzdWx0LT51bml0ZU1hcmdpbkludGVydmFsKG1hcmdpblksIG1hcmdpbkludGVy
dmFsR2VuZXJhdG9yLmludGVydmFsQXQobWFyZ2luWSkpOwogICAgICAgICB9CkBAIC0yNDYsNyAr
MjQ4LDcgQEAgUGFzc093blB0cjxSYXN0ZXJTaGFwZUludGVydmFscz4gUmFzdGVyU2hhcGVJbnRl
cnZhbHM6OmNvbXB1dGVTaGFwZU1hcmdpbkludGVydmEKICAgICAgICAgcmVzdWx0LT51bml0ZU1h
cmdpbkludGVydmFsKHksIG1hcmdpbkludGVydmFsR2VuZXJhdG9yLmludGVydmFsQXQoeSkpOwog
CiAgICAgICAgIGZvciAoaW50IG1hcmdpblkgPSB5ICsgMTsgbWFyZ2luWSA8PSBtYXJnaW5ZMTsg
KyttYXJnaW5ZKSB7Ci0gICAgICAgICAgICBpZiAobWFyZ2luWSA8IHNpemUoKSAmJiBsaW1pdElu
dGVydmFsQXQobWFyZ2luWSkuY29udGFpbnMoaW50ZXJ2YWxBdFkpKQorICAgICAgICAgICAgaWYg
KG1hcmdpblkgPCBtYXhZICYmIGxpbWl0SW50ZXJ2YWxBdChtYXJnaW5ZKS5jb250YWlucyhpbnRl
cnZhbEF0WSkpCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICByZXN1bHQtPnVu
aXRlTWFyZ2luSW50ZXJ2YWwobWFyZ2luWSwgbWFyZ2luSW50ZXJ2YWxHZW5lcmF0b3IuaW50ZXJ2
YWxBdChtYXJnaW5ZKSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zaGFwZXMvUmFzdGVyU2hhcGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
aGFwZXMvUmFzdGVyU2hhcGUuaAppbmRleCBlNDQ4OTQ5Li41YzAxOTBkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1Jhc3RlclNoYXBlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9SYXN0ZXJTaGFwZS5oCkBAIC00MCw5ICs0MCwxMCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFJhc3RlclNoYXBlSW50ZXJ2YWxzIHsKIHB1
YmxpYzoKLSAgICBSYXN0ZXJTaGFwZUludGVydmFscyh1bnNpZ25lZCBzaXplKQorICAgIFJhc3Rl
clNoYXBlSW50ZXJ2YWxzKHVuc2lnbmVkIHNpemUsIHVuc2lnbmVkIHNoYXBlTWFyZ2luID0gMCkK
KyAgICAgICAgOiBtX3NoYXBlTWFyZ2luKHNoYXBlTWFyZ2luKQogICAgIHsKLSAgICAgICAgbV9p
bnRlcnZhbExpc3RzLnJlc2l6ZShzaXplKTsKKyAgICAgICAgbV9pbnRlcnZhbExpc3RzLnJlc2l6
ZShzaXplICsgc2hhcGVNYXJnaW4gKiAyKTsKICAgICB9CiAKICAgICBjb25zdCBJbnRSZWN0JiBi
b3VuZHMoKSBjb25zdCB7IHJldHVybiBtX2JvdW5kczsgfQpAQCAtNTIsMTUgKzUzLDIxIEBAIHB1
YmxpYzoKICAgICB2b2lkIGdldEluY2x1ZGVkSW50ZXJ2YWxzKGludCB5MSwgaW50IHkyLCBJbnRT
aGFwZUludGVydmFscyYgcmVzdWx0KSBjb25zdDsKICAgICB2b2lkIGdldEV4Y2x1ZGVkSW50ZXJ2
YWxzKGludCB5MSwgaW50IHkyLCBJbnRTaGFwZUludGVydmFscyYgcmVzdWx0KSBjb25zdDsKICAg
ICBib29sIGZpcnN0SW5jbHVkZWRJbnRlcnZhbFkoaW50IG1pblksIGNvbnN0IEludFNpemUmIG1p
blNpemUsIExheW91dFVuaXQmIHJlc3VsdCkgY29uc3Q7Ci0gICAgUGFzc093blB0cjxSYXN0ZXJT
aGFwZUludGVydmFscz4gY29tcHV0ZVNoYXBlTWFyZ2luSW50ZXJ2YWxzKHVuc2lnbmVkIG1hcmdp
bikgY29uc3Q7CisgICAgUGFzc093blB0cjxSYXN0ZXJTaGFwZUludGVydmFscz4gY29tcHV0ZVNo
YXBlTWFyZ2luSW50ZXJ2YWxzKHVuc2lnbmVkIHNoYXBlTWFyZ2luKSBjb25zdDsKIAogcHJpdmF0
ZToKICAgICBpbnQgc2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1faW50ZXJ2YWxMaXN0cy5zaXplKCk7
IH0KIAorICAgIEludFNoYXBlSW50ZXJ2YWxzJiBpbnRlcnZhbHNBdChpbnQgeSkKKyAgICB7Cisg
ICAgICAgIEFTU0VSVCh5ICsgbV9zaGFwZU1hcmdpbiA+PSAwICYmIHkgKyBtX3NoYXBlTWFyZ2lu
IDwgbV9pbnRlcnZhbExpc3RzLnNpemUoKSk7CisgICAgICAgIHJldHVybiBtX2ludGVydmFsTGlz
dHNbeSArIG1fc2hhcGVNYXJnaW5dOworICAgIH0KKwogICAgIGNvbnN0IEludFNoYXBlSW50ZXJ2
YWxzJiBpbnRlcnZhbHNBdChpbnQgeSkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVCh5ID49
IDAgJiYgeSA8IHNpemUoKSk7Ci0gICAgICAgIHJldHVybiBtX2ludGVydmFsTGlzdHNbeV07Cisg
ICAgICAgIEFTU0VSVCh5ICsgbV9zaGFwZU1hcmdpbiA+PSAwICYmIHkgKyBtX3NoYXBlTWFyZ2lu
IDwgbV9pbnRlcnZhbExpc3RzLnNpemUoKSk7CisgICAgICAgIHJldHVybiBtX2ludGVydmFsTGlz
dHNbeSArIG1fc2hhcGVNYXJnaW5dOwogICAgIH0KIAogICAgIEludFNoYXBlSW50ZXJ2YWwgbGlt
aXRJbnRlcnZhbEF0KGludCB5KSBjb25zdApAQCAtNzQsNiArODEsNyBAQCBwcml2YXRlOgogICAg
IHZvaWQgdW5pdGVNYXJnaW5JbnRlcnZhbChpbnQgeSwgY29uc3QgSW50U2hhcGVJbnRlcnZhbCYp
OwogICAgIEludFJlY3QgbV9ib3VuZHM7CiAgICAgVmVjdG9yPEludFNoYXBlSW50ZXJ2YWxzPiBt
X2ludGVydmFsTGlzdHM7CisgICAgdW5zaWduZWQgbV9zaGFwZU1hcmdpbjsKIH07CiAKIGNsYXNz
IFJhc3RlclNoYXBlIDogcHVibGljIFNoYXBlIHsK
</data>
<flag name="review"
          id="239280"
          type_id="1"
          status="+"
          setter="krit"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216452</attachid>
            <date>2013-11-08 15:28:08 -0800</date>
            <delta_ts>2013-11-08 15:44:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>13309</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2ODE2ZTY2Li42ZDg0MjljOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTEx
LTA3ICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgU2hh
cGVzXSBJbWFnZSB2YWx1ZWQgc2hhcGUtb3V0c2lkZSB0aGF0IGV4dGVuZHMgdmVydGljYWxseSBp
bnRvIHRoZSBtYXJnaW4tYm94IGlzIHRvcC1jbGlwcGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjM3NjkKKworICAgICAgICBSZXZpZXdlZCBieSBE
aXJrIFNjaHVsemUuCisKKyAgICAgICAgVmVyaWZ5IHRoYXQgbGluZXMgb3ZlcmxhcCBhIHNoYXBl
LW91dHNpZGUgdGhhdCBleHRlbmRzIGludG8gdGhlIHRvcCBvZiB0aGUgbWFyZ2luLWJveAorICAg
ICAgICBkbyB3cmFwIGFyb3VuZCB0aGUgdG9wIG9mIHRoZSBzaGFwZSBhcyB3ZWxsIGl0cyBzaWRl
IGFuZCBib3R0b20uCisKKyAgICAgICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0
cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA0LWV4cGVjdGVkLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtZmxvYXRzLWltYWdlLW1hcmdpbi0wMDQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2Ut
bWFyZ2luLTAwNS1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3NoYXBlcy9z
aGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA1
Lmh0bWw6IEFkZGVkLgorCiAyMDEzLTExLTA4ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBw
bGUuY29tPgogCiAgICAgICAgIEltcGxlbWVudCBKV0sga2V5IGltcG9ydCBmb3IgSE1BQyBhbmQg
QUVTLUNCQwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lk
ZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNC1leHBlY3RlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUt
b3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU5N2FlMTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy1pbWFnZS1tYXJnaW4tMDA0LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorICAgICNjb250ZW50IHsKKyAg
ICAgICAgZm9udDogMjVweCAvIDEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAgICAgY29sb3I6IGdy
ZWVuOworICAgIH0KKworICAgICNpbWFnZS1zaGFwZSB7CisgICAgICAgIGZsb2F0OiBsZWZ0Owor
ICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgIG1h
cmdpbjogMjVweDsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTsKKyAgICB9Cis8L3N0
eWxlPgorPC9oZWFkPgorPGJvZHk+CisgIDxwPlRoZSBncmVlbiByZWN0YW5nbGVzIHNob3VsZCB3
cmFwIGFyb3VuZCB0aGUgYmx1ZSAxMDB4MTAwIHJlY3RhbmdsZSBhbmQgYSAyNSBwaXhlbCBtYXJn
aW4uPC9wPgorICA8ZGl2IGlkPSJjb250ZW50Ij4KKyAgICAgIDxkaXYgaWQ9ImltYWdlLXNoYXBl
Ij48L2Rpdj4KKyAgICAgIFg8YnI+WDxicj5YPGJyPlg8YnI+WDxicj5YPGJyPlgKKyAgPC9kaXY+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9z
aGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA0
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uOWJmZGU4ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1p
bWFnZS1tYXJnaW4tMDA0Lmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8
aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorICAgICNjb250ZW50IHsKKyAgICAgICAgZm9udDogMjVw
eCAvIDEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAgICAgY29sb3I6IGdyZWVuOworICAgIH0KKwor
ICAgICNpbWFnZS1zaGFwZSB7CisgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAtd2Via2l0
LXNoYXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0n
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDBweCcgaGVpZ2h0PScxMDBweCc+
PHJlY3Qgd2lkdGg9JzEwMCcgaGVpZ2h0PScxMDAnIGZpbGw9J2dyZWVuJy8+PC9zdmc+Iik7Cisg
ICAgICAgIC13ZWJraXQtc2hhcGUtbWFyZ2luOiAxMDBweDsgLyogb3ZlcmZsb3cgdGhlIG1hcmdp
biBib3ggKi8KKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4Owor
ICAgICAgICBtYXJnaW46IDI1cHg7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7Cisg
ICAgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8cD5UaGUgZ3JlZW4gcmVjdGFuZ2xl
cyBzaG91bGQgd3JhcCBhcm91bmQgdGhlIGJsdWUgMTAweDEwMCByZWN0YW5nbGUgYW5kIGEgMjUg
cGl4ZWwgbWFyZ2luLjwvcD4KKyAgPGRpdiBpZD0iY29udGVudCI+CisgICAgICA8ZGl2IGlkPSJp
bWFnZS1zaGFwZSI+PC9kaXY+CisgICAgICBYPGJyPlg8YnI+WDxicj5YPGJyPlg8YnI+WDxicj5Y
CisgIDwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2Ut
bWFyZ2luLTAwNS1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUt
b3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNS1leHBl
Y3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNiZmUxOGEKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA1LWV4cGVjdGVkLmh0bWwK
QEAgLTAsMCArMSwyNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxl
PgorICAgICNjb250ZW50IHsKKyAgICAgICAgZm9udDogMjVweCAvIDEgQWhlbSwgc2Fucy1zZXJp
ZjsKKyAgICAgICAgY29sb3I6IGdyZWVuOworICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsKKyAg
ICB9CisKKyAgICAjaW1hZ2Utc2hhcGUgeworICAgICAgICBmbG9hdDogcmlnaHQ7CisgICAgICAg
IHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgbWFyZ2luOiAy
NXB4OworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworICAgIH0KKzwvc3R5bGU+Cis8
L2hlYWQ+Cis8Ym9keT4KKyAgPHA+VGhlIGdyZWVuIHJlY3RhbmdsZXMgc2hvdWxkIHdyYXAgYXJv
dW5kIHRoZSBibHVlIDEwMHgxMDAgcmVjdGFuZ2xlIGFuZCBhIDI1IHBpeGVsIG1hcmdpbi48L3A+
CisgIDxkaXYgaWQ9ImNvbnRlbnQiPgorICAgICAgPGRpdiBpZD0iaW1hZ2Utc2hhcGUiPjwvZGl2
PgorICAgICAgWDxicj5YPGJyPlg8YnI+WDxicj5YPGJyPlg8YnI+WAorICA8L2Rpdj4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91
dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtZmxvYXRzLWltYWdlLW1hcmdpbi0wMDUuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNp
ZGUtZmxvYXRzLWltYWdlLW1hcmdpbi0wMDUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi42ZTk3OTBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9z
aGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1mbG9hdHMtaW1hZ2UtbWFy
Z2luLTAwNS5odG1sCkBAIC0wLDAgKzEsMjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKzxzdHlsZT4KKyAgICAjY29udGVudCB7CisgICAgICAgIGZvbnQ6IDI1cHggLyAxIEFo
ZW0sIHNhbnMtc2VyaWY7CisgICAgICAgIGNvbG9yOiBncmVlbjsKKyAgICAgICAgdGV4dC1hbGln
bjogcmlnaHQ7CisgICAgfQorCisgICAgI2ltYWdlLXNoYXBlIHsKKyAgICAgICAgZmxvYXQ6IHJp
Z2h0OworICAgICAgICAtd2Via2l0LXNoYXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcr
eG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScx
MDBweCcgaGVpZ2h0PScxMDBweCc+PHJlY3Qgd2lkdGg9JzEwMCcgaGVpZ2h0PScxMDAnIGZpbGw9
J2dyZWVuJy8+PC9zdmc+Iik7CisgICAgICAgIC13ZWJraXQtc2hhcGUtbWFyZ2luOiAxMDBweDsg
Lyogb3ZlcmZsb3cgdGhlIG1hcmdpbiBib3ggKi8KKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAg
ICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICBtYXJnaW46IDI1cHg7CisgICAgICAgIGJhY2tn
cm91bmQtY29sb3I6IGJsdWU7CisgICAgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8
cD5UaGUgZ3JlZW4gcmVjdGFuZ2xlcyBzaG91bGQgd3JhcCBhcm91bmQgdGhlIGJsdWUgMTAweDEw
MCByZWN0YW5nbGUgYW5kIGEgMjUgcGl4ZWwgbWFyZ2luLjwvcD4KKyAgPGRpdiBpZD0iY29udGVu
dCI+CisgICAgICA8ZGl2IGlkPSJpbWFnZS1zaGFwZSI+PC9kaXY+CisgICAgICBYPGJyPlg8YnI+
WDxicj5YPGJyPlg8YnI+WDxicj5YCisgIDwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CmluZGV4IGJkYWU4ZGIuLjAxOTc3YjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAx
My0xMS0wNyAgSGFucyBNdWxsZXIgIDxobXVsbGVyQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NT
IFNoYXBlc10gSW1hZ2UgdmFsdWVkIHNoYXBlLW91dHNpZGUgdGhhdCBleHRlbmRzIHZlcnRpY2Fs
bHkgaW50byB0aGUgbWFyZ2luLWJveCBpcyB0b3AtY2xpcHBlZAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzNzY5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGlyayBTY2h1bHplLgorCisgICAgICAgIFJlbW92ZSB0aGUgYXNzdW1wdGlvbiB0aGF0IFkg
Y29vcmRpbmF0ZXMgYXJlID49IDAgZnJvbSB0aGUgUmFzdGVyU2hhcGVJbnRlcnZhbHMgY2xhc3MK
KyAgICAgICAgYW5kIGNvcnJlY3QgaXRzIGNvbXB1dGVTaGFwZU1hcmdpbkludGVydmFscygpIG1l
dGhvZC4gVGhlIGNvbXB1dGVTaGFwZU1hcmdpbkludGVydmFscygpCisgICAgICAgIG1ldGhvZCBu
b3cgZ2VuZXJhdGVzIGludGVydmFscyB3aXRoIFkgY29vcmRpbmF0ZXMgdGhhdCBiZWdpbiBhdCB0
aGUgaW1hZ2Ugc2hhcGUncworICAgICAgICBib3VuZHMueSAtIHNoYXBlLW1hcmdpbiwgd2hpY2gg
bWF5IGJlIGxlc3MgdGhhbiAwLgorCisgICAgICAgIFRoZSBSYXN0ZXJTaGFwZUludGVydmFsczo6
aW50ZXJ2YWxzQXQoKSBtZXRob2Qgbm93IG9mZnNldHMgaXRzIFkgY29vcmRpbmF0ZSBwYXJhbWV0
ZXIKKyAgICAgICAgYnkgdGhlIHNoYXBlLW1hcmdpbi4gQSBub24tY29uc3Qgb3ZlcmxvYWQgb2Yg
dGhlIG1ldGhvZCB3YXMgYWRkZWQgdG8gY2VudHJhbGl6ZSBhbGwKKyAgICAgICAgYWNjZXNzIHRv
IG1faW50ZXJ2YWxMaXN0cy4KKworICAgICAgICBUZXN0OiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWZsb2F0cy1pbWFnZS1tYXJnaW4tMDA0Lmh0bWwKKyAg
ICAgICAgICAgICAgZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lk
ZS1mbG9hdHMtaW1hZ2UtbWFyZ2luLTAwNS5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvc2hh
cGVzL1Jhc3RlclNoYXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1hcmdpbkludGVydmFsR2Vu
ZXJhdG9yOjppbnRlcnZhbEF0KTogRG9uJ3QgY2xpcCBYIGNvb3JkaW5hdGVzIHRvIDAgc2luY2Ug
dGhleSBjYW4gZXh0ZW5kIGludG8gdGhlIG1hcmdpbi1ib3guCisgICAgICAgIChXZWJDb3JlOjpS
YXN0ZXJTaGFwZUludGVydmFsczo6YXBwZW5kSW50ZXJ2YWwpOiBVc2UgdGhlIG5vbi1jb25zdCBp
bnRlcnZhbHNBdCgpIG1ldGhvZC4KKyAgICAgICAgKFdlYkNvcmU6OlJhc3RlclNoYXBlSW50ZXJ2
YWxzOjp1bml0ZU1hcmdpbkludGVydmFsKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpSYXN0
ZXJTaGFwZUludGVydmFsczo6Y29tcHV0ZVNoYXBlTWFyZ2luSW50ZXJ2YWxzKTogU2VlIGFib3Zl
LgorICAgICAgICAqIHJlbmRlcmluZy9zaGFwZXMvUmFzdGVyU2hhcGUuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlJhc3RlclNoYXBlSW50ZXJ2YWxzOjpSYXN0ZXJTaGFwZUludGVydmFscyk6IEFkZGVk
IGEgZmllbGQgZm9yIHRoZSBtYXJnaW4uCisgICAgICAgIChXZWJDb3JlOjpSYXN0ZXJTaGFwZUlu
dGVydmFsczo6aW50ZXJ2YWxzQXQpOiBPZmZzZXQgeSBjb29yZGluYXRlcyBieSB0aGUgbWFyZ2lu
OyBhZGRlZCBhIG5vbi1jb25zdCBvdmVybG9hZC4KKwogMjAxMy0xMS0wOCAgQnJhZHkgRWlkc29u
ICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgTWVyZ2UgSURCQ3Vyc29yQmFja2VuZElu
dGVyZmFjZSBhbmQgSURCQ3Vyc29yQmFja2VuZEltcGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zaGFwZXMvUmFzdGVyU2hhcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3NoYXBlcy9SYXN0ZXJTaGFwZS5jcHAKaW5kZXggOTA1MDljYi4uYjdmZWZkZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9SYXN0ZXJTaGFwZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9SYXN0ZXJTaGFwZS5jcHAKQEAg
LTcwLDI1ICs3MCwyNCBAQCBJbnRTaGFwZUludGVydmFsIE1hcmdpbkludGVydmFsR2VuZXJhdG9y
OjppbnRlcnZhbEF0KGludCB5KSBjb25zdAogewogICAgIHVuc2lnbmVkIHhJbnRlcmNlcHRzSW5k
ZXggPSBhYnMoeSAtIG1feSk7CiAgICAgaW50IGR4ID0gKHhJbnRlcmNlcHRzSW5kZXggPj0gbV94
SW50ZXJjZXB0cy5zaXplKCkpID8gMCA6IG1feEludGVyY2VwdHNbeEludGVyY2VwdHNJbmRleF07
Ci0gICAgcmV0dXJuIEludFNoYXBlSW50ZXJ2YWwoc3RkOjptYXgoMCwgbV94MSAtIGR4KSwgbV94
MiArIGR4KTsKKyAgICByZXR1cm4gSW50U2hhcGVJbnRlcnZhbChtX3gxIC0gZHgsIG1feDIgKyBk
eCk7CiB9CiAKIHZvaWQgUmFzdGVyU2hhcGVJbnRlcnZhbHM6OmFwcGVuZEludGVydmFsKGludCB5
LCBpbnQgeDEsIGludCB4MikKIHsKLSAgICBBU1NFUlQoeSA+PSAwICYmIHkgPCBzaXplKCkgJiYg
eDEgPj0gMCAmJiB4MiA+IHgxICYmIChtX2ludGVydmFsTGlzdHNbeV0uaXNFbXB0eSgpIHx8IHgx
ID4gbV9pbnRlcnZhbExpc3RzW3ldLmxhc3QoKS54MigpKSk7Ci0KKyAgICBBU1NFUlQoeDIgPiB4
MSAmJiAoaW50ZXJ2YWxzQXQoeSkuaXNFbXB0eSgpIHx8IHgxID4gaW50ZXJ2YWxzQXQoeSkubGFz
dCgpLngyKCkpKTsKICAgICBtX2JvdW5kcy51bml0ZShJbnRSZWN0KHgxLCB5LCB4MiAtIHgxLCAx
KSk7Ci0gICAgbV9pbnRlcnZhbExpc3RzW3ldLmFwcGVuZChJbnRTaGFwZUludGVydmFsKHgxLCB4
MikpOworICAgIGludGVydmFsc0F0KHkpLmFwcGVuZChJbnRTaGFwZUludGVydmFsKHgxLCB4Mikp
OwogfQogCiB2b2lkIFJhc3RlclNoYXBlSW50ZXJ2YWxzOjp1bml0ZU1hcmdpbkludGVydmFsKGlu
dCB5LCBjb25zdCBJbnRTaGFwZUludGVydmFsJiBpbnRlcnZhbCkKIHsKLSAgICBBU1NFUlQobV9p
bnRlcnZhbExpc3RzW3ldLnNpemUoKSA8PSAxKTsgLy8gRWFjaCBtX2ludGVydmFsTGlzdHMgZW50
cnkgaGFzIDAgb3Igb25lIGludGVydmFsLgorICAgIEFTU0VSVChpbnRlcnZhbHNBdCh5KS5zaXpl
KCkgPD0gMSk7IC8vIEVhY2ggbV9pbnRlcnZhbExpc3RzIGVudHJ5IGhhcyAwIG9yIG9uZSBpbnRl
cnZhbC4KIAotICAgIGlmIChtX2ludGVydmFsTGlzdHNbeV0uaXNFbXB0eSgpKQotICAgICAgICBt
X2ludGVydmFsTGlzdHNbeV0uYXBwZW5kKGludGVydmFsKTsKKyAgICBpZiAoaW50ZXJ2YWxzQXQo
eSkuaXNFbXB0eSgpKQorICAgICAgICBpbnRlcnZhbHNBdCh5KS5hcHBlbmQoaW50ZXJ2YWwpOwog
ICAgIGVsc2UgewotICAgICAgICBJbnRTaGFwZUludGVydmFsJiByZXN1bHRJbnRlcnZhbCA9IG1f
aW50ZXJ2YWxMaXN0c1t5XVswXTsKKyAgICAgICAgSW50U2hhcGVJbnRlcnZhbCYgcmVzdWx0SW50
ZXJ2YWwgPSBpbnRlcnZhbHNBdCh5KVswXTsKICAgICAgICAgcmVzdWx0SW50ZXJ2YWwuc2V0KHN0
ZDo6bWluKHJlc3VsdEludGVydmFsLngxKCksIGludGVydmFsLngxKCkpLCBzdGQ6Om1heChyZXN1
bHRJbnRlcnZhbC54MigpLCBpbnRlcnZhbC54MigpKSk7CiAgICAgfQogCkBAIC0yMTgsMjIgKzIx
NywyNSBAQCB2b2lkIFJhc3RlclNoYXBlSW50ZXJ2YWxzOjpnZXRFeGNsdWRlZEludGVydmFscyhp
bnQgeTEsIGludCB5MiwgSW50U2hhcGVJbnRlcnZhbAogCiAvLyBDdXJyZW50bHkgbGltaXRlZCB0
byBjb21wdXRpbmcgdGhlIG1hcmdpbiBib3VuZGFyeSBmb3Igc2hhcGUtb3V0c2lkZSBmb3IgZmxv
YXRzLCBzZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjM0OC4K
IAotUGFzc093blB0cjxSYXN0ZXJTaGFwZUludGVydmFscz4gUmFzdGVyU2hhcGVJbnRlcnZhbHM6
OmNvbXB1dGVTaGFwZU1hcmdpbkludGVydmFscyh1bnNpZ25lZCBtYXJnaW4pIGNvbnN0CitQYXNz
T3duUHRyPFJhc3RlclNoYXBlSW50ZXJ2YWxzPiBSYXN0ZXJTaGFwZUludGVydmFsczo6Y29tcHV0
ZVNoYXBlTWFyZ2luSW50ZXJ2YWxzKHVuc2lnbmVkIHNoYXBlTWFyZ2luKSBjb25zdAogewotICAg
IE93blB0cjxSYXN0ZXJTaGFwZUludGVydmFscz4gcmVzdWx0ID0gYWRvcHRQdHIobmV3IFJhc3Rl
clNoYXBlSW50ZXJ2YWxzKHNpemUoKSArIG1hcmdpbikpOwotICAgIE1hcmdpbkludGVydmFsR2Vu
ZXJhdG9yIG1hcmdpbkludGVydmFsR2VuZXJhdG9yKG1hcmdpbik7CisgICAgT3duUHRyPFJhc3Rl
clNoYXBlSW50ZXJ2YWxzPiByZXN1bHQgPSBhZG9wdFB0cihuZXcgUmFzdGVyU2hhcGVJbnRlcnZh
bHMoc2l6ZSgpLCBzaGFwZU1hcmdpbikpOworICAgIE1hcmdpbkludGVydmFsR2VuZXJhdG9yIG1h
cmdpbkludGVydmFsR2VuZXJhdG9yKHNoYXBlTWFyZ2luKTsKKworICAgIGludCBtaW5ZID0gYm91
bmRzKCkueSgpOworICAgIGludCBtYXhZID0gYm91bmRzKCkubWF4WSgpOwogCi0gICAgZm9yIChp
bnQgeSA9IGJvdW5kcygpLnkoKTsgeSA8IGJvdW5kcygpLm1heFkoKTsgKyt5KSB7CisgICAgZm9y
IChpbnQgeSA9IG1pblk7IHkgPCBtYXhZOyArK3kpIHsKICAgICAgICAgY29uc3QgSW50U2hhcGVJ
bnRlcnZhbCYgaW50ZXJ2YWxBdFkgPSBsaW1pdEludGVydmFsQXQoeSk7CiAgICAgICAgIGlmIChp
bnRlcnZhbEF0WS5pc0VtcHR5KCkpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBt
YXJnaW5JbnRlcnZhbEdlbmVyYXRvci5zZXQoeSwgaW50ZXJ2YWxBdFkpOwotICAgICAgICBpbnQg
bWFyZ2luWTAgPSBzdGQ6Om1heCgwLCBjbGFtcFRvUG9zaXRpdmVJbnRlZ2VyKHkgLSBtYXJnaW4p
KTsKLSAgICAgICAgaW50IG1hcmdpblkxID0gc3RkOjptaW4ocmVzdWx0LT5zaXplKCkgLSAxLCBj
bGFtcFRvUG9zaXRpdmVJbnRlZ2VyKHkgKyBtYXJnaW4pKTsKKyAgICAgICAgaW50IG1hcmdpblkw
ID0geSAtIGNsYW1wVG9JbnRlZ2VyKHNoYXBlTWFyZ2luKTsKKyAgICAgICAgaW50IG1hcmdpblkx
ID0geSArIGNsYW1wVG9JbnRlZ2VyKHNoYXBlTWFyZ2luKTsKIAogICAgICAgICBmb3IgKGludCBt
YXJnaW5ZID0geSAtIDE7IG1hcmdpblkgPj0gbWFyZ2luWTA7IC0tbWFyZ2luWSkgewotICAgICAg
ICAgICAgaWYgKGxpbWl0SW50ZXJ2YWxBdChtYXJnaW5ZKS5jb250YWlucyhpbnRlcnZhbEF0WSkp
CisgICAgICAgICAgICBpZiAobWFyZ2luWSA+IG1pblkgJiYgbGltaXRJbnRlcnZhbEF0KG1hcmdp
blkpLmNvbnRhaW5zKGludGVydmFsQXRZKSkKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgICAgIHJlc3VsdC0+dW5pdGVNYXJnaW5JbnRlcnZhbChtYXJnaW5ZLCBtYXJnaW5JbnRlcnZh
bEdlbmVyYXRvci5pbnRlcnZhbEF0KG1hcmdpblkpKTsKICAgICAgICAgfQpAQCAtMjQxLDcgKzI0
Myw3IEBAIFBhc3NPd25QdHI8UmFzdGVyU2hhcGVJbnRlcnZhbHM+IFJhc3RlclNoYXBlSW50ZXJ2
YWxzOjpjb21wdXRlU2hhcGVNYXJnaW5JbnRlcnZhCiAgICAgICAgIHJlc3VsdC0+dW5pdGVNYXJn
aW5JbnRlcnZhbCh5LCBtYXJnaW5JbnRlcnZhbEdlbmVyYXRvci5pbnRlcnZhbEF0KHkpKTsKIAog
ICAgICAgICBmb3IgKGludCBtYXJnaW5ZID0geSArIDE7IG1hcmdpblkgPD0gbWFyZ2luWTE7ICsr
bWFyZ2luWSkgewotICAgICAgICAgICAgaWYgKG1hcmdpblkgPCBzaXplKCkgJiYgbGltaXRJbnRl
cnZhbEF0KG1hcmdpblkpLmNvbnRhaW5zKGludGVydmFsQXRZKSkKKyAgICAgICAgICAgIGlmICht
YXJnaW5ZIDwgbWF4WSAmJiBsaW1pdEludGVydmFsQXQobWFyZ2luWSkuY29udGFpbnMoaW50ZXJ2
YWxBdFkpKQogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgcmVzdWx0LT51bml0
ZU1hcmdpbkludGVydmFsKG1hcmdpblksIG1hcmdpbkludGVydmFsR2VuZXJhdG9yLmludGVydmFs
QXQobWFyZ2luWSkpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc2hhcGVzL1Jhc3RlclNoYXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hh
cGVzL1Jhc3RlclNoYXBlLmgKaW5kZXggZTQ0ODk0OS4uNWMwMTkwZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9SYXN0ZXJTaGFwZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMvUmFzdGVyU2hhcGUuaApAQCAtNDAsOSArNDAsMTAgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBSYXN0ZXJTaGFwZUludGVydmFscyB7CiBwdWJs
aWM6Ci0gICAgUmFzdGVyU2hhcGVJbnRlcnZhbHModW5zaWduZWQgc2l6ZSkKKyAgICBSYXN0ZXJT
aGFwZUludGVydmFscyh1bnNpZ25lZCBzaXplLCB1bnNpZ25lZCBzaGFwZU1hcmdpbiA9IDApCisg
ICAgICAgIDogbV9zaGFwZU1hcmdpbihzaGFwZU1hcmdpbikKICAgICB7Ci0gICAgICAgIG1faW50
ZXJ2YWxMaXN0cy5yZXNpemUoc2l6ZSk7CisgICAgICAgIG1faW50ZXJ2YWxMaXN0cy5yZXNpemUo
c2l6ZSArIHNoYXBlTWFyZ2luICogMik7CiAgICAgfQogCiAgICAgY29uc3QgSW50UmVjdCYgYm91
bmRzKCkgY29uc3QgeyByZXR1cm4gbV9ib3VuZHM7IH0KQEAgLTUyLDE1ICs1MywyMSBAQCBwdWJs
aWM6CiAgICAgdm9pZCBnZXRJbmNsdWRlZEludGVydmFscyhpbnQgeTEsIGludCB5MiwgSW50U2hh
cGVJbnRlcnZhbHMmIHJlc3VsdCkgY29uc3Q7CiAgICAgdm9pZCBnZXRFeGNsdWRlZEludGVydmFs
cyhpbnQgeTEsIGludCB5MiwgSW50U2hhcGVJbnRlcnZhbHMmIHJlc3VsdCkgY29uc3Q7CiAgICAg
Ym9vbCBmaXJzdEluY2x1ZGVkSW50ZXJ2YWxZKGludCBtaW5ZLCBjb25zdCBJbnRTaXplJiBtaW5T
aXplLCBMYXlvdXRVbml0JiByZXN1bHQpIGNvbnN0OwotICAgIFBhc3NPd25QdHI8UmFzdGVyU2hh
cGVJbnRlcnZhbHM+IGNvbXB1dGVTaGFwZU1hcmdpbkludGVydmFscyh1bnNpZ25lZCBtYXJnaW4p
IGNvbnN0OworICAgIFBhc3NPd25QdHI8UmFzdGVyU2hhcGVJbnRlcnZhbHM+IGNvbXB1dGVTaGFw
ZU1hcmdpbkludGVydmFscyh1bnNpZ25lZCBzaGFwZU1hcmdpbikgY29uc3Q7CiAKIHByaXZhdGU6
CiAgICAgaW50IHNpemUoKSBjb25zdCB7IHJldHVybiBtX2ludGVydmFsTGlzdHMuc2l6ZSgpOyB9
CiAKKyAgICBJbnRTaGFwZUludGVydmFscyYgaW50ZXJ2YWxzQXQoaW50IHkpCisgICAgeworICAg
ICAgICBBU1NFUlQoeSArIG1fc2hhcGVNYXJnaW4gPj0gMCAmJiB5ICsgbV9zaGFwZU1hcmdpbiA8
IG1faW50ZXJ2YWxMaXN0cy5zaXplKCkpOworICAgICAgICByZXR1cm4gbV9pbnRlcnZhbExpc3Rz
W3kgKyBtX3NoYXBlTWFyZ2luXTsKKyAgICB9CisKICAgICBjb25zdCBJbnRTaGFwZUludGVydmFs
cyYgaW50ZXJ2YWxzQXQoaW50IHkpIGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQoeSA+PSAw
ICYmIHkgPCBzaXplKCkpOwotICAgICAgICByZXR1cm4gbV9pbnRlcnZhbExpc3RzW3ldOworICAg
ICAgICBBU1NFUlQoeSArIG1fc2hhcGVNYXJnaW4gPj0gMCAmJiB5ICsgbV9zaGFwZU1hcmdpbiA8
IG1faW50ZXJ2YWxMaXN0cy5zaXplKCkpOworICAgICAgICByZXR1cm4gbV9pbnRlcnZhbExpc3Rz
W3kgKyBtX3NoYXBlTWFyZ2luXTsKICAgICB9CiAKICAgICBJbnRTaGFwZUludGVydmFsIGxpbWl0
SW50ZXJ2YWxBdChpbnQgeSkgY29uc3QKQEAgLTc0LDYgKzgxLDcgQEAgcHJpdmF0ZToKICAgICB2
b2lkIHVuaXRlTWFyZ2luSW50ZXJ2YWwoaW50IHksIGNvbnN0IEludFNoYXBlSW50ZXJ2YWwmKTsK
ICAgICBJbnRSZWN0IG1fYm91bmRzOwogICAgIFZlY3RvcjxJbnRTaGFwZUludGVydmFscz4gbV9p
bnRlcnZhbExpc3RzOworICAgIHVuc2lnbmVkIG1fc2hhcGVNYXJnaW47CiB9OwogCiBjbGFzcyBS
YXN0ZXJTaGFwZSA6IHB1YmxpYyBTaGFwZSB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>