<?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>215532</bug_id>
          
          <creation_ts>2020-08-14 18:40:30 -0700</creation_ts>
          <short_desc>[LFC][IFC] Add support for nested vertical-align: middle</short_desc>
          <delta_ts>2020-09-01 20:22:41 -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>DUPLICATE</resolution>
          <dup_id>215748</dup_id>
          
          <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>215752</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</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>1680564</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-08-14 18:40:30 -0700</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680578</commentid>
    <comment_count>1</comment_count>
      <attachid>406652</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-08-14 20:22:24 -0700</bug_when>
    <thetext>Created attachment 406652
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1682093</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-21 18:41:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/67594313&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684711</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-09-01 20:22:41 -0700</bug_when>
    <thetext>This is merged with bug 215748

*** This bug has been marked as a duplicate of bug 215748 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406652</attachid>
            <date>2020-08-14 20:22:24 -0700</date>
            <delta_ts>2020-08-14 20:22:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215532-20200814202223.patch</filename>
            <type>text/plain</type>
            <size>19656</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYyNDE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjViZTMxODc3Njc3YWZh
ZDVlMDJkYTY4MDBkYmFkMzc0ODAwNWU2ZS4uNDY1YzZjNWZmMjhkZTU1ZWJjYjM4NGI2ZjNhY2Mz
MWZiYjQ1MmUzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA4LTE0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bSUZDXSBBZGQgc3Vw
cG9ydCBmb3IgbmVzdGVkIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTUzMgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSB0aGUgcGFyZW50IGlubGluZSBib3gg
YmFzZWxpbmUgd2hlbiBjb21wdXRpbmcgdGhlIHBvc2l0aW9uIGZvciB2ZXJ0aWNhbC1hbGlnbjog
bWlkZGxlIGlubGluZSBib3hlcy4KKworICAgICAgICBUZXN0OiBmYXN0L2xheW91dGZvcm1hdHRp
bmdjb250ZXh0L3ZlcnRpY2FsLWFsaWduLW1pZGRsZS1uZXN0ZWQuaHRtbAorCisgICAgICAgICog
bGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUJveC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXQ6OkxpbmVCb3g6OklubGluZUJveDo6SW5saW5lQm94KToKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dDo6TGluZUJveDo6Y29uc3RydWN0SW5saW5lQm94ZXMpOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0OjpMaW5lQm94OjphbGlnblZlcnRpY2FsbHkpOgorICAgICAgICAqIGxh
eW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVCb3guaDoKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dDo6TGluZUJveDo6SW5saW5lQm94OjpsYXlvdXRCb3ggY29uc3QpOgorCiAyMDIwLTA4
LTEzICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bSUZD
XSBBZGQgaW5pdGlhbCB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlIHN1cHBvcnQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVCb3guY3Bw
IGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUJveC5j
cHAKaW5kZXggNzFlOTU0NGYzYmM1NThlZWMzYjE3MTNmY2U3YTE5ZDBhNTFjNGY2OS4uMTgxMmYw
ZWNiOTAzMmI1MDZmN2E3ZDUwNGY3ZjkzNWRhMWZmZjI5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUJveC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUJveC5jcHAKQEAg
LTE0MiwxNiArMTQyLDE4IEBAIGlubGluZSBzdGF0aWMgQXNjZW50QW5kRGVzY2VudCBoYWxmTGVh
ZGluZ01ldHJpY3MoY29uc3QgRm9udE1ldHJpY3MmIGZvbnRNZXRyaWNzCiAgICAgcmV0dXJuIHsg
Zmxvb3JmKGFzY2VudCArIGhhbGZMZWFkaW5nKSwgY2VpbGYoZGVzY2VudCArIGhhbGZMZWFkaW5n
KSB9OwogfQogCi1MaW5lQm94OjpJbmxpbmVCb3g6OklubGluZUJveChjb25zdCBEaXNwbGF5OjpJ
bmxpbmVSZWN0JiByZWN0LCBJbmxpbmVMYXlvdXRVbml0IHN5bnRoZXRpY0Jhc2VsaW5lKQotICAg
IDogbV9sb2dpY2FsUmVjdChyZWN0KQorTGluZUJveDo6SW5saW5lQm94OjpJbmxpbmVCb3goY29u
c3QgQm94JiBsYXlvdXRCb3gsIGNvbnN0IERpc3BsYXk6OklubGluZVJlY3QmIHJlY3QsIElubGlu
ZUxheW91dFVuaXQgc3ludGhldGljQmFzZWxpbmUpCisgICAgOiBtX2xheW91dEJveChtYWtlV2Vh
a1B0cihsYXlvdXRCb3gpKQorICAgICwgbV9sb2dpY2FsUmVjdChyZWN0KQogICAgICwgbV9iYXNl
bGluZShzeW50aGV0aWNCYXNlbGluZSkKICAgICAsIG1faXNWaXN1YWxseUVtcHR5KGZhbHNlKQog
ICAgICwgbV9pc0F0b21pYyh0cnVlKQogewogfQogCi1MaW5lQm94OjpJbmxpbmVCb3g6OklubGlu
ZUJveChjb25zdCBEaXNwbGF5OjpJbmxpbmVSZWN0JiByZWN0LCBJbmxpbmVMYXlvdXRVbml0IGJh
c2VsaW5lLCBJbmxpbmVMYXlvdXRVbml0IGRlc2NlbnQsIElzVmlzdWFsbHlFbXB0eSBpc1Zpc3Vh
bGx5RW1wdHkpCi0gICAgOiBtX2xvZ2ljYWxSZWN0KHJlY3QpCitMaW5lQm94OjpJbmxpbmVCb3g6
OklubGluZUJveChjb25zdCBCb3gmIGxheW91dEJveCwgY29uc3QgRGlzcGxheTo6SW5saW5lUmVj
dCYgcmVjdCwgSW5saW5lTGF5b3V0VW5pdCBiYXNlbGluZSwgSW5saW5lTGF5b3V0VW5pdCBkZXNj
ZW50LCBJc1Zpc3VhbGx5RW1wdHkgaXNWaXN1YWxseUVtcHR5KQorICAgIDogbV9sYXlvdXRCb3go
bWFrZVdlYWtQdHIobGF5b3V0Qm94KSkKKyAgICAsIG1fbG9naWNhbFJlY3QocmVjdCkKICAgICAs
IG1fYmFzZWxpbmUoYmFzZWxpbmUpCiAgICAgLCBtX2Rlc2NlbnQoZGVzY2VudCkKICAgICAsIG1f
aXNWaXN1YWxseUVtcHR5KGlzVmlzdWFsbHlFbXB0eSA9PSBJc1Zpc3VhbGx5RW1wdHk6OlllcykK
QEAgLTE5Niw3ICsxOTgsNyBAQCB2b2lkIExpbmVCb3g6OmNvbnN0cnVjdElubGluZUJveGVzKGNv
bnN0IExpbmVCdWlsZGVyOjpSdW5MaXN0JiBydW5zLCBJc0xpbmVWaXN1YQogICAgIGF1dG8gcm9v
dElubGluZVJlY3QgPSBEaXNwbGF5OjpJbmxpbmVSZWN0IHsgeyB9LCB7IH0sIGxvZ2ljYWxXaWR0
aCgpLCBmb250TWV0cmljcy5mbG9hdExpbmVTcGFjaW5nKCkgfTsKICAgICBhdXRvIHJvb3RJbmxp
bmVCYXNlbGluZSA9IHJvdW5kZihmb250TWV0cmljcy5mbG9hdEFzY2VudCgpKTsKICAgICBhdXRv
IHJvb3RJbmxpbmVEZXNjZW50ID0gcm91bmRmKGZvbnRNZXRyaWNzLmZsb2F0RGVzY2VudCgpKTsK
LSAgICBtX3Jvb3RJbmxpbmVCb3ggPSBJbmxpbmVCb3ggeyByb290SW5saW5lUmVjdCwgcm9vdElu
bGluZUJhc2VsaW5lLCByb290SW5saW5lRGVzY2VudCwgaW5saW5lQm94SXNWaXN1YWxseUVtcHR5
IH07CisgICAgbV9yb290SW5saW5lQm94ID0gSW5saW5lQm94IHsgZm9ybWF0dGluZ0NvbnRleHQo
KS5yb290KCksIHJvb3RJbmxpbmVSZWN0LCByb290SW5saW5lQmFzZWxpbmUsIHJvb3RJbmxpbmVE
ZXNjZW50LCBpbmxpbmVCb3hJc1Zpc3VhbGx5RW1wdHkgfTsKIAogICAgIGF1dG8gaG9yaXpvbnRh
bEFsaWdubWVudE9mZnNldCA9IG1fbGluZUFsaWdubWVudE9mZnNldC52YWx1ZU9yKElubGluZUxh
eW91dFVuaXQgeyB9KTsKICAgICBmb3IgKGF1dG8mIHJ1biA6IHJ1bnMpIHsKQEAgLTIyMywxMSAr
MjI1LDE1IEBAIHZvaWQgTGluZUJveDo6Y29uc3RydWN0SW5saW5lQm94ZXMoY29uc3QgTGluZUJ1
aWxkZXI6OlJ1bkxpc3QmIHJ1bnMsIElzTGluZVZpc3VhCiAgICAgICAgICAgICAgICAgLy8KICAg
ICAgICAgICAgICAgICBhdXRvIGFkanVzdGVkQmFzZWxpbmUgPSBib3hHZW9tZXRyeS5tYXJnaW5C
ZWZvcmUoKSArIGJveEdlb21ldHJ5LmJvcmRlclRvcCgpICsgYm94R2VvbWV0cnkucGFkZGluZ1Rv
cCgpLnZhbHVlT3IoMCkgKyBpbmxpbmVCbG9ja0Jhc2VsaW5lOwogICAgICAgICAgICAgICAgIGF1
dG8gaW5saW5lQm94UmVjdCA9IERpc3BsYXk6OklubGluZVJlY3QgeyB7IH0sIHJ1bkxvZ2ljYWxM
ZWZ0LCBydW4ubG9naWNhbFdpZHRoKCksIGJveEdlb21ldHJ5Lm1hcmdpbkJveEhlaWdodCgpIH07
Ci0gICAgICAgICAgICAgICAgbV9pbmxpbmVCb3hSZWN0TWFwLnNldCgmbGF5b3V0Qm94LCBtYWtl
VW5pcXVlPElubGluZUJveD4oaW5saW5lQm94UmVjdCwgYWRqdXN0ZWRCYXNlbGluZSkpOworICAg
ICAgICAgICAgICAgIGF1dG8gaW5saW5lQm94ID0gbWFrZVVuaXF1ZTxJbmxpbmVCb3g+KGxheW91
dEJveCwgaW5saW5lQm94UmVjdCwgYWRqdXN0ZWRCYXNlbGluZSk7CisgICAgICAgICAgICAgICAg
bV9pbmxpbmVCb3hMaXN0LmFwcGVuZChpbmxpbmVCb3guZ2V0KCkpOworICAgICAgICAgICAgICAg
IG1faW5saW5lQm94UmVjdE1hcC5zZXQoJmxheW91dEJveCwgV1RGTW92ZShpbmxpbmVCb3gpKTsK
ICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgYXV0byBydW5IZWlnaHQgPSBi
b3hHZW9tZXRyeS5tYXJnaW5Cb3hIZWlnaHQoKTsKICAgICAgICAgICAgICAgICBhdXRvIGlubGlu
ZUJveFJlY3QgPSBEaXNwbGF5OjpJbmxpbmVSZWN0IHsgeyB9LCBydW5Mb2dpY2FsTGVmdCwgcnVu
LmxvZ2ljYWxXaWR0aCgpLCBydW5IZWlnaHQgfTsKLSAgICAgICAgICAgICAgICBtX2lubGluZUJv
eFJlY3RNYXAuc2V0KCZsYXlvdXRCb3gsIG1ha2VVbmlxdWU8SW5saW5lQm94PihpbmxpbmVCb3hS
ZWN0LCBydW5IZWlnaHQpKTsKKyAgICAgICAgICAgICAgICBhdXRvIGlubGluZUJveCA9IG1ha2VV
bmlxdWU8SW5saW5lQm94PihsYXlvdXRCb3gsIGlubGluZUJveFJlY3QsIHJ1bkhlaWdodCk7Cisg
ICAgICAgICAgICAgICAgbV9pbmxpbmVCb3hMaXN0LmFwcGVuZChpbmxpbmVCb3guZ2V0KCkpOwor
ICAgICAgICAgICAgICAgIG1faW5saW5lQm94UmVjdE1hcC5zZXQoJmxheW91dEJveCwgV1RGTW92
ZShpbmxpbmVCb3gpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIGlmIChydW4uaXND
b250YWluZXJTdGFydCgpKSB7CiAgICAgICAgICAgICBhdXRvIGluaXRpYWxXaWR0aCA9IGxvZ2lj
YWxXaWR0aCgpIC0gcnVuTG9naWNhbExlZnQ7CkBAIC0yMzcsNyArMjQzLDkgQEAgdm9pZCBMaW5l
Qm94Ojpjb25zdHJ1Y3RJbmxpbmVCb3hlcyhjb25zdCBMaW5lQnVpbGRlcjo6UnVuTGlzdCYgcnVu
cywgSXNMaW5lVmlzdWEKICAgICAgICAgICAgIGF1dG8gYmFzZWxpbmUgPSByb3VuZGYoaGFsZkxl
YWRpbmdNZXRyaWNzKGZvbnRNZXRyaWNzLCBsb2dpY2FsSGVpZ2h0KS5hc2NlbnQpOwogICAgICAg
ICAgICAgYXV0byBkZXNjZW50ID0gcm91bmRmKGZvbnRNZXRyaWNzLmZsb2F0RGVzY2VudCgpKTsK
ICAgICAgICAgICAgIGF1dG8gaW5saW5lQm94UmVjdCA9IERpc3BsYXk6OklubGluZVJlY3QgeyB7
IH0sIHJ1bkxvZ2ljYWxMZWZ0LCBpbml0aWFsV2lkdGgsIGxvZ2ljYWxIZWlnaHQgfTsKLSAgICAg
ICAgICAgIG1faW5saW5lQm94UmVjdE1hcC5zZXQoJmxheW91dEJveCwgbWFrZVVuaXF1ZTxJbmxp
bmVCb3g+KGlubGluZUJveFJlY3QsIGJhc2VsaW5lLCBkZXNjZW50LCBpbmxpbmVCb3hJc1Zpc3Vh
bGx5RW1wdHkpKTsKKyAgICAgICAgICAgIGF1dG8gaW5saW5lQm94ID0gbWFrZVVuaXF1ZTxJbmxp
bmVCb3g+KGxheW91dEJveCwgaW5saW5lQm94UmVjdCwgYmFzZWxpbmUsIGRlc2NlbnQsIGlubGlu
ZUJveElzVmlzdWFsbHlFbXB0eSk7CisgICAgICAgICAgICBtX2lubGluZUJveExpc3QuYXBwZW5k
KGlubGluZUJveC5nZXQoKSk7CisgICAgICAgICAgICBtX2lubGluZUJveFJlY3RNYXAuc2V0KCZs
YXlvdXRCb3gsIFdURk1vdmUoaW5saW5lQm94KSk7CiAgICAgICAgIH0gZWxzZSBpZiAocnVuLmlz
Q29udGFpbmVyRW5kKCkpIHsKICAgICAgICAgICAgIC8vIEFkanVzdCB0aGUgbG9naWNhbCB3aWR0
aCB3aGVuIHRoZSBpbmxpbmUgbGV2ZWwgY29udGFpbmVyIGNsb3NlcyBvbiB0aGlzIGxpbmUuCiAg
ICAgICAgICAgICBhdXRvJiBpbmxpbmVCb3ggPSAqbV9pbmxpbmVCb3hSZWN0TWFwLmdldCgmbGF5
b3V0Qm94KTsKQEAgLTI2MCwxMDkgKzI2OCwxMDQgQEAgdm9pZCBMaW5lQm94OjphbGlnblZlcnRp
Y2FsbHkoKQogCiAgICAgYXV0byBjb250ZW50TG9naWNhbEhlaWdodCA9IElubGluZUxheW91dFVu
aXQgeyB9OwogICAgIGF1dG8gYWxpZ25tZW50QmFzZWxpbmUgPSBJbmxpbmVMYXlvdXRVbml0IHsg
fTsKLSAgICBhdXRvIGNvbXB1dGVMaW5lQm94SGVpZ2h0ID0gWyZdKGNvbnN0IGF1dG8mIGlubGlu
ZUJveCwgY29uc3QgYXV0byYgbGF5b3V0Qm94LCBhdXRvIHRleHRBbGlnbk1vZGUpIHsKLSAgICAg
ICAgc3dpdGNoICh0ZXh0QWxpZ25Nb2RlKSB7CisKKyAgICBzdHJ1Y3QgTG9naWNhbFRvcEFuZFZl
cnRpY2FsT3ZlcmZsb3cgeworICAgICAgICBJbmxpbmVMYXlvdXRVbml0IGxvZ2ljYWxUb3AgeyB9
OworICAgICAgICBJbmxpbmVMYXlvdXRVbml0IHZlcnRpY2FsT3ZlcmZsb3cgeyB9OworICAgIH07
CisgICAgYXV0byBjb21wdXRlZExvZ2ljYWxUb3BBbmRWZXJ0aWNhbE92ZXJmbG93ID0gWyZdKGNv
bnN0IGF1dG8mIGlubGluZUJveCwgT3B0aW9uYWw8VmVydGljYWxBbGlnbj4gb3ZlcnJpZGVWZXJ0
aWNhbEFsaWduTW9kZSA9IFdURjo6bnVsbG9wdCkgLT4gTG9naWNhbFRvcEFuZFZlcnRpY2FsT3Zl
cmZsb3cgeworICAgICAgICBhdXRvJiBsYXlvdXRCb3ggPSBpbmxpbmVCb3gubGF5b3V0Qm94KCk7
CisgICAgICAgIGF1dG8gdmVydGljYWxBbGlnbk1vZGUgPSBvdmVycmlkZVZlcnRpY2FsQWxpZ25N
b2RlLnZhbHVlT3IobGF5b3V0Qm94LnN0eWxlKCkudmVydGljYWxBbGlnbigpKTsKKyAgICAgICAg
c3dpdGNoICh2ZXJ0aWNhbEFsaWduTW9kZSkgewogICAgICAgICBjYXNlIFZlcnRpY2FsQWxpZ246
OkJhc2VsaW5lOiB7CiAgICAgICAgICAgICBhdXRvIGlubGluZUJveExvZ2ljYWxUb3AgPSBhbGln
bm1lbnRCYXNlbGluZSAtIGlubGluZUJveC5iYXNlbGluZSgpOwotICAgICAgICAgICAgYXV0byBv
dmVyZmxvd0Fib3ZlQmFzZWxpbmUgPSAtaW5saW5lQm94TG9naWNhbFRvcDsKLSAgICAgICAgICAg
IGlmIChvdmVyZmxvd0Fib3ZlQmFzZWxpbmUgPiAwKSB7Ci0gICAgICAgICAgICAgICAgY29udGVu
dExvZ2ljYWxIZWlnaHQgKz0gb3ZlcmZsb3dBYm92ZUJhc2VsaW5lOwotICAgICAgICAgICAgICAg
IGFsaWdubWVudEJhc2VsaW5lICs9IG92ZXJmbG93QWJvdmVCYXNlbGluZTsKKyAgICAgICAgICAg
IHJldHVybiB7IGlubGluZUJveExvZ2ljYWxUb3AsIHN0ZDo6bWF4KDAuMGYsIC1pbmxpbmVCb3hM
b2dpY2FsVG9wKSB9OworICAgICAgICB9CisgICAgICAgIGNhc2UgVmVydGljYWxBbGlnbjo6VG9w
OgorICAgICAgICAgICAgcmV0dXJuIHsgeyB9LCBzdGQ6Om1heCgwLjBmLCBpbmxpbmVCb3gubG9n
aWNhbEhlaWdodCgpIC0gY29udGVudExvZ2ljYWxIZWlnaHQpIH07CisgICAgICAgIGNhc2UgVmVy
dGljYWxBbGlnbjo6Qm90dG9tOiB7CisgICAgICAgICAgICBhdXRvIGlubGluZUJveExvZ2ljYWxU
b3AgPSBjb250ZW50TG9naWNhbEhlaWdodCAtIGlubGluZUJveC5sb2dpY2FsSGVpZ2h0KCk7Cisg
ICAgICAgICAgICByZXR1cm4geyBpbmxpbmVCb3hMb2dpY2FsVG9wLCBzdGQ6Om1heCgwLjBmLCAt
aW5saW5lQm94TG9naWNhbFRvcCkgfTsKKyAgICAgICAgfQorICAgICAgICBjYXNlIFZlcnRpY2Fs
QWxpZ246Ok1pZGRsZTogeworICAgICAgICAgICAgaWYgKCZsYXlvdXRCb3gucGFyZW50KCkgPT0g
JmZvcm1hdHRpbmdDb250ZXh0KCkucm9vdCgpKSB7CisgICAgICAgICAgICAgICAgYXV0byBpbmxp
bmVCb3hMb2dpY2FsVG9wID0gYWxpZ25tZW50QmFzZWxpbmUgLSAoaW5saW5lQm94LmxvZ2ljYWxI
ZWlnaHQoKSAvIDIgKyBmb3JtYXR0aW5nQ29udGV4dCgpLnJvb3QoKS5zdHlsZSgpLmZvbnRNZXRy
aWNzKCkueEhlaWdodCgpIC8gMik7CisgICAgICAgICAgICAgICAgcmV0dXJuIHsgaW5saW5lQm94
TG9naWNhbFRvcCwgc3RkOjptYXgoMC4wZiwgLWlubGluZUJveExvZ2ljYWxUb3ApIH07CiAgICAg
ICAgICAgICB9CisgICAgICAgICAgICBhdXRvJiBwYXJlbnRJbmxpbmVCb3ggPSBpbmxpbmVCb3hG
b3JMYXlvdXRCb3gobGF5b3V0Qm94LnBhcmVudCgpKTsKKyAgICAgICAgICAgIGF1dG8gaW5saW5l
Qm94TG9naWNhbFRvcCA9IHN0ZDo6bWF4KDAuMGYsIHBhcmVudElubGluZUJveC5sb2dpY2FsVG9w
KCkpICsgKHBhcmVudElubGluZUJveC5iYXNlbGluZSgpIC0gKGlubGluZUJveC5sb2dpY2FsSGVp
Z2h0KCkgLyAyICsgbGF5b3V0Qm94LnBhcmVudCgpLnN0eWxlKCkuZm9udE1ldHJpY3MoKS54SGVp
Z2h0KCkgLyAyKSk7CisgICAgICAgICAgICByZXR1cm4geyBpbmxpbmVCb3hMb2dpY2FsVG9wLCBz
dGQ6Om1heCgwLjBmLCAtaW5saW5lQm94TG9naWNhbFRvcCkgfTsKKyAgICAgICAgfQorICAgICAg
ICBkZWZhdWx0OgorICAgICAgICAgICAgQVNTRVJUX05PVF9JTVBMRU1FTlRFRF9ZRVQoKTsKKyAg
ICAgICAgICAgIHJldHVybiB7IH07CisgICAgICAgIH0KKyAgICB9OwogCi0gICAgICAgICAgICBh
dXRvIGlubGluZUJveExvZ2ljYWxCb3R0b20gPSBzdGQ6Om1heCgwLjBmLCBpbmxpbmVCb3hMb2dp
Y2FsVG9wKSArIGlubGluZUJveC5sb2dpY2FsSGVpZ2h0KCk7Ci0gICAgICAgICAgICBhdXRvIGNv
bnRlbnRWZXJ0aWNhbE92ZXJmbG93ID0gaW5saW5lQm94TG9naWNhbEJvdHRvbSAtIGNvbnRlbnRM
b2dpY2FsSGVpZ2h0OwotICAgICAgICAgICAgaWYgKGNvbnRlbnRWZXJ0aWNhbE92ZXJmbG93ID4g
MCkKLSAgICAgICAgICAgICAgICBjb250ZW50TG9naWNhbEhlaWdodCArPSBjb250ZW50VmVydGlj
YWxPdmVyZmxvdzsKKyAgICBhdXRvIGNvbXB1dGVMaW5lQm94SGVpZ2h0ID0gWyZdKGF1dG8mIGlu
bGluZUJveCwgT3B0aW9uYWw8VmVydGljYWxBbGlnbj4gb3ZlcnJpZGVWZXJ0aWNhbEFsaWduTW9k
ZSA9IFdURjo6bnVsbG9wdCkgeworICAgICAgICBhdXRvJiBsYXlvdXRCb3ggPSBpbmxpbmVCb3gu
bGF5b3V0Qm94KCk7CisgICAgICAgIGF1dG8gdmVydGljYWxBbGlnbk1vZGUgPSBvdmVycmlkZVZl
cnRpY2FsQWxpZ25Nb2RlLnZhbHVlT3IobGF5b3V0Qm94LnN0eWxlKCkudmVydGljYWxBbGlnbigp
KTsKKyAgICAgICAgYXV0byBsb2dpY2FsVG9wQW5kVmVydGljYWxPdmVyZmxvdyA9IGNvbXB1dGVk
TG9naWNhbFRvcEFuZFZlcnRpY2FsT3ZlcmZsb3coaW5saW5lQm94LCB2ZXJ0aWNhbEFsaWduTW9k
ZSk7CisgICAgICAgIHN3aXRjaCAodmVydGljYWxBbGlnbk1vZGUpIHsKKyAgICAgICAgY2FzZSBW
ZXJ0aWNhbEFsaWduOjpCYXNlbGluZTogeworICAgICAgICAgICAgaWYgKGxvZ2ljYWxUb3BBbmRW
ZXJ0aWNhbE92ZXJmbG93LnZlcnRpY2FsT3ZlcmZsb3cpIHsKKyAgICAgICAgICAgICAgICBjb250
ZW50TG9naWNhbEhlaWdodCArPSBsb2dpY2FsVG9wQW5kVmVydGljYWxPdmVyZmxvdy52ZXJ0aWNh
bE92ZXJmbG93OworICAgICAgICAgICAgICAgIGFsaWdubWVudEJhc2VsaW5lICs9IGxvZ2ljYWxU
b3BBbmRWZXJ0aWNhbE92ZXJmbG93LnZlcnRpY2FsT3ZlcmZsb3c7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIGF1dG8gaW5saW5lQm94TG9naWNhbEJvdHRvbSA9IHN0ZDo6bWF4KDAuMGYs
IGxvZ2ljYWxUb3BBbmRWZXJ0aWNhbE92ZXJmbG93LmxvZ2ljYWxUb3ApICsgaW5saW5lQm94Lmxv
Z2ljYWxIZWlnaHQoKTsKKyAgICAgICAgICAgIGF1dG8gb3ZlcmZsb3cgPSBpbmxpbmVCb3hMb2dp
Y2FsQm90dG9tIC0gY29udGVudExvZ2ljYWxIZWlnaHQ7CisgICAgICAgICAgICBpZiAob3ZlcmZs
b3cgPiAwKQorICAgICAgICAgICAgICAgIGNvbnRlbnRMb2dpY2FsSGVpZ2h0ICs9IG92ZXJmbG93
OwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBWZXJ0aWNhbEFs
aWduOjpUb3A6IHsKLSAgICAgICAgICAgIGF1dG8gaW5saW5lQm94TG9naWNhbFRvcCA9IGNvbnRl
bnRMb2dpY2FsSGVpZ2h0IC0gaW5saW5lQm94LmxvZ2ljYWxIZWlnaHQoKTsKLSAgICAgICAgICAg
IGF1dG8gY29udGVudFZlcnRpY2FsT3ZlcmZsb3cgPSAtaW5saW5lQm94TG9naWNhbFRvcDsKLSAg
ICAgICAgICAgIGlmIChjb250ZW50VmVydGljYWxPdmVyZmxvdyA+IDApIHsKLSAgICAgICAgICAg
ICAgICAvLyB2ZXJ0aWNhbC1hbGlnbjogdG9wIHN0cmV0Y2hlcyB0aGUgbGluZSBidXQgbmV2ZXIg
cHVzaGVzIHRoZSBiYXNlbGluZSBkb3duLgotICAgICAgICAgICAgICAgIGNvbnRlbnRMb2dpY2Fs
SGVpZ2h0ICs9IGNvbnRlbnRWZXJ0aWNhbE92ZXJmbG93OwotICAgICAgICAgICAgfQorICAgICAg
ICAgICAgLy8gdmVydGljYWwtYWxpZ246IHRvcCBzdHJldGNoZXMgdGhlIGxpbmUgYnV0IG5ldmVy
IHB1c2hlcyB0aGUgYmFzZWxpbmUgZG93bi4KKyAgICAgICAgICAgIGlmIChsb2dpY2FsVG9wQW5k
VmVydGljYWxPdmVyZmxvdy52ZXJ0aWNhbE92ZXJmbG93KQorICAgICAgICAgICAgICAgIGNvbnRl
bnRMb2dpY2FsSGVpZ2h0ICs9IGxvZ2ljYWxUb3BBbmRWZXJ0aWNhbE92ZXJmbG93LnZlcnRpY2Fs
T3ZlcmZsb3c7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICBjYXNlIFZl
cnRpY2FsQWxpZ246OkJvdHRvbTogewotICAgICAgICAgICAgYXV0byBpbmxpbmVCb3hMb2dpY2Fs
VG9wID0gY29udGVudExvZ2ljYWxIZWlnaHQgLSBpbmxpbmVCb3gubG9naWNhbEhlaWdodCgpOyAK
LSAgICAgICAgICAgIGF1dG8gY29udGVudFZlcnRpY2FsT3ZlcmZsb3cgPSAtaW5saW5lQm94TG9n
aWNhbFRvcDsKLSAgICAgICAgICAgIGlmIChjb250ZW50VmVydGljYWxPdmVyZmxvdyA+IDApIHsK
LSAgICAgICAgICAgICAgICAvLyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tIHN0cmV0Y2hlcyB0aGUg
bGluZSBhbmQgcHVzaGVzIHRoZSBiYXNlbGluZSBkb3duIGFzIHdlbGwuCi0gICAgICAgICAgICAg
ICAgY29udGVudExvZ2ljYWxIZWlnaHQgKz0gY29udGVudFZlcnRpY2FsT3ZlcmZsb3c7Ci0gICAg
ICAgICAgICAgICAgYWxpZ25tZW50QmFzZWxpbmUgKz0gY29udGVudFZlcnRpY2FsT3ZlcmZsb3c7
CisgICAgICAgICAgICAvLyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tIHN0cmV0Y2hlcyB0aGUgbGlu
ZSBhbmQgcHVzaGVzIHRoZSBiYXNlbGluZSBkb3duIGFzIHdlbGwuCisgICAgICAgICAgICBpZiAo
bG9naWNhbFRvcEFuZFZlcnRpY2FsT3ZlcmZsb3cudmVydGljYWxPdmVyZmxvdykgeworICAgICAg
ICAgICAgICAgIGNvbnRlbnRMb2dpY2FsSGVpZ2h0ICs9IGxvZ2ljYWxUb3BBbmRWZXJ0aWNhbE92
ZXJmbG93LnZlcnRpY2FsT3ZlcmZsb3c7CisgICAgICAgICAgICAgICAgYWxpZ25tZW50QmFzZWxp
bmUgKz0gbG9naWNhbFRvcEFuZFZlcnRpY2FsT3ZlcmZsb3cudmVydGljYWxPdmVyZmxvdzsKICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2Ug
VmVydGljYWxBbGlnbjo6TWlkZGxlOiB7Ci0gICAgICAgICAgICBBU1NFUlQoJmxheW91dEJveCAh
PSAmZm9ybWF0dGluZ0NvbnRleHQoKS5yb290KCkpOwotICAgICAgICAgICAgYXV0byBpbmxpbmVC
b3hMb2dpY2FsVG9wID0gYWxpZ25tZW50QmFzZWxpbmUgLSAoaW5saW5lQm94LmxvZ2ljYWxIZWln
aHQoKSAvIDIgKyBsYXlvdXRCb3gucGFyZW50KCkuc3R5bGUoKS5mb250TWV0cmljcygpLnhIZWln
aHQoKSAvIDIpOwotICAgICAgICAgICAgYXV0byBvdmVyZmxvd0Fib3ZlQmFzZWxpbmUgPSAtaW5s
aW5lQm94TG9naWNhbFRvcDsKLSAgICAgICAgICAgIGlmIChvdmVyZmxvd0Fib3ZlQmFzZWxpbmUg
PiAwKSB7Ci0gICAgICAgICAgICAgICAgY29udGVudExvZ2ljYWxIZWlnaHQgKz0gb3ZlcmZsb3dB
Ym92ZUJhc2VsaW5lOwotICAgICAgICAgICAgICAgIGFsaWdubWVudEJhc2VsaW5lICs9IG92ZXJm
bG93QWJvdmVCYXNlbGluZTsKKyAgICAgICAgICAgIGlmIChsb2dpY2FsVG9wQW5kVmVydGljYWxP
dmVyZmxvdy52ZXJ0aWNhbE92ZXJmbG93KSB7CisgICAgICAgICAgICAgICAgY29udGVudExvZ2lj
YWxIZWlnaHQgKz0gbG9naWNhbFRvcEFuZFZlcnRpY2FsT3ZlcmZsb3cudmVydGljYWxPdmVyZmxv
dzsKKyAgICAgICAgICAgICAgICBhbGlnbm1lbnRCYXNlbGluZSArPSBsb2dpY2FsVG9wQW5kVmVy
dGljYWxPdmVyZmxvdy52ZXJ0aWNhbE92ZXJmbG93OwogICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICBhdXRvIGlubGluZUJveExvZ2ljYWxCb3R0b20gPSBzdGQ6Om1heCgwLjBmLCBpbmxpbmVC
b3hMb2dpY2FsVG9wKSArIGlubGluZUJveC5sb2dpY2FsSGVpZ2h0KCk7Ci0gICAgICAgICAgICBh
dXRvIGNvbnRlbnRWZXJ0aWNhbE92ZXJmbG93ID0gaW5saW5lQm94TG9naWNhbEJvdHRvbSAtIGNv
bnRlbnRMb2dpY2FsSGVpZ2h0OwotICAgICAgICAgICAgaWYgKGNvbnRlbnRWZXJ0aWNhbE92ZXJm
bG93ID4gMCkKLSAgICAgICAgICAgICAgICBjb250ZW50TG9naWNhbEhlaWdodCArPSBjb250ZW50
VmVydGljYWxPdmVyZmxvdzsKKyAgICAgICAgICAgIGF1dG8gaW5saW5lQm94TG9naWNhbEJvdHRv
bSA9IHN0ZDo6bWF4KDAuMGYsIGxvZ2ljYWxUb3BBbmRWZXJ0aWNhbE92ZXJmbG93LmxvZ2ljYWxU
b3ApICsgaW5saW5lQm94LmxvZ2ljYWxIZWlnaHQoKTsKKyAgICAgICAgICAgIGF1dG8gb3ZlcmZs
b3cgPSBpbmxpbmVCb3hMb2dpY2FsQm90dG9tIC0gY29udGVudExvZ2ljYWxIZWlnaHQ7CisgICAg
ICAgICAgICBpZiAob3ZlcmZsb3cgPiAwKQorICAgICAgICAgICAgICAgIGNvbnRlbnRMb2dpY2Fs
SGVpZ2h0ICs9IG92ZXJmbG93OwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAg
ICAgZGVmYXVsdDoKICAgICAgICAgICAgIEFTU0VSVF9OT1RfSU1QTEVNRU5URURfWUVUKCk7CiAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgfQorICAgICAgICBpbmxpbmVCb3guc2V0TG9naWNh
bFRvcChsb2dpY2FsVG9wQW5kVmVydGljYWxPdmVyZmxvdy5sb2dpY2FsVG9wKTsKICAgICB9Owog
CiAgICAgYXV0byBzaG91bGRSb290SW5saW5lQm94U3RyZXRjaExpbmVCb3ggPSAhcmVjb21tZW5k
ZWRMaW5lQm94SGVpZ2h0ICYmICFtX3Jvb3RJbmxpbmVCb3guaXNWaXN1YWxseUVtcHR5KCk7CiAg
ICAgaWYgKHNob3VsZFJvb3RJbmxpbmVCb3hTdHJldGNoTGluZUJveCkKLSAgICAgICAgY29tcHV0
ZUxpbmVCb3hIZWlnaHQobV9yb290SW5saW5lQm94LCBmb3JtYXR0aW5nQ29udGV4dCgpLnJvb3Qo
KSwgVmVydGljYWxBbGlnbjo6QmFzZWxpbmUpOwotICAgIGZvciAoYXV0byYgaW5saW5lQm94RW50
cnkgOiBtX2lubGluZUJveFJlY3RNYXApIHsKLSAgICAgICAgYXV0byYgaW5saW5lQm94ID0gKmlu
bGluZUJveEVudHJ5LnZhbHVlOwotICAgICAgICBhdXRvIHNob3VsZElubGluZUJveFN0cmV0Y2hM
aW5lQm94ID0gIWlubGluZUJveC5pc1Zpc3VhbGx5RW1wdHkoKSAmJiAoIXJlY29tbWVuZGVkTGlu
ZUJveEhlaWdodCB8fCBpbmxpbmVCb3guaXNBdG9taWMoKSk7Ci0gICAgICAgIGlmIChzaG91bGRJ
bmxpbmVCb3hTdHJldGNoTGluZUJveCkgewotICAgICAgICAgICAgYXV0byYgbGF5b3V0Qm94ID0g
KmlubGluZUJveEVudHJ5LmtleTsKLSAgICAgICAgICAgIGNvbXB1dGVMaW5lQm94SGVpZ2h0KGlu
bGluZUJveCwgbGF5b3V0Qm94LCBsYXlvdXRCb3guc3R5bGUoKS52ZXJ0aWNhbEFsaWduKCkpOwot
ICAgICAgICB9CisgICAgICAgIGNvbXB1dGVMaW5lQm94SGVpZ2h0KG1fcm9vdElubGluZUJveCwg
bWFrZU9wdGlvbmFsKFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lKSk7CisgICAgZm9yIChhdXRvKiBp
bmxpbmVCb3ggOiBtX2lubGluZUJveExpc3QpIHsKKyAgICAgICAgYXV0byBzaG91bGRJbmxpbmVC
b3hTdHJldGNoTGluZUJveCA9ICFpbmxpbmVCb3gtPmlzVmlzdWFsbHlFbXB0eSgpICYmICghcmVj
b21tZW5kZWRMaW5lQm94SGVpZ2h0IHx8IGlubGluZUJveC0+aXNBdG9taWMoKSk7CisgICAgICAg
IGlmIChzaG91bGRJbmxpbmVCb3hTdHJldGNoTGluZUJveCkKKyAgICAgICAgICAgIGNvbXB1dGVM
aW5lQm94SGVpZ2h0KCppbmxpbmVCb3gpOwogICAgIH0KIAogICAgIGF1dG8gbGluZUJveExvZ2lj
YWxIZWlnaHQgPSBzdGQ6Om1heChyZWNvbW1lbmRlZExpbmVCb3hIZWlnaHQudmFsdWVPcihJbmxp
bmVMYXlvdXRVbml0IHsgfSksIGNvbnRlbnRMb2dpY2FsSGVpZ2h0KTsKICAgICBtX3JlY3Quc2V0
SGVpZ2h0KGxpbmVCb3hMb2dpY2FsSGVpZ2h0KTsKIAotICAgIGF1dG8gYWRqdXN0SW5saW5lQm94
VG9wID0gWyZdKGF1dG8mIGlubGluZUJveCwgYXV0byYgbGF5b3V0Qm94LCBhdXRvIHRleHRBbGln
bk1vZGUpIHsKLSAgICAgICAgYXV0byBpbmxpbmVCb3hMb2dpY2FsVG9wID0gSW5saW5lTGF5b3V0
VW5pdCB7IH07Ci0gICAgICAgIHN3aXRjaCAodGV4dEFsaWduTW9kZSkgewotICAgICAgICBjYXNl
IFZlcnRpY2FsQWxpZ246OkJhc2VsaW5lOgotICAgICAgICAgICAgaW5saW5lQm94TG9naWNhbFRv
cCA9IGFsaWdubWVudEJhc2VsaW5lIC0gaW5saW5lQm94LmJhc2VsaW5lKCk7Ci0gICAgICAgICAg
ICBicmVhazsKLSAgICAgICAgY2FzZSBWZXJ0aWNhbEFsaWduOjpUb3A6Ci0gICAgICAgICAgICBp
bmxpbmVCb3hMb2dpY2FsVG9wID0geyB9OwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNh
c2UgVmVydGljYWxBbGlnbjo6Qm90dG9tOgotICAgICAgICAgICAgaW5saW5lQm94TG9naWNhbFRv
cCA9IGxvZ2ljYWxCb3R0b20oKSAtIGlubGluZUJveC5sb2dpY2FsSGVpZ2h0KCk7Ci0gICAgICAg
ICAgICBicmVhazsKLSAgICAgICAgY2FzZSBWZXJ0aWNhbEFsaWduOjpNaWRkbGU6IHsKLSAgICAg
ICAgICAgIEFTU0VSVCgmbGF5b3V0Qm94ICE9ICZmb3JtYXR0aW5nQ29udGV4dCgpLnJvb3QoKSk7
Ci0gICAgICAgICAgICBhdXRvJiBwYXJlbnRTdHlsZSA9IGxheW91dEJveC5wYXJlbnQoKS5zdHls
ZSgpOwotICAgICAgICAgICAgYXV0byB4SGVpZ2h0ID0gcGFyZW50U3R5bGUuZm9udE1ldHJpY3Mo
KS54SGVpZ2h0KCk7Ci0gICAgICAgICAgICBpbmxpbmVCb3hMb2dpY2FsVG9wID0gYWxpZ25tZW50
QmFzZWxpbmUgLSAoaW5saW5lQm94LmxvZ2ljYWxIZWlnaHQoKSAvIDIgKyB4SGVpZ2h0IC8gMik7
Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICBkZWZhdWx0OgotICAgICAg
ICAgICAgQVNTRVJUX05PVF9JTVBMRU1FTlRFRF9ZRVQoKTsKLSAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICB9Ci0gICAgICAgIGlubGluZUJveC5zZXRMb2dpY2FsVG9wKGlubGluZUJveExvZ2lj
YWxUb3ApOwotICAgIH07Ci0KLSAgICBhZGp1c3RJbmxpbmVCb3hUb3AobV9yb290SW5saW5lQm94
LCBmb3JtYXR0aW5nQ29udGV4dCgpLnJvb3QoKSwgVmVydGljYWxBbGlnbjo6QmFzZWxpbmUpOwot
ICAgIGZvciAoYXV0byYgaW5saW5lQm94RW50cnkgOiBtX2lubGluZUJveFJlY3RNYXApIHsKLSAg
ICAgICAgYXV0byYgbGF5b3V0Qm94ID0gKmlubGluZUJveEVudHJ5LmtleTsKLSAgICAgICAgYXV0
byYgaW5saW5lQm94ID0gKmlubGluZUJveEVudHJ5LnZhbHVlOwotICAgICAgICBhZGp1c3RJbmxp
bmVCb3hUb3AoaW5saW5lQm94LCBsYXlvdXRCb3gsIGxheW91dEJveC5zdHlsZSgpLnZlcnRpY2Fs
QWxpZ24oKSk7Ci0gICAgfQorICAgIG1fcm9vdElubGluZUJveC5zZXRMb2dpY2FsVG9wKGNvbXB1
dGVkTG9naWNhbFRvcEFuZFZlcnRpY2FsT3ZlcmZsb3cobV9yb290SW5saW5lQm94LCBWZXJ0aWNh
bEFsaWduOjpCYXNlbGluZSkubG9naWNhbFRvcCk7CisgICAgZm9yIChhdXRvKiBpbmxpbmVCb3gg
OiBtX2lubGluZUJveExpc3QpCisgICAgICAgIGlubGluZUJveC0+c2V0TG9naWNhbFRvcChjb21w
dXRlZExvZ2ljYWxUb3BBbmRWZXJ0aWNhbE92ZXJmbG93KCppbmxpbmVCb3gpLmxvZ2ljYWxUb3Ap
OwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0
dGluZy9JbmxpbmVMaW5lQm94LmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0
dGluZy9JbmxpbmVMaW5lQm94LmgKaW5kZXggYzZkZmE4Y2ZjOGEyNDBhMGZkODFhNWE1MGY0OGRi
NWVjM2RlY2YwOC4uNDk3MTBlMDUxNTg3OGQzZWQ2NGIwYTdkNGRiMzg4OWFkN2U5MWMxYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGlu
ZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGlu
ZUxpbmVCb3guaApAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIkRpc3BsYXlJbmxpbmVSZWN0
LmgiCiAjaW5jbHVkZSAiSW5saW5lTGluZUJ1aWxkZXIuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFs
bG9jSW5saW5lcy5oPgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIG5hbWVzcGFjZSBMYXlvdXQgewpAQCAtNDQsOCArNDUsOCBAQCBwdWJsaWM6CiAgICAg
ICAgIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU5MSU5FKElubGluZUJveCk7CiAgICAgcHVibGlj
OgogICAgICAgICBlbnVtIGNsYXNzIElzVmlzdWFsbHlFbXB0eSB7IFllcywgTm8gfTsKLSAgICAg
ICAgSW5saW5lQm94KGNvbnN0IERpc3BsYXk6OklubGluZVJlY3QmLCBJbmxpbmVMYXlvdXRVbml0
IHN5bnRoZXRpY0Jhc2VsaW5lKTsKLSAgICAgICAgSW5saW5lQm94KGNvbnN0IERpc3BsYXk6Oklu
bGluZVJlY3QmLCBJbmxpbmVMYXlvdXRVbml0IGJhc2VsaW5lLCBJbmxpbmVMYXlvdXRVbml0IGRl
c2NlbnQsIElzVmlzdWFsbHlFbXB0eSk7CisgICAgICAgIElubGluZUJveChjb25zdCBCb3gmLCBj
b25zdCBEaXNwbGF5OjpJbmxpbmVSZWN0JiwgSW5saW5lTGF5b3V0VW5pdCBzeW50aGV0aWNCYXNl
bGluZSk7CisgICAgICAgIElubGluZUJveChjb25zdCBCb3gmLCBjb25zdCBEaXNwbGF5OjpJbmxp
bmVSZWN0JiwgSW5saW5lTGF5b3V0VW5pdCBiYXNlbGluZSwgSW5saW5lTGF5b3V0VW5pdCBkZXNj
ZW50LCBJc1Zpc3VhbGx5RW1wdHkpOwogICAgICAgICBJbmxpbmVCb3goKSA9IGRlZmF1bHQ7CiAK
ICAgICAgICAgY29uc3QgRGlzcGxheTo6SW5saW5lUmVjdCYgbG9naWNhbFJlY3QoKSBjb25zdCB7
IHJldHVybiBtX2xvZ2ljYWxSZWN0OyB9CkBAIC02NCw3ICs2NSwxMCBAQCBwdWJsaWM6CiAgICAg
ICAgIHZvaWQgc2V0SXNWaXN1YWxseU5vbkVtcHR5KCkgeyBtX2lzVmlzdWFsbHlFbXB0eSA9IGZh
bHNlOyB9CiAgICAgICAgIGJvb2wgaXNBdG9taWMoKSBjb25zdCB7IHJldHVybiBtX2lzQXRvbWlj
OyB9CiAKKyAgICAgICAgY29uc3QgQm94JiBsYXlvdXRCb3goKSBjb25zdCB7IHJldHVybiAqbV9s
YXlvdXRCb3g7IH0KKwogICAgIHByaXZhdGU6CisgICAgICAgIFdlYWtQdHI8Y29uc3QgQm94PiBt
X2xheW91dEJveDsKICAgICAgICAgRGlzcGxheTo6SW5saW5lUmVjdCBtX2xvZ2ljYWxSZWN0Owog
ICAgICAgICBJbmxpbmVMYXlvdXRVbml0IG1fYmFzZWxpbmU7CiAgICAgICAgIE9wdGlvbmFsPElu
bGluZUxheW91dFVuaXQ+IG1fZGVzY2VudDsKQEAgLTEyMSw2ICsxMjUsNyBAQCBwcml2YXRlOgog
CiAgICAgT3B0aW9uYWw8SW5saW5lTGF5b3V0VW5pdD4gbV9saW5lQWxpZ25tZW50T2Zmc2V0Owog
ICAgIEhhc2hNYXA8Y29uc3QgQm94Kiwgc3RkOjp1bmlxdWVfcHRyPElubGluZUJveD4+IG1faW5s
aW5lQm94UmVjdE1hcDsKKyAgICBWZWN0b3I8SW5saW5lQm94Kj4gbV9pbmxpbmVCb3hMaXN0Owog
ICAgIGNvbnN0IElubGluZUZvcm1hdHRpbmdDb250ZXh0JiBtX2lubGluZUZvcm1hdHRpbmdDb250
ZXh0OwogfTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDBlMDgzNjlkYzA3YTg1OGJiMjhhYWQ5ZTI5ODdkYTBlMzFhMTBi
ZWYuLjkwMjM5ZmU5NTc0MDg1N2UyN2Y2OTcwNjk2NGQxMWRiMTgyNzQ2ZDAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAyMC0wOC0xNCAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgor
CisgICAgICAgIFtMRkNdW0lGQ10gQWRkIHN1cHBvcnQgZm9yIG5lc3RlZCB2ZXJ0aWNhbC1hbGln
bjogbWlkZGxlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMTU1MzIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGZhc3QvbGF5b3V0Zm9ybWF0dGluZ2NvbnRleHQvdmVydGljYWwtYWxpZ24tbWlkZGxlLW5l
c3RlZC1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2xheW91dGZvcm1hdHRp
bmdjb250ZXh0L3ZlcnRpY2FsLWFsaWduLW1pZGRsZS1uZXN0ZWQuaHRtbDogQWRkZWQuCisKIDIw
MjAtMDgtMTMgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbTEZD
XVtJRkNdIEFkZCBpbml0aWFsIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgc3VwcG9ydApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9sYXlvdXRmb3JtYXR0aW5nY29udGV4dC92ZXJ0aWNhbC1h
bGlnbi1taWRkbGUtbmVzdGVkLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2xheW91
dGZvcm1hdHRpbmdjb250ZXh0L3ZlcnRpY2FsLWFsaWduLW1pZGRsZS1uZXN0ZWQtZXhwZWN0ZWQu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lNjY3MTExYzg1NjdlNGYxZWNlOTFlM2YzYzJhODBhODhkZDg0OTM3
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9sYXlvdXRmb3JtYXR0aW5nY29u
dGV4dC92ZXJ0aWNhbC1hbGlnbi1taWRkbGUtbmVzdGVkLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCAr
MSw3IEBACis8IURPQ1RZUEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFs
OkxheW91dEZvcm1hdHRpbmdDb250ZXh0RW5hYmxlZD10cnVlIGludGVybmFsOkxheW91dEZvcm1h
dHRpbmdDb250ZXh0SW50ZWdyYXRpb25FbmFibGVkPWZhbHNlIF0gLS0+Cis8c3R5bGU+CitkaXYg
eworICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxkaXYgc3R5bGU9
ImhlaWdodDogNTJweDsiPjwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9sYXlv
dXRmb3JtYXR0aW5nY29udGV4dC92ZXJ0aWNhbC1hbGlnbi1taWRkbGUtbmVzdGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2xheW91dGZvcm1hdHRpbmdjb250ZXh0L3ZlcnRpY2FsLWFsaWduLW1p
ZGRsZS1uZXN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYjhhYjM2YzkwNDdhMDJjNDg4MTdmZWI3MWYz
ZGZlY2M3NmY2N2NjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9sYXlvdXRm
b3JtYXR0aW5nY29udGV4dC92ZXJ0aWNhbC1hbGlnbi1taWRkbGUtbmVzdGVkLmh0bWwKQEAgLTAs
MCArMSwyMyBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgaW50
ZXJuYWw6TGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRFbmFibGVkPXRydWUgaW50ZXJuYWw6TGF5b3V0
Rm9ybWF0dGluZ0NvbnRleHRJbnRlZ3JhdGlvbkVuYWJsZWQ9ZmFsc2UgXSAtLT4KKzxzdHlsZT4K
Ky5jb250YWluZXIgeworICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgY29sb3I6IGdyZWVu
OworICBmb250LXNpemU6IDQwcHg7CisgIGZvbnQtZmFtaWx5OiBBaGVtOworfQorCitzcGFuIHsK
KyAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKK30KKzwvc3R5bGU+CisKKzxkaXYgY2xhc3M9Y29u
dGFpbmVyPlhYCisgIDxzcGFuPgorICAgIFhYCisgICAgPHNwYW4+CisgICAgICBYWAorICAgICAg
PHNwYW4+WFg8L3NwYW4+CisgICAgPC9zcGFuPgorICA8L3NwYW4+Cis8L2Rpdj4K
</data>

          </attachment>
      

    </bug>

</bugzilla>