<?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>201405</bug_id>
          
          <creation_ts>2019-09-02 14:13:32 -0700</creation_ts>
          <short_desc>[LFC][Floats] Do not pass FloatingState to FloatAvoider/FloatBox</short_desc>
          <delta_ts>2019-09-03 12:21:56 -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>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>1567227</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-09-02 14:13:32 -0700</bug_when>
    <thetext>They should not need it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567228</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-02 14:14:25 -0700</bug_when>
    <thetext>&lt;rdar://problem/54956381&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567229</commentid>
    <comment_count>2</comment_count>
      <attachid>377858</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-09-02 14:33:46 -0700</bug_when>
    <thetext>Created attachment 377858
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567447</commentid>
    <comment_count>3</comment_count>
      <attachid>377910</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-09-03 11:24:41 -0700</bug_when>
    <thetext>Created attachment 377910
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567464</commentid>
    <comment_count>4</comment_count>
      <attachid>377910</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-03 12:21:55 -0700</bug_when>
    <thetext>Comment on attachment 377910
Patch

Clearing flags on attachment: 377910

Committed r249437: &lt;https://trac.webkit.org/changeset/249437&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567465</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-03 12:21:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>377858</attachid>
            <date>2019-09-02 14:33:46 -0700</date>
            <delta_ts>2019-09-03 11:24:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201405-20190902143336.patch</filename>
            <type>text/plain</type>
            <size>15784</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5MzU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzUzYmNkMjVhYTNjODlk
NGE0NzgzZWZmNTFlYmFiN2Y1OTMwODlmZC4uNWNiNTVlNmJiZjJlODM5MTM3ODE3MzVkYmJjYjBm
Y2U2NDY1MDBmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA5LTAyICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bRmxvYXRzXSBEbyBu
b3QgcGFzcyBGbG9hdGluZ1N0YXRlIHRvIEZsb2F0QXZvaWRlci9GbG9hdEJveAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAxNDA1CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS81NDk1NjM4MT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciB0cmFuc2l0aW9uaW5n
IHRoZSBmbG9hdGluZyBjb2RlYmFzZSB0byB1c2UgdGhlIGZvcm1hdHRpbmcgY29udGV4dCBmb3IK
KyAgICAgICAgcmV0cmlldmluZyBkaXNwbGF5IGJveGVzLiBOb3cgRmxvYXRBdm9pZGVycy9GbG9h
dEJveGVzIGRvbid0IG5lZWQgdGhlIEZsb2F0aW5nU3RhdGUgdG8gY29tcHV0ZSBhYnNvbHV0ZSBk
aXNwbGF5IGJveGVzLiAgCisKKyAgICAgICAgKiBsYXlvdXQvZmxvYXRzL0Zsb2F0QXZvaWRlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0QXZvaWRlcjo6RmxvYXRBdm9pZGVy
KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRBdm9pZGVyOjpzZXRIb3Jpem9udGFs
Q29uc3RyYWludHMpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGbG9hdEF2b2lkZXI6Omlu
aXRpYWxIb3Jpem9udGFsUG9zaXRpb24gY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
OjpGbG9hdEF2b2lkZXI6Om92ZXJmbG93c0NvbnRhaW5pbmdCbG9jayBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0QXZvaWRlcjo6cmVjdEluQ29udGFpbmluZ0Jsb2NrIGNv
bnN0KToKKyAgICAgICAgKiBsYXlvdXQvZmxvYXRzL0Zsb2F0QXZvaWRlci5oOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0OjpGbG9hdEF2b2lkZXI6OmZsb2F0aW5nU3RhdGUgY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAqIGxheW91dC9mbG9hdHMvRmxvYXRCb3guY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6TGF5b3V0OjpGbG9hdEJveDo6RmxvYXRCb3gpOgorICAgICAgICAoV2ViQ29yZTo6TGF5
b3V0OjpGbG9hdEJveDo6aW5pdGlhbFZlcnRpY2FsUG9zaXRpb24gY29uc3QpOgorICAgICAgICAq
IGxheW91dC9mbG9hdHMvRmxvYXRCb3guaDoKKyAgICAgICAgKiBsYXlvdXQvZmxvYXRzL0Zsb2F0
aW5nQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6Om1hcFRvRm9ybWF0dGlu
Z0NvbnRleHRSb290KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRpbmdDb250ZXh0
Ojpwb3NpdGlvbkZvckZsb2F0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6Rmxv
YXRpbmdDb250ZXh0Ojpwb3NpdGlvbkZvckZvcm1hdHRpbmdDb250ZXh0Um9vdCBjb25zdCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTGF5b3V0UG9pbnQuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dFBvaW50Ojppc1plcm8gY29uc3QpOgorCiAyMDE5LTA5LTAxICBaYWxhbiBCdWp0
YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bRmxvYXRzXSBNb3ZlIEZsb2F0
aW5nU3RhdGU6OmNvbnN0cmFpbnRzIHRvIEZsb2F0aW5nQ29udGV4dApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEF2b2lkZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEF2b2lkZXIuY3BwCmluZGV4IDg3MGNmZjVmY2YzZDIyZGEz
NTZmNTdhYmUyMzA3ZWE1MmQ0OGRiZmYuLmZmNzU2YzhkZDAwNGIxZDE4ZjRhOWE4ODlmYWQwYWRm
NTQ5NDFhMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRB
dm9pZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0QXZvaWRl
ci5jcHAKQEAgLTM4LDExICszOCwxMSBAQCBuYW1lc3BhY2UgTGF5b3V0IHsKIAogV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRF9JTVBMKEZsb2F0QXZvaWRlcik7CiAKLUZsb2F0QXZvaWRlcjo6RmxvYXRB
dm9pZGVyKGNvbnN0IEJveCYgbGF5b3V0Qm94LCBjb25zdCBGbG9hdGluZ1N0YXRlJiBmbG9hdGlu
Z1N0YXRlLCBjb25zdCBMYXlvdXRTdGF0ZSYgbGF5b3V0U3RhdGUpCitGbG9hdEF2b2lkZXI6OkZs
b2F0QXZvaWRlcihjb25zdCBCb3gmIGxheW91dEJveCwgRGlzcGxheTo6Qm94IGFic29sdXRlRGlz
cGxheUJveCwgTGF5b3V0UG9pbnQgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVUb3BMZWZ0LCBIb3Jp
em9udGFsRWRnZXMgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVDb250ZW50Qm94KQogICAgIDogbV9s
YXlvdXRCb3gobWFrZVdlYWtQdHIobGF5b3V0Qm94KSkKLSAgICAsIG1fZmxvYXRpbmdTdGF0ZShm
bG9hdGluZ1N0YXRlKQotICAgICwgbV9hYnNvbHV0ZURpc3BsYXlCb3goRm9ybWF0dGluZ0NvbnRl
eHQ6Om1hcEJveFRvQW5jZXN0b3IobGF5b3V0U3RhdGUsIGxheW91dEJveCwgZG93bmNhc3Q8Q29u
dGFpbmVyPihmbG9hdGluZ1N0YXRlLnJvb3QoKSkpKQotICAgICwgbV9jb250YWluaW5nQmxvY2tB
YnNvbHV0ZURpc3BsYXlCb3gobGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9jaygpID09ICZmbG9hdGlu
Z1N0YXRlLnJvb3QoKSA/IERpc3BsYXk6OkJveChsYXlvdXRTdGF0ZS5kaXNwbGF5Qm94Rm9yTGF5
b3V0Qm94KCpsYXlvdXRCb3guY29udGFpbmluZ0Jsb2NrKCkpKSA6IEZvcm1hdHRpbmdDb250ZXh0
OjptYXBCb3hUb0FuY2VzdG9yKGxheW91dFN0YXRlLCAqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9j
aygpLCBkb3duY2FzdDxDb250YWluZXI+KGZsb2F0aW5nU3RhdGUucm9vdCgpKSkpCisgICAgLCBt
X2Fic29sdXRlRGlzcGxheUJveChhYnNvbHV0ZURpc3BsYXlCb3gpCisgICAgLCBtX2NvbnRhaW5p
bmdCbG9ja0Fic29sdXRlVG9wTGVmdChjb250YWluaW5nQmxvY2tBYnNvbHV0ZVRvcExlZnQpCisg
ICAgLCBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlQ29udGVudEJveChjb250YWluaW5nQmxvY2tB
YnNvbHV0ZUNvbnRlbnRCb3gpCiB7CiAgICAgQVNTRVJUKG1fbGF5b3V0Qm94LT5lc3RhYmxpc2hl
c0Jsb2NrRm9ybWF0dGluZ0NvbnRleHQoKSk7CiAgICAgbV9hYnNvbHV0ZURpc3BsYXlCb3guc2V0
TGVmdCh7IGluaXRpYWxIb3Jpem9udGFsUG9zaXRpb24oKSB9KTsKQEAgLTU5LDEzICs1OSwxMSBA
QCB2b2lkIEZsb2F0QXZvaWRlcjo6c2V0SG9yaXpvbnRhbENvbnN0cmFpbnRzKEhvcml6b250YWxD
b25zdHJhaW50cyBob3Jpem9udGFsQ29ucwogICAgIGF1dG8gY29uc3RyYWluV2l0aENvbnRhaW5p
bmdCbG9jayA9IFsmXShhdXRvIGxlZnQpIC0+IFBvc2l0aW9uSW5Db250ZXh0Um9vdCB7CiAgICAg
ICAgIC8vIEhvcml6b250YWwgcG9zaXRpb24gaXMgY29uc3RyYWluZWQgYnkgdGhlIGNvbnRhaW5p
bmcgYmxvY2sncyBjb250ZW50IGJveC4KICAgICAgICAgLy8gQ29tcHV0ZSB0aGUgaG9yaXpvbnRh
bCBwb3NpdGlvbiBmb3IgdGhlIG5ldyBmbG9hdGluZyBieSB0YWtpbmcgYm90aCB0aGUgY29udGlu
aW5nIGJsb2NrIGFuZCB0aGUgY3VycmVudCBsZWZ0L3JpZ2h0IGZsb2F0cyBpbnRvIGFjY291bnQu
Ci0gICAgICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrQ29udGVudEJveExlZnQgPSBtX2NvbnRhaW5p
bmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5sZWZ0KCkgKyBtX2NvbnRhaW5pbmdCbG9ja0Fic29s
dXRlRGlzcGxheUJveC5jb250ZW50Qm94TGVmdCgpOwogICAgICAgICBpZiAoaXNMZWZ0QWxpZ25l
ZCgpKQotICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bWF4PFBvc2l0aW9uSW5Db250ZXh0Um9vdD4o
eyBjb250YWluaW5nQmxvY2tDb250ZW50Qm94TGVmdCArIG1hcmdpblN0YXJ0KCkgfSwgbGVmdCk7
CisgICAgICAgICAgICByZXR1cm4gc3RkOjptYXg8UG9zaXRpb25JbkNvbnRleHRSb290Pih7IG1f
Y29udGFpbmluZ0Jsb2NrQWJzb2x1dGVDb250ZW50Qm94LmxlZnQgKyBtYXJnaW5TdGFydCgpIH0s
IGxlZnQpOwogCiAgICAgICAgIC8vIE1ha2Ugc3VyZSBpdCBkb2VzIG5vdCBvdmVyZmxvdyB0aGUg
Y29udGFpbmluZyBibG9jayBvbiB0aGUgcmlnaHQuCi0gICAgICAgIGF1dG8gY29udGFpbmluZ0Js
b2NrQ29udGVudEJveFJpZ2h0ID0gY29udGFpbmluZ0Jsb2NrQ29udGVudEJveExlZnQgKyBtX2Nv
bnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5jb250ZW50Qm94V2lkdGgoKTsKLSAgICAg
ICAgcmV0dXJuIHN0ZDo6bWluPFBvc2l0aW9uSW5Db250ZXh0Um9vdD4obGVmdCwgeyBjb250YWlu
aW5nQmxvY2tDb250ZW50Qm94UmlnaHQgLSBtYXJnaW5Cb3hXaWR0aCgpICsgbWFyZ2luU3RhcnQo
KSB9KTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6bWluPFBvc2l0aW9uSW5Db250ZXh0Um9vdD4obGVm
dCwgeyBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlQ29udGVudEJveC5yaWdodCAtIG1hcmdpbkJv
eFdpZHRoKCkgKyBtYXJnaW5TdGFydCgpIH0pOwogICAgIH07CiAKICAgICBhdXRvIHBvc2l0aW9u
Q2FuZGlkYXRlID0gaG9yaXpvbnRhbFBvc2l0aW9uQ2FuZGlkYXRlKGhvcml6b250YWxDb25zdHJh
aW50cyk7CkBAIC05MCwzOCArODgsMzAgQEAgUG9zaXRpb25JbkNvbnRleHRSb290IEZsb2F0QXZv
aWRlcjo6dmVydGljYWxQb3NpdGlvbkNhbmRpZGF0ZShQb3NpdGlvbkluQ29udGV4dFIKIFBvc2l0
aW9uSW5Db250ZXh0Um9vdCBGbG9hdEF2b2lkZXI6OmluaXRpYWxIb3Jpem9udGFsUG9zaXRpb24o
KSBjb25zdAogewogICAgIC8vIEFsaWduIHRoZSBib3ggd2l0aCB0aGUgY29udGFpbmluZyBibG9j
aydzIGNvbnRlbnQgYm94LgotICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrQ29udGVudEJveExlZnQg
PSBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5sZWZ0KCkgKyBtX2NvbnRhaW5p
bmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5jb250ZW50Qm94TGVmdCgpOwotICAgIGF1dG8gY29u
dGFpbmluZ0Jsb2NrQ29udGVudEJveFJpZ2h0ID0gY29udGFpbmluZ0Jsb2NrQ29udGVudEJveExl
ZnQgKyBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5jb250ZW50Qm94V2lkdGgo
KTsKLQotICAgIGF1dG8gbGVmdCA9IGlzTGVmdEFsaWduZWQoKSA/IGNvbnRhaW5pbmdCbG9ja0Nv
bnRlbnRCb3hMZWZ0IDogY29udGFpbmluZ0Jsb2NrQ29udGVudEJveFJpZ2h0IC0gbWFyZ2luQm94
V2lkdGgoKTsKKyAgICBhdXRvIGxlZnQgPSBpc0xlZnRBbGlnbmVkKCkgPyBtX2NvbnRhaW5pbmdC
bG9ja0Fic29sdXRlQ29udGVudEJveC5sZWZ0IDogbV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZUNv
bnRlbnRCb3gucmlnaHQgLSBtYXJnaW5Cb3hXaWR0aCgpOwogICAgIGxlZnQgKz0gbWFyZ2luU3Rh
cnQoKTsKLQogICAgIHJldHVybiB7IGxlZnQgfTsKIH0KIAogYm9vbCBGbG9hdEF2b2lkZXI6Om92
ZXJmbG93c0NvbnRhaW5pbmdCbG9jaygpIGNvbnN0CiB7Ci0gICAgYXV0byBjb250YWluaW5nQmxv
Y2tDb250ZW50Qm94TGVmdCA9IG1fY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVEaXNwbGF5Qm94Lmxl
ZnQoKSArIG1fY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVEaXNwbGF5Qm94LmNvbnRlbnRCb3hMZWZ0
KCk7CiAgICAgYXV0byBsZWZ0ID0gZGlzcGxheUJveCgpLmxlZnQoKSAtIG1hcmdpblN0YXJ0KCk7
Ci0KLSAgICBpZiAoY29udGFpbmluZ0Jsb2NrQ29udGVudEJveExlZnQgPiBsZWZ0KQorICAgIGlm
IChtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlQ29udGVudEJveC5sZWZ0ID4gbGVmdCkKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAKLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hSaWdo
dCA9IGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hMZWZ0ICsgbV9jb250YWluaW5nQmxvY2tBYnNv
bHV0ZURpc3BsYXlCb3guY29udGVudEJveFdpZHRoKCk7CiAgICAgYXV0byByaWdodCA9IGRpc3Bs
YXlCb3goKS5yaWdodCgpICsgbWFyZ2luRW5kKCk7Ci0KLSAgICByZXR1cm4gY29udGFpbmluZ0Js
b2NrQ29udGVudEJveFJpZ2h0IDwgcmlnaHQ7CisgICAgcmV0dXJuIG1fY29udGFpbmluZ0Jsb2Nr
QWJzb2x1dGVDb250ZW50Qm94LnJpZ2h0IDwgcmlnaHQ7CiB9CiAKIERpc3BsYXk6OlJlY3QgRmxv
YXRBdm9pZGVyOjpyZWN0SW5Db250YWluaW5nQmxvY2soKSBjb25zdAogewogICAgIC8vIEZyb20g
Zm9ybWF0dGluZyByb290IGNvb3JkaW5hdGUgc3lzdGVtIGJhY2sgdG8gY29udGFpbmluZyBibG9j
aydzLgotICAgIGlmIChsYXlvdXRCb3goKS5jb250YWluaW5nQmxvY2soKSA9PSAmZmxvYXRpbmdT
dGF0ZSgpLnJvb3QoKSkKKyAgICBpZiAobV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZVRvcExlZnQu
aXNaZXJvKCkpCiAgICAgICAgIHJldHVybiBtX2Fic29sdXRlRGlzcGxheUJveC5yZWN0KCk7CiAK
ICAgICByZXR1cm4gewotICAgICAgICBtX2Fic29sdXRlRGlzcGxheUJveC50b3AoKSAtIG1fY29u
dGFpbmluZ0Jsb2NrQWJzb2x1dGVEaXNwbGF5Qm94LnRvcCgpLAotICAgICAgICBtX2Fic29sdXRl
RGlzcGxheUJveC5sZWZ0KCkgLSBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5s
ZWZ0KCksCisgICAgICAgIG1fYWJzb2x1dGVEaXNwbGF5Qm94LnRvcCgpIC0gbV9jb250YWluaW5n
QmxvY2tBYnNvbHV0ZVRvcExlZnQueSgpLAorICAgICAgICBtX2Fic29sdXRlRGlzcGxheUJveC5s
ZWZ0KCkgLSBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlVG9wTGVmdC54KCksCiAgICAgICAgIG1f
YWJzb2x1dGVEaXNwbGF5Qm94LndpZHRoKCksCiAgICAgICAgIG1fYWJzb2x1dGVEaXNwbGF5Qm94
LmhlaWdodCgpCiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mbG9h
dHMvRmxvYXRBdm9pZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0QXZv
aWRlci5oCmluZGV4IDZlZDlkNDNkM2JmZmFiOTNhMGQ4OGQ4NjcxZjRlODA3YjAyMzUxYmMuLmY0
ZDNlMjczODE2ZGNjMDJhNGUxNTY0Nzc2MGQ5YzJjMmJjODM2OTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRBdm9pZGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEF2b2lkZXIuaApAQCAtNDMsNyArNDMsNyBAQCBjbGFzcyBM
YXlvdXRTdGF0ZTsKIGNsYXNzIEZsb2F0QXZvaWRlciB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9D
QVRFRChGbG9hdEF2b2lkZXIpOwogcHVibGljOgotICAgIEZsb2F0QXZvaWRlcihjb25zdCBCb3gm
LCBjb25zdCBGbG9hdGluZ1N0YXRlJiwgY29uc3QgTGF5b3V0U3RhdGUmKTsKKyAgICBGbG9hdEF2
b2lkZXIoY29uc3QgQm94JiwgRGlzcGxheTo6Qm94IGFic29sdXRlRGlzcGxheUJveCwgTGF5b3V0
UG9pbnQgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVUb3BMZWZ0LCBIb3Jpem9udGFsRWRnZXMgY29u
dGFpbmluZ0Jsb2NrQWJzb2x1dGVDb250ZW50Qm94KTsKICAgICB2aXJ0dWFsIH5GbG9hdEF2b2lk
ZXIoKSA9IGRlZmF1bHQ7CiAKICAgICB2aXJ0dWFsIERpc3BsYXk6OlJlY3QgcmVjdCgpIGNvbnN0
IHsgcmV0dXJuIG1fYWJzb2x1dGVEaXNwbGF5Qm94LnJlY3QoKTsgfQpAQCAtNzUsMTYgKzc1LDE2
IEBAIHByb3RlY3RlZDoKIAogICAgIExheW91dFVuaXQgbWFyZ2luQm94V2lkdGgoKSBjb25zdCB7
IHJldHVybiBtYXJnaW5TdGFydCgpICsgZGlzcGxheUJveCgpLndpZHRoKCkgKyBtYXJnaW5FbmQo
KTsgfQogCi0gICAgY29uc3QgRmxvYXRpbmdTdGF0ZSYgZmxvYXRpbmdTdGF0ZSgpIGNvbnN0IHsg
cmV0dXJuIG1fZmxvYXRpbmdTdGF0ZTsgfQogICAgIGNvbnN0IEJveCYgbGF5b3V0Qm94KCkgY29u
c3QgeyByZXR1cm4gKm1fbGF5b3V0Qm94OyB9CiAgICAgY29uc3QgRGlzcGxheTo6Qm94JiBkaXNw
bGF5Qm94KCkgY29uc3QgeyByZXR1cm4gbV9hYnNvbHV0ZURpc3BsYXlCb3g7IH0KICAgICBEaXNw
bGF5OjpCb3gmIGRpc3BsYXlCb3goKSB7IHJldHVybiBtX2Fic29sdXRlRGlzcGxheUJveDsgfQog
CiBwcml2YXRlOgogICAgIFdlYWtQdHI8Y29uc3QgQm94PiBtX2xheW91dEJveDsKLSAgICBjb25z
dCBGbG9hdGluZ1N0YXRlJiBtX2Zsb2F0aW5nU3RhdGU7CisgICAgLy8gVGhlc2UgY29vcmRpbmF0
ZSB2YWx1ZXMgYXJlIHJlbGF0aXZlIHRvIHRoZSBmb3JtYXR0aW5nIHJvb3QncyBib3JkZXIgYm94
LgogICAgIERpc3BsYXk6OkJveCBtX2Fic29sdXRlRGlzcGxheUJveDsKLSAgICBEaXNwbGF5OjpC
b3ggbV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZURpc3BsYXlCb3g7CisgICAgTGF5b3V0UG9pbnQg
bV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZVRvcExlZnQ7CisgICAgSG9yaXpvbnRhbEVkZ2VzIG1f
Y29udGFpbmluZ0Jsb2NrQWJzb2x1dGVDb250ZW50Qm94OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEJveC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvZmxvYXRzL0Zsb2F0Qm94LmNwcAppbmRleCBiMmU4NmMxNTIxNjdjM2VhMjNkYTc0
OThjNjc3ZmY0NDkzZmZkOGVmLi4zOWE2ZjIxZjZmNGNjZTlkMjkxZDQxNDkxYWIwODMyYjEzODg2
YjI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0Qm94LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0Qm94LmNwcApAQCAtMzUs
MTAgKzM1LDEwIEBAIG5hbWVzcGFjZSBMYXlvdXQgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVE
X0lNUEwoRmxvYXRCb3gpOwogCi1GbG9hdEJveDo6RmxvYXRCb3goY29uc3QgQm94JiBsYXlvdXRC
b3gsIGNvbnN0IEZsb2F0aW5nU3RhdGUmIGZsb2F0aW5nU3RhdGUsIGNvbnN0IExheW91dFN0YXRl
JiBsYXlvdXRTdGF0ZSkKLSAgICA6IEZsb2F0QXZvaWRlcihsYXlvdXRCb3gsIGZsb2F0aW5nU3Rh
dGUsIGxheW91dFN0YXRlKQorRmxvYXRCb3g6OkZsb2F0Qm94KGNvbnN0IEJveCYgbGF5b3V0Qm94
LCBEaXNwbGF5OjpCb3ggYWJzb2x1dGVEaXNwbGF5Qm94LCBMYXlvdXRQb2ludCBjb250YWluaW5n
QmxvY2tBYnNvbHV0ZVRvcExlZnQsIEhvcml6b250YWxFZGdlcyBjb250YWluaW5nQmxvY2tBYnNv
bHV0ZUNvbnRlbnRCb3gsIE9wdGlvbmFsPExheW91dFVuaXQ+IHByZXZpb3VzRmxvYXRBYnNvbHV0
ZVRvcCkKKyAgICA6IEZsb2F0QXZvaWRlcihsYXlvdXRCb3gsIGFic29sdXRlRGlzcGxheUJveCwg
Y29udGFpbmluZ0Jsb2NrQWJzb2x1dGVUb3BMZWZ0LCBjb250YWluaW5nQmxvY2tBYnNvbHV0ZUNv
bnRlbnRCb3gpCiB7Ci0gICAgZGlzcGxheUJveCgpLnNldFRvcExlZnQoeyBpbml0aWFsSG9yaXpv
bnRhbFBvc2l0aW9uKCksIGluaXRpYWxWZXJ0aWNhbFBvc2l0aW9uKCkgfSk7CisgICAgZGlzcGxh
eUJveCgpLnNldFRvcExlZnQoeyBpbml0aWFsSG9yaXpvbnRhbFBvc2l0aW9uKCksIGluaXRpYWxW
ZXJ0aWNhbFBvc2l0aW9uKHByZXZpb3VzRmxvYXRBYnNvbHV0ZVRvcCkgfSk7CiB9CiAKIERpc3Bs
YXk6OlJlY3QgRmxvYXRCb3g6OnJlY3QoKSBjb25zdApAQCAtNjAsMTMgKzYwLDEzIEBAIFBvc2l0
aW9uSW5Db250ZXh0Um9vdCBGbG9hdEJveDo6dmVydGljYWxQb3NpdGlvbkNhbmRpZGF0ZShQb3Np
dGlvbkluQ29udGV4dFJvb3QKICAgICByZXR1cm4geyB2ZXJ0aWNhbENvbnN0cmFpbnQgKyBtYXJn
aW5CZWZvcmUoKSB9OwogfQogCi1Qb3NpdGlvbkluQ29udGV4dFJvb3QgRmxvYXRCb3g6OmluaXRp
YWxWZXJ0aWNhbFBvc2l0aW9uKCkgY29uc3QKK1Bvc2l0aW9uSW5Db250ZXh0Um9vdCBGbG9hdEJv
eDo6aW5pdGlhbFZlcnRpY2FsUG9zaXRpb24oT3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJldmlvdXNG
bG9hdEFic29sdXRlVG9wKSBjb25zdAogewogICAgIC8vIEluY29taW5nIGZsb2F0IGNhbm5vdCBi
ZSBwbGFjZWQgaGlnaGVyIHRoYW4gZXhpc3RpbmcgZmxvYXRzIChtYXJnaW4gYm94IG9mIHRoZSBs
YXN0IGZsb2F0KS4KICAgICAvLyBUYWtlIHRoZSBzdGF0aWMgcG9zaXRpb24gKHdoZXJlIHRoZSBi
b3ggd291bGQgZ28gaWYgaXQgd2Fzbid0IGZsb2F0aW5nKSBhbmQgYWRqdXN0IGl0IHdpdGggdGhl
IGxhc3QgZmxvYXQuCiAgICAgYXV0byB0b3AgPSBkaXNwbGF5Qm94KCkudG9wKCkgLSBtYXJnaW5C
ZWZvcmUoKTsKLSAgICBpZiAoYXV0byBsYXN0RmxvYXQgPSBmbG9hdGluZ1N0YXRlKCkubGFzdCgp
KQotICAgICAgICB0b3AgPSBzdGQ6Om1heCh0b3AsIGxhc3RGbG9hdC0+cmVjdFdpdGhNYXJnaW4o
KS50b3AoKSk7CisgICAgaWYgKHByZXZpb3VzRmxvYXRBYnNvbHV0ZVRvcCkKKyAgICAgICAgdG9w
ID0gc3RkOjptYXgodG9wLCAqcHJldmlvdXNGbG9hdEFic29sdXRlVG9wKTsKICAgICB0b3AgKz0g
bWFyZ2luQmVmb3JlKCk7CiAKICAgICByZXR1cm4geyB0b3AgfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRCb3guaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9mbG9hdHMvRmxvYXRCb3guaAppbmRleCA5N2QyMTUwNzViZWQxODRlMzhhYWZkNGQxNzMwNDUy
N2I1YTAwZTAwLi5mYjg4ODIzN2FhN2NhMjliZWM3MTRjNzE5NzVmZjc0NDY2ZGQ1YTIxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0Qm94LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEJveC5oCkBAIC00MSw3ICs0MSw3IEBAIGNs
YXNzIExheW91dFN0YXRlOwogY2xhc3MgRmxvYXRCb3ggOiBwdWJsaWMgRmxvYXRBdm9pZGVyIHsK
ICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEZsb2F0Qm94KTsKIHB1YmxpYzoKLSAgICBGbG9h
dEJveChjb25zdCBCb3gmLCBjb25zdCBGbG9hdGluZ1N0YXRlJiwgY29uc3QgTGF5b3V0U3RhdGUm
KTsKKyAgICBGbG9hdEJveChjb25zdCBCb3gmLCBEaXNwbGF5OjpCb3ggYWJzb2x1dGVEaXNwbGF5
Qm94LCBMYXlvdXRQb2ludCBjb250YWluaW5nQmxvY2tBYnNvbHV0ZVRvcExlZnQsIEhvcml6b250
YWxFZGdlcyBjb250YWluaW5nQmxvY2tBYnNvbHV0ZUNvbnRlbnRCb3gsIE9wdGlvbmFsPExheW91
dFVuaXQ+IHByZXZpb3VzRmxvYXRBYnNvbHV0ZVRvcCk7CiAKICAgICBEaXNwbGF5OjpSZWN0IHJl
Y3QoKSBjb25zdCBmaW5hbDsKIApAQCAtNTEsNyArNTEsNyBAQCBwcml2YXRlOgogICAgIFBvc2l0
aW9uSW5Db250ZXh0Um9vdCBob3Jpem9udGFsUG9zaXRpb25DYW5kaWRhdGUoSG9yaXpvbnRhbENv
bnN0cmFpbnRzKSBmaW5hbDsKICAgICBQb3NpdGlvbkluQ29udGV4dFJvb3QgdmVydGljYWxQb3Np
dGlvbkNhbmRpZGF0ZShQb3NpdGlvbkluQ29udGV4dFJvb3QpIGZpbmFsOwogCi0gICAgUG9zaXRp
b25JbkNvbnRleHRSb290IGluaXRpYWxWZXJ0aWNhbFBvc2l0aW9uKCkgY29uc3Q7CisgICAgUG9z
aXRpb25JbkNvbnRleHRSb290IGluaXRpYWxWZXJ0aWNhbFBvc2l0aW9uKE9wdGlvbmFsPExheW91
dFVuaXQ+IHByZXZpb3VzRmxvYXRBYnNvbHV0ZVRvcCkgY29uc3Q7CiB9OwogCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0aW5nQ29udGV4dC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0aW5nQ29udGV4dC5jcHAKaW5kZXggMWI5
MjhlNWY1YjJkN2NhODIyZmY1YmM0ZjUyNWFiMzA2NTViYzUyMC4uYWE3MTBhYzcyZTc2NTNhYWY5
ODA0YzVmYzdkYTMwZjE5NjI0MjE5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2Zsb2F0cy9GbG9hdGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9m
bG9hdHMvRmxvYXRpbmdDb250ZXh0LmNwcApAQCAtMTUwLDYgKzE1MCwyNSBAQCBzdGF0aWMgYm9v
bCBhcmVGbG9hdHNIb3Jpem9udGFsbHlTb3J0ZWQoY29uc3QgRmxvYXRpbmdTdGF0ZSYgZmxvYXRp
bmdTdGF0ZSkKIH0KICNlbmRpZgogCitzdHJ1Y3QgQWJzb2x1dGVDb29yZGluYXRlVmFsdWVzRm9y
RmxvYXRBdm9pZGVyIHsKKyAgICBEaXNwbGF5OjpCb3ggZGlzcGxheUJveDsKKyAgICBMYXlvdXRQ
b2ludCBjb250YWluaW5nQmxvY2tUb3BMZWZ0OworICAgIEhvcml6b250YWxFZGdlcyBjb250YWlu
aW5nQmxvY2tDb250ZW50Qm94OworfTsKK3N0YXRpYyBBYnNvbHV0ZUNvb3JkaW5hdGVWYWx1ZXNG
b3JGbG9hdEF2b2lkZXIgbWFwVG9Gb3JtYXR0aW5nQ29udGV4dFJvb3QoY29uc3QgQm94JiBsYXlv
dXRCb3gsIGNvbnN0IENvbnRhaW5lciYgZm9ybWF0dGluZ0NvbnRleHRSb290LCBjb25zdCBMYXlv
dXRTdGF0ZSYgbGF5b3V0U3RhdGUpCit7CisgICAgYXV0byYgY29udGFpbmluZ0Jsb2NrID0gKmxh
eW91dEJveC5jb250YWluaW5nQmxvY2soKTsKKyAgICBhdXRvIGRpc3BsYXlCb3ggPSBGb3JtYXR0
aW5nQ29udGV4dDo6bWFwQm94VG9BbmNlc3RvcihsYXlvdXRTdGF0ZSwgbGF5b3V0Qm94LCBmb3Jt
YXR0aW5nQ29udGV4dFJvb3QpOworCisgICAgaWYgKCZjb250YWluaW5nQmxvY2sgPT0gJmZvcm1h
dHRpbmdDb250ZXh0Um9vdCkgeworICAgICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0Rpc3BsYXlC
b3ggPSBsYXlvdXRTdGF0ZS5kaXNwbGF5Qm94Rm9yTGF5b3V0Qm94KGNvbnRhaW5pbmdCbG9jayk7
CisgICAgICAgIHJldHVybiB7IGRpc3BsYXlCb3gsIHsgfSwgeyAgY29udGFpbmluZ0Jsb2NrRGlz
cGxheUJveC5jb250ZW50Qm94TGVmdCgpLCBjb250YWluaW5nQmxvY2tEaXNwbGF5Qm94LmNvbnRl
bnRCb3hSaWdodCgpIH0gfTsKKyAgICB9CisgICAgYXV0byBjb250YWluaW5nQmxvY2tBYnNvbHV0
ZURpc3BsYXlCb3ggPSBGb3JtYXR0aW5nQ29udGV4dDo6bWFwQm94VG9BbmNlc3RvcihsYXlvdXRT
dGF0ZSwgY29udGFpbmluZ0Jsb2NrLCBmb3JtYXR0aW5nQ29udGV4dFJvb3QpOworICAgIGF1dG8g
Y29udGFpbmluZ0Jsb2NrTGVmdCA9IGNvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5s
ZWZ0KCk7CisgICAgcmV0dXJuIHsgZGlzcGxheUJveCwgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVE
aXNwbGF5Qm94LnRvcExlZnQoKSwgeyBjb250YWluaW5nQmxvY2tMZWZ0ICsgY29udGFpbmluZ0Js
b2NrQWJzb2x1dGVEaXNwbGF5Qm94LmNvbnRlbnRCb3hMZWZ0KCksIGNvbnRhaW5pbmdCbG9ja0xl
ZnQgKyBjb250YWluaW5nQmxvY2tBYnNvbHV0ZURpc3BsYXlCb3guY29udGVudEJveFJpZ2h0KCkg
fSB9OworfQorCiBGbG9hdGluZ0NvbnRleHQ6OkZsb2F0aW5nQ29udGV4dChjb25zdCBDb250YWlu
ZXImIGZvcm1hdHRpbmdDb250ZXh0Um9vdCwgRmxvYXRpbmdTdGF0ZSYgZmxvYXRpbmdTdGF0ZSkK
ICAgICA6IG1fcm9vdChtYWtlV2Vha1B0cihmb3JtYXR0aW5nQ29udGV4dFJvb3QpKQogICAgICwg
bV9mbG9hdGluZ1N0YXRlKGZsb2F0aW5nU3RhdGUpCkBAIC0xNzksNyArMTk4LDEyIEBAIFBvaW50
IEZsb2F0aW5nQ29udGV4dDo6cG9zaXRpb25Gb3JGbG9hdChjb25zdCBCb3gmIGxheW91dEJveCkg
Y29uc3QKICAgICB9CiAKICAgICAvLyBGaW5kIHRoZSB0b3AgbW9zdCBwb3NpdGlvbiB3aGVyZSB0
aGUgZmxvYXQgYm94IGZpdHMuCi0gICAgRmxvYXRCb3ggZmxvYXRCb3ggPSB7IGxheW91dEJveCwg
bV9mbG9hdGluZ1N0YXRlLCBsYXlvdXRTdGF0ZSgpIH07CisgICAgYXV0byBhYnNvbHV0ZURpc3Bs
YXlCb3hDb29yZGluYXRlcyA9IG1hcFRvRm9ybWF0dGluZ0NvbnRleHRSb290KGxheW91dEJveCwg
ZG93bmNhc3Q8Q29udGFpbmVyPihtX2Zsb2F0aW5nU3RhdGUucm9vdCgpKSwgbGF5b3V0U3RhdGUo
KSk7CisgICAgCisgICAgT3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJldmlvdXNGbG9hdEFic29sdXRl
VG9wOworICAgIGlmICghaXNFbXB0eSgpKQorICAgICAgICBwcmV2aW91c0Zsb2F0QWJzb2x1dGVU
b3AgPSBmbG9hdGluZ1N0YXRlKCkuZmxvYXRzKCkubGFzdCgpLnJlY3RXaXRoTWFyZ2luKCkudG9w
KCk7CisgICAgYXV0byBmbG9hdEJveCA9IEZsb2F0Qm94IHsgbGF5b3V0Qm94LCBhYnNvbHV0ZURp
c3BsYXlCb3hDb29yZGluYXRlcy5kaXNwbGF5Qm94LCBhYnNvbHV0ZURpc3BsYXlCb3hDb29yZGlu
YXRlcy5jb250YWluaW5nQmxvY2tUb3BMZWZ0LCBhYnNvbHV0ZURpc3BsYXlCb3hDb29yZGluYXRl
cy5jb250YWluaW5nQmxvY2tDb250ZW50Qm94LCBwcmV2aW91c0Zsb2F0QWJzb2x1dGVUb3AgfTsK
ICAgICBmaW5kUG9zaXRpb25Gb3JGbG9hdEJveChmbG9hdEJveCk7CiAgICAgcmV0dXJuIGZsb2F0
Qm94LnJlY3RJbkNvbnRhaW5pbmdCbG9jaygpLnRvcExlZnQoKTsKIH0KQEAgLTE5NCw3ICsyMTgs
OCBAQCBPcHRpb25hbDxQb2ludD4gRmxvYXRpbmdDb250ZXh0Ojpwb3NpdGlvbkZvckZvcm1hdHRp
bmdDb250ZXh0Um9vdChjb25zdCBCb3gmIGxheQogICAgIGlmIChpc0VtcHR5KCkpCiAgICAgICAg
IHJldHVybiB7IH07CiAKLSAgICBGbG9hdEF2b2lkZXIgZmxvYXRBdm9pZGVyID0geyBsYXlvdXRC
b3gsIG1fZmxvYXRpbmdTdGF0ZSwgbGF5b3V0U3RhdGUoKSB9OworICAgIGF1dG8gYWJzb2x1dGVE
aXNwbGF5Qm94Q29vcmRpbmF0ZXMgPSBtYXBUb0Zvcm1hdHRpbmdDb250ZXh0Um9vdChsYXlvdXRC
b3gsIGRvd25jYXN0PENvbnRhaW5lcj4obV9mbG9hdGluZ1N0YXRlLnJvb3QoKSksIGxheW91dFN0
YXRlKCkpOworICAgIGF1dG8gZmxvYXRBdm9pZGVyID0gRmxvYXRBdm9pZGVyIHsgbGF5b3V0Qm94
LCBhYnNvbHV0ZURpc3BsYXlCb3hDb29yZGluYXRlcy5kaXNwbGF5Qm94LCBhYnNvbHV0ZURpc3Bs
YXlCb3hDb29yZGluYXRlcy5jb250YWluaW5nQmxvY2tUb3BMZWZ0LCBhYnNvbHV0ZURpc3BsYXlC
b3hDb29yZGluYXRlcy5jb250YWluaW5nQmxvY2tDb250ZW50Qm94IH07CiAgICAgZmluZFBvc2l0
aW9uRm9yRm9ybWF0dGluZ0NvbnRleHRSb290KGZsb2F0QXZvaWRlcik7CiAgICAgcmV0dXJuIHsg
ZmxvYXRBdm9pZGVyLnJlY3RJbkNvbnRhaW5pbmdCbG9jaygpLnRvcExlZnQoKSB9OwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTGF5b3V0UG9pbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0xheW91dFBvaW50LmgKaW5kZXggMmFk
YjQ5NjM3OGExY2U2Mjk4MTMyYjBhNTVkMzI1MjQ0ZTE5M2UwYy4uNmYyZmU1NjZhOWQ1ZWM0YzM2
ZDFlNmE1ZDU1ZWQyNTNhNzQwZWU5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvTGF5b3V0UG9pbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9MYXlvdXRQb2ludC5oCkBAIC00NCw2ICs0NCw3IEBAIHB1YmxpYzoKICAgICBleHBs
aWNpdCBMYXlvdXRQb2ludChjb25zdCBMYXlvdXRTaXplJiBzaXplKSA6IG1feChzaXplLndpZHRo
KCkpLCBtX3koc2l6ZS5oZWlnaHQoKSkgeyB9CiAKICAgICBzdGF0aWMgTGF5b3V0UG9pbnQgemVy
bygpIHsgcmV0dXJuIExheW91dFBvaW50KCk7IH0KKyAgICBib29sIGlzWmVybygpIGNvbnN0IHsg
cmV0dXJuICFtX3ggJiYgIW1feTsgfQogCiAgICAgTGF5b3V0VW5pdCB4KCkgY29uc3QgeyByZXR1
cm4gbV94OyB9CiAgICAgTGF5b3V0VW5pdCB5KCkgY29uc3QgeyByZXR1cm4gbV95OyB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>377910</attachid>
            <date>2019-09-03 11:24:41 -0700</date>
            <delta_ts>2019-09-03 12:21:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201405-20190903112440.patch</filename>
            <type>text/plain</type>
            <size>15778</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5NDMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTNkOTEzOWJhODM3Y2Jm
NjhlZmQwYzc4YzczNjM0ZjI0N2M2YTU4Yi4uNWU4MThhNWE4MDg0Y2YzNWQxNzE4YWExMmJmNWY3
OGZmMDUzOThkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA5LTAzICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bRmxvYXRzXSBEbyBu
b3QgcGFzcyBGbG9hdGluZ1N0YXRlIHRvIEZsb2F0QXZvaWRlci9GbG9hdEJveAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAxNDA1CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS81NDk1NjM4MT4KKworICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2
aXN0by4KKworICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciB0cmFuc2l0aW9uaW5n
IHRoZSBmbG9hdGluZyBjb2RlYmFzZSB0byB1c2UgdGhlIGZvcm1hdHRpbmcgY29udGV4dCBmb3IK
KyAgICAgICAgcmV0cmlldmluZyBkaXNwbGF5IGJveGVzLiBOb3cgRmxvYXRBdm9pZGVycy9GbG9h
dEJveGVzIGRvbid0IG5lZWQgdGhlIEZsb2F0aW5nU3RhdGUgdG8gY29tcHV0ZSBhYnNvbHV0ZSBk
aXNwbGF5IGJveGVzLgorCisgICAgICAgICogbGF5b3V0L2Zsb2F0cy9GbG9hdEF2b2lkZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpGbG9hdEF2b2lkZXI6OkZsb2F0QXZvaWRlcik6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0QXZvaWRlcjo6c2V0SG9yaXpvbnRhbENv
bnN0cmFpbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6RmxvYXRBdm9pZGVyOjppbml0
aWFsSG9yaXpvbnRhbFBvc2l0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6
RmxvYXRBdm9pZGVyOjpvdmVyZmxvd3NDb250YWluaW5nQmxvY2sgY29uc3QpOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0OjpGbG9hdEF2b2lkZXI6OnJlY3RJbkNvbnRhaW5pbmdCbG9jayBjb25z
dCk6CisgICAgICAgICogbGF5b3V0L2Zsb2F0cy9GbG9hdEF2b2lkZXIuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dDo6RmxvYXRBdm9pZGVyOjpmbG9hdGluZ1N0YXRlIGNvbnN0KTogRGVsZXRl
ZC4KKyAgICAgICAgKiBsYXlvdXQvZmxvYXRzL0Zsb2F0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6RmxvYXRCb3g6OkZsb2F0Qm94KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91
dDo6RmxvYXRCb3g6OmluaXRpYWxWZXJ0aWNhbFBvc2l0aW9uIGNvbnN0KToKKyAgICAgICAgKiBs
YXlvdXQvZmxvYXRzL0Zsb2F0Qm94Lmg6CisgICAgICAgICogbGF5b3V0L2Zsb2F0cy9GbG9hdGlu
Z0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjptYXBUb0Zvcm1hdHRpbmdD
b250ZXh0Um9vdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0aW5nQ29udGV4dDo6
cG9zaXRpb25Gb3JGbG9hdCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OkZsb2F0
aW5nQ29udGV4dDo6cG9zaXRpb25Gb3JGb3JtYXR0aW5nQ29udGV4dFJvb3QgY29uc3QpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0xheW91dFBvaW50Lmg6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXRQb2ludDo6aXNaZXJvIGNvbnN0KToKKwogMjAxOS0wOS0wMyAgWmFsYW4gQnVqdGFz
ICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0Zsb2F0c10gTW92ZSBGbG9hdGlu
Z1N0YXRlOjpjb25zdHJhaW50cyB0byBGbG9hdGluZ0NvbnRleHQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRBdm9pZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9mbG9hdHMvRmxvYXRBdm9pZGVyLmNwcAppbmRleCA4NzBjZmY1ZmNmM2QyMmRhMzU2
ZjU3YWJlMjMwN2VhNTJkNDhkYmZmLi5mZjc1NmM4ZGQwMDRiMWQxOGY0YTlhODg5ZmFkMGFkZjU0
OTQxYTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0QXZv
aWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEF2b2lkZXIu
Y3BwCkBAIC0zOCwxMSArMzgsMTEgQEAgbmFtZXNwYWNlIExheW91dCB7CiAKIFdURl9NQUtFX0lT
T19BTExPQ0FURURfSU1QTChGbG9hdEF2b2lkZXIpOwogCi1GbG9hdEF2b2lkZXI6OkZsb2F0QXZv
aWRlcihjb25zdCBCb3gmIGxheW91dEJveCwgY29uc3QgRmxvYXRpbmdTdGF0ZSYgZmxvYXRpbmdT
dGF0ZSwgY29uc3QgTGF5b3V0U3RhdGUmIGxheW91dFN0YXRlKQorRmxvYXRBdm9pZGVyOjpGbG9h
dEF2b2lkZXIoY29uc3QgQm94JiBsYXlvdXRCb3gsIERpc3BsYXk6OkJveCBhYnNvbHV0ZURpc3Bs
YXlCb3gsIExheW91dFBvaW50IGNvbnRhaW5pbmdCbG9ja0Fic29sdXRlVG9wTGVmdCwgSG9yaXpv
bnRhbEVkZ2VzIGNvbnRhaW5pbmdCbG9ja0Fic29sdXRlQ29udGVudEJveCkKICAgICA6IG1fbGF5
b3V0Qm94KG1ha2VXZWFrUHRyKGxheW91dEJveCkpCi0gICAgLCBtX2Zsb2F0aW5nU3RhdGUoZmxv
YXRpbmdTdGF0ZSkKLSAgICAsIG1fYWJzb2x1dGVEaXNwbGF5Qm94KEZvcm1hdHRpbmdDb250ZXh0
OjptYXBCb3hUb0FuY2VzdG9yKGxheW91dFN0YXRlLCBsYXlvdXRCb3gsIGRvd25jYXN0PENvbnRh
aW5lcj4oZmxvYXRpbmdTdGF0ZS5yb290KCkpKSkKLSAgICAsIG1fY29udGFpbmluZ0Jsb2NrQWJz
b2x1dGVEaXNwbGF5Qm94KGxheW91dEJveC5jb250YWluaW5nQmxvY2soKSA9PSAmZmxvYXRpbmdT
dGF0ZS5yb290KCkgPyBEaXNwbGF5OjpCb3gobGF5b3V0U3RhdGUuZGlzcGxheUJveEZvckxheW91
dEJveCgqbGF5b3V0Qm94LmNvbnRhaW5pbmdCbG9jaygpKSkgOiBGb3JtYXR0aW5nQ29udGV4dDo6
bWFwQm94VG9BbmNlc3RvcihsYXlvdXRTdGF0ZSwgKmxheW91dEJveC5jb250YWluaW5nQmxvY2so
KSwgZG93bmNhc3Q8Q29udGFpbmVyPihmbG9hdGluZ1N0YXRlLnJvb3QoKSkpKQorICAgICwgbV9h
YnNvbHV0ZURpc3BsYXlCb3goYWJzb2x1dGVEaXNwbGF5Qm94KQorICAgICwgbV9jb250YWluaW5n
QmxvY2tBYnNvbHV0ZVRvcExlZnQoY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVUb3BMZWZ0KQorICAg
ICwgbV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZUNvbnRlbnRCb3goY29udGFpbmluZ0Jsb2NrQWJz
b2x1dGVDb250ZW50Qm94KQogewogICAgIEFTU0VSVChtX2xheW91dEJveC0+ZXN0YWJsaXNoZXNC
bG9ja0Zvcm1hdHRpbmdDb250ZXh0KCkpOwogICAgIG1fYWJzb2x1dGVEaXNwbGF5Qm94LnNldExl
ZnQoeyBpbml0aWFsSG9yaXpvbnRhbFBvc2l0aW9uKCkgfSk7CkBAIC01OSwxMyArNTksMTEgQEAg
dm9pZCBGbG9hdEF2b2lkZXI6OnNldEhvcml6b250YWxDb25zdHJhaW50cyhIb3Jpem9udGFsQ29u
c3RyYWludHMgaG9yaXpvbnRhbENvbnMKICAgICBhdXRvIGNvbnN0cmFpbldpdGhDb250YWluaW5n
QmxvY2sgPSBbJl0oYXV0byBsZWZ0KSAtPiBQb3NpdGlvbkluQ29udGV4dFJvb3QgewogICAgICAg
ICAvLyBIb3Jpem9udGFsIHBvc2l0aW9uIGlzIGNvbnN0cmFpbmVkIGJ5IHRoZSBjb250YWluaW5n
IGJsb2NrJ3MgY29udGVudCBib3guCiAgICAgICAgIC8vIENvbXB1dGUgdGhlIGhvcml6b250YWwg
cG9zaXRpb24gZm9yIHRoZSBuZXcgZmxvYXRpbmcgYnkgdGFraW5nIGJvdGggdGhlIGNvbnRpbmlu
ZyBibG9jayBhbmQgdGhlIGN1cnJlbnQgbGVmdC9yaWdodCBmbG9hdHMgaW50byBhY2NvdW50Lgot
ICAgICAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hMZWZ0ID0gbV9jb250YWluaW5n
QmxvY2tBYnNvbHV0ZURpc3BsYXlCb3gubGVmdCgpICsgbV9jb250YWluaW5nQmxvY2tBYnNvbHV0
ZURpc3BsYXlCb3guY29udGVudEJveExlZnQoKTsKICAgICAgICAgaWYgKGlzTGVmdEFsaWduZWQo
KSkKLSAgICAgICAgICAgIHJldHVybiBzdGQ6Om1heDxQb3NpdGlvbkluQ29udGV4dFJvb3Q+KHsg
Y29udGFpbmluZ0Jsb2NrQ29udGVudEJveExlZnQgKyBtYXJnaW5TdGFydCgpIH0sIGxlZnQpOwor
ICAgICAgICAgICAgcmV0dXJuIHN0ZDo6bWF4PFBvc2l0aW9uSW5Db250ZXh0Um9vdD4oeyBtX2Nv
bnRhaW5pbmdCbG9ja0Fic29sdXRlQ29udGVudEJveC5sZWZ0ICsgbWFyZ2luU3RhcnQoKSB9LCBs
ZWZ0KTsKIAogICAgICAgICAvLyBNYWtlIHN1cmUgaXQgZG9lcyBub3Qgb3ZlcmZsb3cgdGhlIGNv
bnRhaW5pbmcgYmxvY2sgb24gdGhlIHJpZ2h0LgotICAgICAgICBhdXRvIGNvbnRhaW5pbmdCbG9j
a0NvbnRlbnRCb3hSaWdodCA9IGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hMZWZ0ICsgbV9jb250
YWluaW5nQmxvY2tBYnNvbHV0ZURpc3BsYXlCb3guY29udGVudEJveFdpZHRoKCk7Ci0gICAgICAg
IHJldHVybiBzdGQ6Om1pbjxQb3NpdGlvbkluQ29udGV4dFJvb3Q+KGxlZnQsIHsgY29udGFpbmlu
Z0Jsb2NrQ29udGVudEJveFJpZ2h0IC0gbWFyZ2luQm94V2lkdGgoKSArIG1hcmdpblN0YXJ0KCkg
fSk7CisgICAgICAgIHJldHVybiBzdGQ6Om1pbjxQb3NpdGlvbkluQ29udGV4dFJvb3Q+KGxlZnQs
IHsgbV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZUNvbnRlbnRCb3gucmlnaHQgLSBtYXJnaW5Cb3hX
aWR0aCgpICsgbWFyZ2luU3RhcnQoKSB9KTsKICAgICB9OwogCiAgICAgYXV0byBwb3NpdGlvbkNh
bmRpZGF0ZSA9IGhvcml6b250YWxQb3NpdGlvbkNhbmRpZGF0ZShob3Jpem9udGFsQ29uc3RyYWlu
dHMpOwpAQCAtOTAsMzggKzg4LDMwIEBAIFBvc2l0aW9uSW5Db250ZXh0Um9vdCBGbG9hdEF2b2lk
ZXI6OnZlcnRpY2FsUG9zaXRpb25DYW5kaWRhdGUoUG9zaXRpb25JbkNvbnRleHRSCiBQb3NpdGlv
bkluQ29udGV4dFJvb3QgRmxvYXRBdm9pZGVyOjppbml0aWFsSG9yaXpvbnRhbFBvc2l0aW9uKCkg
Y29uc3QKIHsKICAgICAvLyBBbGlnbiB0aGUgYm94IHdpdGggdGhlIGNvbnRhaW5pbmcgYmxvY2sn
cyBjb250ZW50IGJveC4KLSAgICBhdXRvIGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hMZWZ0ID0g
bV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZURpc3BsYXlCb3gubGVmdCgpICsgbV9jb250YWluaW5n
QmxvY2tBYnNvbHV0ZURpc3BsYXlCb3guY29udGVudEJveExlZnQoKTsKLSAgICBhdXRvIGNvbnRh
aW5pbmdCbG9ja0NvbnRlbnRCb3hSaWdodCA9IGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hMZWZ0
ICsgbV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZURpc3BsYXlCb3guY29udGVudEJveFdpZHRoKCk7
Ci0KLSAgICBhdXRvIGxlZnQgPSBpc0xlZnRBbGlnbmVkKCkgPyBjb250YWluaW5nQmxvY2tDb250
ZW50Qm94TGVmdCA6IGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hSaWdodCAtIG1hcmdpbkJveFdp
ZHRoKCk7CisgICAgYXV0byBsZWZ0ID0gaXNMZWZ0QWxpZ25lZCgpID8gbV9jb250YWluaW5nQmxv
Y2tBYnNvbHV0ZUNvbnRlbnRCb3gubGVmdCA6IG1fY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVDb250
ZW50Qm94LnJpZ2h0IC0gbWFyZ2luQm94V2lkdGgoKTsKICAgICBsZWZ0ICs9IG1hcmdpblN0YXJ0
KCk7Ci0KICAgICByZXR1cm4geyBsZWZ0IH07CiB9CiAKIGJvb2wgRmxvYXRBdm9pZGVyOjpvdmVy
Zmxvd3NDb250YWluaW5nQmxvY2soKSBjb25zdAogewotICAgIGF1dG8gY29udGFpbmluZ0Jsb2Nr
Q29udGVudEJveExlZnQgPSBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5sZWZ0
KCkgKyBtX2NvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC5jb250ZW50Qm94TGVmdCgp
OwogICAgIGF1dG8gbGVmdCA9IGRpc3BsYXlCb3goKS5sZWZ0KCkgLSBtYXJnaW5TdGFydCgpOwot
Ci0gICAgaWYgKGNvbnRhaW5pbmdCbG9ja0NvbnRlbnRCb3hMZWZ0ID4gbGVmdCkKKyAgICBpZiAo
bV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZUNvbnRlbnRCb3gubGVmdCA+IGxlZnQpCiAgICAgICAg
IHJldHVybiB0cnVlOwogCi0gICAgYXV0byBjb250YWluaW5nQmxvY2tDb250ZW50Qm94UmlnaHQg
PSBjb250YWluaW5nQmxvY2tDb250ZW50Qm94TGVmdCArIG1fY29udGFpbmluZ0Jsb2NrQWJzb2x1
dGVEaXNwbGF5Qm94LmNvbnRlbnRCb3hXaWR0aCgpOwogICAgIGF1dG8gcmlnaHQgPSBkaXNwbGF5
Qm94KCkucmlnaHQoKSArIG1hcmdpbkVuZCgpOwotCi0gICAgcmV0dXJuIGNvbnRhaW5pbmdCbG9j
a0NvbnRlbnRCb3hSaWdodCA8IHJpZ2h0OworICAgIHJldHVybiBtX2NvbnRhaW5pbmdCbG9ja0Fi
c29sdXRlQ29udGVudEJveC5yaWdodCA8IHJpZ2h0OwogfQogCiBEaXNwbGF5OjpSZWN0IEZsb2F0
QXZvaWRlcjo6cmVjdEluQ29udGFpbmluZ0Jsb2NrKCkgY29uc3QKIHsKICAgICAvLyBGcm9tIGZv
cm1hdHRpbmcgcm9vdCBjb29yZGluYXRlIHN5c3RlbSBiYWNrIHRvIGNvbnRhaW5pbmcgYmxvY2sn
cy4KLSAgICBpZiAobGF5b3V0Qm94KCkuY29udGFpbmluZ0Jsb2NrKCkgPT0gJmZsb2F0aW5nU3Rh
dGUoKS5yb290KCkpCisgICAgaWYgKG1fY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVUb3BMZWZ0Lmlz
WmVybygpKQogICAgICAgICByZXR1cm4gbV9hYnNvbHV0ZURpc3BsYXlCb3gucmVjdCgpOwogCiAg
ICAgcmV0dXJuIHsKLSAgICAgICAgbV9hYnNvbHV0ZURpc3BsYXlCb3gudG9wKCkgLSBtX2NvbnRh
aW5pbmdCbG9ja0Fic29sdXRlRGlzcGxheUJveC50b3AoKSwKLSAgICAgICAgbV9hYnNvbHV0ZURp
c3BsYXlCb3gubGVmdCgpIC0gbV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZURpc3BsYXlCb3gubGVm
dCgpLAorICAgICAgICBtX2Fic29sdXRlRGlzcGxheUJveC50b3AoKSAtIG1fY29udGFpbmluZ0Js
b2NrQWJzb2x1dGVUb3BMZWZ0LnkoKSwKKyAgICAgICAgbV9hYnNvbHV0ZURpc3BsYXlCb3gubGVm
dCgpIC0gbV9jb250YWluaW5nQmxvY2tBYnNvbHV0ZVRvcExlZnQueCgpLAogICAgICAgICBtX2Fi
c29sdXRlRGlzcGxheUJveC53aWR0aCgpLAogICAgICAgICBtX2Fic29sdXRlRGlzcGxheUJveC5o
ZWlnaHQoKQogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxvYXRz
L0Zsb2F0QXZvaWRlci5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEF2b2lk
ZXIuaAppbmRleCA2ZWQ5ZDQzZDNiZmZhYjkzYTBkODhkODY3MWY0ZTgwN2IwMjM1MWJjLi5mNGQz
ZTI3MzgxNmRjYzAyYTRlMTU2NDc3NjBkOWMyYzJiYzgzNjkyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0QXZvaWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9mbG9hdHMvRmxvYXRBdm9pZGVyLmgKQEAgLTQzLDcgKzQzLDcgQEAgY2xhc3MgTGF5
b3V0U3RhdGU7CiBjbGFzcyBGbG9hdEF2b2lkZXIgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FU
RUQoRmxvYXRBdm9pZGVyKTsKIHB1YmxpYzoKLSAgICBGbG9hdEF2b2lkZXIoY29uc3QgQm94Jiwg
Y29uc3QgRmxvYXRpbmdTdGF0ZSYsIGNvbnN0IExheW91dFN0YXRlJik7CisgICAgRmxvYXRBdm9p
ZGVyKGNvbnN0IEJveCYsIERpc3BsYXk6OkJveCBhYnNvbHV0ZURpc3BsYXlCb3gsIExheW91dFBv
aW50IGNvbnRhaW5pbmdCbG9ja0Fic29sdXRlVG9wTGVmdCwgSG9yaXpvbnRhbEVkZ2VzIGNvbnRh
aW5pbmdCbG9ja0Fic29sdXRlQ29udGVudEJveCk7CiAgICAgdmlydHVhbCB+RmxvYXRBdm9pZGVy
KCkgPSBkZWZhdWx0OwogCiAgICAgdmlydHVhbCBEaXNwbGF5OjpSZWN0IHJlY3QoKSBjb25zdCB7
IHJldHVybiBtX2Fic29sdXRlRGlzcGxheUJveC5yZWN0KCk7IH0KQEAgLTc1LDE2ICs3NSwxNiBA
QCBwcm90ZWN0ZWQ6CiAKICAgICBMYXlvdXRVbml0IG1hcmdpbkJveFdpZHRoKCkgY29uc3QgeyBy
ZXR1cm4gbWFyZ2luU3RhcnQoKSArIGRpc3BsYXlCb3goKS53aWR0aCgpICsgbWFyZ2luRW5kKCk7
IH0KIAotICAgIGNvbnN0IEZsb2F0aW5nU3RhdGUmIGZsb2F0aW5nU3RhdGUoKSBjb25zdCB7IHJl
dHVybiBtX2Zsb2F0aW5nU3RhdGU7IH0KICAgICBjb25zdCBCb3gmIGxheW91dEJveCgpIGNvbnN0
IHsgcmV0dXJuICptX2xheW91dEJveDsgfQogICAgIGNvbnN0IERpc3BsYXk6OkJveCYgZGlzcGxh
eUJveCgpIGNvbnN0IHsgcmV0dXJuIG1fYWJzb2x1dGVEaXNwbGF5Qm94OyB9CiAgICAgRGlzcGxh
eTo6Qm94JiBkaXNwbGF5Qm94KCkgeyByZXR1cm4gbV9hYnNvbHV0ZURpc3BsYXlCb3g7IH0KIAog
cHJpdmF0ZToKICAgICBXZWFrUHRyPGNvbnN0IEJveD4gbV9sYXlvdXRCb3g7Ci0gICAgY29uc3Qg
RmxvYXRpbmdTdGF0ZSYgbV9mbG9hdGluZ1N0YXRlOworICAgIC8vIFRoZXNlIGNvb3JkaW5hdGUg
dmFsdWVzIGFyZSByZWxhdGl2ZSB0byB0aGUgZm9ybWF0dGluZyByb290J3MgYm9yZGVyIGJveC4K
ICAgICBEaXNwbGF5OjpCb3ggbV9hYnNvbHV0ZURpc3BsYXlCb3g7Ci0gICAgRGlzcGxheTo6Qm94
IG1fY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVEaXNwbGF5Qm94OworICAgIExheW91dFBvaW50IG1f
Y29udGFpbmluZ0Jsb2NrQWJzb2x1dGVUb3BMZWZ0OworICAgIEhvcml6b250YWxFZGdlcyBtX2Nv
bnRhaW5pbmdCbG9ja0Fic29sdXRlQ29udGVudEJveDsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRCb3guY3BwIGIvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2Zsb2F0cy9GbG9hdEJveC5jcHAKaW5kZXggYjJlODZjMTUyMTY3YzNlYTIzZGE3NDk4
YzY3N2ZmNDQ5M2ZmZDhlZi4uMzlhNmYyMWY2ZjRjY2U5ZDI5MWQ0MTQ5MWFiMDgzMmIxMzg4NmIy
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEJveC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEJveC5jcHAKQEAgLTM1LDEw
ICszNSwxMCBAQCBuYW1lc3BhY2UgTGF5b3V0IHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9J
TVBMKEZsb2F0Qm94KTsKIAotRmxvYXRCb3g6OkZsb2F0Qm94KGNvbnN0IEJveCYgbGF5b3V0Qm94
LCBjb25zdCBGbG9hdGluZ1N0YXRlJiBmbG9hdGluZ1N0YXRlLCBjb25zdCBMYXlvdXRTdGF0ZSYg
bGF5b3V0U3RhdGUpCi0gICAgOiBGbG9hdEF2b2lkZXIobGF5b3V0Qm94LCBmbG9hdGluZ1N0YXRl
LCBsYXlvdXRTdGF0ZSkKK0Zsb2F0Qm94OjpGbG9hdEJveChjb25zdCBCb3gmIGxheW91dEJveCwg
RGlzcGxheTo6Qm94IGFic29sdXRlRGlzcGxheUJveCwgTGF5b3V0UG9pbnQgY29udGFpbmluZ0Js
b2NrQWJzb2x1dGVUb3BMZWZ0LCBIb3Jpem9udGFsRWRnZXMgY29udGFpbmluZ0Jsb2NrQWJzb2x1
dGVDb250ZW50Qm94LCBPcHRpb25hbDxMYXlvdXRVbml0PiBwcmV2aW91c0Zsb2F0QWJzb2x1dGVU
b3ApCisgICAgOiBGbG9hdEF2b2lkZXIobGF5b3V0Qm94LCBhYnNvbHV0ZURpc3BsYXlCb3gsIGNv
bnRhaW5pbmdCbG9ja0Fic29sdXRlVG9wTGVmdCwgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVDb250
ZW50Qm94KQogewotICAgIGRpc3BsYXlCb3goKS5zZXRUb3BMZWZ0KHsgaW5pdGlhbEhvcml6b250
YWxQb3NpdGlvbigpLCBpbml0aWFsVmVydGljYWxQb3NpdGlvbigpIH0pOworICAgIGRpc3BsYXlC
b3goKS5zZXRUb3BMZWZ0KHsgaW5pdGlhbEhvcml6b250YWxQb3NpdGlvbigpLCBpbml0aWFsVmVy
dGljYWxQb3NpdGlvbihwcmV2aW91c0Zsb2F0QWJzb2x1dGVUb3ApIH0pOwogfQogCiBEaXNwbGF5
OjpSZWN0IEZsb2F0Qm94OjpyZWN0KCkgY29uc3QKQEAgLTYwLDEzICs2MCwxMyBAQCBQb3NpdGlv
bkluQ29udGV4dFJvb3QgRmxvYXRCb3g6OnZlcnRpY2FsUG9zaXRpb25DYW5kaWRhdGUoUG9zaXRp
b25JbkNvbnRleHRSb290CiAgICAgcmV0dXJuIHsgdmVydGljYWxDb25zdHJhaW50ICsgbWFyZ2lu
QmVmb3JlKCkgfTsKIH0KIAotUG9zaXRpb25JbkNvbnRleHRSb290IEZsb2F0Qm94Ojppbml0aWFs
VmVydGljYWxQb3NpdGlvbigpIGNvbnN0CitQb3NpdGlvbkluQ29udGV4dFJvb3QgRmxvYXRCb3g6
OmluaXRpYWxWZXJ0aWNhbFBvc2l0aW9uKE9wdGlvbmFsPExheW91dFVuaXQ+IHByZXZpb3VzRmxv
YXRBYnNvbHV0ZVRvcCkgY29uc3QKIHsKICAgICAvLyBJbmNvbWluZyBmbG9hdCBjYW5ub3QgYmUg
cGxhY2VkIGhpZ2hlciB0aGFuIGV4aXN0aW5nIGZsb2F0cyAobWFyZ2luIGJveCBvZiB0aGUgbGFz
dCBmbG9hdCkuCiAgICAgLy8gVGFrZSB0aGUgc3RhdGljIHBvc2l0aW9uICh3aGVyZSB0aGUgYm94
IHdvdWxkIGdvIGlmIGl0IHdhc24ndCBmbG9hdGluZykgYW5kIGFkanVzdCBpdCB3aXRoIHRoZSBs
YXN0IGZsb2F0LgogICAgIGF1dG8gdG9wID0gZGlzcGxheUJveCgpLnRvcCgpIC0gbWFyZ2luQmVm
b3JlKCk7Ci0gICAgaWYgKGF1dG8gbGFzdEZsb2F0ID0gZmxvYXRpbmdTdGF0ZSgpLmxhc3QoKSkK
LSAgICAgICAgdG9wID0gc3RkOjptYXgodG9wLCBsYXN0RmxvYXQtPnJlY3RXaXRoTWFyZ2luKCku
dG9wKCkpOworICAgIGlmIChwcmV2aW91c0Zsb2F0QWJzb2x1dGVUb3ApCisgICAgICAgIHRvcCA9
IHN0ZDo6bWF4KHRvcCwgKnByZXZpb3VzRmxvYXRBYnNvbHV0ZVRvcCk7CiAgICAgdG9wICs9IG1h
cmdpbkJlZm9yZSgpOwogCiAgICAgcmV0dXJuIHsgdG9wIH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvZmxvYXRzL0Zsb2F0Qm94LmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
ZmxvYXRzL0Zsb2F0Qm94LmgKaW5kZXggOTdkMjE1MDc1YmVkMTg0ZTM4YWFmZDRkMTczMDQ1Mjdi
NWEwMGUwMC4uZmI4ODgyMzdhYTdjYTI5YmVjNzE0YzcxOTc1ZmY3NDQ2NmRkNWEyMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdEJveC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9mbG9hdHMvRmxvYXRCb3guaApAQCAtNDEsNyArNDEsNyBAQCBjbGFz
cyBMYXlvdXRTdGF0ZTsKIGNsYXNzIEZsb2F0Qm94IDogcHVibGljIEZsb2F0QXZvaWRlciB7CiAg
ICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChGbG9hdEJveCk7CiBwdWJsaWM6Ci0gICAgRmxvYXRC
b3goY29uc3QgQm94JiwgY29uc3QgRmxvYXRpbmdTdGF0ZSYsIGNvbnN0IExheW91dFN0YXRlJik7
CisgICAgRmxvYXRCb3goY29uc3QgQm94JiwgRGlzcGxheTo6Qm94IGFic29sdXRlRGlzcGxheUJv
eCwgTGF5b3V0UG9pbnQgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVUb3BMZWZ0LCBIb3Jpem9udGFs
RWRnZXMgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVDb250ZW50Qm94LCBPcHRpb25hbDxMYXlvdXRV
bml0PiBwcmV2aW91c0Zsb2F0QWJzb2x1dGVUb3ApOwogCiAgICAgRGlzcGxheTo6UmVjdCByZWN0
KCkgY29uc3QgZmluYWw7CiAKQEAgLTUxLDcgKzUxLDcgQEAgcHJpdmF0ZToKICAgICBQb3NpdGlv
bkluQ29udGV4dFJvb3QgaG9yaXpvbnRhbFBvc2l0aW9uQ2FuZGlkYXRlKEhvcml6b250YWxDb25z
dHJhaW50cykgZmluYWw7CiAgICAgUG9zaXRpb25JbkNvbnRleHRSb290IHZlcnRpY2FsUG9zaXRp
b25DYW5kaWRhdGUoUG9zaXRpb25JbkNvbnRleHRSb290KSBmaW5hbDsKIAotICAgIFBvc2l0aW9u
SW5Db250ZXh0Um9vdCBpbml0aWFsVmVydGljYWxQb3NpdGlvbigpIGNvbnN0OworICAgIFBvc2l0
aW9uSW5Db250ZXh0Um9vdCBpbml0aWFsVmVydGljYWxQb3NpdGlvbihPcHRpb25hbDxMYXlvdXRV
bml0PiBwcmV2aW91c0Zsb2F0QWJzb2x1dGVUb3ApIGNvbnN0OwogfTsKIAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdGluZ0NvbnRleHQuY3BwIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2Zsb2F0cy9GbG9hdGluZ0NvbnRleHQuY3BwCmluZGV4IDRiOGE4
MjhmN2E3YTRmYWYzMmI3MmZhYTA5YTJhMmI5MDM1OTMxNzguLjgwYTkzZjg2MGQ3MTcyMTAxNTkx
MTEzNmU5ZGRhMmQyOGE5OTZiZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9m
bG9hdHMvRmxvYXRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZmxv
YXRzL0Zsb2F0aW5nQ29udGV4dC5jcHAKQEAgLTE1MCw2ICsxNTAsMjUgQEAgc3RhdGljIGJvb2wg
YXJlRmxvYXRzSG9yaXpvbnRhbGx5U29ydGVkKGNvbnN0IEZsb2F0aW5nU3RhdGUmIGZsb2F0aW5n
U3RhdGUpCiB9CiAjZW5kaWYKIAorc3RydWN0IEFic29sdXRlQ29vcmRpbmF0ZVZhbHVlc0ZvckZs
b2F0QXZvaWRlciB7CisgICAgRGlzcGxheTo6Qm94IGRpc3BsYXlCb3g7CisgICAgTGF5b3V0UG9p
bnQgY29udGFpbmluZ0Jsb2NrVG9wTGVmdDsKKyAgICBIb3Jpem9udGFsRWRnZXMgY29udGFpbmlu
Z0Jsb2NrQ29udGVudEJveDsKK307CitzdGF0aWMgQWJzb2x1dGVDb29yZGluYXRlVmFsdWVzRm9y
RmxvYXRBdm9pZGVyIG1hcFRvRm9ybWF0dGluZ0NvbnRleHRSb290KGNvbnN0IEJveCYgbGF5b3V0
Qm94LCBjb25zdCBDb250YWluZXImIGZvcm1hdHRpbmdDb250ZXh0Um9vdCwgY29uc3QgTGF5b3V0
U3RhdGUmIGxheW91dFN0YXRlKQoreworICAgIGF1dG8mIGNvbnRhaW5pbmdCbG9jayA9ICpsYXlv
dXRCb3guY29udGFpbmluZ0Jsb2NrKCk7CisgICAgYXV0byBkaXNwbGF5Qm94ID0gRm9ybWF0dGlu
Z0NvbnRleHQ6Om1hcEJveFRvQW5jZXN0b3IobGF5b3V0U3RhdGUsIGxheW91dEJveCwgZm9ybWF0
dGluZ0NvbnRleHRSb290KTsKKworICAgIGlmICgmY29udGFpbmluZ0Jsb2NrID09ICZmb3JtYXR0
aW5nQ29udGV4dFJvb3QpIHsKKyAgICAgICAgYXV0byBjb250YWluaW5nQmxvY2tEaXNwbGF5Qm94
ID0gbGF5b3V0U3RhdGUuZGlzcGxheUJveEZvckxheW91dEJveChjb250YWluaW5nQmxvY2spOwor
ICAgICAgICByZXR1cm4geyBkaXNwbGF5Qm94LCB7IH0sIHsgIGNvbnRhaW5pbmdCbG9ja0Rpc3Bs
YXlCb3guY29udGVudEJveExlZnQoKSwgY29udGFpbmluZ0Jsb2NrRGlzcGxheUJveC5jb250ZW50
Qm94UmlnaHQoKSB9IH07CisgICAgfQorICAgIGF1dG8gY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVE
aXNwbGF5Qm94ID0gRm9ybWF0dGluZ0NvbnRleHQ6Om1hcEJveFRvQW5jZXN0b3IobGF5b3V0U3Rh
dGUsIGNvbnRhaW5pbmdCbG9jaywgZm9ybWF0dGluZ0NvbnRleHRSb290KTsKKyAgICBhdXRvIGNv
bnRhaW5pbmdCbG9ja0xlZnQgPSBjb250YWluaW5nQmxvY2tBYnNvbHV0ZURpc3BsYXlCb3gubGVm
dCgpOworICAgIHJldHVybiB7IGRpc3BsYXlCb3gsIGNvbnRhaW5pbmdCbG9ja0Fic29sdXRlRGlz
cGxheUJveC50b3BMZWZ0KCksIHsgY29udGFpbmluZ0Jsb2NrTGVmdCArIGNvbnRhaW5pbmdCbG9j
a0Fic29sdXRlRGlzcGxheUJveC5jb250ZW50Qm94TGVmdCgpLCBjb250YWluaW5nQmxvY2tMZWZ0
ICsgY29udGFpbmluZ0Jsb2NrQWJzb2x1dGVEaXNwbGF5Qm94LmNvbnRlbnRCb3hSaWdodCgpIH0g
fTsKK30KKwogRmxvYXRpbmdDb250ZXh0OjpGbG9hdGluZ0NvbnRleHQoY29uc3QgQ29udGFpbmVy
JiBmb3JtYXR0aW5nQ29udGV4dFJvb3QsIEZsb2F0aW5nU3RhdGUmIGZsb2F0aW5nU3RhdGUpCiAg
ICAgOiBtX3Jvb3QobWFrZVdlYWtQdHIoZm9ybWF0dGluZ0NvbnRleHRSb290KSkKICAgICAsIG1f
ZmxvYXRpbmdTdGF0ZShmbG9hdGluZ1N0YXRlKQpAQCAtMTc5LDcgKzE5OCwxMiBAQCBQb2ludCBG
bG9hdGluZ0NvbnRleHQ6OnBvc2l0aW9uRm9yRmxvYXQoY29uc3QgQm94JiBsYXlvdXRCb3gpIGNv
bnN0CiAgICAgfQogCiAgICAgLy8gRmluZCB0aGUgdG9wIG1vc3QgcG9zaXRpb24gd2hlcmUgdGhl
IGZsb2F0IGJveCBmaXRzLgotICAgIEZsb2F0Qm94IGZsb2F0Qm94ID0geyBsYXlvdXRCb3gsIG1f
ZmxvYXRpbmdTdGF0ZSwgbGF5b3V0U3RhdGUoKSB9OworICAgIGF1dG8gYWJzb2x1dGVEaXNwbGF5
Qm94Q29vcmRpbmF0ZXMgPSBtYXBUb0Zvcm1hdHRpbmdDb250ZXh0Um9vdChsYXlvdXRCb3gsIGRv
d25jYXN0PENvbnRhaW5lcj4obV9mbG9hdGluZ1N0YXRlLnJvb3QoKSksIGxheW91dFN0YXRlKCkp
OworCisgICAgT3B0aW9uYWw8TGF5b3V0VW5pdD4gcHJldmlvdXNGbG9hdEFic29sdXRlVG9wOwor
ICAgIGlmICghaXNFbXB0eSgpKQorICAgICAgICBwcmV2aW91c0Zsb2F0QWJzb2x1dGVUb3AgPSBm
bG9hdGluZ1N0YXRlKCkuZmxvYXRzKCkubGFzdCgpLnJlY3RXaXRoTWFyZ2luKCkudG9wKCk7Cisg
ICAgYXV0byBmbG9hdEJveCA9IEZsb2F0Qm94IHsgbGF5b3V0Qm94LCBhYnNvbHV0ZURpc3BsYXlC
b3hDb29yZGluYXRlcy5kaXNwbGF5Qm94LCBhYnNvbHV0ZURpc3BsYXlCb3hDb29yZGluYXRlcy5j
b250YWluaW5nQmxvY2tUb3BMZWZ0LCBhYnNvbHV0ZURpc3BsYXlCb3hDb29yZGluYXRlcy5jb250
YWluaW5nQmxvY2tDb250ZW50Qm94LCBwcmV2aW91c0Zsb2F0QWJzb2x1dGVUb3AgfTsKICAgICBm
aW5kUG9zaXRpb25Gb3JGbG9hdEJveChmbG9hdEJveCk7CiAgICAgcmV0dXJuIGZsb2F0Qm94LnJl
Y3RJbkNvbnRhaW5pbmdCbG9jaygpLnRvcExlZnQoKTsKIH0KQEAgLTE5NCw3ICsyMTgsOCBAQCBP
cHRpb25hbDxQb2ludD4gRmxvYXRpbmdDb250ZXh0Ojpwb3NpdGlvbkZvckZvcm1hdHRpbmdDb250
ZXh0Um9vdChjb25zdCBCb3gmIGxheQogICAgIGlmIChpc0VtcHR5KCkpCiAgICAgICAgIHJldHVy
biB7IH07CiAKLSAgICBGbG9hdEF2b2lkZXIgZmxvYXRBdm9pZGVyID0geyBsYXlvdXRCb3gsIG1f
ZmxvYXRpbmdTdGF0ZSwgbGF5b3V0U3RhdGUoKSB9OworICAgIGF1dG8gYWJzb2x1dGVEaXNwbGF5
Qm94Q29vcmRpbmF0ZXMgPSBtYXBUb0Zvcm1hdHRpbmdDb250ZXh0Um9vdChsYXlvdXRCb3gsIGRv
d25jYXN0PENvbnRhaW5lcj4obV9mbG9hdGluZ1N0YXRlLnJvb3QoKSksIGxheW91dFN0YXRlKCkp
OworICAgIGF1dG8gZmxvYXRBdm9pZGVyID0gRmxvYXRBdm9pZGVyIHsgbGF5b3V0Qm94LCBhYnNv
bHV0ZURpc3BsYXlCb3hDb29yZGluYXRlcy5kaXNwbGF5Qm94LCBhYnNvbHV0ZURpc3BsYXlCb3hD
b29yZGluYXRlcy5jb250YWluaW5nQmxvY2tUb3BMZWZ0LCBhYnNvbHV0ZURpc3BsYXlCb3hDb29y
ZGluYXRlcy5jb250YWluaW5nQmxvY2tDb250ZW50Qm94IH07CiAgICAgZmluZFBvc2l0aW9uRm9y
Rm9ybWF0dGluZ0NvbnRleHRSb290KGZsb2F0QXZvaWRlcik7CiAgICAgcmV0dXJuIHsgZmxvYXRB
dm9pZGVyLnJlY3RJbkNvbnRhaW5pbmdCbG9jaygpLnRvcExlZnQoKSB9OwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTGF5b3V0UG9pbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0xheW91dFBvaW50LmgKaW5kZXggMmFkYjQ5NjM3
OGExY2U2Mjk4MTMyYjBhNTVkMzI1MjQ0ZTE5M2UwYy4uNmYyZmU1NjZhOWQ1ZWM0YzM2ZDFlNmE1
ZDU1ZWQyNTNhNzQwZWU5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTGF5b3V0UG9pbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9MYXlvdXRQb2ludC5oCkBAIC00NCw2ICs0NCw3IEBAIHB1YmxpYzoKICAgICBleHBsaWNpdCBM
YXlvdXRQb2ludChjb25zdCBMYXlvdXRTaXplJiBzaXplKSA6IG1feChzaXplLndpZHRoKCkpLCBt
X3koc2l6ZS5oZWlnaHQoKSkgeyB9CiAKICAgICBzdGF0aWMgTGF5b3V0UG9pbnQgemVybygpIHsg
cmV0dXJuIExheW91dFBvaW50KCk7IH0KKyAgICBib29sIGlzWmVybygpIGNvbnN0IHsgcmV0dXJu
ICFtX3ggJiYgIW1feTsgfQogCiAgICAgTGF5b3V0VW5pdCB4KCkgY29uc3QgeyByZXR1cm4gbV94
OyB9CiAgICAgTGF5b3V0VW5pdCB5KCkgY29uc3QgeyByZXR1cm4gbV95OyB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>