<?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>201794</bug_id>
          
          <creation_ts>2019-09-14 05:18:29 -0700</creation_ts>
          <short_desc>[LFC] FormattingContext::Geometry::outOfFlowReplacedVerticalGeometry should not read containing block&apos;s width.</short_desc>
          <delta_ts>2019-09-14 10:23:36 -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>
          
          <blocked>201795</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</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>1570862</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-09-14 05:18:29 -0700</bug_when>
    <thetext>Pass in the value instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1570863</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-14 05:18:50 -0700</bug_when>
    <thetext>&lt;rdar://problem/55365669&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1570867</commentid>
    <comment_count>2</comment_count>
      <attachid>378793</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-09-14 05:31:30 -0700</bug_when>
    <thetext>Created attachment 378793
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1570887</commentid>
    <comment_count>3</comment_count>
      <attachid>378801</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-09-14 09:38:41 -0700</bug_when>
    <thetext>Created attachment 378801
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1570889</commentid>
    <comment_count>4</comment_count>
      <attachid>378801</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-14 10:23:34 -0700</bug_when>
    <thetext>Comment on attachment 378801
Patch

Clearing flags on attachment: 378801

Committed r249877: &lt;https://trac.webkit.org/changeset/249877&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1570890</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-14 10:23:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>378793</attachid>
            <date>2019-09-14 05:31:30 -0700</date>
            <delta_ts>2019-09-14 09:38:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201794-20190914053125.patch</filename>
            <type>text/plain</type>
            <size>12756</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5ODUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWYxZGM2ZDhiMzBkYzQ1
