<?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>189358</bug_id>
          
          <creation_ts>2018-09-06 10:33:57 -0700</creation_ts>
          <short_desc>[LFC][BFC] Add support for min(max)-width</short_desc>
          <delta_ts>2018-09-06 11:07:00 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>koivisto</cc>
    
    <cc>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>1457131</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-09-06 10:33:57 -0700</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457133</commentid>
    <comment_count>1</comment_count>
      <attachid>349042</attachid>
    <who name="alan">zalan</who>
    <bug_when>2018-09-06 10:35:58 -0700</bug_when>
    <thetext>Created attachment 349042
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457150</commentid>
    <comment_count>2</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2018-09-06 11:03:42 -0700</bug_when>
    <thetext>Committed r235744: &lt;https://trac.webkit.org/changeset/235744&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457151</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-09-06 11:07:00 -0700</bug_when>
    <thetext>&lt;rdar://problem/44187786&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349042</attachid>
            <date>2018-09-06 10:35:58 -0700</date>
            <delta_ts>2018-09-06 10:52:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189358-20180906103555.patch</filename>
            <type>text/plain</type>
            <size>33058</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NzM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmIxYjNmYjI3YjFkYzdj
NDc0ODAwOTU2MWQ2NDdiMDk5OGFiMmM0My4uODFjMzBjYmU4MTczMDVjZWNlNDc1ZjYxMTIyNzVm
ZjVkZGExNjJlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE4LTA5LTA2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bQkZDXSBBZGQgc3Vw
cG9ydCBmb3IgbWluKG1heCktd2lkdGgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTM1OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvQ1NTMjIvdmlzdWRldC5o
dG1sI21pbi1tYXgtd2lkdGhzIGZvciBkZXRhaWxzLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2Js
b2NrL2Jsb2NrLW9ubHkvYWJzb2x1dGUtcG9zaXRpb24tbWluLW1heC13aWR0aC5odG1sCisgICAg
ICAgICAgICAgICBmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvZmxvYXQtbWluLW1heC13aWR0aC5odG1s
CisgICAgICAgICAgICAgICBmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvaW5mbG93LW1pbi1tYXgtd2lk
dGguaHRtbAorCisgICAgICAgICogbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxheW91dDo6Rm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVPdXRPZkZsb3dI
b3Jpem9udGFsR2VvbWV0cnkgY29uc3QpOgorICAgICAgICAqIGxheW91dC9Gb3JtYXR0aW5nQ29u
dGV4dC5oOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6R2Vv
bWV0cnk6Om91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeSk6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6ZmxvYXRpbmdXaWR0aEFuZE1hcmdp
bik6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRy
eTo6aW5saW5lUmVwbGFjZWRXaWR0aEFuZE1hcmdpbik6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93UmVwbGFjZWRIb3Jpem9u
dGFsR2VvbWV0cnkpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4
dDo6R2VvbWV0cnk6Om91dE9mRmxvd05vblJlcGxhY2VkSG9yaXpvbnRhbEdlb21ldHJ5KToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpmbG9h
dGluZ1JlcGxhY2VkV2lkdGhBbmRNYXJnaW4pOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpG
b3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmZsb2F0aW5nTm9uUmVwbGFjZWRXaWR0aEFuZE1h
cmdpbik6CisgICAgICAgICogbGF5b3V0L0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmNv
bXB1dGVkVmFsdWVJZk5vdEF1dG8pOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0
aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd05vblJlcGxhY2VkSG9yaXpvbnRhbEdlb21l
dHJ5KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rm9ybWF0dGluZ0NvbnRleHQ6Okdlb21l
dHJ5OjpvdXRPZkZsb3dSZXBsYWNlZEhvcml6b250YWxHZW9tZXRyeSk6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6ZmxvYXRpbmdOb25SZXBs
YWNlZFdpZHRoQW5kTWFyZ2luKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rm9ybWF0dGlu
Z0NvbnRleHQ6Okdlb21ldHJ5OjpmbG9hdGluZ1JlcGxhY2VkV2lkdGhBbmRNYXJnaW4pOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9m
Rmxvd0hvcml6b250YWxHZW9tZXRyeSk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZvcm1h
dHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6ZmxvYXRpbmdXaWR0aEFuZE1hcmdpbik6CisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXQ6OkZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5saW5lUmVw
bGFjZWRXaWR0aEFuZE1hcmdpbik6CisgICAgICAgICogbGF5b3V0L2Jsb2NrZm9ybWF0dGluZy9C
bG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Qmxv
Y2tGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZVdpZHRoQW5kTWFyZ2luIGNvbnN0KToKKyAgICAg
ICAgKiBsYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6
OmluRmxvd1dpZHRoQW5kTWFyZ2luKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tG
b3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmluRmxvd05vblJlcGxhY2VkV2lkdGhBbmRNYXJn
aW4pOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpH
ZW9tZXRyeTo6aW5GbG93UmVwbGFjZWRXaWR0aEFuZE1hcmdpbik6CisgICAgICAgICogbGF5b3V0
L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5b3V0OjpCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6
aW5GbG93Tm9uUmVwbGFjZWRXaWR0aEFuZE1hcmdpbik6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbkZsb3dSZXBsYWNlZFdpZHRo
QW5kTWFyZ2luKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6QmxvY2tGb3JtYXR0aW5nQ29u
dGV4dDo6R2VvbWV0cnk6OmluRmxvd1dpZHRoQW5kTWFyZ2luKToKKwogMjAxOC0wOS0wNSAgWmFs
YW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdIEFkYXB0IHRvIHRo
ZSBuZXcgY29uc3QgV2Vha1B0cjw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
Rm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdD
b250ZXh0LmNwcAppbmRleCA5NTI5YjMxOWM3NWQ2MjAyNTZiZDI2ZGViNDc4MmYwYzQ0Y2VmYjVi
Li5iN2E3OGUyMjkzMTJkMTg2MGNlYzRkZmMzMGU1ZjI2MGRkZThjNTFkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTUzLDcgKzUzLDI0IEBAIEZv
cm1hdHRpbmdDb250ZXh0Ojp+Rm9ybWF0dGluZ0NvbnRleHQoKQogCiB2b2lkIEZvcm1hdHRpbmdD
b250ZXh0Ojpjb21wdXRlT3V0T2ZGbG93SG9yaXpvbnRhbEdlb21ldHJ5KExheW91dENvbnRleHQm
IGxheW91dENvbnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94KSBjb25zdAogewotICAgIGF1dG8g
aG9yaXpvbnRhbEdlb21ldHJ5ID0gR2VvbWV0cnk6Om91dE9mRmxvd0hvcml6b250YWxHZW9tZXRy
eShsYXlvdXRDb250ZXh0LCAqdGhpcywgbGF5b3V0Qm94KTsKKyAgICBhdXRvIGNvbXB1dGUgPSBb
Jl0oc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoKSB7CisgICAgICAg
IHJldHVybiBHZW9tZXRyeTo6b3V0T2ZGbG93SG9yaXpvbnRhbEdlb21ldHJ5KGxheW91dENvbnRl
eHQsICp0aGlzLCBsYXlvdXRCb3gsIHByZWNvbXB1dGVkV2lkdGgpOworICAgIH07CisKKyAgICBh
dXRvIGhvcml6b250YWxHZW9tZXRyeSA9IGNvbXB1dGUoeyB9KTsKKyAgICBhdXRvIGNvbnRhaW5p
bmdCbG9ja1dpZHRoID0gbGF5b3V0Q29udGV4dC5kaXNwbGF5Qm94Rm9yTGF5b3V0Qm94KCpsYXlv
dXRCb3guY29udGFpbmluZ0Jsb2NrKCkpLmNvbnRlbnRCb3hXaWR0aCgpOworCisgICAgaWYgKGF1
dG8gbWF4V2lkdGggPSBHZW9tZXRyeTo6Y29tcHV0ZWRWYWx1ZUlmTm90QXV0byhsYXlvdXRCb3gu
c3R5bGUoKS5sb2dpY2FsTWF4V2lkdGgoKSwgY29udGFpbmluZ0Jsb2NrV2lkdGgpKSB7CisgICAg
ICAgIGF1dG8gbWF4SG9yaXpvbnRhbEdlb21ldHJ5ID0gY29tcHV0ZShtYXhXaWR0aCk7CisgICAg
ICAgIGlmIChob3Jpem9udGFsR2VvbWV0cnkud2lkdGhBbmRNYXJnaW4ud2lkdGggPiBtYXhIb3Jp
em9udGFsR2VvbWV0cnkud2lkdGhBbmRNYXJnaW4ud2lkdGgpCisgICAgICAgICAgICBob3Jpem9u
dGFsR2VvbWV0cnkgPSBtYXhIb3Jpem9udGFsR2VvbWV0cnk7CisgICAgfQorCisgICAgaWYgKGF1
dG8gbWluV2lkdGggPSBHZW9tZXRyeTo6Y29tcHV0ZWRWYWx1ZUlmTm90QXV0byhsYXlvdXRCb3gu
c3R5bGUoKS5sb2dpY2FsTWluV2lkdGgoKSwgY29udGFpbmluZ0Jsb2NrV2lkdGgpKSB7CisgICAg
ICAgIGF1dG8gbWluSG9yaXpvbnRhbEdlb21ldHJ5ID0gY29tcHV0ZShtaW5XaWR0aCk7CisgICAg
ICAgIGlmIChob3Jpem9udGFsR2VvbWV0cnkud2lkdGhBbmRNYXJnaW4ud2lkdGggPCBtaW5Ib3Jp
em9udGFsR2VvbWV0cnkud2lkdGhBbmRNYXJnaW4ud2lkdGgpCisgICAgICAgICAgICBob3Jpem9u
dGFsR2VvbWV0cnkgPSBtaW5Ib3Jpem9udGFsR2VvbWV0cnk7CisgICAgfQogCiAgICAgYXV0byYg
ZGlzcGxheUJveCA9IGxheW91dENvbnRleHQuZGlzcGxheUJveEZvckxheW91dEJveChsYXlvdXRC
b3gpOwogICAgIGRpc3BsYXlCb3guc2V0TGVmdChob3Jpem9udGFsR2VvbWV0cnkubGVmdCArIGhv
cml6b250YWxHZW9tZXRyeS53aWR0aEFuZE1hcmdpbi5tYXJnaW4ubGVmdCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5oCmluZGV4IDAyOTI4MzBlOGEzYjA0ZWNlYjkw
YTBjN2NhZjU4NzQ0ZmIzM2I2ZDUuLjNiY2ZlZTgyNGZmZTAyYjQzNjgzMWRkMzMzNDc5ZTRiMzRj
NDMyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5nQ29udGV4dC5oCkBAIC04
MywxNCArODMsMTQgQEAgcHJvdGVjdGVkOgogICAgIGNsYXNzIEdlb21ldHJ5IHsKICAgICBwdWJs
aWM6CiAgICAgICAgIHN0YXRpYyBWZXJ0aWNhbEdlb21ldHJ5IG91dE9mRmxvd1ZlcnRpY2FsR2Vv
bWV0cnkoY29uc3QgTGF5b3V0Q29udGV4dCYsIGNvbnN0IEJveCYpOwotICAgICAgICBzdGF0aWMg
SG9yaXpvbnRhbEdlb21ldHJ5IG91dE9mRmxvd0hvcml6b250YWxHZW9tZXRyeShMYXlvdXRDb250
ZXh0JiwgY29uc3QgRm9ybWF0dGluZ0NvbnRleHQmLCBjb25zdCBCb3gmKTsKKyAgICAgICAgc3Rh
dGljIEhvcml6b250YWxHZW9tZXRyeSBvdXRPZkZsb3dIb3Jpem9udGFsR2VvbWV0cnkoTGF5b3V0
Q29udGV4dCYsIGNvbnN0IEZvcm1hdHRpbmdDb250ZXh0JiwgY29uc3QgQm94Jiwgc3RkOjpvcHRp
b25hbDxMYXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoID0geyB9KTsKIAogICAgICAgICBzdGF0
aWMgSGVpZ2h0QW5kTWFyZ2luIGZsb2F0aW5nSGVpZ2h0QW5kTWFyZ2luKGNvbnN0IExheW91dENv
bnRleHQmLCBjb25zdCBCb3gmKTsKLSAgICAgICAgc3RhdGljIFdpZHRoQW5kTWFyZ2luIGZsb2F0
aW5nV2lkdGhBbmRNYXJnaW4oTGF5b3V0Q29udGV4dCYsIGNvbnN0IEZvcm1hdHRpbmdDb250ZXh0
JiwgY29uc3QgQm94Jik7CisgICAgICAgIHN0YXRpYyBXaWR0aEFuZE1hcmdpbiBmbG9hdGluZ1dp
ZHRoQW5kTWFyZ2luKExheW91dENvbnRleHQmLCBjb25zdCBGb3JtYXR0aW5nQ29udGV4dCYsIGNv
bnN0IEJveCYsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJlY29tcHV0ZWRXaWR0aCA9IHsg
fSk7CiAKICAgICAgICAgc3RhdGljIEhlaWdodEFuZE1hcmdpbiBpbmxpbmVSZXBsYWNlZEhlaWdo
dEFuZE1hcmdpbihjb25zdCBMYXlvdXRDb250ZXh0JiwgY29uc3QgQm94Jik7Ci0gICAgICAgIHN0
YXRpYyBXaWR0aEFuZE1hcmdpbiBpbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKGNvbnN0IExh
eW91dENvbnRleHQmLCBjb25zdCBCb3gmLCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHByZWNv
bXB1dGVkTWFyZ2luTGVmdCA9IHsgfSwKLSAgICAgICAgICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0
VW5pdD4gcHJlY29tcHV0ZWRNYXJnaW5SaWdodCA9IHsgfSk7CisgICAgICAgIHN0YXRpYyBXaWR0
aEFuZE1hcmdpbiBpbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKGNvbnN0IExheW91dENvbnRl
eHQmLCBjb25zdCBCb3gmLCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHByZWNvbXB1dGVkV2lk
dGggPSB7IH0sIAorICAgICAgICAgICAgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBwcmVjb21w
dXRlZE1hcmdpbkxlZnQgPSB7IH0sIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJlY29tcHV0
ZWRNYXJnaW5SaWdodCA9IHsgfSk7CiAKICAgICAgICAgc3RhdGljIEhlaWdodEFuZE1hcmdpbiBj
b21wbGljYXRlZENhc2VzKGNvbnN0IExheW91dENvbnRleHQmLCBjb25zdCBCb3gmKTsKIApAQCAt
MTA1LDE1ICsxMDUsMTUgQEAgcHJvdGVjdGVkOgogCiAgICAgcHJpdmF0ZToKICAgICAgICAgc3Rh
dGljIFZlcnRpY2FsR2VvbWV0cnkgb3V0T2ZGbG93UmVwbGFjZWRWZXJ0aWNhbEdlb21ldHJ5KGNv
bnN0IExheW91dENvbnRleHQmLCBjb25zdCBCb3gmKTsKLSAgICAgICAgc3RhdGljIEhvcml6b250
YWxHZW9tZXRyeSBvdXRPZkZsb3dSZXBsYWNlZEhvcml6b250YWxHZW9tZXRyeShjb25zdCBMYXlv
dXRDb250ZXh0JiwgY29uc3QgQm94Jik7CisgICAgICAgIHN0YXRpYyBIb3Jpem9udGFsR2VvbWV0
cnkgb3V0T2ZGbG93UmVwbGFjZWRIb3Jpem9udGFsR2VvbWV0cnkoY29uc3QgTGF5b3V0Q29udGV4
dCYsIGNvbnN0IEJveCYsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJlY29tcHV0ZWRXaWR0
aCA9IHsgfSk7CiAKICAgICAgICAgc3RhdGljIFZlcnRpY2FsR2VvbWV0cnkgb3V0T2ZGbG93Tm9u
UmVwbGFjZWRWZXJ0aWNhbEdlb21ldHJ5KGNvbnN0IExheW91dENvbnRleHQmLCBjb25zdCBCb3gm
KTsKLSAgICAgICAgc3RhdGljIEhvcml6b250YWxHZW9tZXRyeSBvdXRPZkZsb3dOb25SZXBsYWNl
ZEhvcml6b250YWxHZW9tZXRyeShMYXlvdXRDb250ZXh0JiwgY29uc3QgRm9ybWF0dGluZ0NvbnRl
eHQmLCBjb25zdCBCb3gmKTsKKyAgICAgICAgc3RhdGljIEhvcml6b250YWxHZW9tZXRyeSBvdXRP
ZkZsb3dOb25SZXBsYWNlZEhvcml6b250YWxHZW9tZXRyeShMYXlvdXRDb250ZXh0JiwgY29uc3Qg
Rm9ybWF0dGluZ0NvbnRleHQmLCBjb25zdCBCb3gmLCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+
IHByZWNvbXB1dGVkV2lkdGggPSB7IH0pOwogCiAgICAgICAgIHN0YXRpYyBIZWlnaHRBbmRNYXJn
aW4gZmxvYXRpbmdSZXBsYWNlZEhlaWdodEFuZE1hcmdpbihjb25zdCBMYXlvdXRDb250ZXh0Jiwg
Y29uc3QgQm94Jik7Ci0gICAgICAgIHN0YXRpYyBXaWR0aEFuZE1hcmdpbiBmbG9hdGluZ1JlcGxh
Y2VkV2lkdGhBbmRNYXJnaW4oY29uc3QgTGF5b3V0Q29udGV4dCYsIGNvbnN0IEJveCYpOworICAg
ICAgICBzdGF0aWMgV2lkdGhBbmRNYXJnaW4gZmxvYXRpbmdSZXBsYWNlZFdpZHRoQW5kTWFyZ2lu
KGNvbnN0IExheW91dENvbnRleHQmLCBjb25zdCBCb3gmLCBzdGQ6Om9wdGlvbmFsPExheW91dFVu
aXQ+IHByZWNvbXB1dGVkV2lkdGggPSB7IH0pOwogCi0gICAgICAgIHN0YXRpYyBXaWR0aEFuZE1h
cmdpbiBmbG9hdGluZ05vblJlcGxhY2VkV2lkdGhBbmRNYXJnaW4oTGF5b3V0Q29udGV4dCYsIGNv
bnN0IEZvcm1hdHRpbmdDb250ZXh0JiwgY29uc3QgQm94Jik7CisgICAgICAgIHN0YXRpYyBXaWR0
aEFuZE1hcmdpbiBmbG9hdGluZ05vblJlcGxhY2VkV2lkdGhBbmRNYXJnaW4oTGF5b3V0Q29udGV4
dCYsIGNvbnN0IEZvcm1hdHRpbmdDb250ZXh0JiwgY29uc3QgQm94Jiwgc3RkOjpvcHRpb25hbDxM
YXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoID0geyB9KTsKIAogICAgICAgICBzdGF0aWMgTGF5
b3V0VW5pdCBzaHJpbmtUb0ZpdFdpZHRoKExheW91dENvbnRleHQmLCBjb25zdCBGb3JtYXR0aW5n
Q29udGV4dCYsIGNvbnN0IEJveCYpOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKaW5kZXggMmIwZGMxNDQ5NTk4MjZk
NTczZTA0YzFlNjUyNDZlYzA3ZTQ0NTBjNS4uNDVmZDVhZDE0YWVmNDQxOWZmZjA3NTcwZmMwZmMw
MWQ5MWFmNzFmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L0Zvcm1hdHRpbmdD
b250ZXh0R2VvbWV0cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9Gb3JtYXR0aW5n
Q29udGV4dEdlb21ldHJ5LmNwcApAQCAtNzcsNiArNzcsOSBAQCBzdGF0aWMgTGF5b3V0VW5pdCBj
b250ZW50SGVpZ2h0Rm9yRm9ybWF0dGluZ0NvbnRleHRSb290KGNvbnN0IExheW91dENvbnRleHQm
IGxheQogCiBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9t
ZXRyeTo6Y29tcHV0ZWRWYWx1ZUlmTm90QXV0byhjb25zdCBMZW5ndGgmIGdlb21ldHJ5UHJvcGVy
dHksIExheW91dFVuaXQgY29udGFpbmluZ0Jsb2NrV2lkdGgpCiB7CisgICAgaWYgKGdlb21ldHJ5
UHJvcGVydHkuaXNVbmRlZmluZWQoKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKwog
ICAgIGlmIChnZW9tZXRyeVByb3BlcnR5LmlzQXV0bygpKQogICAgICAgICByZXR1cm4gc3RkOjpu
dWxsb3B0OwogICAgIHJldHVybiB2YWx1ZUZvckxlbmd0aChnZW9tZXRyeVByb3BlcnR5LCBjb250
YWluaW5nQmxvY2tXaWR0aCk7CkBAIC0yNzQsNyArMjc3LDcgQEAgVmVydGljYWxHZW9tZXRyeSBG
b3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd05vblJlcGxhY2VkVmVydGljYWxH
ZW9tZXQKICAgICByZXR1cm4geyAqdG9wLCAqYm90dG9tLCB7ICpoZWlnaHQsIHsgKm1hcmdpblRv
cCwgKm1hcmdpbkJvdHRvbSB9LCB7IH0gfSB9OwogfQogCi1Ib3Jpem9udGFsR2VvbWV0cnkgRm9y
bWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dOb25SZXBsYWNlZEhvcml6b250YWxH
ZW9tZXRyeShMYXlvdXRDb250ZXh0JiBsYXlvdXRDb250ZXh0LCBjb25zdCBGb3JtYXR0aW5nQ29u
dGV4dCYgZm9ybWF0dGluZ0NvbnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94KQorSG9yaXpvbnRh
bEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93Tm9uUmVwbGFj
ZWRIb3Jpem9udGFsR2VvbWV0cnkoTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3Qg
Rm9ybWF0dGluZ0NvbnRleHQmIGZvcm1hdHRpbmdDb250ZXh0LCBjb25zdCBCb3gmIGxheW91dEJv
eCwgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoKQogewogICAgIEFT
U0VSVChsYXlvdXRCb3guaXNPdXRPZkZsb3dQb3NpdGlvbmVkKCkgJiYgIWxheW91dEJveC5yZXBs
YWNlZCgpKTsKICAgICAKQEAgLTMxMiw3ICszMTUsNyBAQCBIb3Jpem9udGFsR2VvbWV0cnkgRm9y
bWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dOb25SZXBsYWNlZEhvcml6b250YWxH
ZQogICAgIAogICAgIGF1dG8gbGVmdCA9IGNvbXB1dGVkVmFsdWVJZk5vdEF1dG8oc3R5bGUubG9n
aWNhbExlZnQoKSwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOwogICAgIGF1dG8gcmlnaHQgPSBjb21w
dXRlZFZhbHVlSWZOb3RBdXRvKHN0eWxlLmxvZ2ljYWxSaWdodCgpLCBjb250YWluaW5nQmxvY2tX
aWR0aCk7Ci0gICAgYXV0byB3aWR0aCA9IGNvbXB1dGVkVmFsdWVJZk5vdEF1dG8oc3R5bGUubG9n
aWNhbFdpZHRoKCksIGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKKyAgICBhdXRvIHdpZHRoID0gY29t
cHV0ZWRWYWx1ZUlmTm90QXV0byhwcmVjb21wdXRlZFdpZHRoID8gTGVuZ3RoIHsgcHJlY29tcHV0
ZWRXaWR0aC52YWx1ZSgpLCBGaXhlZCB9IDogc3R5bGUubG9naWNhbFdpZHRoKCksIGNvbnRhaW5p
bmdCbG9ja1dpZHRoKTsKICAgICBhdXRvIG1hcmdpbkxlZnQgPSBjb21wdXRlZFZhbHVlSWZOb3RB
dXRvKHN0eWxlLm1hcmdpbkxlZnQoKSwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOwogICAgIGF1dG8g
bWFyZ2luUmlnaHQgPSBjb21wdXRlZFZhbHVlSWZOb3RBdXRvKHN0eWxlLm1hcmdpblJpZ2h0KCks
IGNvbnRhaW5pbmdCbG9ja1dpZHRoKTsKICAgICBhdXRvIG5vbkNvbXB1dGVkTWFyZ2luTGVmdCA9
IG1hcmdpbkxlZnQudmFsdWVfb3IoMCk7CkBAIC00ODksNyArNDkyLDcgQEAgVmVydGljYWxHZW9t
ZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd1JlcGxhY2VkVmVydGlj
YWxHZW9tZXRyeSgKICAgICByZXR1cm4geyAqdG9wLCAqYm90dG9tLCB7IGhlaWdodCwgeyAqbWFy
Z2luVG9wLCAqbWFyZ2luQm90dG9tIH0sIHsgfSB9IH07CiB9CiAKLUhvcml6b250YWxHZW9tZXRy
eSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd1JlcGxhY2VkSG9yaXpvbnRh
bEdlb21ldHJ5KGNvbnN0IExheW91dENvbnRleHQmIGxheW91dENvbnRleHQsIGNvbnN0IEJveCYg
bGF5b3V0Qm94KQorSG9yaXpvbnRhbEdlb21ldHJ5IEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRy
eTo6b3V0T2ZGbG93UmVwbGFjZWRIb3Jpem9udGFsR2VvbWV0cnkoY29uc3QgTGF5b3V0Q29udGV4
dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgQm94JiBsYXlvdXRCb3gsIHN0ZDo6b3B0aW9uYWw8TGF5
b3V0VW5pdD4gcHJlY29tcHV0ZWRXaWR0aCkKIHsKICAgICBBU1NFUlQobGF5b3V0Qm94LmlzT3V0
T2ZGbG93UG9zaXRpb25lZCgpICYmIGxheW91dEJveC5yZXBsYWNlZCgpKTsKIApAQCAtNTE5LDcg
KzUyMiw3IEBAIEhvcml6b250YWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6
Om91dE9mRmxvd1JlcGxhY2VkSG9yaXpvbnRhbEdlb21lCiAgICAgYXV0byBtYXJnaW5SaWdodCA9
IGNvbXB1dGVkVmFsdWVJZk5vdEF1dG8oc3R5bGUubWFyZ2luUmlnaHQoKSwgY29udGFpbmluZ0Js
b2NrV2lkdGgpOwogICAgIGF1dG8gbm9uQ29tcHV0ZWRNYXJnaW5MZWZ0ID0gbWFyZ2luTGVmdC52
YWx1ZV9vcigwKTsKICAgICBhdXRvIG5vbkNvbXB1dGVkTWFyZ2luUmlnaHQgPSBtYXJnaW5SaWdo
dC52YWx1ZV9vcigwKTsKLSAgICBhdXRvIHdpZHRoID0gaW5saW5lUmVwbGFjZWRXaWR0aEFuZE1h
cmdpbihsYXlvdXRDb250ZXh0LCBsYXlvdXRCb3gpLndpZHRoOworICAgIGF1dG8gd2lkdGggPSBp
bmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKGxheW91dENvbnRleHQsIGxheW91dEJveCwgcHJl
Y29tcHV0ZWRXaWR0aCkud2lkdGg7CiAgICAgYXV0byBwYWRkaW5nTGVmdCA9IGRpc3BsYXlCb3gu
cGFkZGluZ0xlZnQoKS52YWx1ZV9vcigwKTsKICAgICBhdXRvIHBhZGRpbmdSaWdodCA9IGRpc3Bs
YXlCb3gucGFkZGluZ1JpZ2h0KCkudmFsdWVfb3IoMCk7CiAgICAgYXV0byBib3JkZXJMZWZ0ID0g
ZGlzcGxheUJveC5ib3JkZXJMZWZ0KCk7CkBAIC02MzAsNyArNjMzLDcgQEAgSGVpZ2h0QW5kTWFy
Z2luIEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6Y29tcGxpY2F0ZWRDYXNlcyhjb25zdCBM
YXlvdXRDb250ZXgKICAgICByZXR1cm4gSGVpZ2h0QW5kTWFyZ2luIHsgKmhlaWdodCwgeyAqbWFy
Z2luVG9wLCAqbWFyZ2luQm90dG9tIH0sIHsgfSB9OwogfQogCi1XaWR0aEFuZE1hcmdpbiBGb3Jt
YXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmZsb2F0aW5nTm9uUmVwbGFjZWRXaWR0aEFuZE1hcmdp
bihMYXlvdXRDb250ZXh0JiBsYXlvdXRDb250ZXh0LCBjb25zdCBGb3JtYXR0aW5nQ29udGV4dCYg
Zm9ybWF0dGluZ0NvbnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94KQorV2lkdGhBbmRNYXJnaW4g
Rm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpmbG9hdGluZ05vblJlcGxhY2VkV2lkdGhBbmRN
YXJnaW4oTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgRm9ybWF0dGluZ0NvbnRl
eHQmIGZvcm1hdHRpbmdDb250ZXh0LCBjb25zdCBCb3gmIGxheW91dEJveCwgc3RkOjpvcHRpb25h
bDxMYXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoKQogewogICAgIEFTU0VSVChsYXlvdXRCb3gu
aXNGbG9hdGluZ1Bvc2l0aW9uZWQoKSAmJiAhbGF5b3V0Qm94LnJlcGxhY2VkKCkpOwogCkBAIC02
NDQsOCArNjQ3LDggQEAgV2lkdGhBbmRNYXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5
OjpmbG9hdGluZ05vblJlcGxhY2VkV2lkdGhBbmRNYXJnaW4oTGEKIAogICAgIC8vICMxCiAgICAg
YXV0byBtYXJnaW4gPSBjb21wdXRlZE5vbkNvbGxhcHNlZEhvcml6b250YWxNYXJnaW5WYWx1ZShs
YXlvdXRDb250ZXh0LCBsYXlvdXRCb3gpOwotICAgICAgLy8gIzIKLSAgICBhdXRvIHdpZHRoID0g
Y29tcHV0ZWRWYWx1ZUlmTm90QXV0byhsYXlvdXRCb3guc3R5bGUoKS5sb2dpY2FsV2lkdGgoKSwg
Y29udGFpbmluZ0Jsb2NrV2lkdGgpOworICAgIC8vICMyCisgICAgYXV0byB3aWR0aCA9IGNvbXB1
dGVkVmFsdWVJZk5vdEF1dG8ocHJlY29tcHV0ZWRXaWR0aCA/IExlbmd0aCB7IHByZWNvbXB1dGVk
V2lkdGgudmFsdWUoKSwgRml4ZWQgfSA6IGxheW91dEJveC5zdHlsZSgpLmxvZ2ljYWxXaWR0aCgp
LCBjb250YWluaW5nQmxvY2tXaWR0aCk7CiAgICAgaWYgKCF3aWR0aCkKICAgICAgICAgd2lkdGgg
PSBzaHJpbmtUb0ZpdFdpZHRoKGxheW91dENvbnRleHQsIGZvcm1hdHRpbmdDb250ZXh0LCBsYXlv
dXRCb3gpOwogCkBAIC02NjMsNyArNjY2LDcgQEAgSGVpZ2h0QW5kTWFyZ2luIEZvcm1hdHRpbmdD
b250ZXh0OjpHZW9tZXRyeTo6ZmxvYXRpbmdSZXBsYWNlZEhlaWdodEFuZE1hcmdpbihjb24KICAg
ICByZXR1cm4gaW5saW5lUmVwbGFjZWRIZWlnaHRBbmRNYXJnaW4obGF5b3V0Q29udGV4dCwgbGF5
b3V0Qm94KTsKIH0KIAotV2lkdGhBbmRNYXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5
OjpmbG9hdGluZ1JlcGxhY2VkV2lkdGhBbmRNYXJnaW4oY29uc3QgTGF5b3V0Q29udGV4dCYgbGF5
b3V0Q29udGV4dCwgY29uc3QgQm94JiBsYXlvdXRCb3gpCitXaWR0aEFuZE1hcmdpbiBGb3JtYXR0
aW5nQ29udGV4dDo6R2VvbWV0cnk6OmZsb2F0aW5nUmVwbGFjZWRXaWR0aEFuZE1hcmdpbihjb25z
dCBMYXlvdXRDb250ZXh0JiBsYXlvdXRDb250ZXh0LCBjb25zdCBCb3gmIGxheW91dEJveCwgc3Rk
OjpvcHRpb25hbDxMYXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoKQogewogICAgIEFTU0VSVChs
YXlvdXRCb3guaXNGbG9hdGluZ1Bvc2l0aW9uZWQoKSAmJiBsYXlvdXRCb3gucmVwbGFjZWQoKSk7
CiAKQEAgLTY3NCw3ICs2NzcsNyBAQCBXaWR0aEFuZE1hcmdpbiBGb3JtYXR0aW5nQ29udGV4dDo6
R2VvbWV0cnk6OmZsb2F0aW5nUmVwbGFjZWRXaWR0aEFuZE1hcmdpbihjb25zdAogICAgIGF1dG8g
bWFyZ2luID0gY29tcHV0ZWROb25Db2xsYXBzZWRIb3Jpem9udGFsTWFyZ2luVmFsdWUobGF5b3V0
Q29udGV4dCwgbGF5b3V0Qm94KTsKIAogICAgIExPR19XSVRIX1NUUkVBTShGb3JtYXR0aW5nQ29u
dGV4dExheW91dCwgc3RyZWFtIDw8ICJbSGVpZ2h0XVtNYXJnaW5dIC0+IGZsb2F0aW5nIHJlcGxh
Y2VkIC0+IHJlZGlyZWN0ZWQgdG8gaW5saW5lIHJlcGxhY2VkIik7Ci0gICAgcmV0dXJuIGlubGlu
ZVJlcGxhY2VkV2lkdGhBbmRNYXJnaW4obGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94LCBtYXJnaW4u
bGVmdCwgbWFyZ2luLnJpZ2h0KTsKKyAgICByZXR1cm4gaW5saW5lUmVwbGFjZWRXaWR0aEFuZE1h
cmdpbihsYXlvdXRDb250ZXh0LCBsYXlvdXRCb3gsIHByZWNvbXB1dGVkV2lkdGgsIG1hcmdpbi5s
ZWZ0LCBtYXJnaW4ucmlnaHQpOwogfQogCiBWZXJ0aWNhbEdlb21ldHJ5IEZvcm1hdHRpbmdDb250
ZXh0OjpHZW9tZXRyeTo6b3V0T2ZGbG93VmVydGljYWxHZW9tZXRyeShjb25zdCBMYXlvdXRDb250
ZXh0JiBsYXlvdXRDb250ZXh0LCBjb25zdCBCb3gmIGxheW91dEJveCkKQEAgLTY4NiwxMyArNjg5
LDEzIEBAIFZlcnRpY2FsR2VvbWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRP
ZkZsb3dWZXJ0aWNhbEdlb21ldHJ5KGNvbnN0IExhCiAgICAgcmV0dXJuIG91dE9mRmxvd1JlcGxh
Y2VkVmVydGljYWxHZW9tZXRyeShsYXlvdXRDb250ZXh0LCBsYXlvdXRCb3gpOwogfQogCi1Ib3Jp
em9udGFsR2VvbWV0cnkgRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpvdXRPZkZsb3dIb3Jp
em9udGFsR2VvbWV0cnkoTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgRm9ybWF0
dGluZ0NvbnRleHQmIGZvcm1hdHRpbmdDb250ZXh0LCBjb25zdCBCb3gmIGxheW91dEJveCkKK0hv
cml6b250YWxHZW9tZXRyeSBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6Om91dE9mRmxvd0hv
cml6b250YWxHZW9tZXRyeShMYXlvdXRDb250ZXh0JiBsYXlvdXRDb250ZXh0LCBjb25zdCBGb3Jt
YXR0aW5nQ29udGV4dCYgZm9ybWF0dGluZ0NvbnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94LCBz
dGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHByZWNvbXB1dGVkV2lkdGgpCiB7CiAgICAgQVNTRVJU
KGxheW91dEJveC5pc091dE9mRmxvd1Bvc2l0aW9uZWQoKSk7CiAKICAgICBpZiAoIWxheW91dEJv
eC5yZXBsYWNlZCgpKQotICAgICAgICByZXR1cm4gb3V0T2ZGbG93Tm9uUmVwbGFjZWRIb3Jpem9u
dGFsR2VvbWV0cnkobGF5b3V0Q29udGV4dCwgZm9ybWF0dGluZ0NvbnRleHQsIGxheW91dEJveCk7
Ci0gICAgcmV0dXJuIG91dE9mRmxvd1JlcGxhY2VkSG9yaXpvbnRhbEdlb21ldHJ5KGxheW91dENv
bnRleHQsIGxheW91dEJveCk7CisgICAgICAgIHJldHVybiBvdXRPZkZsb3dOb25SZXBsYWNlZEhv
cml6b250YWxHZW9tZXRyeShsYXlvdXRDb250ZXh0LCBmb3JtYXR0aW5nQ29udGV4dCwgbGF5b3V0
Qm94LCBwcmVjb21wdXRlZFdpZHRoKTsKKyAgICByZXR1cm4gb3V0T2ZGbG93UmVwbGFjZWRIb3Jp
em9udGFsR2VvbWV0cnkobGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94LCBwcmVjb21wdXRlZFdpZHRo
KTsKIH0KIAogSGVpZ2h0QW5kTWFyZ2luIEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6Zmxv
YXRpbmdIZWlnaHRBbmRNYXJnaW4oY29uc3QgTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwg
Y29uc3QgQm94JiBsYXlvdXRCb3gpCkBAIC03MDQsMTMgKzcwNywxMyBAQCBIZWlnaHRBbmRNYXJn
aW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjpmbG9hdGluZ0hlaWdodEFuZE1hcmdpbihj
b25zdCBMYXlvdQogICAgIHJldHVybiBmbG9hdGluZ1JlcGxhY2VkSGVpZ2h0QW5kTWFyZ2luKGxh
eW91dENvbnRleHQsIGxheW91dEJveCk7CiB9CiAKLVdpZHRoQW5kTWFyZ2luIEZvcm1hdHRpbmdD
b250ZXh0OjpHZW9tZXRyeTo6ZmxvYXRpbmdXaWR0aEFuZE1hcmdpbihMYXlvdXRDb250ZXh0JiBs
YXlvdXRDb250ZXh0LCBjb25zdCBGb3JtYXR0aW5nQ29udGV4dCYgZm9ybWF0dGluZ0NvbnRleHQs
IGNvbnN0IEJveCYgbGF5b3V0Qm94KQorV2lkdGhBbmRNYXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6
Okdlb21ldHJ5OjpmbG9hdGluZ1dpZHRoQW5kTWFyZ2luKExheW91dENvbnRleHQmIGxheW91dENv
bnRleHQsIGNvbnN0IEZvcm1hdHRpbmdDb250ZXh0JiBmb3JtYXR0aW5nQ29udGV4dCwgY29uc3Qg
Qm94JiBsYXlvdXRCb3gsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJlY29tcHV0ZWRXaWR0
aCkKIHsKICAgICBBU1NFUlQobGF5b3V0Qm94LmlzRmxvYXRpbmdQb3NpdGlvbmVkKCkpOwogCiAg
ICAgaWYgKCFsYXlvdXRCb3gucmVwbGFjZWQoKSkKLSAgICAgICAgcmV0dXJuIGZsb2F0aW5nTm9u
UmVwbGFjZWRXaWR0aEFuZE1hcmdpbihsYXlvdXRDb250ZXh0LCBmb3JtYXR0aW5nQ29udGV4dCwg
bGF5b3V0Qm94KTsKLSAgICByZXR1cm4gZmxvYXRpbmdSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKGxh
eW91dENvbnRleHQsIGxheW91dEJveCk7CisgICAgICAgIHJldHVybiBmbG9hdGluZ05vblJlcGxh
Y2VkV2lkdGhBbmRNYXJnaW4obGF5b3V0Q29udGV4dCwgZm9ybWF0dGluZ0NvbnRleHQsIGxheW91
dEJveCwgcHJlY29tcHV0ZWRXaWR0aCk7CisgICAgcmV0dXJuIGZsb2F0aW5nUmVwbGFjZWRXaWR0
aEFuZE1hcmdpbihsYXlvdXRDb250ZXh0LCBsYXlvdXRCb3gsIHByZWNvbXB1dGVkV2lkdGgpOwog
fQogCiBIZWlnaHRBbmRNYXJnaW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVS
ZXBsYWNlZEhlaWdodEFuZE1hcmdpbihjb25zdCBMYXlvdXRDb250ZXh0JiBsYXlvdXRDb250ZXh0
LCBjb25zdCBCb3gmIGxheW91dEJveCkKQEAgLTc2Myw3ICs3NjYsNyBAQCBIZWlnaHRBbmRNYXJn
aW4gRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbmxpbmVSZXBsYWNlZEhlaWdodEFuZE1h
cmdpbihjb25zdAogfQogCiBXaWR0aEFuZE1hcmdpbiBGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0
cnk6OmlubGluZVJlcGxhY2VkV2lkdGhBbmRNYXJnaW4oY29uc3QgTGF5b3V0Q29udGV4dCYgbGF5
b3V0Q29udGV4dCwgY29uc3QgQm94JiBsYXlvdXRCb3gsCi0gICAgc3RkOjpvcHRpb25hbDxMYXlv
dXRVbml0PiBwcmVjb21wdXRlZE1hcmdpbkxlZnQsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4g
cHJlY29tcHV0ZWRNYXJnaW5SaWdodCkKKyAgICBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHBy
ZWNvbXB1dGVkV2lkdGgsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJlY29tcHV0ZWRNYXJn
aW5MZWZ0LCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHByZWNvbXB1dGVkTWFyZ2luUmlnaHQp
CiB7CiAgICAgQVNTRVJUKChsYXlvdXRCb3guaXNPdXRPZkZsb3dQb3NpdGlvbmVkKCkgfHwgbGF5
b3V0Qm94LmlzRmxvYXRpbmdQb3NpdGlvbmVkKCkgfHwgbGF5b3V0Qm94LmlzSW5GbG93KCkpICYm
IGxheW91dEJveC5yZXBsYWNlZCgpKTsKIApAQCAtODExLDcgKzgxNCw3IEBAIFdpZHRoQW5kTWFy
Z2luIEZvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5saW5lUmVwbGFjZWRXaWR0aEFuZE1h
cmdpbihjb25zdCBMCiAgICAgYXV0byBtYXJnaW5SaWdodCA9IGNvbXB1dGVNYXJnaW5SaWdodCgp
OwogICAgIGF1dG8gbm9uQ29tcHV0ZWRNYXJnaW5MZWZ0ID0gY29tcHV0ZWRWYWx1ZUlmTm90QXV0
byhzdHlsZS5tYXJnaW5MZWZ0KCksIGNvbnRhaW5pbmdCbG9ja1dpZHRoKS52YWx1ZV9vcigwKTsK
ICAgICBhdXRvIG5vbkNvbXB1dGVkTWFyZ2luUmlnaHQgPSBjb21wdXRlZFZhbHVlSWZOb3RBdXRv
KHN0eWxlLm1hcmdpblJpZ2h0KCksIGNvbnRhaW5pbmdCbG9ja1dpZHRoKS52YWx1ZV9vcigwKTsK
LSAgICBhdXRvIHdpZHRoID0gY29tcHV0ZWRWYWx1ZUlmTm90QXV0byhzdHlsZS5sb2dpY2FsV2lk
dGgoKSwgY29udGFpbmluZ0Jsb2NrV2lkdGgpOworICAgIGF1dG8gd2lkdGggPSBjb21wdXRlZFZh
bHVlSWZOb3RBdXRvKHByZWNvbXB1dGVkV2lkdGggPyBMZW5ndGggeyBwcmVjb21wdXRlZFdpZHRo
LnZhbHVlKCksIEZpeGVkIH0gOiBzdHlsZS5sb2dpY2FsV2lkdGgoKSwgY29udGFpbmluZ0Jsb2Nr
V2lkdGgpOwogCiAgICAgYXV0byBoZWlnaHRJc0F1dG8gPSBzdHlsZS5sb2dpY2FsSGVpZ2h0KCku
aXNBdXRvKCk7CiAgICAgYXV0byBoZWlnaHQgPSBmaXhlZFZhbHVlKHN0eWxlLmxvZ2ljYWxIZWln
aHQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5n
L0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Jsb2Nr
Zm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcAppbmRleCA5ZjBiZDU4NTdjZTVi
NzMyMTM3YTdhNmVmMjlmN2FhMDAwZjBhMmJlLi44ODE3NjdiYzI0NDQ1ZWFiYzMxNjQ2N2M3MTk3
ZDIxY2UxZDMyMGZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3Jt
YXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTI0Miwx
NCArMjQyLDMyIEBAIHZvaWQgQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUluRmxvd1Bv
c2l0aW9uZWRQb3NpdGlvbihjb25zdCBMYXlvdXRDb250ZXh0CiAKIHZvaWQgQmxvY2tGb3JtYXR0
aW5nQ29udGV4dDo6Y29tcHV0ZVdpZHRoQW5kTWFyZ2luKExheW91dENvbnRleHQmIGxheW91dENv
bnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94KSBjb25zdAogewotICAgIFdpZHRoQW5kTWFyZ2lu
IHdpZHRoQW5kTWFyZ2luOwotCi0gICAgaWYgKGxheW91dEJveC5pc0luRmxvdygpKQotICAgICAg
ICB3aWR0aEFuZE1hcmdpbiA9IEdlb21ldHJ5OjppbkZsb3dXaWR0aEFuZE1hcmdpbihsYXlvdXRD
b250ZXh0LCBsYXlvdXRCb3gpOwotICAgIGVsc2UgaWYgKGxheW91dEJveC5pc0Zsb2F0aW5nUG9z
aXRpb25lZCgpKQotICAgICAgICB3aWR0aEFuZE1hcmdpbiA9IEdlb21ldHJ5OjpmbG9hdGluZ1dp
ZHRoQW5kTWFyZ2luKGxheW91dENvbnRleHQsICp0aGlzLCBsYXlvdXRCb3gpOwotICAgIGVsc2UK
KyAgICBhdXRvIGNvbXB1dGUgPSBbJl0oc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBwcmVjb21w
dXRlZFdpZHRoKSAtPiBXaWR0aEFuZE1hcmdpbiB7CisKKyAgICAgICAgaWYgKGxheW91dEJveC5p
c0luRmxvdygpKQorICAgICAgICAgICAgcmV0dXJuIEdlb21ldHJ5OjppbkZsb3dXaWR0aEFuZE1h
cmdpbihsYXlvdXRDb250ZXh0LCBsYXlvdXRCb3gsIHByZWNvbXB1dGVkV2lkdGgpOworICAgICAg
ICAKKyAgICAgICAgaWYgKGxheW91dEJveC5pc0Zsb2F0aW5nUG9zaXRpb25lZCgpKQorICAgICAg
ICAgICAgcmV0dXJuIEdlb21ldHJ5OjpmbG9hdGluZ1dpZHRoQW5kTWFyZ2luKGxheW91dENvbnRl
eHQsICp0aGlzLCBsYXlvdXRCb3gsIHByZWNvbXB1dGVkV2lkdGgpOworICAgICAgICAKICAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiB7IH07CisgICAgfTsKKwor
ICAgIGF1dG8gd2lkdGhBbmRNYXJnaW4gPSBjb21wdXRlKHsgfSk7CisgICAgYXV0byBjb250YWlu
aW5nQmxvY2tXaWR0aCA9IGxheW91dENvbnRleHQuZGlzcGxheUJveEZvckxheW91dEJveCgqbGF5
b3V0Qm94LmNvbnRhaW5pbmdCbG9jaygpKS5jb250ZW50Qm94V2lkdGgoKTsKKworICAgIGlmIChh
dXRvIG1heFdpZHRoID0gR2VvbWV0cnk6OmNvbXB1dGVkVmFsdWVJZk5vdEF1dG8obGF5b3V0Qm94
LnN0eWxlKCkubG9naWNhbE1heFdpZHRoKCksIGNvbnRhaW5pbmdCbG9ja1dpZHRoKSkgeworICAg
ICAgICBhdXRvIG1heFdpZHRoQW5kTWFyZ2luID0gY29tcHV0ZShtYXhXaWR0aCk7CisgICAgICAg
IGlmICh3aWR0aEFuZE1hcmdpbi53aWR0aCA+IG1heFdpZHRoQW5kTWFyZ2luLndpZHRoKQorICAg
ICAgICAgICAgd2lkdGhBbmRNYXJnaW4gPSBtYXhXaWR0aEFuZE1hcmdpbjsKKyAgICB9CisKKyAg
ICBpZiAoYXV0byBtaW5XaWR0aCA9IEdlb21ldHJ5Ojpjb21wdXRlZFZhbHVlSWZOb3RBdXRvKGxh
eW91dEJveC5zdHlsZSgpLmxvZ2ljYWxNaW5XaWR0aCgpLCBjb250YWluaW5nQmxvY2tXaWR0aCkp
IHsKKyAgICAgICAgYXV0byBtaW5XaWR0aEFuZE1hcmdpbiA9IGNvbXB1dGUobWluV2lkdGgpOyAK
KyAgICAgICAgaWYgKHdpZHRoQW5kTWFyZ2luLndpZHRoIDwgbWluV2lkdGhBbmRNYXJnaW4ud2lk
dGgpCisgICAgICAgICAgICB3aWR0aEFuZE1hcmdpbiA9IG1pbldpZHRoQW5kTWFyZ2luOworICAg
IH0KIAogICAgIGF1dG8mIGRpc3BsYXlCb3ggPSBsYXlvdXRDb250ZXh0LmRpc3BsYXlCb3hGb3JM
YXlvdXRCb3gobGF5b3V0Qm94KTsKICAgICBkaXNwbGF5Qm94LnNldENvbnRlbnRCb3hXaWR0aCh3
aWR0aEFuZE1hcmdpbi53aWR0aCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
YmxvY2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5oCmluZGV4IDdk
Mjc3M2E0NWNlNGU5ZGI3ZmJjMGFiZWQ2NjQxNDA4MjNmZjE5MTIuLjlmM2I2MDAyMjUxZjJmMWM4
N2QwNGQxZDczZDkyNmI4NDVhMzRjNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5oCkBA
IC03MCw3ICs3MCw3IEBAIHByaXZhdGU6CiAgICAgY2xhc3MgR2VvbWV0cnkgOiBwdWJsaWMgRm9y
bWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5IHsKICAgICBwdWJsaWM6CiAgICAgICAgIHN0YXRpYyBI
ZWlnaHRBbmRNYXJnaW4gaW5GbG93SGVpZ2h0QW5kTWFyZ2luKGNvbnN0IExheW91dENvbnRleHQm
LCBjb25zdCBCb3gmKTsKLSAgICAgICAgc3RhdGljIFdpZHRoQW5kTWFyZ2luIGluRmxvd1dpZHRo
QW5kTWFyZ2luKGNvbnN0IExheW91dENvbnRleHQmLCBjb25zdCBCb3gmKTsKKyAgICAgICAgc3Rh
dGljIFdpZHRoQW5kTWFyZ2luIGluRmxvd1dpZHRoQW5kTWFyZ2luKGNvbnN0IExheW91dENvbnRl
eHQmLCBjb25zdCBCb3gmLCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHByZWNvbXB1dGVkV2lk
dGggPSB7IH0pOwogCiAgICAgICAgIHN0YXRpYyBQb3NpdGlvbiBzdGF0aWNQb3NpdGlvbihjb25z
dCBMYXlvdXRDb250ZXh0JiwgY29uc3QgQm94Jik7CiAgICAgICAgIHN0YXRpYyBQb3NpdGlvbiBp
bkZsb3dQb3NpdGlvbmVkUG9zaXRpb24oY29uc3QgTGF5b3V0Q29udGV4dCYsIGNvbnN0IEJveCYp
OwpAQCAtMTAyLDggKzEwMiw4IEBAIHByaXZhdGU6CiAgICAgICAgIH07CiAKICAgICAgICAgc3Rh
dGljIEhlaWdodEFuZE1hcmdpbiBpbkZsb3dOb25SZXBsYWNlZEhlaWdodEFuZE1hcmdpbihjb25z
dCBMYXlvdXRDb250ZXh0JiwgY29uc3QgQm94Jik7Ci0gICAgICAgIHN0YXRpYyBXaWR0aEFuZE1h
cmdpbiBpbkZsb3dOb25SZXBsYWNlZFdpZHRoQW5kTWFyZ2luKGNvbnN0IExheW91dENvbnRleHQm
LCBjb25zdCBCb3gmLCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHByZWNvbXB1dGVkV2lkdGgg
PSBzdGQ6Om51bGxvcHQpOwotICAgICAgICBzdGF0aWMgV2lkdGhBbmRNYXJnaW4gaW5GbG93UmVw
bGFjZWRXaWR0aEFuZE1hcmdpbihjb25zdCBMYXlvdXRDb250ZXh0JiwgY29uc3QgQm94Jik7Cisg
ICAgICAgIHN0YXRpYyBXaWR0aEFuZE1hcmdpbiBpbkZsb3dOb25SZXBsYWNlZFdpZHRoQW5kTWFy
Z2luKGNvbnN0IExheW91dENvbnRleHQmLCBjb25zdCBCb3gmLCBzdGQ6Om9wdGlvbmFsPExheW91
dFVuaXQ+IHByZWNvbXB1dGVkV2lkdGggPSB7IH0pOworICAgICAgICBzdGF0aWMgV2lkdGhBbmRN
YXJnaW4gaW5GbG93UmVwbGFjZWRXaWR0aEFuZE1hcmdpbihjb25zdCBMYXlvdXRDb250ZXh0Jiwg
Y29uc3QgQm94Jiwgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoID0g
eyB9KTsKICAgICAgICAgc3RhdGljIFBvc2l0aW9uIHN0YXRpY1Bvc2l0aW9uRm9yT3V0T2ZGbG93
UG9zaXRpb25lZChjb25zdCBMYXlvdXRDb250ZXh0JiwgY29uc3QgQm94Jik7CiAgICAgfTsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxvY2tmb3JtYXR0aW5nL0Jsb2Nr
Rm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvYmxv
Y2tmb3JtYXR0aW5nL0Jsb2NrRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKaW5kZXggYWUz
NmQxY2M4ODkwMmE1ZmJlYzlhNjNhYjRjYTVmYmI3MzkzN2UyNS4uMDcyZTU5MDY0OWNmYjFjOGQ1
YzNhNDIzNmI2YzMzNDVmN2M1NzI5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2Jsb2NrZm9ybWF0dGluZy9CbG9ja0Zvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9ibG9ja2Zvcm1hdHRpbmcvQmxvY2tGb3JtYXR0aW5nQ29u
dGV4dEdlb21ldHJ5LmNwcApAQCAtMTUxLDggKzE1MSw3IEBAIEhlaWdodEFuZE1hcmdpbiBCbG9j
a0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5GbG93Tm9uUmVwbGFjZWRIZWlnaHRBbmRN
YXJnCiAgICAgcmV0dXJuIGhlaWdodEFuZE1hcmdpbjsKIH0KIAotV2lkdGhBbmRNYXJnaW4gQmxv
Y2tGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmluRmxvd05vblJlcGxhY2VkV2lkdGhBbmRN
YXJnaW4oY29uc3QgTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4dCwgY29uc3QgQm94JiBsYXlv
dXRCb3gsCi0gICAgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBwcmVjb21wdXRlZFdpZHRoKQor
V2lkdGhBbmRNYXJnaW4gQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmluRmxvd05v
blJlcGxhY2VkV2lkdGhBbmRNYXJnaW4oY29uc3QgTGF5b3V0Q29udGV4dCYgbGF5b3V0Q29udGV4
dCwgY29uc3QgQm94JiBsYXlvdXRCb3gsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJlY29t
cHV0ZWRXaWR0aCkKIHsKICAgICBBU1NFUlQobGF5b3V0Qm94LmlzSW5GbG93KCkgJiYgIWxheW91
dEJveC5yZXBsYWNlZCgpKTsKIApAQCAtMjUyLDcgKzI1MSw3IEBAIFdpZHRoQW5kTWFyZ2luIEJs
b2NrRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbkZsb3dOb25SZXBsYWNlZFdpZHRoQW5k
TWFyZ2luCiAgICAgcmV0dXJuIHdpZHRoQW5kTWFyZ2luOwogfQogCi1XaWR0aEFuZE1hcmdpbiBC
bG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5GbG93UmVwbGFjZWRXaWR0aEFuZE1h
cmdpbihjb25zdCBMYXlvdXRDb250ZXh0JiBsYXlvdXRDb250ZXh0LCBjb25zdCBCb3gmIGxheW91
dEJveCkKK1dpZHRoQW5kTWFyZ2luIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5Ojpp
bkZsb3dSZXBsYWNlZFdpZHRoQW5kTWFyZ2luKGNvbnN0IExheW91dENvbnRleHQmIGxheW91dENv
bnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94LCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHBy
ZWNvbXB1dGVkV2lkdGgpCiB7CiAgICAgQVNTRVJUKGxheW91dEJveC5pc0luRmxvdygpICYmIGxh
eW91dEJveC5yZXBsYWNlZCgpKTsKIApAQCAtMjYyLDcgKzI2MSw3IEBAIFdpZHRoQW5kTWFyZ2lu
IEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbkZsb3dSZXBsYWNlZFdpZHRoQW5k
TWFyZ2luKGNvCiAgICAgLy8gMi4gVGhlbiB0aGUgcnVsZXMgZm9yIG5vbi1yZXBsYWNlZCBibG9j
ay1sZXZlbCBlbGVtZW50cyBhcmUgYXBwbGllZCB0byBkZXRlcm1pbmUgdGhlIG1hcmdpbnMuCiAK
ICAgICAvLyAjMQotICAgIGF1dG8gd2lkdGggPSBpbmxpbmVSZXBsYWNlZFdpZHRoQW5kTWFyZ2lu
KGxheW91dENvbnRleHQsIGxheW91dEJveCkud2lkdGg7CisgICAgYXV0byB3aWR0aCA9IGlubGlu
ZVJlcGxhY2VkV2lkdGhBbmRNYXJnaW4obGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94LCBwcmVjb21w
dXRlZFdpZHRoKS53aWR0aDsKICAgICAvLyAjMgogICAgIGF1dG8gbm9uUmVwbGFjZWRXaWR0aEFu
ZE1hcmdpbiA9IGluRmxvd05vblJlcGxhY2VkV2lkdGhBbmRNYXJnaW4obGF5b3V0Q29udGV4dCwg
bGF5b3V0Qm94LCB3aWR0aCk7CiAKQEAgLTM5NywxMyArMzk2LDEzIEBAIEhlaWdodEFuZE1hcmdp
biBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0OjpHZW9tZXRyeTo6aW5GbG93SGVpZ2h0QW5kTWFyZ2lu
KGNvbnN0IExhCiAgICAgcmV0dXJuIGhlaWdodEFuZE1hcmdpbjsKIH0KIAotV2lkdGhBbmRNYXJn
aW4gQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmluRmxvd1dpZHRoQW5kTWFyZ2lu
KGNvbnN0IExheW91dENvbnRleHQmIGxheW91dENvbnRleHQsIGNvbnN0IEJveCYgbGF5b3V0Qm94
KQorV2lkdGhBbmRNYXJnaW4gQmxvY2tGb3JtYXR0aW5nQ29udGV4dDo6R2VvbWV0cnk6OmluRmxv
d1dpZHRoQW5kTWFyZ2luKGNvbnN0IExheW91dENvbnRleHQmIGxheW91dENvbnRleHQsIGNvbnN0
IEJveCYgbGF5b3V0Qm94LCBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IHByZWNvbXB1dGVkV2lk
dGgpCiB7CiAgICAgQVNTRVJUKGxheW91dEJveC5pc0luRmxvdygpKTsKIAogICAgIGlmICghbGF5
b3V0Qm94LnJlcGxhY2VkKCkpCi0gICAgICAgIHJldHVybiBpbkZsb3dOb25SZXBsYWNlZFdpZHRo
QW5kTWFyZ2luKGxheW91dENvbnRleHQsIGxheW91dEJveCk7Ci0gICAgcmV0dXJuIGluRmxvd1Jl
cGxhY2VkV2lkdGhBbmRNYXJnaW4obGF5b3V0Q29udGV4dCwgbGF5b3V0Qm94KTsKKyAgICAgICAg
cmV0dXJuIGluRmxvd05vblJlcGxhY2VkV2lkdGhBbmRNYXJnaW4obGF5b3V0Q29udGV4dCwgbGF5
b3V0Qm94LCBwcmVjb21wdXRlZFdpZHRoKTsKKyAgICByZXR1cm4gaW5GbG93UmVwbGFjZWRXaWR0
aEFuZE1hcmdpbihsYXlvdXRDb250ZXh0LCBsYXlvdXRCb3gsIHByZWNvbXB1dGVkV2lkdGgpOwog
fQogCiBib29sIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6Okdlb21ldHJ5OjppbnN0cmluc2ljV2lk
dGhDb25zdHJhaW50c05lZWRDaGlsZHJlbldpZHRoKGNvbnN0IEJveCYgbGF5b3V0Qm94KQpkaWZm
IC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDM4NjJlMWY1
NDdkNjNjOGFjZDg5OTJhMzJhY2JhZjhiZjYxMzU3ZTguLjgzMjQ3ZGM5YmUyNTUwNzUyN2VjNGMx
YzBmNDMyM2I3NDBiYWYzYTYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29s
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxOC0wOS0wNiAgWmFsYW4gQnVqdGFzICA8
emFsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtMRkNdW0JGQ10gQWRkIHN1cHBvcnQgZm9yIG1p
bihtYXgpLXdpZHRoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODkzNTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIExheW91dFJlbG9hZGVkL21pc2MvTEZDLXBhc3NpbmctdGVzdHMudHh0OgorCiAyMDE4
LTA5LTA2ICBYYW4gTG9wZXogIDx4YW5AaWdhbGlhLmNvbT4KIAogICAgICAgICBbdGVzdDI2Ml0g
RG8gbm90IGNhbGwga2V5cyBvbiBhIHJlZmVyZW5jZQpkaWZmIC0tZ2l0IGEvVG9vbHMvTGF5b3V0
UmVsb2FkZWQvbWlzYy9MRkMtcGFzc2luZy10ZXN0cy50eHQgYi9Ub29scy9MYXlvdXRSZWxvYWRl
ZC9taXNjL0xGQy1wYXNzaW5nLXRlc3RzLnR4dAppbmRleCA2NDBlZjQ0NmVhZDE5NjUxOTg2Y2Fi
MDZmM2UwMDgzZTFiMGU3N2IwLi5mZjBlNjNjZWNhY2MyMTIxNmQ5NTk2OWE5ZmZmNzI5NzAyOTlk
ODQwIDEwMDY0NAotLS0gYS9Ub29scy9MYXlvdXRSZWxvYWRlZC9taXNjL0xGQy1wYXNzaW5nLXRl
c3RzLnR4dAorKysgYi9Ub29scy9MYXlvdXRSZWxvYWRlZC9taXNjL0xGQy1wYXNzaW5nLXRlc3Rz
LnR4dApAQCAtNTUsMyArNTUsNiBAQCBmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvZmxvYXQtYXZvaWRl
ci1zaW1wbGUtbGVmdC5odG1sCiBmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvZmxvYXQtYXZvaWRlci1z
aW1wbGUtcmlnaHQuaHRtbAogZmFzdC9ibG9jay9ibG9jay1vbmx5L2Zsb2F0LWF2b2lkZXItbXVs
dGlwbGUtcm9vdHMuaHRtbAogZmFzdC9ibG9jay9ibG9jay1vbmx5L2Zsb2F0LWF2b2lkZXItd2l0
aC1tYXJnaW5zLmh0bWwKK2Zhc3QvYmxvY2svYmxvY2stb25seS9pbmZsb3ctbWluLW1heC13aWR0
aC5odG1sCitmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvYWJzb2x1dGUtcG9zaXRpb24tbWluLW1heC13
aWR0aC5odG1sCitmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvZmxvYXQtbWluLW1heC13aWR0aC5odG1s
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggNWQ1MGU3YzkwYzhkNzU5MDhiNTM0NWRiYWJiMGI2NzkxMzFiMzU2My4uZWNmZmE3
OTNmN2Y0ZjlkOTc1MDU4YjkxZWI2YjMyMDRkM2E2YTUyMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBA
CisyMDE4LTA5LTA2ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAg
W0xGQ11bQkZDXSBBZGQgc3VwcG9ydCBmb3IgbWluKG1heCktd2lkdGgKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4OTM1OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9ibG9jay9ibG9jay1vbmx5
L2Fic29sdXRlLXBvc2l0aW9uLW1pbi1tYXgtd2lkdGgtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvYWJzb2x1dGUtcG9zaXRpb24tbWluLW1heC13
aWR0aC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvZmxvYXQt
bWluLW1heC13aWR0aC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvYmxvY2sv
YmxvY2stb25seS9mbG9hdC1taW4tbWF4LXdpZHRoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvYmxvY2svYmxvY2stb25seS9pbmZsb3ctbWluLW1heC13aWR0aC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvYmxvY2svYmxvY2stb25seS9pbmZsb3ctbWluLW1heC13aWR0
aC5odG1sOiBBZGRlZC4KKwogMjAxOC0wOS0wNSAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFw
cGxlLmNvbT4KIAogICAgICAgICBUaGUgd2lkdGggb2YgYSBudWxscHRyIFRleHRSdW4gc2hvdWxk
IGJlIHplcm8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svYmxvY2stb25seS9h
YnNvbHV0ZS1wb3NpdGlvbi1taW4tbWF4LXdpZHRoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvYmxvY2svYmxvY2stb25seS9hYnNvbHV0ZS1wb3NpdGlvbi1taW4tbWF4LXdpZHRoLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNTdmMTY1ZmYzZDQ4ZDRiNDMxYWMwOTY0MjE5NmViYzAw
NThkYzBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9ibG9jay1v
bmx5L2Fic29sdXRlLXBvc2l0aW9uLW1pbi1tYXgtd2lkdGgtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTQgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgw
LDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4OAorICBSZW5kZXJCbG9j
ayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4OAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4
LDgpIHNpemUgNzg0eDAKK2xheWVyIGF0ICg4LDgpIHNpemUgMjA0eDEwMgorICBSZW5kZXJCbG9j
ayAocG9zaXRpb25lZCkge0RJVn0gYXQgKDgsOCkgc2l6ZSAyMDR4MTAyIFtib3JkZXI6ICgxcHgg
c29saWQgIzAwODAwMCldCisgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDEsMSkgc2l6ZSAyMDJ4
NTIgW2JvcmRlcjogKDFweCBzb2xpZCAjRkYwMDAwKV0KK2xheWVyIGF0ICg4LDE1MCkgc2l6ZSAx
MDJ4MTAyCisgIFJlbmRlckJsb2NrIChwb3NpdGlvbmVkKSB7RElWfSBhdCAoOCwxNTApIHNpemUg
MTAyeDEwMiBbYm9yZGVyOiAoMXB4IHNvbGlkICMwMDgwMDApXQorICAgIFJlbmRlckJsb2NrIHtE
SVZ9IGF0ICgxLDEpIHNpemUgMjAyeDUyIFtib3JkZXI6ICgxcHggc29saWQgI0ZGMDAwMCldCits
YXllciBhdCAoOCwzMDApIHNpemUgMzAyeDEwMgorICBSZW5kZXJCbG9jayAocG9zaXRpb25lZCkg
e0RJVn0gYXQgKDgsMzAwKSBzaXplIDMwMngxMDIgW2JvcmRlcjogKDFweCBzb2xpZCAjMDA4MDAw
KV0KKyAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMSwxKSBzaXplIDIwMng1MiBbYm9yZGVyOiAo
MXB4IHNvbGlkICNGRjAwMDApXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9i
bG9jay1vbmx5L2Fic29sdXRlLXBvc2l0aW9uLW1pbi1tYXgtd2lkdGguaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvYmxvY2svYmxvY2stb25seS9hYnNvbHV0ZS1wb3NpdGlvbi1taW4tbWF4LXdpZHRo
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNjdiZjMwNTk5NzU1ZmE5MzliNzY4ZjM5NjRjZmIwMWY3OThmOTdl
NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svYmxvY2stb25seS9h
YnNvbHV0ZS1wb3NpdGlvbi1taW4tbWF4LXdpZHRoLmh0bWwKQEAgLTAsMCArMSwyNyBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorZGl2IHsKKyAgICBib3JkZXI6
IDFweCBzb2xpZCBncmVlbjsKK30KKworZGl2ID4gZGl2IHsKKyAgICBib3JkZXI6IDFweCBzb2xp
ZCByZWQ7Cit9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJwb3NpdGlv
bjogYWJzb2x1dGU7ICBoZWlnaHQ6IDEwMHB4OyI+CisgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiA1
MHB4OyB3aWR0aDogMjAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJwb3NpdGlv
bjogYWJzb2x1dGU7IHRvcDogMTUwcHg7IGhlaWdodDogMTAwcHg7IG1heC13aWR0aDogMTAwcHg7
Ij4KKyAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwcHg7IHdpZHRoOiAyMDBweDsiPjwvZGl2Pgor
PC9kaXY+CisKKzxkaXYgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAzMDBweDsgaGVp
Z2h0OiAxMDBweDsgbWluLXdpZHRoOiAzMDBweCI+CisgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiA1
MHB4OyB3aWR0aDogMjAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9ibG9jay1vbmx5L2Zsb2F0LW1pbi1tYXgt
d2lkdGgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9ibG9jay1vbmx5L2Zs
b2F0LW1pbi1tYXgtd2lkdGgtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0NmNjMzAxMjVkNTQ5
YTE3ZjkzMjJhYjQwNjZlNzA2OGJlNGZlNWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Jsb2NrL2Jsb2NrLW9ubHkvZmxvYXQtbWluLW1heC13aWR0aC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxMSBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZp
ZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHgyMTIKKyAg
UmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDIxMgorICAgIFJlbmRlckJvZHkg
e0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0eDAKKyAgICAgIFJlbmRlckJsb2NrIChmbG9hdGluZykg
e0RJVn0gYXQgKDAsMCkgc2l6ZSAyMDR4MTAyIFtib3JkZXI6ICgxcHggc29saWQgIzAwODAwMCld
CisgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgxLDEpIHNpemUgMjAyeDUyIFtib3JkZXI6
ICgxcHggc29saWQgI0ZGMDAwMCldCisgICAgICBSZW5kZXJCbG9jayAoZmxvYXRpbmcpIHtESVZ9
IGF0ICgzMDQsMCkgc2l6ZSAxMDJ4MTAyIFtib3JkZXI6ICgxcHggc29saWQgIzAwODAwMCldCisg
ICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgxLDEpIHNpemUgMjAyeDUyIFtib3JkZXI6ICgx
cHggc29saWQgI0ZGMDAwMCldCisgICAgICBSZW5kZXJCbG9jayAoZmxvYXRpbmcpIHtESVZ9IGF0
ICgwLDEwMikgc2l6ZSAzMDJ4MTAyIFtib3JkZXI6ICgxcHggc29saWQgIzAwODAwMCldCisgICAg
ICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgxLDEpIHNpemUgMjAyeDUyIFtib3JkZXI6ICgxcHgg
c29saWQgI0ZGMDAwMCldCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL2Jsb2Nr
LW9ubHkvZmxvYXQtbWluLW1heC13aWR0aC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9i
bG9jay1vbmx5L2Zsb2F0LW1pbi1tYXgtd2lkdGguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42YzA4NTRmY2Iw
YzM0MTUwNmM1OTM5MDNhYzViZjJlYjM2OWI5ZDc1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9ibG9jay9ibG9jay1vbmx5L2Zsb2F0LW1pbi1tYXgtd2lkdGguaHRtbApAQCAt
MCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+Citk
aXYgeworICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuOworfQorCitkaXYgPiBkaXYgeworICAg
IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsKK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxk
aXYgc3R5bGU9ImZsb2F0OiBsZWZ0OyBoZWlnaHQ6IDEwMHB4OyI+CisgICAgPGRpdiBzdHlsZT0i
aGVpZ2h0OiA1MHB4OyB3aWR0aDogMjAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxl
PSJmbG9hdDogbGVmdDsgbWFyZ2luLWxlZnQ6IDEwMHB4OyBtYXJnaW4tcmlnaHQ6IDIwMHB4OyBo
ZWlnaHQ6IDEwMHB4OyBtYXgtd2lkdGg6IDEwMHB4OyI+CisgICAgPGRpdiBzdHlsZT0iaGVpZ2h0
OiA1MHB4OyB3aWR0aDogMjAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJmbG9h
dDogbGVmdDsgaGVpZ2h0OiAxMDBweDsgbWluLXdpZHRoOiAzMDBweCI+CisgICAgPGRpdiBzdHls
ZT0iaGVpZ2h0OiA1MHB4OyB3aWR0aDogMjAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9ibG9jay1vbmx5L2lu
Zmxvdy1taW4tbWF4LXdpZHRoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2sv
YmxvY2stb25seS9pbmZsb3ctbWluLW1heC13aWR0aC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MjVkOTc2YWE4ZDc3Nzk1NWUzYTRlMzIxNDMyMWNmZjE3ZTZkZjAxZgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svYmxvY2stb25seS9pbmZsb3ctbWluLW1heC13aWR0
aC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4
NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBz
aXplIDgwMHg0NjQKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDQ2NAor
ICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0eDQwNgorICAgICAgUmVuZGVy
QmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSA3ODR4MTAyIFtib3JkZXI6ICgxcHggc29saWQgIzAw
ODAwMCldCisgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgxLDEpIHNpemUgMjAyeDUyIFti
b3JkZXI6ICgxcHggc29saWQgI0ZGMDAwMCldCisgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAo
MCwxNTIpIHNpemUgMTAyeDEwMiBbYm9yZGVyOiAoMXB4IHNvbGlkICMwMDgwMDApXQorICAgICAg
ICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMSwxKSBzaXplIDIwMng1MiBbYm9yZGVyOiAoMXB4IHNv
bGlkICNGRjAwMDApXQorICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzA0KSBzaXplIDc4
NHgxMDIgW2JvcmRlcjogKDFweCBzb2xpZCAjMDA4MDAwKV0KKyAgICAgICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDEsMSkgc2l6ZSAyMDJ4NTIgW2JvcmRlcjogKDFweCBzb2xpZCAjRkYwMDAwKV0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svYmxvY2stb25seS9pbmZsb3ctbWlu
LW1heC13aWR0aC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9ibG9jay1vbmx5L2luZmxv
dy1taW4tbWF4LXdpZHRoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWIxYTFmOTdhODI4MDcxNWZmNjNkNmUy
YTE3YTRiNDUyNDE5ZjM5NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYmxv
Y2svYmxvY2stb25seS9pbmZsb3ctbWluLW1heC13aWR0aC5odG1sCkBAIC0wLDAgKzEsMjggQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KK2RpdiB7CisgICAgYm9y
ZGVyOiAxcHggc29saWQgZ3JlZW47CisgICAgbWFyZ2luLWJvdHRvbTogNTBweDsKK30KKworZGl2
ID4gZGl2IHsKKyAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7Cit9Cis8L3N0eWxlPgorPC9oZWFk
PgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJoZWlnaHQ6IDEwMHB4OyI+CisgICAgPGRpdiBzdHlsZT0i
aGVpZ2h0OiA1MHB4OyB3aWR0aDogMjAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxl
PSJoZWlnaHQ6IDEwMHB4OyBtYXgtd2lkdGg6IDEwMHB4OyI+CisgICAgPGRpdiBzdHlsZT0iaGVp
Z2h0OiA1MHB4OyB3aWR0aDogMjAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJo
ZWlnaHQ6IDEwMHB4OyBtaW4td2lkdGg6IDMwMHB4Ij4KKyAgICA8ZGl2IHN0eWxlPSJoZWlnaHQ6
IDUwcHg7IHdpZHRoOiAyMDBweDsiPjwvZGl2PgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="366640"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>