<?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>186225</bug_id>
          
          <creation_ts>2018-06-01 22:23:38 -0700</creation_ts>
          <short_desc>[LFC] Merge width and margin computation for block-level, non-replaced and inline,replaced element in normal flow</short_desc>
          <delta_ts>2018-06-04 08:04:53 -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>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>koivisto</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1429512</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-06-01 22:23:38 -0700</bug_when>
    <thetext>https://www.w3.org/TR/CSS22/visudet.html

10.3.2 Inline, replaced elements
and
10.3.3 Block-level, non-replaced elements in normal flow</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1429513</commentid>
    <comment_count>1</comment_count>
      <attachid>341830</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-06-01 22:28:29 -0700</bug_when>
    <thetext>Created attachment 341830
Patch

This patch needs bug 186217</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1429514</commentid>
    <comment_count>2</comment_count>
      <attachid>341831</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-06-01 22:30:11 -0700</bug_when>
    <thetext>Created attachment 341831
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1429812</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-06-04 07:58:44 -0700</bug_when>
    <thetext>Committed r232466: &lt;https://trac.webkit.org/changeset/232466&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1429814</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-06-04 08:04:53 -0700</bug_when>
    <thetext>&lt;rdar://problem/40771799&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>341830</attachid>
            <date>2018-06-01 22:28:29 -0700</date>
            <delta_ts>2018-06-01 22:30:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>10615</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ODAxYWQzMjQwNC4uMGNiZWVlYzhhN2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxOC0wNi0wMSAgQWxhbiBLaW5zbGV5ICA8emFsYW5AYXBwbGUuY29tPgor
