<?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>228059</bug_id>
          
          <creation_ts>2021-07-18 10:32:50 -0700</creation_ts>
          <short_desc>[LFC][IFC] Line spanning inline boxes should also be in the run list</short_desc>
          <delta_ts>2021-08-25 12:50:44 -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>1777760</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2021-07-18 10:32:50 -0700</bug_when>
    <thetext>IFC should provide the line spanning inline boxes in the run list so that the integration (or other FC) code should not need to looking into the line box to extract the inline boxes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1777761</commentid>
    <comment_count>1</comment_count>
      <attachid>433753</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-07-18 10:43:56 -0700</bug_when>
    <thetext>Created attachment 433753
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1777763</commentid>
    <comment_count>2</comment_count>
      <attachid>433754</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-07-18 10:50:35 -0700</bug_when>
    <thetext>Created attachment 433754
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1779365</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-07-25 10:33:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/81077420&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1786988</commentid>
    <comment_count>4</comment_count>
      <attachid>436342</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-08-24 16:23:02 -0700</bug_when>
    <thetext>Created attachment 436342
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1786990</commentid>
    <comment_count>5</comment_count>
      <attachid>436343</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-08-24 16:23:55 -0700</bug_when>
    <thetext>Created attachment 436343
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1787219</commentid>
    <comment_count>6</comment_count>
      <attachid>436402</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-08-25 10:51:12 -0700</bug_when>
    <thetext>Created attachment 436402
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1787260</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-25 12:50:42 -0700</bug_when>
    <thetext>Committed r281575 (240939@main): &lt;https://commits.webkit.org/240939@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 436402.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433753</attachid>
            <date>2021-07-18 10:43:56 -0700</date>
            <delta_ts>2021-07-18 10:50:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228059-20210718104355.patch</filename>
            <type>text/plain</type>
            <size>11677</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjMyMGZhZmE5YjEzY2U3
ODE2ZDAwYmZhY2I1MGQ2OGY3ZTk2NDkyZi4uNjcyMzhhMDY0Y2JiMTM4ZjdiNTIwYWQxYjk3YzM3
MjQ2ZWRiZjMzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIxLTA3LTE4ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIExpbmUgc3Bh
bm5pbmcgaW5saW5lIGJveGVzIHNob3VsZCBhbHNvIGJlIGluIHRoZSBydW4gbGlzdAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI4MDU5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29uc2lkZXIgdGhlIGZv
bGxvd2luZyBjYXNlOgorICAgICAgICAgIDxkaXY+PHNwYW4+Zmlyc3QgbGluZSB0ZXh0PGJyPnNl
Y29uZCBsaW5lIHRleHQ8YnI+dGhpcmQgbGluZSB0ZXh0PC9zcGFuPjwvZGl2PgorCisgICAgICAg
IEhlcmUgaXMgdGhlIHJ1biBsaXN0IHdlIGdlbmVyYXRlIGZvciB0aGUgY29udGVudCBhYm92ZToK
KyAgICAgICAgICBbaW5saW5lIGJveF1bZmlyc3QgbGluZSB0ZXh0XVtoYXJkIGxpbmVicmVha11b
c2Vjb25kIGxpbmUgdGV4dF1baGFyZCBsaW5lYnJlYWtdW3RoaXJkIGxpbmUgdGV4dF0KKyAgICAg
ICAgVGhpcyBsaXN0IGRvZXMgbm90IGluY2x1ZGUgdGhlIHNwYW5uaW5nIGlubGluZSBib3hlcywg
aS5lLiB0aGUgbWlzc2luZyBpbmxpbmUgYm94IG9uIHRoZSBzZWNvbmQgYW5kIHRoZSB0aGlyZCBs
aW5lLgorICAgICAgICBUaGUgaW50ZWdyYXRpb24gY29kZSB0aGVuIGxvb2tzIGluc2lkZSB0aGUg
TGluZUJveCB0byBmaW5kIHRoZXNlIHNwYW5uaW5nIGlubGluZSBib3hlcyAoc2VlIGNyZWF0ZURp
c3BsYXlOb25Sb290SW5saW5lQm94ZXMpCisKKyAgICAgICAgSW4gdGhpcyBwYXRjaCB3ZSBzdGFy
dCBpbmNsdWRpbmcgc3VjaCBzcGFubmluZyBpbmxpbmUgYm94ZXMgaW4gdGhlIHJ1biBsaXN0Lgor
ICAgICAgICAgIFtpbmxpbmUgYm94XVtmaXJzdCBsaW5lIHRleHRdW2hhcmQgbGluZWJyZWFrXVtp
bmxpbmUgYm94XVtzZWNvbmQgbGluZSB0ZXh0XVtoYXJkIGxpbmVicmVha11baW5saW5lIGJveF1b
dGhpcmQgbGluZSB0ZXh0XQorCisgICAgICAgIFRoaXMgaXMgYWxzbyBpbiBwcmVwYXJhdGlvbiBm
b3IgbWFraW5nIExpbmVCb3ggY29tcGxldGVseSBpbnRlcm5hbCB0byB0aGUgbGF5b3V0IGNvZGUu
IAorCisgICAgICAgICogbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9y
bWF0dGluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3Jt
YXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQpOgorICAgICAgICAq
IGxheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6aXNMaW5lU3Bhbm5pbmcgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5b3V0OjpMaW5lUnVuOjpjYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6TGluZVJ1bik6Cisg
ICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVu
dEJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OklubGlu
ZUNvbnRlbnRCdWlsZGVyOjpidWlsZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJ
bnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVucyBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVu
dEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlOb25Sb290SW5saW5lQm94ZXMgY29uc3QpOiBEZWxldGVk
LgorCiAyMDIxLTA3LTE3ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbTEZDXVtJRkNdIE1vdmUgdGhlIGVuY2xvc2luZyB0b3AvYm90dG9tIHZhbHVlIHVwZGF0ZSBm
b3Igc3Bhbm5pbmcgaW5saW5lIGJveGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVG
b3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggMThhYzhkM2YwNGQ4ZWZmNTFhYzI0ODllMGZhYmZm
Yzc3MmY0MGQ0OS4uN2VkMWNkODY4MGU4NDc2NjJhNWNjYTIwNGRjZmMyZDI5NzQ2OWM5MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9m
b3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcApAQCAt
NDcxLDYgKzQ3MSw3IEBAIElubGluZVJlY3QgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1
dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KGNvbnN0IExpbmVCdWlsCiAgICAgYXV0byBsaW5lID0g
Zm9ybWF0dGluZ0dlb21ldHJ5LnZlcnRpY2FsbHlBZGp1c3RlZExpbmVGb3JMaW5lQ29udGVudChs
aW5lQ29udGVudCk7CiAgICAgY29uc3QgYXV0byYgbGluZUJveCA9IGxpbmUubGluZUJveDsKICAg
ICBhdXRvIGxpbmVJbmRleCA9IGZvcm1hdHRpbmdTdGF0ZS5saW5lcygpLnNpemUoKTsKKyAgICBh
dXRvIGZpcnN0Tm9uU3Bhbm5pbmdMaW5lUnVuSW5kZXggPSBmb3JtYXR0aW5nU3RhdGUubGluZVJ1
bnMoKS5zaXplKCk7CiAgICAgYXV0byBsaW5lQm94TG9naWNhbFJlY3QgPSBJbmxpbmVSZWN0IHsg
bGluZUNvbnRlbnQubG9naWNhbFRvcExlZnQsIGxpbmVDb250ZW50LmxpbmVMb2dpY2FsV2lkdGgs
IGxpbmUubG9naWNhbEhlaWdodCB9OwogCiAgICAgaWYgKCFsaW5lQm94Lmhhc0NvbnRlbnQoKSkg
ewpAQCAtNTUxLDcgKzU1Miw5IEBAIElubGluZVJlY3QgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6
OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KGNvbnN0IExpbmVCdWlsCiAgICAgICAgICAg
ICBpZiAobGluZVJ1bi5pc0lubGluZUJveFN0YXJ0KCkpIHsKICAgICAgICAgICAgICAgICBhdXRv
JiBib3hHZW9tZXRyeSA9IGZvcm1hdHRpbmdTdGF0ZS5ib3hHZW9tZXRyeShsYXlvdXRCb3gpOwog
ICAgICAgICAgICAgICAgIGF1dG8gaW5saW5lQm94Qm9yZGVyQm94ID0gbGluZUJveC5sb2dpY2Fs
Qm9yZGVyQm94Rm9ySW5saW5lQm94KGxheW91dEJveCwgYm94R2VvbWV0cnkpOwotICAgICAgICAg
ICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBsYXlvdXRCb3gs
IGlubGluZUJveEJvcmRlckJveCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAg
ICAgICAgICAgIGF1dG8mIGlubGluZUJveCA9IGxpbmVCb3guaW5saW5lTGV2ZWxCb3hGb3JMYXlv
dXRCb3gobGF5b3V0Qm94KTsKKyAgICAgICAgICAgICAgICBhdXRvIGNhbk92ZXJmbG93TGluZVZl
cnRpY2FsbHkgPSBmb3JtYXR0aW5nR2VvbWV0cnkuaW5saW5lTGV2ZWxCb3hBZmZlY3RzTGluZUJv
eChpbmxpbmVCb3gsIGxpbmVCb3gpID8gTGluZVJ1bjo6Q2FuT3ZlcmZsb3dMaW5lVmVydGljYWxs
eTo6WWVzIDogTGluZVJ1bjo6Q2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseTo6Tm87CisgICAgICAg
ICAgICAgICAgZm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJv
eCwgaW5saW5lQm94Qm9yZGVyQm94LCBsaW5lUnVuLmV4cGFuc2lvbigpLCB7IH0sIGNhbk92ZXJm
bG93TGluZVZlcnRpY2FsbHkgfSk7CiAgICAgICAgICAgICAgICAgaW5saW5lQm94U3RhcnRTZXQu
YWRkKCZsYXlvdXRCb3gpOwogICAgICAgICAgICAgICAgIGVuY2xvc2luZ1RvcEFuZEJvdHRvbS50
b3AgPSBzdGQ6Om1pbihlbmNsb3NpbmdUb3BBbmRCb3R0b20udG9wLCBpbmxpbmVCb3hCb3JkZXJC
b3gudG9wKCkpOwogICAgICAgICAgICAgICAgIGVuY2xvc2luZ1RvcEFuZEJvdHRvbS5ib3R0b20g
PSBzdGQ6Om1heChlbmNsb3NpbmdUb3BBbmRCb3R0b20uYm90dG9tLCBpbmxpbmVCb3hCb3JkZXJC
b3guYm90dG9tKCkpOwpAQCAtNTk2LDYgKzU5OSw4IEBAIElubGluZVJlY3QgSW5saW5lRm9ybWF0
dGluZ0NvbnRleHQ6OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KGNvbnN0IExpbmVCdWls
CiAgICAgICAgICAgICAvLyBoYXZlIGFuIGFzc29jaWF0ZWQgbGluZSBydW4uIFRoZSBsaW5lIGJv
eCBlaXRoZXIgZW5kcyBvbiB0aGlzIGxpbmUgb3IgaXQgbWF5IGp1c3Qgc3BhbiBvdmVyIHRvIHRo
ZSBuZXh0LgogICAgICAgICAgICAgZW5jbG9zaW5nVG9wQW5kQm90dG9tLnRvcCA9IHN0ZDo6bWlu
KGVuY2xvc2luZ1RvcEFuZEJvdHRvbS50b3AsIGlubGluZUJveEJvcmRlckJveC50b3AoKSk7CiAg
ICAgICAgICAgICBlbmNsb3NpbmdUb3BBbmRCb3R0b20uYm90dG9tID0gc3RkOjptYXgoZW5jbG9z
aW5nVG9wQW5kQm90dG9tLmJvdHRvbSwgaW5saW5lQm94Qm9yZGVyQm94LmJvdHRvbSgpKTsKKyAg
ICAgICAgICAgIGF1dG8gY2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseSA9IGZvcm1hdHRpbmdHZW9t
ZXRyeS5pbmxpbmVMZXZlbEJveEFmZmVjdHNMaW5lQm94KGlubGluZUxldmVsQm94LCBsaW5lQm94
KSA/IExpbmVSdW46OkNhbk92ZXJmbG93TGluZVZlcnRpY2FsbHk6OlllcyA6IExpbmVSdW46OkNh
bk92ZXJmbG93TGluZVZlcnRpY2FsbHk6Ok5vOworICAgICAgICAgICAgZm9ybWF0dGluZ1N0YXRl
LmxpbmVSdW5zKCkuaW5zZXJ0KGZpcnN0Tm9uU3Bhbm5pbmdMaW5lUnVuSW5kZXgrKywgeyBsaW5l
SW5kZXgsIGxheW91dEJveCwgaW5saW5lQm94Qm9yZGVyQm94LCB7IH0sIHsgfSwgY2FuT3ZlcmZs
b3dMaW5lVmVydGljYWxseSwgTGluZVJ1bjo6SXNMaW5lU3Bhbm5pbmdSdW46OlllcyB9KTsKIAog
ICAgICAgICAgICAgLy8gTGV0J3Mgc3RyZXRjaCB0aGUgYm94IGFzIG5lZWRlZC4KICAgICAgICAg
ICAgIGF1dG8gZW5jbG9zaW5nQm9yZGVyQm94UmVjdCA9IEJveEdlb21ldHJ5Ojpib3JkZXJCb3hS
ZWN0KGJveEdlb21ldHJ5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3Jt
YXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaAppbmRleCA4MjI0
MmRkMDcxOGI0NjUyZDM2OGU2YmQ3OGQ1YzNkNGE5NjJjMGNhLi44YTk0YWU3MGRlY2U2MWZkZGE0
NDA5NGE1ZDQ3NzhjNzY5ZTgwYjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
Zm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5oCkBA
IC02MCw3ICs2MCw5IEBAIHN0cnVjdCBMaW5lUnVuIHsKICAgICB9OwogCiAgICAgc3RydWN0IEV4
cGFuc2lvbjsKLSAgICBMaW5lUnVuKHNpemVfdCBsaW5lSW5kZXgsIGNvbnN0IEJveCYsIGNvbnN0
IElubGluZVJlY3QmLCBFeHBhbnNpb24sIHN0ZDo6b3B0aW9uYWw8VGV4dD4gPSBzdGQ6Om51bGxv
cHQpOworICAgIGVudW0gY2xhc3MgQ2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseSB7IFllcywgTm8g
fTsKKyAgICBlbnVtIGNsYXNzIElzTGluZVNwYW5uaW5nUnVuIHsgWWVzLCBObyB9OworICAgIExp
bmVSdW4oc2l6ZV90IGxpbmVJbmRleCwgY29uc3QgQm94JiwgY29uc3QgSW5saW5lUmVjdCYsIEV4
cGFuc2lvbiwgc3RkOjpvcHRpb25hbDxUZXh0PiA9IHN0ZDo6bnVsbG9wdCwgQ2FuT3ZlcmZsb3dM
aW5lVmVydGljYWxseSA9IENhbk92ZXJmbG93TGluZVZlcnRpY2FsbHk6Ok5vLCBJc0xpbmVTcGFu
bmluZ1J1biA9IElzTGluZVNwYW5uaW5nUnVuOjpObyk7CiAKICAgICBjb25zdCBJbmxpbmVSZWN0
JiBsb2dpY2FsUmVjdCgpIGNvbnN0IHsgcmV0dXJuIG1fbG9naWNhbFJlY3Q7IH0KIApAQCAtNzIs
NiArNzQsOSBAQCBzdHJ1Y3QgTGluZVJ1biB7CiAgICAgSW5saW5lTGF5b3V0VW5pdCBsb2dpY2Fs
V2lkdGgoKSBjb25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgpLndpZHRoKCk7IH0KICAgICBJbmxp
bmVMYXlvdXRVbml0IGxvZ2ljYWxIZWlnaHQoKSBjb25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgp
LmhlaWdodCgpOyB9CiAKKyAgICBib29sIGlzTGluZVNwYW5uaW5nKCkgY29uc3QgeyByZXR1cm4g
bV9pc0xpbmVTcGFubmluZzsgfQorICAgIGJvb2wgY2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseTsgfQorCiAgICAgdm9p
ZCBtb3ZlVmVydGljYWxseShJbmxpbmVMYXlvdXRVbml0IG9mZnNldCkgeyBtX2xvZ2ljYWxSZWN0
Lm1vdmVWZXJ0aWNhbGx5KG9mZnNldCk7IH0KICAgICBzdGQ6Om9wdGlvbmFsPFRleHQ+JiB0ZXh0
KCkgeyByZXR1cm4gbV90ZXh0OyB9CiAgICAgY29uc3Qgc3RkOjpvcHRpb25hbDxUZXh0PiYgdGV4
dCgpIGNvbnN0IHsgcmV0dXJuIG1fdGV4dDsgfQpAQCAtODksMTQgKzk0LDE4IEBAIHByaXZhdGU6
CiAgICAgY29uc3Qgc2l6ZV90IG1fbGluZUluZGV4OwogICAgIFdlYWtQdHI8Y29uc3QgTGF5b3V0
OjpCb3g+IG1fbGF5b3V0Qm94OwogICAgIElubGluZVJlY3QgbV9sb2dpY2FsUmVjdDsKKyAgICBi
b29sIG1faXNMaW5lU3Bhbm5pbmcgeyBmYWxzZSB9OworICAgIGJvb2wgbV9jYW5PdmVyZmxvd0xp
bmVWZXJ0aWNhbGx5IHsgZmFsc2UgfTsKICAgICBFeHBhbnNpb24gbV9leHBhbnNpb247CiAgICAg
c3RkOjpvcHRpb25hbDxUZXh0PiBtX3RleHQ7CiB9OwogCi1pbmxpbmUgTGluZVJ1bjo6TGluZVJ1
bihzaXplX3QgbGluZUluZGV4LCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25zdCBJ
bmxpbmVSZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRpb25h
bDxUZXh0PiB0ZXh0KQoraW5saW5lIExpbmVSdW46OkxpbmVSdW4oc2l6ZV90IGxpbmVJbmRleCwg
Y29uc3QgTGF5b3V0OjpCb3gmIGxheW91dEJveCwgY29uc3QgSW5saW5lUmVjdCYgbG9naWNhbFJl
Y3QsIEV4cGFuc2lvbiBleHBhbnNpb24sIHN0ZDo6b3B0aW9uYWw8VGV4dD4gdGV4dCwgQ2FuT3Zl
cmZsb3dMaW5lVmVydGljYWxseSBjYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5ICwgSXNMaW5lU3Bh
bm5pbmdSdW4gaXNMaW5lU3Bhbm5pbmcpCiAgICAgOiBtX2xpbmVJbmRleChsaW5lSW5kZXgpCiAg
ICAgLCBtX2xheW91dEJveChtYWtlV2Vha1B0cihsYXlvdXRCb3gpKQogICAgICwgbV9sb2dpY2Fs
UmVjdChsb2dpY2FsUmVjdCkKKyAgICAsIG1faXNMaW5lU3Bhbm5pbmcoaXNMaW5lU3Bhbm5pbmcg
PT0gSXNMaW5lU3Bhbm5pbmdSdW46OlllcykKKyAgICAsIG1fY2FuT3ZlcmZsb3dMaW5lVmVydGlj
YWxseShjYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5ID09IENhbk92ZXJmbG93TGluZVZlcnRpY2Fs
bHk6OlllcykKICAgICAsIG1fZXhwYW5zaW9uKGV4cGFuc2lvbikKICAgICAsIG1fdGV4dCh0ZXh0
KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91
dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3Bw
CmluZGV4IGU4YTkwMmJmMWMyNjYxYWIzNjI4ZjJjNjkyYjkyMGFmMDk3OWFiMTUuLjQzNzRjMDRl
MGYwNjIyMGIxNzQ1MGYwMTE4YTYwODAyNTc2ODY4MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWls
ZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAKQEAgLTMwLDcgKzMwLDYgQEAKIAogI2lu
Y2x1ZGUgIkJpZGlSZXNvbHZlci5oIgogI2luY2x1ZGUgIklubGluZUZvcm1hdHRpbmdDb250ZXh0
LmgiCi0jaW5jbHVkZSAiSW5saW5lRm9ybWF0dGluZ0dlb21ldHJ5LmgiCiAjaW5jbHVkZSAiSW5s
aW5lRm9ybWF0dGluZ1N0YXRlLmgiCiAjaW5jbHVkZSAiTGF5b3V0Qm94R2VvbWV0cnkuaCIKICNp
bmNsdWRlICJMYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuaCIKQEAgLTE2OSw3ICsxNjgsNiBAQCB2
b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpidWlsZChjb25zdCBMYXlvdXQ6OklubGluZUZvcm1h
dHRpbmdDb250ZXh0JiBpbmxpbmVGbwogICAgIGF1dG8mIGlubGluZUZvcm1hdHRpbmdTdGF0ZSA9
IGlubGluZUZvcm1hdHRpbmdDb250ZXh0LmZvcm1hdHRpbmdTdGF0ZSgpOwogICAgIGF1dG8gbGlu
ZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zID0gY29tcHV0ZUxpbmVMZXZlbFZpc3VhbEFk
anVzdG1lbnRzRm9yUnVucyhpbmxpbmVGb3JtYXR0aW5nU3RhdGUpOwogICAgIGNyZWF0ZURpc3Bs
YXlMaW5lUnVucyhpbmxpbmVGb3JtYXR0aW5nU3RhdGUsIGlubGluZUNvbnRlbnQsIGxpbmVMZXZl
bFZpc3VhbEFkanVzdG1lbnRzRm9yUnVucyk7Ci0gICAgY3JlYXRlRGlzcGxheU5vblJvb3RJbmxp
bmVCb3hlcyhpbmxpbmVGb3JtYXR0aW5nQ29udGV4dCwgaW5saW5lQ29udGVudCk7CiAgICAgY3Jl
YXRlRGlzcGxheUxpbmVzKGlubGluZUZvcm1hdHRpbmdTdGF0ZSwgaW5saW5lQ29udGVudCwgbGlu
ZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zKTsKIH0KIApAQCAtMjUyLDcgKzI1MCwxNiBA
QCB2b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMoY29uc3Qg
TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nUwogICAgICAgICAgICAgcnVuUmVjdC5zZXRZKHJvdW5k
VG9JbnQocnVuUmVjdC55KCkpKTsKICAgICAgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBu
b24tdGV4dCBpbmsgb3ZlcmZsb3cuCiAgICAgICAgIC8vIEZJWE1FOiBBZGQgc3VwcG9ydCBmb3Ig
Y2FzZXMgd2hlbiB0aGUgcnVuIGlzIGFmdGVyIGVsbGlwc2lzLgotICAgICAgICBpbmxpbmVDb250
ZW50LnJ1bnMuYXBwZW5kKHsgbGluZUluZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIHJ1blJlY3Qs
IHsgfSwgeyB9IH0pOworICAgICAgICBpZiAoIWxpbmVSdW4uaXNMaW5lU3Bhbm5pbmcoKSkgewor
ICAgICAgICAgICAgLy8gTGluZSBzcGFubmluZyBydW5zIGFyZSBub3QgZXhwZWN0ZWQgaW4gdGhl
IHJ1biBsaXN0IChlLmcuIDxzcGFuPmZpc3QgbGluZTxicj5zZWNvbmQgbGluZTwvc3Bhbj4sIHdo
aWxlIHRoZSBzZWNvbmQgbGluZSBzdGFydHMKKyAgICAgICAgICAgIC8vIHdpdGggbGluZSBzcGFu
bmluZyBpbmxpbmUgYm94IHJ1biwgaXQgaXMgY29uc2lkZXJlZCByZWR1bmRhbnQgdG8gaGF2ZSBp
dCB0aGVyZSkuCisgICAgICAgICAgICBpbmxpbmVDb250ZW50LnJ1bnMuYXBwZW5kKHsgbGluZUlu
ZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIHJ1blJlY3QsIHsgfSwgeyB9IH0pOworICAgICAgICB9
CisgICAgICAgIGlmIChsYXlvdXRCb3guaXNJbmxpbmVCb3goKSkgeworICAgICAgICAgICAgYXV0
byBsaW5lUnVuUmVjdCA9IGxpbmVSdW4ubG9naWNhbFJlY3QoKTsKKyAgICAgICAgICAgIGxpbmVS
dW5SZWN0Lm1vdmVCeShsaW5lQm94TG9naWNhbFJlY3QudG9wTGVmdCgpKTsKKyAgICAgICAgICAg
IGlubGluZUNvbnRlbnQubm9uUm9vdElubGluZUJveGVzLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5
b3V0Qm94LCBsaW5lUnVuUmVjdCwgbGluZVJ1bi5jYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5KCkg
fSk7CisgICAgICAgIH0KICAgICB9OwogCiAgICAgYXV0byBjcmVhdGVEaXNwbGF5VGV4dFJ1bkZv
clJhbmdlID0gWyZdKGF1dG8mIGxpbmVSdW4sIGF1dG8gc3RhcnRPZmZzZXQsIGF1dG8gZW5kT2Zm
c2V0KSB7CkBAIC0zNzYsMjkgKzM4Myw2IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNy
ZWF0ZURpc3BsYXlMaW5lcyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdTdGF0CiAgICAg
fQogfQogCi12b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzKGNvbnN0IExheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQmIGlubGluZUZv
cm1hdHRpbmdDb250ZXh0LCBJbmxpbmVDb250ZW50JiBpbmxpbmVDb250ZW50KSBjb25zdAotewot
ICAgIGF1dG8mIGlubGluZUZvcm1hdHRpbmdTdGF0ZSA9IGlubGluZUZvcm1hdHRpbmdDb250ZXh0
LmZvcm1hdHRpbmdTdGF0ZSgpOwotICAgIGF1dG8mIGlubGluZUZvcm1hdHRpbmdHZW9tZXRyeSA9
IGRvd25jYXN0PExheW91dDo6SW5saW5lRm9ybWF0dGluZ0dlb21ldHJ5PihpbmxpbmVGb3JtYXR0
aW5nQ29udGV4dC5mb3JtYXR0aW5nR2VvbWV0cnkoKSk7Ci0gICAgZm9yIChzaXplX3QgbGluZUlu
ZGV4ID0gMDsgbGluZUluZGV4IDwgaW5saW5lRm9ybWF0dGluZ1N0YXRlLmxpbmVCb3hlcygpLnNp
emUoKTsgKytsaW5lSW5kZXgpIHsKLSAgICAgICAgYXV0byYgbGluZUJveCA9IGlubGluZUZvcm1h
dHRpbmdTdGF0ZS5saW5lQm94ZXMoKVtsaW5lSW5kZXhdOwotICAgICAgICBpZiAoIWxpbmVCb3gu
aGFzSW5saW5lQm94KCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBhdXRvIGxp
bmVCb3hMb2dpY2FsUmVjdCA9IGlubGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpW2xpbmVJbmRl
eF0ubGluZUJveExvZ2ljYWxSZWN0KCk7Ci0gICAgICAgIGZvciAoYXV0byYgaW5saW5lTGV2ZWxC
b3ggOiBsaW5lQm94Lm5vblJvb3RJbmxpbmVMZXZlbEJveGVzKCkpIHsKLSAgICAgICAgICAgIGlm
ICghaW5saW5lTGV2ZWxCb3guaXNJbmxpbmVCb3goKSkKLSAgICAgICAgICAgICAgICBjb250aW51
ZTsKLSAgICAgICAgICAgIGF1dG8mIGxheW91dEJveCA9IGlubGluZUxldmVsQm94LmxheW91dEJv
eCgpOwotICAgICAgICAgICAgYXV0byYgYm94R2VvbWV0cnkgPSBtX2xheW91dFN0YXRlLmdlb21l
dHJ5Rm9yQm94KGxheW91dEJveCk7Ci0gICAgICAgICAgICBhdXRvIGlubGluZUJveFJlY3QgPSBs
aW5lQm94LmxvZ2ljYWxCb3JkZXJCb3hGb3JJbmxpbmVCb3gobGF5b3V0Qm94LCBib3hHZW9tZXRy
eSk7Ci0gICAgICAgICAgICBpbmxpbmVCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNhbFJlY3Qu
dG9wTGVmdCgpKTsKLQotICAgICAgICAgICAgaW5saW5lQ29udGVudC5ub25Sb290SW5saW5lQm94
ZXMuYXBwZW5kKHsgbGluZUluZGV4LCBsYXlvdXRCb3gsIGlubGluZUJveFJlY3QsIGlubGluZUZv
cm1hdHRpbmdHZW9tZXRyeS5pbmxpbmVMZXZlbEJveEFmZmVjdHNMaW5lQm94KGlubGluZUxldmVs
Qm94LCBsaW5lQm94KSB9KTsKLSAgICAgICAgfQotICAgIH0KLX0KLQogfQogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433754</attachid>
            <date>2021-07-18 10:50:35 -0700</date>
            <delta_ts>2021-08-24 16:23:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228059-20210718105034.patch</filename>
            <type>text/plain</type>
            <size>12722</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjMyMGZhZmE5YjEzY2U3