ZjUwODVmZDE4YmU5OTMzOGNkNWI4Y2QwMC4uMzI2NzJmMTA3MjUzNTdhOGYyN2I3NjFiN2M1M2M1
NDQxNThmZmE3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE5LTA5LTE0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ10gRm9ybWF0dGluZ0Nv
bnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dSZXBsYWNlZFZlcnRpY2FsR2VvbWV0cnkgc2hvdWxk
IG5vdCByZWFkIGNvbnRhaW5pbmcgYmxvY2sncyB3aWR0aC4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTc5NAorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNTUzNjU2Njk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhpcyBpcyBpbiBwcmVwYXJhdGlvbiBmb3IgdXNpbmcgY29uc3RyYWludCB2YWx1ZXMg
aW5zdGVhZCBvZiBxdWVyeWluZyB0aGUgZGlzcGxheSB0cmVlIGZvciBjb250YWluaW5nIGJsb2Nr
IGdlb21ldHJ5IGluZm9ybWF0aW9uLgorICAgICAgICBTZWUgd2Via2l0Lm9yZy9iLzIwMTc5NQor
CisgICAgICAgICogbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6Rm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVPdXRPZkZsb3dWZXJ0aWNhbEdl
b21ldHJ5KToKKyAgICAgICAgKiBsYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuaDoKKyAgICAgICAg
KiBsYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVwbGFj
ZWRWZXJ0aWNhbEdlb21ldHJ5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rm9y
bWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dSZXBsYWNlZFZlcnRpY2FsR2VvbWV0
cnkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6
R2VvbWV0cnk6Om91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkgY29uc3QpOgorCiAyMDE5LTA5LTEz
ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ10gRm9ybWF0
dGluZ0NvbnRleHQ6Okdlb21ldHJ5Ojpjb21wdXRlZEhlaWdodFZhbHVlIHNob3VsZCBub3QgcmVh
ZCBjb250YWluaW5nIGJsb2NrJ3MgaGVpZ2h0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3Jt
YXR0aW5nQ29udGV4dC5jcHAKaW5kZXggYWZlZDZjOTFhMmEzMjliYzljZTNlNGYxNjY4MmY1NmIy
NGI2ZmM5Ni4uYjY2MjY3MTFkNTY4NDEyMDYzMzBhZGQ0Y2NlNmNmYzg1NmE2MzE2ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC05NSwyMiArOTUs
MjcgQEAgdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZU91dE9mRmxvd0hvcml6b250YWxH
ZW9tZXRyeShjb25zdCBCb3gmIGxheW91dEJveCkKIAogdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6
Y29tcHV0ZU91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gpCiB7
Ci0gICAgYXV0byBjb21wdXRlID0gWyZdKGF1dG8gdXNlZFZlcnRpY2FsVmFsdWVzKSB7Ci0gICAg
ICAgIHJldHVybiBnZW9tZXRyeSgpLm91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkobGF5b3V0Qm94
LCB1c2VkVmVydGljYWxWYWx1ZXMpOworICAgIGF1dG8gY29tcHV0ZSA9IFsmXShhdXRvIHVzZWRI
b3Jpem9udGFsVmFsdWVzLCBhdXRvIHVzZWRWZXJ0aWNhbFZhbHVlcykgeworICAgICAgICByZXR1
cm4gZ2VvbWV0cnkoKS5vdXRPZkZsb3dWZXJ0aWNhbEdlb21ldHJ5KGxheW91dEJveCwgdXNlZEhv
cml6b250YWxWYWx1ZXMsIHVzZWRWZXJ0aWNhbFZhbHVlcyk7CiAgICAgfTsKLSAgICBhdXRvIGNv
bnRhaW5pbmdCbG9ja0hlaWdodCA9IGdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3guY29udGFpbmlu
Z0Jsb2NrKCkpLnBhZGRpbmdCb3hIZWlnaHQoKTsKKyAgICBhdXRvJiBjb250YWluaW5nQmxvY2tH
ZW9tZXRyeSA9IGdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2NrKCkpOwor
ICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrSGVpZ2h0ID0gY29udGFpbmluZ0Jsb2NrR2VvbWV0cnku
cGFkZGluZ0JveEhlaWdodCgpOworICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrV2lkdGggPSBjb250
YWluaW5nQmxvY2tHZW9tZXRyeS5wYWRkaW5nQm94SGVpZ2h0KCk7CisKICAgICBhdXRvIHVzZWRW
ZXJ0aWNhbFZhbHVlc0ZvckhlaWdodCA9IFVzZWRWZXJ0aWNhbFZhbHVlcyB7IGNvbnRhaW5pbmdC
bG9ja0hlaWdodCwgeyB9IH07Ci0gICAgYXV0byB2ZXJ0aWNhbEdlb21ldHJ5ID0gY29tcHV0ZSh1
c2VkVmVydGljYWxWYWx1ZXNGb3JIZWlnaHQpOworICAgIGF1dG8gdXNlZEhvcml6b250YWxWYWx1
ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IGNvbnRhaW5pbmdCbG9ja1dpZHRoIH07CisKKyAg
ICBhdXRvIHZlcnRpY2FsR2VvbWV0cnkgPSBjb21wdXRlKHVzZWRIb3Jpem9udGFsVmFsdWVzLCB1
c2VkVmVydGljYWxWYWx1ZXNGb3JIZWlnaHQpOwogICAgIGlmIChhdXRvIG1heEhlaWdodCA9IGdl
b21ldHJ5KCkuY29tcHV0ZWRNYXhIZWlnaHQobGF5b3V0Qm94LCB1c2VkVmVydGljYWxWYWx1ZXNG
b3JIZWlnaHQpKSB7CiAgICAgICAgIGF1dG8gdXNlZFZhbHVlc0Zvck1heEhlaWdodCA9IFVzZWRW
ZXJ0aWNhbFZhbHVlcyB7IGNvbnRhaW5pbmdCbG9ja0hlaWdodCwgbWF4SGVpZ2h0IH07Ci0gICAg
ICAgIGF1dG8gbWF4VmVydGljYWxHZW9tZXRyeSA9IGNvbXB1dGUodXNlZFZhbHVlc0Zvck1heEhl
aWdodCk7CisgICAgICAgIGF1dG8gbWF4VmVydGljYWxHZW9tZXRyeSA9IGNvbXB1dGUodXNlZEhv
cml6b250YWxWYWx1ZXMsIHVzZWRWYWx1ZXNGb3JNYXhIZWlnaHQpOwogICAgICAgICBpZiAodmVy
dGljYWxHZW9tZXRyeS5oZWlnaHRBbmRNYXJnaW4uaGVpZ2h0ID4gbWF4VmVydGljYWxHZW9tZXRy
eS5oZWlnaHRBbmRNYXJnaW4uaGVpZ2h0KQogICAgICAgICAgICAgdmVydGljYWxHZW9tZXRyeSA9
IG1heFZlcnRpY2FsR2VvbWV0cnk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gbWluSGVpZ2h0ID0g
Z2VvbWV0cnkoKS5jb21wdXRlZE1pbkhlaWdodChsYXlvdXRCb3gsIHVzZWRWZXJ0aWNhbFZhbHVl
c0ZvckhlaWdodCkpIHsKICAgICAgICAgYXV0byB1c2VkVmFsdWVzRm9yTWluSGVpZ2h0ID0gVXNl
ZFZlcnRpY2FsVmFsdWVzIHsgY29udGFpbmluZ0Jsb2NrSGVpZ2h0LCBtaW5IZWlnaHQgfTsKLSAg
ICAgICAgYXV0byBtaW5WZXJ0aWNhbEdlb21ldHJ5ID0gY29tcHV0ZSh1c2VkVmFsdWVzRm9yTWlu
SGVpZ2h0KTsKKyAgICAgICAgYXV0byBtaW5WZXJ0aWNhbEdlb21ldHJ5ID0gY29tcHV0ZSh1c2Vk
SG9yaXpvbnRhbFZhbHVlcywgdXNlZFZhbHVlc0Zvck1pbkhlaWdodCk7CiAgICAgICAgIGlmICh2
ZXJ0aWNhbEdlb21ldHJ5LmhlaWdodEFuZE1hcmdpbi5oZWlnaHQgPCBtaW5WZXJ0aWNhbEdlb21l
dHJ5LmhlaWdodEFuZE1hcmdpbi5oZWlnaHQpCiAgICAgICAgICAgICB2ZXJ0aWNhbEdlb21ldHJ5
ID0gbWluVmVydGljYWxHZW9tZXRyeTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3Jt
YXR0aW5nQ29udGV4dC5oCmluZGV4IDE0ZjhiZDQ5NjliZGFiMTIyNzczZmMzMmM0NzJhNWE5ZDBi
ZWI5NDIuLjE4Mzk2YmQyMTIzN2FlYzFiZGJmODIxYzBjNjg3ODRlYjc3YWJjNmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5oCkBAIC05NSw3ICs5NSw3IEBAIHBy
b3RlY3RlZDoKICAgICBwdWJsaWM6CiAgICAgICAgIEdlb21ldHJ5KGNvbnN0IEZvcm1hdHRpbmdD
b250ZXh0Jik7CiAKLSAgICAgICAgVmVydGljYWxHZW9tZXRyeSBvdXRPZkZsb3dWZXJ0aWNhbEdl
b21ldHJ5KGNvbnN0IEJveCYsIFVzZWRWZXJ0aWNhbFZhbHVlcykgY29uc3Q7CisgICAgICAgIFZl
cnRpY2FsR2VvbWV0cnkgb3V0T2ZGbG93VmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBVc2Vk
SG9yaXpvbnRhbFZhbHVlcywgVXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdDsKICAgICAgICAgSG9y
aXpvbnRhbEdlb21ldHJ5IG91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeShjb25zdCBCb3gmLCBV
c2VkSG9yaXpvbnRhbFZhbHVlcyk7CiAKICAgICAgICAgSGVpZ2h0QW5kTWFyZ2luIGZsb2F0aW5n
SGVpZ2h0QW5kTWFyZ2luKGNvbnN0IEJveCYsIFVzZWRWZXJ0aWNhbFZhbHVlcywgVXNlZEhvcml6
b250YWxWYWx1ZXMpIGNvbnN0OwpAQCAtMTM0LDEwICsxMzQsMTAgQEAgcHJvdGVjdGVkOgogICAg
ICAgICBjb25zdCBGb3JtYXR0aW5nQ29udGV4dCYgZm9ybWF0dGluZ0NvbnRleHQoKSBjb25zdCB7
IHJldHVybiBtX2Zvcm1hdHRpbmdDb250ZXh0OyB9CiAKICAgICBwcml2YXRlOgotICAgICAgICBW
ZXJ0aWNhbEdlb21ldHJ5IG91dE9mRmxvd1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBC
b3gmLCBVc2VkVmVydGljYWxWYWx1ZXMpIGNvbnN0OworICAgICAgICBWZXJ0aWNhbEdlb21ldHJ5
IG91dE9mRmxvd1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBVc2VkSG9yaXpv
bnRhbFZhbHVlcywgVXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdDsKICAgICAgICAgSG9yaXpvbnRh
bEdlb21ldHJ5IG91dE9mRmxvd1JlcGxhY2VkSG9yaXpvbnRhbEdlb21ldHJ5KGNvbnN0IEJveCYs
IFVzZWRIb3Jpem9udGFsVmFsdWVzKSBjb25zdDsKIAotICAgICAgICBWZXJ0aWNhbEdlb21ldHJ5
IG91dE9mRmxvd05vblJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBVc2VkVmVy
dGljYWxWYWx1ZXMpIGNvbnN0OworICAgICAgICBWZXJ0aWNhbEdlb21ldHJ5IG91dE9mRmxvd05v
blJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBVc2VkSG9yaXpvbnRhbFZhbHVl
cywgVXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdDsKICAgICAgICAgSG9yaXpvbnRhbEdlb21ldHJ5
IG91dE9mRmxvd05vblJlcGxhY2VkSG9yaXpvbnRhbEdlb21ldHJ5KGNvbnN0IEJveCYsIFVzZWRI
b3Jpem9udGFsVmFsdWVzKTsKIAogICAgICAgICBIZWlnaHRBbmRNYXJnaW4gZmxvYXRpbmdSZXBs
YWNlZEhlaWdodEFuZE1hcmdpbihjb25zdCBCb3gmLCBVc2VkVmVydGljYWxWYWx1ZXMpIGNvbnN0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0R2Vv
bWV0cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0
cnkuY3BwCmluZGV4IGJiMTU2OWI5Y2FiMWFiMzEyYTcwMTczNzFkOGM3MzFmZGM1N2Y3MDUuLjUy
Y2FkYWE4MzFjNjYwNjc4YjFkOTdmM2FmN2NiYmQ4N2ZiNTg2MGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKQEAgLTI3Miwx
MCArMjcyLDExIEBAIExheW91dFVuaXQgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpzaHJp
bmtUb0ZpdFdpZHRoKGNvbnN0IEJveCYgZm9ybWF0dGluZ1JvCiAgICAgcmV0dXJuIHN0ZDo6bWlu
KHN0ZDo6bWF4KGludHJpbnNpY1dpZHRoQ29uc3RyYWludHMubWluaW11bSwgYXZhaWxhYmxlV2lk
dGgpLCBpbnRyaW5zaWNXaWR0aENvbnN0cmFpbnRzLm1heGltdW0pOwogfQogCi1WZXJ0aWNhbEdl
b21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVwbGFjZWRW
ZXJ0aWNhbEdlb21ldHJ5KGNvbnN0IEJveCYgbGF5b3V0Qm94LCBVc2VkVmVydGljYWxWYWx1ZXMg
dXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdAorVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29u
dGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd05vblJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25z
dCBCb3gmIGxheW91dEJveCwgVXNlZEhvcml6b250YWxWYWx1ZXMgdXNlZEhvcml6b250YWxWYWx1
ZXMsIFVzZWRWZXJ0aWNhbFZhbHVlcyB1c2VkVmVydGljYWxWYWx1ZXMpIGNvbnN0CiB7CiAgICAg
QVNTRVJUKGxheW91dEJveC5pc091dE9mRmxvd1Bvc2l0aW9uZWQoKSAmJiAhbGF5b3V0Qm94LnJl
cGxhY2VkKCkpOwogICAgIEFTU0VSVCh1c2VkVmVydGljYWxWYWx1ZXMuY29udGFpbmluZ0Jsb2Nr
SGVpZ2h0KTsKKyAgICBBU1NFUlQodXNlZEhvcml6b250YWxWYWx1ZXMuY29udGFpbmluZ0Jsb2Nr
V2lkdGgpOwogCiAgICAgLy8gMTAuNi40IEFic29sdXRlbHkgcG9zaXRpb25lZCwgbm9uLXJlcGxh
Y2VkIGVsZW1lbnRzCiAgICAgLy8KQEAgLTMwNCwxNCArMzA1LDEzIEBAIFZlcnRpY2FsR2VvbWV0
cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dOb25SZXBsYWNlZFZlcnRp
Y2FsR2VvbWV0CiAgICAgYXV0byYgZm9ybWF0dGluZ0NvbnRleHQgPSB0aGlzLT5mb3JtYXR0aW5n
Q29udGV4dCgpOwogICAgIGF1dG8mIHN0eWxlID0gbGF5b3V0Qm94LnN0eWxlKCk7CiAgICAgYXV0
byYgYm94R2VvbWV0cnkgPSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveChsYXlvdXRC
b3gpOwotICAgIGF1dG8mIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5ID0gZm9ybWF0dGluZ0NvbnRl
eHQuZ2VvbWV0cnlGb3JCb3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSk7CiAgICAgYXV0
byBjb250YWluaW5nQmxvY2tIZWlnaHQgPSAqdXNlZFZlcnRpY2FsVmFsdWVzLmNvbnRhaW5pbmdC
bG9ja0hlaWdodDsKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gY29udGFpbmluZ0Js
b2NrR2VvbWV0cnkucGFkZGluZ0JveFdpZHRoKCk7CisgICAgYXV0byBjb250YWluaW5nQmxvY2tX
aWR0aCA9ICp1c2VkSG9yaXpvbnRhbFZhbHVlcy5jb250YWluaW5nQmxvY2tXaWR0aDsKIAogICAg
IGF1dG8gdG9wID0gY29tcHV0ZWRWYWx1ZUlmTm90QXV0byhzdHlsZS5sb2dpY2FsVG9wKCksIGNv
bnRhaW5pbmdCbG9ja1dpZHRoKTsKICAgICBhdXRvIGJvdHRvbSA9IGNvbXB1dGVkVmFsdWVJZk5v
dEF1dG8oc3R5bGUubG9naWNhbEJvdHRvbSgpLCBjb250YWluaW5nQmxvY2tXaWR0aCk7CiAgICAg
YXV0byBoZWlnaHQgPSB1c2VkVmVydGljYWxWYWx1ZXMuaGVpZ2h0ID8gdXNlZFZlcnRpY2FsVmFs
dWVzLmhlaWdodC52YWx1ZSgpIDogY29tcHV0ZWRIZWlnaHRWYWx1ZShsYXlvdXRCb3gsIEhlaWdo
dFR5cGU6Ok5vcm1hbCwgdXNlZFZlcnRpY2FsVmFsdWVzKTsKLSAgICBhdXRvIGNvbXB1dGVkVmVy
dGljYWxNYXJnaW4gPSBHZW9tZXRyeTo6Y29tcHV0ZWRWZXJ0aWNhbE1hcmdpbihsYXlvdXRCb3gs
IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgY29udGFpbmluZ0Jsb2NrV2lkdGggfSk7CisgICAgYXV0
byBjb21wdXRlZFZlcnRpY2FsTWFyZ2luID0gR2VvbWV0cnk6OmNvbXB1dGVkVmVydGljYWxNYXJn
aW4obGF5b3V0Qm94LCB1c2VkSG9yaXpvbnRhbFZhbHVlcyk7CiAgICAgVXNlZFZlcnRpY2FsTWFy
Z2luOjpOb25Db2xsYXBzZWRWYWx1ZXMgdXNlZFZlcnRpY2FsTWFyZ2luOyAKICAgICBhdXRvIHBh
ZGRpbmdUb3AgPSBib3hHZW9tZXRyeS5wYWRkaW5nVG9wKCkudmFsdWVPcigwKTsKICAgICBhdXRv
IHBhZGRpbmdCb3R0b20gPSBib3hHZW9tZXRyeS5wYWRkaW5nQm90dG9tKCkudmFsdWVPcigwKTsK
QEAgLTM4OCw3ICszODgsNyBAQCBWZXJ0aWNhbEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpH
ZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVwbGFjZWRWZXJ0aWNhbEdlb21ldAogCiAgICAgLy8gRm9y
IG91dC1vZi1mbG93IGVsZW1lbnRzIHRoZSBjb250YWluaW5nIGJsb2NrIGlzIGZvcm1lZCBieSB0
aGUgcGFkZGluZyBlZGdlIG9mIHRoZSBhbmNlc3Rvci4KICAgICAvLyBBdCB0aGlzIHBvaW50IHRo
ZSBwb3NpdGlvbmVkIHZhbHVlIGlzIGluIHRoZSBjb29yZGluYXRlIHN5c3RlbSBvZiB0aGUgcGFk
ZGluZyBib3guIExldCdzIGNvbnZlcnQgaXQgdG8gYm9yZGVyIGJveCBjb29yZGluYXRlIHN5c3Rl
bS4KLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1BhZGRpbmdWZXJ0aWNhbEVkZ2UgPSBjb250YWlu
aW5nQmxvY2tHZW9tZXRyeS5wYWRkaW5nQm94VG9wKCk7CisgICAgYXV0byBjb250YWluaW5nQmxv
Y2tQYWRkaW5nVmVydGljYWxFZGdlID0gZm9ybWF0dGluZ0NvbnRleHQuZ2VvbWV0cnlGb3JCb3go
KmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSkucGFkZGluZ0JveFRvcCgpOwogICAgICp0b3Ag
Kz0gY29udGFpbmluZ0Jsb2NrUGFkZGluZ1ZlcnRpY2FsRWRnZTsKICAgICAqYm90dG9tICs9IGNv
bnRhaW5pbmdCbG9ja1BhZGRpbmdWZXJ0aWNhbEVkZ2U7CiAKQEAgLTU0Niw5ICs1NDYsMTEgQEAg
SG9yaXpvbnRhbEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93
Tm9uUmVwbGFjZWRIb3Jpem9udGFsR2UKICAgICByZXR1cm4geyAqbGVmdCwgKnJpZ2h0LCB7IGNv
bnRlbnRXaWR0aCgpLCB1c2VkSG9yaXpvbnRhbE1hcmdpbiwgY29tcHV0ZWRIb3Jpem9udGFsTWFy
Z2luIH0gfTsKIH0KIAotVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0
cnk6Om91dE9mRmxvd1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmIGxheW91dEJv
eCwgVXNlZFZlcnRpY2FsVmFsdWVzIHVzZWRWZXJ0aWNhbFZhbHVlcykgY29uc3QKK1ZlcnRpY2Fs
R2VvbWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dSZXBsYWNlZFZl
cnRpY2FsR2VvbWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gsIFVzZWRIb3Jpem9udGFsVmFsdWVz
IHVzZWRIb3Jpem9udGFsVmFsdWVzLCBVc2VkVmVydGljYWxWYWx1ZXMgdXNlZFZlcnRpY2FsVmFs
dWVzKSBjb25zdAogewogICAgIEFTU0VSVChsYXlvdXRCb3guaXNPdXRPZkZsb3dQb3NpdGlvbmVk
KCkgJiYgbGF5b3V0Qm94LnJlcGxhY2VkKCkpOworICAgIEFTU0VSVCh1c2VkVmVydGljYWxWYWx1
ZXMuY29udGFpbmluZ0Jsb2NrSGVpZ2h0KTsKKyAgICBBU1NFUlQodXNlZEhvcml6b250YWxWYWx1
ZXMuY29udGFpbmluZ0Jsb2NrV2lkdGgpOwogCiAgICAgLy8gMTAuNi41IEFic29sdXRlbHkgcG9z
aXRpb25lZCwgcmVwbGFjZWQgZWxlbWVudHMKICAgICAvLwpAQCAtNTYzLDE0ICs1NjUsMTMgQEAg
VmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd1Jl
cGxhY2VkVmVydGljYWxHZW9tZXRyeSgKICAgICBhdXRvJiBmb3JtYXR0aW5nQ29udGV4dCA9IHRo
aXMtPmZvcm1hdHRpbmdDb250ZXh0KCk7CiAgICAgYXV0byYgc3R5bGUgPSBsYXlvdXRCb3guc3R5
bGUoKTsKICAgICBhdXRvJiBib3hHZW9tZXRyeSA9IGZvcm1hdHRpbmdDb250ZXh0Lmdlb21ldHJ5
Rm9yQm94KGxheW91dEJveCk7Ci0gICAgYXV0byYgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkgPSBm
b3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9j
aygpKTsKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0hlaWdodCA9IGNvbnRhaW5pbmdCbG9ja0dl
b21ldHJ5LnBhZGRpbmdCb3hIZWlnaHQoKTsKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRo
ID0gY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkucGFkZGluZ0JveFdpZHRoKCk7CisgICAgYXV0byBj
b250YWluaW5nQmxvY2tIZWlnaHQgPSAqdXNlZFZlcnRpY2FsVmFsdWVzLmNvbnRhaW5pbmdCbG9j
a0hlaWdodDsKKyAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gKnVzZWRIb3Jpem9udGFs
VmFsdWVzLmNvbnRhaW5pbmdCbG9ja1dpZHRoOwogCiAgICAgYXV0byB0b3AgPSBjb21wdXRlZFZh
bHVlSWZOb3RBdXRvKHN0eWxlLmxvZ2ljYWxUb3AoKSwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOwog
ICAgIGF1dG8gYm90dG9tID0gY29tcHV0ZWRWYWx1ZUlmTm90QXV0byhzdHlsZS5sb2dpY2FsQm90
dG9tKCksIGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKICAgICBhdXRvIGhlaWdodCA9IGlubGluZVJl
cGxhY2VkSGVpZ2h0QW5kTWFyZ2luKGxheW91dEJveCwgdXNlZFZlcnRpY2FsVmFsdWVzKS5oZWln
aHQ7Ci0gICAgYXV0byBjb21wdXRlZFZlcnRpY2FsTWFyZ2luID0gR2VvbWV0cnk6OmNvbXB1dGVk
VmVydGljYWxNYXJnaW4obGF5b3V0Qm94LCBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IGNvbnRhaW5p
bmdCbG9ja1dpZHRoIH0pOworICAgIGF1dG8gY29tcHV0ZWRWZXJ0aWNhbE1hcmdpbiA9IEdlb21l
dHJ5Ojpjb21wdXRlZFZlcnRpY2FsTWFyZ2luKGxheW91dEJveCwgdXNlZEhvcml6b250YWxWYWx1
ZXMpOwogICAgIE9wdGlvbmFsPExheW91dFVuaXQ+IHVzZWRNYXJnaW5CZWZvcmUgPSBjb21wdXRl
ZFZlcnRpY2FsTWFyZ2luLmJlZm9yZTsKICAgICBPcHRpb25hbDxMYXlvdXRVbml0PiB1c2VkTWFy
Z2luQWZ0ZXIgPSBjb21wdXRlZFZlcnRpY2FsTWFyZ2luLmFmdGVyOwogICAgIGF1dG8gcGFkZGlu
Z1RvcCA9IGJveEdlb21ldHJ5LnBhZGRpbmdUb3AoKS52YWx1ZU9yKDApOwpAQCAtNjE2LDcgKzYx
Nyw3IEBAIFZlcnRpY2FsR2VvbWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRP
ZkZsb3dSZXBsYWNlZFZlcnRpY2FsR2VvbWV0cnkoCiAKICAgICAvLyBGb3Igb3V0LW9mLWZsb3cg
ZWxlbWVudHMgdGhlIGNvbnRhaW5pbmcgYmxvY2sgaXMgZm9ybWVkIGJ5IHRoZSBwYWRkaW5nIGVk
Z2Ugb2YgdGhlIGFuY2VzdG9yLgogICAgIC8vIEF0IHRoaXMgcG9pbnQgdGhlIHBvc2l0aW9uZWQg
dmFsdWUgaXMgaW4gdGhlIGNvb3JkaW5hdGUgc3lzdGVtIG9mIHRoZSBwYWRkaW5nIGJveC4gTGV0
J3MgY29udmVydCBpdCB0byBib3JkZXIgYm94IGNvb3JkaW5hdGUgc3lzdGVtLgotICAgIGF1dG8g
Y29udGFpbmluZ0Jsb2NrUGFkZGluZ1ZlcnRpY2FsRWRnZSA9IGNvbnRhaW5pbmdCbG9ja0dlb21l
dHJ5LnBhZGRpbmdCb3hUb3AoKTsKKyAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1BhZGRpbmdWZXJ0
aWNhbEVkZ2UgPSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94LmNv
bnRhaW5pbmdCbG9jaygpKS5wYWRkaW5nQm94VG9wKCk7CiAgICAgKnRvcCArPSBjb250YWluaW5n
QmxvY2tQYWRkaW5nVmVydGljYWxFZGdlOwogICAgICpib3R0b20gKz0gY29udGFpbmluZ0Jsb2Nr
UGFkZGluZ1ZlcnRpY2FsRWRnZTsKIApAQCAtODExLDEzICs4MTIsMTMgQEAgV2lkdGhBbmRNYXJn
aW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpmbG9hdGluZ1JlcGxhY2VkV2lkdGhBbmRN
YXJnaW4oY29uc3QKICAgICAgICAgdXNlZFZhbHVlcy53aWR0aCwgVXNlZEhvcml6b250YWxNYXJn
aW4geyBjb21wdXRlZEhvcml6b250YWxNYXJnaW4uc3RhcnQudmFsdWVPcigwKSwgY29tcHV0ZWRI
b3Jpem9udGFsTWFyZ2luLmVuZC52YWx1ZU9yKDApIH0gfSk7CiB9CiAKLVZlcnRpY2FsR2VvbWV0
cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dWZXJ0aWNhbEdlb21ldHJ5
KGNvbnN0IEJveCYgbGF5b3V0Qm94LCBVc2VkVmVydGljYWxWYWx1ZXMgdXNlZFZlcnRpY2FsVmFs
dWVzKSBjb25zdAorVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6
Om91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gsIFVzZWRIb3Jp
em9udGFsVmFsdWVzIHVzZWRIb3Jpem9udGFsVmFsdWVzLCBVc2VkVmVydGljYWxWYWx1ZXMgdXNl
ZFZlcnRpY2FsVmFsdWVzKSBjb25zdAogewogICAgIEFTU0VSVChsYXlvdXRCb3guaXNPdXRPZkZs
b3dQb3NpdGlvbmVkKCkpOwogCiAgICAgaWYgKCFsYXlvdXRCb3gucmVwbGFjZWQoKSkKLSAgICAg
ICAgcmV0dXJuIG91dE9mRmxvd05vblJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShsYXlvdXRCb3gs
IHVzZWRWZXJ0aWNhbFZhbHVlcyk7Ci0gICAgcmV0dXJuIG91dE9mRmxvd1JlcGxhY2VkVmVydGlj
YWxHZW9tZXRyeShsYXlvdXRCb3gsIHVzZWRWZXJ0aWNhbFZhbHVlcyk7CisgICAgICAgIHJldHVy
biBvdXRPZkZsb3dOb25SZXBsYWNlZFZlcnRpY2FsR2VvbWV0cnkobGF5b3V0Qm94LCB1c2VkSG9y
aXpvbnRhbFZhbHVlcywgdXNlZFZlcnRpY2FsVmFsdWVzKTsKKyAgICByZXR1cm4gb3V0T2ZGbG93
UmVwbGFjZWRWZXJ0aWNhbEdlb21ldHJ5KGxheW91dEJveCwgdXNlZEhvcml6b250YWxWYWx1ZXMs
IHVzZWRWZXJ0aWNhbFZhbHVlcyk7CiB9CiAKIEhvcml6b250YWxHZW9tZXRyeSBGb3JtYXR0aW5n
Q29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeShjb25zdCBCb3gm
IGxheW91dEJveCwgVXNlZEhvcml6b250YWxWYWx1ZXMgdXNlZFZhbHVlcykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>378801</attachid>
            <date>2019-09-14 09:38:41 -0700</date>
            <delta_ts>2019-09-14 10:23:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201794-20190914093837.patch</filename>
            <type>text/plain</type>
            <size>12759</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5ODc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE3MGJmNmExYjU5MGIx