CisgICAgICAgIFtMRkNdIE1lcmdlIHdpZHRoIGFuZCBtYXJnaW4gY29tcHV0YXRpb24gZm9yIGJs
b2NrLWxldmVsLCBub24tcmVwbGFjZWQgYW5kIGlubGluZSxyZXBsYWNlZCBlbGVtZW50IGluIG5v
cm1hbCBmbG93CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODYyMjUKKworICAgICAgICBUaGlzIHBhdGNoIG1lcmdlcyB0aGUgd2lkdGggYW5kIGhvcml6
b250YWwgbWFyZ2luIGNvbXB1dGF0aW9uIGZvcgorICAgICAgICBodHRwczovL3d3dy53My5vcmcv
VFIvQ1NTMjIvdmlzdWRldC5odG1sI2lubGluZS1yZXBsYWNlZC13aWR0aCBhbmQgaHR0cHM6Ly93
d3cudzMub3JnL1RSL0NTUzIyL3Zpc3VkZXQuaHRtbCNibG9ja3dpZHRoCisKKyAgICAgICAgKiBs
YXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5saW5lUmVwbGFjZWRXaWR0aEFu
ZE1hcmdpbik6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRp
bmdDb250ZXh0R2VvbWV0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zv
cm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5GbG93Tm9uUmVwbGFjZWRXaWR0aEFuZE1hcmdp
bik6CisKIDIwMTgtMDYtMDEgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbTEZDXSBNZXJnZSB3aWR0aCBhbmQgaG9yaXpvbnRhbCBtYXJnaW4gY29tcHV0YXRpb24K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21l
dHJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5
LmNwcAppbmRleCBmZWRmZWQwODY1OC4uMWEyNmZlZjljZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKQEAgLTUxOSwxMSAr
NTE5LDEzIEBAIExheW91dFVuaXQgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVS
ZXBsYWNlZEhlaWdodChMYXlvdXRDb250ZXh0JiwgY29uCiAgICAgcmV0dXJuIGNvbXB1dGVkSGVp
Z2h0VmFsdWU7CiB9CiAKLUZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJn
aW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFy
Z2luKExheW91dENvbnRleHQmLCBjb25zdCBCb3gmIGxheW91dEJveCkKK0Zvcm1hdHRpbmdDb250
ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5
OjppbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKExheW91dENvbnRleHQmIGxheW91dENvbnRl
eHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94KQogewogICAgIEFTU0VSVCgobGF5b3V0Qm94LmlzT3V0
T2ZGbG93UG9zaXRpb25lZCgpIHx8IGxheW91dEJveC5pc0Zsb2F0aW5nUG9zaXRpb25lZCgpIHx8
IGxheW91dEJveC5pc0luRmxvdygpKSAmJiBsYXlvdXRCb3gucmVwbGFjZWQoKSk7CiAgICAgLy8g
MTAuMy4yIElubGluZSwgcmVwbGFjZWQgZWxlbWVudHMKICAgICAvLworICAgIC8vIEEgY29tcHV0
ZWQgdmFsdWUgb2YgJ2F1dG8nIGZvciAnbWFyZ2luLWxlZnQnIG9yICdtYXJnaW4tcmlnaHQnIGJl
Y29tZXMgYSB1c2VkIHZhbHVlIG9mICcwJy4KKyAgICAvLwogICAgIC8vIDEuIElmICdoZWlnaHQn
IGFuZCAnd2lkdGgnIGJvdGggaGF2ZSBjb21wdXRlZCB2YWx1ZXMgb2YgJ2F1dG8nIGFuZCB0aGUg
ZWxlbWVudCBhbHNvIGhhcyBhbiBpbnRyaW5zaWMgd2lkdGgsIHRoZW4gdGhhdCBpbnRyaW5zaWMg
d2lkdGggaXMgdGhlIHVzZWQgdmFsdWUgb2YgJ3dpZHRoJy4KICAgICAvLwogICAgIC8vIDIuIElm
ICdoZWlnaHQnIGFuZCAnd2lkdGgnIGJvdGggaGF2ZSBjb21wdXRlZCB2YWx1ZXMgb2YgJ2F1dG8n
IGFuZCB0aGUgZWxlbWVudCBoYXMgbm8gaW50cmluc2ljIHdpZHRoLCBidXQgZG9lcyBoYXZlIGFu
IGludHJpbnNpYyBoZWlnaHQgYW5kIGludHJpbnNpYyByYXRpbzsKQEAgLTUzOSwxMCArNTQxLDIx
IEBAIEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJnaW4gRm9ybWF0dGlu
Z0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVSCiAgICAgLy8gNS4gT3RoZXJ3aXNlLCBpZiAnd2lk
dGgnIGhhcyBhIGNvbXB1dGVkIHZhbHVlIG9mICdhdXRvJywgYnV0IG5vbmUgb2YgdGhlIGNvbmRp
dGlvbnMgYWJvdmUgYXJlIG1ldCwgdGhlbiB0aGUgdXNlZCB2YWx1ZSBvZiAnd2lkdGgnIGJlY29t
ZXMgMzAwcHguCiAgICAgLy8gICAgSWYgMzAwcHggaXMgdG9vIHdpZGUgdG8gZml0IHRoZSBkZXZp
Y2UsIFVBcyBzaG91bGQgdXNlIHRoZSB3aWR0aCBvZiB0aGUgbGFyZ2VzdCByZWN0YW5nbGUgdGhh
dCBoYXMgYSAyOjEgcmF0aW8gYW5kIGZpdHMgdGhlIGRldmljZSBpbnN0ZWFkLgogICAgIGF1dG8m
IHN0eWxlID0gbGF5b3V0Qm94LnN0eWxlKCk7CisgICAgTGF5b3V0VW5pdCBjb21wdXRlZFdpZHRo
VmFsdWU7CisgICAgTGF5b3V0VW5pdCBjb21wdXRlZE1hcmdpbkxlZnQ7CisgICAgTGF5b3V0VW5p
dCBjb21wdXRlZE1hcmdpblJpZ2h0OworCisgICAgeworICAgICAgICBhdXRvIG1hcmdpbkxlZnQg
PSBzdHlsZS5tYXJnaW5MZWZ0KCk7CisgICAgICAgIGF1dG8gbWFyZ2luUmlnaHQgPSBzdHlsZS5t
YXJnaW5SaWdodCgpOworICAgICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gbGF5b3V0
Q29udGV4dC5kaXNwbGF5Qm94Rm9yTGF5b3V0Qm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2Nr
KCkpLT53aWR0aCgpOworCisgICAgICAgIGNvbXB1dGVkTWFyZ2luTGVmdCA9IG1hcmdpbkxlZnQu
aXNBdXRvKCkgPyBMYXlvdXRVbml0KDApIDogdmFsdWVGb3JMZW5ndGgobWFyZ2luTGVmdCwgY29u
dGFpbmluZ0Jsb2NrV2lkdGgpOworICAgICAgICBjb21wdXRlZE1hcmdpblJpZ2h0ID0gbWFyZ2lu
UmlnaHQuaXNBdXRvKCkgPyBMYXlvdXRVbml0KDApIDogdmFsdWVGb3JMZW5ndGgobWFyZ2luUmln
aHQsIGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKKyAgICB9CisKICAgICBhdXRvIHdpZHRoID0gc3R5
bGUubG9naWNhbFdpZHRoKCk7CiAgICAgYXV0byBoZWlnaHQgPSBzdHlsZS5sb2dpY2FsSGVpZ2h0
KCk7Ci0KLSAgICBMYXlvdXRVbml0IGNvbXB1dGVkV2lkdGhWYWx1ZTsKICAgICBhdXRvIHJlcGxh
Y2VkID0gbGF5b3V0Qm94LnJlcGxhY2VkKCk7CiAgICAgQVNTRVJUKHJlcGxhY2VkKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1h
dHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9y
bWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwCmluZGV4IDg2NjFlYTAx
Njg3Li5hZjI1MTFmNDBhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2Nr
Zm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dEdl
b21ldHJ5LmNwcApAQCAtMTIxLDI5ICsxMjEsOTQgQEAgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21l
dHJ5OjpXaWR0aEFuZE1hcmdpbiBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW4K
ICAgICAgICAgLy8gMTAuMy4zIEJsb2NrLWxldmVsLCBub24tcmVwbGFjZWQgZWxlbWVudHMgaW4g
bm9ybWFsIGZsb3cKICAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBjb25zdHJhaW50cyBtdXN0IGhv
bGQgYW1vbmcgdGhlIHVzZWQgdmFsdWVzIG9mIHRoZSBvdGhlciBwcm9wZXJ0aWVzOgogICAgICAg
ICAvLyAnbWFyZ2luLWxlZnQnICsgJ2JvcmRlci1sZWZ0LXdpZHRoJyArICdwYWRkaW5nLWxlZnQn
ICsgJ3dpZHRoJyArICdwYWRkaW5nLXJpZ2h0JyArICdib3JkZXItcmlnaHQtd2lkdGgnICsgJ21h
cmdpbi1yaWdodCcgPSB3aWR0aCBvZiBjb250YWluaW5nIGJsb2NrCisgICAgICAgIC8vCisgICAg
ICAgIC8vIDEuIElmICd3aWR0aCcgaXMgbm90ICdhdXRvJyBhbmQgJ2JvcmRlci1sZWZ0LXdpZHRo
JyArICdwYWRkaW5nLWxlZnQnICsgJ3dpZHRoJyArICdwYWRkaW5nLXJpZ2h0JyArICdib3JkZXIt
cmlnaHQtd2lkdGgnIAorICAgICAgICAvLyAgICAocGx1cyBhbnkgb2YgJ21hcmdpbi1sZWZ0JyBv
ciAnbWFyZ2luLXJpZ2h0JyB0aGF0IGFyZSBub3QgJ2F1dG8nKSBpcyBsYXJnZXIgdGhhbiB0aGUg
d2lkdGggb2YgdGhlIGNvbnRhaW5pbmcgYmxvY2ssIHRoZW4KKyAgICAgICAgLy8gICAgYW55ICdh
dXRvJyB2YWx1ZXMgZm9yICdtYXJnaW4tbGVmdCcgb3IgJ21hcmdpbi1yaWdodCcgYXJlLCBmb3Ig
dGhlIGZvbGxvd2luZyBydWxlcywgdHJlYXRlZCBhcyB6ZXJvLgorICAgICAgICAvLworICAgICAg
ICAvLyAyLiBJZiBhbGwgb2YgdGhlIGFib3ZlIGhhdmUgYSBjb21wdXRlZCB2YWx1ZSBvdGhlciB0
aGFuICdhdXRvJywgdGhlIHZhbHVlcyBhcmUgc2FpZCB0byBiZSAib3Zlci1jb25zdHJhaW5lZCIg
YW5kIG9uZSBvZiB0aGUgdXNlZCB2YWx1ZXMgd2lsbAorICAgICAgICAvLyAgICBoYXZlIHRvIGJl
IGRpZmZlcmVudCBmcm9tIGl0cyBjb21wdXRlZCB2YWx1ZS4gSWYgdGhlICdkaXJlY3Rpb24nIHBy
b3BlcnR5IG9mIHRoZSBjb250YWluaW5nIGJsb2NrIGhhcyB0aGUgdmFsdWUgJ2x0cicsIHRoZSBz
cGVjaWZpZWQgdmFsdWUKKyAgICAgICAgLy8gICAgb2YgJ21hcmdpbi1yaWdodCcgaXMgaWdub3Jl
ZCBhbmQgdGhlIHZhbHVlIGlzIGNhbGN1bGF0ZWQgc28gYXMgdG8gbWFrZSB0aGUgZXF1YWxpdHkg
dHJ1ZS4gSWYgdGhlIHZhbHVlIG9mICdkaXJlY3Rpb24nIGlzICdydGwnLAorICAgICAgICAvLyAg
ICB0aGlzIGhhcHBlbnMgdG8gJ21hcmdpbi1sZWZ0JyBpbnN0ZWFkLgorICAgICAgICAvLworICAg
ICAgICAvLyAzLiBJZiB0aGVyZSBpcyBleGFjdGx5IG9uZSB2YWx1ZSBzcGVjaWZpZWQgYXMgJ2F1
dG8nLCBpdHMgdXNlZCB2YWx1ZSBmb2xsb3dzIGZyb20gdGhlIGVxdWFsaXR5LgorICAgICAgICAv
LworICAgICAgICAvLyA0LiBJZiAnd2lkdGgnIGlzIHNldCB0byAnYXV0bycsIGFueSBvdGhlciAn
YXV0bycgdmFsdWVzIGJlY29tZSAnMCcgYW5kICd3aWR0aCcgZm9sbG93cyBmcm9tIHRoZSByZXN1
bHRpbmcgZXF1YWxpdHkuCisgICAgICAgIC8vCisgICAgICAgIC8vIDUuIElmIGJvdGggJ21hcmdp
bi1sZWZ0JyBhbmQgJ21hcmdpbi1yaWdodCcgYXJlICdhdXRvJywgdGhlaXIgdXNlZCB2YWx1ZXMg
YXJlIGVxdWFsLiBUaGlzIGhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IHdpdGggcmVz
cGVjdCB0byB0aGUKKyAgICAgICAgLy8gICAgZWRnZXMgb2YgdGhlIGNvbnRhaW5pbmcgYmxvY2su
CiAKLSAgICAgICAgLy8gSWYgJ3dpZHRoJyBpcyBzZXQgdG8gJ2F1dG8nLCBhbnkgb3RoZXIgJ2F1
dG8nIHZhbHVlcyBiZWNvbWUgJzAnIGFuZCAnd2lkdGgnIGZvbGxvd3MgZnJvbSB0aGUgcmVzdWx0
aW5nIGVxdWFsaXR5LgogICAgICAgICBhdXRvJiBzdHlsZSA9IGxheW91dEJveC5zdHlsZSgpOwot
ICAgICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gbGF5b3V0Q29udGV4dC5kaXNwbGF5
Qm94Rm9yTGF5b3V0Qm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2NrKCkpLT53aWR0aCgpOwor
ICAgICAgICBhdXRvIHdpZHRoID0gc3R5bGUubG9naWNhbFdpZHRoKCk7CisgICAgICAgIGF1dG8q
IGNvbnRhaW5pbmdCbG9jayA9IGxheW91dEJveC5jb250YWluaW5nQmxvY2soKTsKKyAgICAgICAg
YXV0byBjb250YWluaW5nQmxvY2tXaWR0aCA9IGxheW91dENvbnRleHQuZGlzcGxheUJveEZvckxh
eW91dEJveCgqY29udGFpbmluZ0Jsb2NrKS0+d2lkdGgoKTsKKyAgICAgICAgYXV0byYgZGlzcGxh
eUJveCA9ICpsYXlvdXRDb250ZXh0LmRpc3BsYXlCb3hGb3JMYXlvdXRCb3gobGF5b3V0Qm94KTsK
IAogICAgICAgICBMYXlvdXRVbml0IGNvbXB1dGVkV2lkdGhWYWx1ZTsKLSAgICAgICAgYXV0byB3
aWR0aCA9IHN0eWxlLmxvZ2ljYWxXaWR0aCgpOwotICAgICAgICBpZiAod2lkdGguaXNBdXRvKCkp
IHsKLSAgICAgICAgICAgIGF1dG8mIGRpc3BsYXlCb3ggPSAqbGF5b3V0Q29udGV4dC5kaXNwbGF5
Qm94Rm9yTGF5b3V0Qm94KGxheW91dEJveCk7Ci0gICAgICAgICAgICBhdXRvIG1hcmdpbkxlZnQg
PSBkaXNwbGF5Qm94Lm1hcmdpbkxlZnQoKTsKLSAgICAgICAgICAgIGF1dG8gbWFyZ2luUmlnaHQg
PSBkaXNwbGF5Qm94Lm1hcmdpblJpZ2h0KCk7CisgICAgICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0
VW5pdD4gY29tcHV0ZWRNYXJnaW5MZWZ0VmFsdWU7CisgICAgICAgIHN0ZDo6b3B0aW9uYWw8TGF5
b3V0VW5pdD4gY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlOwogCi0gICAgICAgICAgICBhdXRvIHBh
ZGRpbmdMZWZ0ID0gZGlzcGxheUJveC5wYWRkaW5nTGVmdCgpOwotICAgICAgICAgICAgYXV0byBw
YWRkaW5nUmlnaHQgPSBkaXNwbGF5Qm94LnBhZGRpbmdSaWdodCgpOworICAgICAgICBhdXRvIG1h
cmdpbkxlZnQgPSBzdHlsZS5tYXJnaW5MZWZ0KCk7CisgICAgICAgIGlmICghbWFyZ2luTGVmdC5p
c0F1dG8oKSkKKyAgICAgICAgICAgIGNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlID0gdmFsdWVGb3JM
ZW5ndGgobWFyZ2luTGVmdCwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOwogCi0gICAgICAgICAgICBh
dXRvIGJvcmRlckxlZnQgPSBkaXNwbGF5Qm94LmJvcmRlckxlZnQoKTsKLSAgICAgICAgICAgIGF1
dG8gYm9yZGVyUmlnaHQgPSBkaXNwbGF5Qm94LmJvcmRlclJpZ2h0KCk7CisgICAgICAgIGF1dG8g
bWFyZ2luUmlnaHQgPSBzdHlsZS5tYXJnaW5SaWdodCgpOworICAgICAgICBpZiAoIW1hcmdpblJp
Z2h0LmlzQXV0bygpKQorICAgICAgICAgICAgY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlID0gdmFs
dWVGb3JMZW5ndGgobWFyZ2luUmlnaHQsIGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKIAotICAgICAg
ICAgICAgY29tcHV0ZWRXaWR0aFZhbHVlID0gY29udGFpbmluZ0Jsb2NrV2lkdGggLSAobWFyZ2lu
TGVmdCArIGJvcmRlckxlZnQgKyBwYWRkaW5nTGVmdCArIHBhZGRpbmdSaWdodCArIGJvcmRlclJp
Z2h0ICsgbWFyZ2luUmlnaHQpOwotICAgICAgICB9IGVsc2UKKyAgICAgICAgYXV0byBib3JkZXJM
ZWZ0ID0gZGlzcGxheUJveC5ib3JkZXJMZWZ0KCk7CisgICAgICAgIGF1dG8gYm9yZGVyUmlnaHQg
PSBkaXNwbGF5Qm94LmJvcmRlclJpZ2h0KCk7CisgICAgICAgIGF1dG8gcGFkZGluZ0xlZnQgPSBk
aXNwbGF5Qm94LnBhZGRpbmdMZWZ0KCk7CisgICAgICAgIGF1dG8gcGFkZGluZ1JpZ2h0ID0gZGlz
cGxheUJveC5wYWRkaW5nUmlnaHQoKTsKKworICAgICAgICAvLyAjMQorICAgICAgICBpZiAoIXdp
ZHRoLmlzQXV0bygpKSB7CiAgICAgICAgICAgICBjb21wdXRlZFdpZHRoVmFsdWUgPSB2YWx1ZUZv
ckxlbmd0aCh3aWR0aCwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOworICAgICAgICAgICAgYXV0byBo
b3Jpem9udGFsU3BhY2VGb3JNYXJnaW4gPSBjb250YWluaW5nQmxvY2tXaWR0aCAtIChjb21wdXRl
ZE1hcmdpbkxlZnRWYWx1ZS52YWx1ZV9vcigwKSArIGJvcmRlckxlZnQgKyBwYWRkaW5nTGVmdCAK
KyAgICAgICAgICAgICAgICArIGNvbXB1dGVkV2lkdGhWYWx1ZSArIHBhZGRpbmdSaWdodCArIGJv
cmRlclJpZ2h0ICsgY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlLnZhbHVlX29yKDApKTsKKworICAg
ICAgICAgICAgaWYgKGhvcml6b250YWxTcGFjZUZvck1hcmdpbiA8IDApIHsKKyAgICAgICAgICAg
ICAgICBpZiAoIWNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlKQorICAgICAgICAgICAgICAgICAgICBj
b21wdXRlZE1hcmdpbkxlZnRWYWx1ZSA9IExheW91dFVuaXQoMCk7CisgICAgICAgICAgICAgICAg
aWYgKCFjb21wdXRlZE1hcmdpblJpZ2h0VmFsdWUpCisgICAgICAgICAgICAgICAgICAgIGNvbXB1
dGVkTWFyZ2luUmlnaHRWYWx1ZSA9IExheW91dFVuaXQoMCk7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKworICAgICAgICAvLyAjMgorICAgICAgICBpZiAoIXdpZHRoLmlzQXV0bygpICYmICFt
YXJnaW5MZWZ0LmlzQXV0bygpICYmICFtYXJnaW5SaWdodC5pc0F1dG8oKSkgeworICAgICAgICAg
ICAgQVNTRVJUKGNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlKTsKKyAgICAgICAgICAgIEFTU0VSVChj
b21wdXRlZE1hcmdpblJpZ2h0VmFsdWUpOworCisgICAgICAgICAgICBpZiAoY29udGFpbmluZ0Js
b2NrLT5zdHlsZSgpLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24oKSkKKyAgICAgICAgICAgICAgICBj
b21wdXRlZE1hcmdpblJpZ2h0VmFsdWUgPSBjb250YWluaW5nQmxvY2tXaWR0aCAtICgqY29tcHV0
ZWRNYXJnaW5MZWZ0VmFsdWUgKyBib3JkZXJMZWZ0ICsgcGFkZGluZ0xlZnQgICsgY29tcHV0ZWRX
aWR0aFZhbHVlICsgcGFkZGluZ1JpZ2h0ICsgYm9yZGVyUmlnaHQpOworICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgIGNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlID0gY29udGFpbmluZ0Js
b2NrV2lkdGggLSAoKmNvbXB1dGVkTWFyZ2luUmlnaHRWYWx1ZSArIGJvcmRlckxlZnQgKyBwYWRk
aW5nTGVmdCAgKyBjb21wdXRlZFdpZHRoVmFsdWUgKyBwYWRkaW5nUmlnaHQgKyBib3JkZXJSaWdo
dCk7CisgICAgICAgIH0KKworICAgICAgICAvLyAjMworICAgICAgICBpZiAoIWNvbXB1dGVkTWFy
Z2luTGVmdFZhbHVlICYmICFtYXJnaW5SaWdodC5pc0F1dG8oKSAmJiAhd2lkdGguaXNBdXRvKCkp
IHsKKyAgICAgICAgICAgIEFTU0VSVChjb21wdXRlZE1hcmdpblJpZ2h0VmFsdWUpOworICAgICAg
ICAgICAgY29tcHV0ZWRNYXJnaW5MZWZ0VmFsdWUgPSBjb250YWluaW5nQmxvY2tXaWR0aCAtIChi
b3JkZXJMZWZ0ICsgcGFkZGluZ0xlZnQgICsgY29tcHV0ZWRXaWR0aFZhbHVlICsgcGFkZGluZ1Jp
Z2h0ICsgYm9yZGVyUmlnaHQgKyAqY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlKTsKKyAgICAgICAg
fSBlbHNlIGlmICghY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlICYmICFtYXJnaW5MZWZ0LmlzQXV0
bygpICYmICF3aWR0aC5pc0F1dG8oKSkgeworICAgICAgICAgICAgQVNTRVJUKGNvbXB1dGVkTWFy
Z2luTGVmdFZhbHVlKTsKKyAgICAgICAgICAgIGNvbXB1dGVkTWFyZ2luUmlnaHRWYWx1ZSA9IGNv
bnRhaW5pbmdCbG9ja1dpZHRoIC0gKCpjb21wdXRlZE1hcmdpbkxlZnRWYWx1ZSArIGJvcmRlckxl
ZnQgKyBwYWRkaW5nTGVmdCAgKyBjb21wdXRlZFdpZHRoVmFsdWUgKyBwYWRkaW5nUmlnaHQgKyBi
b3JkZXJSaWdodCk7CisgICAgICAgIH0KKworICAgICAgICAvLyAjNAorICAgICAgICBpZiAod2lk
dGguaXNBdXRvKCkpCisgICAgICAgICAgICBjb21wdXRlZFdpZHRoVmFsdWUgPSBjb250YWluaW5n
QmxvY2tXaWR0aCAtIChjb21wdXRlZE1hcmdpbkxlZnRWYWx1ZS52YWx1ZV9vcigwKSArIGJvcmRl
ckxlZnQgKyBwYWRkaW5nTGVmdCArIHBhZGRpbmdSaWdodCArIGJvcmRlclJpZ2h0ICsgY29tcHV0
ZWRNYXJnaW5SaWdodFZhbHVlLnZhbHVlX29yKDApKTsKKworICAgICAgICAvLyAjNQorICAgICAg
ICBpZiAoIWNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlICYmICFjb21wdXRlZE1hcmdpblJpZ2h0VmFs
dWUpIHsKKyAgICAgICAgICAgIGF1dG8gaG9yaXpvbnRhbFNwYWNlRm9yTWFyZ2luID0gY29udGFp
bmluZ0Jsb2NrV2lkdGggLSAoYm9yZGVyTGVmdCArIHBhZGRpbmdMZWZ0ICArIGNvbXB1dGVkV2lk
dGhWYWx1ZSArIHBhZGRpbmdSaWdodCArIGJvcmRlclJpZ2h0KTsKKyAgICAgICAgICAgIGNvbXB1
dGVkTWFyZ2luTGVmdFZhbHVlID0gY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlID0gaG9yaXpvbnRh
bFNwYWNlRm9yTWFyZ2luIC8gMjsKKyAgICAgICAgfQorCisgICAgICAgIEFTU0VSVChjb21wdXRl
ZE1hcmdpbkxlZnRWYWx1ZSk7CisgICAgICAgIEFTU0VSVChjb21wdXRlZE1hcmdpblJpZ2h0VmFs
dWUpOwogCi0gICAgICAgIHJldHVybiBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OldpZHRo
QW5kTWFyZ2luIHsgY29tcHV0ZWRXaWR0aFZhbHVlLCB7IH0gfTsKKyAgICAgICAgcmV0dXJuIEZv
cm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJnaW4geyBjb21wdXRlZFdpZHRo
VmFsdWUsIHsgKmNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlLCAqY29tcHV0ZWRNYXJnaW5SaWdodFZh
bHVlIH0gfTsKICAgICB9OwogCiAgICAgYXV0byBjb21wdXRlZFdpZHRoQW5kTWFyZ2luVmFsdWUg
PSBjb21wdXRlKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>341831</attachid>
            <date>2018-06-01 22:30:11 -0700</date>
            <delta_ts>2018-06-04 07:37:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>10615</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ODAxYWQzMjQwNC4uMGNiZWVlYzhhN2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxOC0wNi0wMSAgQWxhbiBLaW5zbGV5ICA8emFsYW5AYXBwbGUuY29tPgor