ODE2ZDAwYmZhY2I1MGQ2OGY3ZTk2NDkyZi4uNjcyMzhhMDY0Y2JiMTM4ZjdiNTIwYWQxYjk3YzM3
MjQ2ZWRiZjMzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIxLTA3LTE4ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIExpbmUgc3Bh
bm5pbmcgaW5saW5lIGJveGVzIHNob3VsZCBhbHNvIGJlIGluIHRoZSBydW4gbGlzdAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI4MDU5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29uc2lkZXIgdGhlIGZv
bGxvd2luZyBjYXNlOgorICAgICAgICAgIDxkaXY+PHNwYW4+Zmlyc3QgbGluZSB0ZXh0PGJyPnNl
Y29uZCBsaW5lIHRleHQ8YnI+dGhpcmQgbGluZSB0ZXh0PC9zcGFuPjwvZGl2PgorCisgICAgICAg
IEhlcmUgaXMgdGhlIHJ1biBsaXN0IHdlIGdlbmVyYXRlIGZvciB0aGUgY29udGVudCBhYm92ZToK
KyAgICAgICAgICBbaW5saW5lIGJveF1bZmlyc3QgbGluZSB0ZXh0XVtoYXJkIGxpbmVicmVha11b
c2Vjb25kIGxpbmUgdGV4dF1baGFyZCBsaW5lYnJlYWtdW3RoaXJkIGxpbmUgdGV4dF0KKyAgICAg
ICAgVGhpcyBsaXN0IGRvZXMgbm90IGluY2x1ZGUgdGhlIHNwYW5uaW5nIGlubGluZSBib3hlcywg
aS5lLiB0aGUgbWlzc2luZyBpbmxpbmUgYm94IG9uIHRoZSBzZWNvbmQgYW5kIHRoZSB0aGlyZCBs
aW5lLgorICAgICAgICBUaGUgaW50ZWdyYXRpb24gY29kZSB0aGVuIGxvb2tzIGluc2lkZSB0aGUg
TGluZUJveCB0byBmaW5kIHRoZXNlIHNwYW5uaW5nIGlubGluZSBib3hlcyAoc2VlIGNyZWF0ZURp
c3BsYXlOb25Sb290SW5saW5lQm94ZXMpCisKKyAgICAgICAgSW4gdGhpcyBwYXRjaCB3ZSBzdGFy
dCBpbmNsdWRpbmcgc3VjaCBzcGFubmluZyBpbmxpbmUgYm94ZXMgaW4gdGhlIHJ1biBsaXN0Lgor
ICAgICAgICAgIFtpbmxpbmUgYm94XVtmaXJzdCBsaW5lIHRleHRdW2hhcmQgbGluZWJyZWFrXVtp
bmxpbmUgYm94XVtzZWNvbmQgbGluZSB0ZXh0XVtoYXJkIGxpbmVicmVha11baW5saW5lIGJveF1b
dGhpcmQgbGluZSB0ZXh0XQorCisgICAgICAgIFRoaXMgaXMgYWxzbyBpbiBwcmVwYXJhdGlvbiBm
b3IgbWFraW5nIExpbmVCb3ggY29tcGxldGVseSBpbnRlcm5hbCB0byB0aGUgbGF5b3V0IGNvZGUu
IAorCisgICAgICAgICogbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9y
bWF0dGluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVGb3Jt
YXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQpOgorICAgICAgICAq
IGxheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6aXNMaW5lU3Bhbm5pbmcgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5b3V0OjpMaW5lUnVuOjpjYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6TGluZVJ1bik6Cisg
ICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVu
dEJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OklubGlu
ZUNvbnRlbnRCdWlsZGVyOjpidWlsZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJ
bnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVucyBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVu
dEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlOb25Sb290SW5saW5lQm94ZXMgY29uc3QpOiBEZWxldGVk
LgorCiAyMDIxLTA3LTE3ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbTEZDXVtJRkNdIE1vdmUgdGhlIGVuY2xvc2luZyB0b3AvYm90dG9tIHZhbHVlIHVwZGF0ZSBm
b3Igc3Bhbm5pbmcgaW5saW5lIGJveGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVG
b3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggMThhYzhkM2YwNGQ4ZWZmNTFhYzI0ODllMGZhYmZm
Yzc3MmY0MGQ0OS4uN2VkMWNkODY4MGU4NDc2NjJhNWNjYTIwNGRjZmMyZDI5NzQ2OWM5MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9m
b3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcApAQCAt
NDcxLDYgKzQ3MSw3IEBAIElubGluZVJlY3QgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1
dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KGNvbnN0IExpbmVCdWlsCiAgICAgYXV0byBsaW5lID0g
Zm9ybWF0dGluZ0dlb21ldHJ5LnZlcnRpY2FsbHlBZGp1c3RlZExpbmVGb3JMaW5lQ29udGVudChs
aW5lQ29udGVudCk7CiAgICAgY29uc3QgYXV0byYgbGluZUJveCA9IGxpbmUubGluZUJveDsKICAg
ICBhdXRvIGxpbmVJbmRleCA9IGZvcm1hdHRpbmdTdGF0ZS5saW5lcygpLnNpemUoKTsKKyAgICBh
dXRvIGZpcnN0Tm9uU3Bhbm5pbmdMaW5lUnVuSW5kZXggPSBmb3JtYXR0aW5nU3RhdGUubGluZVJ1
bnMoKS5zaXplKCk7CiAgICAgYXV0byBsaW5lQm94TG9naWNhbFJlY3QgPSBJbmxpbmVSZWN0IHsg
bGluZUNvbnRlbnQubG9naWNhbFRvcExlZnQsIGxpbmVDb250ZW50LmxpbmVMb2dpY2FsV2lkdGgs
IGxpbmUubG9naWNhbEhlaWdodCB9OwogCiAgICAgaWYgKCFsaW5lQm94Lmhhc0NvbnRlbnQoKSkg
ewpAQCAtNTUxLDcgKzU1Miw5IEBAIElubGluZVJlY3QgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6
OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KGNvbnN0IExpbmVCdWlsCiAgICAgICAgICAg
ICBpZiAobGluZVJ1bi5pc0lubGluZUJveFN0YXJ0KCkpIHsKICAgICAgICAgICAgICAgICBhdXRv
JiBib3hHZW9tZXRyeSA9IGZvcm1hdHRpbmdTdGF0ZS5ib3hHZW9tZXRyeShsYXlvdXRCb3gpOwog
ICAgICAgICAgICAgICAgIGF1dG8gaW5saW5lQm94Qm9yZGVyQm94ID0gbGluZUJveC5sb2dpY2Fs
Qm9yZGVyQm94Rm9ySW5saW5lQm94KGxheW91dEJveCwgYm94R2VvbWV0cnkpOwotICAgICAgICAg
ICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBsYXlvdXRCb3gs
IGlubGluZUJveEJvcmRlckJveCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAg
ICAgICAgICAgIGF1dG8mIGlubGluZUJveCA9IGxpbmVCb3guaW5saW5lTGV2ZWxCb3hGb3JMYXlv
dXRCb3gobGF5b3V0Qm94KTsKKyAgICAgICAgICAgICAgICBhdXRvIGNhbk92ZXJmbG93TGluZVZl
cnRpY2FsbHkgPSBmb3JtYXR0aW5nR2VvbWV0cnkuaW5saW5lTGV2ZWxCb3hBZmZlY3RzTGluZUJv
eChpbmxpbmVCb3gsIGxpbmVCb3gpID8gTGluZVJ1bjo6Q2FuT3ZlcmZsb3dMaW5lVmVydGljYWxs
eTo6WWVzIDogTGluZVJ1bjo6Q2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseTo6Tm87CisgICAgICAg
ICAgICAgICAgZm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJv
eCwgaW5saW5lQm94Qm9yZGVyQm94LCBsaW5lUnVuLmV4cGFuc2lvbigpLCB7IH0sIGNhbk92ZXJm
bG93TGluZVZlcnRpY2FsbHkgfSk7CiAgICAgICAgICAgICAgICAgaW5saW5lQm94U3RhcnRTZXQu
YWRkKCZsYXlvdXRCb3gpOwogICAgICAgICAgICAgICAgIGVuY2xvc2luZ1RvcEFuZEJvdHRvbS50
b3AgPSBzdGQ6Om1pbihlbmNsb3NpbmdUb3BBbmRCb3R0b20udG9wLCBpbmxpbmVCb3hCb3JkZXJC
b3gudG9wKCkpOwogICAgICAgICAgICAgICAgIGVuY2xvc2luZ1RvcEFuZEJvdHRvbS5ib3R0b20g
PSBzdGQ6Om1heChlbmNsb3NpbmdUb3BBbmRCb3R0b20uYm90dG9tLCBpbmxpbmVCb3hCb3JkZXJC
b3guYm90dG9tKCkpOwpAQCAtNTk2LDYgKzU5OSw4IEBAIElubGluZVJlY3QgSW5saW5lRm9ybWF0
dGluZ0NvbnRleHQ6OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KGNvbnN0IExpbmVCdWls
CiAgICAgICAgICAgICAvLyBoYXZlIGFuIGFzc29jaWF0ZWQgbGluZSBydW4uIFRoZSBsaW5lIGJv
eCBlaXRoZXIgZW5kcyBvbiB0aGlzIGxpbmUgb3IgaXQgbWF5IGp1c3Qgc3BhbiBvdmVyIHRvIHRo
ZSBuZXh0LgogICAgICAgICAgICAgZW5jbG9zaW5nVG9wQW5kQm90dG9tLnRvcCA9IHN0ZDo6bWlu
KGVuY2xvc2luZ1RvcEFuZEJvdHRvbS50b3AsIGlubGluZUJveEJvcmRlckJveC50b3AoKSk7CiAg
ICAgICAgICAgICBlbmNsb3NpbmdUb3BBbmRCb3R0b20uYm90dG9tID0gc3RkOjptYXgoZW5jbG9z
aW5nVG9wQW5kQm90dG9tLmJvdHRvbSwgaW5saW5lQm94Qm9yZGVyQm94LmJvdHRvbSgpKTsKKyAg
ICAgICAgICAgIGF1dG8gY2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseSA9IGZvcm1hdHRpbmdHZW9t
ZXRyeS5pbmxpbmVMZXZlbEJveEFmZmVjdHNMaW5lQm94KGlubGluZUxldmVsQm94LCBsaW5lQm94
KSA/IExpbmVSdW46OkNhbk92ZXJmbG93TGluZVZlcnRpY2FsbHk6OlllcyA6IExpbmVSdW46OkNh
bk92ZXJmbG93TGluZVZlcnRpY2FsbHk6Ok5vOworICAgICAgICAgICAgZm9ybWF0dGluZ1N0YXRl
LmxpbmVSdW5zKCkuaW5zZXJ0KGZpcnN0Tm9uU3Bhbm5pbmdMaW5lUnVuSW5kZXgrKywgeyBsaW5l
SW5kZXgsIGxheW91dEJveCwgaW5saW5lQm94Qm9yZGVyQm94LCB7IH0sIHsgfSwgY2FuT3ZlcmZs
b3dMaW5lVmVydGljYWxseSwgTGluZVJ1bjo6SXNMaW5lU3Bhbm5pbmdSdW46OlllcyB9KTsKIAog
ICAgICAgICAgICAgLy8gTGV0J3Mgc3RyZXRjaCB0aGUgYm94IGFzIG5lZWRlZC4KICAgICAgICAg
ICAgIGF1dG8gZW5jbG9zaW5nQm9yZGVyQm94UmVjdCA9IEJveEdlb21ldHJ5Ojpib3JkZXJCb3hS
ZWN0KGJveEdlb21ldHJ5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3Jt
YXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaAppbmRleCA4MjI0
MmRkMDcxOGI0NjUyZDM2OGU2YmQ3OGQ1YzNkNGE5NjJjMGNhLi44YTk0YWU3MGRlY2U2MWZkZGE0
NDA5NGE1ZDQ3NzhjNzY5ZTgwYjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
Zm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5oCkBA
IC02MCw3ICs2MCw5IEBAIHN0cnVjdCBMaW5lUnVuIHsKICAgICB9OwogCiAgICAgc3RydWN0IEV4
cGFuc2lvbjsKLSAgICBMaW5lUnVuKHNpemVfdCBsaW5lSW5kZXgsIGNvbnN0IEJveCYsIGNvbnN0
IElubGluZVJlY3QmLCBFeHBhbnNpb24sIHN0ZDo6b3B0aW9uYWw8VGV4dD4gPSBzdGQ6Om51bGxv
cHQpOworICAgIGVudW0gY2xhc3MgQ2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseSB7IFllcywgTm8g
fTsKKyAgICBlbnVtIGNsYXNzIElzTGluZVNwYW5uaW5nUnVuIHsgWWVzLCBObyB9OworICAgIExp
bmVSdW4oc2l6ZV90IGxpbmVJbmRleCwgY29uc3QgQm94JiwgY29uc3QgSW5saW5lUmVjdCYsIEV4
cGFuc2lvbiwgc3RkOjpvcHRpb25hbDxUZXh0PiA9IHN0ZDo6bnVsbG9wdCwgQ2FuT3ZlcmZsb3dM
aW5lVmVydGljYWxseSA9IENhbk92ZXJmbG93TGluZVZlcnRpY2FsbHk6Ok5vLCBJc0xpbmVTcGFu
bmluZ1J1biA9IElzTGluZVNwYW5uaW5nUnVuOjpObyk7CiAKICAgICBjb25zdCBJbmxpbmVSZWN0
JiBsb2dpY2FsUmVjdCgpIGNvbnN0IHsgcmV0dXJuIG1fbG9naWNhbFJlY3Q7IH0KIApAQCAtNzIs
NiArNzQsOSBAQCBzdHJ1Y3QgTGluZVJ1biB7CiAgICAgSW5saW5lTGF5b3V0VW5pdCBsb2dpY2Fs
V2lkdGgoKSBjb25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgpLndpZHRoKCk7IH0KICAgICBJbmxp
bmVMYXlvdXRVbml0IGxvZ2ljYWxIZWlnaHQoKSBjb25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgp
LmhlaWdodCgpOyB9CiAKKyAgICBib29sIGlzTGluZVNwYW5uaW5nKCkgY29uc3QgeyByZXR1cm4g
bV9pc0xpbmVTcGFubmluZzsgfQorICAgIGJvb2wgY2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2FuT3ZlcmZsb3dMaW5lVmVydGljYWxseTsgfQorCiAgICAgdm9p
ZCBtb3ZlVmVydGljYWxseShJbmxpbmVMYXlvdXRVbml0IG9mZnNldCkgeyBtX2xvZ2ljYWxSZWN0
Lm1vdmVWZXJ0aWNhbGx5KG9mZnNldCk7IH0KICAgICBzdGQ6Om9wdGlvbmFsPFRleHQ+JiB0ZXh0
KCkgeyByZXR1cm4gbV90ZXh0OyB9CiAgICAgY29uc3Qgc3RkOjpvcHRpb25hbDxUZXh0PiYgdGV4
dCgpIGNvbnN0IHsgcmV0dXJuIG1fdGV4dDsgfQpAQCAtODksMTQgKzk0LDE4IEBAIHByaXZhdGU6
CiAgICAgY29uc3Qgc2l6ZV90IG1fbGluZUluZGV4OwogICAgIFdlYWtQdHI8Y29uc3QgTGF5b3V0
OjpCb3g+IG1fbGF5b3V0Qm94OwogICAgIElubGluZVJlY3QgbV9sb2dpY2FsUmVjdDsKKyAgICBi
b29sIG1faXNMaW5lU3Bhbm5pbmcgeyBmYWxzZSB9OworICAgIGJvb2wgbV9jYW5PdmVyZmxvd0xp
bmVWZXJ0aWNhbGx5IHsgZmFsc2UgfTsKICAgICBFeHBhbnNpb24gbV9leHBhbnNpb247CiAgICAg
c3RkOjpvcHRpb25hbDxUZXh0PiBtX3RleHQ7CiB9OwogCi1pbmxpbmUgTGluZVJ1bjo6TGluZVJ1
bihzaXplX3QgbGluZUluZGV4LCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25zdCBJ
bmxpbmVSZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRpb25h
bDxUZXh0PiB0ZXh0KQoraW5saW5lIExpbmVSdW46OkxpbmVSdW4oc2l6ZV90IGxpbmVJbmRleCwg
Y29uc3QgTGF5b3V0OjpCb3gmIGxheW91dEJveCwgY29uc3QgSW5saW5lUmVjdCYgbG9naWNhbFJl
Y3QsIEV4cGFuc2lvbiBleHBhbnNpb24sIHN0ZDo6b3B0aW9uYWw8VGV4dD4gdGV4dCwgQ2FuT3Zl
cmZsb3dMaW5lVmVydGljYWxseSBjYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5ICwgSXNMaW5lU3Bh
bm5pbmdSdW4gaXNMaW5lU3Bhbm5pbmcpCiAgICAgOiBtX2xpbmVJbmRleChsaW5lSW5kZXgpCiAg
ICAgLCBtX2xheW91dEJveChtYWtlV2Vha1B0cihsYXlvdXRCb3gpKQogICAgICwgbV9sb2dpY2Fs
UmVjdChsb2dpY2FsUmVjdCkKKyAgICAsIG1faXNMaW5lU3Bhbm5pbmcoaXNMaW5lU3Bhbm5pbmcg
PT0gSXNMaW5lU3Bhbm5pbmdSdW46OlllcykKKyAgICAsIG1fY2FuT3ZlcmZsb3dMaW5lVmVydGlj
YWxseShjYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5ID09IENhbk92ZXJmbG93TGluZVZlcnRpY2Fs
bHk6OlllcykKICAgICAsIG1fZXhwYW5zaW9uKGV4cGFuc2lvbikKICAgICAsIG1fdGV4dCh0ZXh0
KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91
dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3Bw
CmluZGV4IGU4YTkwMmJmMWMyNjYxYWIzNjI4ZjJjNjkyYjkyMGFmMDk3OWFiMTUuLjQzNzRjMDRl
MGYwNjIyMGIxNzQ1MGYwMTE4YTYwODAyNTc2ODY4MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWls
ZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAKQEAgLTMwLDcgKzMwLDYgQEAKIAogI2lu
Y2x1ZGUgIkJpZGlSZXNvbHZlci5oIgogI2luY2x1ZGUgIklubGluZUZvcm1hdHRpbmdDb250ZXh0
LmgiCi0jaW5jbHVkZSAiSW5saW5lRm9ybWF0dGluZ0dlb21ldHJ5LmgiCiAjaW5jbHVkZSAiSW5s
aW5lRm9ybWF0dGluZ1N0YXRlLmgiCiAjaW5jbHVkZSAiTGF5b3V0Qm94R2VvbWV0cnkuaCIKICNp
bmNsdWRlICJMYXlvdXRJbnRlZ3JhdGlvbkJveFRyZWUuaCIKQEAgLTE2OSw3ICsxNjgsNiBAQCB2
b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpidWlsZChjb25zdCBMYXlvdXQ6OklubGluZUZvcm1h
dHRpbmdDb250ZXh0JiBpbmxpbmVGbwogICAgIGF1dG8mIGlubGluZUZvcm1hdHRpbmdTdGF0ZSA9
IGlubGluZUZvcm1hdHRpbmdDb250ZXh0LmZvcm1hdHRpbmdTdGF0ZSgpOwogICAgIGF1dG8gbGlu
ZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zID0gY29tcHV0ZUxpbmVMZXZlbFZpc3VhbEFk
anVzdG1lbnRzRm9yUnVucyhpbmxpbmVGb3JtYXR0aW5nU3RhdGUpOwogICAgIGNyZWF0ZURpc3Bs
YXlMaW5lUnVucyhpbmxpbmVGb3JtYXR0aW5nU3RhdGUsIGlubGluZUNvbnRlbnQsIGxpbmVMZXZl
bFZpc3VhbEFkanVzdG1lbnRzRm9yUnVucyk7Ci0gICAgY3JlYXRlRGlzcGxheU5vblJvb3RJbmxp
bmVCb3hlcyhpbmxpbmVGb3JtYXR0aW5nQ29udGV4dCwgaW5saW5lQ29udGVudCk7CiAgICAgY3Jl
YXRlRGlzcGxheUxpbmVzKGlubGluZUZvcm1hdHRpbmdTdGF0ZSwgaW5saW5lQ29udGVudCwgbGlu
ZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zKTsKIH0KIApAQCAtMjUyLDcgKzI1MCwxNiBA
QCB2b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMoY29uc3Qg
TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nUwogICAgICAgICAgICAgcnVuUmVjdC5zZXRZKHJvdW5k
VG9JbnQocnVuUmVjdC55KCkpKTsKICAgICAgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBu
b24tdGV4dCBpbmsgb3ZlcmZsb3cuCiAgICAgICAgIC8vIEZJWE1FOiBBZGQgc3VwcG9ydCBmb3Ig
Y2FzZXMgd2hlbiB0aGUgcnVuIGlzIGFmdGVyIGVsbGlwc2lzLgotICAgICAgICBpbmxpbmVDb250
ZW50LnJ1bnMuYXBwZW5kKHsgbGluZUluZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIHJ1blJlY3Qs
IHsgfSwgeyB9IH0pOworICAgICAgICBpZiAoIWxpbmVSdW4uaXNMaW5lU3Bhbm5pbmcoKSkgewor
ICAgICAgICAgICAgLy8gTGluZSBzcGFubmluZyBydW5zIGFyZSBub3QgZXhwZWN0ZWQgaW4gdGhl
IHJ1biBsaXN0IChlLmcuIDxzcGFuPmZpc3QgbGluZTxicj5zZWNvbmQgbGluZTwvc3Bhbj4sIHdo
aWxlIHRoZSBzZWNvbmQgbGluZSBzdGFydHMKKyAgICAgICAgICAgIC8vIHdpdGggbGluZSBzcGFu
bmluZyBpbmxpbmUgYm94IHJ1biwgaXQgaXMgY29uc2lkZXJlZCByZWR1bmRhbnQgdG8gaGF2ZSBp
dCB0aGVyZSkuCisgICAgICAgICAgICBpbmxpbmVDb250ZW50LnJ1bnMuYXBwZW5kKHsgbGluZUlu
ZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIHJ1blJlY3QsIHsgfSwgeyB9IH0pOworICAgICAgICB9
CisgICAgICAgIGlmIChsYXlvdXRCb3guaXNJbmxpbmVCb3goKSkgeworICAgICAgICAgICAgYXV0
byBsaW5lUnVuUmVjdCA9IGxpbmVSdW4ubG9naWNhbFJlY3QoKTsKKyAgICAgICAgICAgIGxpbmVS
dW5SZWN0Lm1vdmVCeShsaW5lQm94TG9naWNhbFJlY3QudG9wTGVmdCgpKTsKKyAgICAgICAgICAg
IGlubGluZUNvbnRlbnQubm9uUm9vdElubGluZUJveGVzLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5
b3V0Qm94LCBsaW5lUnVuUmVjdCwgbGluZVJ1bi5jYW5PdmVyZmxvd0xpbmVWZXJ0aWNhbGx5KCkg
fSk7CisgICAgICAgIH0KICAgICB9OwogCiAgICAgYXV0byBjcmVhdGVEaXNwbGF5VGV4dFJ1bkZv
clJhbmdlID0gWyZdKGF1dG8mIGxpbmVSdW4sIGF1dG8gc3RhcnRPZmZzZXQsIGF1dG8gZW5kT2Zm
c2V0KSB7CkBAIC0zNzYsMjkgKzM4Myw2IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNy
ZWF0ZURpc3BsYXlMaW5lcyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdTdGF0CiAgICAg
fQogfQogCi12b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzKGNvbnN0IExheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQmIGlubGluZUZv
cm1hdHRpbmdDb250ZXh0LCBJbmxpbmVDb250ZW50JiBpbmxpbmVDb250ZW50KSBjb25zdAotewot
ICAgIGF1dG8mIGlubGluZUZvcm1hdHRpbmdTdGF0ZSA9IGlubGluZUZvcm1hdHRpbmdDb250ZXh0
LmZvcm1hdHRpbmdTdGF0ZSgpOwotICAgIGF1dG8mIGlubGluZUZvcm1hdHRpbmdHZW9tZXRyeSA9
IGRvd25jYXN0PExheW91dDo6SW5saW5lRm9ybWF0dGluZ0dlb21ldHJ5PihpbmxpbmVGb3JtYXR0
aW5nQ29udGV4dC5mb3JtYXR0aW5nR2VvbWV0cnkoKSk7Ci0gICAgZm9yIChzaXplX3QgbGluZUlu
ZGV4ID0gMDsgbGluZUluZGV4IDwgaW5saW5lRm9ybWF0dGluZ1N0YXRlLmxpbmVCb3hlcygpLnNp
emUoKTsgKytsaW5lSW5kZXgpIHsKLSAgICAgICAgYXV0byYgbGluZUJveCA9IGlubGluZUZvcm1h
dHRpbmdTdGF0ZS5saW5lQm94ZXMoKVtsaW5lSW5kZXhdOwotICAgICAgICBpZiAoIWxpbmVCb3gu
aGFzSW5saW5lQm94KCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBhdXRvIGxp
bmVCb3hMb2dpY2FsUmVjdCA9IGlubGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpW2xpbmVJbmRl
eF0ubGluZUJveExvZ2ljYWxSZWN0KCk7Ci0gICAgICAgIGZvciAoYXV0byYgaW5saW5lTGV2ZWxC
b3ggOiBsaW5lQm94Lm5vblJvb3RJbmxpbmVMZXZlbEJveGVzKCkpIHsKLSAgICAgICAgICAgIGlm
ICghaW5saW5lTGV2ZWxCb3guaXNJbmxpbmVCb3goKSkKLSAgICAgICAgICAgICAgICBjb250aW51
ZTsKLSAgICAgICAgICAgIGF1dG8mIGxheW91dEJveCA9IGlubGluZUxldmVsQm94LmxheW91dEJv
eCgpOwotICAgICAgICAgICAgYXV0byYgYm94R2VvbWV0cnkgPSBtX2xheW91dFN0YXRlLmdlb21l
dHJ5Rm9yQm94KGxheW91dEJveCk7Ci0gICAgICAgICAgICBhdXRvIGlubGluZUJveFJlY3QgPSBs
aW5lQm94LmxvZ2ljYWxCb3JkZXJCb3hGb3JJbmxpbmVCb3gobGF5b3V0Qm94LCBib3hHZW9tZXRy
eSk7Ci0gICAgICAgICAgICBpbmxpbmVCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNhbFJlY3Qu
dG9wTGVmdCgpKTsKLQotICAgICAgICAgICAgaW5saW5lQ29udGVudC5ub25Sb290SW5saW5lQm94
ZXMuYXBwZW5kKHsgbGluZUluZGV4LCBsYXlvdXRCb3gsIGlubGluZUJveFJlY3QsIGlubGluZUZv
cm1hdHRpbmdHZW9tZXRyeS5pbmxpbmVMZXZlbEJveEFmZmVjdHNMaW5lQm94KGlubGluZUxldmVs
Qm94LCBsaW5lQm94KSB9KTsKLSAgICAgICAgfQotICAgIH0KLX0KLQogfQogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25J
bmxpbmVDb250ZW50QnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9u
L0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuaAppbmRleCBhMDdhOTc1N2E0
ZTRmODA5Zjc3NzhjMzU3YWUwMzgxZDljZGM2ODY2Li5mZDAzODg3NzAzMTU1OTQ1ZDQ5ZGFjYTdj
Mjc4NDIyMWU1MGJlNmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRl
bnRCdWlsZGVyLmgKQEAgLTU4LDcgKzU4LDYgQEAgcHJpdmF0ZToKICAgICBMaW5lTGV2ZWxWaXN1
YWxBZGp1c3RtZW50c0ZvclJ1bnNMaXN0IGNvbXB1dGVMaW5lTGV2ZWxWaXN1YWxBZGp1c3RtZW50
c0ZvclJ1bnMoY29uc3QgTGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nU3RhdGUmKSBjb25zdDsKICAg
ICB2b2lkIGNyZWF0ZURpc3BsYXlMaW5lUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1hdHRp
bmdTdGF0ZSYsIElubGluZUNvbnRlbnQmLCBjb25zdCBMaW5lTGV2ZWxWaXN1YWxBZGp1c3RtZW50
c0ZvclJ1bnNMaXN0JikgY29uc3Q7CiAgICAgdm9pZCBjcmVhdGVEaXNwbGF5TGluZXMoY29uc3Qg
TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nU3RhdGUmLCBJbmxpbmVDb250ZW50JiwgY29uc3QgTGlu
ZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zTGlzdCYpIGNvbnN0OwotICAgIHZvaWQgY3Jl
YXRlRGlzcGxheU5vblJvb3RJbmxpbmVCb3hlcyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1hdHRp
bmdDb250ZXh0JiwgSW5saW5lQ29udGVudCYpIGNvbnN0OwogCiAgICAgY29uc3QgTGF5b3V0OjpM
YXlvdXRTdGF0ZSYgbV9sYXlvdXRTdGF0ZTsKICAgICBjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIG1f
YmxvY2tGbG93Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436342</attachid>
            <date>2021-08-24 16:23:02 -0700</date>
            <delta_ts>2021-08-24 16:23:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228059-20210824162301.patch</filename>
            <type>text/plain</type>
            <size>15430</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzNhNmZiZmFkMGFlN2Rm
OGQ1NmE0MmY0MGFhZmYzYjQ2ZjZjNDMyNy4uMjlhZTJjNzMxNDk3ZmUzNDEzMjA5NmIzMzY3ZmYx
MzdkMjg4YmUxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTA4LTI0ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIExpbmUgc3Bh
bm5pbmcgaW5saW5lIGJveGVzIHNob3VsZCBhbHNvIGJlIGluIHRoZSBydW4gbGlzdAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI4MDU5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS84MTA3NzQyMD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBDb25zaWRlciB0aGUgZm9sbG93aW5nIGNhc2U6CisgICAgICAg
ICAgPGRpdj48c3Bhbj5maXJzdCBsaW5lIHRleHQ8YnI+c2Vjb25kIGxpbmUgdGV4dDxicj50aGly
ZCBsaW5lIHRleHQ8L3NwYW4+PC9kaXY+CisKKyAgICAgICAgSGVyZSBpcyB0aGUgbGlzdCBvZiBy
dW5zIHdlIGdlbmVyYXRlIGZvciB0aGUgY29udGVudCBhYm92ZToKKworICAgICAgICAgIFtpbmxp
bmUgYm94XVtmaXJzdCBsaW5lIHRleHRdW2hhcmQgbGluZWJyZWFrXVtzZWNvbmQgbGluZSB0ZXh0
XVtoYXJkIGxpbmVicmVha11bdGhpcmQgbGluZSB0ZXh0XQorCisgICAgICAgIFRoaXMgbGlzdCBk
b2VzIG5vdCBpbmNsdWRlIHRoZSBzcGFubmluZyBpbmxpbmUgYm94ZXMsIGkuZS4gdGhlIG1pc3Np
bmcgaW5saW5lIGJveCBvbiB0aGUgc2Vjb25kIGFuZCB0aGUgdGhpcmQgbGluZS4KKyAgICAgICAg
VGhlIGludGVncmF0aW9uIGNvZGUgdGhlbiBsb29rcyBpbnNpZGUgdGhlIExpbmVCb3ggdG8gZmlu
ZCB0aGVzZSBzcGFubmluZyBpbmxpbmUgYm94ZXMgKHNlZSBjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzKQorCisgICAgICAgIEluIHRoaXMgcGF0Y2ggd2Ugc3RhcnQgaW5jbHVkaW5nIHN1
Y2ggc3Bhbm5pbmcgaW5saW5lIGJveGVzIGluIHRoZSBydW4gbGlzdC4KKyAgICAgICAgICBbaW5s
aW5lIGJveF1bZmlyc3QgbGluZSB0ZXh0XVtoYXJkIGxpbmVicmVha11baW5saW5lIGJveF1bc2Vj
b25kIGxpbmUgdGV4dF1baGFyZCBsaW5lYnJlYWtdW2lubGluZSBib3hdW3RoaXJkIGxpbmUgdGV4
dF0KKworICAgICAgICBUaGlzIGlzIGFsc28gaW4gcHJlcGFyYXRpb24gZm9yIG1ha2luZyBMaW5l
Qm94IGNvbXBsZXRlbHkgaW50ZXJuYWwgdG8gdGhlIGxheW91dCBjb2RlLiAKKworICAgICAgICAq
IGxheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6
OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KToKKyAgICAgICAgKiBsYXlvdXQvZm9ybWF0
dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmg6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OkxpbmVSdW46OmlzVGV4dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OkxpbmVSdW46OmlzTGluZUJyZWFrIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6
TGluZVJ1bjo6aXNBdG9taWNJbmxpbmVMZXZlbEJveCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXQ6OkxpbmVSdW46OmlzSW5saW5lQm94IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dDo6TGluZVJ1bjo6aXNSb290SW5saW5lQm94IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6TGluZVJ1bjo6dHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkxpbmVSdW46Omhhc0NvbnRlbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
OjpMaW5lUnVuOjppc0xpbmVTcGFubmluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkxpbmVSdW46OkxpbmVSdW4pOgorICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50QnVpbGRlcjo6YnVpbGQgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVy
OjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24v
TGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5oOgorCiAyMDIxLTA4LTI0ICBB
bGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbSUZDXVtJbnRlZ3JhdGlv
bl0gTm9uLWVtcHR5IGlubGluZSBib3hlcyBtYXkgYWZmZWN0IG92ZXJmbG93IHNjcm9sbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1h
dHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4IDQ5
NTJjYmZlZjAwODg0MjI0NTg0MzE2MmRjNWI4Mjc1NzhjYmFjYzQuLjAzYmM0NGRiOTdlNjYyODMy
ZDU4ODAxOTgxNWVjODk4NGUzNjMyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9Jbmxp
bmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTYwNSw2ICs2MDUsOSBAQCBJbmxpbmVSZWN0IElu
bGluZUZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlR2VvbWV0cnlGb3JMaW5lQ29udGVudChjb25z
dCBMaW5lQnVpbAogICAgICAgICByZXR1cm4gbGluZUJveExvZ2ljYWxSZWN0OwogICAgIH0KIAor
ICAgIC8vIFNwYW5uaW5nIGlubGluZSBib3hlcyBzdGFydCBhdCB0aGUgdmVyeSBiZWdpbm5pbmcg
b2YgdGhlIGxpbmUuCisgICAgLy8gRklYTUU6IE9mZnNldCBpdCB3aXRoIHRoZSBydW4gZm9yIHRo
ZSByb290IGlubGluZSBib3gsIHdoZW4gd2Ugc3RhcnQgY29uc3RydWN0aW5nIHJ1bnMgZm9yIHRo
ZW0uCisgICAgYXV0byBsaW5lU3Bhbm5pbmdJbmxpbmVCb3hJbmRleCA9IGZvcm1hdHRpbmdTdGF0
ZS5saW5lUnVucygpLnNpemUoKTsKICAgICBIYXNoU2V0PGNvbnN0IEJveCo+IGlubGluZUJveFN0
YXJ0U2V0OwogICAgIGF1dG8gY29uc3RydWN0TGluZVJ1bnNBbmRVcGRhdGVCb3hHZW9tZXRyeSA9
IFsmXSB7CiAgICAgICAgIC8vIENyZWF0ZSB0aGUgaW5saW5lIHJ1bnMgb24gdGhlIGN1cnJlbnQg
bGluZS4gVGhpcyBpcyBtb3N0bHkgdGV4dCBhbmQgYXRvbWljIGlubGluZSBydW5zLgpAQCAtNjEy
LDI4ICs2MTUsMjggQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0
ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgIC8vIEZJ
WE1FOiBXZSBzaG91bGQgbm90IG5lZWQgdG8gY29uc3RydWN0IGEgbGluZSBydW4gZm9yIDxicj4u
CiAgICAgICAgICAgICBhdXRvJiBsYXlvdXRCb3ggPSBsaW5lUnVuLmxheW91dEJveCgpOwogICAg
ICAgICAgICAgaWYgKGxpbmVSdW4uaXNUZXh0KCkpIHsKLSAgICAgICAgICAgICAgICBmb3JtYXR0
aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBsaW5lQm94LmxvZ2lj
YWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKSwgbGluZVJ1bi5leHBhbnNpb24oKSwgbGluZVJ1bi50
ZXh0Q29udGVudCgpIH0pOworICAgICAgICAgICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5l
UnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpUZXh0LCBsYXlvdXRCb3gsIGxpbmVCb3gu
bG9naWNhbFJlY3RGb3JUZXh0UnVuKGxpbmVSdW4pLCBsaW5lUnVuLmV4cGFuc2lvbigpLCBsaW5l
UnVuLnRleHRDb250ZW50KCkgfSk7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBpZiAobGluZVJ1bi5pc0xpbmVCcmVhaygpKSB7CiAgICAgICAg
ICAgICAgICAgaWYgKGxheW91dEJveC5pc0xpbmVCcmVha0JveCgpKSB7CiAgICAgICAgICAgICAg
ICAgICAgIC8vIE9ubHkgaGFyZCBsaW5lYnJlYWtzIGhhdmUgYXNzb2NpYXRlZCBsYXlvdXQgYm94
ZXMuCiAgICAgICAgICAgICAgICAgICAgIGF1dG8gbGluZUJyZWFrQm94UmVjdCA9IGxpbmVCb3gu
bG9naWNhbFJlY3RGb3JMaW5lQnJlYWtCb3gobGF5b3V0Qm94KTsKLSAgICAgICAgICAgICAgICAg
ICAgZm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbGlu
ZUJyZWFrQm94UmVjdCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAg
ICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgTGluZVJ1bjo6
VHlwZTo6TGluZUJyZWFrLCBsYXlvdXRCb3gsIGxpbmVCcmVha0JveFJlY3QsIGxpbmVSdW4uZXhw
YW5zaW9uKCksIHsgfSB9KTsKIAogICAgICAgICAgICAgICAgICAgICBhdXRvJiBib3hHZW9tZXRy
eSA9IGZvcm1hdHRpbmdTdGF0ZS5ib3hHZW9tZXRyeShsYXlvdXRCb3gpOwogICAgICAgICAgICAg
ICAgICAgICBsaW5lQnJlYWtCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNhbFJlY3QudG9wTGVm
dCgpKTsKICAgICAgICAgICAgICAgICAgICAgYm94R2VvbWV0cnkuc2V0TG9naWNhbFRvcExlZnQo
dG9MYXlvdXRQb2ludChsaW5lQnJlYWtCb3hSZWN0LnRvcExlZnQoKSkpOwogICAgICAgICAgICAg
ICAgICAgICBib3hHZW9tZXRyeS5zZXRDb250ZW50Qm94SGVpZ2h0KHRvTGF5b3V0VW5pdChsaW5l
QnJlYWtCb3hSZWN0LmhlaWdodCgpKSk7CiAgICAgICAgICAgICAgICAgfSBlbHNlIAotICAgICAg
ICAgICAgICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5
b3V0Qm94LCBsaW5lQm94LmxvZ2ljYWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKSwgbGluZVJ1bi5l
eHBhbnNpb24oKSwgbGluZVJ1bi50ZXh0Q29udGVudCgpIH0pOworICAgICAgICAgICAgICAgICAg
ICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgTGluZVJ1bjo6VHlwZTo6
TGluZUJyZWFrLCBsYXlvdXRCb3gsIGxpbmVCb3gubG9naWNhbFJlY3RGb3JUZXh0UnVuKGxpbmVS
dW4pLCBsaW5lUnVuLmV4cGFuc2lvbigpLCBsaW5lUnVuLnRleHRDb250ZW50KCkgfSk7CiAgICAg
ICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAobGlu
ZVJ1bi5pc0JveCgpKSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKGxheW91dEJveC5pc0F0b21p
Y0lubGluZUxldmVsQm94KCkpOwogICAgICAgICAgICAgICAgIGF1dG8mIGJveEdlb21ldHJ5ID0g
Zm9ybWF0dGluZ1N0YXRlLmJveEdlb21ldHJ5KGxheW91dEJveCk7CiAgICAgICAgICAgICAgICAg
YXV0byBsb2dpY2FsQm9yZGVyQm94ID0gbGluZUJveC5sb2dpY2FsQm9yZGVyQm94Rm9yQXRvbWlj
SW5saW5lTGV2ZWxCb3gobGF5b3V0Qm94LCBib3hHZW9tZXRyeSk7Ci0gICAgICAgICAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbG9naWNh
bEJvcmRlckJveCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAgICAg
IGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpB
dG9taWNJbmxpbmVMZXZlbEJveCwgbGF5b3V0Qm94LCBsb2dpY2FsQm9yZGVyQm94LCBsaW5lUnVu
LmV4cGFuc2lvbigpLCB7IH0gfSk7CiAKICAgICAgICAgICAgICAgICBhdXRvIGJvcmRlckJveExv
Z2ljYWxUb3BMZWZ0ID0gbG9naWNhbEJvcmRlckJveC50b3BMZWZ0KCk7CiAgICAgICAgICAgICAg
ICAgLy8gTm90ZSB0aGF0IGlubGluZSBib3hlcyBhcmUgcmVsYXRpdmUgdG8gdGhlIGxpbmUgYW5k
IHRoZWlyIHRvcCBwb3NpdGlvbiBjYW4gYmUgbmVnYXRpdmUuCkBAIC02NDcsNyArNjUwLDcgQEAg
SW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGlu
ZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgIGlmIChsaW5lUnVuLmlzSW5saW5l
Qm94U3RhcnQoKSkgewogICAgICAgICAgICAgICAgIGF1dG8mIGJveEdlb21ldHJ5ID0gZm9ybWF0
dGluZ1N0YXRlLmJveEdlb21ldHJ5KGxheW91dEJveCk7CiAgICAgICAgICAgICAgICAgYXV0byBp
bmxpbmVCb3hMb2dpY2FsUmVjdCA9IGxpbmVCb3gubG9naWNhbEJvcmRlckJveEZvcklubGluZUJv
eChsYXlvdXRCb3gsIGJveEdlb21ldHJ5KTsKLSAgICAgICAgICAgICAgICBmb3JtYXR0aW5nU3Rh
dGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBpbmxpbmVCb3hMb2dpY2FsUmVj
dCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAgICAgIGZvcm1hdHRp
bmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpJbmxpbmVCb3gs
IGxheW91dEJveCwgaW5saW5lQm94TG9naWNhbFJlY3QsIGxpbmVSdW4uZXhwYW5zaW9uKCksIHsg
fSwgbGluZUJveC5pbmxpbmVMZXZlbEJveEZvckxheW91dEJveChsYXlvdXRCb3gpLmhhc0NvbnRl
bnQoKSB9KTsKICAgICAgICAgICAgICAgICBpbmxpbmVCb3hTdGFydFNldC5hZGQoJmxheW91dEJv
eCk7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CkBAIC02ODIsNiAr
Njg1LDggQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21l
dHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgICAgICBjb250aW51
ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIC8vIE1pZGRsZSBvciBlbmQgb2YgdGhlIGlu
bGluZSBib3guIExldCdzIHN0cmV0Y2ggdGhlIGJveCBhcyBuZWVkZWQuCisgICAgICAgICAgICBm
b3JtYXR0aW5nU3RhdGUubGluZVJ1bnMoKS5pbnNlcnQobGluZVNwYW5uaW5nSW5saW5lQm94SW5k
ZXgrKywgeyBsaW5lSW5kZXgsIExpbmVSdW46OlR5cGU6OklubGluZUJveCwgbGF5b3V0Qm94LCBp
bmxpbmVCb3hCb3JkZXJCb3gsIHsgfSwgeyB9LCBpbmxpbmVMZXZlbEJveC5oYXNDb250ZW50KCks
IHRydWUgfSk7CisKICAgICAgICAgICAgIGF1dG8gZW5jbG9zaW5nQm9yZGVyQm94UmVjdCA9IEJv
eEdlb21ldHJ5Ojpib3JkZXJCb3hSZWN0KGJveEdlb21ldHJ5KTsKICAgICAgICAgICAgIGVuY2xv
c2luZ0JvcmRlckJveFJlY3QuZXhwYW5kVG9Db250YWluKGxvZ2ljYWxSZWN0KTsKICAgICAgICAg
ICAgIGJveEdlb21ldHJ5LnNldExvZ2ljYWxMZWZ0KGVuY2xvc2luZ0JvcmRlckJveFJlY3QubGVm
dCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4
dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaAppbmRleCA4MjI0MmRkMDcxOGI0NjUy
ZDM2OGU2YmQ3OGQ1YzNkNGE5NjJjMGNhLi5iYTFhNmVjMzY1MGIxYTAwNDE5NWRhZjBmNzQ2NmNj
ZjU3MGMxNTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0Nv
bnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5oCkBAIC01OSw4ICs1OSwy
NiBAQCBzdHJ1Y3QgTGluZVJ1biB7CiAgICAgICAgIFN0cmluZyBtX2NvbnRlbnRTdHJpbmc7CiAg
ICAgfTsKIAorICAgIGVudW0gY2xhc3MgVHlwZSB7CisgICAgICAgIFRleHQsCisgICAgICAgIExp
bmVCcmVhaywKKyAgICAgICAgQXRvbWljSW5saW5lTGV2ZWxCb3gsCisgICAgICAgIElubGluZUJv
eCwKKyAgICAgICAgUm9vdElubGluZUJveCwKKyAgICAgICAgR2VuZXJpY0lubGluZUxldmVsQm94
CisgICAgfTsKICAgICBzdHJ1Y3QgRXhwYW5zaW9uOwotICAgIExpbmVSdW4oc2l6ZV90IGxpbmVJ
bmRleCwgY29uc3QgQm94JiwgY29uc3QgSW5saW5lUmVjdCYsIEV4cGFuc2lvbiwgc3RkOjpvcHRp
b25hbDxUZXh0PiA9IHN0ZDo6bnVsbG9wdCk7CisgICAgTGluZVJ1bihzaXplX3QgbGluZUluZGV4
LCBUeXBlLCBjb25zdCBCb3gmLCBjb25zdCBJbmxpbmVSZWN0JiwgRXhwYW5zaW9uLCBzdGQ6Om9w
dGlvbmFsPFRleHQ+ID0gc3RkOjpudWxsb3B0LCBib29sIGhhc0NvbnRlbnQgPSB0cnVlLCBib29s
IGlzTGluZVNwYW5uaW5nID0gZmFsc2UpOworCisgICAgYm9vbCBpc1RleHQoKSBjb25zdCB7IHJl
dHVybiBtX3R5cGUgPT0gVHlwZTo6VGV4dDsgfQorICAgIGJvb2wgaXNMaW5lQnJlYWsoKSBjb25z
dCB7IHJldHVybiBtX3R5cGUgPT0gVHlwZTo6TGluZUJyZWFrOyB9CisgICAgYm9vbCBpc0F0b21p
Y0lubGluZUxldmVsQm94KCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09IFR5cGU6OkF0b21pY0lu
bGluZUxldmVsQm94OyB9CisgICAgYm9vbCBpc0lubGluZUJveCgpIGNvbnN0IHsgcmV0dXJuIG1f
dHlwZSA9PSBUeXBlOjpJbmxpbmVCb3ggfHwgaXNSb290SW5saW5lQm94KCk7IH0KKyAgICBib29s
IGlzUm9vdElubGluZUJveCgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBUeXBlOjpSb290SW5s
aW5lQm94OyB9CisgICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CisKKyAg
ICBib29sIGhhc0NvbnRlbnQoKSBjb25zdCB7IHJldHVybiBtX2hhc0NvbnRlbnQ7IH0KKyAgICBi
b29sIGlzTGluZVNwYW5uaW5nKCkgY29uc3QgeyByZXR1cm4gbV9pc0xpbmVTcGFubmluZzsgfQog
CiAgICAgY29uc3QgSW5saW5lUmVjdCYgbG9naWNhbFJlY3QoKSBjb25zdCB7IHJldHVybiBtX2xv
Z2ljYWxSZWN0OyB9CiAKQEAgLTg3LDE2ICsxMDUsMjMgQEAgc3RydWN0IExpbmVSdW4gewogCiBw
cml2YXRlOgogICAgIGNvbnN0IHNpemVfdCBtX2xpbmVJbmRleDsKKyAgICBjb25zdCBUeXBlIG1f
dHlwZTsKICAgICBXZWFrUHRyPGNvbnN0IExheW91dDo6Qm94PiBtX2xheW91dEJveDsKICAgICBJ
bmxpbmVSZWN0IG1fbG9naWNhbFJlY3Q7CisgICAgYm9vbCBtX2hhc0NvbnRlbnQgeyB0cnVlIH07
CisgICAgLy8gRklYTUU6IFRoaXMgaXMgdGVtcG9yYXJ5IHVudGlsIGFmdGVyIGl0ZXJhdG9ycyBj
YW4gc2tpcCBvdmVyIGxpbmUgc3Bhbm5pbmcvcm9vdCBpbmxpbmUgYm94ZXMuCisgICAgYm9vbCBt
X2lzTGluZVNwYW5uaW5nIHsgZmFsc2UgfTsKICAgICBFeHBhbnNpb24gbV9leHBhbnNpb247CiAg
ICAgc3RkOjpvcHRpb25hbDxUZXh0PiBtX3RleHQ7CiB9OwogCi1pbmxpbmUgTGluZVJ1bjo6TGlu
ZVJ1bihzaXplX3QgbGluZUluZGV4LCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25z
dCBJbmxpbmVSZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRp
b25hbDxUZXh0PiB0ZXh0KQoraW5saW5lIExpbmVSdW46OkxpbmVSdW4oc2l6ZV90IGxpbmVJbmRl
eCwgVHlwZSB0eXBlLCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25zdCBJbmxpbmVS
ZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRpb25hbDxUZXh0
PiB0ZXh0LCBib29sIGhhc0NvbnRlbnQsIGJvb2wgaXNMaW5lU3Bhbm5pbmcpCiAgICAgOiBtX2xp
bmVJbmRleChsaW5lSW5kZXgpCisgICAgLCBtX3R5cGUodHlwZSkKICAgICAsIG1fbGF5b3V0Qm94
KG1ha2VXZWFrUHRyKGxheW91dEJveCkpCiAgICAgLCBtX2xvZ2ljYWxSZWN0KGxvZ2ljYWxSZWN0
KQorICAgICwgbV9oYXNDb250ZW50KGhhc0NvbnRlbnQpCisgICAgLCBtX2lzTGluZVNwYW5uaW5n
KGlzTGluZVNwYW5uaW5nKQogICAgICwgbV9leHBhbnNpb24oZXhwYW5zaW9uKQogICAgICwgbV90
ZXh0KHRleHQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVp
bGRlci5jcHAKaW5kZXggZTk5MWQzZDkyZjVjOTc0NmVkMDMyMmQ1YmIzYjlhNjliMTIzMzVkOS4u
YjYzYjIwOGE3ZTJiYjE4MWVlZjkyY2E4NmY1MmEzODlhZWRjYmUxNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29u
dGVudEJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcApAQCAtMTY2LDcgKzE2Niw2
IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmJ1aWxkKGNvbnN0IExheW91dDo6SW5saW5l
Rm9ybWF0dGluZ1N0YXRlJiBpbmxpbmVGb3JtCiB7CiAgICAgYXV0byBsaW5lTGV2ZWxWaXN1YWxB
ZGp1c3RtZW50c0ZvclJ1bnMgPSBjb21wdXRlTGluZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JS
dW5zKGlubGluZUZvcm1hdHRpbmdTdGF0ZSk7CiAgICAgY3JlYXRlRGlzcGxheUxpbmVSdW5zKGlu
bGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpLCBpbmxpbmVGb3JtYXR0aW5nU3RhdGUubGluZVJ1
bnMoKSwgaW5saW5lQ29udGVudCwgbGluZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zKTsK
LSAgICBjcmVhdGVEaXNwbGF5Tm9uUm9vdElubGluZUJveGVzKGlubGluZUZvcm1hdHRpbmdTdGF0
ZSwgaW5saW5lQ29udGVudCk7CiAgICAgY3JlYXRlRGlzcGxheUxpbmVzKGlubGluZUZvcm1hdHRp
bmdTdGF0ZS5saW5lcygpLCBpbmxpbmVDb250ZW50LCBsaW5lTGV2ZWxWaXN1YWxBZGp1c3RtZW50
c0ZvclJ1bnMpOwogfQogCkBAIC0yNDUsNyArMjQ0LDIwIEBAIHZvaWQgSW5saW5lQ29udGVudEJ1
aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBs
aW5lCiAgICAgICAgICAgICBydW5SZWN0LnNldFkocm91bmRUb0ludChydW5SZWN0LnkoKSkpOwog
ICAgICAgICAvLyBGSVhNRTogQWRkIHN1cHBvcnQgZm9yIG5vbi10ZXh0IGluayBvdmVyZmxvdy4K
ICAgICAgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBjYXNlcyB3aGVuIHRoZSBydW4gaXMg
YWZ0ZXIgZWxsaXBzaXMuCi0gICAgICAgIGlubGluZUNvbnRlbnQucnVucy5hcHBlbmQoeyBsaW5l
SW5kZXgsIGxheW91dEJveCwgcnVuUmVjdCwgcnVuUmVjdCwgeyB9LCB7IH0gfSk7CisgICAgICAg
IGlmIChsaW5lUnVuLmlzSW5saW5lQm94KCkpIHsKKyAgICAgICAgICAgIGF1dG8gbGluZVJ1blJl
Y3QgPSBsaW5lUnVuLmxvZ2ljYWxSZWN0KCk7CisgICAgICAgICAgICBsaW5lUnVuUmVjdC5tb3Zl
QnkobGluZUJveExvZ2ljYWxSZWN0LnRvcExlZnQoKSk7CisgICAgICAgICAgICBhdXRvIGhhc1Nj
cm9sbGFibGVDb250ZW50ID0gWyZdIHsKKyAgICAgICAgICAgICAgICAvLyBJbiBzdGFuZGFyZHMg
bW9kZSwgaW5saW5lIGJveGVzIGFsd2F5cyBzdGFydCB3aXRoIGFuIGltYWdpbmFyeSBzdHJ1dC4K
KyAgICAgICAgICAgICAgICByZXR1cm4gbV9sYXlvdXRTdGF0ZS5pblN0YW5kYXJkc01vZGUoKSB8
fCBsaW5lUnVuLmhhc0NvbnRlbnQoKSB8fCBnZW9tZXRyeS5ob3Jpem9udGFsQm9yZGVyKCkgfHwg
KGdlb21ldHJ5Lmhvcml6b250YWxQYWRkaW5nKCkgJiYgZ2VvbWV0cnkuaG9yaXpvbnRhbFBhZGRp
bmcoKS52YWx1ZSgpKTsKKyAgICAgICAgICAgIH07CisgICAgICAgICAgICBpbmxpbmVDb250ZW50
Lm5vblJvb3RJbmxpbmVCb3hlcy5hcHBlbmQoeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbGluZVJ1
blJlY3QsIGhhc1Njcm9sbGFibGVDb250ZW50KCkgfSk7CisgICAgICAgICAgICBpZiAoIWxpbmVS
dW4uaXNMaW5lU3Bhbm5pbmcoKSkgeworICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBSdW4gaXRl
cmF0b3JzIHdpdGggKHRleHQpcnVucyBzcGFubmluZyBvdmVyIG11bHRpcGxlIGxpbmVzIGV4cGVj
dCBubyAiaW4tYmV0d2VlbiIgcnVucyAoZS5nLiBsaW5lIHNwYW5uaW5nIG9yIHJvb3QgaW5saW5l
IGJveGVzKS4KKyAgICAgICAgICAgICAgICBpbmxpbmVDb250ZW50LnJ1bnMuYXBwZW5kKHsgbGlu
ZUluZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIHJ1blJlY3QsIHsgfSwgeyB9IH0pOworICAgICAg
ICAgICAgfQorICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIGlubGluZUNvbnRlbnQucnVucy5h
cHBlbmQoeyBsaW5lSW5kZXgsIGxheW91dEJveCwgcnVuUmVjdCwgcnVuUmVjdCwgeyB9LCB7IH0g
fSk7CiAgICAgfTsKIAogICAgIGF1dG8gY3JlYXRlRGlzcGxheVRleHRSdW5Gb3JSYW5nZSA9IFsm
XShhdXRvJiBsaW5lUnVuLCBhdXRvIHN0YXJ0T2Zmc2V0LCBhdXRvIGVuZE9mZnNldCkgewpAQCAt
MzY4LDMxICszODAsNiBAQCB2b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5
TGluZXMoY29uc3QgTGF5b3V0OjpJbmxpbmVMaW5lcyYgbGluZXMsCiAgICAgfQogfQogCi12b2lk
IElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElubGluZUJveGVzKGNv
bnN0IExheW91dDo6SW5saW5lRm9ybWF0dGluZ1N0YXRlJiBpbmxpbmVGb3JtYXR0aW5nU3RhdGUs
IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQpIGNvbnN0Ci17Ci0gICAgZm9yIChzaXplX3Qg
bGluZUluZGV4ID0gMDsgbGluZUluZGV4IDwgaW5saW5lRm9ybWF0dGluZ1N0YXRlLmxpbmVCb3hl
cygpLnNpemUoKTsgKytsaW5lSW5kZXgpIHsKLSAgICAgICAgYXV0byYgbGluZUJveCA9IGlubGlu
ZUZvcm1hdHRpbmdTdGF0ZS5saW5lQm94ZXMoKVtsaW5lSW5kZXhdOwotICAgICAgICBpZiAoIWxp
bmVCb3guaGFzSW5saW5lQm94KCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBh
dXRvIGxpbmVCb3hMb2dpY2FsUmVjdCA9IGlubGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpW2xp
bmVJbmRleF0ubGluZUJveExvZ2ljYWxSZWN0KCk7Ci0gICAgICAgIGZvciAoYXV0byYgaW5saW5l
TGV2ZWxCb3ggOiBsaW5lQm94Lm5vblJvb3RJbmxpbmVMZXZlbEJveGVzKCkpIHsKLSAgICAgICAg
ICAgIGlmICghaW5saW5lTGV2ZWxCb3guaXNJbmxpbmVCb3goKSkKLSAgICAgICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgICAgIGF1dG8mIGxheW91dEJveCA9IGlubGluZUxldmVsQm94Lmxh
eW91dEJveCgpOwotICAgICAgICAgICAgYXV0byYgYm94R2VvbWV0cnkgPSBtX2xheW91dFN0YXRl
Lmdlb21ldHJ5Rm9yQm94KGxheW91dEJveCk7Ci0gICAgICAgICAgICBhdXRvIGlubGluZUJveFJl
Y3QgPSBsaW5lQm94LmxvZ2ljYWxCb3JkZXJCb3hGb3JJbmxpbmVCb3gobGF5b3V0Qm94LCBib3hH
ZW9tZXRyeSk7Ci0gICAgICAgICAgICBpbmxpbmVCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNh
bFJlY3QudG9wTGVmdCgpKTsKLQotICAgICAgICAgICAgYXV0byBoYXNTY3JvbGxhYmxlQ29udGVu
dCA9IFsmXSB7Ci0gICAgICAgICAgICAgICAgLy8gSW4gc3RhbmRhcmRzIG1vZGUsIGlubGluZSBi
b3hlcyBhbHdheXMgc3RhcnQgd2l0aCBhbiBpbWFnaW5hcnkgc3RydXQuCi0gICAgICAgICAgICAg
ICAgcmV0dXJuIG1fbGF5b3V0U3RhdGUuaW5TdGFuZGFyZHNNb2RlKCkgfHwgaW5saW5lTGV2ZWxC
b3guaGFzQ29udGVudCgpIHx8IGJveEdlb21ldHJ5Lmhvcml6b250YWxCb3JkZXIoKSB8fCAoYm94
R2VvbWV0cnkuaG9yaXpvbnRhbFBhZGRpbmcoKSAmJiBib3hHZW9tZXRyeS5ob3Jpem9udGFsUGFk
ZGluZygpLnZhbHVlKCkpOwotICAgICAgICAgICAgfTsKLSAgICAgICAgICAgIGlubGluZUNvbnRl
bnQubm9uUm9vdElubGluZUJveGVzLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBpbmxp
bmVCb3hSZWN0LCBoYXNTY3JvbGxhYmxlQ29udGVudCgpIH0pOwotICAgICAgICB9Ci0gICAgfQot
fQotCiB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRl
ci5oCmluZGV4IDU5YjE3MDU1ZWVmNDI3NmQ1NWEwNDE1YmU4NmE5MmI2MTBjZjRlNzEuLjJmYjAx
ZTJkMmYwNjc0MWU0NGE4MjA2MWMwMjNkMGI1ZWQ4MjZkMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRC
dWlsZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dElu
dGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuaApAQCAtNTIsNyArNTIsNiBAQCBwcml2YXRl
OgogICAgIExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVuc0xpc3QgY29tcHV0ZUxpbmVM
ZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1hdHRp
bmdTdGF0ZSYpIGNvbnN0OwogICAgIHZvaWQgY3JlYXRlRGlzcGxheUxpbmVSdW5zKGNvbnN0IExh
eW91dDo6SW5saW5lTGluZXMmLCBjb25zdCBMYXlvdXQ6OklubGluZUxpbmVSdW5zJiwgSW5saW5l
Q29udGVudCYsIGNvbnN0IExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVuc0xpc3QmKSBj
b25zdDsKICAgICB2b2lkIGNyZWF0ZURpc3BsYXlMaW5lcyhjb25zdCBMYXlvdXQ6OklubGluZUxp
bmVzJiwgSW5saW5lQ29udGVudCYsIGNvbnN0IExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9y
UnVuc0xpc3QmKSBjb25zdDsKLSAgICB2b2lkIGNyZWF0ZURpc3BsYXlOb25Sb290SW5saW5lQm94
ZXMoY29uc3QgTGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nU3RhdGUmLCBJbmxpbmVDb250ZW50Jikg
Y29uc3Q7CiAKICAgICBjb25zdCBMYXlvdXQ6OkxheW91dFN0YXRlJiBtX2xheW91dFN0YXRlOwog
ICAgIGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgbV9ibG9ja0Zsb3c7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436343</attachid>
            <date>2021-08-24 16:23:55 -0700</date>
            <delta_ts>2021-08-25 10:51:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228059-20210824162354.patch</filename>
            <type>text/plain</type>
            <size>15430</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNDk1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzNhNmZiZmFkMGFlN2Rm
OGQ1NmE0MmY0MGFhZmYzYjQ2ZjZjNDMyNy4uZWUxYjJiMjZiNjAzYWEyMDJiMGI2YTAxMTU0YzA0
Njk2MGRjZjVhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTA4LTI0ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIExpbmUgc3Bh
bm5pbmcgaW5saW5lIGJveGVzIHNob3VsZCBhbHNvIGJlIGluIHRoZSBydW4gbGlzdAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI4MDU5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS84MTA3NzQyMD4KKworICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBL
b2l2aXN0by4KKworICAgICAgICBDb25zaWRlciB0aGUgZm9sbG93aW5nIGNhc2U6CisgICAgICAg
ICAgPGRpdj48c3Bhbj5maXJzdCBsaW5lIHRleHQ8YnI+c2Vjb25kIGxpbmUgdGV4dDxicj50aGly
ZCBsaW5lIHRleHQ8L3NwYW4+PC9kaXY+CisKKyAgICAgICAgSGVyZSBpcyB0aGUgbGlzdCBvZiBy
dW5zIHdlIGdlbmVyYXRlIGZvciB0aGUgY29udGVudCBhYm92ZToKKworICAgICAgICAgIFtpbmxp
bmUgYm94XVtmaXJzdCBsaW5lIHRleHRdW2hhcmQgbGluZWJyZWFrXVtzZWNvbmQgbGluZSB0ZXh0
XVtoYXJkIGxpbmVicmVha11bdGhpcmQgbGluZSB0ZXh0XQorCisgICAgICAgIFRoaXMgbGlzdCBk
b2VzIG5vdCBpbmNsdWRlIHRoZSBzcGFubmluZyBpbmxpbmUgYm94ZXMsIGkuZS4gdGhlIG1pc3Np
bmcgaW5saW5lIGJveCBvbiB0aGUgc2Vjb25kIGFuZCB0aGUgdGhpcmQgbGluZS4KKyAgICAgICAg
VGhlIGludGVncmF0aW9uIGNvZGUgdGhlbiBsb29rcyBpbnNpZGUgdGhlIExpbmVCb3ggdG8gZmlu
ZCB0aGVzZSBzcGFubmluZyBpbmxpbmUgYm94ZXMgKHNlZSBjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzKQorCisgICAgICAgIEluIHRoaXMgcGF0Y2ggd2Ugc3RhcnQgaW5jbHVkaW5nIHN1
Y2ggc3Bhbm5pbmcgaW5saW5lIGJveGVzIGluIHRoZSBydW4gbGlzdC4KKyAgICAgICAgICBbaW5s
aW5lIGJveF1bZmlyc3QgbGluZSB0ZXh0XVtoYXJkIGxpbmVicmVha11baW5saW5lIGJveF1bc2Vj
b25kIGxpbmUgdGV4dF1baGFyZCBsaW5lYnJlYWtdW2lubGluZSBib3hdW3RoaXJkIGxpbmUgdGV4
dF0KKworICAgICAgICBUaGlzIGlzIGFsc28gaW4gcHJlcGFyYXRpb24gZm9yIG1ha2luZyBMaW5l
Qm94IGNvbXBsZXRlbHkgaW50ZXJuYWwgdG8gdGhlIGxheW91dCBjb2RlLiAKKworICAgICAgICAq
IGxheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6
OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KToKKyAgICAgICAgKiBsYXlvdXQvZm9ybWF0
dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmg6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OkxpbmVSdW46OmlzVGV4dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OkxpbmVSdW46OmlzTGluZUJyZWFrIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6
TGluZVJ1bjo6aXNBdG9taWNJbmxpbmVMZXZlbEJveCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXQ6OkxpbmVSdW46OmlzSW5saW5lQm94IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dDo6TGluZVJ1bjo6aXNSb290SW5saW5lQm94IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6TGluZVJ1bjo6dHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkxpbmVSdW46Omhhc0NvbnRlbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
OjpMaW5lUnVuOjppc0xpbmVTcGFubmluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkxpbmVSdW46OkxpbmVSdW4pOgorICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50QnVpbGRlcjo6YnVpbGQgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVy
OjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24v
TGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5oOgorCiAyMDIxLTA4LTI0ICBB
bGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbSUZDXVtJbnRlZ3JhdGlv
bl0gTm9uLWVtcHR5IGlubGluZSBib3hlcyBtYXkgYWZmZWN0IG92ZXJmbG93IHNjcm9sbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1h
dHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4IDQ5
NTJjYmZlZjAwODg0MjI0NTg0MzE2MmRjNWI4Mjc1NzhjYmFjYzQuLjAzYmM0NGRiOTdlNjYyODMy
ZDU4ODAxOTgxNWVjODk4NGUzNjMyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9Jbmxp
bmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTYwNSw2ICs2MDUsOSBAQCBJbmxpbmVSZWN0IElu
bGluZUZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlR2VvbWV0cnlGb3JMaW5lQ29udGVudChjb25z
dCBMaW5lQnVpbAogICAgICAgICByZXR1cm4gbGluZUJveExvZ2ljYWxSZWN0OwogICAgIH0KIAor
ICAgIC8vIFNwYW5uaW5nIGlubGluZSBib3hlcyBzdGFydCBhdCB0aGUgdmVyeSBiZWdpbm5pbmcg
b2YgdGhlIGxpbmUuCisgICAgLy8gRklYTUU6IE9mZnNldCBpdCB3aXRoIHRoZSBydW4gZm9yIHRo
ZSByb290IGlubGluZSBib3gsIHdoZW4gd2Ugc3RhcnQgY29uc3RydWN0aW5nIHJ1bnMgZm9yIHRo
ZW0uCisgICAgYXV0byBsaW5lU3Bhbm5pbmdJbmxpbmVCb3hJbmRleCA9IGZvcm1hdHRpbmdTdGF0
ZS5saW5lUnVucygpLnNpemUoKTsKICAgICBIYXNoU2V0PGNvbnN0IEJveCo+IGlubGluZUJveFN0
YXJ0U2V0OwogICAgIGF1dG8gY29uc3RydWN0TGluZVJ1bnNBbmRVcGRhdGVCb3hHZW9tZXRyeSA9
IFsmXSB7CiAgICAgICAgIC8vIENyZWF0ZSB0aGUgaW5saW5lIHJ1bnMgb24gdGhlIGN1cnJlbnQg
bGluZS4gVGhpcyBpcyBtb3N0bHkgdGV4dCBhbmQgYXRvbWljIGlubGluZSBydW5zLgpAQCAtNjEy
LDI4ICs2MTUsMjggQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0
ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgIC8vIEZJ
WE1FOiBXZSBzaG91bGQgbm90IG5lZWQgdG8gY29uc3RydWN0IGEgbGluZSBydW4gZm9yIDxicj4u
CiAgICAgICAgICAgICBhdXRvJiBsYXlvdXRCb3ggPSBsaW5lUnVuLmxheW91dEJveCgpOwogICAg
ICAgICAgICAgaWYgKGxpbmVSdW4uaXNUZXh0KCkpIHsKLSAgICAgICAgICAgICAgICBmb3JtYXR0
aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBsaW5lQm94LmxvZ2lj
YWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKSwgbGluZVJ1bi5leHBhbnNpb24oKSwgbGluZVJ1bi50
ZXh0Q29udGVudCgpIH0pOworICAgICAgICAgICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5l
UnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpUZXh0LCBsYXlvdXRCb3gsIGxpbmVCb3gu
bG9naWNhbFJlY3RGb3JUZXh0UnVuKGxpbmVSdW4pLCBsaW5lUnVuLmV4cGFuc2lvbigpLCBsaW5l
UnVuLnRleHRDb250ZW50KCkgfSk7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBpZiAobGluZVJ1bi5pc0xpbmVCcmVhaygpKSB7CiAgICAgICAg
ICAgICAgICAgaWYgKGxheW91dEJveC5pc0xpbmVCcmVha0JveCgpKSB7CiAgICAgICAgICAgICAg
ICAgICAgIC8vIE9ubHkgaGFyZCBsaW5lYnJlYWtzIGhhdmUgYXNzb2NpYXRlZCBsYXlvdXQgYm94
ZXMuCiAgICAgICAgICAgICAgICAgICAgIGF1dG8gbGluZUJyZWFrQm94UmVjdCA9IGxpbmVCb3gu
bG9naWNhbFJlY3RGb3JMaW5lQnJlYWtCb3gobGF5b3V0Qm94KTsKLSAgICAgICAgICAgICAgICAg
ICAgZm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbGlu
ZUJyZWFrQm94UmVjdCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAg
ICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgTGluZVJ1bjo6
VHlwZTo6TGluZUJyZWFrLCBsYXlvdXRCb3gsIGxpbmVCcmVha0JveFJlY3QsIGxpbmVSdW4uZXhw
YW5zaW9uKCksIHsgfSB9KTsKIAogICAgICAgICAgICAgICAgICAgICBhdXRvJiBib3hHZW9tZXRy
eSA9IGZvcm1hdHRpbmdTdGF0ZS5ib3hHZW9tZXRyeShsYXlvdXRCb3gpOwogICAgICAgICAgICAg
ICAgICAgICBsaW5lQnJlYWtCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNhbFJlY3QudG9wTGVm
dCgpKTsKICAgICAgICAgICAgICAgICAgICAgYm94R2VvbWV0cnkuc2V0TG9naWNhbFRvcExlZnQo
dG9MYXlvdXRQb2ludChsaW5lQnJlYWtCb3hSZWN0LnRvcExlZnQoKSkpOwogICAgICAgICAgICAg
ICAgICAgICBib3hHZW9tZXRyeS5zZXRDb250ZW50Qm94SGVpZ2h0KHRvTGF5b3V0VW5pdChsaW5l
QnJlYWtCb3hSZWN0LmhlaWdodCgpKSk7CiAgICAgICAgICAgICAgICAgfSBlbHNlIAotICAgICAg
ICAgICAgICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5
b3V0Qm94LCBsaW5lQm94LmxvZ2ljYWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKSwgbGluZVJ1bi5l
eHBhbnNpb24oKSwgbGluZVJ1bi50ZXh0Q29udGVudCgpIH0pOworICAgICAgICAgICAgICAgICAg
ICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgTGluZVJ1bjo6VHlwZTo6
TGluZUJyZWFrLCBsYXlvdXRCb3gsIGxpbmVCb3gubG9naWNhbFJlY3RGb3JUZXh0UnVuKGxpbmVS
dW4pLCBsaW5lUnVuLmV4cGFuc2lvbigpLCBsaW5lUnVuLnRleHRDb250ZW50KCkgfSk7CiAgICAg
ICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAobGlu
ZVJ1bi5pc0JveCgpKSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKGxheW91dEJveC5pc0F0b21p
Y0lubGluZUxldmVsQm94KCkpOwogICAgICAgICAgICAgICAgIGF1dG8mIGJveEdlb21ldHJ5ID0g
Zm9ybWF0dGluZ1N0YXRlLmJveEdlb21ldHJ5KGxheW91dEJveCk7CiAgICAgICAgICAgICAgICAg
YXV0byBsb2dpY2FsQm9yZGVyQm94ID0gbGluZUJveC5sb2dpY2FsQm9yZGVyQm94Rm9yQXRvbWlj
SW5saW5lTGV2ZWxCb3gobGF5b3V0Qm94LCBib3hHZW9tZXRyeSk7Ci0gICAgICAgICAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbG9naWNh
bEJvcmRlckJveCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAgICAg
IGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpB
dG9taWNJbmxpbmVMZXZlbEJveCwgbGF5b3V0Qm94LCBsb2dpY2FsQm9yZGVyQm94LCBsaW5lUnVu
LmV4cGFuc2lvbigpLCB7IH0gfSk7CiAKICAgICAgICAgICAgICAgICBhdXRvIGJvcmRlckJveExv
Z2ljYWxUb3BMZWZ0ID0gbG9naWNhbEJvcmRlckJveC50b3BMZWZ0KCk7CiAgICAgICAgICAgICAg
ICAgLy8gTm90ZSB0aGF0IGlubGluZSBib3hlcyBhcmUgcmVsYXRpdmUgdG8gdGhlIGxpbmUgYW5k
IHRoZWlyIHRvcCBwb3NpdGlvbiBjYW4gYmUgbmVnYXRpdmUuCkBAIC02NDcsNyArNjUwLDcgQEAg
SW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGlu
ZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgIGlmIChsaW5lUnVuLmlzSW5saW5l
Qm94U3RhcnQoKSkgewogICAgICAgICAgICAgICAgIGF1dG8mIGJveEdlb21ldHJ5ID0gZm9ybWF0
dGluZ1N0YXRlLmJveEdlb21ldHJ5KGxheW91dEJveCk7CiAgICAgICAgICAgICAgICAgYXV0byBp
bmxpbmVCb3hMb2dpY2FsUmVjdCA9IGxpbmVCb3gubG9naWNhbEJvcmRlckJveEZvcklubGluZUJv
eChsYXlvdXRCb3gsIGJveEdlb21ldHJ5KTsKLSAgICAgICAgICAgICAgICBmb3JtYXR0aW5nU3Rh
dGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBpbmxpbmVCb3hMb2dpY2FsUmVj
dCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAgICAgIGZvcm1hdHRp
bmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpJbmxpbmVCb3gs
IGxheW91dEJveCwgaW5saW5lQm94TG9naWNhbFJlY3QsIGxpbmVSdW4uZXhwYW5zaW9uKCksIHsg
fSwgbGluZUJveC5pbmxpbmVMZXZlbEJveEZvckxheW91dEJveChsYXlvdXRCb3gpLmhhc0NvbnRl
bnQoKSB9KTsKICAgICAgICAgICAgICAgICBpbmxpbmVCb3hTdGFydFNldC5hZGQoJmxheW91dEJv
eCk7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CkBAIC02ODIsNiAr
Njg1LDggQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21l
dHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgICAgICBjb250aW51
ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIC8vIE1pZGRsZSBvciBlbmQgb2YgdGhlIGlu
bGluZSBib3guIExldCdzIHN0cmV0Y2ggdGhlIGJveCBhcyBuZWVkZWQuCisgICAgICAgICAgICBm
b3JtYXR0aW5nU3RhdGUubGluZVJ1bnMoKS5pbnNlcnQobGluZVNwYW5uaW5nSW5saW5lQm94SW5k
ZXgrKywgeyBsaW5lSW5kZXgsIExpbmVSdW46OlR5cGU6OklubGluZUJveCwgbGF5b3V0Qm94LCBp
bmxpbmVCb3hCb3JkZXJCb3gsIHsgfSwgeyB9LCBpbmxpbmVMZXZlbEJveC5oYXNDb250ZW50KCks
IHRydWUgfSk7CisKICAgICAgICAgICAgIGF1dG8gZW5jbG9zaW5nQm9yZGVyQm94UmVjdCA9IEJv
eEdlb21ldHJ5Ojpib3JkZXJCb3hSZWN0KGJveEdlb21ldHJ5KTsKICAgICAgICAgICAgIGVuY2xv
c2luZ0JvcmRlckJveFJlY3QuZXhwYW5kVG9Db250YWluKGxvZ2ljYWxSZWN0KTsKICAgICAgICAg
ICAgIGJveEdlb21ldHJ5LnNldExvZ2ljYWxMZWZ0KGVuY2xvc2luZ0JvcmRlckJveFJlY3QubGVm
dCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4
dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaAppbmRleCA4MjI0MmRkMDcxOGI0NjUy
ZDM2OGU2YmQ3OGQ1YzNkNGE5NjJjMGNhLi5iYTFhNmVjMzY1MGIxYTAwNDE5NWRhZjBmNzQ2NmNj
ZjU3MGMxNTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0Nv
bnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5oCkBAIC01OSw4ICs1OSwy
NiBAQCBzdHJ1Y3QgTGluZVJ1biB7CiAgICAgICAgIFN0cmluZyBtX2NvbnRlbnRTdHJpbmc7CiAg
ICAgfTsKIAorICAgIGVudW0gY2xhc3MgVHlwZSB7CisgICAgICAgIFRleHQsCisgICAgICAgIExp
bmVCcmVhaywKKyAgICAgICAgQXRvbWljSW5saW5lTGV2ZWxCb3gsCisgICAgICAgIElubGluZUJv
eCwKKyAgICAgICAgUm9vdElubGluZUJveCwKKyAgICAgICAgR2VuZXJpY0lubGluZUxldmVsQm94
CisgICAgfTsKICAgICBzdHJ1Y3QgRXhwYW5zaW9uOwotICAgIExpbmVSdW4oc2l6ZV90IGxpbmVJ
bmRleCwgY29uc3QgQm94JiwgY29uc3QgSW5saW5lUmVjdCYsIEV4cGFuc2lvbiwgc3RkOjpvcHRp
b25hbDxUZXh0PiA9IHN0ZDo6bnVsbG9wdCk7CisgICAgTGluZVJ1bihzaXplX3QgbGluZUluZGV4
LCBUeXBlLCBjb25zdCBCb3gmLCBjb25zdCBJbmxpbmVSZWN0JiwgRXhwYW5zaW9uLCBzdGQ6Om9w
dGlvbmFsPFRleHQ+ID0gc3RkOjpudWxsb3B0LCBib29sIGhhc0NvbnRlbnQgPSB0cnVlLCBib29s
IGlzTGluZVNwYW5uaW5nID0gZmFsc2UpOworCisgICAgYm9vbCBpc1RleHQoKSBjb25zdCB7IHJl
dHVybiBtX3R5cGUgPT0gVHlwZTo6VGV4dDsgfQorICAgIGJvb2wgaXNMaW5lQnJlYWsoKSBjb25z
dCB7IHJldHVybiBtX3R5cGUgPT0gVHlwZTo6TGluZUJyZWFrOyB9CisgICAgYm9vbCBpc0F0b21p
Y0lubGluZUxldmVsQm94KCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09IFR5cGU6OkF0b21pY0lu
bGluZUxldmVsQm94OyB9CisgICAgYm9vbCBpc0lubGluZUJveCgpIGNvbnN0IHsgcmV0dXJuIG1f
dHlwZSA9PSBUeXBlOjpJbmxpbmVCb3ggfHwgaXNSb290SW5saW5lQm94KCk7IH0KKyAgICBib29s
IGlzUm9vdElubGluZUJveCgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBUeXBlOjpSb290SW5s
aW5lQm94OyB9CisgICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CisKKyAg
ICBib29sIGhhc0NvbnRlbnQoKSBjb25zdCB7IHJldHVybiBtX2hhc0NvbnRlbnQ7IH0KKyAgICBi
b29sIGlzTGluZVNwYW5uaW5nKCkgY29uc3QgeyByZXR1cm4gbV9pc0xpbmVTcGFubmluZzsgfQog
CiAgICAgY29uc3QgSW5saW5lUmVjdCYgbG9naWNhbFJlY3QoKSBjb25zdCB7IHJldHVybiBtX2xv
Z2ljYWxSZWN0OyB9CiAKQEAgLTg3LDE2ICsxMDUsMjMgQEAgc3RydWN0IExpbmVSdW4gewogCiBw
cml2YXRlOgogICAgIGNvbnN0IHNpemVfdCBtX2xpbmVJbmRleDsKKyAgICBjb25zdCBUeXBlIG1f
dHlwZTsKICAgICBXZWFrUHRyPGNvbnN0IExheW91dDo6Qm94PiBtX2xheW91dEJveDsKICAgICBJ
bmxpbmVSZWN0IG1fbG9naWNhbFJlY3Q7CisgICAgYm9vbCBtX2hhc0NvbnRlbnQgeyB0cnVlIH07
CisgICAgLy8gRklYTUU6IFRoaXMgaXMgdGVtcG9yYXJ5IHVudGlsIGFmdGVyIGl0ZXJhdG9ycyBj
YW4gc2tpcCBvdmVyIGxpbmUgc3Bhbm5pbmcvcm9vdCBpbmxpbmUgYm94ZXMuCisgICAgYm9vbCBt
X2lzTGluZVNwYW5uaW5nIHsgZmFsc2UgfTsKICAgICBFeHBhbnNpb24gbV9leHBhbnNpb247CiAg
ICAgc3RkOjpvcHRpb25hbDxUZXh0PiBtX3RleHQ7CiB9OwogCi1pbmxpbmUgTGluZVJ1bjo6TGlu
ZVJ1bihzaXplX3QgbGluZUluZGV4LCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25z
dCBJbmxpbmVSZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRp
b25hbDxUZXh0PiB0ZXh0KQoraW5saW5lIExpbmVSdW46OkxpbmVSdW4oc2l6ZV90IGxpbmVJbmRl
eCwgVHlwZSB0eXBlLCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25zdCBJbmxpbmVS
ZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRpb25hbDxUZXh0
PiB0ZXh0LCBib29sIGhhc0NvbnRlbnQsIGJvb2wgaXNMaW5lU3Bhbm5pbmcpCiAgICAgOiBtX2xp
bmVJbmRleChsaW5lSW5kZXgpCisgICAgLCBtX3R5cGUodHlwZSkKICAgICAsIG1fbGF5b3V0Qm94
KG1ha2VXZWFrUHRyKGxheW91dEJveCkpCiAgICAgLCBtX2xvZ2ljYWxSZWN0KGxvZ2ljYWxSZWN0
KQorICAgICwgbV9oYXNDb250ZW50KGhhc0NvbnRlbnQpCisgICAgLCBtX2lzTGluZVNwYW5uaW5n
KGlzTGluZVNwYW5uaW5nKQogICAgICwgbV9leHBhbnNpb24oZXhwYW5zaW9uKQogICAgICwgbV90
ZXh0KHRleHQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVp
bGRlci5jcHAKaW5kZXggZTk5MWQzZDkyZjVjOTc0NmVkMDMyMmQ1YmIzYjlhNjliMTIzMzVkOS4u
YjYzYjIwOGE3ZTJiYjE4MWVlZjkyY2E4NmY1MmEzODlhZWRjYmUxNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29u
dGVudEJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcApAQCAtMTY2LDcgKzE2Niw2
IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmJ1aWxkKGNvbnN0IExheW91dDo6SW5saW5l
Rm9ybWF0dGluZ1N0YXRlJiBpbmxpbmVGb3JtCiB7CiAgICAgYXV0byBsaW5lTGV2ZWxWaXN1YWxB
ZGp1c3RtZW50c0ZvclJ1bnMgPSBjb21wdXRlTGluZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JS
dW5zKGlubGluZUZvcm1hdHRpbmdTdGF0ZSk7CiAgICAgY3JlYXRlRGlzcGxheUxpbmVSdW5zKGlu
bGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpLCBpbmxpbmVGb3JtYXR0aW5nU3RhdGUubGluZVJ1
bnMoKSwgaW5saW5lQ29udGVudCwgbGluZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zKTsK
LSAgICBjcmVhdGVEaXNwbGF5Tm9uUm9vdElubGluZUJveGVzKGlubGluZUZvcm1hdHRpbmdTdGF0
ZSwgaW5saW5lQ29udGVudCk7CiAgICAgY3JlYXRlRGlzcGxheUxpbmVzKGlubGluZUZvcm1hdHRp
bmdTdGF0ZS5saW5lcygpLCBpbmxpbmVDb250ZW50LCBsaW5lTGV2ZWxWaXN1YWxBZGp1c3RtZW50
c0ZvclJ1bnMpOwogfQogCkBAIC0yNDUsNyArMjQ0LDIwIEBAIHZvaWQgSW5saW5lQ29udGVudEJ1
aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBs
aW5lCiAgICAgICAgICAgICBydW5SZWN0LnNldFkocm91bmRUb0ludChydW5SZWN0LnkoKSkpOwog
ICAgICAgICAvLyBGSVhNRTogQWRkIHN1cHBvcnQgZm9yIG5vbi10ZXh0IGluayBvdmVyZmxvdy4K
ICAgICAgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBjYXNlcyB3aGVuIHRoZSBydW4gaXMg
YWZ0ZXIgZWxsaXBzaXMuCi0gICAgICAgIGlubGluZUNvbnRlbnQucnVucy5hcHBlbmQoeyBsaW5l
SW5kZXgsIGxheW91dEJveCwgcnVuUmVjdCwgcnVuUmVjdCwgeyB9LCB7IH0gfSk7CisgICAgICAg
IGlmIChsaW5lUnVuLmlzSW5saW5lQm94KCkpIHsKKyAgICAgICAgICAgIGF1dG8gbGluZVJ1blJl
Y3QgPSBsaW5lUnVuLmxvZ2ljYWxSZWN0KCk7CisgICAgICAgICAgICBsaW5lUnVuUmVjdC5tb3Zl
QnkobGluZUJveExvZ2ljYWxSZWN0LnRvcExlZnQoKSk7CisgICAgICAgICAgICBhdXRvIGhhc1Nj
cm9sbGFibGVDb250ZW50ID0gWyZdIHsKKyAgICAgICAgICAgICAgICAvLyBJbiBzdGFuZGFyZHMg
bW9kZSwgaW5saW5lIGJveGVzIGFsd2F5cyBzdGFydCB3aXRoIGFuIGltYWdpbmFyeSBzdHJ1dC4K
KyAgICAgICAgICAgICAgICByZXR1cm4gbV9sYXlvdXRTdGF0ZS5pblN0YW5kYXJkc01vZGUoKSB8
fCBsaW5lUnVuLmhhc0NvbnRlbnQoKSB8fCBnZW9tZXRyeS5ob3Jpem9udGFsQm9yZGVyKCkgfHwg
KGdlb21ldHJ5Lmhvcml6b250YWxQYWRkaW5nKCkgJiYgZ2VvbWV0cnkuaG9yaXpvbnRhbFBhZGRp
bmcoKS52YWx1ZSgpKTsKKyAgICAgICAgICAgIH07CisgICAgICAgICAgICBpbmxpbmVDb250ZW50
Lm5vblJvb3RJbmxpbmVCb3hlcy5hcHBlbmQoeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbGluZVJ1
blJlY3QsIGhhc1Njcm9sbGFibGVDb250ZW50KCkgfSk7CisgICAgICAgICAgICBpZiAoIWxpbmVS
dW4uaXNMaW5lU3Bhbm5pbmcoKSkgeworICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBSdW4gaXRl
cmF0b3JzIHdpdGggKHRleHQpcnVucyBzcGFubmluZyBvdmVyIG11bHRpcGxlIGxpbmVzIGV4cGVj
dCBubyAiaW4tYmV0d2VlbiIgcnVucyAoZS5nLiBsaW5lIHNwYW5uaW5nIG9yIHJvb3QgaW5saW5l
IGJveGVzKS4KKyAgICAgICAgICAgICAgICBpbmxpbmVDb250ZW50LnJ1bnMuYXBwZW5kKHsgbGlu
ZUluZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIHJ1blJlY3QsIHsgfSwgeyB9IH0pOworICAgICAg
ICAgICAgfQorICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIGlubGluZUNvbnRlbnQucnVucy5h
cHBlbmQoeyBsaW5lSW5kZXgsIGxheW91dEJveCwgcnVuUmVjdCwgcnVuUmVjdCwgeyB9LCB7IH0g
fSk7CiAgICAgfTsKIAogICAgIGF1dG8gY3JlYXRlRGlzcGxheVRleHRSdW5Gb3JSYW5nZSA9IFsm
XShhdXRvJiBsaW5lUnVuLCBhdXRvIHN0YXJ0T2Zmc2V0LCBhdXRvIGVuZE9mZnNldCkgewpAQCAt
MzY4LDMxICszODAsNiBAQCB2b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5
TGluZXMoY29uc3QgTGF5b3V0OjpJbmxpbmVMaW5lcyYgbGluZXMsCiAgICAgfQogfQogCi12b2lk
IElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElubGluZUJveGVzKGNv
bnN0IExheW91dDo6SW5saW5lRm9ybWF0dGluZ1N0YXRlJiBpbmxpbmVGb3JtYXR0aW5nU3RhdGUs
IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQpIGNvbnN0Ci17Ci0gICAgZm9yIChzaXplX3Qg
bGluZUluZGV4ID0gMDsgbGluZUluZGV4IDwgaW5saW5lRm9ybWF0dGluZ1N0YXRlLmxpbmVCb3hl
cygpLnNpemUoKTsgKytsaW5lSW5kZXgpIHsKLSAgICAgICAgYXV0byYgbGluZUJveCA9IGlubGlu
ZUZvcm1hdHRpbmdTdGF0ZS5saW5lQm94ZXMoKVtsaW5lSW5kZXhdOwotICAgICAgICBpZiAoIWxp
bmVCb3guaGFzSW5saW5lQm94KCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBh
dXRvIGxpbmVCb3hMb2dpY2FsUmVjdCA9IGlubGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpW2xp
bmVJbmRleF0ubGluZUJveExvZ2ljYWxSZWN0KCk7Ci0gICAgICAgIGZvciAoYXV0byYgaW5saW5l
TGV2ZWxCb3ggOiBsaW5lQm94Lm5vblJvb3RJbmxpbmVMZXZlbEJveGVzKCkpIHsKLSAgICAgICAg
ICAgIGlmICghaW5saW5lTGV2ZWxCb3guaXNJbmxpbmVCb3goKSkKLSAgICAgICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgICAgIGF1dG8mIGxheW91dEJveCA9IGlubGluZUxldmVsQm94Lmxh
eW91dEJveCgpOwotICAgICAgICAgICAgYXV0byYgYm94R2VvbWV0cnkgPSBtX2xheW91dFN0YXRl
Lmdlb21ldHJ5Rm9yQm94KGxheW91dEJveCk7Ci0gICAgICAgICAgICBhdXRvIGlubGluZUJveFJl
Y3QgPSBsaW5lQm94LmxvZ2ljYWxCb3JkZXJCb3hGb3JJbmxpbmVCb3gobGF5b3V0Qm94LCBib3hH
ZW9tZXRyeSk7Ci0gICAgICAgICAgICBpbmxpbmVCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNh
bFJlY3QudG9wTGVmdCgpKTsKLQotICAgICAgICAgICAgYXV0byBoYXNTY3JvbGxhYmxlQ29udGVu
dCA9IFsmXSB7Ci0gICAgICAgICAgICAgICAgLy8gSW4gc3RhbmRhcmRzIG1vZGUsIGlubGluZSBi
b3hlcyBhbHdheXMgc3RhcnQgd2l0aCBhbiBpbWFnaW5hcnkgc3RydXQuCi0gICAgICAgICAgICAg
ICAgcmV0dXJuIG1fbGF5b3V0U3RhdGUuaW5TdGFuZGFyZHNNb2RlKCkgfHwgaW5saW5lTGV2ZWxC
b3guaGFzQ29udGVudCgpIHx8IGJveEdlb21ldHJ5Lmhvcml6b250YWxCb3JkZXIoKSB8fCAoYm94
R2VvbWV0cnkuaG9yaXpvbnRhbFBhZGRpbmcoKSAmJiBib3hHZW9tZXRyeS5ob3Jpem9udGFsUGFk
ZGluZygpLnZhbHVlKCkpOwotICAgICAgICAgICAgfTsKLSAgICAgICAgICAgIGlubGluZUNvbnRl
bnQubm9uUm9vdElubGluZUJveGVzLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBpbmxp
bmVCb3hSZWN0LCBoYXNTY3JvbGxhYmxlQ29udGVudCgpIH0pOwotICAgICAgICB9Ci0gICAgfQot
fQotCiB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRl
ci5oCmluZGV4IDU5YjE3MDU1ZWVmNDI3NmQ1NWEwNDE1YmU4NmE5MmI2MTBjZjRlNzEuLjJmYjAx
ZTJkMmYwNjc0MWU0NGE4MjA2MWMwMjNkMGI1ZWQ4MjZkMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRC
dWlsZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dElu
dGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuaApAQCAtNTIsNyArNTIsNiBAQCBwcml2YXRl
OgogICAgIExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVuc0xpc3QgY29tcHV0ZUxpbmVM
ZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1hdHRp
bmdTdGF0ZSYpIGNvbnN0OwogICAgIHZvaWQgY3JlYXRlRGlzcGxheUxpbmVSdW5zKGNvbnN0IExh
eW91dDo6SW5saW5lTGluZXMmLCBjb25zdCBMYXlvdXQ6OklubGluZUxpbmVSdW5zJiwgSW5saW5l
Q29udGVudCYsIGNvbnN0IExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVuc0xpc3QmKSBj
b25zdDsKICAgICB2b2lkIGNyZWF0ZURpc3BsYXlMaW5lcyhjb25zdCBMYXlvdXQ6OklubGluZUxp
bmVzJiwgSW5saW5lQ29udGVudCYsIGNvbnN0IExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9y
UnVuc0xpc3QmKSBjb25zdDsKLSAgICB2b2lkIGNyZWF0ZURpc3BsYXlOb25Sb290SW5saW5lQm94
ZXMoY29uc3QgTGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nU3RhdGUmLCBJbmxpbmVDb250ZW50Jikg
Y29uc3Q7CiAKICAgICBjb25zdCBMYXlvdXQ6OkxheW91dFN0YXRlJiBtX2xheW91dFN0YXRlOwog
ICAgIGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgbV9ibG9ja0Zsb3c7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436402</attachid>
            <date>2021-08-25 10:51:12 -0700</date>
            <delta_ts>2021-08-25 12:50:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228059-20210825105111.patch</filename>
            <type>text/plain</type>
            <size>15430</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzZhYTVmOWQ5NDIzNTUy