OGNiOTI1YzI0ZjdjODVhYWMzZmExOTI4NS4uNWUxMzJmMWU1NWRkMjUzNjlmYmFhY2E4YzViNTlk
ZjQ3NjRiNzkzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE5LTA5LTE0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ10gRm9ybWF0dGluZ0Nv
bnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dSZXBsYWNlZFZlcnRpY2FsR2VvbWV0cnkgc2hvdWxk
IG5vdCByZWFkIGNvbnRhaW5pbmcgYmxvY2sncyB3aWR0aC4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTc5NAorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNTUzNjU2Njk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW50dGkgS29pdmlzdG8uCisKKyAg
ICAgICAgVGhpcyBpcyBpbiBwcmVwYXJhdGlvbiBmb3IgdXNpbmcgY29uc3RyYWludCB2YWx1ZXMg
aW5zdGVhZCBvZiBxdWVyeWluZyB0aGUgZGlzcGxheSB0cmVlIGZvciBjb250YWluaW5nIGJsb2Nr
IGdlb21ldHJ5IGluZm9ybWF0aW9uLgorICAgICAgICBTZWUgd2Via2l0Lm9yZy9iLzIwMTc5NQor
CisgICAgICAgICogbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6Rm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVPdXRPZkZsb3dWZXJ0aWNhbEdl
b21ldHJ5KToKKyAgICAgICAgKiBsYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuaDoKKyAgICAgICAg
KiBsYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVwbGFj
ZWRWZXJ0aWNhbEdlb21ldHJ5IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rm9y
bWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dSZXBsYWNlZFZlcnRpY2FsR2VvbWV0
cnkgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6
R2VvbWV0cnk6Om91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkgY29uc3QpOgorCiAyMDE5LTA5LTE0
ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgbmV3Q29udHJvbGxl
ciBtYXkgYmUgbW92ZWQgc2V2ZXJhbCB0aW1lcyB1bmRlciBTV0NsaWVudENvbm5lY3Rpb246Om5v
dGlmeUNsaWVudHNPZkNvbnRyb2xsZXJDaGFuZ2UoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9G
b3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggYWZlZDZjOTFhMmEzMjliYzljZTNlNGYxNjY4MmY1
NmIyNGI2ZmM5Ni4uYjY2MjY3MTFkNTY4NDEyMDYzMzBhZGQ0Y2NlNmNmYzg1NmE2MzE2ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC05NSwyMiAr
OTUsMjcgQEAgdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZU91dE9mRmxvd0hvcml6b250
YWxHZW9tZXRyeShjb25zdCBCb3gmIGxheW91dEJveCkKIAogdm9pZCBGb3JtYXR0aW5nQ29udGV4
dDo6Y29tcHV0ZU91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gp
CiB7Ci0gICAgYXV0byBjb21wdXRlID0gWyZdKGF1dG8gdXNlZFZlcnRpY2FsVmFsdWVzKSB7Ci0g
ICAgICAgIHJldHVybiBnZW9tZXRyeSgpLm91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkobGF5b3V0
Qm94LCB1c2VkVmVydGljYWxWYWx1ZXMpOworICAgIGF1dG8gY29tcHV0ZSA9IFsmXShhdXRvIHVz
ZWRIb3Jpem9udGFsVmFsdWVzLCBhdXRvIHVzZWRWZXJ0aWNhbFZhbHVlcykgeworICAgICAgICBy
ZXR1cm4gZ2VvbWV0cnkoKS5vdXRPZkZsb3dWZXJ0aWNhbEdlb21ldHJ5KGxheW91dEJveCwgdXNl
ZEhvcml6b250YWxWYWx1ZXMsIHVzZWRWZXJ0aWNhbFZhbHVlcyk7CiAgICAgfTsKLSAgICBhdXRv
IGNvbnRhaW5pbmdCbG9ja0hlaWdodCA9IGdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3guY29udGFp
bmluZ0Jsb2NrKCkpLnBhZGRpbmdCb3hIZWlnaHQoKTsKKyAgICBhdXRvJiBjb250YWluaW5nQmxv
Y2tHZW9tZXRyeSA9IGdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2NrKCkp
OworICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrSGVpZ2h0ID0gY29udGFpbmluZ0Jsb2NrR2VvbWV0
cnkucGFkZGluZ0JveEhlaWdodCgpOworICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrV2lkdGggPSBj
b250YWluaW5nQmxvY2tHZW9tZXRyeS5wYWRkaW5nQm94SGVpZ2h0KCk7CisKICAgICBhdXRvIHVz
ZWRWZXJ0aWNhbFZhbHVlc0ZvckhlaWdodCA9IFVzZWRWZXJ0aWNhbFZhbHVlcyB7IGNvbnRhaW5p
bmdCbG9ja0hlaWdodCwgeyB9IH07Ci0gICAgYXV0byB2ZXJ0aWNhbEdlb21ldHJ5ID0gY29tcHV0
ZSh1c2VkVmVydGljYWxWYWx1ZXNGb3JIZWlnaHQpOworICAgIGF1dG8gdXNlZEhvcml6b250YWxW
YWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IGNvbnRhaW5pbmdCbG9ja1dpZHRoIH07CisK
KyAgICBhdXRvIHZlcnRpY2FsR2VvbWV0cnkgPSBjb21wdXRlKHVzZWRIb3Jpem9udGFsVmFsdWVz
LCB1c2VkVmVydGljYWxWYWx1ZXNGb3JIZWlnaHQpOwogICAgIGlmIChhdXRvIG1heEhlaWdodCA9
IGdlb21ldHJ5KCkuY29tcHV0ZWRNYXhIZWlnaHQobGF5b3V0Qm94LCB1c2VkVmVydGljYWxWYWx1
ZXNGb3JIZWlnaHQpKSB7CiAgICAgICAgIGF1dG8gdXNlZFZhbHVlc0Zvck1heEhlaWdodCA9IFVz
ZWRWZXJ0aWNhbFZhbHVlcyB7IGNvbnRhaW5pbmdCbG9ja0hlaWdodCwgbWF4SGVpZ2h0IH07Ci0g
ICAgICAgIGF1dG8gbWF4VmVydGljYWxHZW9tZXRyeSA9IGNvbXB1dGUodXNlZFZhbHVlc0Zvck1h
eEhlaWdodCk7CisgICAgICAgIGF1dG8gbWF4VmVydGljYWxHZW9tZXRyeSA9IGNvbXB1dGUodXNl
ZEhvcml6b250YWxWYWx1ZXMsIHVzZWRWYWx1ZXNGb3JNYXhIZWlnaHQpOwogICAgICAgICBpZiAo
dmVydGljYWxHZW9tZXRyeS5oZWlnaHRBbmRNYXJnaW4uaGVpZ2h0ID4gbWF4VmVydGljYWxHZW9t
ZXRyeS5oZWlnaHRBbmRNYXJnaW4uaGVpZ2h0KQogICAgICAgICAgICAgdmVydGljYWxHZW9tZXRy
eSA9IG1heFZlcnRpY2FsR2VvbWV0cnk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gbWluSGVpZ2h0
ID0gZ2VvbWV0cnkoKS5jb21wdXRlZE1pbkhlaWdodChsYXlvdXRCb3gsIHVzZWRWZXJ0aWNhbFZh
bHVlc0ZvckhlaWdodCkpIHsKICAgICAgICAgYXV0byB1c2VkVmFsdWVzRm9yTWluSGVpZ2h0ID0g
VXNlZFZlcnRpY2FsVmFsdWVzIHsgY29udGFpbmluZ0Jsb2NrSGVpZ2h0LCBtaW5IZWlnaHQgfTsK
LSAgICAgICAgYXV0byBtaW5WZXJ0aWNhbEdlb21ldHJ5ID0gY29tcHV0ZSh1c2VkVmFsdWVzRm9y
TWluSGVpZ2h0KTsKKyAgICAgICAgYXV0byBtaW5WZXJ0aWNhbEdlb21ldHJ5ID0gY29tcHV0ZSh1
c2VkSG9yaXpvbnRhbFZhbHVlcywgdXNlZFZhbHVlc0Zvck1pbkhlaWdodCk7CiAgICAgICAgIGlm
ICh2ZXJ0aWNhbEdlb21ldHJ5LmhlaWdodEFuZE1hcmdpbi5oZWlnaHQgPCBtaW5WZXJ0aWNhbEdl
b21ldHJ5LmhlaWdodEFuZE1hcmdpbi5oZWlnaHQpCiAgICAgICAgICAgICB2ZXJ0aWNhbEdlb21l
dHJ5ID0gbWluVmVydGljYWxHZW9tZXRyeTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9G
b3JtYXR0aW5nQ29udGV4dC5oCmluZGV4IDE0ZjhiZDQ5NjliZGFiMTIyNzczZmMzMmM0NzJhNWE5
ZDBiZWI5NDIuLjE4Mzk2YmQyMTIzN2FlYzFiZGJmODIxYzBjNjg3ODRlYjc3YWJjNmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5oCkBAIC05NSw3ICs5NSw3IEBA
IHByb3RlY3RlZDoKICAgICBwdWJsaWM6CiAgICAgICAgIEdlb21ldHJ5KGNvbnN0IEZvcm1hdHRp
bmdDb250ZXh0Jik7CiAKLSAgICAgICAgVmVydGljYWxHZW9tZXRyeSBvdXRPZkZsb3dWZXJ0aWNh
bEdlb21ldHJ5KGNvbnN0IEJveCYsIFVzZWRWZXJ0aWNhbFZhbHVlcykgY29uc3Q7CisgICAgICAg
IFZlcnRpY2FsR2VvbWV0cnkgb3V0T2ZGbG93VmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBV
c2VkSG9yaXpvbnRhbFZhbHVlcywgVXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdDsKICAgICAgICAg
SG9yaXpvbnRhbEdlb21ldHJ5IG91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeShjb25zdCBCb3gm
LCBVc2VkSG9yaXpvbnRhbFZhbHVlcyk7CiAKICAgICAgICAgSGVpZ2h0QW5kTWFyZ2luIGZsb2F0
aW5nSGVpZ2h0QW5kTWFyZ2luKGNvbnN0IEJveCYsIFVzZWRWZXJ0aWNhbFZhbHVlcywgVXNlZEhv
cml6b250YWxWYWx1ZXMpIGNvbnN0OwpAQCAtMTM0LDEwICsxMzQsMTAgQEAgcHJvdGVjdGVkOgog
ICAgICAgICBjb25zdCBGb3JtYXR0aW5nQ29udGV4dCYgZm9ybWF0dGluZ0NvbnRleHQoKSBjb25z
dCB7IHJldHVybiBtX2Zvcm1hdHRpbmdDb250ZXh0OyB9CiAKICAgICBwcml2YXRlOgotICAgICAg
ICBWZXJ0aWNhbEdlb21ldHJ5IG91dE9mRmxvd1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25z
dCBCb3gmLCBVc2VkVmVydGljYWxWYWx1ZXMpIGNvbnN0OworICAgICAgICBWZXJ0aWNhbEdlb21l
dHJ5IG91dE9mRmxvd1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBVc2VkSG9y
aXpvbnRhbFZhbHVlcywgVXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdDsKICAgICAgICAgSG9yaXpv
bnRhbEdlb21ldHJ5IG91dE9mRmxvd1JlcGxhY2VkSG9yaXpvbnRhbEdlb21ldHJ5KGNvbnN0IEJv
eCYsIFVzZWRIb3Jpem9udGFsVmFsdWVzKSBjb25zdDsKIAotICAgICAgICBWZXJ0aWNhbEdlb21l
dHJ5IG91dE9mRmxvd05vblJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBVc2Vk
VmVydGljYWxWYWx1ZXMpIGNvbnN0OworICAgICAgICBWZXJ0aWNhbEdlb21ldHJ5IG91dE9mRmxv
d05vblJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmLCBVc2VkSG9yaXpvbnRhbFZh
bHVlcywgVXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdDsKICAgICAgICAgSG9yaXpvbnRhbEdlb21l
dHJ5IG91dE9mRmxvd05vblJlcGxhY2VkSG9yaXpvbnRhbEdlb21ldHJ5KGNvbnN0IEJveCYsIFVz
ZWRIb3Jpem9udGFsVmFsdWVzKTsKIAogICAgICAgICBIZWlnaHRBbmRNYXJnaW4gZmxvYXRpbmdS
ZXBsYWNlZEhlaWdodEFuZE1hcmdpbihjb25zdCBCb3gmLCBVc2VkVmVydGljYWxWYWx1ZXMpIGNv
bnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0
R2VvbWV0cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0R2Vv
bWV0cnkuY3BwCmluZGV4IGJiMTU2OWI5Y2FiMWFiMzEyYTcwMTczNzFkOGM3MzFmZGM1N2Y3MDUu
LjUyY2FkYWE4MzFjNjYwNjc4YjFkOTdmM2FmN2NiYmQ4N2ZiNTg2MGIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKQEAgLTI3
MiwxMCArMjcyLDExIEBAIExheW91dFVuaXQgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5Ojpz
aHJpbmtUb0ZpdFdpZHRoKGNvbnN0IEJveCYgZm9ybWF0dGluZ1JvCiAgICAgcmV0dXJuIHN0ZDo6
bWluKHN0ZDo6bWF4KGludHJpbnNpY1dpZHRoQ29uc3RyYWludHMubWluaW11bSwgYXZhaWxhYmxl
V2lkdGgpLCBpbnRyaW5zaWNXaWR0aENvbnN0cmFpbnRzLm1heGltdW0pOwogfQogCi1WZXJ0aWNh
bEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVwbGFj
ZWRWZXJ0aWNhbEdlb21ldHJ5KGNvbnN0IEJveCYgbGF5b3V0Qm94LCBVc2VkVmVydGljYWxWYWx1
ZXMgdXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdAorVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5n
Q29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd05vblJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShj
b25zdCBCb3gmIGxheW91dEJveCwgVXNlZEhvcml6b250YWxWYWx1ZXMgdXNlZEhvcml6b250YWxW
YWx1ZXMsIFVzZWRWZXJ0aWNhbFZhbHVlcyB1c2VkVmVydGljYWxWYWx1ZXMpIGNvbnN0CiB7CiAg
ICAgQVNTRVJUKGxheW91dEJveC5pc091dE9mRmxvd1Bvc2l0aW9uZWQoKSAmJiAhbGF5b3V0Qm94
LnJlcGxhY2VkKCkpOwogICAgIEFTU0VSVCh1c2VkVmVydGljYWxWYWx1ZXMuY29udGFpbmluZ0Js
b2NrSGVpZ2h0KTsKKyAgICBBU1NFUlQodXNlZEhvcml6b250YWxWYWx1ZXMuY29udGFpbmluZ0Js
b2NrV2lkdGgpOwogCiAgICAgLy8gMTAuNi40IEFic29sdXRlbHkgcG9zaXRpb25lZCwgbm9uLXJl
cGxhY2VkIGVsZW1lbnRzCiAgICAgLy8KQEAgLTMwNCwxNCArMzA1LDEzIEBAIFZlcnRpY2FsR2Vv
bWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dOb25SZXBsYWNlZFZl
cnRpY2FsR2VvbWV0CiAgICAgYXV0byYgZm9ybWF0dGluZ0NvbnRleHQgPSB0aGlzLT5mb3JtYXR0
aW5nQ29udGV4dCgpOwogICAgIGF1dG8mIHN0eWxlID0gbGF5b3V0Qm94LnN0eWxlKCk7CiAgICAg
YXV0byYgYm94R2VvbWV0cnkgPSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveChsYXlv
dXRCb3gpOwotICAgIGF1dG8mIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5ID0gZm9ybWF0dGluZ0Nv
bnRleHQuZ2VvbWV0cnlGb3JCb3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSk7CiAgICAg
YXV0byBjb250YWluaW5nQmxvY2tIZWlnaHQgPSAqdXNlZFZlcnRpY2FsVmFsdWVzLmNvbnRhaW5p
bmdCbG9ja0hlaWdodDsKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gY29udGFpbmlu
Z0Jsb2NrR2VvbWV0cnkucGFkZGluZ0JveFdpZHRoKCk7CisgICAgYXV0byBjb250YWluaW5nQmxv
Y2tXaWR0aCA9ICp1c2VkSG9yaXpvbnRhbFZhbHVlcy5jb250YWluaW5nQmxvY2tXaWR0aDsKIAog
ICAgIGF1dG8gdG9wID0gY29tcHV0ZWRWYWx1ZUlmTm90QXV0byhzdHlsZS5sb2dpY2FsVG9wKCks
IGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKICAgICBhdXRvIGJvdHRvbSA9IGNvbXB1dGVkVmFsdWVJ
Zk5vdEF1dG8oc3R5bGUubG9naWNhbEJvdHRvbSgpLCBjb250YWluaW5nQmxvY2tXaWR0aCk7CiAg
ICAgYXV0byBoZWlnaHQgPSB1c2VkVmVydGljYWxWYWx1ZXMuaGVpZ2h0ID8gdXNlZFZlcnRpY2Fs
VmFsdWVzLmhlaWdodC52YWx1ZSgpIDogY29tcHV0ZWRIZWlnaHRWYWx1ZShsYXlvdXRCb3gsIEhl
aWdodFR5cGU6Ok5vcm1hbCwgdXNlZFZlcnRpY2FsVmFsdWVzKTsKLSAgICBhdXRvIGNvbXB1dGVk
VmVydGljYWxNYXJnaW4gPSBHZW9tZXRyeTo6Y29tcHV0ZWRWZXJ0aWNhbE1hcmdpbihsYXlvdXRC
b3gsIFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgY29udGFpbmluZ0Jsb2NrV2lkdGggfSk7CisgICAg
YXV0byBjb21wdXRlZFZlcnRpY2FsTWFyZ2luID0gR2VvbWV0cnk6OmNvbXB1dGVkVmVydGljYWxN
YXJnaW4obGF5b3V0Qm94LCB1c2VkSG9yaXpvbnRhbFZhbHVlcyk7CiAgICAgVXNlZFZlcnRpY2Fs
TWFyZ2luOjpOb25Db2xsYXBzZWRWYWx1ZXMgdXNlZFZlcnRpY2FsTWFyZ2luOyAKICAgICBhdXRv
IHBhZGRpbmdUb3AgPSBib3hHZW9tZXRyeS5wYWRkaW5nVG9wKCkudmFsdWVPcigwKTsKICAgICBh
dXRvIHBhZGRpbmdCb3R0b20gPSBib3hHZW9tZXRyeS5wYWRkaW5nQm90dG9tKCkudmFsdWVPcigw
KTsKQEAgLTM4OCw3ICszODgsNyBAQCBWZXJ0aWNhbEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0
OjpHZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVwbGFjZWRWZXJ0aWNhbEdlb21ldAogCiAgICAgLy8g
Rm9yIG91dC1vZi1mbG93IGVsZW1lbnRzIHRoZSBjb250YWluaW5nIGJsb2NrIGlzIGZvcm1lZCBi
eSB0aGUgcGFkZGluZyBlZGdlIG9mIHRoZSBhbmNlc3Rvci4KICAgICAvLyBBdCB0aGlzIHBvaW50
IHRoZSBwb3NpdGlvbmVkIHZhbHVlIGlzIGluIHRoZSBjb29yZGluYXRlIHN5c3RlbSBvZiB0aGUg
cGFkZGluZyBib3guIExldCdzIGNvbnZlcnQgaXQgdG8gYm9yZGVyIGJveCBjb29yZGluYXRlIHN5
c3RlbS4KLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1BhZGRpbmdWZXJ0aWNhbEVkZ2UgPSBjb250
YWluaW5nQmxvY2tHZW9tZXRyeS5wYWRkaW5nQm94VG9wKCk7CisgICAgYXV0byBjb250YWluaW5n
QmxvY2tQYWRkaW5nVmVydGljYWxFZGdlID0gZm9ybWF0dGluZ0NvbnRleHQuZ2VvbWV0cnlGb3JC
b3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSkucGFkZGluZ0JveFRvcCgpOwogICAgICp0
b3AgKz0gY29udGFpbmluZ0Jsb2NrUGFkZGluZ1ZlcnRpY2FsRWRnZTsKICAgICAqYm90dG9tICs9
IGNvbnRhaW5pbmdCbG9ja1BhZGRpbmdWZXJ0aWNhbEVkZ2U7CiAKQEAgLTU0Niw5ICs1NDYsMTEg
QEAgSG9yaXpvbnRhbEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZG
bG93Tm9uUmVwbGFjZWRIb3Jpem9udGFsR2UKICAgICByZXR1cm4geyAqbGVmdCwgKnJpZ2h0LCB7
IGNvbnRlbnRXaWR0aCgpLCB1c2VkSG9yaXpvbnRhbE1hcmdpbiwgY29tcHV0ZWRIb3Jpem9udGFs
TWFyZ2luIH0gfTsKIH0KIAotVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2Vv
bWV0cnk6Om91dE9mRmxvd1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmIGxheW91
dEJveCwgVXNlZFZlcnRpY2FsVmFsdWVzIHVzZWRWZXJ0aWNhbFZhbHVlcykgY29uc3QKK1ZlcnRp
Y2FsR2VvbWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dSZXBsYWNl
ZFZlcnRpY2FsR2VvbWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gsIFVzZWRIb3Jpem9udGFsVmFs
dWVzIHVzZWRIb3Jpem9udGFsVmFsdWVzLCBVc2VkVmVydGljYWxWYWx1ZXMgdXNlZFZlcnRpY2Fs
VmFsdWVzKSBjb25zdAogewogICAgIEFTU0VSVChsYXlvdXRCb3guaXNPdXRPZkZsb3dQb3NpdGlv
bmVkKCkgJiYgbGF5b3V0Qm94LnJlcGxhY2VkKCkpOworICAgIEFTU0VSVCh1c2VkVmVydGljYWxW
YWx1ZXMuY29udGFpbmluZ0Jsb2NrSGVpZ2h0KTsKKyAgICBBU1NFUlQodXNlZEhvcml6b250YWxW
YWx1ZXMuY29udGFpbmluZ0Jsb2NrV2lkdGgpOwogCiAgICAgLy8gMTAuNi41IEFic29sdXRlbHkg
cG9zaXRpb25lZCwgcmVwbGFjZWQgZWxlbWVudHMKICAgICAvLwpAQCAtNTYzLDE0ICs1NjUsMTMg
QEAgVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxv
d1JlcGxhY2VkVmVydGljYWxHZW9tZXRyeSgKICAgICBhdXRvJiBmb3JtYXR0aW5nQ29udGV4dCA9
IHRoaXMtPmZvcm1hdHRpbmdDb250ZXh0KCk7CiAgICAgYXV0byYgc3R5bGUgPSBsYXlvdXRCb3gu
c3R5bGUoKTsKICAgICBhdXRvJiBib3hHZW9tZXRyeSA9IGZvcm1hdHRpbmdDb250ZXh0Lmdlb21l
dHJ5Rm9yQm94KGxheW91dEJveCk7Ci0gICAgYXV0byYgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkg
PSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94LmNvbnRhaW5pbmdC
bG9jaygpKTsKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0hlaWdodCA9IGNvbnRhaW5pbmdCbG9j
a0dlb21ldHJ5LnBhZGRpbmdCb3hIZWlnaHQoKTsKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dp
ZHRoID0gY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkucGFkZGluZ0JveFdpZHRoKCk7CisgICAgYXV0
byBjb250YWluaW5nQmxvY2tIZWlnaHQgPSAqdXNlZFZlcnRpY2FsVmFsdWVzLmNvbnRhaW5pbmdC
bG9ja0hlaWdodDsKKyAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1dpZHRoID0gKnVzZWRIb3Jpem9u
dGFsVmFsdWVzLmNvbnRhaW5pbmdCbG9ja1dpZHRoOwogCiAgICAgYXV0byB0b3AgPSBjb21wdXRl
ZFZhbHVlSWZOb3RBdXRvKHN0eWxlLmxvZ2ljYWxUb3AoKSwgY29udGFpbmluZ0Jsb2NrV2lkdGgp
OwogICAgIGF1dG8gYm90dG9tID0gY29tcHV0ZWRWYWx1ZUlmTm90QXV0byhzdHlsZS5sb2dpY2Fs
Qm90dG9tKCksIGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKICAgICBhdXRvIGhlaWdodCA9IGlubGlu
ZVJlcGxhY2VkSGVpZ2h0QW5kTWFyZ2luKGxheW91dEJveCwgdXNlZFZlcnRpY2FsVmFsdWVzKS5o
ZWlnaHQ7Ci0gICAgYXV0byBjb21wdXRlZFZlcnRpY2FsTWFyZ2luID0gR2VvbWV0cnk6OmNvbXB1
dGVkVmVydGljYWxNYXJnaW4obGF5b3V0Qm94LCBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IGNvbnRh
aW5pbmdCbG9ja1dpZHRoIH0pOworICAgIGF1dG8gY29tcHV0ZWRWZXJ0aWNhbE1hcmdpbiA9IEdl
b21ldHJ5Ojpjb21wdXRlZFZlcnRpY2FsTWFyZ2luKGxheW91dEJveCwgdXNlZEhvcml6b250YWxW
YWx1ZXMpOwogICAgIE9wdGlvbmFsPExheW91dFVuaXQ+IHVzZWRNYXJnaW5CZWZvcmUgPSBjb21w
dXRlZFZlcnRpY2FsTWFyZ2luLmJlZm9yZTsKICAgICBPcHRpb25hbDxMYXlvdXRVbml0PiB1c2Vk
TWFyZ2luQWZ0ZXIgPSBjb21wdXRlZFZlcnRpY2FsTWFyZ2luLmFmdGVyOwogICAgIGF1dG8gcGFk
ZGluZ1RvcCA9IGJveEdlb21ldHJ5LnBhZGRpbmdUb3AoKS52YWx1ZU9yKDApOwpAQCAtNjE2LDcg
KzYxNyw3IEBAIFZlcnRpY2FsR2VvbWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5Ojpv
dXRPZkZsb3dSZXBsYWNlZFZlcnRpY2FsR2VvbWV0cnkoCiAKICAgICAvLyBGb3Igb3V0LW9mLWZs
b3cgZWxlbWVudHMgdGhlIGNvbnRhaW5pbmcgYmxvY2sgaXMgZm9ybWVkIGJ5IHRoZSBwYWRkaW5n
IGVkZ2Ugb2YgdGhlIGFuY2VzdG9yLgogICAgIC8vIEF0IHRoaXMgcG9pbnQgdGhlIHBvc2l0aW9u
ZWQgdmFsdWUgaXMgaW4gdGhlIGNvb3JkaW5hdGUgc3lzdGVtIG9mIHRoZSBwYWRkaW5nIGJveC4g
TGV0J3MgY29udmVydCBpdCB0byBib3JkZXIgYm94IGNvb3JkaW5hdGUgc3lzdGVtLgotICAgIGF1
dG8gY29udGFpbmluZ0Jsb2NrUGFkZGluZ1ZlcnRpY2FsRWRnZSA9IGNvbnRhaW5pbmdCbG9ja0dl
b21ldHJ5LnBhZGRpbmdCb3hUb3AoKTsKKyAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja1BhZGRpbmdW
ZXJ0aWNhbEVkZ2UgPSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94
LmNvbnRhaW5pbmdCbG9jaygpKS5wYWRkaW5nQm94VG9wKCk7CiAgICAgKnRvcCArPSBjb250YWlu
aW5nQmxvY2tQYWRkaW5nVmVydGljYWxFZGdlOwogICAgICpib3R0b20gKz0gY29udGFpbmluZ0Js
b2NrUGFkZGluZ1ZlcnRpY2FsRWRnZTsKIApAQCAtODExLDEzICs4MTIsMTMgQEAgV2lkdGhBbmRN
YXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpmbG9hdGluZ1JlcGxhY2VkV2lkdGhB
bmRNYXJnaW4oY29uc3QKICAgICAgICAgdXNlZFZhbHVlcy53aWR0aCwgVXNlZEhvcml6b250YWxN
YXJnaW4geyBjb21wdXRlZEhvcml6b250YWxNYXJnaW4uc3RhcnQudmFsdWVPcigwKSwgY29tcHV0
ZWRIb3Jpem9udGFsTWFyZ2luLmVuZC52YWx1ZU9yKDApIH0gfSk7CiB9CiAKLVZlcnRpY2FsR2Vv
bWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dWZXJ0aWNhbEdlb21l
dHJ5KGNvbnN0IEJveCYgbGF5b3V0Qm94LCBVc2VkVmVydGljYWxWYWx1ZXMgdXNlZFZlcnRpY2Fs
VmFsdWVzKSBjb25zdAorVmVydGljYWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0
cnk6Om91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gsIFVzZWRI
b3Jpem9udGFsVmFsdWVzIHVzZWRIb3Jpem9udGFsVmFsdWVzLCBVc2VkVmVydGljYWxWYWx1ZXMg
dXNlZFZlcnRpY2FsVmFsdWVzKSBjb25zdAogewogICAgIEFTU0VSVChsYXlvdXRCb3guaXNPdXRP
ZkZsb3dQb3NpdGlvbmVkKCkpOwogCiAgICAgaWYgKCFsYXlvdXRCb3gucmVwbGFjZWQoKSkKLSAg
ICAgICAgcmV0dXJuIG91dE9mRmxvd05vblJlcGxhY2VkVmVydGljYWxHZW9tZXRyeShsYXlvdXRC
b3gsIHVzZWRWZXJ0aWNhbFZhbHVlcyk7Ci0gICAgcmV0dXJuIG91dE9mRmxvd1JlcGxhY2VkVmVy
dGljYWxHZW9tZXRyeShsYXlvdXRCb3gsIHVzZWRWZXJ0aWNhbFZhbHVlcyk7CisgICAgICAgIHJl
dHVybiBvdXRPZkZsb3dOb25SZXBsYWNlZFZlcnRpY2FsR2VvbWV0cnkobGF5b3V0Qm94LCB1c2Vk
SG9yaXpvbnRhbFZhbHVlcywgdXNlZFZlcnRpY2FsVmFsdWVzKTsKKyAgICByZXR1cm4gb3V0T2ZG
bG93UmVwbGFjZWRWZXJ0aWNhbEdlb21ldHJ5KGxheW91dEJveCwgdXNlZEhvcml6b250YWxWYWx1
ZXMsIHVzZWRWZXJ0aWNhbFZhbHVlcyk7CiB9CiAKIEhvcml6b250YWxHZW9tZXRyeSBGb3JtYXR0
aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeShjb25zdCBC
b3gmIGxheW91dEJveCwgVXNlZEhvcml6b250YWxWYWx1ZXMgdXNlZFZhbHVlcykK
</data>

          </attachment>
      

    </bug>

</bugzilla>