<?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>205811</bug_id>
          
          <creation_ts>2020-01-06 10:40:50 -0800</creation_ts>
          <short_desc>[LFC] UsedHorizontalValues::Constraints should not take Display::Box</short_desc>
          <delta_ts>2020-01-06 17:10:38 -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>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>1603128</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-01-06 10:40:50 -0800</bug_when>
    <thetext>and not the Display::Box.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1603129</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-06 10:41:10 -0800</bug_when>
    <thetext>&lt;rdar://problem/58346356&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1603134</commentid>
    <comment_count>2</comment_count>
      <attachid>386861</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-01-06 10:45:19 -0800</bug_when>
    <thetext>Created attachment 386861
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1603355</commentid>
    <comment_count>3</comment_count>
      <attachid>386909</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-01-06 16:16:53 -0800</bug_when>
    <thetext>Created attachment 386909
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1603384</commentid>
    <comment_count>4</comment_count>
      <attachid>386909</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-06 17:10:36 -0800</bug_when>
    <thetext>Comment on attachment 386909
Patch

Clearing flags on attachment: 386909

Committed r254102: &lt;https://trac.webkit.org/changeset/254102&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1603385</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-06 17:10:38 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>386861</attachid>
            <date>2020-01-06 10:45:19 -0800</date>
            <delta_ts>2020-01-06 16:16:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205811-20200106104518.patch</filename>
            <type>text/plain</type>
            <size>14932</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0MDQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTY1NGRjNDgzNGQ3OGQ1
