<?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>229662</bug_id>
          
          <creation_ts>2021-08-29 21:58:59 -0700</creation_ts>
          <short_desc>[LFC][IFC] Move hyphen handling from the integration run to IFC&apos;s display run</short_desc>
          <delta_ts>2021-08-30 08:57:19 -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>1788437</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2021-08-29 21:58:59 -0700</bug_when>
    <thetext>This is in preparation for merging integration and IFC display runs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788438</commentid>
    <comment_count>1</comment_count>
      <attachid>436755</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-08-29 22:00:59 -0700</bug_when>
    <thetext>Created attachment 436755
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788485</commentid>
    <comment_count>2</comment_count>
      <attachid>436755</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-08-30 06:43:07 -0700</bug_when>
    <thetext>Comment on attachment 436755
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=436755&amp;action=review

&gt; Source/WebCore/ChangeLog:8
&gt; +        Move the rendered content handling (hyhen only atm) over to the IFC display runs. 

spelling &apos;hyhen&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788490</commentid>
    <comment_count>3</comment_count>
      <attachid>436767</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-08-30 07:22:47 -0700</bug_when>
    <thetext>Created attachment 436767
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788514</commentid>
    <comment_count>4</comment_count>
      <attachid>436776</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-08-30 08:54:00 -0700</bug_when>
    <thetext>Created attachment 436776
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788516</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-30 08:56:28 -0700</bug_when>
    <thetext>Committed r281760 (241101@main): &lt;https://commits.webkit.org/241101@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 436776.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788518</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-08-30 08:57:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/82530315&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436755</attachid>
            <date>2021-08-29 22:00:59 -0700</date>
            <delta_ts>2021-08-30 07:22:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229662-20210829220058.patch</filename>
            <type>text/plain</type>
            <size>12558</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzk5MDIwMzA3MThjYmEz