YWM1YWE3M2ZlNzE2OTE4ZDhiYjZjNDM3Ny4uNzliNTY5ZDY3ZmViN2MxNGVlYTQxYmUxNWFmNjY5
ZGVkMDA1M2M3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTA4LTI1ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIExpbmUgc3Bh
bm5pbmcgaW5saW5lIGJveGVzIHNob3VsZCBhbHNvIGJlIGluIHRoZSBydW4gbGlzdAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI4MDU5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS84MTA3NzQyMD4KKworICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBL
b2l2aXN0by4KKworICAgICAgICBDb25zaWRlciB0aGUgZm9sbG93aW5nIGNhc2U6CisgICAgICAg
ICAgPGRpdj48c3Bhbj5maXJzdCBsaW5lIHRleHQ8YnI+c2Vjb25kIGxpbmUgdGV4dDxicj50aGly
ZCBsaW5lIHRleHQ8L3NwYW4+PC9kaXY+CisKKyAgICAgICAgSGVyZSBpcyB0aGUgbGlzdCBvZiBy
dW5zIHdlIGdlbmVyYXRlIGZvciB0aGUgY29udGVudCBhYm92ZToKKworICAgICAgICAgIFtpbmxp
bmUgYm94XVtmaXJzdCBsaW5lIHRleHRdW2hhcmQgbGluZWJyZWFrXVtzZWNvbmQgbGluZSB0ZXh0
XVtoYXJkIGxpbmVicmVha11bdGhpcmQgbGluZSB0ZXh0XQorCisgICAgICAgIFRoaXMgbGlzdCBk
b2VzIG5vdCBpbmNsdWRlIHRoZSBzcGFubmluZyBpbmxpbmUgYm94ZXMsIGkuZS4gdGhlIG1pc3Np
bmcgaW5saW5lIGJveCBvbiB0aGUgc2Vjb25kIGFuZCB0aGUgdGhpcmQgbGluZS4KKyAgICAgICAg
VGhlIGludGVncmF0aW9uIGNvZGUgdGhlbiBsb29rcyBpbnNpZGUgdGhlIExpbmVCb3ggdG8gZmlu
ZCB0aGVzZSBzcGFubmluZyBpbmxpbmUgYm94ZXMgKHNlZSBjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzKQorCisgICAgICAgIEluIHRoaXMgcGF0Y2ggd2Ugc3RhcnQgaW5jbHVkaW5nIHN1
Y2ggc3Bhbm5pbmcgaW5saW5lIGJveGVzIGluIHRoZSBydW4gbGlzdC4KKyAgICAgICAgICBbaW5s
aW5lIGJveF1bZmlyc3QgbGluZSB0ZXh0XVtoYXJkIGxpbmVicmVha11baW5saW5lIGJveF1bc2Vj
b25kIGxpbmUgdGV4dF1baGFyZCBsaW5lYnJlYWtdW2lubGluZSBib3hdW3RoaXJkIGxpbmUgdGV4
dF0KKworICAgICAgICBUaGlzIGlzIGFsc28gaW4gcHJlcGFyYXRpb24gZm9yIG1ha2luZyBMaW5l
Qm94IGNvbXBsZXRlbHkgaW50ZXJuYWwgdG8gdGhlIGxheW91dCBjb2RlLiAKKworICAgICAgICAq
IGxheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6
OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KToKKyAgICAgICAgKiBsYXlvdXQvZm9ybWF0
dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmg6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXQ6OkxpbmVSdW46OmlzVGV4dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OkxpbmVSdW46OmlzTGluZUJyZWFrIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6
TGluZVJ1bjo6aXNBdG9taWNJbmxpbmVMZXZlbEJveCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXQ6OkxpbmVSdW46OmlzSW5saW5lQm94IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dDo6TGluZVJ1bjo6aXNSb290SW5saW5lQm94IGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dDo6TGluZVJ1bjo6dHlwZSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkxpbmVSdW46Omhhc0NvbnRlbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
OjpMaW5lUnVuOjppc0xpbmVTcGFubmluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OkxpbmVSdW46OkxpbmVSdW4pOgorICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50QnVpbGRlcjo6YnVpbGQgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVy
OjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElu
bGluZUJveGVzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24v
TGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5oOgorCiAyMDIxLTA4LTI1ICBB
bGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbSUZDXVtJbnRlZ3JhdGlv
bl0gTm9uLWVtcHR5IGlubGluZSBib3hlcyBtYXkgYWZmZWN0IG92ZXJmbG93IHNjcm9sbApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1h
dHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCmluZGV4IDQ5
NTJjYmZlZjAwODg0MjI0NTg0MzE2MmRjNWI4Mjc1NzhjYmFjYzQuLjAzYmM0NGRiOTdlNjYyODMy
ZDU4ODAxOTgxNWVjODk4NGUzNjMyNGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9Jbmxp
bmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTYwNSw2ICs2MDUsOSBAQCBJbmxpbmVSZWN0IElu
bGluZUZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlR2VvbWV0cnlGb3JMaW5lQ29udGVudChjb25z
dCBMaW5lQnVpbAogICAgICAgICByZXR1cm4gbGluZUJveExvZ2ljYWxSZWN0OwogICAgIH0KIAor
ICAgIC8vIFNwYW5uaW5nIGlubGluZSBib3hlcyBzdGFydCBhdCB0aGUgdmVyeSBiZWdpbm5pbmcg
b2YgdGhlIGxpbmUuCisgICAgLy8gRklYTUU6IE9mZnNldCBpdCB3aXRoIHRoZSBydW4gZm9yIHRo
ZSByb290IGlubGluZSBib3gsIHdoZW4gd2Ugc3RhcnQgY29uc3RydWN0aW5nIHJ1bnMgZm9yIHRo
ZW0uCisgICAgYXV0byBsaW5lU3Bhbm5pbmdJbmxpbmVCb3hJbmRleCA9IGZvcm1hdHRpbmdTdGF0
ZS5saW5lUnVucygpLnNpemUoKTsKICAgICBIYXNoU2V0PGNvbnN0IEJveCo+IGlubGluZUJveFN0
YXJ0U2V0OwogICAgIGF1dG8gY29uc3RydWN0TGluZVJ1bnNBbmRVcGRhdGVCb3hHZW9tZXRyeSA9
IFsmXSB7CiAgICAgICAgIC8vIENyZWF0ZSB0aGUgaW5saW5lIHJ1bnMgb24gdGhlIGN1cnJlbnQg
bGluZS4gVGhpcyBpcyBtb3N0bHkgdGV4dCBhbmQgYXRvbWljIGlubGluZSBydW5zLgpAQCAtNjEy
LDI4ICs2MTUsMjggQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0
ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgIC8vIEZJ
WE1FOiBXZSBzaG91bGQgbm90IG5lZWQgdG8gY29uc3RydWN0IGEgbGluZSBydW4gZm9yIDxicj4u
CiAgICAgICAgICAgICBhdXRvJiBsYXlvdXRCb3ggPSBsaW5lUnVuLmxheW91dEJveCgpOwogICAg
ICAgICAgICAgaWYgKGxpbmVSdW4uaXNUZXh0KCkpIHsKLSAgICAgICAgICAgICAgICBmb3JtYXR0
aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBsaW5lQm94LmxvZ2lj
YWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKSwgbGluZVJ1bi5leHBhbnNpb24oKSwgbGluZVJ1bi50
ZXh0Q29udGVudCgpIH0pOworICAgICAgICAgICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5l
UnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpUZXh0LCBsYXlvdXRCb3gsIGxpbmVCb3gu
bG9naWNhbFJlY3RGb3JUZXh0UnVuKGxpbmVSdW4pLCBsaW5lUnVuLmV4cGFuc2lvbigpLCBsaW5l
UnVuLnRleHRDb250ZW50KCkgfSk7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBpZiAobGluZVJ1bi5pc0xpbmVCcmVhaygpKSB7CiAgICAgICAg
ICAgICAgICAgaWYgKGxheW91dEJveC5pc0xpbmVCcmVha0JveCgpKSB7CiAgICAgICAgICAgICAg
ICAgICAgIC8vIE9ubHkgaGFyZCBsaW5lYnJlYWtzIGhhdmUgYXNzb2NpYXRlZCBsYXlvdXQgYm94
ZXMuCiAgICAgICAgICAgICAgICAgICAgIGF1dG8gbGluZUJyZWFrQm94UmVjdCA9IGxpbmVCb3gu
bG9naWNhbFJlY3RGb3JMaW5lQnJlYWtCb3gobGF5b3V0Qm94KTsKLSAgICAgICAgICAgICAgICAg
ICAgZm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbGlu
ZUJyZWFrQm94UmVjdCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAg
ICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgTGluZVJ1bjo6
VHlwZTo6TGluZUJyZWFrLCBsYXlvdXRCb3gsIGxpbmVCcmVha0JveFJlY3QsIGxpbmVSdW4uZXhw
YW5zaW9uKCksIHsgfSB9KTsKIAogICAgICAgICAgICAgICAgICAgICBhdXRvJiBib3hHZW9tZXRy
eSA9IGZvcm1hdHRpbmdTdGF0ZS5ib3hHZW9tZXRyeShsYXlvdXRCb3gpOwogICAgICAgICAgICAg
ICAgICAgICBsaW5lQnJlYWtCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNhbFJlY3QudG9wTGVm
dCgpKTsKICAgICAgICAgICAgICAgICAgICAgYm94R2VvbWV0cnkuc2V0TG9naWNhbFRvcExlZnQo
dG9MYXlvdXRQb2ludChsaW5lQnJlYWtCb3hSZWN0LnRvcExlZnQoKSkpOwogICAgICAgICAgICAg
ICAgICAgICBib3hHZW9tZXRyeS5zZXRDb250ZW50Qm94SGVpZ2h0KHRvTGF5b3V0VW5pdChsaW5l
QnJlYWtCb3hSZWN0LmhlaWdodCgpKSk7CiAgICAgICAgICAgICAgICAgfSBlbHNlIAotICAgICAg
ICAgICAgICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5
b3V0Qm94LCBsaW5lQm94LmxvZ2ljYWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKSwgbGluZVJ1bi5l
eHBhbnNpb24oKSwgbGluZVJ1bi50ZXh0Q29udGVudCgpIH0pOworICAgICAgICAgICAgICAgICAg
ICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgTGluZVJ1bjo6VHlwZTo6
TGluZUJyZWFrLCBsYXlvdXRCb3gsIGxpbmVCb3gubG9naWNhbFJlY3RGb3JUZXh0UnVuKGxpbmVS
dW4pLCBsaW5lUnVuLmV4cGFuc2lvbigpLCBsaW5lUnVuLnRleHRDb250ZW50KCkgfSk7CiAgICAg
ICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAobGlu
ZVJ1bi5pc0JveCgpKSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKGxheW91dEJveC5pc0F0b21p
Y0lubGluZUxldmVsQm94KCkpOwogICAgICAgICAgICAgICAgIGF1dG8mIGJveEdlb21ldHJ5ID0g
Zm9ybWF0dGluZ1N0YXRlLmJveEdlb21ldHJ5KGxheW91dEJveCk7CiAgICAgICAgICAgICAgICAg
YXV0byBsb2dpY2FsQm9yZGVyQm94ID0gbGluZUJveC5sb2dpY2FsQm9yZGVyQm94Rm9yQXRvbWlj
SW5saW5lTGV2ZWxCb3gobGF5b3V0Qm94LCBib3hHZW9tZXRyeSk7Ci0gICAgICAgICAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbG9naWNh
bEJvcmRlckJveCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAgICAg
IGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpB
dG9taWNJbmxpbmVMZXZlbEJveCwgbGF5b3V0Qm94LCBsb2dpY2FsQm9yZGVyQm94LCBsaW5lUnVu
LmV4cGFuc2lvbigpLCB7IH0gfSk7CiAKICAgICAgICAgICAgICAgICBhdXRvIGJvcmRlckJveExv
Z2ljYWxUb3BMZWZ0ID0gbG9naWNhbEJvcmRlckJveC50b3BMZWZ0KCk7CiAgICAgICAgICAgICAg
ICAgLy8gTm90ZSB0aGF0IGlubGluZSBib3hlcyBhcmUgcmVsYXRpdmUgdG8gdGhlIGxpbmUgYW5k
IHRoZWlyIHRvcCBwb3NpdGlvbiBjYW4gYmUgbmVnYXRpdmUuCkBAIC02NDcsNyArNjUwLDcgQEAg
SW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGlu
ZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgIGlmIChsaW5lUnVuLmlzSW5saW5l
Qm94U3RhcnQoKSkgewogICAgICAgICAgICAgICAgIGF1dG8mIGJveEdlb21ldHJ5ID0gZm9ybWF0
dGluZ1N0YXRlLmJveEdlb21ldHJ5KGxheW91dEJveCk7CiAgICAgICAgICAgICAgICAgYXV0byBp
bmxpbmVCb3hMb2dpY2FsUmVjdCA9IGxpbmVCb3gubG9naWNhbEJvcmRlckJveEZvcklubGluZUJv
eChsYXlvdXRCb3gsIGJveEdlb21ldHJ5KTsKLSAgICAgICAgICAgICAgICBmb3JtYXR0aW5nU3Rh
dGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBpbmxpbmVCb3hMb2dpY2FsUmVj
dCwgbGluZVJ1bi5leHBhbnNpb24oKSwgeyB9IH0pOworICAgICAgICAgICAgICAgIGZvcm1hdHRp
bmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpJbmxpbmVCb3gs
IGxheW91dEJveCwgaW5saW5lQm94TG9naWNhbFJlY3QsIGxpbmVSdW4uZXhwYW5zaW9uKCksIHsg
fSwgbGluZUJveC5pbmxpbmVMZXZlbEJveEZvckxheW91dEJveChsYXlvdXRCb3gpLmhhc0NvbnRl
bnQoKSB9KTsKICAgICAgICAgICAgICAgICBpbmxpbmVCb3hTdGFydFNldC5hZGQoJmxheW91dEJv
eCk7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CkBAIC02ODIsNiAr
Njg1LDggQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21l
dHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAgICAgICAgICAgICAgICBjb250aW51
ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIC8vIE1pZGRsZSBvciBlbmQgb2YgdGhlIGlu
bGluZSBib3guIExldCdzIHN0cmV0Y2ggdGhlIGJveCBhcyBuZWVkZWQuCisgICAgICAgICAgICBm
b3JtYXR0aW5nU3RhdGUubGluZVJ1bnMoKS5pbnNlcnQobGluZVNwYW5uaW5nSW5saW5lQm94SW5k
ZXgrKywgeyBsaW5lSW5kZXgsIExpbmVSdW46OlR5cGU6OklubGluZUJveCwgbGF5b3V0Qm94LCBp
bmxpbmVCb3hCb3JkZXJCb3gsIHsgfSwgeyB9LCBpbmxpbmVMZXZlbEJveC5oYXNDb250ZW50KCks
IHRydWUgfSk7CisKICAgICAgICAgICAgIGF1dG8gZW5jbG9zaW5nQm9yZGVyQm94UmVjdCA9IEJv
eEdlb21ldHJ5Ojpib3JkZXJCb3hSZWN0KGJveEdlb21ldHJ5KTsKICAgICAgICAgICAgIGVuY2xv
c2luZ0JvcmRlckJveFJlY3QuZXhwYW5kVG9Db250YWluKGxvZ2ljYWxSZWN0KTsKICAgICAgICAg
ICAgIGJveEdlb21ldHJ5LnNldExvZ2ljYWxMZWZ0KGVuY2xvc2luZ0JvcmRlckJveFJlY3QubGVm
dCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4
dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaAppbmRleCA4MjI0MmRkMDcxOGI0NjUy
ZDM2OGU2YmQ3OGQ1YzNkNGE5NjJjMGNhLi5iYTFhNmVjMzY1MGIxYTAwNDE5NWRhZjBmNzQ2NmNj
ZjU3MGMxNTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0Nv
bnRleHRzL2lubGluZS9JbmxpbmVMaW5lUnVuLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5oCkBAIC01OSw4ICs1OSwy
NiBAQCBzdHJ1Y3QgTGluZVJ1biB7CiAgICAgICAgIFN0cmluZyBtX2NvbnRlbnRTdHJpbmc7CiAg
ICAgfTsKIAorICAgIGVudW0gY2xhc3MgVHlwZSB7CisgICAgICAgIFRleHQsCisgICAgICAgIExp
bmVCcmVhaywKKyAgICAgICAgQXRvbWljSW5saW5lTGV2ZWxCb3gsCisgICAgICAgIElubGluZUJv
eCwKKyAgICAgICAgUm9vdElubGluZUJveCwKKyAgICAgICAgR2VuZXJpY0lubGluZUxldmVsQm94
CisgICAgfTsKICAgICBzdHJ1Y3QgRXhwYW5zaW9uOwotICAgIExpbmVSdW4oc2l6ZV90IGxpbmVJ
bmRleCwgY29uc3QgQm94JiwgY29uc3QgSW5saW5lUmVjdCYsIEV4cGFuc2lvbiwgc3RkOjpvcHRp
b25hbDxUZXh0PiA9IHN0ZDo6bnVsbG9wdCk7CisgICAgTGluZVJ1bihzaXplX3QgbGluZUluZGV4
LCBUeXBlLCBjb25zdCBCb3gmLCBjb25zdCBJbmxpbmVSZWN0JiwgRXhwYW5zaW9uLCBzdGQ6Om9w
dGlvbmFsPFRleHQ+ID0gc3RkOjpudWxsb3B0LCBib29sIGhhc0NvbnRlbnQgPSB0cnVlLCBib29s
IGlzTGluZVNwYW5uaW5nID0gZmFsc2UpOworCisgICAgYm9vbCBpc1RleHQoKSBjb25zdCB7IHJl
dHVybiBtX3R5cGUgPT0gVHlwZTo6VGV4dDsgfQorICAgIGJvb2wgaXNMaW5lQnJlYWsoKSBjb25z
dCB7IHJldHVybiBtX3R5cGUgPT0gVHlwZTo6TGluZUJyZWFrOyB9CisgICAgYm9vbCBpc0F0b21p
Y0lubGluZUxldmVsQm94KCkgY29uc3QgeyByZXR1cm4gbV90eXBlID09IFR5cGU6OkF0b21pY0lu
bGluZUxldmVsQm94OyB9CisgICAgYm9vbCBpc0lubGluZUJveCgpIGNvbnN0IHsgcmV0dXJuIG1f
dHlwZSA9PSBUeXBlOjpJbmxpbmVCb3ggfHwgaXNSb290SW5saW5lQm94KCk7IH0KKyAgICBib29s
IGlzUm9vdElubGluZUJveCgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZSA9PSBUeXBlOjpSb290SW5s
aW5lQm94OyB9CisgICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CisKKyAg
ICBib29sIGhhc0NvbnRlbnQoKSBjb25zdCB7IHJldHVybiBtX2hhc0NvbnRlbnQ7IH0KKyAgICBi
b29sIGlzTGluZVNwYW5uaW5nKCkgY29uc3QgeyByZXR1cm4gbV9pc0xpbmVTcGFubmluZzsgfQog
CiAgICAgY29uc3QgSW5saW5lUmVjdCYgbG9naWNhbFJlY3QoKSBjb25zdCB7IHJldHVybiBtX2xv
Z2ljYWxSZWN0OyB9CiAKQEAgLTg3LDE2ICsxMDUsMjMgQEAgc3RydWN0IExpbmVSdW4gewogCiBw
cml2YXRlOgogICAgIGNvbnN0IHNpemVfdCBtX2xpbmVJbmRleDsKKyAgICBjb25zdCBUeXBlIG1f
dHlwZTsKICAgICBXZWFrUHRyPGNvbnN0IExheW91dDo6Qm94PiBtX2xheW91dEJveDsKICAgICBJ
bmxpbmVSZWN0IG1fbG9naWNhbFJlY3Q7CisgICAgYm9vbCBtX2hhc0NvbnRlbnQgeyB0cnVlIH07
CisgICAgLy8gRklYTUU6IFRoaXMgaXMgdGVtcG9yYXJ5IHVudGlsIGFmdGVyIGl0ZXJhdG9ycyBj
YW4gc2tpcCBvdmVyIGxpbmUgc3Bhbm5pbmcvcm9vdCBpbmxpbmUgYm94ZXMuCisgICAgYm9vbCBt
X2lzTGluZVNwYW5uaW5nIHsgZmFsc2UgfTsKICAgICBFeHBhbnNpb24gbV9leHBhbnNpb247CiAg
ICAgc3RkOjpvcHRpb25hbDxUZXh0PiBtX3RleHQ7CiB9OwogCi1pbmxpbmUgTGluZVJ1bjo6TGlu
ZVJ1bihzaXplX3QgbGluZUluZGV4LCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25z
dCBJbmxpbmVSZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRp
b25hbDxUZXh0PiB0ZXh0KQoraW5saW5lIExpbmVSdW46OkxpbmVSdW4oc2l6ZV90IGxpbmVJbmRl
eCwgVHlwZSB0eXBlLCBjb25zdCBMYXlvdXQ6OkJveCYgbGF5b3V0Qm94LCBjb25zdCBJbmxpbmVS
ZWN0JiBsb2dpY2FsUmVjdCwgRXhwYW5zaW9uIGV4cGFuc2lvbiwgc3RkOjpvcHRpb25hbDxUZXh0
PiB0ZXh0LCBib29sIGhhc0NvbnRlbnQsIGJvb2wgaXNMaW5lU3Bhbm5pbmcpCiAgICAgOiBtX2xp
bmVJbmRleChsaW5lSW5kZXgpCisgICAgLCBtX3R5cGUodHlwZSkKICAgICAsIG1fbGF5b3V0Qm94
KG1ha2VXZWFrUHRyKGxheW91dEJveCkpCiAgICAgLCBtX2xvZ2ljYWxSZWN0KGxvZ2ljYWxSZWN0
KQorICAgICwgbV9oYXNDb250ZW50KGhhc0NvbnRlbnQpCisgICAgLCBtX2lzTGluZVNwYW5uaW5n
KGlzTGluZVNwYW5uaW5nKQogICAgICwgbV9leHBhbnNpb24oZXhwYW5zaW9uKQogICAgICwgbV90
ZXh0KHRleHQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVp
bGRlci5jcHAKaW5kZXggZTk5MWQzZDkyZjVjOTc0NmVkMDMyMmQ1YmIzYjlhNjliMTIzMzVkOS4u
YjYzYjIwOGE3ZTJiYjE4MWVlZjkyY2E4NmY1MmEzODlhZWRjYmUxNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29u
dGVudEJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcApAQCAtMTY2LDcgKzE2Niw2
IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmJ1aWxkKGNvbnN0IExheW91dDo6SW5saW5l
Rm9ybWF0dGluZ1N0YXRlJiBpbmxpbmVGb3JtCiB7CiAgICAgYXV0byBsaW5lTGV2ZWxWaXN1YWxB
ZGp1c3RtZW50c0ZvclJ1bnMgPSBjb21wdXRlTGluZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JS
dW5zKGlubGluZUZvcm1hdHRpbmdTdGF0ZSk7CiAgICAgY3JlYXRlRGlzcGxheUxpbmVSdW5zKGlu
bGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpLCBpbmxpbmVGb3JtYXR0aW5nU3RhdGUubGluZVJ1
bnMoKSwgaW5saW5lQ29udGVudCwgbGluZUxldmVsVmlzdWFsQWRqdXN0bWVudHNGb3JSdW5zKTsK
LSAgICBjcmVhdGVEaXNwbGF5Tm9uUm9vdElubGluZUJveGVzKGlubGluZUZvcm1hdHRpbmdTdGF0
ZSwgaW5saW5lQ29udGVudCk7CiAgICAgY3JlYXRlRGlzcGxheUxpbmVzKGlubGluZUZvcm1hdHRp
bmdTdGF0ZS5saW5lcygpLCBpbmxpbmVDb250ZW50LCBsaW5lTGV2ZWxWaXN1YWxBZGp1c3RtZW50
c0ZvclJ1bnMpOwogfQogCkBAIC0yNDUsNyArMjQ0LDIwIEBAIHZvaWQgSW5saW5lQ29udGVudEJ1
aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBs
aW5lCiAgICAgICAgICAgICBydW5SZWN0LnNldFkocm91bmRUb0ludChydW5SZWN0LnkoKSkpOwog
ICAgICAgICAvLyBGSVhNRTogQWRkIHN1cHBvcnQgZm9yIG5vbi10ZXh0IGluayBvdmVyZmxvdy4K
ICAgICAgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBjYXNlcyB3aGVuIHRoZSBydW4gaXMg
YWZ0ZXIgZWxsaXBzaXMuCi0gICAgICAgIGlubGluZUNvbnRlbnQucnVucy5hcHBlbmQoeyBsaW5l
SW5kZXgsIGxheW91dEJveCwgcnVuUmVjdCwgcnVuUmVjdCwgeyB9LCB7IH0gfSk7CisgICAgICAg
IGlmIChsaW5lUnVuLmlzSW5saW5lQm94KCkpIHsKKyAgICAgICAgICAgIGF1dG8gbGluZVJ1blJl
Y3QgPSBsaW5lUnVuLmxvZ2ljYWxSZWN0KCk7CisgICAgICAgICAgICBsaW5lUnVuUmVjdC5tb3Zl
QnkobGluZUJveExvZ2ljYWxSZWN0LnRvcExlZnQoKSk7CisgICAgICAgICAgICBhdXRvIGhhc1Nj
cm9sbGFibGVDb250ZW50ID0gWyZdIHsKKyAgICAgICAgICAgICAgICAvLyBJbiBzdGFuZGFyZHMg
bW9kZSwgaW5saW5lIGJveGVzIGFsd2F5cyBzdGFydCB3aXRoIGFuIGltYWdpbmFyeSBzdHJ1dC4K
KyAgICAgICAgICAgICAgICByZXR1cm4gbV9sYXlvdXRTdGF0ZS5pblN0YW5kYXJkc01vZGUoKSB8
fCBsaW5lUnVuLmhhc0NvbnRlbnQoKSB8fCBnZW9tZXRyeS5ob3Jpem9udGFsQm9yZGVyKCkgfHwg
KGdlb21ldHJ5Lmhvcml6b250YWxQYWRkaW5nKCkgJiYgZ2VvbWV0cnkuaG9yaXpvbnRhbFBhZGRp
bmcoKS52YWx1ZSgpKTsKKyAgICAgICAgICAgIH07CisgICAgICAgICAgICBpbmxpbmVDb250ZW50
Lm5vblJvb3RJbmxpbmVCb3hlcy5hcHBlbmQoeyBsaW5lSW5kZXgsIGxheW91dEJveCwgbGluZVJ1
blJlY3QsIGhhc1Njcm9sbGFibGVDb250ZW50KCkgfSk7CisgICAgICAgICAgICBpZiAoIWxpbmVS
dW4uaXNMaW5lU3Bhbm5pbmcoKSkgeworICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBSdW4gaXRl
cmF0b3JzIHdpdGggKHRleHQpcnVucyBzcGFubmluZyBvdmVyIG11bHRpcGxlIGxpbmVzIGV4cGVj
dCBubyAiaW4tYmV0d2VlbiIgcnVucyAoZS5nLiBsaW5lIHNwYW5uaW5nIG9yIHJvb3QgaW5saW5l
IGJveGVzKS4KKyAgICAgICAgICAgICAgICBpbmxpbmVDb250ZW50LnJ1bnMuYXBwZW5kKHsgbGlu
ZUluZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIHJ1blJlY3QsIHsgfSwgeyB9IH0pOworICAgICAg
ICAgICAgfQorICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIGlubGluZUNvbnRlbnQucnVucy5h
cHBlbmQoeyBsaW5lSW5kZXgsIGxheW91dEJveCwgcnVuUmVjdCwgcnVuUmVjdCwgeyB9LCB7IH0g
fSk7CiAgICAgfTsKIAogICAgIGF1dG8gY3JlYXRlRGlzcGxheVRleHRSdW5Gb3JSYW5nZSA9IFsm
XShhdXRvJiBsaW5lUnVuLCBhdXRvIHN0YXJ0T2Zmc2V0LCBhdXRvIGVuZE9mZnNldCkgewpAQCAt
MzY4LDMxICszODAsNiBAQCB2b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5
TGluZXMoY29uc3QgTGF5b3V0OjpJbmxpbmVMaW5lcyYgbGluZXMsCiAgICAgfQogfQogCi12b2lk
IElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5Tm9uUm9vdElubGluZUJveGVzKGNv
bnN0IExheW91dDo6SW5saW5lRm9ybWF0dGluZ1N0YXRlJiBpbmxpbmVGb3JtYXR0aW5nU3RhdGUs
IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQpIGNvbnN0Ci17Ci0gICAgZm9yIChzaXplX3Qg
bGluZUluZGV4ID0gMDsgbGluZUluZGV4IDwgaW5saW5lRm9ybWF0dGluZ1N0YXRlLmxpbmVCb3hl
cygpLnNpemUoKTsgKytsaW5lSW5kZXgpIHsKLSAgICAgICAgYXV0byYgbGluZUJveCA9IGlubGlu
ZUZvcm1hdHRpbmdTdGF0ZS5saW5lQm94ZXMoKVtsaW5lSW5kZXhdOwotICAgICAgICBpZiAoIWxp
bmVCb3guaGFzSW5saW5lQm94KCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBh
dXRvIGxpbmVCb3hMb2dpY2FsUmVjdCA9IGlubGluZUZvcm1hdHRpbmdTdGF0ZS5saW5lcygpW2xp
bmVJbmRleF0ubGluZUJveExvZ2ljYWxSZWN0KCk7Ci0gICAgICAgIGZvciAoYXV0byYgaW5saW5l
TGV2ZWxCb3ggOiBsaW5lQm94Lm5vblJvb3RJbmxpbmVMZXZlbEJveGVzKCkpIHsKLSAgICAgICAg
ICAgIGlmICghaW5saW5lTGV2ZWxCb3guaXNJbmxpbmVCb3goKSkKLSAgICAgICAgICAgICAgICBj
b250aW51ZTsKLSAgICAgICAgICAgIGF1dG8mIGxheW91dEJveCA9IGlubGluZUxldmVsQm94Lmxh
eW91dEJveCgpOwotICAgICAgICAgICAgYXV0byYgYm94R2VvbWV0cnkgPSBtX2xheW91dFN0YXRl
Lmdlb21ldHJ5Rm9yQm94KGxheW91dEJveCk7Ci0gICAgICAgICAgICBhdXRvIGlubGluZUJveFJl
Y3QgPSBsaW5lQm94LmxvZ2ljYWxCb3JkZXJCb3hGb3JJbmxpbmVCb3gobGF5b3V0Qm94LCBib3hH
ZW9tZXRyeSk7Ci0gICAgICAgICAgICBpbmxpbmVCb3hSZWN0Lm1vdmVCeShsaW5lQm94TG9naWNh
bFJlY3QudG9wTGVmdCgpKTsKLQotICAgICAgICAgICAgYXV0byBoYXNTY3JvbGxhYmxlQ29udGVu
dCA9IFsmXSB7Ci0gICAgICAgICAgICAgICAgLy8gSW4gc3RhbmRhcmRzIG1vZGUsIGlubGluZSBi
b3hlcyBhbHdheXMgc3RhcnQgd2l0aCBhbiBpbWFnaW5hcnkgc3RydXQuCi0gICAgICAgICAgICAg
ICAgcmV0dXJuIG1fbGF5b3V0U3RhdGUuaW5TdGFuZGFyZHNNb2RlKCkgfHwgaW5saW5lTGV2ZWxC
b3guaGFzQ29udGVudCgpIHx8IGJveEdlb21ldHJ5Lmhvcml6b250YWxCb3JkZXIoKSB8fCAoYm94
R2VvbWV0cnkuaG9yaXpvbnRhbFBhZGRpbmcoKSAmJiBib3hHZW9tZXRyeS5ob3Jpem9udGFsUGFk
ZGluZygpLnZhbHVlKCkpOwotICAgICAgICAgICAgfTsKLSAgICAgICAgICAgIGlubGluZUNvbnRl
bnQubm9uUm9vdElubGluZUJveGVzLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBpbmxp
bmVCb3hSZWN0LCBoYXNTY3JvbGxhYmxlQ29udGVudCgpIH0pOwotICAgICAgICB9Ci0gICAgfQot
fQotCiB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRl
ci5oCmluZGV4IDU5YjE3MDU1ZWVmNDI3NmQ1NWEwNDE1YmU4NmE5MmI2MTBjZjRlNzEuLjJmYjAx
ZTJkMmYwNjc0MWU0NGE4MjA2MWMwMjNkMGI1ZWQ4MjZkMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRC
dWlsZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dElu
dGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuaApAQCAtNTIsNyArNTIsNiBAQCBwcml2YXRl
OgogICAgIExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVuc0xpc3QgY29tcHV0ZUxpbmVM
ZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1hdHRp
bmdTdGF0ZSYpIGNvbnN0OwogICAgIHZvaWQgY3JlYXRlRGlzcGxheUxpbmVSdW5zKGNvbnN0IExh
eW91dDo6SW5saW5lTGluZXMmLCBjb25zdCBMYXlvdXQ6OklubGluZUxpbmVSdW5zJiwgSW5saW5l
Q29udGVudCYsIGNvbnN0IExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9yUnVuc0xpc3QmKSBj
b25zdDsKICAgICB2b2lkIGNyZWF0ZURpc3BsYXlMaW5lcyhjb25zdCBMYXlvdXQ6OklubGluZUxp
bmVzJiwgSW5saW5lQ29udGVudCYsIGNvbnN0IExpbmVMZXZlbFZpc3VhbEFkanVzdG1lbnRzRm9y
UnVuc0xpc3QmKSBjb25zdDsKLSAgICB2b2lkIGNyZWF0ZURpc3BsYXlOb25Sb290SW5saW5lQm94
ZXMoY29uc3QgTGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nU3RhdGUmLCBJbmxpbmVDb250ZW50Jikg
Y29uc3Q7CiAKICAgICBjb25zdCBMYXlvdXQ6OkxheW91dFN0YXRlJiBtX2xheW91dFN0YXRlOwog
ICAgIGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgbV9ibG9ja0Zsb3c7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>