<?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>193183</bug_id>
          
          <creation_ts>2019-01-06 17:21:39 -0800</creation_ts>
          <short_desc>[LFC][BFC] Margin collapsing should not be limited to in-flow non-replaced boxes.</short_desc>
          <delta_ts>2019-01-07 08:19:29 -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>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>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>1492165</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-01-06 17:21:39 -0800</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492166</commentid>
    <comment_count>1</comment_count>
      <attachid>358469</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-01-06 17:23:04 -0800</bug_when>
    <thetext>Created attachment 358469
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492266</commentid>
    <comment_count>2</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-01-07 08:19:00 -0800</bug_when>
    <thetext>Committed r239675: &lt;https://trac.webkit.org/changeset/239675&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492267</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-01-07 08:19:29 -0800</bug_when>
    <thetext>&lt;rdar://problem/47085369&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358469</attachid>
            <date>2019-01-06 17:23:04 -0800</date>
            <delta_ts>2019-01-06 23:12:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>Patch.txt</filename>
            <type>text/plain</type>
            <size>19425</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzZDQ1NWU1NmM0ZS4uZDg0YzdkZTI0NTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOSBAQAorMjAxOS0wMS0wNiAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgor
CisgICAgICAgIFtMRkNdW0JGQ10gTWFyZ2luIGNvbGxhcHNpbmcgc2hvdWxkIG5vdCBiZSBsaW1p
dGVkIHRvIGluLWZsb3cgbm9uLXJlcGxhY2VkIGJveGVzLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkzMTgzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBsYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZU91
dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkgY29uc3QpOgorICAgICAgICAqIGxheW91dC9Gb3JtYXR0
aW5nQ29udGV4dEdlb21ldHJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rm9ybWF0
dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dOb25SZXBsYWNlZFZlcnRpY2FsR2VvbWV0
cnkpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0
cnk6Om91dE9mRmxvd1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeSk6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6Y29tcGxpY2F0ZWRDYXNlcyk6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6
ZmxvYXRpbmdOb25SZXBsYWNlZFdpZHRoQW5kTWFyZ2luKToKKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dDo6Rm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVSZXBsYWNlZEhlaWdodEFu
ZE1hcmdpbik6CisgICAgICAgICogbGF5b3V0L0xheW91dFVuaXRzLmg6CisgICAgICAgICogbGF5
b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUhlaWdodEFu
ZE1hcmdpbiBjb25zdCk6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zv
cm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpC
bG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5GbG93Tm9uUmVwbGFjZWRIZWlnaHRB
bmRNYXJnaW4pOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250
ZXh0OjpHZW9tZXRyeTo6aW5GbG93SGVpZ2h0QW5kTWFyZ2luKToKKyAgICAgICAgKiBsYXlvdXQv
YmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHRRdWlya3MuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpRdWlya3M6OnN0cmV0
Y2hlZEhlaWdodCk6CisgICAgICAgICogbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9y
bWF0dGluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3Jt
YXR0aW5nQ29udGV4dDo6Y29tcHV0ZUhlaWdodEFuZE1hcmdpbiBjb25zdCk6CisKIDIwMTktMDEt
MDYgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZDXVtCRkNd
IE1vdmUgTWFyZ2luQ29sbGFwc2UgZnJvbSBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRy
eSB0byBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1h
dHRpbmdDb250ZXh0LmNwcAppbmRleCAwY2NmMmQxOWViMi4uYTc2N2U5M2U5NWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcApAQCAtMTE1LDEyICsxMTUs
MTEgQEAgdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZU91dE9mRmxvd1ZlcnRpY2FsR2Vv
bWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gpIGMKICAgICB9CiAKICAgICBhdXRvJiBkaXNwbGF5
Qm94ID0gbGF5b3V0U3RhdGUuZGlzcGxheUJveEZvckxheW91dEJveChsYXlvdXRCb3gpOwotICAg
IC8vIE1hcmdpbnMgb2YgYWJzb2x1dGVseSBwb3NpdGlvbmVkIGJveGVzIGRvIG5vdCBjb2xsYXBz
ZQotICAgIEFTU0VSVCghdmVydGljYWxHZW9tZXRyeS5oZWlnaHRBbmRNYXJnaW4udXNlZE1hcmdp
bi5oYXNDb2xsYXBzZWRWYWx1ZXMoKSk7Ci0gICAgYXV0byBub25Db2xsYXBzZWRWZXJ0aWNhbE1h
cmdpbiA9IHZlcnRpY2FsR2VvbWV0cnkuaGVpZ2h0QW5kTWFyZ2luLnVzZWRNYXJnaW4ubm9uQ29s
bGFwc2VkVmFsdWVzKCk7CisgICAgYXV0byBub25Db2xsYXBzZWRWZXJ0aWNhbE1hcmdpbiA9IHZl
cnRpY2FsR2VvbWV0cnkuaGVpZ2h0QW5kTWFyZ2luLm5vbkNvbGxhcHNlZE1hcmdpbjsKICAgICBk
aXNwbGF5Qm94LnNldFRvcCh2ZXJ0aWNhbEdlb21ldHJ5LnRvcCArIG5vbkNvbGxhcHNlZFZlcnRp
Y2FsTWFyZ2luLmJlZm9yZSk7CiAgICAgZGlzcGxheUJveC5zZXRDb250ZW50Qm94SGVpZ2h0KHZl
cnRpY2FsR2VvbWV0cnkuaGVpZ2h0QW5kTWFyZ2luLmhlaWdodCk7Ci0gICAgZGlzcGxheUJveC5z
ZXRWZXJ0aWNhbE1hcmdpbih2ZXJ0aWNhbEdlb21ldHJ5LmhlaWdodEFuZE1hcmdpbi51c2VkTWFy
Z2luKTsKKyAgICAvLyBNYXJnaW5zIG9mIGFic29sdXRlbHkgcG9zaXRpb25lZCBib3hlcyBkbyBu
b3QgY29sbGFwc2UKKyAgICBkaXNwbGF5Qm94LnNldFZlcnRpY2FsTWFyZ2luKHsgbm9uQ29sbGFw
c2VkVmVydGljYWxNYXJnaW4sIHsgfSB9KTsKIH0KIAogdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6
Y29tcHV0ZUJvcmRlckFuZFBhZGRpbmcoY29uc3QgQm94JiBsYXlvdXRCb3gpIGNvbnN0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAK
aW5kZXggY2NhNmVmOWExZDkuLjc1ZTdiN2VlNjljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwCkBAIC0zNTEsNyArMzUxLDcg
QEAgVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxv
d05vblJlcGxhY2VkVmVydGljYWxHZW9tZXQKICAgICBBU1NFUlQoaGVpZ2h0KTsKIAogICAgIExP
R19XSVRIX1NUUkVBTShGb3JtYXR0aW5nQ29udGV4dExheW91dCwgc3RyZWFtIDw8ICJbUG9zaXRp
b25dW0hlaWdodF1bTWFyZ2luXSAtPiBvdXQtb2YtZmxvdyBub24tcmVwbGFjZWQgLT4gdG9wKCIg
PDwgKnRvcCA8PCAicHgpIGJvdHRvbSgiICA8PCAqYm90dG9tIDw8ICJweCkgaGVpZ2h0KCIgPDwg
KmhlaWdodCA8PCAicHgpIG1hcmdpbigiIDw8IHVzZWRWZXJ0aWNhbE1hcmdpbi5iZWZvcmUgPDwg
InB4LCAiICA8PCB1c2VkVmVydGljYWxNYXJnaW4uYWZ0ZXIgPDwgInB4KSBsYXlvdXRCb3goIiA8
PCAmbGF5b3V0Qm94IDw8ICIpIik7Ci0gICAgcmV0dXJuIHsgKnRvcCwgKmJvdHRvbSwgeyAqaGVp
Z2h0LCB7IHVzZWRWZXJ0aWNhbE1hcmdpbiwgeyB9IH0gfSB9OworICAgIHJldHVybiB7ICp0b3As
ICpib3R0b20sIHsgKmhlaWdodCwgdXNlZFZlcnRpY2FsTWFyZ2luIH0gfTsKIH0KIAogSG9yaXpv
bnRhbEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVw
bGFjZWRIb3Jpem9udGFsR2VvbWV0cnkoTGF5b3V0U3RhdGUmIGxheW91dFN0YXRlLCBjb25zdCBC
b3gmIGxheW91dEJveCwgT3B0aW9uYWw8TGF5b3V0VW5pdD4gdXNlZFdpZHRoKQpAQCAtNTU4LDcg
KzU1OCw3IEBAIFZlcnRpY2FsR2VvbWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5Ojpv
dXRPZkZsb3dSZXBsYWNlZFZlcnRpY2FsR2VvbWV0cnkoCiAgICAgICAgIGJvdHRvbSA9IGNvbnRh
aW5pbmdCbG9ja0hlaWdodCAtICgqdG9wICsgdXNlZFZlcnRpY2FsTWFyZ2luLmJlZm9yZSArIGJv
cmRlclRvcCArIHBhZGRpbmdUb3AgKyBoZWlnaHQgKyBwYWRkaW5nQm90dG9tICsgYm9yZGVyQm90
dG9tICsgdXNlZFZlcnRpY2FsTWFyZ2luLmFmdGVyKTsgCiAKICAgICBMT0dfV0lUSF9TVFJFQU0o
Rm9ybWF0dGluZ0NvbnRleHRMYXlvdXQsIHN0cmVhbSA8PCAiW1Bvc2l0aW9uXVtIZWlnaHRdW01h
cmdpbl0gLT4gb3V0LW9mLWZsb3cgcmVwbGFjZWQgLT4gdG9wKCIgPDwgKnRvcCA8PCAicHgpIGJv
dHRvbSgiICA8PCAqYm90dG9tIDw8ICJweCkgaGVpZ2h0KCIgPDwgaGVpZ2h0IDw8ICJweCkgbWFy
Z2luKCIgPDwgdXNlZFZlcnRpY2FsTWFyZ2luLmJlZm9yZSA8PCAicHgsICIgIDw8IHVzZWRWZXJ0
aWNhbE1hcmdpbi5hZnRlciA8PCAicHgpIGxheW91dEJveCgiIDw8ICZsYXlvdXRCb3ggPDwgIiki
KTsKLSAgICByZXR1cm4geyAqdG9wLCAqYm90dG9tLCB7IGhlaWdodCwgeyB1c2VkVmVydGljYWxN
YXJnaW4sIHsgfSB9IH0gfTsKKyAgICByZXR1cm4geyAqdG9wLCAqYm90dG9tLCB7IGhlaWdodCwg
dXNlZFZlcnRpY2FsTWFyZ2luIH0gfTsKIH0KIAogSG9yaXpvbnRhbEdlb21ldHJ5IEZvcm1hdHRp
bmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93UmVwbGFjZWRIb3Jpem9udGFsR2VvbWV0cnko
Y29uc3QgTGF5b3V0U3RhdGUmIGxheW91dFN0YXRlLCBjb25zdCBCb3gmIGxheW91dEJveCwgT3B0
aW9uYWw8TGF5b3V0VW5pdD4gdXNlZFdpZHRoKQpAQCAtNjgyLDcgKzY4Miw3IEBAIEhlaWdodEFu
ZE1hcmdpbiBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmNvbXBsaWNhdGVkQ2FzZXMoY29u
c3QgTGF5b3V0U3RhdGUmCiAgICAgQVNTRVJUKGhlaWdodCk7CiAKICAgICBMT0dfV0lUSF9TVFJF
QU0oRm9ybWF0dGluZ0NvbnRleHRMYXlvdXQsIHN0cmVhbSA8PCAiW0hlaWdodF1bTWFyZ2luXSAt
PiBmbG9hdGluZyBub24tcmVwbGFjZWQgLT4gaGVpZ2h0KCIgPDwgKmhlaWdodCA8PCAicHgpIG1h
cmdpbigiIDw8IHVzZWRWZXJ0aWNhbE1hcmdpbi5iZWZvcmUgPDwgInB4LCAiIDw8IHVzZWRWZXJ0
aWNhbE1hcmdpbi5hZnRlciA8PCAicHgpIC0+IGxheW91dEJveCgiIDw8ICZsYXlvdXRCb3ggPDwg
IikiKTsKLSAgICByZXR1cm4gSGVpZ2h0QW5kTWFyZ2luIHsgKmhlaWdodCwgeyB1c2VkVmVydGlj
YWxNYXJnaW4sIHsgfSB9IH07CisgICAgcmV0dXJuIEhlaWdodEFuZE1hcmdpbiB7ICpoZWlnaHQs
IHVzZWRWZXJ0aWNhbE1hcmdpbiB9OwogfQogCiBXaWR0aEFuZE1hcmdpbiBGb3JtYXR0aW5nQ29u
dGV4dDo6R2VvbWV0cnk6OmZsb2F0aW5nTm9uUmVwbGFjZWRXaWR0aEFuZE1hcmdpbihMYXlvdXRT
dGF0ZSYgbGF5b3V0U3RhdGUsIGNvbnN0IEJveCYgbGF5b3V0Qm94LCBPcHRpb25hbDxMYXlvdXRV
bml0PiB1c2VkV2lkdGgpCkBAIC02OTYsMTYgKzY5NiwxNyBAQCBXaWR0aEFuZE1hcmdpbiBGb3Jt
YXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmZsb2F0aW5nTm9uUmVwbGFjZWRXaWR0aEFuZE1hcmdp
bihMYQogCiAgICAgYXV0byYgY29udGFpbmluZ0Jsb2NrID0gKmxheW91dEJveC5jb250YWluaW5n
QmxvY2soKTsKICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gbGF5b3V0U3RhdGUuZGlz
cGxheUJveEZvckxheW91dEJveChjb250YWluaW5nQmxvY2spLmNvbnRlbnRCb3hXaWR0aCgpOwor
ICAgIGF1dG8gY29tcHV0ZWRIb3Jpem9udGFsTWFyZ2luID0gR2VvbWV0cnk6OmNvbXB1dGVkSG9y
aXpvbnRhbE1hcmdpbihsYXlvdXRTdGF0ZSwgbGF5b3V0Qm94KTsKIAogICAgIC8vICMxCi0gICAg
YXV0byBjb21wdXRlZEhvcml6b250YWxNYXJnaW4gPSBHZW9tZXRyeTo6Y29tcHV0ZWRIb3Jpem9u
dGFsTWFyZ2luKGxheW91dFN0YXRlLCBsYXlvdXRCb3gpOworICAgIGF1dG8gdXNlZEhvcml6b250
YWxsTWFyZ2luID0gVXNlZEhvcml6b250YWxNYXJnaW4geyBjb21wdXRlZEhvcml6b250YWxNYXJn
aW4uc3RhcnQudmFsdWVPcigwKSwgY29tcHV0ZWRIb3Jpem9udGFsTWFyZ2luLmVuZC52YWx1ZU9y
KDApIH07CiAgICAgLy8gIzIKICAgICBhdXRvIHdpZHRoID0gY29tcHV0ZWRWYWx1ZUlmTm90QXV0
byh1c2VkV2lkdGggPyBMZW5ndGggeyB1c2VkV2lkdGgudmFsdWUoKSwgRml4ZWQgfSA6IGxheW91
dEJveC5zdHlsZSgpLmxvZ2ljYWxXaWR0aCgpLCBjb250YWluaW5nQmxvY2tXaWR0aCk7CiAgICAg
aWYgKCF3aWR0aCkKICAgICAgICAgd2lkdGggPSBzaHJpbmtUb0ZpdFdpZHRoKGxheW91dFN0YXRl
LCBsYXlvdXRCb3gpOwogCi0gICAgTE9HX1dJVEhfU1RSRUFNKEZvcm1hdHRpbmdDb250ZXh0TGF5
b3V0LCBzdHJlYW0gPDwgIltXaWR0aF1bTWFyZ2luXSAtPiBmbG9hdGluZyBub24tcmVwbGFjZWQg
LT4gd2lkdGgoIiA8PCAqd2lkdGggPDwgInB4KSBtYXJnaW4oIiA8PCBjb21wdXRlZEhvcml6b250
YWxNYXJnaW4uc3RhcnQudmFsdWVPcigwX2x1KSA8PCAicHgsICIgPDwgY29tcHV0ZWRIb3Jpem9u
dGFsTWFyZ2luLmVuZC52YWx1ZU9yKDBfbHUpIDw8ICJweCkgLT4gbGF5b3V0Qm94KCIgPDwgJmxh
eW91dEJveCA8PCAiKSIpOwotICAgIHJldHVybiBXaWR0aEFuZE1hcmdpbiB7ICp3aWR0aCwgeyBj
b21wdXRlZEhvcml6b250YWxNYXJnaW4uc3RhcnQudmFsdWVPcigwX2x1KSwgY29tcHV0ZWRIb3Jp
em9udGFsTWFyZ2luLmVuZC52YWx1ZU9yKDBfbHUpIH0sIGNvbXB1dGVkSG9yaXpvbnRhbE1hcmdp
biB9OworICAgIExPR19XSVRIX1NUUkVBTShGb3JtYXR0aW5nQ29udGV4dExheW91dCwgc3RyZWFt
IDw8ICJbV2lkdGhdW01hcmdpbl0gLT4gZmxvYXRpbmcgbm9uLXJlcGxhY2VkIC0+IHdpZHRoKCIg
PDwgKndpZHRoIDw8ICJweCkgbWFyZ2luKCIgPDwgdXNlZEhvcml6b250YWxsTWFyZ2luLnN0YXJ0
IDw8ICJweCwgIiA8PCB1c2VkSG9yaXpvbnRhbGxNYXJnaW4uZW5kIDw8ICJweCkgLT4gbGF5b3V0
Qm94KCIgPDwgJmxheW91dEJveCA8PCAiKSIpOworICAgIHJldHVybiBXaWR0aEFuZE1hcmdpbiB7
ICp3aWR0aCwgdXNlZEhvcml6b250YWxsTWFyZ2luLCBjb21wdXRlZEhvcml6b250YWxNYXJnaW4g
fTsKIH0KIAogSGVpZ2h0QW5kTWFyZ2luIEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6Zmxv
YXRpbmdSZXBsYWNlZEhlaWdodEFuZE1hcmdpbihjb25zdCBMYXlvdXRTdGF0ZSYgbGF5b3V0U3Rh
dGUsIGNvbnN0IEJveCYgbGF5b3V0Qm94LCBPcHRpb25hbDxMYXlvdXRVbml0PiB1c2VkSGVpZ2h0
KQpAQCAtODEwLDcgKzgxMSw3IEBAIEhlaWdodEFuZE1hcmdpbiBGb3JtYXR0aW5nQ29udGV4dDo6
R2VvbWV0cnk6OmlubGluZVJlcGxhY2VkSGVpZ2h0QW5kTWFyZ2luKGNvbnN0CiAgICAgQVNTRVJU
KGhlaWdodCk7CiAKICAgICBMT0dfV0lUSF9TVFJFQU0oRm9ybWF0dGluZ0NvbnRleHRMYXlvdXQs
IHN0cmVhbSA8PCAiW0hlaWdodF1bTWFyZ2luXSAtPiBpbmZsb3cgcmVwbGFjZWQgLT4gaGVpZ2h0
KCIgPDwgKmhlaWdodCA8PCAicHgpIG1hcmdpbigiIDw8IHVzZWRWZXJ0aWNhbE1hcmdpbi5iZWZv
cmUgPDwgInB4LCAiIDw8IHVzZWRWZXJ0aWNhbE1hcmdpbi5hZnRlciA8PCAicHgpIC0+IGxheW91
dEJveCgiIDw8ICZsYXlvdXRCb3ggPDwgIikiKTsKLSAgICByZXR1cm4geyAqaGVpZ2h0LCB7IHVz
ZWRWZXJ0aWNhbE1hcmdpbiwgeyB9IH0gfTsKKyAgICByZXR1cm4geyAqaGVpZ2h0LCB1c2VkVmVy
dGljYWxNYXJnaW4gfTsKIH0KIAogV2lkdGhBbmRNYXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdl
b21ldHJ5OjppbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKGNvbnN0IExheW91dFN0YXRlJiBs
YXlvdXRTdGF0ZSwgY29uc3QgQm94JiBsYXlvdXRCb3gsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvTGF5b3V0VW5pdHMuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9MYXlvdXRV
bml0cy5oCmluZGV4IGE2M2Q3MjNkN2NjLi5lYTFiZTkwYTlmNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L0xheW91dFVuaXRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L0xheW91dFVuaXRzLmgKQEAgLTEwOSw3ICsxMDksNyBAQCBzdHJ1Y3QgV2lkdGhBbmRNYXJnaW4g
ewogCiBzdHJ1Y3QgSGVpZ2h0QW5kTWFyZ2luIHsKICAgICBMYXlvdXRVbml0IGhlaWdodDsKLSAg
ICBVc2VkVmVydGljYWxNYXJnaW4gdXNlZE1hcmdpbjsKKyAgICBVc2VkVmVydGljYWxNYXJnaW46
Ok5vbkNvbGxhcHNlZFZhbHVlcyBub25Db2xsYXBzZWRNYXJnaW47CiB9OwogCiBzdHJ1Y3QgSG9y
aXpvbnRhbEdlb21ldHJ5IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9j
a2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4IGE3
M2E1NzcxYzA0Li4yNDgxMTE2YWZkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3Bw
CkBAIC0zNTgsNyArMzU4LDcgQEAgdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRl
SGVpZ2h0QW5kTWFyZ2luKGNvbnN0IEJveCYgbGF5b3V0Qm94KSBjb25zdAogICAgICAgICAgICAg
YXV0byBtYXhIZWlnaHRBbmRNYXJnaW4gPSBjb21wdXRlKG1heEhlaWdodCk7CiAgICAgICAgICAg
ICAvLyBVc2VkIGhlaWdodCBzaG91bGQgcmVtYWluIHRoZSBzYW1lLgogICAgICAgICAgICAgQVNT
RVJUKChsYXlvdXRTdGF0ZS5pblF1aXJrc01vZGUoKSAmJiAobGF5b3V0Qm94LmlzQm9keUJveCgp
IHx8IGxheW91dEJveC5pc0RvY3VtZW50Qm94KCkpKSB8fCBtYXhIZWlnaHRBbmRNYXJnaW4uaGVp
Z2h0ID09ICptYXhIZWlnaHQpOwotICAgICAgICAgICAgaGVpZ2h0QW5kTWFyZ2luID0geyAqbWF4
SGVpZ2h0LCBtYXhIZWlnaHRBbmRNYXJnaW4udXNlZE1hcmdpbiB9OworICAgICAgICAgICAgaGVp
Z2h0QW5kTWFyZ2luID0geyAqbWF4SGVpZ2h0LCBtYXhIZWlnaHRBbmRNYXJnaW4ubm9uQ29sbGFw
c2VkTWFyZ2luIH07CiAgICAgICAgIH0KICAgICB9CiAKQEAgLTM2NywxNyArMzY3LDE5IEBAIHZv
aWQgQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUhlaWdodEFuZE1hcmdpbihjb25zdCBC
b3gmIGxheW91dEJveCkgY29uc3QKICAgICAgICAgICAgIGF1dG8gbWluSGVpZ2h0QW5kTWFyZ2lu
ID0gY29tcHV0ZShtaW5IZWlnaHQpOwogICAgICAgICAgICAgLy8gVXNlZCBoZWlnaHQgc2hvdWxk
IHJlbWFpbiB0aGUgc2FtZS4KICAgICAgICAgICAgIEFTU0VSVCgobGF5b3V0U3RhdGUuaW5RdWly
a3NNb2RlKCkgJiYgKGxheW91dEJveC5pc0JvZHlCb3goKSB8fCBsYXlvdXRCb3guaXNEb2N1bWVu
dEJveCgpKSkgfHwgbWluSGVpZ2h0QW5kTWFyZ2luLmhlaWdodCA9PSAqbWluSGVpZ2h0KTsKLSAg
ICAgICAgICAgIGhlaWdodEFuZE1hcmdpbiA9IHsgKm1pbkhlaWdodCwgbWluSGVpZ2h0QW5kTWFy
Z2luLnVzZWRNYXJnaW4gfTsKKyAgICAgICAgICAgIGhlaWdodEFuZE1hcmdpbiA9IHsgKm1pbkhl
aWdodCwgbWluSGVpZ2h0QW5kTWFyZ2luLm5vbkNvbGxhcHNlZE1hcmdpbiB9OwogICAgICAgICB9
CiAgICAgfQogCisgICAgYXV0byBjb2xsYXBzZWRNYXJnaW4gPSBVc2VkVmVydGljYWxNYXJnaW46
OkNvbGxhcHNlZFZhbHVlcyB7IE1hcmdpbkNvbGxhcHNlOjptYXJnaW5CZWZvcmUobGF5b3V0U3Rh
dGUsIGxheW91dEJveCksIE1hcmdpbkNvbGxhcHNlOjptYXJnaW5BZnRlcihsYXlvdXRTdGF0ZSwg
bGF5b3V0Qm94KSB9OworICAgIGF1dG8gdmVydGljYWxNYXJnaW4gPSBVc2VkVmVydGljYWxNYXJn
aW4geyBoZWlnaHRBbmRNYXJnaW4ubm9uQ29sbGFwc2VkTWFyZ2luLCBjb2xsYXBzZWRNYXJnaW4g
fTsKICAgICBhdXRvJiBkaXNwbGF5Qm94ID0gbGF5b3V0U3RhdGUuZGlzcGxheUJveEZvckxheW91
dEJveChsYXlvdXRCb3gpOwogICAgIGRpc3BsYXlCb3guc2V0Q29udGVudEJveEhlaWdodChoZWln
aHRBbmRNYXJnaW4uaGVpZ2h0KTsKLSAgICBkaXNwbGF5Qm94LnNldFZlcnRpY2FsTWFyZ2luKGhl
aWdodEFuZE1hcmdpbi51c2VkTWFyZ2luKTsKKyAgICBkaXNwbGF5Qm94LnNldFZlcnRpY2FsTWFy
Z2luKHZlcnRpY2FsTWFyZ2luKTsKIAogICAgIC8vIElmIHRoaXMgYm94IGhhcyBhbHJlYWR5IGJl
ZW4gbW92ZWQgYnkgdGhlIGVzdGltYXRlZCB2ZXJ0aWNhbCBtYXJnaW4sIG5vIG5lZWQgdG8gbW92
ZSBpdCBhZ2Fpbi4KICAgICBpZiAobGF5b3V0Qm94LmlzRmxvYXRpbmdQb3NpdGlvbmVkKCkgfHwg
IWRpc3BsYXlCb3guZXN0aW1hdGVkTWFyZ2luQmVmb3JlKCkpCi0gICAgICAgIGRpc3BsYXlCb3gu
bW92ZVZlcnRpY2FsbHkoaGVpZ2h0QW5kTWFyZ2luLnVzZWRNYXJnaW4uYmVmb3JlKCkpOworICAg
ICAgICBkaXNwbGF5Qm94Lm1vdmVWZXJ0aWNhbGx5KHZlcnRpY2FsTWFyZ2luLmJlZm9yZSgpKTsK
IH0KIAogRm9ybWF0dGluZ0NvbnRleHQ6Okluc3RyaW5zaWNXaWR0aENvbnN0cmFpbnRzIEJsb2Nr
Rm9ybWF0dGluZ0NvbnRleHQ6Omluc3RyaW5zaWNXaWR0aENvbnN0cmFpbnRzKCkgY29uc3QKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3Jt
YXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zv
cm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAppbmRleCBmYzc1YjUz
MDdjMy4uNGNiYmM2MzMwNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9j
a2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHRH
ZW9tZXRyeS5jcHAKQEAgLTYwLDIyICs2MCwyMSBAQCBIZWlnaHRBbmRNYXJnaW4gQmxvY2tGb3Jt
YXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmluRmxvd05vblJlcGxhY2VkSGVpZ2h0QW5kTWFyZwog
ICAgICAgICBhdXRvJiBkaXNwbGF5Qm94ID0gbGF5b3V0U3RhdGUuZGlzcGxheUJveEZvckxheW91
dEJveChsYXlvdXRCb3gpOwogICAgICAgICBhdXRvIGNvbXB1dGVkVmVydGljYWxNYXJnaW4gPSBH
ZW9tZXRyeTo6Y29tcHV0ZWRWZXJ0aWNhbE1hcmdpbihsYXlvdXRTdGF0ZSwgbGF5b3V0Qm94KTsK
ICAgICAgICAgYXV0byBub25Db2xsYXBzZWRNYXJnaW4gPSBVc2VkVmVydGljYWxNYXJnaW46Ok5v
bkNvbGxhcHNlZFZhbHVlcyB7IGNvbXB1dGVkVmVydGljYWxNYXJnaW4uYmVmb3JlLnZhbHVlT3Io
MCksIGNvbXB1dGVkVmVydGljYWxNYXJnaW4uYWZ0ZXIudmFsdWVPcigwKSB9OyAKLSAgICAgICAg
YXV0byBjb2xsYXBzZWRNYXJnaW4gPSBVc2VkVmVydGljYWxNYXJnaW46OkNvbGxhcHNlZFZhbHVl
cyB7IE1hcmdpbkNvbGxhcHNlOjptYXJnaW5CZWZvcmUobGF5b3V0U3RhdGUsIGxheW91dEJveCks
IE1hcmdpbkNvbGxhcHNlOjptYXJnaW5BZnRlcihsYXlvdXRTdGF0ZSwgbGF5b3V0Qm94KSB9Owog
ICAgICAgICBhdXRvIGJvcmRlckFuZFBhZGRpbmdUb3AgPSBkaXNwbGF5Qm94LmJvcmRlclRvcCgp
ICsgZGlzcGxheUJveC5wYWRkaW5nVG9wKCkudmFsdWVPcigwKTsKIAogICAgICAgICBhdXRvIGhl
aWdodCA9IHVzZWRIZWlnaHQgPyB1c2VkSGVpZ2h0LnZhbHVlKCkgOiBjb21wdXRlZEhlaWdodFZh
bHVlKGxheW91dFN0YXRlLCBsYXlvdXRCb3gsIEhlaWdodFR5cGU6Ok5vcm1hbCk7CiAgICAgICAg
IGlmIChoZWlnaHQpCi0gICAgICAgICAgICByZXR1cm4geyBoZWlnaHQudmFsdWUoKSwgeyBub25D
b2xsYXBzZWRNYXJnaW4sIGNvbGxhcHNlZE1hcmdpbiB9IH07CisgICAgICAgICAgICByZXR1cm4g
eyBoZWlnaHQudmFsdWUoKSwgbm9uQ29sbGFwc2VkTWFyZ2luIH07CiAKICAgICAgICAgaWYgKCFp
czxDb250YWluZXI+KGxheW91dEJveCkgfHwgIWRvd25jYXN0PENvbnRhaW5lcj4obGF5b3V0Qm94
KS5oYXNJbkZsb3dDaGlsZCgpKQotICAgICAgICAgICAgcmV0dXJuIHsgMCwgeyBub25Db2xsYXBz
ZWRNYXJnaW4sIGNvbGxhcHNlZE1hcmdpbiB9IH07CisgICAgICAgICAgICByZXR1cm4geyAwLCBu
b25Db2xsYXBzZWRNYXJnaW4gfTsKIAogICAgICAgICAvLyAxLiB0aGUgYm90dG9tIGVkZ2Ugb2Yg
dGhlIGxhc3QgbGluZSBib3gsIGlmIHRoZSBib3ggZXN0YWJsaXNoZXMgYSBpbmxpbmUgZm9ybWF0
dGluZyBjb250ZXh0IHdpdGggb25lIG9yIG1vcmUgbGluZXMKICAgICAgICAgaWYgKGxheW91dEJv
eC5lc3RhYmxpc2hlc0lubGluZUZvcm1hdHRpbmdDb250ZXh0KCkpIHsKICAgICAgICAgICAgIC8v
IFRoaXMgaXMgdGVtcCBhbmQgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgY29ycmVjdCBkaXNwbGF5
IGJveCBvbmNlIGlubGluZSBydW5zIG1vdmUgb3ZlciB0byB0aGUgZGlzcGxheSB0cmVlLgogICAg
ICAgICAgICAgYXV0byYgaW5saW5lUnVucyA9IGRvd25jYXN0PElubGluZUZvcm1hdHRpbmdTdGF0
ZT4obGF5b3V0U3RhdGUuZXN0YWJsaXNoZWRGb3JtYXR0aW5nU3RhdGUobGF5b3V0Qm94KSkuaW5s
aW5lUnVucygpOwogICAgICAgICAgICAgYXV0byBib3R0b21FZGdlID0gaW5saW5lUnVucy5pc0Vt
cHR5KCkgPyBMYXlvdXRVbml0KCkgOiBpbmxpbmVSdW5zLmxhc3QoKS5sb2dpY2FsQm90dG9tKCk7
Ci0gICAgICAgICAgICByZXR1cm4geyBib3R0b21FZGdlLCB7IG5vbkNvbGxhcHNlZE1hcmdpbiwg
Y29sbGFwc2VkTWFyZ2luIH0gfTsKKyAgICAgICAgICAgIHJldHVybiB7IGJvdHRvbUVkZ2UsIG5v
bkNvbGxhcHNlZE1hcmdpbiB9OwogICAgICAgICB9CiAKICAgICAgICAgLy8gMi4gdGhlIGJvdHRv
bSBlZGdlIG9mIHRoZSBib3R0b20gKHBvc3NpYmx5IGNvbGxhcHNlZCkgbWFyZ2luIG9mIGl0cyBs
YXN0IGluLWZsb3cgY2hpbGQsIGlmIHRoZSBjaGlsZCdzIGJvdHRvbSBtYXJnaW4uLi4KQEAgLTgz
LDcgKzgyLDcgQEAgSGVpZ2h0QW5kTWFyZ2luIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21l
dHJ5OjppbkZsb3dOb25SZXBsYWNlZEhlaWdodEFuZE1hcmcKICAgICAgICAgQVNTRVJUKGxhc3RJ
bkZsb3dDaGlsZCk7CiAgICAgICAgIGlmICghTWFyZ2luQ29sbGFwc2U6Om1hcmdpbkFmdGVyQ29s
bGFwc2VzV2l0aFBhcmVudE1hcmdpbkFmdGVyKGxheW91dFN0YXRlLCAqbGFzdEluRmxvd0NoaWxk
KSkgewogICAgICAgICAgICAgYXV0byYgbGFzdEluRmxvd0Rpc3BsYXlCb3ggPSBsYXlvdXRTdGF0
ZS5kaXNwbGF5Qm94Rm9yTGF5b3V0Qm94KCpsYXN0SW5GbG93Q2hpbGQpOwotICAgICAgICAgICAg
cmV0dXJuIHsgbGFzdEluRmxvd0Rpc3BsYXlCb3guYm90dG9tKCkgKyBsYXN0SW5GbG93RGlzcGxh
eUJveC5tYXJnaW5BZnRlcigpIC0gYm9yZGVyQW5kUGFkZGluZ1RvcCwgeyBub25Db2xsYXBzZWRN
YXJnaW4sIGNvbGxhcHNlZE1hcmdpbiB9IH07CisgICAgICAgICAgICByZXR1cm4geyBsYXN0SW5G
bG93RGlzcGxheUJveC5ib3R0b20oKSArIGxhc3RJbkZsb3dEaXNwbGF5Qm94Lm1hcmdpbkFmdGVy
KCkgLSBib3JkZXJBbmRQYWRkaW5nVG9wLCBub25Db2xsYXBzZWRNYXJnaW4gfTsKICAgICAgICAg
fQogCiAgICAgICAgIC8vIDMuIHRoZSBib3R0b20gYm9yZGVyIGVkZ2Ugb2YgdGhlIGxhc3QgaW4t
ZmxvdyBjaGlsZCB3aG9zZSB0b3AgbWFyZ2luIGRvZXNuJ3QgY29sbGFwc2Ugd2l0aCB0aGUgZWxl
bWVudCdzIGJvdHRvbSBtYXJnaW4KQEAgLTkyLDE2ICs5MSwxNiBAQCBIZWlnaHRBbmRNYXJnaW4g
QmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmluRmxvd05vblJlcGxhY2VkSGVpZ2h0
QW5kTWFyZwogICAgICAgICAgICAgaW5GbG93Q2hpbGQgPSBpbkZsb3dDaGlsZC0+cHJldmlvdXNJ
bkZsb3dTaWJsaW5nKCk7CiAgICAgICAgIGlmIChpbkZsb3dDaGlsZCkgewogICAgICAgICAgICAg
YXV0byYgaW5GbG93RGlzcGxheUJveCA9IGxheW91dFN0YXRlLmRpc3BsYXlCb3hGb3JMYXlvdXRC
b3goKmluRmxvd0NoaWxkKTsKLSAgICAgICAgICAgIHJldHVybiB7IGluRmxvd0Rpc3BsYXlCb3gu
dG9wKCkgKyBpbkZsb3dEaXNwbGF5Qm94LmJvcmRlckJveCgpLmhlaWdodCgpIC0gYm9yZGVyQW5k
UGFkZGluZ1RvcCwgeyBub25Db2xsYXBzZWRNYXJnaW4sIGNvbGxhcHNlZE1hcmdpbiB9IH07Cisg
ICAgICAgICAgICByZXR1cm4geyBpbkZsb3dEaXNwbGF5Qm94LnRvcCgpICsgaW5GbG93RGlzcGxh
eUJveC5ib3JkZXJCb3goKS5oZWlnaHQoKSAtIGJvcmRlckFuZFBhZGRpbmdUb3AsIG5vbkNvbGxh
cHNlZE1hcmdpbiB9OwogICAgICAgICB9CiAKICAgICAgICAgLy8gNC4gemVybywgb3RoZXJ3aXNl
Ci0gICAgICAgIHJldHVybiB7IDAsIHsgbm9uQ29sbGFwc2VkTWFyZ2luLCBjb2xsYXBzZWRNYXJn
aW4gfSB9OworICAgICAgICByZXR1cm4geyAwLCBub25Db2xsYXBzZWRNYXJnaW4gfTsKICAgICB9
OwogCiAgICAgYXV0byBoZWlnaHRBbmRNYXJnaW4gPSBjb21wdXRlKCk7CiAKLSAgICBMT0dfV0lU
SF9TVFJFQU0oRm9ybWF0dGluZ0NvbnRleHRMYXlvdXQsIHN0cmVhbSA8PCAiW0hlaWdodF1bTWFy
Z2luXSAtPiBpbmZsb3cgbm9uLXJlcGxhY2VkIC0+IGhlaWdodCgiIDw8IGhlaWdodEFuZE1hcmdp
bi5oZWlnaHQgPDwgInB4KSBtYXJnaW4oIiA8PCBoZWlnaHRBbmRNYXJnaW4udXNlZE1hcmdpbi5i
ZWZvcmUoKSA8PCAicHgsICIgPDwgaGVpZ2h0QW5kTWFyZ2luLnVzZWRNYXJnaW4uYWZ0ZXIoKSA8
PCAicHgpIC0+IGxheW91dEJveCgiIDw8ICZsYXlvdXRCb3ggPDwgIikiKTsKKyAgICBMT0dfV0lU
SF9TVFJFQU0oRm9ybWF0dGluZ0NvbnRleHRMYXlvdXQsIHN0cmVhbSA8PCAiW0hlaWdodF1bTWFy
Z2luXSAtPiBpbmZsb3cgbm9uLXJlcGxhY2VkIC0+IGhlaWdodCgiIDw8IGhlaWdodEFuZE1hcmdp
bi5oZWlnaHQgPDwgInB4KSBtYXJnaW4oIiA8PCBoZWlnaHRBbmRNYXJnaW4ubm9uQ29sbGFwc2Vk
TWFyZ2luLmJlZm9yZSA8PCAicHgsICIgPDwgaGVpZ2h0QW5kTWFyZ2luLm5vbkNvbGxhcHNlZE1h
cmdpbi5hZnRlciA8PCAicHgpIC0+IGxheW91dEJveCgiIDw8ICZsYXlvdXRCb3ggPDwgIikiKTsK
ICAgICByZXR1cm4gaGVpZ2h0QW5kTWFyZ2luOwogfQogCkBAIC0yNjAsNyArMjU5LDcgQEAgSGVp
Z2h0QW5kTWFyZ2luIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbkZsb3dIZWln
aHRBbmRNYXJnaW4oY29uc3QgTGEKIAogICAgIGhlaWdodEFuZE1hcmdpbiA9IFF1aXJrczo6c3Ry
ZXRjaGVkSGVpZ2h0KGxheW91dFN0YXRlLCBsYXlvdXRCb3gsIGhlaWdodEFuZE1hcmdpbik7CiAK
LSAgICBMT0dfV0lUSF9TVFJFQU0oRm9ybWF0dGluZ0NvbnRleHRMYXlvdXQsIHN0cmVhbSA8PCAi
W0hlaWdodF1bTWFyZ2luXSAtPiBpbmZsb3cgbm9uLXJlcGxhY2VkIC0+IHN0cmVjaGVkIHRvIHZp
ZXdwb3J0IC0+IGhlaWdodCgiIDw8IGhlaWdodEFuZE1hcmdpbi5oZWlnaHQgPDwgInB4KSBtYXJn
aW4oIiA8PCBoZWlnaHRBbmRNYXJnaW4udXNlZE1hcmdpbi5iZWZvcmUoKSA8PCAicHgsICIgPDwg
aGVpZ2h0QW5kTWFyZ2luLnVzZWRNYXJnaW4uYWZ0ZXIoKSA8PCAicHgpIC0+IGxheW91dEJveCgi
IDw8ICZsYXlvdXRCb3ggPDwgIikiKTsKKyAgICBMT0dfV0lUSF9TVFJFQU0oRm9ybWF0dGluZ0Nv
bnRleHRMYXlvdXQsIHN0cmVhbSA8PCAiW0hlaWdodF1bTWFyZ2luXSAtPiBpbmZsb3cgbm9uLXJl
cGxhY2VkIC0+IHN0cmVjaGVkIHRvIHZpZXdwb3J0IC0+IGhlaWdodCgiIDw8IGhlaWdodEFuZE1h
cmdpbi5oZWlnaHQgPDwgInB4KSBtYXJnaW4oIiA8PCBoZWlnaHRBbmRNYXJnaW4ubm9uQ29sbGFw
c2VkTWFyZ2luLmJlZm9yZSA8PCAicHgsICIgPDwgaGVpZ2h0QW5kTWFyZ2luLm5vbkNvbGxhcHNl
ZE1hcmdpbi5hZnRlciA8PCAicHgpIC0+IGxheW91dEJveCgiIDw8ICZsYXlvdXRCb3ggPDwgIiki
KTsKICAgICByZXR1cm4gaGVpZ2h0QW5kTWFyZ2luOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHRRdWly
a3MuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1h
dHRpbmdDb250ZXh0UXVpcmtzLmNwcAppbmRleCBmM2ViZDJkN2NmMS4uYTEwNzk3NGQwN2EgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3Jt
YXR0aW5nQ29udGV4dFF1aXJrcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2Nr
Zm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0UXVpcmtzLmNwcApAQCAtODAsMTAgKzgw
LDkgQEAgSGVpZ2h0QW5kTWFyZ2luIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OlF1aXJrczo6c3Ry
ZXRjaGVkSGVpZ2h0KGNvbnN0IExheW91dFN0YXQKIAogICAgIExheW91dFVuaXQgdG90YWxWZXJ0
aWNhbE1hcmdpbjsKICAgICBpZiAobGF5b3V0Qm94LmlzRG9jdW1lbnRCb3goKSkgewotICAgICAg
ICBhdXRvIHZlcnRpY2FsTWFyZ2luID0gaGVpZ2h0QW5kTWFyZ2luLnVzZWRNYXJnaW47CiAgICAg
ICAgIC8vIERvY3VtZW50IGJveCdzIG1hcmdpbnMgZG8gbm90IGNvbGxhcHNlLgotICAgICAgICBB
U1NFUlQoIXZlcnRpY2FsTWFyZ2luLmhhc0NvbGxhcHNlZFZhbHVlcygpKTsKLSAgICAgICAgdG90
YWxWZXJ0aWNhbE1hcmdpbiA9IHZlcnRpY2FsTWFyZ2luLmJlZm9yZSgpICsgdmVydGljYWxNYXJn
aW4uYWZ0ZXIoKTsKKyAgICAgICAgYXV0byB2ZXJ0aWNhbE1hcmdpbiA9IGhlaWdodEFuZE1hcmdp
bi5ub25Db2xsYXBzZWRNYXJnaW47CisgICAgICAgIHRvdGFsVmVydGljYWxNYXJnaW4gPSB2ZXJ0
aWNhbE1hcmdpbi5iZWZvcmUgKyB2ZXJ0aWNhbE1hcmdpbi5hZnRlcjsKICAgICB9IGVsc2UgaWYg
KGxheW91dEJveC5pc0JvZHlCb3goKSkgewogICAgICAgICAvLyBIZXJlIGlzIHRoZSBxdWlya3kg
cGFydCBmb3IgYm9keSBib3g6CiAgICAgICAgIC8vIFN0cmV0Y2ggdGhlIGJvZHkgdXNpbmcgdGhl
IGluaXRpYWwgY29udGFpbmluZyBibG9jaydzIGhlaWdodCBhbmQgc2hyaW5rIGl0IHdpdGggZG9j
dW1lbnQgYm94J3MgbWFyZ2luL2JvcmRlci9wYWRkaW5nLgpAQCAtOTEsMTQgKzkwLDggQEAgSGVp
Z2h0QW5kTWFyZ2luIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OlF1aXJrczo6c3RyZXRjaGVkSGVp
Z2h0KGNvbnN0IExheW91dFN0YXQKICAgICAgICAgYXV0byB2ZXJ0aWNhbE1hcmdpbiA9IEdlb21l
dHJ5Ojplc3RpbWF0ZWRNYXJnaW5CZWZvcmUobGF5b3V0U3RhdGUsIGRvY3VtZW50Qm94KSArIEdl
b21ldHJ5Ojplc3RpbWF0ZWRNYXJnaW5BZnRlcihsYXlvdXRTdGF0ZSwgZG9jdW1lbnRCb3gpOwog
ICAgICAgICBzdHJlY2hlZEhlaWdodCAtPSB2ZXJ0aWNhbE1hcmdpbjsKIAotICAgICAgICAvLyBU
aGlzIHF1aXJrIGhhcHBlbnMgd2hlbiB0aGUgYm9keSBoZWlnaHQgaXMgMCB3aGljaCBtZWFucyBp
dHMgdmVydGljYWwgbWFyZ2lucyBjb2xsYXBzZSB0aHJvdWdoICh0b3AgYW5kIGJvdHRvbSBtYXJn
aW5zIGFyZSBhZGpvaW5pbmcpLgotICAgICAgICAvLyBIb3dldmVyIG5vdyB0aGF0IHdlIHN0cmV0
Y2ggdGhlIGJvZHkgdGhleSBkb24ndCBjb2xsYXBzZSB0aHJvdWdoIGFueW1vcmUsIHNvIHdlIG5l
ZWQgdG8gdXNlIHRoZSBub24tY29sbGFwc2VkIHZhbHVlcyBpbnN0ZWFkLgotICAgICAgICBpZiAo
aGVpZ2h0QW5kTWFyZ2luLmhlaWdodCkKLSAgICAgICAgICAgIHRvdGFsVmVydGljYWxNYXJnaW4g
PSBoZWlnaHRBbmRNYXJnaW4udXNlZE1hcmdpbi5iZWZvcmUoKSArIGhlaWdodEFuZE1hcmdpbi51
c2VkTWFyZ2luLmFmdGVyKCk7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgYXV0byBub25D
b2xsYXBzZWRWYWx1ZXMgPSBoZWlnaHRBbmRNYXJnaW4udXNlZE1hcmdpbi5ub25Db2xsYXBzZWRW
YWx1ZXMoKTsKLSAgICAgICAgICAgIHRvdGFsVmVydGljYWxNYXJnaW4gPSBub25Db2xsYXBzZWRW
YWx1ZXMuYmVmb3JlICsgbm9uQ29sbGFwc2VkVmFsdWVzLmFmdGVyOwotICAgICAgICB9CisgICAg
ICAgIGF1dG8gbm9uQ29sbGFwc2VkVmFsdWVzID0gaGVpZ2h0QW5kTWFyZ2luLm5vbkNvbGxhcHNl
ZE1hcmdpbjsKKyAgICAgICAgdG90YWxWZXJ0aWNhbE1hcmdpbiA9IG5vbkNvbGxhcHNlZFZhbHVl
cy5iZWZvcmUgKyBub25Db2xsYXBzZWRWYWx1ZXMuYWZ0ZXI7CiAgICAgfQogCiAgICAgLy8gU3Ry
ZXRjaCBidXQgbmV2ZXIgb3ZlcnN0cmV0Y2ggd2l0aCB0aGUgbWFyZ2lucy4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdD
b250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGlu
ZUZvcm1hdHRpbmdDb250ZXh0LmNwcAppbmRleCBlMGFhZjU5ZGVmZC4uMGMzZjVjOGQ3N2EgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZv
cm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9y
bWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTM2Miw3ICszNjIsNyBAQCB2
b2lkIElubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlSGVpZ2h0QW5kTWFyZ2luKGNvbnN0
IEJveCYgbGF5b3V0Qm94KSBjb25zdAogCiAgICAgYXV0byYgZGlzcGxheUJveCA9IGxheW91dFN0
YXRlLmRpc3BsYXlCb3hGb3JMYXlvdXRCb3gobGF5b3V0Qm94KTsKICAgICBkaXNwbGF5Qm94LnNl
dENvbnRlbnRCb3hIZWlnaHQoaGVpZ2h0QW5kTWFyZ2luLmhlaWdodCk7Ci0gICAgZGlzcGxheUJv
eC5zZXRWZXJ0aWNhbE1hcmdpbihoZWlnaHRBbmRNYXJnaW4udXNlZE1hcmdpbik7CisgICAgZGlz
cGxheUJveC5zZXRWZXJ0aWNhbE1hcmdpbih7IGhlaWdodEFuZE1hcmdpbi5ub25Db2xsYXBzZWRN
YXJnaW4sIHsgfSB9KTsKIH0KIAogdm9pZCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGF5b3V0
Rm9ybWF0dGluZ0NvbnRleHRSb290KGNvbnN0IEJveCYgcm9vdCkgY29uc3QK
</data>
<flag name="review"
          id="375299"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>