N2E5NWEwN2ZhNGEyNWExNWE5YmEzYTg5OS4uMDZiZjcxN2NkYzE2ZDU2ZWZhYTViMTIzOGFkOTQw
NTgyNjBiYWY0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTA4LTI5ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIE1vdmUgaHlw
aGVuIGhhbmRsaW5nIGZyb20gdGhlIGludGVncmF0aW9uIHJ1biB0byBJRkMncyBkaXNwbGF5IHJ1
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5NjYy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTW92ZSB0
aGUgcmVuZGVyZWQgY29udGVudCBoYW5kbGluZyAoaHloZW4gb25seSBhdG0pIG92ZXIgdG8gdGhl
IElGQyBkaXNwbGF5IHJ1bnMuIAorICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBt
ZXJnaW5nIGludGVncmF0aW9uIGFuZCBJRkMncyBkaXNwbGF5IHJ1bnMuCisKKyAgICAgICAgKiBk
aXNwbGF5L2Nzcy9EaXNwbGF5Qm94UGFpbnRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNw
bGF5OjpCb3hQYWludGVyOjpwYWludEJveENvbnRlbnQpOgorICAgICAgICAqIGRpc3BsYXkvY3Nz
L0Rpc3BsYXlUZXh0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXk6OlRleHRCb3g6
OmRlYnVnRGVzY3JpcHRpb24gY29uc3QpOgorICAgICAgICAqIGxheW91dC9mb3JtYXR0aW5nQ29u
dGV4dHMvaW5saW5lL0lubGluZURpc3BsYXlDb250ZW50QnVpbGRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6OklubGluZURpc3BsYXlDb250ZW50QnVpbGRlcjo6Y3JlYXRlUnVuc0Fu
ZFVwZGF0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQpOgorICAgICAgICAqIGxheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaDoKKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dDo6TGluZVJ1bjo6VGV4dDo6b3JpZ2luYWxDb250ZW50IGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6cmVuZGVyZWRDb250ZW50IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6aGFzSHlwaGVuIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6VGV4dCk6CisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXQ6OkxpbmVSdW46OlRleHQ6OmNvbnRlbnQgY29uc3QpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpMaW5lUnVuOjpUZXh0OjpuZWVkc0h5cGhlbiBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVn
cmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMg
Y29uc3QpOgorCiAyMDIxLTA4LTI5ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbTEZDXVtJRkNdIEludHJvZHVjZSBMaW5lOjpSdW46OlRleHQgdG8gaG9sZCB0ZXh0
IGNvbnRlbnQgcmVsYXRlZCBwcm9wZXJ0aWVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
aXNwbGF5L2Nzcy9EaXNwbGF5Qm94UGFpbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kaXNwbGF5
L2Nzcy9EaXNwbGF5Qm94UGFpbnRlci5jcHAKaW5kZXggMWY2NWJiZmMwM2ExNmMzNzBmOGVhYzU5
MmNiYzk4Yjk3NDY1YzU3Ny4uZTQ5NDVhYjEzZWM2YTJlYmZmMmZiNDUxY2E2NWNjNjljMGI5Njc5
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZGlzcGxheS9jc3MvRGlzcGxheUJveFBhaW50
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rpc3BsYXkvY3NzL0Rpc3BsYXlCb3hQYWludGVy
LmNwcApAQCAtODAsNyArODAsNyBAQCB2b2lkIEJveFBhaW50ZXI6OnBhaW50Qm94Q29udGVudChj
b25zdCBCb3gmIGJveCwgUGFpbnRpbmdDb250ZXh0JiBwYWludGluZ0NvbnRleAogICAgICAgICBh
dXRvIGJhc2VsaW5lID0gdGV4dFJlY3QueSgpICsgc3R5bGUuZm9udE1ldHJpY3MoKS5hc2NlbnQo
KTsKICAgICAgICAgYXV0byBleHBhbnNpb24gPSB0ZXh0Qm94LmV4cGFuc2lvbigpOwogCi0gICAg
ICAgIGF1dG8gdGV4dFJ1biA9IFRleHRSdW4geyB0ZXh0Qm94LnRleHQoKS5jb250ZW50KCkuc3Vi
c3RyaW5nKHRleHRCb3gudGV4dCgpLnN0YXJ0KCksIHRleHRCb3gudGV4dCgpLmxlbmd0aCgpKSwg
dGV4dFJlY3QueCgpLCBleHBhbnNpb24uaG9yaXpvbnRhbEV4cGFuc2lvbiwgZXhwYW5zaW9uLmJl
aGF2aW9yIH07CisgICAgICAgIGF1dG8gdGV4dFJ1biA9IFRleHRSdW4geyB0ZXh0Qm94LnRleHQo
KS5vcmlnaW5hbENvbnRlbnQoKS5zdWJzdHJpbmcodGV4dEJveC50ZXh0KCkuc3RhcnQoKSwgdGV4
dEJveC50ZXh0KCkubGVuZ3RoKCkpLCB0ZXh0UmVjdC54KCksIGV4cGFuc2lvbi5ob3Jpem9udGFs
RXhwYW5zaW9uLCBleHBhbnNpb24uYmVoYXZpb3IgfTsKICAgICAgICAgdGV4dFJ1bi5zZXRUYWJT
aXplKCFzdHlsZS5jb2xsYXBzZVdoaXRlU3BhY2UoKSwgc3R5bGUudGFiU2l6ZSgpKTsKICAgICAg
ICAgcGFpbnRpbmdDb250ZXh0LmNvbnRleHQuZHJhd1RleHQoc3R5bGUuZm9udENhc2NhZGUoKSwg
dGV4dFJ1biwgeyB0ZXh0UmVjdC54KCksIGJhc2VsaW5lIH0pOwogICAgICAgICByZXR1cm47CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kaXNwbGF5L2Nzcy9EaXNwbGF5VGV4dEJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kaXNwbGF5L2Nzcy9EaXNwbGF5VGV4dEJveC5jcHAKaW5kZXggNWZi
NTRkMDNlNGY4Yzk2YTIxYzcyNGJiYWEzMGFiMWMzOTVlYzEwYi4uYmNkZGU5ZWI5ZjgxZmU4MjJk
NzQyNTcwOTlkNjdiZWIzZjJmNzM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZGlzcGxh
eS9jc3MvRGlzcGxheVRleHRCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rpc3BsYXkvY3Nz
L0Rpc3BsYXlUZXh0Qm94LmNwcApAQCAtNTMsNyArNTMsNyBAQCBTdHJpbmcgVGV4dEJveDo6ZGVi
dWdEZXNjcmlwdGlvbigpIGNvbnN0CiAgICAgVGV4dFN0cmVhbSBzdHJlYW07CiAKICAgICBzdHJl
YW0gPDwgYm94TmFtZSgpIDw8ICIgIiA8PCBhYnNvbHV0ZUJveFJlY3QoKSA8PCAiICgiIDw8IHRo
aXMgPDwgIikiOwotICAgIGF1dG8gdGV4dENvbnRlbnQgPSB0ZXh0KCkuY29udGVudCgpLnN1YnN0
cmluZyh0ZXh0KCkuc3RhcnQoKSwgdGV4dCgpLmxlbmd0aCgpKTsKKyAgICBhdXRvIHRleHRDb250
ZW50ID0gdGV4dCgpLm9yaWdpbmFsQ29udGVudCgpLnN1YnN0cmluZyh0ZXh0KCkuc3RhcnQoKSwg
dGV4dCgpLmxlbmd0aCgpKTsKICAgICB0ZXh0Q29udGVudC5yZXBsYWNlV2l0aExpdGVyYWwoJ1xc
JywgIlxcXFwiKTsKICAgICB0ZXh0Q29udGVudC5yZXBsYWNlV2l0aExpdGVyYWwoJ1xuJywgIlxc
biIpOwogICAgIGNvbnN0IHNpemVfdCBtYXhQcmludGVkTGVuZ3RoID0gODA7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVE
aXNwbGF5Q29udGVudEJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRp
bmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyLmNwcAppbmRleCA0
NzBhYzE4YzkzZTAyM2NiNzRmNGE0MzgyMTBiOTljZDAyOWE0OTgwLi42NmFkZDIxMzQ1MjFmNWMz
NGU2ZTA4YzU2Y2Y4YzE2ZTFmMDNjZTRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVEaXNwbGF5Q29udGVudEJ1aWxkZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5l
L0lubGluZURpc3BsYXlDb250ZW50QnVpbGRlci5jcHAKQEAgLTczLDggKzczLDggQEAgdm9pZCBJ
bmxpbmVEaXNwbGF5Q29udGVudEJ1aWxkZXI6OmNyZWF0ZVJ1bnNBbmRVcGRhdGVHZW9tZXRyeUZv
ckxpbmVDb250ZW50KGNvbnMKICAgICAgICAgICAgIGF1dG8gdGV4dFJ1blJlY3QgPSBsaW5lQm94
LmxvZ2ljYWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKTsKICAgICAgICAgICAgIHRleHRSdW5SZWN0
Lm1vdmVCeShsaW5lQm94TG9naWNhbFRvcExlZnQpOwogCisgICAgICAgICAgICBhdXRvJiBzdHls
ZSA9IGxheW91dEJveC5zdHlsZSgpOwogICAgICAgICAgICAgYXV0byBpbmtPdmVyZmxvdyA9IFsm
XSB7Ci0gICAgICAgICAgICAgICAgYXV0byYgc3R5bGUgPSBsYXlvdXRCb3guc3R5bGUoKTsKICAg
ICAgICAgICAgICAgICBhdXRvIGluaXRpYWxDb250YWluZ0Jsb2NrU2l6ZSA9IFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkubGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRJbnRl
Z3JhdGlvbkVuYWJsZWQoKQogICAgICAgICAgICAgICAgICAgICA/IGZvcm1hdHRpbmdTdGF0ZS5s
YXlvdXRTdGF0ZSgpLnZpZXdwb3J0U2l6ZSgpCiAgICAgICAgICAgICAgICAgICAgIDogZm9ybWF0
dGluZ1N0YXRlLmxheW91dFN0YXRlKCkuZ2VvbWV0cnlGb3JCb3gobGF5b3V0Qm94LmluaXRpYWxD
b250YWluaW5nQmxvY2soKSkuY29udGVudEJveCgpLnNpemUoKTsKQEAgLTg5LDggKzg5LDE4IEBA
IHZvaWQgSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVSdW5zQW5kVXBkYXRlR2Vv
bWV0cnlGb3JMaW5lQ29udGVudChjb25zCiAgICAgICAgICAgICAgICAgcmV0dXJuIGlua092ZXJm
bG93OwogICAgICAgICAgICAgfTsKICAgICAgICAgICAgIEFTU0VSVChsaW5lUnVuLnRleHRDb250
ZW50KCkgJiYgaXM8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KSk7Ci0gICAgICAgICAgICBhdXRv
JiB0ZXh0Q29udGVudCA9IGxpbmVSdW4udGV4dENvbnRlbnQoKTsKLSAgICAgICAgICAgIGZvcm1h
dHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpUZXh0LCBs
YXlvdXRCb3gsIHRleHRSdW5SZWN0LCBpbmtPdmVyZmxvdygpLCBsaW5lUnVuLmV4cGFuc2lvbigp
LCBMaW5lUnVuOjpUZXh0IHsgdGV4dENvbnRlbnQtPnN0YXJ0LCB0ZXh0Q29udGVudC0+bGVuZ3Ro
LCBkb3duY2FzdDxJbmxpbmVUZXh0Qm94PihsYXlvdXRCb3gpLmNvbnRlbnQoKSwgdGV4dENvbnRl
bnQtPm5lZWRzSHlwaGVuIH0gfSk7CisgICAgICAgICAgICBhdXRvIGNvbnRlbnQgPSBkb3duY2Fz
dDxJbmxpbmVUZXh0Qm94PihsYXlvdXRCb3gpLmNvbnRlbnQoKTsKKyAgICAgICAgICAgIGF1dG8g
dGV4dCA9IGxpbmVSdW4udGV4dENvbnRlbnQoKTsKKyAgICAgICAgICAgIGF1dG8gYWRqdXN0ZWRD
b250ZW50VG9SZW5kZXIgPSBbJl0geworICAgICAgICAgICAgICAgIHJldHVybiB0ZXh0LT5uZWVk
c0h5cGhlbiA/IG1ha2VTdHJpbmcoY29udGVudC5zdWJzdHJpbmcodGV4dC0+c3RhcnQsIHRleHQt
Pmxlbmd0aCksIHN0eWxlLmh5cGhlblN0cmluZygpKSA6IFN0cmluZygpOworICAgICAgICAgICAg
fTsKKyAgICAgICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4Cisg
ICAgICAgICAgICAgICAgLCBMaW5lUnVuOjpUeXBlOjpUZXh0CisgICAgICAgICAgICAgICAgLCBs
YXlvdXRCb3gKKyAgICAgICAgICAgICAgICAsIHRleHRSdW5SZWN0CisgICAgICAgICAgICAgICAg
LCBpbmtPdmVyZmxvdygpCisgICAgICAgICAgICAgICAgLCBsaW5lUnVuLmV4cGFuc2lvbigpCisg
ICAgICAgICAgICAgICAgLCBMaW5lUnVuOjpUZXh0IHsgdGV4dC0+c3RhcnQsIHRleHQtPmxlbmd0
aCwgY29udGVudCwgYWRqdXN0ZWRDb250ZW50VG9SZW5kZXIoKSwgdGV4dC0+bmVlZHNIeXBoZW4g
fSB9KTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgSW5saW5l
SXRlbTo6VHlwZTo6U29mdExpbmVCcmVhazogewpAQCAtOTgsOCArMTA4LDE0IEBAIHZvaWQgSW5s
aW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVSdW5zQW5kVXBkYXRlR2VvbWV0cnlGb3JM
aW5lQ29udGVudChjb25zCiAgICAgICAgICAgICBzb2Z0TGluZUJyZWFrUnVuUmVjdC5tb3ZlQnko
bGluZUJveExvZ2ljYWxUb3BMZWZ0KTsKIAogICAgICAgICAgICAgQVNTRVJUKGxpbmVSdW4udGV4
dENvbnRlbnQoKSAmJiBpczxJbmxpbmVUZXh0Qm94PihsYXlvdXRCb3gpKTsKLSAgICAgICAgICAg
IGF1dG8mIHRleHRDb250ZW50ID0gbGluZVJ1bi50ZXh0Q29udGVudCgpOwotICAgICAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIExpbmVSdW46OlR5cGU6OlNv
ZnRMaW5lQnJlYWssIGxheW91dEJveCwgc29mdExpbmVCcmVha1J1blJlY3QsIHNvZnRMaW5lQnJl
YWtSdW5SZWN0LCBsaW5lUnVuLmV4cGFuc2lvbigpLCBMaW5lUnVuOjpUZXh0IHsgdGV4dENvbnRl
bnQtPnN0YXJ0LCB0ZXh0Q29udGVudC0+bGVuZ3RoLCBkb3duY2FzdDxJbmxpbmVUZXh0Qm94Pihs
YXlvdXRCb3gpLmNvbnRlbnQoKSwgdGV4dENvbnRlbnQtPm5lZWRzSHlwaGVuIH0gfSk7CisgICAg
ICAgICAgICBhdXRvJiB0ZXh0ID0gbGluZVJ1bi50ZXh0Q29udGVudCgpOworICAgICAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgKKyAgICAgICAgICAgICAgICAs
IExpbmVSdW46OlR5cGU6OlNvZnRMaW5lQnJlYWsKKyAgICAgICAgICAgICAgICAsIGxheW91dEJv
eAorICAgICAgICAgICAgICAgICwgc29mdExpbmVCcmVha1J1blJlY3QKKyAgICAgICAgICAgICAg
ICAsIHNvZnRMaW5lQnJlYWtSdW5SZWN0CisgICAgICAgICAgICAgICAgLCBsaW5lUnVuLmV4cGFu
c2lvbigpCisgICAgICAgICAgICAgICAgLCBMaW5lUnVuOjpUZXh0IHsgdGV4dC0+c3RhcnQsIHRl
eHQtPmxlbmd0aCwgZG93bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KS5jb250ZW50KCkg
fSB9KTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgSW5saW5l
SXRlbTo6VHlwZTo6SGFyZExpbmVCcmVhazogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5oIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5o
CmluZGV4IGI5NTEzMGVmYzMyNzE1ODJkZGNkM2M3NGY0YmM3MWE5NjJlYjliOWUuLjA0ZTg0MDU3
ZWI0NTc3NzNiMjk0M2U3ODYzNWEzOTJkOTRmMGExODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVM
aW5lUnVuLmgKQEAgLTM5LDIwICszOSwyMiBAQCBzdHJ1Y3QgTGluZVJ1biB7CiAgICAgc3RydWN0
IFRleHQgewogICAgICAgICBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FURUQ7CiAgICAgcHVi
bGljOgotICAgICAgICBUZXh0KHNpemVfdCBwb3NpdGlvbiwgc2l6ZV90IGxlbmd0aCwgY29uc3Qg
U3RyaW5nJiwgYm9vbCBuZWVkc0h5cGhlbiA9IGZhbHNlKTsKKyAgICAgICAgVGV4dChzaXplX3Qg
cG9zaXRpb24sIHNpemVfdCBsZW5ndGgsIGNvbnN0IFN0cmluZyYgb3JpZ2luYWxDb250ZW50LCBT
dHJpbmcgYWRqdXN0ZWRDb250ZW50VG9SZW5kZXIgPSBTdHJpbmcoKSwgYm9vbCBoYXNIeXBoZW4g
PSBmYWxzZSk7CiAKICAgICAgICAgc2l6ZV90IHN0YXJ0KCkgY29uc3QgeyByZXR1cm4gbV9zdGFy
dDsgfQogICAgICAgICBzaXplX3QgZW5kKCkgY29uc3QgeyByZXR1cm4gc3RhcnQoKSArIGxlbmd0
aCgpOyB9CiAgICAgICAgIHNpemVfdCBsZW5ndGgoKSBjb25zdCB7IHJldHVybiBtX2xlbmd0aDsg
fQotICAgICAgICBTdHJpbmcgY29udGVudCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudFN0cmlu
ZzsgfQorICAgICAgICBTdHJpbmcgb3JpZ2luYWxDb250ZW50KCkgY29uc3QgeyByZXR1cm4gbV9v
cmlnaW5hbENvbnRlbnQ7IH0KKyAgICAgICAgU3RyaW5nIHJlbmRlcmVkQ29udGVudCgpIGNvbnN0
IHsgcmV0dXJuIG1fYWRqdXN0ZWRDb250ZW50VG9SZW5kZXI7IH0KIAotICAgICAgICBib29sIG5l
ZWRzSHlwaGVuKCkgY29uc3QgeyByZXR1cm4gbV9uZWVkc0h5cGhlbjsgfQorICAgICAgICBib29s
IGhhc0h5cGhlbigpIGNvbnN0IHsgcmV0dXJuIG1faGFzSHlwaGVuOyB9CiAKICAgICBwcml2YXRl
OgogICAgICAgICBzaXplX3QgbV9zdGFydCB7IDAgfTsKICAgICAgICAgc2l6ZV90IG1fbGVuZ3Ro
IHsgMCB9OwotICAgICAgICBib29sIG1fbmVlZHNIeXBoZW4geyBmYWxzZSB9OwotICAgICAgICBT
dHJpbmcgbV9jb250ZW50U3RyaW5nOworICAgICAgICBib29sIG1faGFzSHlwaGVuIHsgZmFsc2Ug
fTsKKyAgICAgICAgU3RyaW5nIG1fb3JpZ2luYWxDb250ZW50OworICAgICAgICBTdHJpbmcgbV9h
ZGp1c3RlZENvbnRlbnRUb1JlbmRlcjsKICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUeXBlIHsK
QEAgLTEzMywxMSArMTM1LDEyIEBAIGlubGluZSBMaW5lUnVuOjpMaW5lUnVuKHNpemVfdCBsaW5l
SW5kZXgsIFR5cGUgdHlwZSwgY29uc3QgTGF5b3V0OjpCb3gmIGxheW91dEJvCiB7CiB9CiAKLWlu
bGluZSBMaW5lUnVuOjpUZXh0OjpUZXh0KHNpemVfdCBzdGFydCwgc2l6ZV90IGxlbmd0aCwgY29u
c3QgU3RyaW5nJiBjb250ZW50U3RyaW5nLCBib29sIG5lZWRzSHlwaGVuKQoraW5saW5lIExpbmVS
dW46OlRleHQ6OlRleHQoc2l6ZV90IHN0YXJ0LCBzaXplX3QgbGVuZ3RoLCBjb25zdCBTdHJpbmcm
IG9yaWdpbmFsQ29udGVudCwgU3RyaW5nIGFkanVzdGVkQ29udGVudFRvUmVuZGVyLCBib29sIGhh
c0h5cGhlbikKICAgICA6IG1fc3RhcnQoc3RhcnQpCiAgICAgLCBtX2xlbmd0aChsZW5ndGgpCi0g
ICAgLCBtX25lZWRzSHlwaGVuKG5lZWRzSHlwaGVuKQotICAgICwgbV9jb250ZW50U3RyaW5nKGNv
bnRlbnRTdHJpbmcpCisgICAgLCBtX2hhc0h5cGhlbihoYXNIeXBoZW4pCisgICAgLCBtX29yaWdp
bmFsQ29udGVudChvcmlnaW5hbENvbnRlbnQpCisgICAgLCBtX2FkanVzdGVkQ29udGVudFRvUmVu
ZGVyKGFkanVzdGVkQ29udGVudFRvUmVuZGVyKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50
QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAKaW5kZXggNjcxMzEyMTVlMTY1MjRjYjI3
OTdhMjAwNWI2NmI0YjYzOTMyZjliZC4uYmRkZDFiYmQ0ZDhmYmFiYWE5YWRmMjc0NGY1NDdmMThh
NTViOTY0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWls
ZGVyLmNwcApAQCAtMTc2LDggKzE3Niw2IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNy
ZWF0ZURpc3BsYXlMaW5lUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBsaW5lCiAgICAg
YmlkaVJlc29sdmVyLmNyZWF0ZUJpZGlSdW5zRm9yTGluZShJdGVyYXRvcigmbGluZVJ1bnMsIGxp
bmVSdW5zLnNpemUoKSkpOwogI2VuZGlmCiAKLSAgICBWZWN0b3I8Ym9vbD4gaGFzQWRqdXN0ZWRU
cmFpbGluZ0xpbmVMaXN0KGxpbmVzLnNpemUoKSwgZmFsc2UpOwotCiAgICAgYXV0byBjcmVhdGVE
aXNwbGF5Qm94UnVuID0gWyZdKGF1dG8mIGxpbmVSdW4pIHsKICAgICAgICAgaWYgKGxpbmVSdW4u
aXNSb290SW5saW5lQm94KCkpIHsKICAgICAgICAgICAgIC8vIEZJWE1FOiBUZWFjaCB0aGUgcnVu
IGl0ZXJhdG9ycyB0byBpZ25vcmUgdGhlIHJvb3QgaW5saW5lIGJveCBydW5zLgpAQCAtMjEyLDgg
KzIxMCw3IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVu
cyhjb25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBsaW5lCiAgICAgICAgICAgICBpbmxpbmVDb250
ZW50LnJ1bnMuYXBwZW5kKHsgbGluZUluZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIGlua092ZXJm
bG93LCB7IH0sIHsgfSB9KTsKICAgICB9OwogCi0gICAgYXV0byBjcmVhdGVEaXNwbGF5VGV4dFJ1
bkZvclJhbmdlID0gWyZdKGF1dG8mIGxpbmVSdW4sIGF1dG8gc3RhcnRPZmZzZXQsIGF1dG8gZW5k
T2Zmc2V0KSB7Ci0gICAgICAgIFJFTEVBU0VfQVNTRVJUKHN0YXJ0T2Zmc2V0IDwgZW5kT2Zmc2V0
KTsKKyAgICBhdXRvIGNyZWF0ZURpc3BsYXlUZXh0UnVuID0gWyZdKGF1dG8mIGxpbmVSdW4pIHsK
ICAgICAgICAgYXV0byYgbGF5b3V0Qm94ID0gbGluZVJ1bi5sYXlvdXRCb3goKTsKICAgICAgICAg
YXV0byBsaW5lSW5kZXggPSBsaW5lUnVuLmxpbmVJbmRleCgpOwogICAgICAgICBhdXRvIHJ1blJl
Y3QgPSBGbG9hdFJlY3QgeyBsaW5lUnVuLmxvZ2ljYWxSZWN0KCkgfTsKQEAgLTIyMywyNiArMjIw
LDE5IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVucyhj
b25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBsaW5lCiAgICAgICAgICAgICBpbmtPdmVyZmxvdy5z
ZXRZKHJvdW5kVG9JbnQoaW5rT3ZlcmZsb3cueSgpKSk7CiAgICAgICAgIH0KIAotICAgICAgICBh
dXRvJiBzdHlsZSA9IGxheW91dEJveC5zdHlsZSgpOwogICAgICAgICBhdXRvIHRleHQgPSBsaW5l
UnVuLnRleHQoKTsKLSAgICAgICAgYXV0byBhZGp1c3RlZENvbnRlbnRUb1JlbmRlciA9IFsmXSB7
Ci0gICAgICAgICAgICBhdXRvIG9yaWdpbmFsQ29udGVudCA9IHRleHQtPmNvbnRlbnQoKS5zdWJz
dHJpbmcodGV4dC0+c3RhcnQoKSwgdGV4dC0+bGVuZ3RoKCkpOwotICAgICAgICAgICAgaWYgKHRl
eHQtPm5lZWRzSHlwaGVuKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIG1ha2VTdHJpbmcob3Jp
Z2luYWxDb250ZW50LCBzdHlsZS5oeXBoZW5TdHJpbmcoKSk7Ci0gICAgICAgICAgICByZXR1cm4g
U3RyaW5nKCk7Ci0gICAgICAgIH07Ci0KLSAgICAgICAgUkVMRUFTRV9BU1NFUlQoc3RhcnRPZmZz
ZXQgPj0gdGV4dC0+c3RhcnQoKSAmJiBzdGFydE9mZnNldCA8IHRleHQtPmVuZCgpKTsKLSAgICAg
ICAgUkVMRUFTRV9BU1NFUlQoZW5kT2Zmc2V0ID4gdGV4dC0+c3RhcnQoKSAmJiBlbmRPZmZzZXQg
PD0gdGV4dC0+ZW5kKCkpOwotICAgICAgICBhdXRvIHRleHRDb250ZW50ID0gUnVuOjpUZXh0Q29u
dGVudCB7IHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwgdGV4dC0+Y29udGVu
dCgpLCBhZGp1c3RlZENvbnRlbnRUb1JlbmRlcigpLCB0ZXh0LT5uZWVkc0h5cGhlbigpIH07Ci0g
ICAgICAgIGF1dG8gZXhwYW5zaW9uID0gUnVuOjpFeHBhbnNpb24geyBsaW5lUnVuLmV4cGFuc2lv
bigpLmJlaGF2aW9yLCBsaW5lUnVuLmV4cGFuc2lvbigpLmhvcml6b250YWxFeHBhbnNpb24gfTsK
LSAgICAgICAgaW5saW5lQ29udGVudC5ydW5zLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5b3V0Qm94
LCBydW5SZWN0LCBpbmtPdmVyZmxvdywgZXhwYW5zaW9uLCB0ZXh0Q29udGVudCB9KTsKKyAgICAg
ICAgaW5saW5lQ29udGVudC5ydW5zLmFwcGVuZCh7IGxpbmVJbmRleAorICAgICAgICAgICAgLCBs
YXlvdXRCb3gKKyAgICAgICAgICAgICwgcnVuUmVjdAorICAgICAgICAgICAgLCBpbmtPdmVyZmxv
dworICAgICAgICAgICAgLCBSdW46OkV4cGFuc2lvbiB7IGxpbmVSdW4uZXhwYW5zaW9uKCkuYmVo
YXZpb3IsIGxpbmVSdW4uZXhwYW5zaW9uKCkuaG9yaXpvbnRhbEV4cGFuc2lvbiB9CisgICAgICAg
ICAgICAsIFJ1bjo6VGV4dENvbnRlbnQgeyB0ZXh0LT5zdGFydCgpLCB0ZXh0LT5sZW5ndGgoKSwg
dGV4dC0+b3JpZ2luYWxDb250ZW50KCksIHRleHQtPnJlbmRlcmVkQ29udGVudCgpLCB0ZXh0LT5o
YXNIeXBoZW4oKSB9IH0pOwogICAgIH07CiAKICAgICBpbmxpbmVDb250ZW50LnJ1bnMucmVzZXJ2
ZUluaXRpYWxDYXBhY2l0eShsaW5lUnVucy5zaXplKCkpOwogICAgIGZvciAoYXV0byYgbGluZVJ1
biA6IGxpbmVSdW5zKSB7CiAgICAgICAgIGlmIChhdXRvJiB0ZXh0ID0gbGluZVJ1bi50ZXh0KCkp
Ci0gICAgICAgICAgICBjcmVhdGVEaXNwbGF5VGV4dFJ1bkZvclJhbmdlKGxpbmVSdW4sIHRleHQt
PnN0YXJ0KCksIHRleHQtPmVuZCgpKTsKKyAgICAgICAgICAgIGNyZWF0ZURpc3BsYXlUZXh0UnVu
KGxpbmVSdW4pOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBjcmVhdGVEaXNwbGF5Qm94UnVu
KGxpbmVSdW4pOwogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436767</attachid>
            <date>2021-08-30 07:22:47 -0700</date>
            <delta_ts>2021-08-30 08:53:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229662-20210830072246.patch</filename>
            <type>text/plain</type>
            <size>12558</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWI4M2ZkOWY2YWE0NGZk