CisgICAgICAgIFtMRkNdIE1lcmdlIHdpZHRoIGFuZCBtYXJnaW4gY29tcHV0YXRpb24gZm9yIGJs
b2NrLWxldmVsLCBub24tcmVwbGFjZWQgYW5kIGlubGluZSxyZXBsYWNlZCBlbGVtZW50IGluIG5v
cm1hbCBmbG93CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODYyMjUKKworICAgICAgICBUaGlzIHBhdGNoIG1lcmdlcyB0aGUgd2lkdGggYW5kIGhvcml6
b250YWwgbWFyZ2luIGNvbXB1dGF0aW9uIGZvcgorICAgICAgICBodHRwczovL3d3dy53My5vcmcv
VFIvQ1NTMjIvdmlzdWRldC5odG1sI2lubGluZS1yZXBsYWNlZC13aWR0aCBhbmQgaHR0cHM6Ly93
d3cudzMub3JnL1RSL0NTUzIyL3Zpc3VkZXQuaHRtbCNibG9ja3dpZHRoCisKKyAgICAgICAgKiBs
YXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5saW5lUmVwbGFjZWRXaWR0aEFu
ZE1hcmdpbik6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRp
bmdDb250ZXh0R2VvbWV0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zv
cm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5GbG93Tm9uUmVwbGFjZWRXaWR0aEFuZE1hcmdp
bik6CisKIDIwMTgtMDYtMDEgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbTEZDXSBNZXJnZSB3aWR0aCBhbmQgaG9yaXpvbnRhbCBtYXJnaW4gY29tcHV0YXRpb24K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21l
dHJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5
LmNwcAppbmRleCBmZWRmZWQwODY1OC4uMWEyNmZlZjljZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKQEAgLTUxOSwxMSAr
NTE5LDEzIEBAIExheW91dFVuaXQgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVS
ZXBsYWNlZEhlaWdodChMYXlvdXRDb250ZXh0JiwgY29uCiAgICAgcmV0dXJuIGNvbXB1dGVkSGVp
Z2h0VmFsdWU7CiB9CiAKLUZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJn
aW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFy
Z2luKExheW91dENvbnRleHQmLCBjb25zdCBCb3gmIGxheW91dEJveCkKK0Zvcm1hdHRpbmdDb250
ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5
OjppbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKExheW91dENvbnRleHQmIGxheW91dENvbnRl
eHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94KQogewogICAgIEFTU0VSVCgobGF5b3V0Qm94LmlzT3V0
T2ZGbG93UG9zaXRpb25lZCgpIHx8IGxheW91dEJveC5pc0Zsb2F0aW5nUG9zaXRpb25lZCgpIHx8
IGxheW91dEJveC5pc0luRmxvdygpKSAmJiBsYXlvdXRCb3gucmVwbGFjZWQoKSk7CiAgICAgLy8g
MTAuMy4yIElubGluZSwgcmVwbGFjZWQgZWxlbWVudHMKICAgICAvLworICAgIC8vIEEgY29tcHV0
ZWQgdmFsdWUgb2YgJ2F1dG8nIGZvciAnbWFyZ2luLWxlZnQnIG9yICdtYXJnaW4tcmlnaHQnIGJl
Y29tZXMgYSB1c2VkIHZhbHVlIG9mICcwJy4KKyAgICAvLwogICAgIC8vIDEuIElmICdoZWlnaHQn
IGFuZCAnd2lkdGgnIGJvdGggaGF2ZSBjb21wdXRlZCB2YWx1ZXMgb2YgJ2F1dG8nIGFuZCB0aGUg
ZWxlbWVudCBhbHNvIGhhcyBhbiBpbnRyaW5zaWMgd2lkdGgsIHRoZW4gdGhhdCBpbnRyaW5zaWMg
d2lkdGggaXMgdGhlIHVzZWQgdmFsdWUgb2YgJ3dpZHRoJy4KICAgICAvLwogICAgIC8vIDIuIElm
ICdoZWlnaHQnIGFuZCAnd2lkdGgnIGJvdGggaGF2ZSBjb21wdXRlZCB2YWx1ZXMgb2YgJ2F1dG8n
IGFuZCB0aGUgZWxlbWVudCBoYXMgbm8gaW50cmluc2ljIHdpZHRoLCBidXQgZG9lcyBoYXZlIGFu
IGludHJpbnNpYyBoZWlnaHQgYW5kIGludHJpbnNpYyByYXRpbzsKQEAgLTUzOSwxMCArNTQxLDIx
IEBAIEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJnaW4gRm9ybWF0dGlu
Z0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVSCiAgICAgLy8gNS4gT3RoZXJ3aXNlLCBpZiAnd2lk
dGgnIGhhcyBhIGNvbXB1dGVkIHZhbHVlIG9mICdhdXRvJywgYnV0IG5vbmUgb2YgdGhlIGNvbmRp
dGlvbnMgYWJvdmUgYXJlIG1ldCwgdGhlbiB0aGUgdXNlZCB2YWx1ZSBvZiAnd2lkdGgnIGJlY29t
ZXMgMzAwcHguCiAgICAgLy8gICAgSWYgMzAwcHggaXMgdG9vIHdpZGUgdG8gZml0IHRoZSBkZXZp
Y2UsIFVBcyBzaG91bGQgdXNlIHRoZSB3aWR0aCBvZiB0aGUgbGFyZ2VzdCByZWN0YW5nbGUgdGhh
dCBoYXMgYSAyOjEgcmF0aW8gYW5kIGZpdHMgdGhlIGRldmljZSBpbnN0ZWFkLgogICAgIGF1dG8m
IHN0eWxlID0gbGF5b3V0Qm94LnN0eWxlKCk7CisgICAgTGF5b3V0VW5pdCBjb21wdXRlZFdpZHRo
VmFsdWU7CisgICAgTGF5b3V0VW5pdCBjb21wdXRlZE1hcmdpbkxlZnQ7CisgICAgTGF5b3V0VW5p
dCBjb21wdXRlZE1hcmdpblJpZ2h0OworCisgICAgeworICAgICAgICBhdXRvIG1hcmdpbkxlZnQg
PSBzdHlsZS5tYXJnaW5MZWZ0KCk7CisgICAgICAgIGF1dG8gbWFyZ2luUmlnaHQgPSBzdHlsZS5t
YXJnaW5SaWdodCgpOworICAgICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gbGF5b3V0
Q29udGV4dC5kaXNwbGF5Qm94Rm9yTGF5b3V0Qm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2Nr
KCkpLT53aWR0aCgpOworCisgICAgICAgIGNvbXB1dGVkTWFyZ2luTGVmdCA9IG1hcmdpbkxlZnQu
aXNBdXRvKCkgPyBMYXlvdXRVbml0KDApIDogdmFsdWVGb3JMZW5ndGgobWFyZ2luTGVmdCwgY29u
dGFpbmluZ0Jsb2NrV2lkdGgpOworICAgICAgICBjb21wdXRlZE1hcmdpblJpZ2h0ID0gbWFyZ2lu
UmlnaHQuaXNBdXRvKCkgPyBMYXlvdXRVbml0KDApIDogdmFsdWVGb3JMZW5ndGgobWFyZ2luUmln
aHQsIGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKKyAgICB9CisKICAgICBhdXRvIHdpZHRoID0gc3R5
bGUubG9naWNhbFdpZHRoKCk7CiAgICAgYXV0byBoZWlnaHQgPSBzdHlsZS5sb2dpY2FsSGVpZ2h0
KCk7Ci0KLSAgICBMYXlvdXRVbml0IGNvbXB1dGVkV2lkdGhWYWx1ZTsKICAgICBhdXRvIHJlcGxh
Y2VkID0gbGF5b3V0Qm94LnJlcGxhY2VkKCk7CiAgICAgQVNTRVJUKHJlcGxhY2VkKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1h
dHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9y
bWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwCmluZGV4IDg2NjFlYTAx
Njg3Li40YjVmZjI2MzdjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2Nr
Zm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dEdl
b21ldHJ5LmNwcApAQCAtMTIxLDI5ICsxMjEsOTQgQEAgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21l
dHJ5OjpXaWR0aEFuZE1hcmdpbiBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW4K
ICAgICAgICAgLy8gMTAuMy4zIEJsb2NrLWxldmVsLCBub24tcmVwbGFjZWQgZWxlbWVudHMgaW4g
bm9ybWFsIGZsb3cKICAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBjb25zdHJhaW50cyBtdXN0IGhv
bGQgYW1vbmcgdGhlIHVzZWQgdmFsdWVzIG9mIHRoZSBvdGhlciBwcm9wZXJ0aWVzOgogICAgICAg
ICAvLyAnbWFyZ2luLWxlZnQnICsgJ2JvcmRlci1sZWZ0LXdpZHRoJyArICdwYWRkaW5nLWxlZnQn
ICsgJ3dpZHRoJyArICdwYWRkaW5nLXJpZ2h0JyArICdib3JkZXItcmlnaHQtd2lkdGgnICsgJ21h
cmdpbi1yaWdodCcgPSB3aWR0aCBvZiBjb250YWluaW5nIGJsb2NrCisgICAgICAgIC8vCisgICAg
ICAgIC8vIDEuIElmICd3aWR0aCcgaXMgbm90ICdhdXRvJyBhbmQgJ2JvcmRlci1sZWZ0LXdpZHRo
JyArICdwYWRkaW5nLWxlZnQnICsgJ3dpZHRoJyArICdwYWRkaW5nLXJpZ2h0JyArICdib3JkZXIt
cmlnaHQtd2lkdGgnIAorICAgICAgICAvLyAgICAocGx1cyBhbnkgb2YgJ21hcmdpbi1sZWZ0JyBv
ciAnbWFyZ2luLXJpZ2h0JyB0aGF0IGFyZSBub3QgJ2F1dG8nKSBpcyBsYXJnZXIgdGhhbiB0aGUg
d2lkdGggb2YgdGhlIGNvbnRhaW5pbmcgYmxvY2ssIHRoZW4KKyAgICAgICAgLy8gICAgYW55ICdh
dXRvJyB2YWx1ZXMgZm9yICdtYXJnaW4tbGVmdCcgb3IgJ21hcmdpbi1yaWdodCcgYXJlLCBmb3Ig
dGhlIGZvbGxvd2luZyBydWxlcywgdHJlYXRlZCBhcyB6ZXJvLgorICAgICAgICAvLworICAgICAg
ICAvLyAyLiBJZiBhbGwgb2YgdGhlIGFib3ZlIGhhdmUgYSBjb21wdXRlZCB2YWx1ZSBvdGhlciB0
aGFuICdhdXRvJywgdGhlIHZhbHVlcyBhcmUgc2FpZCB0byBiZSAib3Zlci1jb25zdHJhaW5lZCIg
YW5kIG9uZSBvZiB0aGUgdXNlZCB2YWx1ZXMgd2lsbAorICAgICAgICAvLyAgICBoYXZlIHRvIGJl
IGRpZmZlcmVudCBmcm9tIGl0cyBjb21wdXRlZCB2YWx1ZS4gSWYgdGhlICdkaXJlY3Rpb24nIHBy
b3BlcnR5IG9mIHRoZSBjb250YWluaW5nIGJsb2NrIGhhcyB0aGUgdmFsdWUgJ2x0cicsIHRoZSBz
cGVjaWZpZWQgdmFsdWUKKyAgICAgICAgLy8gICAgb2YgJ21hcmdpbi1yaWdodCcgaXMgaWdub3Jl
ZCBhbmQgdGhlIHZhbHVlIGlzIGNhbGN1bGF0ZWQgc28gYXMgdG8gbWFrZSB0aGUgZXF1YWxpdHkg
dHJ1ZS4gSWYgdGhlIHZhbHVlIG9mICdkaXJlY3Rpb24nIGlzICdydGwnLAorICAgICAgICAvLyAg
ICB0aGlzIGhhcHBlbnMgdG8gJ21hcmdpbi1sZWZ0JyBpbnN0ZWFkLgorICAgICAgICAvLworICAg
ICAgICAvLyAzLiBJZiB0aGVyZSBpcyBleGFjdGx5IG9uZSB2YWx1ZSBzcGVjaWZpZWQgYXMgJ2F1
dG8nLCBpdHMgdXNlZCB2YWx1ZSBmb2xsb3dzIGZyb20gdGhlIGVxdWFsaXR5LgorICAgICAgICAv
LworICAgICAgICAvLyA0LiBJZiAnd2lkdGgnIGlzIHNldCB0byAnYXV0bycsIGFueSBvdGhlciAn
YXV0bycgdmFsdWVzIGJlY29tZSAnMCcgYW5kICd3aWR0aCcgZm9sbG93cyBmcm9tIHRoZSByZXN1
bHRpbmcgZXF1YWxpdHkuCisgICAgICAgIC8vCisgICAgICAgIC8vIDUuIElmIGJvdGggJ21hcmdp
bi1sZWZ0JyBhbmQgJ21hcmdpbi1yaWdodCcgYXJlICdhdXRvJywgdGhlaXIgdXNlZCB2YWx1ZXMg
YXJlIGVxdWFsLiBUaGlzIGhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IHdpdGggcmVz
cGVjdCB0byB0aGUKKyAgICAgICAgLy8gICAgZWRnZXMgb2YgdGhlIGNvbnRhaW5pbmcgYmxvY2su
CiAKLSAgICAgICAgLy8gSWYgJ3dpZHRoJyBpcyBzZXQgdG8gJ2F1dG8nLCBhbnkgb3RoZXIgJ2F1
dG8nIHZhbHVlcyBiZWNvbWUgJzAnIGFuZCAnd2lkdGgnIGZvbGxvd3MgZnJvbSB0aGUgcmVzdWx0
aW5nIGVxdWFsaXR5LgogICAgICAgICBhdXRvJiBzdHlsZSA9IGxheW91dEJveC5zdHlsZSgpOwot
ICAgICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gbGF5b3V0Q29udGV4dC5kaXNwbGF5
Qm94Rm9yTGF5b3V0Qm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2NrKCkpLT53aWR0aCgpOwor
ICAgICAgICBhdXRvIHdpZHRoID0gc3R5bGUubG9naWNhbFdpZHRoKCk7CisgICAgICAgIGF1dG8q
IGNvbnRhaW5pbmdCbG9jayA9IGxheW91dEJveC5jb250YWluaW5nQmxvY2soKTsKKyAgICAgICAg
YXV0byBjb250YWluaW5nQmxvY2tXaWR0aCA9IGxheW91dENvbnRleHQuZGlzcGxheUJveEZvckxh
eW91dEJveCgqY29udGFpbmluZ0Jsb2NrKS0+d2lkdGgoKTsKKyAgICAgICAgYXV0byYgZGlzcGxh
eUJveCA9ICpsYXlvdXRDb250ZXh0LmRpc3BsYXlCb3hGb3JMYXlvdXRCb3gobGF5b3V0Qm94KTsK
IAogICAgICAgICBMYXlvdXRVbml0IGNvbXB1dGVkV2lkdGhWYWx1ZTsKLSAgICAgICAgYXV0byB3
aWR0aCA9IHN0eWxlLmxvZ2ljYWxXaWR0aCgpOwotICAgICAgICBpZiAod2lkdGguaXNBdXRvKCkp
IHsKLSAgICAgICAgICAgIGF1dG8mIGRpc3BsYXlCb3ggPSAqbGF5b3V0Q29udGV4dC5kaXNwbGF5
Qm94Rm9yTGF5b3V0Qm94KGxheW91dEJveCk7Ci0gICAgICAgICAgICBhdXRvIG1hcmdpbkxlZnQg
PSBkaXNwbGF5Qm94Lm1hcmdpbkxlZnQoKTsKLSAgICAgICAgICAgIGF1dG8gbWFyZ2luUmlnaHQg
PSBkaXNwbGF5Qm94Lm1hcmdpblJpZ2h0KCk7CisgICAgICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0
VW5pdD4gY29tcHV0ZWRNYXJnaW5MZWZ0VmFsdWU7CisgICAgICAgIHN0ZDo6b3B0aW9uYWw8TGF5
b3V0VW5pdD4gY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlOwogCi0gICAgICAgICAgICBhdXRvIHBh
ZGRpbmdMZWZ0ID0gZGlzcGxheUJveC5wYWRkaW5nTGVmdCgpOwotICAgICAgICAgICAgYXV0byBw
YWRkaW5nUmlnaHQgPSBkaXNwbGF5Qm94LnBhZGRpbmdSaWdodCgpOworICAgICAgICBhdXRvIG1h
cmdpbkxlZnQgPSBzdHlsZS5tYXJnaW5MZWZ0KCk7CisgICAgICAgIGlmICghbWFyZ2luTGVmdC5p
c0F1dG8oKSkKKyAgICAgICAgICAgIGNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlID0gdmFsdWVGb3JM
ZW5ndGgobWFyZ2luTGVmdCwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOwogCi0gICAgICAgICAgICBh
dXRvIGJvcmRlckxlZnQgPSBkaXNwbGF5Qm94LmJvcmRlckxlZnQoKTsKLSAgICAgICAgICAgIGF1
dG8gYm9yZGVyUmlnaHQgPSBkaXNwbGF5Qm94LmJvcmRlclJpZ2h0KCk7CisgICAgICAgIGF1dG8g
bWFyZ2luUmlnaHQgPSBzdHlsZS5tYXJnaW5SaWdodCgpOworICAgICAgICBpZiAoIW1hcmdpblJp
Z2h0LmlzQXV0bygpKQorICAgICAgICAgICAgY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlID0gdmFs
dWVGb3JMZW5ndGgobWFyZ2luUmlnaHQsIGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKIAotICAgICAg
ICAgICAgY29tcHV0ZWRXaWR0aFZhbHVlID0gY29udGFpbmluZ0Jsb2NrV2lkdGggLSAobWFyZ2lu
TGVmdCArIGJvcmRlckxlZnQgKyBwYWRkaW5nTGVmdCArIHBhZGRpbmdSaWdodCArIGJvcmRlclJp
Z2h0ICsgbWFyZ2luUmlnaHQpOwotICAgICAgICB9IGVsc2UKKyAgICAgICAgYXV0byBib3JkZXJM
ZWZ0ID0gZGlzcGxheUJveC5ib3JkZXJMZWZ0KCk7CisgICAgICAgIGF1dG8gYm9yZGVyUmlnaHQg
PSBkaXNwbGF5Qm94LmJvcmRlclJpZ2h0KCk7CisgICAgICAgIGF1dG8gcGFkZGluZ0xlZnQgPSBk
aXNwbGF5Qm94LnBhZGRpbmdMZWZ0KCk7CisgICAgICAgIGF1dG8gcGFkZGluZ1JpZ2h0ID0gZGlz
cGxheUJveC5wYWRkaW5nUmlnaHQoKTsKKworICAgICAgICAvLyAjMQorICAgICAgICBpZiAoIXdp
ZHRoLmlzQXV0bygpKSB7CiAgICAgICAgICAgICBjb21wdXRlZFdpZHRoVmFsdWUgPSB2YWx1ZUZv
ckxlbmd0aCh3aWR0aCwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOworICAgICAgICAgICAgYXV0byBo
b3Jpem9udGFsU3BhY2VGb3JNYXJnaW4gPSBjb250YWluaW5nQmxvY2tXaWR0aCAtIChjb21wdXRl
ZE1hcmdpbkxlZnRWYWx1ZS52YWx1ZV9vcigwKSArIGJvcmRlckxlZnQgKyBwYWRkaW5nTGVmdCAK
KyAgICAgICAgICAgICAgICArIGNvbXB1dGVkV2lkdGhWYWx1ZSArIHBhZGRpbmdSaWdodCArIGJv
cmRlclJpZ2h0ICsgY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlLnZhbHVlX29yKDApKTsKKworICAg
ICAgICAgICAgaWYgKGhvcml6b250YWxTcGFjZUZvck1hcmdpbiA8IDApIHsKKyAgICAgICAgICAg
ICAgICBpZiAoIWNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlKQorICAgICAgICAgICAgICAgICAgICBj
b21wdXRlZE1hcmdpbkxlZnRWYWx1ZSA9IExheW91dFVuaXQoMCk7CisgICAgICAgICAgICAgICAg
aWYgKCFjb21wdXRlZE1hcmdpblJpZ2h0VmFsdWUpCisgICAgICAgICAgICAgICAgICAgIGNvbXB1
dGVkTWFyZ2luUmlnaHRWYWx1ZSA9IExheW91dFVuaXQoMCk7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKworICAgICAgICAvLyAjMgorICAgICAgICBpZiAoIXdpZHRoLmlzQXV0bygpICYmICFt
YXJnaW5MZWZ0LmlzQXV0bygpICYmICFtYXJnaW5SaWdodC5pc0F1dG8oKSkgeworICAgICAgICAg
ICAgQVNTRVJUKGNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlKTsKKyAgICAgICAgICAgIEFTU0VSVChj
b21wdXRlZE1hcmdpblJpZ2h0VmFsdWUpOworCisgICAgICAgICAgICBpZiAoY29udGFpbmluZ0Js
b2NrLT5zdHlsZSgpLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24oKSkKKyAgICAgICAgICAgICAgICBj
b21wdXRlZE1hcmdpblJpZ2h0VmFsdWUgPSBjb250YWluaW5nQmxvY2tXaWR0aCAtICgqY29tcHV0
ZWRNYXJnaW5MZWZ0VmFsdWUgKyBib3JkZXJMZWZ0ICsgcGFkZGluZ0xlZnQgICsgY29tcHV0ZWRX
aWR0aFZhbHVlICsgcGFkZGluZ1JpZ2h0ICsgYm9yZGVyUmlnaHQpOworICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgIGNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlID0gY29udGFpbmluZ0Js
b2NrV2lkdGggLSAoYm9yZGVyTGVmdCArIHBhZGRpbmdMZWZ0ICArIGNvbXB1dGVkV2lkdGhWYWx1
ZSArIHBhZGRpbmdSaWdodCArIGJvcmRlclJpZ2h0ICsgKmNvbXB1dGVkTWFyZ2luUmlnaHRWYWx1
ZSk7CisgICAgICAgIH0KKworICAgICAgICAvLyAjMworICAgICAgICBpZiAoIWNvbXB1dGVkTWFy
Z2luTGVmdFZhbHVlICYmICFtYXJnaW5SaWdodC5pc0F1dG8oKSAmJiAhd2lkdGguaXNBdXRvKCkp
IHsKKyAgICAgICAgICAgIEFTU0VSVChjb21wdXRlZE1hcmdpblJpZ2h0VmFsdWUpOworICAgICAg
ICAgICAgY29tcHV0ZWRNYXJnaW5MZWZ0VmFsdWUgPSBjb250YWluaW5nQmxvY2tXaWR0aCAtIChi
b3JkZXJMZWZ0ICsgcGFkZGluZ0xlZnQgICsgY29tcHV0ZWRXaWR0aFZhbHVlICsgcGFkZGluZ1Jp
Z2h0ICsgYm9yZGVyUmlnaHQgKyAqY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlKTsKKyAgICAgICAg
fSBlbHNlIGlmICghY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlICYmICFtYXJnaW5MZWZ0LmlzQXV0
bygpICYmICF3aWR0aC5pc0F1dG8oKSkgeworICAgICAgICAgICAgQVNTRVJUKGNvbXB1dGVkTWFy
Z2luTGVmdFZhbHVlKTsKKyAgICAgICAgICAgIGNvbXB1dGVkTWFyZ2luUmlnaHRWYWx1ZSA9IGNv
bnRhaW5pbmdCbG9ja1dpZHRoIC0gKCpjb21wdXRlZE1hcmdpbkxlZnRWYWx1ZSArIGJvcmRlckxl
ZnQgKyBwYWRkaW5nTGVmdCAgKyBjb21wdXRlZFdpZHRoVmFsdWUgKyBwYWRkaW5nUmlnaHQgKyBi
b3JkZXJSaWdodCk7CisgICAgICAgIH0KKworICAgICAgICAvLyAjNAorICAgICAgICBpZiAod2lk
dGguaXNBdXRvKCkpCisgICAgICAgICAgICBjb21wdXRlZFdpZHRoVmFsdWUgPSBjb250YWluaW5n
QmxvY2tXaWR0aCAtIChjb21wdXRlZE1hcmdpbkxlZnRWYWx1ZS52YWx1ZV9vcigwKSArIGJvcmRl
ckxlZnQgKyBwYWRkaW5nTGVmdCArIHBhZGRpbmdSaWdodCArIGJvcmRlclJpZ2h0ICsgY29tcHV0
ZWRNYXJnaW5SaWdodFZhbHVlLnZhbHVlX29yKDApKTsKKworICAgICAgICAvLyAjNQorICAgICAg
ICBpZiAoIWNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlICYmICFjb21wdXRlZE1hcmdpblJpZ2h0VmFs
dWUpIHsKKyAgICAgICAgICAgIGF1dG8gaG9yaXpvbnRhbFNwYWNlRm9yTWFyZ2luID0gY29udGFp
bmluZ0Jsb2NrV2lkdGggLSAoYm9yZGVyTGVmdCArIHBhZGRpbmdMZWZ0ICArIGNvbXB1dGVkV2lk
dGhWYWx1ZSArIHBhZGRpbmdSaWdodCArIGJvcmRlclJpZ2h0KTsKKyAgICAgICAgICAgIGNvbXB1
dGVkTWFyZ2luTGVmdFZhbHVlID0gY29tcHV0ZWRNYXJnaW5SaWdodFZhbHVlID0gaG9yaXpvbnRh
bFNwYWNlRm9yTWFyZ2luIC8gMjsKKyAgICAgICAgfQorCisgICAgICAgIEFTU0VSVChjb21wdXRl
ZE1hcmdpbkxlZnRWYWx1ZSk7CisgICAgICAgIEFTU0VSVChjb21wdXRlZE1hcmdpblJpZ2h0VmFs
dWUpOwogCi0gICAgICAgIHJldHVybiBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OldpZHRo
QW5kTWFyZ2luIHsgY29tcHV0ZWRXaWR0aFZhbHVlLCB7IH0gfTsKKyAgICAgICAgcmV0dXJuIEZv
cm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6V2lkdGhBbmRNYXJnaW4geyBjb21wdXRlZFdpZHRo
VmFsdWUsIHsgKmNvbXB1dGVkTWFyZ2luTGVmdFZhbHVlLCAqY29tcHV0ZWRNYXJnaW5SaWdodFZh
bHVlIH0gfTsKICAgICB9OwogCiAgICAgYXV0byBjb21wdXRlZFdpZHRoQW5kTWFyZ2luVmFsdWUg
PSBjb21wdXRlKCk7Cg==
</data>
<flag name="review"
          id="359992"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>