YzgzYzY4ZDc2MGY2OTVkZWM3OTc1MWMwNy4uOGE0NjQ4ZDE2OGU1YjA0Y2RiYTg5M2U1YzRmNTY5
MTdlMjZjNzRiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIwLTAxLTA2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ10gVXNlZEhvcml6b250
YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHNob3VsZCB0YWtlIERpc3BsYXk6OlJlY3QKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNTgxMQorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNTgzNDYzNTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgUGFzc2luZyBpbiB0aGUgYWN0dWFsIGJveCByZWN0IChjb250ZW50
IGJveCwgcGFkZGluZyBib3gpIHRvIFVzZWRIb3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyBt
YWtlcyB0aGUKKyAgICAgICAgY29uc3RyYWludCBsb2dpYyBsb29rIGNsZWFyLgorCisgICAgICAg
ICogbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91
dDo6b3V0T2ZGbG93SG9yaXpvbnRhbENvbnN0cmFpbnRzKToKKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dDo6Rm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVCb3JkZXJBbmRQYWRkaW5nKToKKyAgICAg
ICAgKiBsYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRRdWlya3MuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6UXVpcmtzOjpoZWlnaHRWYWx1ZU9mTmVhcmVz
dENvbnRhaW5pbmdCbG9ja1dpdGhGaXhlZEhlaWdodCk6CisgICAgICAgICogbGF5b3V0L0xheW91
dFVuaXRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6VXNlZEhvcml6b250YWxWYWx1
ZXM6OkNvbnN0cmFpbnRzOjpDb25zdHJhaW50cyk6CisgICAgICAgICogbGF5b3V0L0xheW91dFVu
aXRzLmg6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdD
b250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29u
dGV4dDo6cGxhY2VJbkZsb3dQb3NpdGlvbmVkQ2hpbGRyZW4pOgorICAgICAgICAoV2ViQ29yZTo6
TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlU3RhdGljSG9yaXpvbnRhbFBv
c2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29udGV4
dDo6Y29tcHV0ZUVzdGltYXRlZFZlcnRpY2FsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6
TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlSGVpZ2h0QW5kTWFyZ2luKToK
KyAgICAgICAgKiBsYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHRR
dWlya3MuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250
ZXh0OjpRdWlya3M6OnN0cmV0Y2hlZEluRmxvd0hlaWdodCk6CisgICAgICAgICogbGF5b3V0L2Js
b2NrZm9ybWF0dGluZy9CbG9ja01hcmdpbkNvbGxhcHNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6TWFyZ2luQ29sbGFwc2U6OnBvc2l0aXZl
TmVnYXRpdmVWYWx1ZXMgY29uc3QpOgorICAgICAgICAqIGxheW91dC9pbmxpbmVmb3JtYXR0aW5n
L0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmxheW91dEluRmxvd0NvbnRlbnQpOgorCiAyMDIwLTAx
LTA1ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW1NMTF0gR2Vu
ZXJhdGUgcnVucyBmb3IgcHJlc2VydmVkIG5ldyBsaW5lcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggYzlmNmU3MjVkMmY4NTY1YzE2MjA1MTc2N2Yw
ODhhNDM2OWRkMDg4Ny4uZTczNWFkMDhmMjQ3MjZkYTM2OGIzMjgzYTk2YmI5NDg1MmFhOGJiZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC00Nyw3
ICs0Nyw3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChGb3JtYXR0aW5nQ29udGV4dCk7
CiAKIHN0YXRpYyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMgb3V0T2ZGbG93SG9y
aXpvbnRhbENvbnN0cmFpbnRzKGNvbnN0IERpc3BsYXk6OkJveCYgY29udGFpbmluZ0Jsb2NrR2Vv
bWV0cnkpCiB7Ci0gICAgcmV0dXJuIFVzZWRIb3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7
IGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5LnBhZGRpbmdCb3hMZWZ0KCksIGNvbnRhaW5pbmdCbG9j
a0dlb21ldHJ5LnBhZGRpbmdCb3hXaWR0aCgpIH07CisgICAgcmV0dXJuIFVzZWRIb3Jpem9udGFs
VmFsdWVzOjpDb25zdHJhaW50cyB7IGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5LnBhZGRpbmdCb3go
KSB9OwogfQogCiBzdGF0aWMgVXNlZFZlcnRpY2FsVmFsdWVzOjpDb25zdHJhaW50cyBvdXRPZkZs
b3dWZXJ0aWNhbENvbnN0cmFpbnRzKGNvbnN0IERpc3BsYXk6OkJveCYgY29udGFpbmluZ0Jsb2Nr
R2VvbWV0cnkpCkBAIC0xNDQsNyArMTQ0LDcgQEAgdm9pZCBGb3JtYXR0aW5nQ29udGV4dDo6Y29t
cHV0ZU91dE9mRmxvd1ZlcnRpY2FsR2VvbWV0cnkoY29uc3QgQm94JiBsYXlvdXRCb3gpCiB2b2lk
IEZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlQm9yZGVyQW5kUGFkZGluZyhjb25zdCBCb3gmIGxh
eW91dEJveCwgT3B0aW9uYWw8VXNlZEhvcml6b250YWxWYWx1ZXM+IHVzZWRIb3Jpem9udGFsVmFs
dWVzKQogewogICAgIGlmICghdXNlZEhvcml6b250YWxWYWx1ZXMpCi0gICAgICAgIHVzZWRIb3Jp
em9udGFsVmFsdWVzID0gVXNlZEhvcml6b250YWxWYWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVl
czo6Q29uc3RyYWludHMgeyBnZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9j
aygpKSB9IH07CisgICAgICAgIHVzZWRIb3Jpem9udGFsVmFsdWVzID0gVXNlZEhvcml6b250YWxW
YWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMgeyBnZW9tZXRyeUZvckJv
eCgqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9jaygpKS5jb250ZW50Qm94KCkgfSB9OwogICAgIGF1
dG8mIGRpc3BsYXlCb3ggPSBmb3JtYXR0aW5nU3RhdGUoKS5kaXNwbGF5Qm94KGxheW91dEJveCk7
CiAgICAgZGlzcGxheUJveC5zZXRCb3JkZXIoZ2VvbWV0cnkoKS5jb21wdXRlZEJvcmRlcihsYXlv
dXRCb3gpKTsKICAgICBkaXNwbGF5Qm94LnNldFBhZGRpbmcoZ2VvbWV0cnkoKS5jb21wdXRlZFBh
ZGRpbmcobGF5b3V0Qm94LCAqdXNlZEhvcml6b250YWxWYWx1ZXMpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dFF1aXJrcy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRRdWlya3MuY3BwCmluZGV4IGEyOWU0NmI3
MTJlZTEwM2QxMzdhMmYxZmVjMjA4MTJiOTM1MzViMWMuLjM3MjkzYTViOWQ1Njg5OThmOGE1YThj
ODZlZGRjODYxZTRlNWY1MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3Jt
YXR0aW5nQ29udGV4dFF1aXJrcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1h
dHRpbmdDb250ZXh0UXVpcmtzLmNwcApAQCAtNTAsNyArNTAsOCBAQCBMYXlvdXRVbml0IEZvcm1h
dHRpbmdDb250ZXh0OjpRdWlya3M6OmhlaWdodFZhbHVlT2ZOZWFyZXN0Q29udGFpbmluZ0Jsb2Nr
V2l0aEZpeAogICAgICAgICBpZiAoY29udGFpbmluZ0Jsb2NrLT5pc0JvZHlCb3goKSB8fCBjb250
YWluaW5nQmxvY2stPmlzRG9jdW1lbnRCb3goKSkgewogICAgICAgICAgICAgYXV0byYgYm94R2Vv
bWV0cnkgPSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveCgqY29udGFpbmluZ0Jsb2Nr
LCBGb3JtYXR0aW5nQ29udGV4dDo6RXNjYXBlVHlwZTo6QWNjZXNzQW5jZXN0b3JGb3JtYXR0aW5n
Q29udGV4dCk7CiAKLSAgICAgICAgICAgIGF1dG8gdXNlZFZhbHVlcyA9IFVzZWRIb3Jpem9udGFs
VmFsdWVzIHsgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgZm9ybWF0dGluZ0Nv
bnRleHQuZ2VvbWV0cnlGb3JCb3goKmNvbnRhaW5pbmdCbG9jay0+Y29udGFpbmluZ0Jsb2NrKCks
IEZvcm1hdHRpbmdDb250ZXh0OjpFc2NhcGVUeXBlOjpBY2Nlc3NBbmNlc3RvckZvcm1hdHRpbmdD
b250ZXh0KSB9IH07CisgICAgICAgICAgICBhdXRvJiBjb250YWluaW5nQmxvY2tEaXNwbGF5Qm94
ID0gZm9ybWF0dGluZ0NvbnRleHQuZ2VvbWV0cnlGb3JCb3goKmNvbnRhaW5pbmdCbG9jay0+Y29u
dGFpbmluZ0Jsb2NrKCksIEZvcm1hdHRpbmdDb250ZXh0OjpFc2NhcGVUeXBlOjpBY2Nlc3NBbmNl
c3RvckZvcm1hdHRpbmdDb250ZXh0KTsKKyAgICAgICAgICAgIGF1dG8gdXNlZFZhbHVlcyA9IFVz
ZWRIb3Jpem9udGFsVmFsdWVzIHsgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsg
Y29udGFpbmluZ0Jsb2NrRGlzcGxheUJveC5jb250ZW50Qm94KCkgfSB9OwogICAgICAgICAgICAg
YXV0byB2ZXJ0aWNhbE1hcmdpbiA9IGZvcm1hdHRpbmdDb250ZXh0Lmdlb21ldHJ5KCkuY29tcHV0
ZWRWZXJ0aWNhbE1hcmdpbigqY29udGFpbmluZ0Jsb2NrLCB1c2VkVmFsdWVzKTsKICAgICAgICAg
ICAgIGF1dG8gdmVydGljYWxQYWRkaW5nID0gYm94R2VvbWV0cnkucGFkZGluZ1RvcCgpLnZhbHVl
T3IoMCkgKyBib3hHZW9tZXRyeS5wYWRkaW5nQm90dG9tKCkudmFsdWVPcigwKTsKICAgICAgICAg
ICAgIGF1dG8gdmVydGljYWxCb3JkZXIgPSBib3hHZW9tZXRyeS5ib3JkZXJUb3AoKSArIGJveEdl
b21ldHJ5LmJvcmRlckJvdHRvbSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L0xheW91dFVuaXRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9MYXlvdXRVbml0cy5jcHAK
aW5kZXggNGU0MmY3ZDkzOWFkOTg5YzFjYmQ0OGJiNzE4N2YxOTU4MjU0NTFjZS4uZDkyMzNjY2Y1
ZDc0NDRjMTYwY2YzZDAzY2Q0ZWMwYmE1Mzg5OTdlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L0xheW91dFVuaXRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvTGF5
b3V0VW5pdHMuY3BwCkBAIC0yOSwxMyArMjksMTQgQEAKICNpZiBFTkFCTEUoTEFZT1VUX0ZPUk1B
VFRJTkdfQ09OVEVYVCkKIAogI2luY2x1ZGUgIkRpc3BsYXlCb3guaCIKKyNpbmNsdWRlICJEaXNw
bGF5UmVjdC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBuYW1lc3BhY2UgTGF5b3V0IHsKIAot
VXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzOjpDb25zdHJhaW50cyhjb25zdCBEaXNw
bGF5OjpCb3gmIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5KQotICAgIDogY29udGVudEJveExlZnQo
Y29udGFpbmluZ0Jsb2NrR2VvbWV0cnkuY29udGVudEJveExlZnQoKSkKLSAgICAsIHdpZHRoKGNv
bnRhaW5pbmdCbG9ja0dlb21ldHJ5LmNvbnRlbnRCb3hXaWR0aCgpKQorVXNlZEhvcml6b250YWxW
YWx1ZXM6OkNvbnN0cmFpbnRzOjpDb25zdHJhaW50cyhjb25zdCBEaXNwbGF5OjpSZWN0JiBjb250
YWluaW5nQmxvY2tDb250ZW50Qm94KQorICAgIDogY29udGVudEJveExlZnQoY29udGFpbmluZ0Js
b2NrQ29udGVudEJveC5sZWZ0KCkpCisgICAgLCB3aWR0aChjb250YWluaW5nQmxvY2tDb250ZW50
Qm94LndpZHRoKCkpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9M
YXlvdXRVbml0cy5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xheW91dFVuaXRzLmgKaW5kZXgg
OWEzZTVlMmIyN2Y5Y2YxMzY0ZTIzNjQ4NTI2YWIyYmUwYmViOTYwYS4uYWI3N2RhOGFkNGU4NzVl
MDNhOTFiMWI1Yzc5NDdjZjRlNzExMmNiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5
b3V0L0xheW91dFVuaXRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xheW91dFVuaXRz
LmgKQEAgLTUwLDYgKzUwLDcgQEAgdXNpbmcgSW5saW5lTGF5b3V0UmVjdCA9IExheW91dFJlY3Q7
CiAKIG5hbWVzcGFjZSBEaXNwbGF5IHsKIGNsYXNzIEJveDsKK2NsYXNzIFJlY3Q7CiB9CiAKIG5h
bWVzcGFjZSBMYXlvdXQgewpAQCAtMTU3LDcgKzE1OCw3IEBAIHN0cnVjdCBWZXJ0aWNhbEdlb21l
dHJ5IHsKIAogc3RydWN0IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsKICAgICBzdHJ1Y3QgQ29uc3Ry
YWludHMgewotICAgICAgICBleHBsaWNpdCBDb25zdHJhaW50cyhjb25zdCBEaXNwbGF5OjpCb3gm
IGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5KTsKKyAgICAgICAgZXhwbGljaXQgQ29uc3RyYWludHMo
Y29uc3QgRGlzcGxheTo6UmVjdCYgY29udGFpbmluZ0Jsb2NrQ29udGVudEJveCk7CiAgICAgICAg
IGV4cGxpY2l0IENvbnN0cmFpbnRzKExheW91dFVuaXQgY29udGVudEJveExlZnQsIExheW91dFVu
aXQgaG9yaXpvbnRhbENvbnN0cmFpbnQpCiAgICAgICAgICAgICA6IGNvbnRlbnRCb3hMZWZ0KGNv
bnRlbnRCb3hMZWZ0KQogICAgICAgICAgICAgLCB3aWR0aChob3Jpem9udGFsQ29uc3RyYWludCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tG
b3JtYXR0aW5nQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0
aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4IDA1NmM0ODUwMGU4ZWEyZDZmYzVh
NmI3MmFjMjYyNjhkMTI0MjlkZGIuLmEyZjM5MjUwYWFjNmI5NzIxZmE3MDBhMTFiYWNhNTA3NzQw
Mzk3ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcv
QmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Js
b2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcApAQCAtMjE1LDcgKzIxNSw3
IEBAIHZvaWQgQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6cGxhY2VJbkZsb3dQb3NpdGlvbmVkQ2hp
bGRyZW4oY29uc3QgQm94JiBsYXlvdXRCb3gpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAg
ICAgICBhdXRvIGNvbXB1dGVJbkZsb3dQb3NpdGlvbmVkUG9zaXRpb24gPSBbJl0gewotICAgICAg
ICAgICAgYXV0byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsg
VXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgZ2VvbWV0cnlGb3JCb3goKmNoaWxk
Qm94LmNvbnRhaW5pbmdCbG9jaygpKSB9IH07CisgICAgICAgICAgICBhdXRvIHVzZWRIb3Jpem9u
dGFsVmFsdWVzID0gVXNlZEhvcml6b250YWxWYWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6
Q29uc3RyYWludHMgeyBnZW9tZXRyeUZvckJveCgqY2hpbGRCb3guY29udGFpbmluZ0Jsb2NrKCkp
LmNvbnRlbnRCb3goKSB9IH07CiAgICAgICAgICAgICBhdXRvIHBvc2l0aW9uT2Zmc2V0ID0gZ2Vv
bWV0cnkoKS5pbkZsb3dQb3NpdGlvbmVkUG9zaXRpb25PZmZzZXQoY2hpbGRCb3gsIHVzZWRIb3Jp
em9udGFsVmFsdWVzKTsKIAogICAgICAgICAgICAgYXV0byYgZGlzcGxheUJveCA9IGZvcm1hdHRp
bmdTdGF0ZSgpLmRpc3BsYXlCb3goY2hpbGRCb3gpOwpAQCAtMjQzLDcgKzI0Myw3IEBAIHZvaWQg
QmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZVN0YXRpY1ZlcnRpY2FsUG9zaXRpb24oY29u
c3QgRmxvYXRpbmdDb250ZXh0CiAKIHZvaWQgQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0
ZVN0YXRpY0hvcml6b250YWxQb3NpdGlvbihjb25zdCBCb3gmIGxheW91dEJveCkKIHsKLSAgICBh
dXRvIHVzZWRIb3Jpem9udGFsVmFsdWVzID0gVXNlZEhvcml6b250YWxWYWx1ZXMgeyBVc2VkSG9y
aXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMgeyBnZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94LmNv
bnRhaW5pbmdCbG9jaygpKSB9IH07CisgICAgYXV0byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVz
ZWRIb3Jpem9udGFsVmFsdWVzIHsgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsg
Z2VvbWV0cnlGb3JCb3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSkuY29udGVudEJveCgp
IH0gfTsKICAgICBmb3JtYXR0aW5nU3RhdGUoKS5kaXNwbGF5Qm94KGxheW91dEJveCkuc2V0TGVm
dChnZW9tZXRyeSgpLnN0YXRpY0hvcml6b250YWxQb3NpdGlvbihsYXlvdXRCb3gsIHVzZWRIb3Jp
em9udGFsVmFsdWVzKSk7CiB9CiAKQEAgLTI1NSw3ICsyNTUsNyBAQCB2b2lkIEJsb2NrRm9ybWF0
dGluZ0NvbnRleHQ6OmNvbXB1dGVTdGF0aWNQb3NpdGlvbihjb25zdCBGbG9hdGluZ0NvbnRleHQm
IGZsb2F0aQogCiB2b2lkIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVFc3RpbWF0ZWRW
ZXJ0aWNhbFBvc2l0aW9uKGNvbnN0IEJveCYgbGF5b3V0Qm94KQogewotICAgIGF1dG8gdXNlZEhv
cml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IFVzZWRIb3Jpem9udGFsVmFs
dWVzOjpDb25zdHJhaW50cyB7IGdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Js
b2NrKCkpIH0gfTsKKyAgICBhdXRvIHVzZWRIb3Jpem9udGFsVmFsdWVzID0gVXNlZEhvcml6b250
YWxWYWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMgeyBnZW9tZXRyeUZv
ckJveCgqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9jaygpKS5jb250ZW50Qm94KCkgfSB9OwogICAg
IGF1dG8gY29tcHV0ZWRWZXJ0aWNhbE1hcmdpbiA9IGdlb21ldHJ5KCkuY29tcHV0ZWRWZXJ0aWNh
bE1hcmdpbihsYXlvdXRCb3gsIHVzZWRIb3Jpem9udGFsVmFsdWVzKTsKICAgICBhdXRvIHVzZWRO
b25Db2xsYXBzZWRNYXJnaW4gPSBVc2VkVmVydGljYWxNYXJnaW46Ok5vbkNvbGxhcHNlZFZhbHVl
cyB7IGNvbXB1dGVkVmVydGljYWxNYXJnaW4uYmVmb3JlLnZhbHVlT3IoMCksIGNvbXB1dGVkVmVy
dGljYWxNYXJnaW4uYWZ0ZXIudmFsdWVPcigwKSB9OwogICAgIGF1dG8gZXN0aW1hdGVkTWFyZ2lu
QmVmb3JlID0gbWFyZ2luQ29sbGFwc2UoKS5lc3RpbWF0ZWRNYXJnaW5CZWZvcmUobGF5b3V0Qm94
LCB1c2VkTm9uQ29sbGFwc2VkTWFyZ2luKTsKQEAgLTQxNSw5ICs0MTUsMTAgQEAgdm9pZCBCbG9j
a0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlV2lkdGhBbmRNYXJnaW4oY29uc3QgQm94JiBsYXlv
dXRCb3gsIE9wdGlvbmEKIHZvaWQgQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUhlaWdo
dEFuZE1hcmdpbihjb25zdCBCb3gmIGxheW91dEJveCkKIHsKICAgICBhdXRvJiBjb250YWluaW5n
QmxvY2tHZW9tZXRyeSA9IGdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2Nr
KCkpOworICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrQ29udGVudEJveCA9IGNvbnRhaW5pbmdCbG9j
a0dlb21ldHJ5LmNvbnRlbnRCb3goKTsKICAgICBhdXRvIGNvbXB1dGUgPSBbJl0oYXV0byB1c2Vk
VmVydGljYWxWYWx1ZXMpIC0+IENvbnRlbnRIZWlnaHRBbmRNYXJnaW4gewogCi0gICAgICAgIGF1
dG8gdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IFVzZWRIb3Jp
em9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5IH0gfTsK
KyAgICAgICAgYXV0byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVz
IHsgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgY29udGFpbmluZ0Jsb2NrQ29u
dGVudEJveCB9IH07CiAgICAgICAgIGlmIChsYXlvdXRCb3guaXNJbkZsb3coKSkKICAgICAgICAg
ICAgIHJldHVybiBnZW9tZXRyeSgpLmluRmxvd0hlaWdodEFuZE1hcmdpbihsYXlvdXRCb3gsIHVz
ZWRIb3Jpem9udGFsVmFsdWVzLCB1c2VkVmVydGljYWxWYWx1ZXMpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRl
eHRRdWlya3MuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9j
a0Zvcm1hdHRpbmdDb250ZXh0UXVpcmtzLmNwcAppbmRleCA1ZDk2YzJiMjJlY2FmYzhhNGQ3ZTc4
MDVjM2EwY2M5NzYzOTAzZTk2Li4yNjMwNTIzOTgwN2Q5YWQzNDVkYjNhMDZjN2Q3NThmZDcwZDlk
MDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Js
b2NrRm9ybWF0dGluZ0NvbnRleHRRdWlya3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dFF1aXJrcy5jcHAKQEAgLTY5
LDggKzY5LDggQEAgQ29udGVudEhlaWdodEFuZE1hcmdpbiBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0
OjpRdWlya3M6OnN0cmV0Y2hlZEluRmxvd0hlaWdodChjb24KICAgICBhdXRvJiBkb2N1bWVudEJv
eCA9IGxheW91dEJveC5pc0RvY3VtZW50Qm94KCkgPyBsYXlvdXRCb3ggOiAqbGF5b3V0Qm94LnBh
cmVudCgpOwogICAgIGF1dG8mIGRvY3VtZW50Qm94R2VvbWV0cnkgPSBmb3JtYXR0aW5nQ29udGV4
dC5nZW9tZXRyeUZvckJveChkb2N1bWVudEJveCk7CiAKLSAgICBhdXRvJiBpbml0aWFsQ29udGFp
bmluZ0Jsb2NrR2VvbWV0cnkgPSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveChpbml0
aWFsQ29udGFpbmluZ0Jsb2NrKGxheW91dEJveCkpOwotICAgIGF1dG8gc3RyZWNoZWRIZWlnaHQg
PSBpbml0aWFsQ29udGFpbmluZ0Jsb2NrR2VvbWV0cnkuY29udGVudEJveEhlaWdodCgpOworICAg
IGF1dG8gaW5pdGlhbENvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3ggPSBmb3JtYXR0aW5nQ29udGV4
dC5nZW9tZXRyeUZvckJveChpbml0aWFsQ29udGFpbmluZ0Jsb2NrKGxheW91dEJveCkpLmNvbnRl
bnRCb3goKTsKKyAgICBhdXRvIHN0cmVjaGVkSGVpZ2h0ID0gaW5pdGlhbENvbnRhaW5pbmdCbG9j
a0NvbnRlbnRCb3guaGVpZ2h0KCk7CiAgICAgc3RyZWNoZWRIZWlnaHQgLT0gZG9jdW1lbnRCb3hH
ZW9tZXRyeS52ZXJ0aWNhbEJvcmRlcigpICsgZG9jdW1lbnRCb3hHZW9tZXRyeS52ZXJ0aWNhbFBh
ZGRpbmcoKS52YWx1ZU9yKDApOwogCiAgICAgTGF5b3V0VW5pdCB0b3RhbFZlcnRpY2FsTWFyZ2lu
OwpAQCAtODIsNyArODIsNyBAQCBDb250ZW50SGVpZ2h0QW5kTWFyZ2luIEJsb2NrRm9ybWF0dGlu
Z0NvbnRleHQ6OlF1aXJrczo6c3RyZXRjaGVkSW5GbG93SGVpZ2h0KGNvbgogICAgICAgICAvLyBI
ZXJlIGlzIHRoZSBxdWlya3kgcGFydCBmb3IgYm9keSBib3g6CiAgICAgICAgIC8vIFN0cmV0Y2gg
dGhlIGJvZHkgdXNpbmcgdGhlIGluaXRpYWwgY29udGFpbmluZyBibG9jaydzIGhlaWdodCBhbmQg
c2hyaW5rIGl0IHdpdGggZG9jdW1lbnQgYm94J3MgbWFyZ2luL2JvcmRlci9wYWRkaW5nLgogICAg
ICAgICAvLyBUaGlzIGxvb2tzIGV4dHJlbWVseSBvZGQgd2hlbiBodG1sIGhhcyBub24tYXV0byBo
ZWlnaHQuCi0gICAgICAgIGF1dG8gZG9jdW1lbnRCb3hWZXJ0aWNhbE1hcmdpbiA9IGZvcm1hdHRp
bmdDb250ZXh0Lmdlb21ldHJ5KCkuY29tcHV0ZWRWZXJ0aWNhbE1hcmdpbihkb2N1bWVudEJveCwg
VXNlZEhvcml6b250YWxWYWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMg
eyBpbml0aWFsQ29udGFpbmluZ0Jsb2NrR2VvbWV0cnkgfSB9KTsKKyAgICAgICAgYXV0byBkb2N1
bWVudEJveFZlcnRpY2FsTWFyZ2luID0gZm9ybWF0dGluZ0NvbnRleHQuZ2VvbWV0cnkoKS5jb21w
dXRlZFZlcnRpY2FsTWFyZ2luKGRvY3VtZW50Qm94LCBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IFVz
ZWRIb3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IGluaXRpYWxDb250YWluaW5nQmxvY2tD
b250ZW50Qm94IH0gfSk7CiAgICAgICAgIHN0cmVjaGVkSGVpZ2h0IC09IChkb2N1bWVudEJveFZl
cnRpY2FsTWFyZ2luLmJlZm9yZS52YWx1ZU9yKDApICsgZG9jdW1lbnRCb3hWZXJ0aWNhbE1hcmdp
bi5hZnRlci52YWx1ZU9yKDApKTsKIAogICAgICAgICBhdXRvJiBib2R5Qm94R2VvbWV0cnkgPSBm
b3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveChsYXlvdXRCb3gpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja01hcmdpbkNvbGxhcHNl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tNYXJnaW5D
b2xsYXBzZS5jcHAKaW5kZXggMWU4MjU3MTExZjRiMDVlNTIzN2QxOWVmN2IzYTJkYjU2MWIwY2Y1
Ny4uMDUxMmUwMThiNjBhMjVjMjE5NmFhZGRlZTRkMWRkNWEyMjdiMzEzMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja01hcmdpbkNvbGxhcHNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrTWFy
Z2luQ29sbGFwc2UuY3BwCkBAIC01MTIsNyArNTEyLDcgQEAgUG9zaXRpdmVBbmROZWdhdGl2ZVZl
cnRpY2FsTWFyZ2luOjpWYWx1ZXMgQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6TWFyZ2luQ29sbGFw
c2UKICAgICAgICAgcmV0dXJuIG1hcmdpblR5cGUgPT0gTWFyZ2luVHlwZTo6QmVmb3JlID8gcG9z
aXRpdmVBbmROZWdhdGl2ZVZlcnRpY2FsTWFyZ2luLmJlZm9yZSA6IHBvc2l0aXZlQW5kTmVnYXRp
dmVWZXJ0aWNhbE1hcmdpbi5hZnRlcjsgCiAgICAgfQogICAgIC8vIFRoaXMgaXMgdGhlIGVzdGlt
YXRlIHBhdGguIFdlIGRvbid0IHlldCBoYXZlIHBvc2l0aXZlL25lZ2F0aXZlIG1hcmdpbiBjb21w
dXRlZC4KLSAgICBhdXRvIHVzZWRWYWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IFVzZWRI
b3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IGZvcm1hdHRpbmdDb250ZXh0KCkuZ2VvbWV0
cnlGb3JCb3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSkgfSB9OworICAgIGF1dG8gdXNl
ZFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNv
bnN0cmFpbnRzIHsgZm9ybWF0dGluZ0NvbnRleHQoKS5nZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94
LmNvbnRhaW5pbmdCbG9jaygpKS5jb250ZW50Qm94KCkgfSB9OwogICAgIGF1dG8gY29tcHV0ZWRW
ZXJ0aWNhbE1hcmdpbiA9IGZvcm1hdHRpbmdDb250ZXh0KCkuZ2VvbWV0cnkoKS5jb21wdXRlZFZl
cnRpY2FsTWFyZ2luKGxheW91dEJveCwgdXNlZFZhbHVlcyk7CiAgICAgYXV0byBub25Db2xsYXBz
ZWRNYXJnaW4gPSBVc2VkVmVydGljYWxNYXJnaW46Ok5vbkNvbGxhcHNlZFZhbHVlcyB7IGNvbXB1
dGVkVmVydGljYWxNYXJnaW4uYmVmb3JlLnZhbHVlT3IoMCksIGNvbXB1dGVkVmVydGljYWxNYXJn
aW4uYWZ0ZXIudmFsdWVPcigwKSB9OyAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQu
Y3BwCmluZGV4IDg2ZTJjN2JkNDJiMGQ2MDBmZDI0MzUyNzI0ZWU5NDkwNmVhNTIxMzguLmE3NGY0
ODk5NDhhNmI2NjI2MTJhMzBkMWJjNTNmOGEzYzYzMzQ0MjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3Jt
YXR0aW5nQ29udGV4dC5jcHAKQEAgLTcyLDcgKzcyLDcgQEAgdm9pZCBJbmxpbmVGb3JtYXR0aW5n
Q29udGV4dDo6bGF5b3V0SW5GbG93Q29udGVudChJbnZhbGlkYXRpb25TdGF0ZSYgaW52YWxpZGF0
aW8KICAgICBpbnZhbGlkYXRlRm9ybWF0dGluZ1N0YXRlKGludmFsaWRhdGlvblN0YXRlKTsKICAg
ICBMT0dfV0lUSF9TVFJFQU0oRm9ybWF0dGluZ0NvbnRleHRMYXlvdXQsIHN0cmVhbSA8PCAiW1N0
YXJ0XSAtPiBpbmxpbmUgZm9ybWF0dGluZyBjb250ZXh0IC0+IGZvcm1hdHRpbmcgcm9vdCgiIDw8
ICZyb290KCkgPDwgIikiKTsKICAgICBhdXRvJiByb290R2VvbWV0cnkgPSBnZW9tZXRyeUZvckJv
eChyb290KCkpOwotICAgIGF1dG8gdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpvbnRh
bFZhbHVlcyB7IFVzZWRIb3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IHJvb3RHZW9tZXRy
eSB9IH07CisgICAgYXV0byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFs
dWVzIHsgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgcm9vdEdlb21ldHJ5LmNv
bnRlbnRCb3goKSB9IH07CiAgICAgYXV0byB1c2VkVmVydGljYWxWYWx1ZXMgPSBVc2VkVmVydGlj
YWxWYWx1ZXMgeyBVc2VkVmVydGljYWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgcm9vdEdlb21ldHJ5
IH0gfTsKICAgICBhdXRvKiBsYXlvdXRCb3ggPSByb290KCkuZmlyc3RJbkZsb3dPckZsb2F0aW5n
Q2hpbGQoKTsKICAgICAvLyAxLiBWaXNpdCBlYWNoIGlubGluZSBib3ggYW5kIHBhcnRpYWxseSBj
b21wdXRlIHRoZWlyIGdlb21ldHJ5IChtYXJnaW5zLCBwYWRkaW5ncyBhbmQgYm9yZGVycykuCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>386909</attachid>
            <date>2020-01-06 16:16:53 -0800</date>
            <delta_ts>2020-01-06 17:10:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205811-20200106161652.patch</filename>
            <type>text/plain</type>
            <size>19579</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0MDg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTJmMjAyOWUyNzhjMmIz
NWRlNWE0YmExYWFmNDAyODBmZDdmOTBlNy4uNmU4ODM1NTk5MjNhNzkwMTc3NzU5MGZmYmUxNzEw
MTk0Nzg3MDk0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIwLTAxLTA2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ10gVXNlZEhvcml6b250
YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHNob3VsZCBub3QgdGFrZSBEaXNwbGF5OjpCb3gKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNTgxMQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNTgzNDYzNTY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW50dGkg
S29pdmlzdG8uCisKKyAgICAgICAgUGFzc2luZyBpbiBvbmx5IHRoZSBhY3R1YWwgcmVjdCB2YWx1
ZXMgKGNvbnRlbnQvcGFkZGluZyBib3ggbGVmdC93aWR0aCkgdG8gVXNlZEhvcml6b250YWxWYWx1
ZXM6OkNvbnN0cmFpbnRzIG1ha2VzIHRoZQorICAgICAgICBjb25zdHJhaW50IGxvZ2ljIGxvb2sg
Y2xlYXIuCisKKyAgICAgICAgKiBsYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0OjpvdXRPZkZsb3dIb3Jpem9udGFsQ29uc3RyYWludHMpOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUJvcmRlckFu
ZFBhZGRpbmcpOgorICAgICAgICAqIGxheW91dC9Gb3JtYXR0aW5nQ29udGV4dFF1aXJrcy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpRdWlya3M6Omhl
aWdodFZhbHVlT2ZOZWFyZXN0Q29udGFpbmluZ0Jsb2NrV2l0aEZpeGVkSGVpZ2h0KToKKyAgICAg
ICAgKiBsYXlvdXQvTGF5b3V0VW5pdHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpV
c2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHM6OkNvbnN0cmFpbnRzKToKKyAgICAgICAg
KiBsYXlvdXQvTGF5b3V0VW5pdHMuaDoKKyAgICAgICAgKiBsYXlvdXQvYmxvY2tmb3JtYXR0aW5n
L0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpC
bG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpwbGFjZUluRmxvd1Bvc2l0aW9uZWRDaGlsZHJlbik6Cisg
ICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVT
dGF0aWNIb3Jpem9udGFsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9j
a0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlRXN0aW1hdGVkVmVydGljYWxQb3NpdGlvbik6Cisg
ICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVI
ZWlnaHRBbmRNYXJnaW4pOgorICAgICAgICAqIGxheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tG
b3JtYXR0aW5nQ29udGV4dFF1aXJrcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkJs
b2NrRm9ybWF0dGluZ0NvbnRleHQ6OlF1aXJrczo6c3RyZXRjaGVkSW5GbG93SGVpZ2h0KToKKyAg
ICAgICAgKiBsYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrTWFyZ2luQ29sbGFwc2UuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpNYXJnaW5D
b2xsYXBzZTo6cG9zaXRpdmVOZWdhdGl2ZVZhbHVlcyBjb25zdCk6CisgICAgICAgICogbGF5b3V0
L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGF5b3V0SW5GbG93Q29u
dGVudCk6CisKIDIwMjAtMDEtMDYgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgogCiAg
ICAgICAgIENvbnZlcnQgQVNTRVJUX0RJU0FCTEVEIHRvIEFTU0VSVF9FTkFCTEVELCBhbmQgZml4
IHNvbWUgdGVzdHMgb2YgTkRFQlVHIHRoYXQgc2hvdWxkIGFjdHVhbGx5IHRlc3QgZm9yIEFTU0VS
VF9FTkFCTEVELgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdD
b250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHAK
aW5kZXggOTRkNTYxYzYzNzgzMWY3YTdhMjNlNmRkNjE1MzJjYjVlNjk2OGVhNC4uZDc1ZmEyYWFk
MjA2ODliYTExNmRjYjU5MDhiZDA0NTJiOTdmY2Q4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwCkBAIC00NSwxNiArNDUsNiBAQCBuYW1lc3BhY2UgTGF5
b3V0IHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKEZvcm1hdHRpbmdDb250ZXh0KTsK
IAotc3RhdGljIFVzZWRIb3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyBvdXRPZkZsb3dIb3Jp
em9udGFsQ29uc3RyYWludHMoY29uc3QgRGlzcGxheTo6Qm94JiBjb250YWluaW5nQmxvY2tHZW9t
ZXRyeSkKLXsKLSAgICByZXR1cm4gVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsg
Y29udGFpbmluZ0Jsb2NrR2VvbWV0cnkucGFkZGluZ0JveExlZnQoKSwgY29udGFpbmluZ0Jsb2Nr
R2VvbWV0cnkucGFkZGluZ0JveFdpZHRoKCkgfTsKLX0KLQotc3RhdGljIFVzZWRWZXJ0aWNhbFZh
bHVlczo6Q29uc3RyYWludHMgb3V0T2ZGbG93VmVydGljYWxDb25zdHJhaW50cyhjb25zdCBEaXNw
bGF5OjpCb3gmIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5KQotewotICAgIHJldHVybiBVc2VkVmVy
dGljYWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkucGFkZGlu
Z0JveFRvcCgpLCBjb250YWluaW5nQmxvY2tHZW9tZXRyeS5wYWRkaW5nQm94SGVpZ2h0KCkgfTsK
LX0KLQogRm9ybWF0dGluZ0NvbnRleHQ6OkZvcm1hdHRpbmdDb250ZXh0KGNvbnN0IENvbnRhaW5l
ciYgZm9ybWF0dGluZ0NvbnRleHRSb290LCBGb3JtYXR0aW5nU3RhdGUmIGZvcm1hdHRpbmdTdGF0
ZSkKICAgICA6IG1fcm9vdChtYWtlV2Vha1B0cihmb3JtYXR0aW5nQ29udGV4dFJvb3QpKQogICAg
ICwgbV9mb3JtYXR0aW5nU3RhdGUoZm9ybWF0dGluZ1N0YXRlKQpAQCAtODIsOCArNzIsOCBAQCB2
b2lkIEZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlT3V0T2ZGbG93SG9yaXpvbnRhbEdlb21ldHJ5
KGNvbnN0IEJveCYgbGF5b3V0Qm94KQogICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrV2lkdGggPSBj
b250YWluaW5nQmxvY2tHZW9tZXRyeS5wYWRkaW5nQm94V2lkdGgoKTsKIAogICAgIGF1dG8gY29t
cHV0ZSA9IFsmXShPcHRpb25hbDxMYXlvdXRVbml0PiB1c2VkV2lkdGgpIHsKLSAgICAgICAgYXV0
byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgb3V0T2ZGbG93
SG9yaXpvbnRhbENvbnN0cmFpbnRzKGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5KSwgdXNlZFdpZHRo
LCB7IH0gfTsKLSAgICAgICAgYXV0byB1c2VkVmVydGljYWxWYWx1ZXMgPSBVc2VkVmVydGljYWxW
YWx1ZXMgeyBvdXRPZkZsb3dWZXJ0aWNhbENvbnN0cmFpbnRzKGNvbnRhaW5pbmdCbG9ja0dlb21l
dHJ5KSwgeyB9IH07CisgICAgICAgIGF1dG8gdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9y
aXpvbnRhbFZhbHVlcyB7IEdlb21ldHJ5OjpvdXRPZkZsb3dIb3Jpem9udGFsQ29uc3RyYWludHMo
Y29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpLCB1c2VkV2lkdGgsIHsgfSB9OworICAgICAgICBhdXRv
IHVzZWRWZXJ0aWNhbFZhbHVlcyA9IFVzZWRWZXJ0aWNhbFZhbHVlcyB7IEdlb21ldHJ5OjpvdXRP
ZkZsb3dWZXJ0aWNhbENvbnN0cmFpbnRzKGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5KSwgeyB9IH07
CiAgICAgICAgIHJldHVybiBnZW9tZXRyeSgpLm91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeShs
YXlvdXRCb3gsIHVzZWRIb3Jpem9udGFsVmFsdWVzLCB1c2VkVmVydGljYWxWYWx1ZXMpOwogICAg
IH07CiAKQEAgLTExNSwxOSArMTA1LDE5IEBAIHZvaWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1
dGVPdXRPZkZsb3dWZXJ0aWNhbEdlb21ldHJ5KGNvbnN0IEJveCYgbGF5b3V0Qm94KQogICAgIGF1
dG8mIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5ID0gZ2VvbWV0cnlGb3JCb3goKmxheW91dEJveC5j
b250YWluaW5nQmxvY2soKSk7CiAgICAgYXV0byBjb250YWluaW5nQmxvY2tIZWlnaHQgPSBjb250
YWluaW5nQmxvY2tHZW9tZXRyeS5wYWRkaW5nQm94SGVpZ2h0KCk7CiAKLSAgICBhdXRvIHVzZWRW
ZXJ0aWNhbFZhbHVlc0ZvckhlaWdodCA9IFVzZWRWZXJ0aWNhbFZhbHVlcyB7IG91dE9mRmxvd1Zl
cnRpY2FsQ29uc3RyYWludHMoY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpLCB7IH0gfTsKLSAgICBh
dXRvIHVzZWRIb3Jpem9udGFsVmFsdWVzID0gVXNlZEhvcml6b250YWxWYWx1ZXMgeyBvdXRPZkZs
b3dIb3Jpem9udGFsQ29uc3RyYWludHMoY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpIH07CisgICAg
YXV0byB1c2VkVmVydGljYWxWYWx1ZXNGb3JIZWlnaHQgPSBVc2VkVmVydGljYWxWYWx1ZXMgeyBH
ZW9tZXRyeTo6b3V0T2ZGbG93VmVydGljYWxDb25zdHJhaW50cyhjb250YWluaW5nQmxvY2tHZW9t
ZXRyeSksIHsgfSB9OworICAgIGF1dG8gdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpv
bnRhbFZhbHVlcyB7IEdlb21ldHJ5OjpvdXRPZkZsb3dIb3Jpem9udGFsQ29uc3RyYWludHMoY29u
dGFpbmluZ0Jsb2NrR2VvbWV0cnkpIH07CiAKICAgICBhdXRvIHZlcnRpY2FsR2VvbWV0cnkgPSBj
b21wdXRlKHVzZWRIb3Jpem9udGFsVmFsdWVzLCB1c2VkVmVydGljYWxWYWx1ZXNGb3JIZWlnaHQp
OwogICAgIGlmIChhdXRvIG1heEhlaWdodCA9IGdlb21ldHJ5KCkuY29tcHV0ZWRNYXhIZWlnaHQo
bGF5b3V0Qm94LCBjb250YWluaW5nQmxvY2tIZWlnaHQpKSB7Ci0gICAgICAgIGF1dG8gdXNlZFZh
bHVlc0Zvck1heEhlaWdodCA9IFVzZWRWZXJ0aWNhbFZhbHVlcyB7IG91dE9mRmxvd1ZlcnRpY2Fs
Q29uc3RyYWludHMoY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpLCBtYXhIZWlnaHQgfTsKKyAgICAg
ICAgYXV0byB1c2VkVmFsdWVzRm9yTWF4SGVpZ2h0ID0gVXNlZFZlcnRpY2FsVmFsdWVzIHsgR2Vv
bWV0cnk6Om91dE9mRmxvd1ZlcnRpY2FsQ29uc3RyYWludHMoY29udGFpbmluZ0Jsb2NrR2VvbWV0
cnkpLCBtYXhIZWlnaHQgfTsKICAgICAgICAgYXV0byBtYXhWZXJ0aWNhbEdlb21ldHJ5ID0gY29t
cHV0ZSh1c2VkSG9yaXpvbnRhbFZhbHVlcywgdXNlZFZhbHVlc0Zvck1heEhlaWdodCk7CiAgICAg
ICAgIGlmICh2ZXJ0aWNhbEdlb21ldHJ5LmNvbnRlbnRIZWlnaHRBbmRNYXJnaW4uY29udGVudEhl
aWdodCA+IG1heFZlcnRpY2FsR2VvbWV0cnkuY29udGVudEhlaWdodEFuZE1hcmdpbi5jb250ZW50
SGVpZ2h0KQogICAgICAgICAgICAgdmVydGljYWxHZW9tZXRyeSA9IG1heFZlcnRpY2FsR2VvbWV0
cnk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gbWluSGVpZ2h0ID0gZ2VvbWV0cnkoKS5jb21wdXRl
ZE1pbkhlaWdodChsYXlvdXRCb3gsIGNvbnRhaW5pbmdCbG9ja0hlaWdodCkpIHsKLSAgICAgICAg
YXV0byB1c2VkVmFsdWVzRm9yTWluSGVpZ2h0ID0gVXNlZFZlcnRpY2FsVmFsdWVzIHsgb3V0T2ZG
bG93VmVydGljYWxDb25zdHJhaW50cyhjb250YWluaW5nQmxvY2tHZW9tZXRyeSksIG1pbkhlaWdo
dCB9OworICAgICAgICBhdXRvIHVzZWRWYWx1ZXNGb3JNaW5IZWlnaHQgPSBVc2VkVmVydGljYWxW
YWx1ZXMgeyBHZW9tZXRyeTo6b3V0T2ZGbG93VmVydGljYWxDb25zdHJhaW50cyhjb250YWluaW5n
QmxvY2tHZW9tZXRyeSksIG1pbkhlaWdodCB9OwogICAgICAgICBhdXRvIG1pblZlcnRpY2FsR2Vv
bWV0cnkgPSBjb21wdXRlKHVzZWRIb3Jpem9udGFsVmFsdWVzLCB1c2VkVmFsdWVzRm9yTWluSGVp
Z2h0KTsKICAgICAgICAgaWYgKHZlcnRpY2FsR2VvbWV0cnkuY29udGVudEhlaWdodEFuZE1hcmdp
bi5jb250ZW50SGVpZ2h0IDwgbWluVmVydGljYWxHZW9tZXRyeS5jb250ZW50SGVpZ2h0QW5kTWFy
Z2luLmNvbnRlbnRIZWlnaHQpCiAgICAgICAgICAgICB2ZXJ0aWNhbEdlb21ldHJ5ID0gbWluVmVy
dGljYWxHZW9tZXRyeTsKQEAgLTE0NCw3ICsxMzQsNyBAQCB2b2lkIEZvcm1hdHRpbmdDb250ZXh0
Ojpjb21wdXRlT3V0T2ZGbG93VmVydGljYWxHZW9tZXRyeShjb25zdCBCb3gmIGxheW91dEJveCkK
IHZvaWQgRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVCb3JkZXJBbmRQYWRkaW5nKGNvbnN0IEJv
eCYgbGF5b3V0Qm94LCBPcHRpb25hbDxVc2VkSG9yaXpvbnRhbFZhbHVlcz4gdXNlZEhvcml6b250
YWxWYWx1ZXMpCiB7CiAgICAgaWYgKCF1c2VkSG9yaXpvbnRhbFZhbHVlcykKLSAgICAgICAgdXNl
ZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IFVzZWRIb3Jpem9udGFs
VmFsdWVzOjpDb25zdHJhaW50cyB7IGdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3guY29udGFpbmlu
Z0Jsb2NrKCkpIH0gfTsKKyAgICAgICAgdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpv
bnRhbFZhbHVlcyB7IEdlb21ldHJ5OjppbkZsb3dIb3Jpem9udGFsQ29uc3RyYWludHMoZ2VvbWV0
cnlGb3JCb3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSkpIH07CiAgICAgYXV0byYgZGlz
cGxheUJveCA9IGZvcm1hdHRpbmdTdGF0ZSgpLmRpc3BsYXlCb3gobGF5b3V0Qm94KTsKICAgICBk
aXNwbGF5Qm94LnNldEJvcmRlcihnZW9tZXRyeSgpLmNvbXB1dGVkQm9yZGVyKGxheW91dEJveCkp
OwogICAgIGRpc3BsYXlCb3guc2V0UGFkZGluZyhnZW9tZXRyeSgpLmNvbXB1dGVkUGFkZGluZyhs
YXlvdXRCb3gsICp1c2VkSG9yaXpvbnRhbFZhbHVlcykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
Rm9ybWF0dGluZ0NvbnRleHQuaAppbmRleCBmNGU2MTc3NTIzZmRjMWQ1OTQ0OWU3MWJkOTZjYmQy
ZTUwZmExYWM0Li4yODAxMDNmNTU4Nzk1MWIyNTA4ZmJjMzE0YjA2MWY3N2Q4NTk0N2VlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuaApAQCAtMTQyLDYgKzE0Miwx
MSBAQCBwcm90ZWN0ZWQ6CiAKICAgICAgICAgTGF5b3V0VW5pdCBjb250ZW50SGVpZ2h0Rm9yRm9y
bWF0dGluZ0NvbnRleHRSb290KGNvbnN0IEJveCYpIGNvbnN0OwogCisgICAgICAgIHN0YXRpYyBV
c2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMgb3V0T2ZGbG93SG9yaXpvbnRhbENvbnN0
cmFpbnRzKGNvbnN0IERpc3BsYXk6OkJveCYgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpOworICAg
ICAgICBzdGF0aWMgVXNlZFZlcnRpY2FsVmFsdWVzOjpDb25zdHJhaW50cyBvdXRPZkZsb3dWZXJ0
aWNhbENvbnN0cmFpbnRzKGNvbnN0IERpc3BsYXk6OkJveCYgY29udGFpbmluZ0Jsb2NrR2VvbWV0
cnkpOworICAgICAgICBzdGF0aWMgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIGlu
Rmxvd0hvcml6b250YWxDb25zdHJhaW50cyhjb25zdCBEaXNwbGF5OjpCb3gmIGNvbnRhaW5pbmdC
bG9ja0dlb21ldHJ5KTsKKyAgICAgICAgc3RhdGljIFVzZWRWZXJ0aWNhbFZhbHVlczo6Q29uc3Ry
YWludHMgaW5GbG93VmVydGljYWxDb25zdHJhaW50cyhjb25zdCBEaXNwbGF5OjpCb3gmIGNvbnRh
aW5pbmdCbG9ja0dlb21ldHJ5KTsKKwogICAgIHByb3RlY3RlZDoKICAgICAgICAgZnJpZW5kIGNs
YXNzIEZvcm1hdHRpbmdDb250ZXh0OwogICAgICAgICBHZW9tZXRyeShjb25zdCBGb3JtYXR0aW5n
Q29udGV4dCYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdD
b250ZXh0R2VvbWV0cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250
ZXh0R2VvbWV0cnkuY3BwCmluZGV4IDY2NTdjNzgyN2I1ZTcyNzhjNGIzODQyZjRhZTIwYTViMTY1
MzI4MTMuLjliM2VhMDBmZWQ3MThjOGM0ZGI0NTUxYmE0OTljMjFhOWYzZDEyZmUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAK
QEAgLTExMDcsNiArMTEwNywyNiBAQCBGb3JtYXR0aW5nQ29udGV4dDo6SW50cmluc2ljV2lkdGhD
b25zdHJhaW50cyBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmNvbnN0cgogICAgIHJldHVy
biBpbnRyaW5zaWNXaWR0aDsKIH0KIAorVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRz
IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93SG9yaXpvbnRhbENvbnN0cmFp
bnRzKGNvbnN0IERpc3BsYXk6OkJveCYgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpCit7CisgICAg
cmV0dXJuIFVzZWRIb3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IGNvbnRhaW5pbmdCbG9j
a0dlb21ldHJ5LnBhZGRpbmdCb3hMZWZ0KCksIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5LnBhZGRp
bmdCb3hXaWR0aCgpIH07Cit9CisKK1VzZWRWZXJ0aWNhbFZhbHVlczo6Q29uc3RyYWludHMgRm9y
bWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dWZXJ0aWNhbENvbnN0cmFpbnRzKGNv
bnN0IERpc3BsYXk6OkJveCYgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpCit7CisgICAgcmV0dXJu
IFVzZWRWZXJ0aWNhbFZhbHVlczo6Q29uc3RyYWludHMgeyBjb250YWluaW5nQmxvY2tHZW9tZXRy
eS5wYWRkaW5nQm94VG9wKCksIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5LnBhZGRpbmdCb3hIZWln
aHQoKSB9OworfQorCitVc2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMgRm9ybWF0dGlu
Z0NvbnRleHQ6Okdlb21ldHJ5OjppbkZsb3dIb3Jpem9udGFsQ29uc3RyYWludHMoY29uc3QgRGlz
cGxheTo6Qm94JiBjb250YWluaW5nQmxvY2tHZW9tZXRyeSkKK3sKKyAgICByZXR1cm4gVXNlZEhv
cml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkuY29u
dGVudEJveExlZnQoKSwgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkuY29udGVudEJveFdpZHRoKCkg
fTsKK30KKworVXNlZFZlcnRpY2FsVmFsdWVzOjpDb25zdHJhaW50cyBGb3JtYXR0aW5nQ29udGV4
dDo6R2VvbWV0cnk6OmluRmxvd1ZlcnRpY2FsQ29uc3RyYWludHMoY29uc3QgRGlzcGxheTo6Qm94
JiBjb250YWluaW5nQmxvY2tHZW9tZXRyeSkKK3sKKyAgICByZXR1cm4gVXNlZFZlcnRpY2FsVmFs
dWVzOjpDb25zdHJhaW50cyB7IGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5LmNvbnRlbnRCb3hUb3Ao
KSwgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkuY29udGVudEJveEhlaWdodCgpIH07Cit9CisKIH0K
IH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdD
b250ZXh0UXVpcmtzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4
dFF1aXJrcy5jcHAKaW5kZXggYTI5ZTQ2YjcxMmVlMTAzZDEzN2EyZjFmZWMyMDgxMmI5MzUzNWIx
Yy4uN2I2OTMyYWNkZGFiODczNjkzYmUxMmU0ZmEwYWJiNzgyNjdmY2MwMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0UXVpcmtzLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRRdWlya3MuY3BwCkBAIC01MCw3
ICs1MCw4IEBAIExheW91dFVuaXQgRm9ybWF0dGluZ0NvbnRleHQ6OlF1aXJrczo6aGVpZ2h0VmFs
dWVPZk5lYXJlc3RDb250YWluaW5nQmxvY2tXaXRoRml4CiAgICAgICAgIGlmIChjb250YWluaW5n
QmxvY2stPmlzQm9keUJveCgpIHx8IGNvbnRhaW5pbmdCbG9jay0+aXNEb2N1bWVudEJveCgpKSB7
CiAgICAgICAgICAgICBhdXRvJiBib3hHZW9tZXRyeSA9IGZvcm1hdHRpbmdDb250ZXh0Lmdlb21l
dHJ5Rm9yQm94KCpjb250YWluaW5nQmxvY2ssIEZvcm1hdHRpbmdDb250ZXh0OjpFc2NhcGVUeXBl
OjpBY2Nlc3NBbmNlc3RvckZvcm1hdHRpbmdDb250ZXh0KTsKIAotICAgICAgICAgICAgYXV0byB1
c2VkVmFsdWVzID0gVXNlZEhvcml6b250YWxWYWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6
Q29uc3RyYWludHMgeyBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveCgqY29udGFpbmlu
Z0Jsb2NrLT5jb250YWluaW5nQmxvY2soKSwgRm9ybWF0dGluZ0NvbnRleHQ6OkVzY2FwZVR5cGU6
OkFjY2Vzc0FuY2VzdG9yRm9ybWF0dGluZ0NvbnRleHQpIH0gfTsKKyAgICAgICAgICAgIGF1dG8m
IGNvbnRhaW5pbmdCbG9ja0Rpc3BsYXlCb3ggPSBmb3JtYXR0aW5nQ29udGV4dC5nZW9tZXRyeUZv
ckJveCgqY29udGFpbmluZ0Jsb2NrLT5jb250YWluaW5nQmxvY2soKSwgRm9ybWF0dGluZ0NvbnRl
eHQ6OkVzY2FwZVR5cGU6OkFjY2Vzc0FuY2VzdG9yRm9ybWF0dGluZ0NvbnRleHQpOworICAgICAg
ICAgICAgYXV0byB1c2VkVmFsdWVzID0gVXNlZEhvcml6b250YWxWYWx1ZXMgeyBHZW9tZXRyeTo6
aW5GbG93SG9yaXpvbnRhbENvbnN0cmFpbnRzKGNvbnRhaW5pbmdCbG9ja0Rpc3BsYXlCb3gpIH07
CiAgICAgICAgICAgICBhdXRvIHZlcnRpY2FsTWFyZ2luID0gZm9ybWF0dGluZ0NvbnRleHQuZ2Vv
bWV0cnkoKS5jb21wdXRlZFZlcnRpY2FsTWFyZ2luKCpjb250YWluaW5nQmxvY2ssIHVzZWRWYWx1
ZXMpOwogICAgICAgICAgICAgYXV0byB2ZXJ0aWNhbFBhZGRpbmcgPSBib3hHZW9tZXRyeS5wYWRk
aW5nVG9wKCkudmFsdWVPcigwKSArIGJveEdlb21ldHJ5LnBhZGRpbmdCb3R0b20oKS52YWx1ZU9y
KDApOwogICAgICAgICAgICAgYXV0byB2ZXJ0aWNhbEJvcmRlciA9IGJveEdlb21ldHJ5LmJvcmRl
clRvcCgpICsgYm94R2VvbWV0cnkuYm9yZGVyQm90dG9tKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvTGF5b3V0VW5pdHMuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0xh
eW91dFVuaXRzLmNwcAppbmRleCA0ZTQyZjdkOTM5YWQ5ODljMWNiZDQ4YmI3MTg3ZjE5NTgyNTQ1
MWNlLi43MzM4OTM3M2NjMDk2M2FmYWRiNDU0ZTY1N2ZmNzVmNTkwYmE0NDRhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvTGF5b3V0VW5pdHMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9MYXlvdXRVbml0cy5jcHAKQEAgLTMzLDEyICszMyw2IEBACiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiBuYW1lc3BhY2UgTGF5b3V0IHsKIAotVXNlZEhvcml6b250YWxWYWx1ZXM6OkNv
bnN0cmFpbnRzOjpDb25zdHJhaW50cyhjb25zdCBEaXNwbGF5OjpCb3gmIGNvbnRhaW5pbmdCbG9j
a0dlb21ldHJ5KQotICAgIDogY29udGVudEJveExlZnQoY29udGFpbmluZ0Jsb2NrR2VvbWV0cnku
Y29udGVudEJveExlZnQoKSkKLSAgICAsIHdpZHRoKGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5LmNv
bnRlbnRCb3hXaWR0aCgpKQotewotfQotCiBVc2VkVmVydGljYWxWYWx1ZXM6OkNvbnN0cmFpbnRz
OjpDb25zdHJhaW50cyhjb25zdCBEaXNwbGF5OjpCb3gmIGNvbnRhaW5pbmdCbG9ja0dlb21ldHJ5
KQogICAgIDogY29udGVudEJveFRvcChjb250YWluaW5nQmxvY2tHZW9tZXRyeS5jb250ZW50Qm94
VG9wKCkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvTGF5b3V0VW5pdHMu
aCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9MYXlvdXRVbml0cy5oCmluZGV4IDlhM2U1ZTJiMjdm
OWNmMTM2NGUyMzY0ODUyNmFiMmJlMGJlYjk2MGEuLjAxNGNkOWI3ZTc5Mzg1MTA0OTVlYzYzMGNk
NjZiNDhiZDRhMGJiNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9MYXlvdXRV
bml0cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9MYXlvdXRVbml0cy5oCkBAIC0xNTcs
NyArMTU3LDYgQEAgc3RydWN0IFZlcnRpY2FsR2VvbWV0cnkgewogCiBzdHJ1Y3QgVXNlZEhvcml6
b250YWxWYWx1ZXMgewogICAgIHN0cnVjdCBDb25zdHJhaW50cyB7Ci0gICAgICAgIGV4cGxpY2l0
IENvbnN0cmFpbnRzKGNvbnN0IERpc3BsYXk6OkJveCYgY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkp
OwogICAgICAgICBleHBsaWNpdCBDb25zdHJhaW50cyhMYXlvdXRVbml0IGNvbnRlbnRCb3hMZWZ0
LCBMYXlvdXRVbml0IGhvcml6b250YWxDb25zdHJhaW50KQogICAgICAgICAgICAgOiBjb250ZW50
Qm94TGVmdChjb250ZW50Qm94TGVmdCkKICAgICAgICAgICAgICwgd2lkdGgoaG9yaXpvbnRhbENv
bnN0cmFpbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0
aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Js
b2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcAppbmRleCA3YjYyZmI0MjQz
YTcwYzMyN2YwYTI3ZDhmY2YwYjMzNDUwMTdiZmY1Li5hMmFiNGQzZTA1YWI0MzBmMThmNzVlNjkx
YjYyMzgwNTgxMWRlZTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tm
b3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTIx
NSw3ICsyMTUsNyBAQCB2b2lkIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OnBsYWNlSW5GbG93UG9z
aXRpb25lZENoaWxkcmVuKGNvbnN0IEJveCYgbGF5b3V0Qm94KQogICAgICAgICAgICAgY29udGlu
dWU7CiAKICAgICAgICAgYXV0byBjb21wdXRlSW5GbG93UG9zaXRpb25lZFBvc2l0aW9uID0gWyZd
IHsKLSAgICAgICAgICAgIGF1dG8gdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpvbnRh
bFZhbHVlcyB7IFVzZWRIb3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IGdlb21ldHJ5Rm9y
Qm94KCpjaGlsZEJveC5jb250YWluaW5nQmxvY2soKSkgfSB9OworICAgICAgICAgICAgYXV0byB1
c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgR2VvbWV0cnk6Omlu
Rmxvd0hvcml6b250YWxDb25zdHJhaW50cyhnZW9tZXRyeUZvckJveCgqY2hpbGRCb3guY29udGFp
bmluZ0Jsb2NrKCkpKSB9OwogICAgICAgICAgICAgYXV0byBwb3NpdGlvbk9mZnNldCA9IGdlb21l
dHJ5KCkuaW5GbG93UG9zaXRpb25lZFBvc2l0aW9uT2Zmc2V0KGNoaWxkQm94LCB1c2VkSG9yaXpv
bnRhbFZhbHVlcyk7CiAKICAgICAgICAgICAgIGF1dG8mIGRpc3BsYXlCb3ggPSBmb3JtYXR0aW5n
U3RhdGUoKS5kaXNwbGF5Qm94KGNoaWxkQm94KTsKQEAgLTI0Myw3ICsyNDMsNyBAQCB2b2lkIEJs
b2NrRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVTdGF0aWNWZXJ0aWNhbFBvc2l0aW9uKGNvbnN0
IEZsb2F0aW5nQ29udGV4dAogCiB2b2lkIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVT
dGF0aWNIb3Jpem9udGFsUG9zaXRpb24oY29uc3QgQm94JiBsYXlvdXRCb3gpCiB7Ci0gICAgYXV0
byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgVXNlZEhvcml6
b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsgZ2VvbWV0cnlGb3JCb3goKmxheW91dEJveC5jb250
YWluaW5nQmxvY2soKSkgfSB9OworICAgIGF1dG8gdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2Vk
SG9yaXpvbnRhbFZhbHVlcyB7IEdlb21ldHJ5OjppbkZsb3dIb3Jpem9udGFsQ29uc3RyYWludHMo
Z2VvbWV0cnlGb3JCb3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSkpIH07CiAgICAgZm9y
bWF0dGluZ1N0YXRlKCkuZGlzcGxheUJveChsYXlvdXRCb3gpLnNldExlZnQoZ2VvbWV0cnkoKS5z
dGF0aWNIb3Jpem9udGFsUG9zaXRpb24obGF5b3V0Qm94LCB1c2VkSG9yaXpvbnRhbFZhbHVlcykp
OwogfQogCkBAIC0yNTUsNyArMjU1LDcgQEAgdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpj
b21wdXRlU3RhdGljUG9zaXRpb24oY29uc3QgRmxvYXRpbmdDb250ZXh0JiBmbG9hdGkKIAogdm9p
ZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlRXN0aW1hdGVkVmVydGljYWxQb3NpdGlv
bihjb25zdCBCb3gmIGxheW91dEJveCkKIHsKLSAgICBhdXRvIHVzZWRIb3Jpem9udGFsVmFsdWVz
ID0gVXNlZEhvcml6b250YWxWYWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWlu
dHMgeyBnZW9tZXRyeUZvckJveCgqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9jaygpKSB9IH07Cisg
ICAgYXV0byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgR2Vv
bWV0cnk6OmluRmxvd0hvcml6b250YWxDb25zdHJhaW50cyhnZW9tZXRyeUZvckJveCgqbGF5b3V0
Qm94LmNvbnRhaW5pbmdCbG9jaygpKSkgfTsKICAgICBhdXRvIGNvbXB1dGVkVmVydGljYWxNYXJn
aW4gPSBnZW9tZXRyeSgpLmNvbXB1dGVkVmVydGljYWxNYXJnaW4obGF5b3V0Qm94LCB1c2VkSG9y
aXpvbnRhbFZhbHVlcyk7CiAgICAgYXV0byB1c2VkTm9uQ29sbGFwc2VkTWFyZ2luID0gVXNlZFZl
cnRpY2FsTWFyZ2luOjpOb25Db2xsYXBzZWRWYWx1ZXMgeyBjb21wdXRlZFZlcnRpY2FsTWFyZ2lu
LmJlZm9yZS52YWx1ZU9yKDApLCBjb21wdXRlZFZlcnRpY2FsTWFyZ2luLmFmdGVyLnZhbHVlT3Io
MCkgfTsKICAgICBhdXRvIGVzdGltYXRlZE1hcmdpbkJlZm9yZSA9IG1hcmdpbkNvbGxhcHNlKCku
ZXN0aW1hdGVkTWFyZ2luQmVmb3JlKGxheW91dEJveCwgdXNlZE5vbkNvbGxhcHNlZE1hcmdpbik7
CkBAIC00MTUsOSArNDE1LDggQEAgdm9pZCBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRl
V2lkdGhBbmRNYXJnaW4oY29uc3QgQm94JiBsYXlvdXRCb3gsIE9wdGlvbmEKIHZvaWQgQmxvY2tG
b3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUhlaWdodEFuZE1hcmdpbihjb25zdCBCb3gmIGxheW91
dEJveCkKIHsKICAgICBhdXRvJiBjb250YWluaW5nQmxvY2tHZW9tZXRyeSA9IGdlb21ldHJ5Rm9y
Qm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2NrKCkpOworICAgIGF1dG8gdXNlZEhvcml6b250
YWxWYWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IEdlb21ldHJ5OjppbkZsb3dIb3Jpem9u
dGFsQ29uc3RyYWludHMoY29udGFpbmluZ0Jsb2NrR2VvbWV0cnkpIH07CiAgICAgYXV0byBjb21w
dXRlID0gWyZdKGF1dG8gdXNlZFZlcnRpY2FsVmFsdWVzKSAtPiBDb250ZW50SGVpZ2h0QW5kTWFy
Z2luIHsKLQotICAgICAgICBhdXRvIHVzZWRIb3Jpem9udGFsVmFsdWVzID0gVXNlZEhvcml6b250
YWxWYWx1ZXMgeyBVc2VkSG9yaXpvbnRhbFZhbHVlczo6Q29uc3RyYWludHMgeyBjb250YWluaW5n
QmxvY2tHZW9tZXRyeSB9IH07CiAgICAgICAgIGlmIChsYXlvdXRCb3guaXNJbkZsb3coKSkKICAg
ICAgICAgICAgIHJldHVybiBnZW9tZXRyeSgpLmluRmxvd0hlaWdodEFuZE1hcmdpbihsYXlvdXRC
b3gsIHVzZWRIb3Jpem9udGFsVmFsdWVzLCB1c2VkVmVydGljYWxWYWx1ZXMpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGlu
Z0NvbnRleHRRdWlya3MuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGlu
Zy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0UXVpcmtzLmNwcAppbmRleCA1ZDk2YzJiMjJlY2FmYzhh
NGQ3ZTc4MDVjM2EwY2M5NzYzOTAzZTk2Li5hNTI5NjUzZTEzMmEyMzU3MDQ0ODU1MGI2NDIyODg5
NjE1NWNhZjI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0
aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHRRdWlya3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dFF1aXJrcy5jcHAK
QEAgLTgyLDcgKzgyLDcgQEAgQ29udGVudEhlaWdodEFuZE1hcmdpbiBCbG9ja0Zvcm1hdHRpbmdD
b250ZXh0OjpRdWlya3M6OnN0cmV0Y2hlZEluRmxvd0hlaWdodChjb24KICAgICAgICAgLy8gSGVy
ZSBpcyB0aGUgcXVpcmt5IHBhcnQgZm9yIGJvZHkgYm94OgogICAgICAgICAvLyBTdHJldGNoIHRo
ZSBib2R5IHVzaW5nIHRoZSBpbml0aWFsIGNvbnRhaW5pbmcgYmxvY2sncyBoZWlnaHQgYW5kIHNo
cmluayBpdCB3aXRoIGRvY3VtZW50IGJveCdzIG1hcmdpbi9ib3JkZXIvcGFkZGluZy4KICAgICAg
ICAgLy8gVGhpcyBsb29rcyBleHRyZW1lbHkgb2RkIHdoZW4gaHRtbCBoYXMgbm9uLWF1dG8gaGVp
Z2h0LgotICAgICAgICBhdXRvIGRvY3VtZW50Qm94VmVydGljYWxNYXJnaW4gPSBmb3JtYXR0aW5n
Q29udGV4dC5nZW9tZXRyeSgpLmNvbXB1dGVkVmVydGljYWxNYXJnaW4oZG9jdW1lbnRCb3gsIFVz
ZWRIb3Jpem9udGFsVmFsdWVzIHsgVXNlZEhvcml6b250YWxWYWx1ZXM6OkNvbnN0cmFpbnRzIHsg
aW5pdGlhbENvbnRhaW5pbmdCbG9ja0dlb21ldHJ5IH0gfSk7CisgICAgICAgIGF1dG8gZG9jdW1l
bnRCb3hWZXJ0aWNhbE1hcmdpbiA9IGZvcm1hdHRpbmdDb250ZXh0Lmdlb21ldHJ5KCkuY29tcHV0
ZWRWZXJ0aWNhbE1hcmdpbihkb2N1bWVudEJveCwgVXNlZEhvcml6b250YWxWYWx1ZXMgeyBHZW9t
ZXRyeTo6aW5GbG93SG9yaXpvbnRhbENvbnN0cmFpbnRzKGluaXRpYWxDb250YWluaW5nQmxvY2tH
ZW9tZXRyeSkgfSk7CiAgICAgICAgIHN0cmVjaGVkSGVpZ2h0IC09IChkb2N1bWVudEJveFZlcnRp
Y2FsTWFyZ2luLmJlZm9yZS52YWx1ZU9yKDApICsgZG9jdW1lbnRCb3hWZXJ0aWNhbE1hcmdpbi5h
ZnRlci52YWx1ZU9yKDApKTsKIAogICAgICAgICBhdXRvJiBib2R5Qm94R2VvbWV0cnkgPSBmb3Jt
YXR0aW5nQ29udGV4dC5nZW9tZXRyeUZvckJveChsYXlvdXRCb3gpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja01hcmdpbkNvbGxhcHNlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tNYXJnaW5Db2xs
YXBzZS5jcHAKaW5kZXggMWU4MjU3MTExZjRiMDVlNTIzN2QxOWVmN2IzYTJkYjU2MWIwY2Y1Ny4u
ZmUzZjJlYzc0OWQ4N2ZiYmUxMWUwMWEwMDgwYmMzYjc4ODAyMmJhOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9CbG9ja01hcmdpbkNvbGxhcHNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrTWFyZ2lu
Q29sbGFwc2UuY3BwCkBAIC01MTIsNyArNTEyLDcgQEAgUG9zaXRpdmVBbmROZWdhdGl2ZVZlcnRp
Y2FsTWFyZ2luOjpWYWx1ZXMgQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6TWFyZ2luQ29sbGFwc2UK
ICAgICAgICAgcmV0dXJuIG1hcmdpblR5cGUgPT0gTWFyZ2luVHlwZTo6QmVmb3JlID8gcG9zaXRp
dmVBbmROZWdhdGl2ZVZlcnRpY2FsTWFyZ2luLmJlZm9yZSA6IHBvc2l0aXZlQW5kTmVnYXRpdmVW
ZXJ0aWNhbE1hcmdpbi5hZnRlcjsgCiAgICAgfQogICAgIC8vIFRoaXMgaXMgdGhlIGVzdGltYXRl
IHBhdGguIFdlIGRvbid0IHlldCBoYXZlIHBvc2l0aXZlL25lZ2F0aXZlIG1hcmdpbiBjb21wdXRl
ZC4KLSAgICBhdXRvIHVzZWRWYWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IFVzZWRIb3Jp
em9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IGZvcm1hdHRpbmdDb250ZXh0KCkuZ2VvbWV0cnlG
b3JCb3goKmxheW91dEJveC5jb250YWluaW5nQmxvY2soKSkgfSB9OworICAgIGF1dG8gdXNlZFZh
bHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgR2VvbWV0cnk6OmluRmxvd0hvcml6b250YWxD
b25zdHJhaW50cyhmb3JtYXR0aW5nQ29udGV4dCgpLmdlb21ldHJ5Rm9yQm94KCpsYXlvdXRCb3gu
Y29udGFpbmluZ0Jsb2NrKCkpKSB9OwogICAgIGF1dG8gY29tcHV0ZWRWZXJ0aWNhbE1hcmdpbiA9
IGZvcm1hdHRpbmdDb250ZXh0KCkuZ2VvbWV0cnkoKS5jb21wdXRlZFZlcnRpY2FsTWFyZ2luKGxh
eW91dEJveCwgdXNlZFZhbHVlcyk7CiAgICAgYXV0byBub25Db2xsYXBzZWRNYXJnaW4gPSBVc2Vk
VmVydGljYWxNYXJnaW46Ok5vbkNvbGxhcHNlZFZhbHVlcyB7IGNvbXB1dGVkVmVydGljYWxNYXJn
aW4uYmVmb3JlLnZhbHVlT3IoMCksIGNvbXB1dGVkVmVydGljYWxNYXJnaW4uYWZ0ZXIudmFsdWVP
cigwKSB9OyAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1h
dHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4IDg2ZTJj
N2JkNDJiMGQ2MDBmZDI0MzUyNzI0ZWU5NDkwNmVhNTIxMzguLmM2MWVmMTBjOTU1OGUzYzMwMDIx
MzE4MDg1ZTgzNmQ1MGQwNTRlZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5j
cHAKQEAgLTcyLDcgKzcyLDcgQEAgdm9pZCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6bGF5b3V0
SW5GbG93Q29udGVudChJbnZhbGlkYXRpb25TdGF0ZSYgaW52YWxpZGF0aW8KICAgICBpbnZhbGlk
YXRlRm9ybWF0dGluZ1N0YXRlKGludmFsaWRhdGlvblN0YXRlKTsKICAgICBMT0dfV0lUSF9TVFJF
QU0oRm9ybWF0dGluZ0NvbnRleHRMYXlvdXQsIHN0cmVhbSA8PCAiW1N0YXJ0XSAtPiBpbmxpbmUg
Zm9ybWF0dGluZyBjb250ZXh0IC0+IGZvcm1hdHRpbmcgcm9vdCgiIDw8ICZyb290KCkgPDwgIiki
KTsKICAgICBhdXRvJiByb290R2VvbWV0cnkgPSBnZW9tZXRyeUZvckJveChyb290KCkpOwotICAg
IGF1dG8gdXNlZEhvcml6b250YWxWYWx1ZXMgPSBVc2VkSG9yaXpvbnRhbFZhbHVlcyB7IFVzZWRI
b3Jpem9udGFsVmFsdWVzOjpDb25zdHJhaW50cyB7IHJvb3RHZW9tZXRyeSB9IH07CisgICAgYXV0
byB1c2VkSG9yaXpvbnRhbFZhbHVlcyA9IFVzZWRIb3Jpem9udGFsVmFsdWVzIHsgR2VvbWV0cnk6
OmluRmxvd0hvcml6b250YWxDb25zdHJhaW50cyhyb290R2VvbWV0cnkpIH07CiAgICAgYXV0byB1
c2VkVmVydGljYWxWYWx1ZXMgPSBVc2VkVmVydGljYWxWYWx1ZXMgeyBVc2VkVmVydGljYWxWYWx1
ZXM6OkNvbnN0cmFpbnRzIHsgcm9vdEdlb21ldHJ5IH0gfTsKICAgICBhdXRvKiBsYXlvdXRCb3gg
PSByb290KCkuZmlyc3RJbkZsb3dPckZsb2F0aW5nQ2hpbGQoKTsKICAgICAvLyAxLiBWaXNpdCBl
YWNoIGlubGluZSBib3ggYW5kIHBhcnRpYWxseSBjb21wdXRlIHRoZWlyIGdlb21ldHJ5IChtYXJn
aW5zLCBwYWRkaW5ncyBhbmQgYm9yZGVycykuCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>