MGMxODFiZjhiZTEyNmRhMjVlOWJiY2RlZS4uY2I1NWQ3ZGE1YTA2MTEwOGQxODk4YmQ3Njc2OTcy
MzFhM2U3ZjU5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTA4LTMwICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIE1vdmUgaHlw
aGVuIGhhbmRsaW5nIGZyb20gdGhlIGludGVncmF0aW9uIHJ1biB0byBJRkMncyBkaXNwbGF5IHJ1
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5NjYy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW50dGkgS29pdmlzdG8uCisKKyAgICAgICAgTW92ZSB0
aGUgcmVuZGVyZWQgY29udGVudCBoYW5kbGluZyAoaHloZW4gb25seSBhdG0pIG92ZXIgdG8gdGhl
IElGQyBkaXNwbGF5IHJ1bnMuIAorICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBt
ZXJnaW5nIGludGVncmF0aW9uIGFuZCBJRkMncyBkaXNwbGF5IHJ1bnMuCisKKyAgICAgICAgKiBk
aXNwbGF5L2Nzcy9EaXNwbGF5Qm94UGFpbnRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNw
bGF5OjpCb3hQYWludGVyOjpwYWludEJveENvbnRlbnQpOgorICAgICAgICAqIGRpc3BsYXkvY3Nz
L0Rpc3BsYXlUZXh0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXk6OlRleHRCb3g6
OmRlYnVnRGVzY3JpcHRpb24gY29uc3QpOgorICAgICAgICAqIGxheW91dC9mb3JtYXR0aW5nQ29u
dGV4dHMvaW5saW5lL0lubGluZURpc3BsYXlDb250ZW50QnVpbGRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6OklubGluZURpc3BsYXlDb250ZW50QnVpbGRlcjo6Y3JlYXRlUnVuc0Fu
ZFVwZGF0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQpOgorICAgICAgICAqIGxheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaDoKKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dDo6TGluZVJ1bjo6VGV4dDo6b3JpZ2luYWxDb250ZW50IGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6cmVuZGVyZWRDb250ZW50IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6aGFzSHlwaGVuIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6VGV4dCk6CisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXQ6OkxpbmVSdW46OlRleHQ6OmNvbnRlbnQgY29uc3QpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpMaW5lUnVuOjpUZXh0OjpuZWVkc0h5cGhlbiBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVn
cmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMg
Y29uc3QpOgorCiAyMDIxLTA4LTMwICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbTEZDXVtJRkNdIEludHJvZHVjZSBMaW5lOjpSdW46OlRleHQgdG8gaG9sZCB0ZXh0
IGNvbnRlbnQgcmVsYXRlZCBwcm9wZXJ0aWVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
aXNwbGF5L2Nzcy9EaXNwbGF5Qm94UGFpbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kaXNwbGF5
L2Nzcy9EaXNwbGF5Qm94UGFpbnRlci5jcHAKaW5kZXggMWY2NWJiZmMwM2ExNmMzNzBmOGVhYzU5
MmNiYzk4Yjk3NDY1YzU3Ny4uZTQ5NDVhYjEzZWM2YTJlYmZmMmZiNDUxY2E2NWNjNjljMGI5Njc5
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZGlzcGxheS9jc3MvRGlzcGxheUJveFBhaW50
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rpc3BsYXkvY3NzL0Rpc3BsYXlCb3hQYWludGVy
LmNwcApAQCAtODAsNyArODAsNyBAQCB2b2lkIEJveFBhaW50ZXI6OnBhaW50Qm94Q29udGVudChj
b25zdCBCb3gmIGJveCwgUGFpbnRpbmdDb250ZXh0JiBwYWludGluZ0NvbnRleAogICAgICAgICBh
dXRvIGJhc2VsaW5lID0gdGV4dFJlY3QueSgpICsgc3R5bGUuZm9udE1ldHJpY3MoKS5hc2NlbnQo
KTsKICAgICAgICAgYXV0byBleHBhbnNpb24gPSB0ZXh0Qm94LmV4cGFuc2lvbigpOwogCi0gICAg
ICAgIGF1dG8gdGV4dFJ1biA9IFRleHRSdW4geyB0ZXh0Qm94LnRleHQoKS5jb250ZW50KCkuc3Vi
c3RyaW5nKHRleHRCb3gudGV4dCgpLnN0YXJ0KCksIHRleHRCb3gudGV4dCgpLmxlbmd0aCgpKSwg
dGV4dFJlY3QueCgpLCBleHBhbnNpb24uaG9yaXpvbnRhbEV4cGFuc2lvbiwgZXhwYW5zaW9uLmJl
aGF2aW9yIH07CisgICAgICAgIGF1dG8gdGV4dFJ1biA9IFRleHRSdW4geyB0ZXh0Qm94LnRleHQo
KS5vcmlnaW5hbENvbnRlbnQoKS5zdWJzdHJpbmcodGV4dEJveC50ZXh0KCkuc3RhcnQoKSwgdGV4
dEJveC50ZXh0KCkubGVuZ3RoKCkpLCB0ZXh0UmVjdC54KCksIGV4cGFuc2lvbi5ob3Jpem9udGFs
RXhwYW5zaW9uLCBleHBhbnNpb24uYmVoYXZpb3IgfTsKICAgICAgICAgdGV4dFJ1bi5zZXRUYWJT
aXplKCFzdHlsZS5jb2xsYXBzZVdoaXRlU3BhY2UoKSwgc3R5bGUudGFiU2l6ZSgpKTsKICAgICAg
ICAgcGFpbnRpbmdDb250ZXh0LmNvbnRleHQuZHJhd1RleHQoc3R5bGUuZm9udENhc2NhZGUoKSwg
dGV4dFJ1biwgeyB0ZXh0UmVjdC54KCksIGJhc2VsaW5lIH0pOwogICAgICAgICByZXR1cm47CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kaXNwbGF5L2Nzcy9EaXNwbGF5VGV4dEJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kaXNwbGF5L2Nzcy9EaXNwbGF5VGV4dEJveC5jcHAKaW5kZXggNWZi
NTRkMDNlNGY4Yzk2YTIxYzcyNGJiYWEzMGFiMWMzOTVlYzEwYi4uYmNkZGU5ZWI5ZjgxZmU4MjJk
NzQyNTcwOTlkNjdiZWIzZjJmNzM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZGlzcGxh
eS9jc3MvRGlzcGxheVRleHRCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rpc3BsYXkvY3Nz
L0Rpc3BsYXlUZXh0Qm94LmNwcApAQCAtNTMsNyArNTMsNyBAQCBTdHJpbmcgVGV4dEJveDo6ZGVi
dWdEZXNjcmlwdGlvbigpIGNvbnN0CiAgICAgVGV4dFN0cmVhbSBzdHJlYW07CiAKICAgICBzdHJl
YW0gPDwgYm94TmFtZSgpIDw8ICIgIiA8PCBhYnNvbHV0ZUJveFJlY3QoKSA8PCAiICgiIDw8IHRo
aXMgPDwgIikiOwotICAgIGF1dG8gdGV4dENvbnRlbnQgPSB0ZXh0KCkuY29udGVudCgpLnN1YnN0
cmluZyh0ZXh0KCkuc3RhcnQoKSwgdGV4dCgpLmxlbmd0aCgpKTsKKyAgICBhdXRvIHRleHRDb250
ZW50ID0gdGV4dCgpLm9yaWdpbmFsQ29udGVudCgpLnN1YnN0cmluZyh0ZXh0KCkuc3RhcnQoKSwg
dGV4dCgpLmxlbmd0aCgpKTsKICAgICB0ZXh0Q29udGVudC5yZXBsYWNlV2l0aExpdGVyYWwoJ1xc
JywgIlxcXFwiKTsKICAgICB0ZXh0Q29udGVudC5yZXBsYWNlV2l0aExpdGVyYWwoJ1xuJywgIlxc
biIpOwogICAgIGNvbnN0IHNpemVfdCBtYXhQcmludGVkTGVuZ3RoID0gODA7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVE
aXNwbGF5Q29udGVudEJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRp
bmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyLmNwcAppbmRleCA0
NzBhYzE4YzkzZTAyM2NiNzRmNGE0MzgyMTBiOTljZDAyOWE0OTgwLi42NmFkZDIxMzQ1MjFmNWMz
NGU2ZTA4YzU2Y2Y4YzE2ZTFmMDNjZTRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVEaXNwbGF5Q29udGVudEJ1aWxkZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5l
L0lubGluZURpc3BsYXlDb250ZW50QnVpbGRlci5jcHAKQEAgLTczLDggKzczLDggQEAgdm9pZCBJ
bmxpbmVEaXNwbGF5Q29udGVudEJ1aWxkZXI6OmNyZWF0ZVJ1bnNBbmRVcGRhdGVHZW9tZXRyeUZv
ckxpbmVDb250ZW50KGNvbnMKICAgICAgICAgICAgIGF1dG8gdGV4dFJ1blJlY3QgPSBsaW5lQm94
LmxvZ2ljYWxSZWN0Rm9yVGV4dFJ1bihsaW5lUnVuKTsKICAgICAgICAgICAgIHRleHRSdW5SZWN0
Lm1vdmVCeShsaW5lQm94TG9naWNhbFRvcExlZnQpOwogCisgICAgICAgICAgICBhdXRvJiBzdHls
ZSA9IGxheW91dEJveC5zdHlsZSgpOwogICAgICAgICAgICAgYXV0byBpbmtPdmVyZmxvdyA9IFsm
XSB7Ci0gICAgICAgICAgICAgICAgYXV0byYgc3R5bGUgPSBsYXlvdXRCb3guc3R5bGUoKTsKICAg
ICAgICAgICAgICAgICBhdXRvIGluaXRpYWxDb250YWluZ0Jsb2NrU2l6ZSA9IFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkubGF5b3V0Rm9ybWF0dGluZ0NvbnRleHRJbnRl
Z3JhdGlvbkVuYWJsZWQoKQogICAgICAgICAgICAgICAgICAgICA/IGZvcm1hdHRpbmdTdGF0ZS5s
YXlvdXRTdGF0ZSgpLnZpZXdwb3J0U2l6ZSgpCiAgICAgICAgICAgICAgICAgICAgIDogZm9ybWF0
dGluZ1N0YXRlLmxheW91dFN0YXRlKCkuZ2VvbWV0cnlGb3JCb3gobGF5b3V0Qm94LmluaXRpYWxD
b250YWluaW5nQmxvY2soKSkuY29udGVudEJveCgpLnNpemUoKTsKQEAgLTg5LDggKzg5LDE4IEBA
IHZvaWQgSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVSdW5zQW5kVXBkYXRlR2Vv
bWV0cnlGb3JMaW5lQ29udGVudChjb25zCiAgICAgICAgICAgICAgICAgcmV0dXJuIGlua092ZXJm
bG93OwogICAgICAgICAgICAgfTsKICAgICAgICAgICAgIEFTU0VSVChsaW5lUnVuLnRleHRDb250
ZW50KCkgJiYgaXM8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KSk7Ci0gICAgICAgICAgICBhdXRv
JiB0ZXh0Q29udGVudCA9IGxpbmVSdW4udGV4dENvbnRlbnQoKTsKLSAgICAgICAgICAgIGZvcm1h
dHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVuOjpUeXBlOjpUZXh0LCBs
YXlvdXRCb3gsIHRleHRSdW5SZWN0LCBpbmtPdmVyZmxvdygpLCBsaW5lUnVuLmV4cGFuc2lvbigp
LCBMaW5lUnVuOjpUZXh0IHsgdGV4dENvbnRlbnQtPnN0YXJ0LCB0ZXh0Q29udGVudC0+bGVuZ3Ro
LCBkb3duY2FzdDxJbmxpbmVUZXh0Qm94PihsYXlvdXRCb3gpLmNvbnRlbnQoKSwgdGV4dENvbnRl
bnQtPm5lZWRzSHlwaGVuIH0gfSk7CisgICAgICAgICAgICBhdXRvIGNvbnRlbnQgPSBkb3duY2Fz
dDxJbmxpbmVUZXh0Qm94PihsYXlvdXRCb3gpLmNvbnRlbnQoKTsKKyAgICAgICAgICAgIGF1dG8g
dGV4dCA9IGxpbmVSdW4udGV4dENvbnRlbnQoKTsKKyAgICAgICAgICAgIGF1dG8gYWRqdXN0ZWRD
b250ZW50VG9SZW5kZXIgPSBbJl0geworICAgICAgICAgICAgICAgIHJldHVybiB0ZXh0LT5uZWVk
c0h5cGhlbiA/IG1ha2VTdHJpbmcoY29udGVudC5zdWJzdHJpbmcodGV4dC0+c3RhcnQsIHRleHQt
Pmxlbmd0aCksIHN0eWxlLmh5cGhlblN0cmluZygpKSA6IFN0cmluZygpOworICAgICAgICAgICAg
fTsKKyAgICAgICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4Cisg
ICAgICAgICAgICAgICAgLCBMaW5lUnVuOjpUeXBlOjpUZXh0CisgICAgICAgICAgICAgICAgLCBs
YXlvdXRCb3gKKyAgICAgICAgICAgICAgICAsIHRleHRSdW5SZWN0CisgICAgICAgICAgICAgICAg
LCBpbmtPdmVyZmxvdygpCisgICAgICAgICAgICAgICAgLCBsaW5lUnVuLmV4cGFuc2lvbigpCisg
ICAgICAgICAgICAgICAgLCBMaW5lUnVuOjpUZXh0IHsgdGV4dC0+c3RhcnQsIHRleHQtPmxlbmd0
aCwgY29udGVudCwgYWRqdXN0ZWRDb250ZW50VG9SZW5kZXIoKSwgdGV4dC0+bmVlZHNIeXBoZW4g
fSB9KTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgSW5saW5l
SXRlbTo6VHlwZTo6U29mdExpbmVCcmVhazogewpAQCAtOTgsOCArMTA4LDE0IEBAIHZvaWQgSW5s
aW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVSdW5zQW5kVXBkYXRlR2VvbWV0cnlGb3JM
aW5lQ29udGVudChjb25zCiAgICAgICAgICAgICBzb2Z0TGluZUJyZWFrUnVuUmVjdC5tb3ZlQnko
bGluZUJveExvZ2ljYWxUb3BMZWZ0KTsKIAogICAgICAgICAgICAgQVNTRVJUKGxpbmVSdW4udGV4
dENvbnRlbnQoKSAmJiBpczxJbmxpbmVUZXh0Qm94PihsYXlvdXRCb3gpKTsKLSAgICAgICAgICAg
IGF1dG8mIHRleHRDb250ZW50ID0gbGluZVJ1bi50ZXh0Q29udGVudCgpOwotICAgICAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgsIExpbmVSdW46OlR5cGU6OlNv
ZnRMaW5lQnJlYWssIGxheW91dEJveCwgc29mdExpbmVCcmVha1J1blJlY3QsIHNvZnRMaW5lQnJl
YWtSdW5SZWN0LCBsaW5lUnVuLmV4cGFuc2lvbigpLCBMaW5lUnVuOjpUZXh0IHsgdGV4dENvbnRl
bnQtPnN0YXJ0LCB0ZXh0Q29udGVudC0+bGVuZ3RoLCBkb3duY2FzdDxJbmxpbmVUZXh0Qm94Pihs
YXlvdXRCb3gpLmNvbnRlbnQoKSwgdGV4dENvbnRlbnQtPm5lZWRzSHlwaGVuIH0gfSk7CisgICAg
ICAgICAgICBhdXRvJiB0ZXh0ID0gbGluZVJ1bi50ZXh0Q29udGVudCgpOworICAgICAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmVSdW4oeyBsaW5lSW5kZXgKKyAgICAgICAgICAgICAgICAs
IExpbmVSdW46OlR5cGU6OlNvZnRMaW5lQnJlYWsKKyAgICAgICAgICAgICAgICAsIGxheW91dEJv
eAorICAgICAgICAgICAgICAgICwgc29mdExpbmVCcmVha1J1blJlY3QKKyAgICAgICAgICAgICAg
ICAsIHNvZnRMaW5lQnJlYWtSdW5SZWN0CisgICAgICAgICAgICAgICAgLCBsaW5lUnVuLmV4cGFu
c2lvbigpCisgICAgICAgICAgICAgICAgLCBMaW5lUnVuOjpUZXh0IHsgdGV4dC0+c3RhcnQsIHRl
eHQtPmxlbmd0aCwgZG93bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KS5jb250ZW50KCkg
fSB9KTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgSW5saW5l
SXRlbTo6VHlwZTo6SGFyZExpbmVCcmVhazogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5oIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lTGluZVJ1bi5o
CmluZGV4IGI5NTEzMGVmYzMyNzE1ODJkZGNkM2M3NGY0YmM3MWE5NjJlYjliOWUuLjA0ZTg0MDU3
ZWI0NTc3NzNiMjk0M2U3ODYzNWEzOTJkOTRmMGExODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVM
aW5lUnVuLmgKQEAgLTM5LDIwICszOSwyMiBAQCBzdHJ1Y3QgTGluZVJ1biB7CiAgICAgc3RydWN0
IFRleHQgewogICAgICAgICBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FURUQ7CiAgICAgcHVi
bGljOgotICAgICAgICBUZXh0KHNpemVfdCBwb3NpdGlvbiwgc2l6ZV90IGxlbmd0aCwgY29uc3Qg
U3RyaW5nJiwgYm9vbCBuZWVkc0h5cGhlbiA9IGZhbHNlKTsKKyAgICAgICAgVGV4dChzaXplX3Qg
cG9zaXRpb24sIHNpemVfdCBsZW5ndGgsIGNvbnN0IFN0cmluZyYgb3JpZ2luYWxDb250ZW50LCBT
dHJpbmcgYWRqdXN0ZWRDb250ZW50VG9SZW5kZXIgPSBTdHJpbmcoKSwgYm9vbCBoYXNIeXBoZW4g
PSBmYWxzZSk7CiAKICAgICAgICAgc2l6ZV90IHN0YXJ0KCkgY29uc3QgeyByZXR1cm4gbV9zdGFy
dDsgfQogICAgICAgICBzaXplX3QgZW5kKCkgY29uc3QgeyByZXR1cm4gc3RhcnQoKSArIGxlbmd0
aCgpOyB9CiAgICAgICAgIHNpemVfdCBsZW5ndGgoKSBjb25zdCB7IHJldHVybiBtX2xlbmd0aDsg
fQotICAgICAgICBTdHJpbmcgY29udGVudCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudFN0cmlu
ZzsgfQorICAgICAgICBTdHJpbmcgb3JpZ2luYWxDb250ZW50KCkgY29uc3QgeyByZXR1cm4gbV9v
cmlnaW5hbENvbnRlbnQ7IH0KKyAgICAgICAgU3RyaW5nIHJlbmRlcmVkQ29udGVudCgpIGNvbnN0
IHsgcmV0dXJuIG1fYWRqdXN0ZWRDb250ZW50VG9SZW5kZXI7IH0KIAotICAgICAgICBib29sIG5l
ZWRzSHlwaGVuKCkgY29uc3QgeyByZXR1cm4gbV9uZWVkc0h5cGhlbjsgfQorICAgICAgICBib29s
IGhhc0h5cGhlbigpIGNvbnN0IHsgcmV0dXJuIG1faGFzSHlwaGVuOyB9CiAKICAgICBwcml2YXRl
OgogICAgICAgICBzaXplX3QgbV9zdGFydCB7IDAgfTsKICAgICAgICAgc2l6ZV90IG1fbGVuZ3Ro
IHsgMCB9OwotICAgICAgICBib29sIG1fbmVlZHNIeXBoZW4geyBmYWxzZSB9OwotICAgICAgICBT
dHJpbmcgbV9jb250ZW50U3RyaW5nOworICAgICAgICBib29sIG1faGFzSHlwaGVuIHsgZmFsc2Ug
fTsKKyAgICAgICAgU3RyaW5nIG1fb3JpZ2luYWxDb250ZW50OworICAgICAgICBTdHJpbmcgbV9h
ZGp1c3RlZENvbnRlbnRUb1JlbmRlcjsKICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUeXBlIHsK
QEAgLTEzMywxMSArMTM1LDEyIEBAIGlubGluZSBMaW5lUnVuOjpMaW5lUnVuKHNpemVfdCBsaW5l
SW5kZXgsIFR5cGUgdHlwZSwgY29uc3QgTGF5b3V0OjpCb3gmIGxheW91dEJvCiB7CiB9CiAKLWlu
bGluZSBMaW5lUnVuOjpUZXh0OjpUZXh0KHNpemVfdCBzdGFydCwgc2l6ZV90IGxlbmd0aCwgY29u
c3QgU3RyaW5nJiBjb250ZW50U3RyaW5nLCBib29sIG5lZWRzSHlwaGVuKQoraW5saW5lIExpbmVS
dW46OlRleHQ6OlRleHQoc2l6ZV90IHN0YXJ0LCBzaXplX3QgbGVuZ3RoLCBjb25zdCBTdHJpbmcm
IG9yaWdpbmFsQ29udGVudCwgU3RyaW5nIGFkanVzdGVkQ29udGVudFRvUmVuZGVyLCBib29sIGhh
c0h5cGhlbikKICAgICA6IG1fc3RhcnQoc3RhcnQpCiAgICAgLCBtX2xlbmd0aChsZW5ndGgpCi0g
ICAgLCBtX25lZWRzSHlwaGVuKG5lZWRzSHlwaGVuKQotICAgICwgbV9jb250ZW50U3RyaW5nKGNv
bnRlbnRTdHJpbmcpCisgICAgLCBtX2hhc0h5cGhlbihoYXNIeXBoZW4pCisgICAgLCBtX29yaWdp
bmFsQ29udGVudChvcmlnaW5hbENvbnRlbnQpCisgICAgLCBtX2FkanVzdGVkQ29udGVudFRvUmVu
ZGVyKGFkanVzdGVkQ29udGVudFRvUmVuZGVyKQogewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50
QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAKaW5kZXggNjcxMzEyMTVlMTY1MjRjYjI3
OTdhMjAwNWI2NmI0YjYzOTMyZjliZC4uYmRkZDFiYmQ0ZDhmYmFiYWE5YWRmMjc0NGY1NDdmMThh
NTViOTY0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWls
ZGVyLmNwcApAQCAtMTc2LDggKzE3Niw2IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNy
ZWF0ZURpc3BsYXlMaW5lUnVucyhjb25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBsaW5lCiAgICAg
YmlkaVJlc29sdmVyLmNyZWF0ZUJpZGlSdW5zRm9yTGluZShJdGVyYXRvcigmbGluZVJ1bnMsIGxp
bmVSdW5zLnNpemUoKSkpOwogI2VuZGlmCiAKLSAgICBWZWN0b3I8Ym9vbD4gaGFzQWRqdXN0ZWRU
cmFpbGluZ0xpbmVMaXN0KGxpbmVzLnNpemUoKSwgZmFsc2UpOwotCiAgICAgYXV0byBjcmVhdGVE
aXNwbGF5Qm94UnVuID0gWyZdKGF1dG8mIGxpbmVSdW4pIHsKICAgICAgICAgaWYgKGxpbmVSdW4u
aXNSb290SW5saW5lQm94KCkpIHsKICAgICAgICAgICAgIC8vIEZJWE1FOiBUZWFjaCB0aGUgcnVu
IGl0ZXJhdG9ycyB0byBpZ25vcmUgdGhlIHJvb3QgaW5saW5lIGJveCBydW5zLgpAQCAtMjEyLDgg
KzIxMCw3IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVu
cyhjb25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBsaW5lCiAgICAgICAgICAgICBpbmxpbmVDb250
ZW50LnJ1bnMuYXBwZW5kKHsgbGluZUluZGV4LCBsYXlvdXRCb3gsIHJ1blJlY3QsIGlua092ZXJm
bG93LCB7IH0sIHsgfSB9KTsKICAgICB9OwogCi0gICAgYXV0byBjcmVhdGVEaXNwbGF5VGV4dFJ1
bkZvclJhbmdlID0gWyZdKGF1dG8mIGxpbmVSdW4sIGF1dG8gc3RhcnRPZmZzZXQsIGF1dG8gZW5k
T2Zmc2V0KSB7Ci0gICAgICAgIFJFTEVBU0VfQVNTRVJUKHN0YXJ0T2Zmc2V0IDwgZW5kT2Zmc2V0
KTsKKyAgICBhdXRvIGNyZWF0ZURpc3BsYXlUZXh0UnVuID0gWyZdKGF1dG8mIGxpbmVSdW4pIHsK
ICAgICAgICAgYXV0byYgbGF5b3V0Qm94ID0gbGluZVJ1bi5sYXlvdXRCb3goKTsKICAgICAgICAg
YXV0byBsaW5lSW5kZXggPSBsaW5lUnVuLmxpbmVJbmRleCgpOwogICAgICAgICBhdXRvIHJ1blJl
Y3QgPSBGbG9hdFJlY3QgeyBsaW5lUnVuLmxvZ2ljYWxSZWN0KCkgfTsKQEAgLTIyMywyNiArMjIw
LDE5IEBAIHZvaWQgSW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lUnVucyhj
b25zdCBMYXlvdXQ6OklubGluZUxpbmVzJiBsaW5lCiAgICAgICAgICAgICBpbmtPdmVyZmxvdy5z
ZXRZKHJvdW5kVG9JbnQoaW5rT3ZlcmZsb3cueSgpKSk7CiAgICAgICAgIH0KIAotICAgICAgICBh
dXRvJiBzdHlsZSA9IGxheW91dEJveC5zdHlsZSgpOwogICAgICAgICBhdXRvIHRleHQgPSBsaW5l
UnVuLnRleHQoKTsKLSAgICAgICAgYXV0byBhZGp1c3RlZENvbnRlbnRUb1JlbmRlciA9IFsmXSB7
Ci0gICAgICAgICAgICBhdXRvIG9yaWdpbmFsQ29udGVudCA9IHRleHQtPmNvbnRlbnQoKS5zdWJz
dHJpbmcodGV4dC0+c3RhcnQoKSwgdGV4dC0+bGVuZ3RoKCkpOwotICAgICAgICAgICAgaWYgKHRl
eHQtPm5lZWRzSHlwaGVuKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIG1ha2VTdHJpbmcob3Jp
Z2luYWxDb250ZW50LCBzdHlsZS5oeXBoZW5TdHJpbmcoKSk7Ci0gICAgICAgICAgICByZXR1cm4g
U3RyaW5nKCk7Ci0gICAgICAgIH07Ci0KLSAgICAgICAgUkVMRUFTRV9BU1NFUlQoc3RhcnRPZmZz
ZXQgPj0gdGV4dC0+c3RhcnQoKSAmJiBzdGFydE9mZnNldCA8IHRleHQtPmVuZCgpKTsKLSAgICAg
ICAgUkVMRUFTRV9BU1NFUlQoZW5kT2Zmc2V0ID4gdGV4dC0+c3RhcnQoKSAmJiBlbmRPZmZzZXQg
PD0gdGV4dC0+ZW5kKCkpOwotICAgICAgICBhdXRvIHRleHRDb250ZW50ID0gUnVuOjpUZXh0Q29u
dGVudCB7IHN0YXJ0T2Zmc2V0LCBlbmRPZmZzZXQgLSBzdGFydE9mZnNldCwgdGV4dC0+Y29udGVu
dCgpLCBhZGp1c3RlZENvbnRlbnRUb1JlbmRlcigpLCB0ZXh0LT5uZWVkc0h5cGhlbigpIH07Ci0g
ICAgICAgIGF1dG8gZXhwYW5zaW9uID0gUnVuOjpFeHBhbnNpb24geyBsaW5lUnVuLmV4cGFuc2lv
bigpLmJlaGF2aW9yLCBsaW5lUnVuLmV4cGFuc2lvbigpLmhvcml6b250YWxFeHBhbnNpb24gfTsK
LSAgICAgICAgaW5saW5lQ29udGVudC5ydW5zLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5b3V0Qm94
LCBydW5SZWN0LCBpbmtPdmVyZmxvdywgZXhwYW5zaW9uLCB0ZXh0Q29udGVudCB9KTsKKyAgICAg
ICAgaW5saW5lQ29udGVudC5ydW5zLmFwcGVuZCh7IGxpbmVJbmRleAorICAgICAgICAgICAgLCBs
YXlvdXRCb3gKKyAgICAgICAgICAgICwgcnVuUmVjdAorICAgICAgICAgICAgLCBpbmtPdmVyZmxv
dworICAgICAgICAgICAgLCBSdW46OkV4cGFuc2lvbiB7IGxpbmVSdW4uZXhwYW5zaW9uKCkuYmVo
YXZpb3IsIGxpbmVSdW4uZXhwYW5zaW9uKCkuaG9yaXpvbnRhbEV4cGFuc2lvbiB9CisgICAgICAg
ICAgICAsIFJ1bjo6VGV4dENvbnRlbnQgeyB0ZXh0LT5zdGFydCgpLCB0ZXh0LT5sZW5ndGgoKSwg
dGV4dC0+b3JpZ2luYWxDb250ZW50KCksIHRleHQtPnJlbmRlcmVkQ29udGVudCgpLCB0ZXh0LT5o
YXNIeXBoZW4oKSB9IH0pOwogICAgIH07CiAKICAgICBpbmxpbmVDb250ZW50LnJ1bnMucmVzZXJ2
ZUluaXRpYWxDYXBhY2l0eShsaW5lUnVucy5zaXplKCkpOwogICAgIGZvciAoYXV0byYgbGluZVJ1
biA6IGxpbmVSdW5zKSB7CiAgICAgICAgIGlmIChhdXRvJiB0ZXh0ID0gbGluZVJ1bi50ZXh0KCkp
Ci0gICAgICAgICAgICBjcmVhdGVEaXNwbGF5VGV4dFJ1bkZvclJhbmdlKGxpbmVSdW4sIHRleHQt
PnN0YXJ0KCksIHRleHQtPmVuZCgpKTsKKyAgICAgICAgICAgIGNyZWF0ZURpc3BsYXlUZXh0UnVu
KGxpbmVSdW4pOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBjcmVhdGVEaXNwbGF5Qm94UnVu
KGxpbmVSdW4pOwogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436776</attachid>
            <date>2021-08-30 08:54:00 -0700</date>
            <delta_ts>2021-08-30 08:56:29 -0700</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-229662-20210830085359.patch</filename>
            <type>text/plain</type>
            <size>12511</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGJkZjk3YjE5ZDQwOGRi
YjMxOTVkOTBkYWE3YzdmYWI0YWU2ZTBmOC4uMmVmYWI3Zjg4OWM1ZTZkMWIwYmJiYWFhM2FlMjk3
MWU0MzNlZDE2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTA4LTMwICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJRkNdIE1vdmUgaHlw
aGVuIGhhbmRsaW5nIGZyb20gdGhlIGludGVncmF0aW9uIHJ1biB0byBJRkMncyBkaXNwbGF5IHJ1
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5NjYy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW50dGkgS29pdmlzdG8uCisKKyAgICAgICAgTW92ZSB0
aGUgcmVuZGVyZWQgY29udGVudCBoYW5kbGluZyAoaHlwaGVuIG9ubHkgYXRtKSBvdmVyIHRvIHRo
ZSBJRkMgZGlzcGxheSBydW5zLgorICAgICAgICBUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBt
ZXJnaW5nIGludGVncmF0aW9uIGFuZCBJRkMncyBkaXNwbGF5IHJ1bnMuCisKKyAgICAgICAgKiBk
aXNwbGF5L2Nzcy9EaXNwbGF5Qm94UGFpbnRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEaXNw
bGF5OjpCb3hQYWludGVyOjpwYWludEJveENvbnRlbnQpOgorICAgICAgICAqIGRpc3BsYXkvY3Nz
L0Rpc3BsYXlUZXh0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXk6OlRleHRCb3g6
OmRlYnVnRGVzY3JpcHRpb24gY29uc3QpOgorICAgICAgICAqIGxheW91dC9mb3JtYXR0aW5nQ29u
dGV4dHMvaW5saW5lL0lubGluZURpc3BsYXlDb250ZW50QnVpbGRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6OklubGluZURpc3BsYXlDb250ZW50QnVpbGRlcjo6Y3JlYXRlUnVuc0Fu
ZFVwZGF0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQpOgorICAgICAgICAqIGxheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4uaDoKKyAgICAgICAgKFdlYkNvcmU6Okxh
eW91dDo6TGluZVJ1bjo6VGV4dDo6b3JpZ2luYWxDb250ZW50IGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6cmVuZGVyZWRDb250ZW50IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6aGFzSHlwaGVuIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6TGluZVJ1bjo6VGV4dDo6VGV4dCk6CisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXQ6OkxpbmVSdW46OlRleHQ6OmNvbnRlbnQgY29uc3QpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpMaW5lUnVuOjpUZXh0OjpuZWVkc0h5cGhlbiBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVn
cmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OklubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMg
Y29uc3QpOgorCiAyMDIxLTA4LTMwICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgSW1wbGVtZW50IHNlbGYucmVwb3J0RXJyb3IoKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZGlzcGxheS9jc3MvRGlzcGxheUJveFBhaW50ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvZGlzcGxheS9jc3MvRGlzcGxheUJveFBhaW50ZXIuY3BwCmluZGV4IDFmNjViYmZjMDNhMTZj
MzcwZjhlYWM1OTJjYmM5OGI5NzQ2NWM1NzcuLmU0OTQ1YWIxM2VjNmEyZWJmZjJmYjQ1MWNhNjVj
YzY5YzBiOTY3OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rpc3BsYXkvY3NzL0Rpc3Bs
YXlCb3hQYWludGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kaXNwbGF5L2Nzcy9EaXNwbGF5
Qm94UGFpbnRlci5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgdm9pZCBCb3hQYWludGVyOjpwYWludEJv
eENvbnRlbnQoY29uc3QgQm94JiBib3gsIFBhaW50aW5nQ29udGV4dCYgcGFpbnRpbmdDb250ZXgK
ICAgICAgICAgYXV0byBiYXNlbGluZSA9IHRleHRSZWN0LnkoKSArIHN0eWxlLmZvbnRNZXRyaWNz
KCkuYXNjZW50KCk7CiAgICAgICAgIGF1dG8gZXhwYW5zaW9uID0gdGV4dEJveC5leHBhbnNpb24o
KTsKIAotICAgICAgICBhdXRvIHRleHRSdW4gPSBUZXh0UnVuIHsgdGV4dEJveC50ZXh0KCkuY29u
dGVudCgpLnN1YnN0cmluZyh0ZXh0Qm94LnRleHQoKS5zdGFydCgpLCB0ZXh0Qm94LnRleHQoKS5s
ZW5ndGgoKSksIHRleHRSZWN0LngoKSwgZXhwYW5zaW9uLmhvcml6b250YWxFeHBhbnNpb24sIGV4
cGFuc2lvbi5iZWhhdmlvciB9OworICAgICAgICBhdXRvIHRleHRSdW4gPSBUZXh0UnVuIHsgdGV4
dEJveC50ZXh0KCkub3JpZ2luYWxDb250ZW50KCkuc3Vic3RyaW5nKHRleHRCb3gudGV4dCgpLnN0
YXJ0KCksIHRleHRCb3gudGV4dCgpLmxlbmd0aCgpKSwgdGV4dFJlY3QueCgpLCBleHBhbnNpb24u
aG9yaXpvbnRhbEV4cGFuc2lvbiwgZXhwYW5zaW9uLmJlaGF2aW9yIH07CiAgICAgICAgIHRleHRS
dW4uc2V0VGFiU2l6ZSghc3R5bGUuY29sbGFwc2VXaGl0ZVNwYWNlKCksIHN0eWxlLnRhYlNpemUo
KSk7CiAgICAgICAgIHBhaW50aW5nQ29udGV4dC5jb250ZXh0LmRyYXdUZXh0KHN0eWxlLmZvbnRD
YXNjYWRlKCksIHRleHRSdW4sIHsgdGV4dFJlY3QueCgpLCBiYXNlbGluZSB9KTsKICAgICAgICAg
cmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZGlzcGxheS9jc3MvRGlzcGxheVRl
eHRCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvZGlzcGxheS9jc3MvRGlzcGxheVRleHRCb3guY3Bw
CmluZGV4IDVmYjU0ZDAzZTRmOGM5NmEyMWM3MjRiYmFhMzBhYjFjMzk1ZWMxMGIuLmJjZGRlOWVi
OWY4MWZlODIyZDc0MjU3MDk5ZDY3YmViM2YyZjczNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Rpc3BsYXkvY3NzL0Rpc3BsYXlUZXh0Qm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
aXNwbGF5L2Nzcy9EaXNwbGF5VGV4dEJveC5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgU3RyaW5nIFRl
eHRCb3g6OmRlYnVnRGVzY3JpcHRpb24oKSBjb25zdAogICAgIFRleHRTdHJlYW0gc3RyZWFtOwog
CiAgICAgc3RyZWFtIDw8IGJveE5hbWUoKSA8PCAiICIgPDwgYWJzb2x1dGVCb3hSZWN0KCkgPDwg
IiAoIiA8PCB0aGlzIDw8ICIpIjsKLSAgICBhdXRvIHRleHRDb250ZW50ID0gdGV4dCgpLmNvbnRl
bnQoKS5zdWJzdHJpbmcodGV4dCgpLnN0YXJ0KCksIHRleHQoKS5sZW5ndGgoKSk7CisgICAgYXV0
byB0ZXh0Q29udGVudCA9IHRleHQoKS5vcmlnaW5hbENvbnRlbnQoKS5zdWJzdHJpbmcodGV4dCgp
LnN0YXJ0KCksIHRleHQoKS5sZW5ndGgoKSk7CiAgICAgdGV4dENvbnRlbnQucmVwbGFjZVdpdGhM
aXRlcmFsKCdcXCcsICJcXFxcIik7CiAgICAgdGV4dENvbnRlbnQucmVwbGFjZVdpdGhMaXRlcmFs
KCdcbicsICJcXG4iKTsKICAgICBjb25zdCBzaXplX3QgbWF4UHJpbnRlZExlbmd0aCA9IDgwOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZURpc3BsYXlDb250ZW50QnVpbGRlci5j
cHAKaW5kZXggNDcwYWMxOGM5M2UwMjNjYjc0ZjRhNDM4MjEwYjk5Y2QwMjlhNDk4MC4uNjZhZGQy
MTM0NTIxZjVjMzRlNmUwOGM1NmNmOGMxNmUxZjAzY2U0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lRGlzcGxheUNvbnRl
bnRCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRl
eHRzL2lubGluZS9JbmxpbmVEaXNwbGF5Q29udGVudEJ1aWxkZXIuY3BwCkBAIC03Myw4ICs3Myw4
IEBAIHZvaWQgSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVSdW5zQW5kVXBkYXRl
R2VvbWV0cnlGb3JMaW5lQ29udGVudChjb25zCiAgICAgICAgICAgICBhdXRvIHRleHRSdW5SZWN0
ID0gbGluZUJveC5sb2dpY2FsUmVjdEZvclRleHRSdW4obGluZVJ1bik7CiAgICAgICAgICAgICB0
ZXh0UnVuUmVjdC5tb3ZlQnkobGluZUJveExvZ2ljYWxUb3BMZWZ0KTsKIAorICAgICAgICAgICAg
YXV0byYgc3R5bGUgPSBsYXlvdXRCb3guc3R5bGUoKTsKICAgICAgICAgICAgIGF1dG8gaW5rT3Zl
cmZsb3cgPSBbJl0gewotICAgICAgICAgICAgICAgIGF1dG8mIHN0eWxlID0gbGF5b3V0Qm94LnN0
eWxlKCk7CiAgICAgICAgICAgICAgICAgYXV0byBpbml0aWFsQ29udGFpbmdCbG9ja1NpemUgPSBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLmxheW91dEZvcm1hdHRpbmdD
b250ZXh0SW50ZWdyYXRpb25FbmFibGVkKCkKICAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXR0
aW5nU3RhdGUubGF5b3V0U3RhdGUoKS52aWV3cG9ydFNpemUoKQogICAgICAgICAgICAgICAgICAg
ICA6IGZvcm1hdHRpbmdTdGF0ZS5sYXlvdXRTdGF0ZSgpLmdlb21ldHJ5Rm9yQm94KGxheW91dEJv
eC5pbml0aWFsQ29udGFpbmluZ0Jsb2NrKCkpLmNvbnRlbnRCb3goKS5zaXplKCk7CkBAIC04OSw4
ICs4OSwxOCBAQCB2b2lkIElubGluZURpc3BsYXlDb250ZW50QnVpbGRlcjo6Y3JlYXRlUnVuc0Fu
ZFVwZGF0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQoY29ucwogICAgICAgICAgICAgICAgIHJldHVy
biBpbmtPdmVyZmxvdzsKICAgICAgICAgICAgIH07CiAgICAgICAgICAgICBBU1NFUlQobGluZVJ1
bi50ZXh0Q29udGVudCgpICYmIGlzPElubGluZVRleHRCb3g+KGxheW91dEJveCkpOwotICAgICAg
ICAgICAgYXV0byYgdGV4dENvbnRlbnQgPSBsaW5lUnVuLnRleHRDb250ZW50KCk7Ci0gICAgICAg
ICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxpbmVJbmRleCwgTGluZVJ1bjo6VHlw
ZTo6VGV4dCwgbGF5b3V0Qm94LCB0ZXh0UnVuUmVjdCwgaW5rT3ZlcmZsb3coKSwgbGluZVJ1bi5l
eHBhbnNpb24oKSwgTGluZVJ1bjo6VGV4dCB7IHRleHRDb250ZW50LT5zdGFydCwgdGV4dENvbnRl
bnQtPmxlbmd0aCwgZG93bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KS5jb250ZW50KCks
IHRleHRDb250ZW50LT5uZWVkc0h5cGhlbiB9IH0pOworICAgICAgICAgICAgYXV0byBjb250ZW50
ID0gZG93bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KS5jb250ZW50KCk7CisgICAgICAg
ICAgICBhdXRvIHRleHQgPSBsaW5lUnVuLnRleHRDb250ZW50KCk7CisgICAgICAgICAgICBhdXRv
IGFkanVzdGVkQ29udGVudFRvUmVuZGVyID0gWyZdIHsKKyAgICAgICAgICAgICAgICByZXR1cm4g
dGV4dC0+bmVlZHNIeXBoZW4gPyBtYWtlU3RyaW5nKGNvbnRlbnQuc3Vic3RyaW5nKHRleHQtPnN0
YXJ0LCB0ZXh0LT5sZW5ndGgpLCBzdHlsZS5oeXBoZW5TdHJpbmcoKSkgOiBTdHJpbmcoKTsKKyAg
ICAgICAgICAgIH07CisgICAgICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZVJ1bih7IGxp
bmVJbmRleAorICAgICAgICAgICAgICAgICwgTGluZVJ1bjo6VHlwZTo6VGV4dAorICAgICAgICAg
ICAgICAgICwgbGF5b3V0Qm94CisgICAgICAgICAgICAgICAgLCB0ZXh0UnVuUmVjdAorICAgICAg
ICAgICAgICAgICwgaW5rT3ZlcmZsb3coKQorICAgICAgICAgICAgICAgICwgbGluZVJ1bi5leHBh
bnNpb24oKQorICAgICAgICAgICAgICAgICwgTGluZVJ1bjo6VGV4dCB7IHRleHQtPnN0YXJ0LCB0
ZXh0LT5sZW5ndGgsIGNvbnRlbnQsIGFkanVzdGVkQ29udGVudFRvUmVuZGVyKCksIHRleHQtPm5l
ZWRzSHlwaGVuIH0gfSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICBj
YXNlIElubGluZUl0ZW06OlR5cGU6OlNvZnRMaW5lQnJlYWs6IHsKQEAgLTk4LDggKzEwOCwxNCBA
QCB2b2lkIElubGluZURpc3BsYXlDb250ZW50QnVpbGRlcjo6Y3JlYXRlUnVuc0FuZFVwZGF0ZUdl
b21ldHJ5Rm9yTGluZUNvbnRlbnQoY29ucwogICAgICAgICAgICAgc29mdExpbmVCcmVha1J1blJl
Y3QubW92ZUJ5KGxpbmVCb3hMb2dpY2FsVG9wTGVmdCk7CiAKICAgICAgICAgICAgIEFTU0VSVChs
aW5lUnVuLnRleHRDb250ZW50KCkgJiYgaXM8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KSk7Ci0g
ICAgICAgICAgICBhdXRvJiB0ZXh0Q29udGVudCA9IGxpbmVSdW4udGV4dENvbnRlbnQoKTsKLSAg
ICAgICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4LCBMaW5lUnVu
OjpUeXBlOjpTb2Z0TGluZUJyZWFrLCBsYXlvdXRCb3gsIHNvZnRMaW5lQnJlYWtSdW5SZWN0LCBz
b2Z0TGluZUJyZWFrUnVuUmVjdCwgbGluZVJ1bi5leHBhbnNpb24oKSwgTGluZVJ1bjo6VGV4dCB7
IHRleHRDb250ZW50LT5zdGFydCwgdGV4dENvbnRlbnQtPmxlbmd0aCwgZG93bmNhc3Q8SW5saW5l
VGV4dEJveD4obGF5b3V0Qm94KS5jb250ZW50KCksIHRleHRDb250ZW50LT5uZWVkc0h5cGhlbiB9
IH0pOworICAgICAgICAgICAgYXV0byYgdGV4dCA9IGxpbmVSdW4udGV4dENvbnRlbnQoKTsKKyAg
ICAgICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5hZGRMaW5lUnVuKHsgbGluZUluZGV4CisgICAgICAg
ICAgICAgICAgLCBMaW5lUnVuOjpUeXBlOjpTb2Z0TGluZUJyZWFrCisgICAgICAgICAgICAgICAg
LCBsYXlvdXRCb3gKKyAgICAgICAgICAgICAgICAsIHNvZnRMaW5lQnJlYWtSdW5SZWN0CisgICAg
ICAgICAgICAgICAgLCBzb2Z0TGluZUJyZWFrUnVuUmVjdAorICAgICAgICAgICAgICAgICwgbGlu
ZVJ1bi5leHBhbnNpb24oKQorICAgICAgICAgICAgICAgICwgTGluZVJ1bjo6VGV4dCB7IHRleHQt
PnN0YXJ0LCB0ZXh0LT5sZW5ndGgsIGRvd25jYXN0PElubGluZVRleHRCb3g+KGxheW91dEJveCku
Y29udGVudCgpIH0gfSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICBj
YXNlIElubGluZUl0ZW06OlR5cGU6OkhhcmRMaW5lQnJlYWs6IHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUxpbmVSdW4u
aCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGlu
ZUxpbmVSdW4uaAppbmRleCBiOTUxMzBlZmMzMjcxNTgyZGRjZDNjNzRmNGJjNzFhOTYyZWI5Yjll
Li4wNGU4NDA1N2ViNDU3NzczYjI5NDNlNzg2MzVhMzkyZDk0ZjBhMTgyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVMaW5l
UnVuLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lTGluZVJ1bi5oCkBAIC0zOSwyMCArMzksMjIgQEAgc3RydWN0IExpbmVSdW4gewog
ICAgIHN0cnVjdCBUZXh0IHsKICAgICAgICAgV1RGX01BS0VfU1RSVUNUX0ZBU1RfQUxMT0NBVEVE
OwogICAgIHB1YmxpYzoKLSAgICAgICAgVGV4dChzaXplX3QgcG9zaXRpb24sIHNpemVfdCBsZW5n
dGgsIGNvbnN0IFN0cmluZyYsIGJvb2wgbmVlZHNIeXBoZW4gPSBmYWxzZSk7CisgICAgICAgIFRl
eHQoc2l6ZV90IHBvc2l0aW9uLCBzaXplX3QgbGVuZ3RoLCBjb25zdCBTdHJpbmcmIG9yaWdpbmFs
Q29udGVudCwgU3RyaW5nIGFkanVzdGVkQ29udGVudFRvUmVuZGVyID0gU3RyaW5nKCksIGJvb2wg
aGFzSHlwaGVuID0gZmFsc2UpOwogCiAgICAgICAgIHNpemVfdCBzdGFydCgpIGNvbnN0IHsgcmV0
dXJuIG1fc3RhcnQ7IH0KICAgICAgICAgc2l6ZV90IGVuZCgpIGNvbnN0IHsgcmV0dXJuIHN0YXJ0
KCkgKyBsZW5ndGgoKTsgfQogICAgICAgICBzaXplX3QgbGVuZ3RoKCkgY29uc3QgeyByZXR1cm4g
bV9sZW5ndGg7IH0KLSAgICAgICAgU3RyaW5nIGNvbnRlbnQoKSBjb25zdCB7IHJldHVybiBtX2Nv
bnRlbnRTdHJpbmc7IH0KKyAgICAgICAgU3RyaW5nIG9yaWdpbmFsQ29udGVudCgpIGNvbnN0IHsg
cmV0dXJuIG1fb3JpZ2luYWxDb250ZW50OyB9CisgICAgICAgIFN0cmluZyByZW5kZXJlZENvbnRl
bnQoKSBjb25zdCB7IHJldHVybiBtX2FkanVzdGVkQ29udGVudFRvUmVuZGVyOyB9CiAKLSAgICAg
ICAgYm9vbCBuZWVkc0h5cGhlbigpIGNvbnN0IHsgcmV0dXJuIG1fbmVlZHNIeXBoZW47IH0KKyAg
ICAgICAgYm9vbCBoYXNIeXBoZW4oKSBjb25zdCB7IHJldHVybiBtX2hhc0h5cGhlbjsgfQogCiAg
ICAgcHJpdmF0ZToKICAgICAgICAgc2l6ZV90IG1fc3RhcnQgeyAwIH07CiAgICAgICAgIHNpemVf
dCBtX2xlbmd0aCB7IDAgfTsKLSAgICAgICAgYm9vbCBtX25lZWRzSHlwaGVuIHsgZmFsc2UgfTsK
LSAgICAgICAgU3RyaW5nIG1fY29udGVudFN0cmluZzsKKyAgICAgICAgYm9vbCBtX2hhc0h5cGhl
biB7IGZhbHNlIH07CisgICAgICAgIFN0cmluZyBtX29yaWdpbmFsQ29udGVudDsKKyAgICAgICAg
U3RyaW5nIG1fYWRqdXN0ZWRDb250ZW50VG9SZW5kZXI7CiAgICAgfTsKIAogICAgIGVudW0gY2xh
c3MgVHlwZSB7CkBAIC0xMzMsMTEgKzEzNSwxMiBAQCBpbmxpbmUgTGluZVJ1bjo6TGluZVJ1bihz
aXplX3QgbGluZUluZGV4LCBUeXBlIHR5cGUsIGNvbnN0IExheW91dDo6Qm94JiBsYXlvdXRCbwog
ewogfQogCi1pbmxpbmUgTGluZVJ1bjo6VGV4dDo6VGV4dChzaXplX3Qgc3RhcnQsIHNpemVfdCBs
ZW5ndGgsIGNvbnN0IFN0cmluZyYgY29udGVudFN0cmluZywgYm9vbCBuZWVkc0h5cGhlbikKK2lu
bGluZSBMaW5lUnVuOjpUZXh0OjpUZXh0KHNpemVfdCBzdGFydCwgc2l6ZV90IGxlbmd0aCwgY29u
c3QgU3RyaW5nJiBvcmlnaW5hbENvbnRlbnQsIFN0cmluZyBhZGp1c3RlZENvbnRlbnRUb1JlbmRl
ciwgYm9vbCBoYXNIeXBoZW4pCiAgICAgOiBtX3N0YXJ0KHN0YXJ0KQogICAgICwgbV9sZW5ndGgo
bGVuZ3RoKQotICAgICwgbV9uZWVkc0h5cGhlbihuZWVkc0h5cGhlbikKLSAgICAsIG1fY29udGVu
dFN0cmluZyhjb250ZW50U3RyaW5nKQorICAgICwgbV9oYXNIeXBoZW4oaGFzSHlwaGVuKQorICAg
ICwgbV9vcmlnaW5hbENvbnRlbnQob3JpZ2luYWxDb250ZW50KQorICAgICwgbV9hZGp1c3RlZENv
bnRlbnRUb1JlbmRlcihhZGp1c3RlZENvbnRlbnRUb1JlbmRlcikKIHsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5s
aW5lQ29udGVudEJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9u
L0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwCmluZGV4IDY3MTMxMjE1
ZTE2NTI0Y2IyNzk3YTIwMDViNjZiNGI2MzkzMmY5YmQuLmJkZGQxYmJkNGQ4ZmJhYmFhOWFkZjI3
NDRmNTQ3ZjE4YTU1Yjk2NDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRl
Z3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVD
b250ZW50QnVpbGRlci5jcHAKQEAgLTE3Niw4ICsxNzYsNiBAQCB2b2lkIElubGluZUNvbnRlbnRC
dWlsZGVyOjpjcmVhdGVEaXNwbGF5TGluZVJ1bnMoY29uc3QgTGF5b3V0OjpJbmxpbmVMaW5lcyYg
bGluZQogICAgIGJpZGlSZXNvbHZlci5jcmVhdGVCaWRpUnVuc0ZvckxpbmUoSXRlcmF0b3IoJmxp
bmVSdW5zLCBsaW5lUnVucy5zaXplKCkpKTsKICNlbmRpZgogCi0gICAgVmVjdG9yPGJvb2w+IGhh
c0FkanVzdGVkVHJhaWxpbmdMaW5lTGlzdChsaW5lcy5zaXplKCksIGZhbHNlKTsKLQogICAgIGF1
dG8gY3JlYXRlRGlzcGxheUJveFJ1biA9IFsmXShhdXRvJiBsaW5lUnVuKSB7CiAgICAgICAgIGlm
IChsaW5lUnVuLmlzUm9vdElubGluZUJveCgpKSB7CiAgICAgICAgICAgICAvLyBGSVhNRTogVGVh
Y2ggdGhlIHJ1biBpdGVyYXRvcnMgdG8gaWdub3JlIHRoZSByb290IGlubGluZSBib3ggcnVucy4K
QEAgLTIxMiw4ICsyMTAsNyBAQCB2b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNw
bGF5TGluZVJ1bnMoY29uc3QgTGF5b3V0OjpJbmxpbmVMaW5lcyYgbGluZQogICAgICAgICAgICAg
aW5saW5lQ29udGVudC5ydW5zLmFwcGVuZCh7IGxpbmVJbmRleCwgbGF5b3V0Qm94LCBydW5SZWN0
LCBpbmtPdmVyZmxvdywgeyB9LCB7IH0gfSk7CiAgICAgfTsKIAotICAgIGF1dG8gY3JlYXRlRGlz
cGxheVRleHRSdW5Gb3JSYW5nZSA9IFsmXShhdXRvJiBsaW5lUnVuLCBhdXRvIHN0YXJ0T2Zmc2V0
LCBhdXRvIGVuZE9mZnNldCkgewotICAgICAgICBSRUxFQVNFX0FTU0VSVChzdGFydE9mZnNldCA8
IGVuZE9mZnNldCk7CisgICAgYXV0byBjcmVhdGVEaXNwbGF5VGV4dFJ1biA9IFsmXShhdXRvJiBs
aW5lUnVuKSB7CiAgICAgICAgIGF1dG8mIGxheW91dEJveCA9IGxpbmVSdW4ubGF5b3V0Qm94KCk7
CiAgICAgICAgIGF1dG8gbGluZUluZGV4ID0gbGluZVJ1bi5saW5lSW5kZXgoKTsKICAgICAgICAg
YXV0byBydW5SZWN0ID0gRmxvYXRSZWN0IHsgbGluZVJ1bi5sb2dpY2FsUmVjdCgpIH07CkBAIC0y
MjMsMjYgKzIyMCwxOSBAQCB2b2lkIElubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5
TGluZVJ1bnMoY29uc3QgTGF5b3V0OjpJbmxpbmVMaW5lcyYgbGluZQogICAgICAgICAgICAgaW5r
T3ZlcmZsb3cuc2V0WShyb3VuZFRvSW50KGlua092ZXJmbG93LnkoKSkpOwogICAgICAgICB9CiAK
LSAgICAgICAgYXV0byYgc3R5bGUgPSBsYXlvdXRCb3guc3R5bGUoKTsKICAgICAgICAgYXV0byB0
ZXh0ID0gbGluZVJ1bi50ZXh0KCk7Ci0gICAgICAgIGF1dG8gYWRqdXN0ZWRDb250ZW50VG9SZW5k
ZXIgPSBbJl0gewotICAgICAgICAgICAgYXV0byBvcmlnaW5hbENvbnRlbnQgPSB0ZXh0LT5jb250
ZW50KCkuc3Vic3RyaW5nKHRleHQtPnN0YXJ0KCksIHRleHQtPmxlbmd0aCgpKTsKLSAgICAgICAg
ICAgIGlmICh0ZXh0LT5uZWVkc0h5cGhlbigpKQotICAgICAgICAgICAgICAgIHJldHVybiBtYWtl
U3RyaW5nKG9yaWdpbmFsQ29udGVudCwgc3R5bGUuaHlwaGVuU3RyaW5nKCkpOwotICAgICAgICAg
ICAgcmV0dXJuIFN0cmluZygpOwotICAgICAgICB9OwotCi0gICAgICAgIFJFTEVBU0VfQVNTRVJU
KHN0YXJ0T2Zmc2V0ID49IHRleHQtPnN0YXJ0KCkgJiYgc3RhcnRPZmZzZXQgPCB0ZXh0LT5lbmQo
KSk7Ci0gICAgICAgIFJFTEVBU0VfQVNTRVJUKGVuZE9mZnNldCA+IHRleHQtPnN0YXJ0KCkgJiYg
ZW5kT2Zmc2V0IDw9IHRleHQtPmVuZCgpKTsKLSAgICAgICAgYXV0byB0ZXh0Q29udGVudCA9IFJ1
bjo6VGV4dENvbnRlbnQgeyBzdGFydE9mZnNldCwgZW5kT2Zmc2V0IC0gc3RhcnRPZmZzZXQsIHRl
eHQtPmNvbnRlbnQoKSwgYWRqdXN0ZWRDb250ZW50VG9SZW5kZXIoKSwgdGV4dC0+bmVlZHNIeXBo
ZW4oKSB9OwotICAgICAgICBhdXRvIGV4cGFuc2lvbiA9IFJ1bjo6RXhwYW5zaW9uIHsgbGluZVJ1
bi5leHBhbnNpb24oKS5iZWhhdmlvciwgbGluZVJ1bi5leHBhbnNpb24oKS5ob3Jpem9udGFsRXhw
YW5zaW9uIH07Ci0gICAgICAgIGlubGluZUNvbnRlbnQucnVucy5hcHBlbmQoeyBsaW5lSW5kZXgs
IGxheW91dEJveCwgcnVuUmVjdCwgaW5rT3ZlcmZsb3csIGV4cGFuc2lvbiwgdGV4dENvbnRlbnQg
fSk7CisgICAgICAgIGlubGluZUNvbnRlbnQucnVucy5hcHBlbmQoeyBsaW5lSW5kZXgKKyAgICAg
ICAgICAgICwgbGF5b3V0Qm94CisgICAgICAgICAgICAsIHJ1blJlY3QKKyAgICAgICAgICAgICwg
aW5rT3ZlcmZsb3cKKyAgICAgICAgICAgICwgUnVuOjpFeHBhbnNpb24geyBsaW5lUnVuLmV4cGFu
c2lvbigpLmJlaGF2aW9yLCBsaW5lUnVuLmV4cGFuc2lvbigpLmhvcml6b250YWxFeHBhbnNpb24g
fQorICAgICAgICAgICAgLCBSdW46OlRleHRDb250ZW50IHsgdGV4dC0+c3RhcnQoKSwgdGV4dC0+
bGVuZ3RoKCksIHRleHQtPm9yaWdpbmFsQ29udGVudCgpLCB0ZXh0LT5yZW5kZXJlZENvbnRlbnQo
KSwgdGV4dC0+aGFzSHlwaGVuKCkgfSB9KTsKICAgICB9OwogCiAgICAgaW5saW5lQ29udGVudC5y
dW5zLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobGluZVJ1bnMuc2l6ZSgpKTsKICAgICBmb3IgKGF1
dG8mIGxpbmVSdW4gOiBsaW5lUnVucykgewogICAgICAgICBpZiAoYXV0byYgdGV4dCA9IGxpbmVS
dW4udGV4dCgpKQotICAgICAgICAgICAgY3JlYXRlRGlzcGxheVRleHRSdW5Gb3JSYW5nZShsaW5l
UnVuLCB0ZXh0LT5zdGFydCgpLCB0ZXh0LT5lbmQoKSk7CisgICAgICAgICAgICBjcmVhdGVEaXNw
bGF5VGV4dFJ1bihsaW5lUnVuKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgY3JlYXRlRGlz
cGxheUJveFJ1bihsaW5lUnVuKTsKICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>