<?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>219220</bug_id>
          
          <creation_ts>2020-11-20 13:06:32 -0800</creation_ts>
          <short_desc>[LFC][Integration] Add contentOffset and contentWidth to Line</short_desc>
          <delta_ts>2020-11-21 04:58:16 -0800</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>1709613</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-11-20 13:06:32 -0800</bug_when>
    <thetext>This helps to match the legacy root inline box geometry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709615</commentid>
    <comment_count>1</comment_count>
      <attachid>414709</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-11-20 13:12:23 -0800</bug_when>
    <thetext>Created attachment 414709
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709641</commentid>
    <comment_count>2</comment_count>
      <attachid>414719</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-11-20 14:02:40 -0800</bug_when>
    <thetext>Created attachment 414719
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709685</commentid>
    <comment_count>3</comment_count>
      <attachid>414738</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-11-20 15:44:47 -0800</bug_when>
    <thetext>Created attachment 414738
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709688</commentid>
    <comment_count>4</comment_count>
      <attachid>414739</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-11-20 15:54:09 -0800</bug_when>
    <thetext>Created attachment 414739
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709730</commentid>
    <comment_count>5</comment_count>
      <attachid>414739</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-11-20 22:20:18 -0800</bug_when>
    <thetext>Comment on attachment 414739
Patch

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

&gt; Source/WebCore/layout/integration/LayoutIntegrationLine.h:53
&gt; +        , m_contentLeftOffset(contentLeftOffset)
&gt; +        , m_contentWidth(contentWidth)

Could the client just do

content.runs[line.firstRunIndex()].rect().x()
etc

to get the same numbers? I guess having a redundant copy here doesn&apos;t hurt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709747</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-21 04:57:09 -0800</bug_when>
    <thetext>Committed r270143: &lt;https://trac.webkit.org/changeset/270143&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 414739.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1709748</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-21 04:58:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/71654468&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414709</attachid>
            <date>2020-11-20 13:12:23 -0800</date>
            <delta_ts>2020-11-20 14:02:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219220-20201120131222.patch</filename>
            <type>text/plain</type>
            <size>14956</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTIyNjUzYmMwNmFmOWE3
MDJkODc5NDU3NDU0ZGJiZmRhZjlhYjliNC4uNGQ5NTZjYmZiYzZlMDA3MTQ3NDg4MmZiMjRlZDFh
ZmI4OGQxN2NhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTExLTIwICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25d
IEFkZCBjb250ZW50T2Zmc2V0IGFuZCBjb250ZW50V2lkdGggdG8gTGluZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5MjIwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBoZWxwcyB0byBtYXRjaCB0
aGUgbGVnYWN5IHJvb3QgaW5saW5lIGJveCdzIGdlb21ldHJ5IHdoZXJlCisgICAgICAgIGxpbmUg
bGVmdCArIGNvbnRlbnQgb2Zmc2V0ID09IHJvb3QgaW5saW5lIGJveCBsZWZ0IGVkZ2UKKyAgICAg
ICAgbGluZSBsZWZ0ICsgY29udGVudCBvZmZzZXQgKyBjb250ZW50IHdpZHRoID0gcm9vdCBpbmxp
bmUgYm94IHJpZ2h0IGVkZ2UKKworICAgICAgICAqIGxheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lu
bGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5s
aW5lRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVHZW9tZXRyeUZvckxpbmVDb250ZW50KToKKyAg
ICAgICAgKiBsYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5lR2VvbWV0cnkuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lTGluZUdlb21ldHJ5Ojpjb250ZW50T2Zmc2V0
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lTGluZUdlb21ldHJ5Ojpj
b250ZW50V2lkdGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVMaW5l
R2VvbWV0cnk6OklubGluZUxpbmVHZW9tZXRyeSk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OklubGluZUxpbmVHZW9tZXRyeTo6aG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCBjb25zdCk6IERl
bGV0ZWQuCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5s
aW5lQ29udGVudEJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRp
b246OklubGluZUNvbnRlbnRCdWlsZGVyOjpjcmVhdGVEaXNwbGF5TGluZXMgY29uc3QpOgorICAg
ICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmUuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lOjpMaW5lKToKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lOjpjb250ZW50T2Zmc2V0IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lOjpjb250ZW50V2lkdGggY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmU6Omhvcml6b250
YWxBbGlnbm1lbnRPZmZzZXQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIGxheW91dC9pbnRl
Z3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRvck1vZGVyblBhdGguaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lSXRlcmF0b3JNb2Rlcm5QYXRoOjpj
b250ZW50TG9naWNhbExlZnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdy
YXRpb246OkxpbmVJdGVyYXRvck1vZGVyblBhdGg6OmNvbnRlbnRMb2dpY2FsUmlnaHQgY29uc3Qp
OgorICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlv
dXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6
OnBhaW50KToKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Q
YWdpbmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjptYWtl
QWRqdXN0ZWRDb250ZW50KToKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25SdW5JdGVyYXRvck1vZGVyblBhdGguaDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91
dEludGVncmF0aW9uOjpSdW5JdGVyYXRvck1vZGVyblBhdGg6OmNyZWF0ZVRleHRSdW4gY29uc3Qp
OgorCiAyMDIwLTExLTIwICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0xGQ11bSUZDXSBBc3NpZ24gdG9wL2xlZnQgdG8gTGluZUJveApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRl
eHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9y
bWF0dGluZ0NvbnRleHQuY3BwCmluZGV4IGQ2YzExNzczZjk2Y2IyYzlmYjBkNGQzZGNjNTY4MWQ4
YTA1YzkzNmIuLjg3MGQzYTgyMmQxZGJlMTRlMjZhZjIyYzcyYWRiMjIxZTJkOGI5YWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1h
dHRpbmdDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0
dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKQEAgLTQ5Myw3ICs0OTMsNyBAQCBJbmxp
bmVSZWN0IElubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpjb21wdXRlR2VvbWV0cnlGb3JMaW5lQ29u
dGVudChjb25zdCBMaW5lQnVpbAogICAgIHVwZGF0ZUJveEdlb21ldHJ5KCk7CiAKICAgICBhdXRv
IGNvbnN0cnVjdExpbmVHZW9tZXRyeSA9IFsmXSB7Ci0gICAgICAgIGZvcm1hdHRpbmdTdGF0ZS5h
ZGRMaW5lKHsgbGluZUxvZ2ljYWxSZWN0LCBsaW5lQm94LmxvZ2ljYWxTaXplKCksIGxpbmVCb3gu
YWxpZ25tZW50QmFzZWxpbmUoKSwgbGluZUJveC5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCku
dmFsdWVPcihJbmxpbmVMYXlvdXRVbml0IHsgfSkgfSk7CisgICAgICAgIGZvcm1hdHRpbmdTdGF0
ZS5hZGRMaW5lKHsgbGluZUxvZ2ljYWxSZWN0LCBsaW5lQm94LmxvZ2ljYWxTaXplKCksIGxpbmVC
b3guYWxpZ25tZW50QmFzZWxpbmUoKSwgbGluZUJveC5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0
KCkudmFsdWVPcihJbmxpbmVMYXlvdXRVbml0IHsgfSksIGxpbmVDb250ZW50LmNvbnRlbnRMb2dp
Y2FsV2lkdGggfSk7CiAgICAgfTsKICAgICBjb25zdHJ1Y3RMaW5lR2VvbWV0cnkoKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9y
bWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5l
Zm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAppbmRleCAxMjQy
M2JhNmZhNmRjNjlhZjE1OTI4Zjg5NGM3OTM4YTdhNzAxYmU2Li5lNzVmMzJmOWJiYjA3ZmM1Yzgw
NDQ3YTAzYzI1Nzk5NGI4ZTdjNDUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5n
Q29udGV4dEdlb21ldHJ5LmNwcApAQCAtMTU1LDcgKzE1NSw3IEBAIExpbmVCb3ggTGluZUJveEJ1
aWxkZXI6OmJ1aWxkKGNvbnN0IExpbmVCdWlsZGVyOjpMaW5lQ29udGVudCYgbGluZUNvbnRlbnQp
CiB7CiAgICAgYXV0byYgcnVucyA9IGxpbmVDb250ZW50LnJ1bnM7CiAgICAgYXV0byBsaW5lTG9n
aWNhbFdpZHRoID0gbGluZUNvbnRlbnQubGluZUxvZ2ljYWxXaWR0aDsKLSAgICBhdXRvIGNvbnRl
bnRMb2dpY2FsV2lkdGggPSBsaW5lQ29udGVudC5saW5lQ29udGVudExvZ2ljYWxXaWR0aDsKKyAg
ICBhdXRvIGNvbnRlbnRMb2dpY2FsV2lkdGggPSBsaW5lQ29udGVudC5jb250ZW50TG9naWNhbFdp
ZHRoOwogICAgIGF1dG8gaXNMaW5lQ29uc2lkZXJlZEVtcHR5ID0gbGluZUNvbnRlbnQuaXNMaW5l
Q29uc2lkZXJlZEVtcHR5ID8gTGluZUJveDo6SXNMaW5lQ29uc2lkZXJlZEVtcHR5OjpZZXMgOiBM
aW5lQm94OjpJc0xpbmVDb25zaWRlcmVkRW1wdHk6Ok5vOwogICAgIGF1dG8gbGluZUJveCA9IExp
bmVCb3ggeyBsaW5lQ29udGVudC5sb2dpY2FsVG9wTGVmdCwgY29udGVudExvZ2ljYWxXaWR0aCwg
aXNMaW5lQ29uc2lkZXJlZEVtcHR5IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVCdWlsZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5lQnVpbGRlci5oCmluZGV4IDk3NmQz
YWExYzUzZTk0Mjg0NWJjNzA4NDFhMTYzOTcwMDIwZTI5OTQuLmYwNTlmY2QxYjQ3NTM2YzY0NTM0
NDMwZTBjZTM5NTliODY3Nzk2ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVCdWlsZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUJ1aWxkZXIuaApAQCAtNTksNyArNTks
NyBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgaGFzSW50cnVzaXZlRmxvYXQgeyBmYWxzZSB9Owog
ICAgICAgICBJbmxpbmVMYXlvdXRQb2ludCBsb2dpY2FsVG9wTGVmdDsKICAgICAgICAgSW5saW5l
TGF5b3V0VW5pdCBsaW5lTG9naWNhbFdpZHRoOwotICAgICAgICBJbmxpbmVMYXlvdXRVbml0IGxp
bmVDb250ZW50TG9naWNhbFdpZHRoOworICAgICAgICBJbmxpbmVMYXlvdXRVbml0IGNvbnRlbnRM
b2dpY2FsV2lkdGg7CiAgICAgICAgIGJvb2wgaXNMaW5lQ29uc2lkZXJlZEVtcHR5IHsgdHJ1ZSB9
OwogICAgICAgICBib29sIGlzTGFzdExpbmVXaXRoSW5saW5lQ29udGVudCB7IHRydWUgfTsKICAg
ICAgICAgY29uc3QgTGluZTo6UnVuTGlzdCYgcnVuczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVHZW9tZXRyeS5oIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUdlb21ldHJ5LmgKaW5k
ZXggMzhjMTM0NzQ1ZTJkZGFmM2E2ZTY5MTJmMjM5MDQxOTNjMTk3NDMxMi4uNWQ4YjJhZDQzNTkz
Y2E2MzA1ODViZGNkNTI5ODM4YzY1ZDI0ZTEyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUdlb21ldHJ5LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUdlb21ldHJ5LmgKQEAg
LTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIExheW91dCB7CiBjbGFzcyBJbmxpbmVMaW5lR2VvbWV0
cnkgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIElubGluZUxp
bmVHZW9tZXRyeShjb25zdCBJbmxpbmVSZWN0JiBsaW5lTG9naWNhbFJlY3QsIGNvbnN0IElubGlu
ZUxheW91dFNpemUmIGxpbmVCb3hMb2dpY2FsU2l6ZSwgSW5saW5lTGF5b3V0VW5pdCBhbGlnbWVu
dEJhc2VsaW5lLCBJbmxpbmVMYXlvdXRVbml0IGhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQpOwor
ICAgIElubGluZUxpbmVHZW9tZXRyeShjb25zdCBJbmxpbmVSZWN0JiBsaW5lTG9naWNhbFJlY3Qs
IGNvbnN0IElubGluZUxheW91dFNpemUmIGxpbmVCb3hMb2dpY2FsU2l6ZSwgSW5saW5lTGF5b3V0
VW5pdCBhbGlnbWVudEJhc2VsaW5lLCBJbmxpbmVMYXlvdXRVbml0IGNvbnRlbnRPZmZzZXQsIElu
bGluZUxheW91dFVuaXQgY29udGVudFdpZHRoKTsKIAogICAgIElubGluZUxheW91dFVuaXQgbG9n
aWNhbExlZnQoKSBjb25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgpLmxlZnQoKTsgfTsKICAgICBJ
bmxpbmVMYXlvdXRVbml0IGxvZ2ljYWxSaWdodCgpIGNvbnN0IHsgcmV0dXJuIGxvZ2ljYWxSZWN0
KCkucmlnaHQoKTsgfTsKQEAgLTUwLDcgKzUwLDkgQEAgcHVibGljOgogICAgIGNvbnN0IElubGlu
ZUxheW91dFNpemUmIGxpbmVCb3hMb2dpY2FsU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGluZUJv
eExvZ2ljYWxTaXplOyB9CiAKICAgICBJbmxpbmVMYXlvdXRVbml0IGJhc2VsaW5lKCkgY29uc3Qg
eyByZXR1cm4gbV9hbGlnbWVudEJhc2VsaW5lOyB9Ci0gICAgSW5saW5lTGF5b3V0VW5pdCBob3Jp
em9udGFsQWxpZ25tZW50T2Zmc2V0KCkgY29uc3QgeyByZXR1cm4gbV9ob3Jpem9udGFsQWxpZ25t
ZW50T2Zmc2V0OyB9CisKKyAgICBJbmxpbmVMYXlvdXRVbml0IGNvbnRlbnRPZmZzZXQoKSBjb25z
dCB7IHJldHVybiBtX2NvbnRlbnRPZmZzZXQ7IH0KKyAgICBJbmxpbmVMYXlvdXRVbml0IGNvbnRl
bnRXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudFdpZHRoOyB9CiAKICAgICB2b2lkIG1v
dmVWZXJ0aWNhbGx5KElubGluZUxheW91dFVuaXQgb2Zmc2V0KSB7IG1fbG9naWNhbFJlY3QubW92
ZVZlcnRpY2FsbHkob2Zmc2V0KTsgfQogCkBAIC01OCwxNCArNjAsMTYgQEAgcHJpdmF0ZToKICAg
ICBJbmxpbmVSZWN0IG1fbG9naWNhbFJlY3Q7CiAgICAgSW5saW5lTGF5b3V0U2l6ZSBtX2xpbmVC
b3hMb2dpY2FsU2l6ZTsKICAgICBJbmxpbmVMYXlvdXRVbml0IG1fYWxpZ21lbnRCYXNlbGluZSB7
IDAgfTsKLSAgICBJbmxpbmVMYXlvdXRVbml0IG1faG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCB7
IDAgfTsKKyAgICBJbmxpbmVMYXlvdXRVbml0IG1fY29udGVudE9mZnNldCB7IDAgfTsKKyAgICBJ
bmxpbmVMYXlvdXRVbml0IG1fY29udGVudFdpZHRoIHsgMCB9OwogfTsKIAotaW5saW5lIElubGlu
ZUxpbmVHZW9tZXRyeTo6SW5saW5lTGluZUdlb21ldHJ5KGNvbnN0IElubGluZVJlY3QmIGxpbmVM
b2dpY2FsUmVjdCwgY29uc3QgSW5saW5lTGF5b3V0U2l6ZSYgbGluZUJveExvZ2ljYWxTaXplLCBJ
bmxpbmVMYXlvdXRVbml0IGFsaWdtZW50QmFzZWxpbmUsIElubGluZUxheW91dFVuaXQgaG9yaXpv
bnRhbEFsaWdubWVudE9mZnNldCkKK2lubGluZSBJbmxpbmVMaW5lR2VvbWV0cnk6OklubGluZUxp
bmVHZW9tZXRyeShjb25zdCBJbmxpbmVSZWN0JiBsaW5lTG9naWNhbFJlY3QsIGNvbnN0IElubGlu
ZUxheW91dFNpemUmIGxpbmVCb3hMb2dpY2FsU2l6ZSwgSW5saW5lTGF5b3V0VW5pdCBhbGlnbWVu
dEJhc2VsaW5lLCBJbmxpbmVMYXlvdXRVbml0IGNvbnRlbnRPZmZzZXQsIElubGluZUxheW91dFVu
aXQgY29udGVudFdpZHRoKQogICAgIDogbV9sb2dpY2FsUmVjdChsaW5lTG9naWNhbFJlY3QpCiAg
ICAgLCBtX2xpbmVCb3hMb2dpY2FsU2l6ZShsaW5lQm94TG9naWNhbFNpemUpCiAgICAgLCBtX2Fs
aWdtZW50QmFzZWxpbmUoYWxpZ21lbnRCYXNlbGluZSkKLSAgICAsIG1faG9yaXpvbnRhbEFsaWdu
bWVudE9mZnNldChob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KQorICAgICwgbV9jb250ZW50T2Zm
c2V0KGNvbnRlbnRPZmZzZXQpCisgICAgLCBtX2NvbnRlbnRXaWR0aChjb250ZW50V2lkdGgpCiB7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNw
cAppbmRleCBmZmU3MzM3OTJiN2U4NmZjZjZjZTgxOGFmOGZhNzg1ZThhM2FmOTJlLi41MjMzMTEz
NDFkOTIxNmEwMTU5Y2EzNGIyM2NkZDYzNDkyOTNmY2RhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVp
bGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dElu
dGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwCkBAIC0zNDQsNyArMzQ0LDcgQEAgdm9p
ZCBJbmxpbmVDb250ZW50QnVpbGRlcjo6Y3JlYXRlRGlzcGxheUxpbmVzKGNvbnN0IExheW91dDo6
SW5saW5lRm9ybWF0dGluZ1N0YXQKICAgICAgICAgICAgIGVuY2xvc2luZ1RvcEFuZEJvdHRvbS50
b3AgPSByb3VuZFRvSW50KGVuY2xvc2luZ1RvcEFuZEJvdHRvbS50b3ApOwogICAgICAgICAgICAg
ZW5jbG9zaW5nVG9wQW5kQm90dG9tLmJvdHRvbSA9IHJvdW5kVG9JbnQoZW5jbG9zaW5nVG9wQW5k
Qm90dG9tLmJvdHRvbSk7CiAgICAgICAgIH0KLSAgICAgICAgaW5saW5lQ29udGVudC5saW5lcy5h
cHBlbmQoeyBmaXJzdFJ1bkluZGV4LCBydW5Db3VudCwgbGluZVJlY3QsIGxpbmVCb3hMb2dpY2Fs
U2l6ZS53aWR0aCgpLCBlbmNsb3NpbmdUb3BBbmRCb3R0b20sIHNjcm9sbGFibGVPdmVyZmxvd1Jl
Y3QsIGxpbmVJbmtPdmVyZmxvd1JlY3QsIGxpbmUuYmFzZWxpbmUoKSwgbGluZS5ob3Jpem9udGFs
QWxpZ25tZW50T2Zmc2V0KCkgfSk7CisgICAgICAgIGlubGluZUNvbnRlbnQubGluZXMuYXBwZW5k
KHsgZmlyc3RSdW5JbmRleCwgcnVuQ291bnQsIGxpbmVSZWN0LCBsaW5lQm94TG9naWNhbFNpemUu
d2lkdGgoKSwgZW5jbG9zaW5nVG9wQW5kQm90dG9tLCBzY3JvbGxhYmxlT3ZlcmZsb3dSZWN0LCBs
aW5lSW5rT3ZlcmZsb3dSZWN0LCBsaW5lLmJhc2VsaW5lKCksIGxpbmUuY29udGVudE9mZnNldCgp
LCBsaW5lLmNvbnRlbnRXaWR0aCgpIH0pOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZS5oIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZS5oCmlu
ZGV4IDk2OTA1YTgzY2EwYTE2OWJhNWMyNDQ2Y2RhYmIxMGJiYWEzOTJmY2EuLjMxNDlmNjU3YWQy
OWYzZWVmY2VkMjY1ZjBmMzMxOGJlODUxOGY5MjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lLmgKQEAgLTQw
LDcgKzQwLDcgQEAgcHVibGljOgogICAgICAgICBmbG9hdCB0b3AgeyAwIH07CiAgICAgICAgIGZs
b2F0IGJvdHRvbSB7IDAgfTsKICAgICB9OwotICAgIExpbmUoc2l6ZV90IGZpcnN0UnVuSW5kZXgs
IHNpemVfdCBydW5Db3VudCwgY29uc3QgRmxvYXRSZWN0JiBsaW5lUmVjdCwgZmxvYXQgbGluZUJv
eFdpZHRoLCBFbmNsb3NpbmdUb3BBbmRCb3R0b20gZW5jbG9zaW5nVG9wQW5kQm90dG9tLCBjb25z
dCBGbG9hdFJlY3QmIHNjcm9sbGFibGVPdmVyZmxvdywgY29uc3QgRmxvYXRSZWN0JiBpbmtPdmVy
ZmxvdywgZmxvYXQgYmFzZWxpbmUsIGZsb2F0IGhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQpCisg
ICAgTGluZShzaXplX3QgZmlyc3RSdW5JbmRleCwgc2l6ZV90IHJ1bkNvdW50LCBjb25zdCBGbG9h
dFJlY3QmIGxpbmVSZWN0LCBmbG9hdCBsaW5lQm94V2lkdGgsIEVuY2xvc2luZ1RvcEFuZEJvdHRv
bSBlbmNsb3NpbmdUb3BBbmRCb3R0b20sIGNvbnN0IEZsb2F0UmVjdCYgc2Nyb2xsYWJsZU92ZXJm
bG93LCBjb25zdCBGbG9hdFJlY3QmIGlua092ZXJmbG93LCBmbG9hdCBiYXNlbGluZSwgZmxvYXQg
Y29udGVudE9mZnNldCwgZmxvYXQgY29udGVudFdpZHRoKQogICAgICAgICA6IG1fZmlyc3RSdW5J
bmRleChmaXJzdFJ1bkluZGV4KQogICAgICAgICAsIG1fcnVuQ291bnQocnVuQ291bnQpCiAgICAg
ICAgICwgbV9saW5lUmVjdChsaW5lUmVjdCkKQEAgLTQ5LDcgKzQ5LDggQEAgcHVibGljOgogICAg
ICAgICAsIG1fc2Nyb2xsYWJsZU92ZXJmbG93KHNjcm9sbGFibGVPdmVyZmxvdykKICAgICAgICAg
LCBtX2lua092ZXJmbG93KGlua092ZXJmbG93KQogICAgICAgICAsIG1fYmFzZWxpbmUoYmFzZWxp
bmUpCi0gICAgICAgICwgbV9ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KGhvcml6b250YWxBbGln
bm1lbnRPZmZzZXQpCisgICAgICAgICwgbV9jb250ZW50T2Zmc2V0KGNvbnRlbnRPZmZzZXQpCisg
ICAgICAgICwgbV9jb250ZW50V2lkdGgoY29udGVudFdpZHRoKQogICAgIHsKICAgICB9CiAKQEAg
LTYyLDcgKzYzLDggQEAgcHVibGljOgogICAgIGNvbnN0IEZsb2F0UmVjdCYgc2Nyb2xsYWJsZU92
ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9zY3JvbGxhYmxlT3ZlcmZsb3c7IH0KICAgICBjb25z
dCBGbG9hdFJlY3QmIGlua092ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9pbmtPdmVyZmxvdzsg
fQogICAgIGZsb2F0IGJhc2VsaW5lKCkgY29uc3QgeyByZXR1cm4gbV9iYXNlbGluZTsgfQotICAg
IGZsb2F0IGhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX2hvcml6
b250YWxBbGlnbm1lbnRPZmZzZXQ7IH0KKyAgICBmbG9hdCBjb250ZW50T2Zmc2V0KCkgY29uc3Qg
eyByZXR1cm4gbV9jb250ZW50T2Zmc2V0OyB9CisgICAgZmxvYXQgY29udGVudFdpZHRoKCkgY29u
c3QgeyByZXR1cm4gbV9jb250ZW50V2lkdGg7IH0KIAogcHJpdmF0ZToKICAgICBzaXplX3QgbV9m
aXJzdFJ1bkluZGV4IHsgMCB9OwpAQCAtNzcsNyArNzksOCBAQCBwcml2YXRlOgogICAgIEZsb2F0
UmVjdCBtX3Njcm9sbGFibGVPdmVyZmxvdzsKICAgICBGbG9hdFJlY3QgbV9pbmtPdmVyZmxvdzsK
ICAgICBmbG9hdCBtX2Jhc2VsaW5lIHsgMCB9OwotICAgIGZsb2F0IG1faG9yaXpvbnRhbEFsaWdu
bWVudE9mZnNldCB7IDAgfTsKKyAgICBmbG9hdCBtX2NvbnRlbnRPZmZzZXQgeyAwIH07CisgICAg
ZmxvYXQgbV9jb250ZW50V2lkdGggeyAwIH07CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3JN
b2Rlcm5QYXRoLmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmgKaW5kZXggZDkwYjcxYjJhNDlmY2YwZjhj
NzdiZWEyNmM1YzA1MzkwNDViODE2OC4uNzBkN2UxOTU4NzljYjBhMmNlZWVhYzljOTljZTlmNmJj
MWUzMDk2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yTW9kZXJuUGF0aC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRvck1vZGVy
blBhdGguaApAQCAtNTksOCArNTksOCBAQCBwdWJsaWM6CiAgICAgTGF5b3V0VW5pdCBzZWxlY3Rp
b25Ub3BGb3JIaXRUZXN0aW5nKCkgY29uc3QgeyByZXR1cm4gdG9wKCk7IH0KICAgICBMYXlvdXRV
bml0IHNlbGVjdGlvbkJvdHRvbSgpIGNvbnN0IHsgcmV0dXJuIGJvdHRvbSgpOyB9CiAKLSAgICBm
bG9hdCBjb250ZW50TG9naWNhbExlZnQoKSBjb25zdCB7IHJldHVybiBsaW5lKCkucmVjdCgpLngo
KSArIGxpbmUoKS5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCk7IH0KLSAgICBmbG9hdCBjb250
ZW50TG9naWNhbFJpZ2h0KCkgY29uc3QgeyByZXR1cm4gY29udGVudExvZ2ljYWxMZWZ0KCkgKyBs
aW5lKCkucmVjdCgpLndpZHRoKCk7IH0KKyAgICBmbG9hdCBjb250ZW50TG9naWNhbExlZnQoKSBj
b25zdCB7IHJldHVybiBsaW5lKCkucmVjdCgpLngoKSArIGxpbmUoKS5jb250ZW50T2Zmc2V0KCk7
IH0KKyAgICBmbG9hdCBjb250ZW50TG9naWNhbFJpZ2h0KCkgY29uc3QgeyByZXR1cm4gY29udGVu
dExvZ2ljYWxMZWZ0KCkgKyBsaW5lKCkuY29udGVudFdpZHRoKCk7IH0KICAgICBmbG9hdCB5KCkg
Y29uc3QgeyByZXR1cm4gbGluZUJveFRvcCgpOyB9CiAgICAgZmxvYXQgbG9naWNhbEhlaWdodCgp
IGNvbnN0IHsgcmV0dXJuIGxpbmUoKS5yZWN0KCkuaGVpZ2h0KCk7IH0KICAgICBib29sIGlzSG9y
aXpvbnRhbCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxh
eW91dC5jcHAKaW5kZXggN2ViY2NhYzc4ZGI4YjIzNmU5MmY4YTk1NDAyNTliOGY5ZjI5OWI1MS4u
ZjMzYjc2MTc2YzVjMmZjMTZmZjgxYzZhNWM0YzNkM2VjMjQ1Y2MxZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVn
cmF0aW9uTGluZUxheW91dC5jcHAKQEAgLTQxNSw3ICs0MTUsNyBAQCB2b2lkIExpbmVMYXlvdXQ6
OnBhaW50KFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYgcGFpbnRPZmZz
ZXQpCiAgICAgICAgIGF1dG8gZXhwYW5zaW9uID0gcnVuLmV4cGFuc2lvbigpOwogICAgICAgICAv
LyBUZXh0UnVuIGV4cGVjdHMgdGhlIHhQb3MgdG8gYmUgYWRqdXN0ZWQgd2l0aCB0aGUgYWxpZ21l
bnQgb2Zmc2V0IChlLmcuIHdoZW4gdGhlIGxpbmUgaXMgY2VudGVyIGFsaWduZWQKICAgICAgICAg
Ly8gYW5kIHRoZSBydW4gc3RhcnRzIGF0IDEwMHB4LCBkdWUgdG8gdGhlIGhvcml6b250YWwgYWxp
Z21lbnQsIHRoZSB4cG9zIGlzIHN1cHBvc2VkIHRvIGJlIGF0IDBweCkuCi0gICAgICAgIGF1dG8g
eFBvcyA9IHJlY3QueCgpIC0gKGxpbmUucmVjdCgpLngoKSArIGxpbmUuaG9yaXpvbnRhbEFsaWdu
bWVudE9mZnNldCgpKTsKKyAgICAgICAgYXV0byB4UG9zID0gcmVjdC54KCkgLSAobGluZS5yZWN0
KCkueCgpICsgbGluZS5jb250ZW50T2Zmc2V0KCkpOwogICAgICAgICBXZWJDb3JlOjpUZXh0UnVu
IHRleHRSdW4geyB0ZXh0Q29udGVudC5yZW5kZXJlZENvbnRlbnQoKSwgeFBvcywgZXhwYW5zaW9u
Lmhvcml6b250YWxFeHBhbnNpb24sIGV4cGFuc2lvbi5iZWhhdmlvciB9OwogICAgICAgICB0ZXh0
UnVuLnNldFRhYlNpemUoIXN0eWxlLmNvbGxhcHNlV2hpdGVTcGFjZSgpLCBzdHlsZS50YWJTaXpl
KCkpOwogICAgICAgICBGbG9hdFBvaW50IHRleHRPcmlnaW4geyByZWN0LngoKSArIHBhaW50T2Zm
c2V0LngoKSwgcm91bmRUb0RldmljZVBpeGVsKGJhc2VsaW5lLCBkZXZpY2VTY2FsZUZhY3Rvcikg
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJ
bnRlZ3JhdGlvblBhZ2luYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAKaW5kZXggZDhmYmU3OWI3ZTRiZTY5
M2M4NGU3NmQzY2M1M2UwNmRkOGFjMjRhOS4uOGUyM2EzNzYxYzcwMTViYWQ1ODEwMzRmMDUwZGFk
MDFjMDYwYWIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9u
L0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAKQEAgLTEzNSw3
ICsxMzUsOCBAQCBzdGF0aWMgUmVmPElubGluZUNvbnRlbnQ+IG1ha2VBZGp1c3RlZENvbnRlbnQo
Y29uc3QgSW5saW5lQ29udGVudCYgaW5saW5lQ29udGVudAogICAgICAgICAgICAgbW92ZVZlcnRp
Y2FsbHkobGluZS5zY3JvbGxhYmxlT3ZlcmZsb3coKSwgb2Zmc2V0KSwKICAgICAgICAgICAgIG1v
dmVWZXJ0aWNhbGx5KGxpbmUuaW5rT3ZlcmZsb3coKSwgb2Zmc2V0KSwKICAgICAgICAgICAgIGxp
bmUuYmFzZWxpbmUoKSwKLSAgICAgICAgICAgIGxpbmUuaG9yaXpvbnRhbEFsaWdubWVudE9mZnNl
dCgpCisgICAgICAgICAgICBsaW5lLmNvbnRlbnRPZmZzZXQoKSwKKyAgICAgICAgICAgIGxpbmUu
Y29udGVudFdpZHRoKCkKICAgICAgICAgfTsKICAgICB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvck1v
ZGVyblBhdGguaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJuUGF0aC5oCmluZGV4IGY5N2RkNjY2MTk0ZDY3ZmI5M2Qz
NDkxODhjYjZjZjY5YjA4NmQ2ZDQuLmFjZDQ2MGI4OWM2NjNjZjkwYTJhNDdkZTI0ODQzZmU2MTI2
MjlmMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJuUGF0aC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJuUGF0
aC5oCkBAIC0yMjEsNyArMjIxLDcgQEAgcHJpdmF0ZToKICAgICAgICAgYXV0byYgc3R5bGUgPSBy
dW4oKS5zdHlsZSgpOwogICAgICAgICBhdXRvIGV4cGFuc2lvbiA9IHJ1bigpLmV4cGFuc2lvbigp
OwogICAgICAgICBhdXRvIHJlY3QgPSB0aGlzLT5yZWN0KCk7Ci0gICAgICAgIGF1dG8geFBvcyA9
IHJlY3QueCgpIC0gKGxpbmUoKS5yZWN0KCkueCgpICsgbGluZSgpLmhvcml6b250YWxBbGlnbm1l
bnRPZmZzZXQoKSk7CisgICAgICAgIGF1dG8geFBvcyA9IHJlY3QueCgpIC0gKGxpbmUoKS5yZWN0
KCkueCgpICsgbGluZSgpLmNvbnRlbnRPZmZzZXQoKSk7CiAKICAgICAgICAgYXV0byB0ZXh0Rm9y
UnVuID0gWyZdIHsKICAgICAgICAgICAgIGlmIChoeXBoZW5Nb2RlID09IEh5cGhlbk1vZGU6Okln
bm9yZSB8fCAhaGFzSHlwaGVuKCkpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414719</attachid>
            <date>2020-11-20 14:02:40 -0800</date>
            <delta_ts>2020-11-20 15:44:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219220-20201120140239.patch</filename>
            <type>text/plain</type>
            <size>15138</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjk4MmQ3MmI0OGQ1N2Rm
NTRiYWZmOTQxZjQ0YzE3NjI5MjAxYWY0NC4uM2FjOGE4ODU3ZmMxOGRjNTgwNjJjZGRkZTUxNWVl
MDdiODVlMDMyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTExLTIwICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25d
IEFkZCBjb250ZW50TG9naWNhbE9mZnNldCBhbmQgY29udGVudExvZ2ljYWxXaWR0aCB0byBMaW5l
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTkyMjAK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGhl
bHBzIHRvIG1hdGNoIHRoZSBsZWdhY3kgcm9vdCBpbmxpbmUgYm94J3MgZ2VvbWV0cnkgd2hlcmUK
KyAgICAgICAgbGluZSBsZWZ0ICsgY29udGVudCBvZmZzZXQgPT0gcm9vdCBpbmxpbmUgYm94IGxl
ZnQgZWRnZQorICAgICAgICBsaW5lIGxlZnQgKyBjb250ZW50IG9mZnNldCArIGNvbnRlbnQgd2lk
dGggPSByb290IGlubGluZSBib3ggcmlnaHQgZWRnZQorCisgICAgICAgICogbGF5b3V0L2lubGlu
ZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6TGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nQ29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGlu
ZUNvbnRlbnQpOgorICAgICAgICAqIGxheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVH
ZW9tZXRyeS5oOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVMaW5lR2VvbWV0cnk6
OmNvbnRlbnRPZmZzZXQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVM
aW5lR2VvbWV0cnk6OmNvbnRlbnRXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlv
dXQ6OklubGluZUxpbmVHZW9tZXRyeTo6SW5saW5lTGluZUdlb21ldHJ5KToKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dDo6SW5saW5lTGluZUdlb21ldHJ5Ojpob3Jpem9udGFsQWxpZ25tZW50T2Zm
c2V0IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpM
YXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5l
cyBjb25zdCk6CisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9u
TGluZS5oOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmU6OkxpbmUp
OgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmU6OmNvbnRlbnRPZmZz
ZXQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmU6OmNv
bnRlbnRXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6
TGluZTo6aG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAg
ICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yTW9kZXJu
UGF0aC5oOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVJdGVyYXRv
ck1vZGVyblBhdGg6OmNvbnRlbnRMb2dpY2FsTGVmdCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZUl0ZXJhdG9yTW9kZXJuUGF0aDo6Y29udGVudExvZ2lj
YWxSaWdodCBjb25zdCk6CisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVn
cmF0aW9uTGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlv
bjo6TGluZUxheW91dDo6cGFpbnQpOgorICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50
ZWdyYXRpb246Om1ha2VBZGp1c3RlZENvbnRlbnQpOgorICAgICAgICAqIGxheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJuUGF0aC5oOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OlJ1bkl0ZXJhdG9yTW9kZXJuUGF0aDo6Y3JlYXRl
VGV4dFJ1biBjb25zdCk6CisKIDIwMjAtMTEtMjAgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxl
LmNvbT4KIAogICAgICAgICBbTEZDXVtJRkNdIEFzc2lnbiB0b3AvbGVmdCB0byBMaW5lQm94CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVG
b3JtYXR0aW5nQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0
dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKaW5kZXggZDZjMTE3NzNmOTZjYjJjOWZi
MGQ0ZDNkY2M1NjgxZDhhMDVjOTM2Yi4uODcwZDNhODIyZDFkYmUxNGUyNmFmMjJjNzJhZGIyMjFl
MmQ4YjlhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRp
bmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcApAQCAtNDkzLDcg
KzQ5Myw3IEBAIElubGluZVJlY3QgSW5saW5lRm9ybWF0dGluZ0NvbnRleHQ6OmNvbXB1dGVHZW9t
ZXRyeUZvckxpbmVDb250ZW50KGNvbnN0IExpbmVCdWlsCiAgICAgdXBkYXRlQm94R2VvbWV0cnko
KTsKIAogICAgIGF1dG8gY29uc3RydWN0TGluZUdlb21ldHJ5ID0gWyZdIHsKLSAgICAgICAgZm9y
bWF0dGluZ1N0YXRlLmFkZExpbmUoeyBsaW5lTG9naWNhbFJlY3QsIGxpbmVCb3gubG9naWNhbFNp
emUoKSwgbGluZUJveC5hbGlnbm1lbnRCYXNlbGluZSgpLCBsaW5lQm94Lmhvcml6b250YWxBbGln
bm1lbnRPZmZzZXQoKS52YWx1ZU9yKElubGluZUxheW91dFVuaXQgeyB9KSB9KTsKKyAgICAgICAg
Zm9ybWF0dGluZ1N0YXRlLmFkZExpbmUoeyBsaW5lTG9naWNhbFJlY3QsIGxpbmVCb3gubG9naWNh
bFNpemUoKSwgbGluZUJveC5hbGlnbm1lbnRCYXNlbGluZSgpLCBsaW5lQm94Lmhvcml6b250YWxB
bGlnbm1lbnRPZmZzZXQoKS52YWx1ZU9yKElubGluZUxheW91dFVuaXQgeyB9KSwgbGluZUNvbnRl
bnQuY29udGVudExvZ2ljYWxXaWR0aCB9KTsKICAgICB9OwogICAgIGNvbnN0cnVjdExpbmVHZW9t
ZXRyeSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0
dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dEdlb21ldHJ5LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnku
Y3BwCmluZGV4IDEyNDIzYmE2ZmE2ZGM2OWFmMTU5MjhmODk0Yzc5MzhhN2E3MDFiZTYuLmU3NWYz
MmY5YmJiMDdmYzVjODA0NDdhMDNjMjU3OTk0YjhlN2M0NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0R2Vv
bWV0cnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lu
bGluZUZvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnkuY3BwCkBAIC0xNTUsNyArMTU1LDcgQEAgTGlu
ZUJveCBMaW5lQm94QnVpbGRlcjo6YnVpbGQoY29uc3QgTGluZUJ1aWxkZXI6OkxpbmVDb250ZW50
JiBsaW5lQ29udGVudCkKIHsKICAgICBhdXRvJiBydW5zID0gbGluZUNvbnRlbnQucnVuczsKICAg
ICBhdXRvIGxpbmVMb2dpY2FsV2lkdGggPSBsaW5lQ29udGVudC5saW5lTG9naWNhbFdpZHRoOwot
ICAgIGF1dG8gY29udGVudExvZ2ljYWxXaWR0aCA9IGxpbmVDb250ZW50LmxpbmVDb250ZW50TG9n
aWNhbFdpZHRoOworICAgIGF1dG8gY29udGVudExvZ2ljYWxXaWR0aCA9IGxpbmVDb250ZW50LmNv
bnRlbnRMb2dpY2FsV2lkdGg7CiAgICAgYXV0byBpc0xpbmVDb25zaWRlcmVkRW1wdHkgPSBsaW5l
Q29udGVudC5pc0xpbmVDb25zaWRlcmVkRW1wdHkgPyBMaW5lQm94OjpJc0xpbmVDb25zaWRlcmVk
RW1wdHk6OlllcyA6IExpbmVCb3g6OklzTGluZUNvbnNpZGVyZWRFbXB0eTo6Tm87CiAgICAgYXV0
byBsaW5lQm94ID0gTGluZUJveCB7IGxpbmVDb250ZW50LmxvZ2ljYWxUb3BMZWZ0LCBjb250ZW50
TG9naWNhbFdpZHRoLCBpc0xpbmVDb25zaWRlcmVkRW1wdHkgfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUJ1aWxkZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUxpbmVCdWlsZGVy
LmgKaW5kZXggOTc2ZDNhYTFjNTNlOTQyODQ1YmM3MDg0MWExNjM5NzAwMjBlMjk5NC4uZjA1OWZj
ZDFiNDc1MzZjNjQ1MzQ0MzBlMGNlMzk1OWI4Njc3OTZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUJ1aWxkZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5lQnVpbGRlci5o
CkBAIC01OSw3ICs1OSw3IEBAIHB1YmxpYzoKICAgICAgICAgYm9vbCBoYXNJbnRydXNpdmVGbG9h
dCB7IGZhbHNlIH07CiAgICAgICAgIElubGluZUxheW91dFBvaW50IGxvZ2ljYWxUb3BMZWZ0Owog
ICAgICAgICBJbmxpbmVMYXlvdXRVbml0IGxpbmVMb2dpY2FsV2lkdGg7Ci0gICAgICAgIElubGlu
ZUxheW91dFVuaXQgbGluZUNvbnRlbnRMb2dpY2FsV2lkdGg7CisgICAgICAgIElubGluZUxheW91
dFVuaXQgY29udGVudExvZ2ljYWxXaWR0aDsKICAgICAgICAgYm9vbCBpc0xpbmVDb25zaWRlcmVk
RW1wdHkgeyB0cnVlIH07CiAgICAgICAgIGJvb2wgaXNMYXN0TGluZVdpdGhJbmxpbmVDb250ZW50
IHsgdHJ1ZSB9OwogICAgICAgICBjb25zdCBMaW5lOjpSdW5MaXN0JiBydW5zOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lTGluZUdlb21l
dHJ5LmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5l
R2VvbWV0cnkuaAppbmRleCAzOGMxMzQ3NDVlMmRkYWYzYTZlNjkxMmYyMzkwNDE5M2MxOTc0MzEy
Li43ZDk2M2Y5YzNkMGRiY2E1OTRkMzg3ODYzMmI4MzA2YThjMGNjOGMxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5lR2VvbWV0cnku
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVMaW5l
R2VvbWV0cnkuaApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgTGF5b3V0IHsKIGNsYXNzIElu
bGluZUxpbmVHZW9tZXRyeSB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6
Ci0gICAgSW5saW5lTGluZUdlb21ldHJ5KGNvbnN0IElubGluZVJlY3QmIGxpbmVMb2dpY2FsUmVj
dCwgY29uc3QgSW5saW5lTGF5b3V0U2l6ZSYgbGluZUJveExvZ2ljYWxTaXplLCBJbmxpbmVMYXlv
dXRVbml0IGFsaWdtZW50QmFzZWxpbmUsIElubGluZUxheW91dFVuaXQgaG9yaXpvbnRhbEFsaWdu
bWVudE9mZnNldCk7CisgICAgSW5saW5lTGluZUdlb21ldHJ5KGNvbnN0IElubGluZVJlY3QmIGxp
bmVMb2dpY2FsUmVjdCwgY29uc3QgSW5saW5lTGF5b3V0U2l6ZSYgbGluZUJveExvZ2ljYWxTaXpl
LCBJbmxpbmVMYXlvdXRVbml0IGFsaWdtZW50QmFzZWxpbmUsIElubGluZUxheW91dFVuaXQgY29u
dGVudExvZ2ljYWxPZmZzZXQsIElubGluZUxheW91dFVuaXQgY29udGVudExvZ2ljYWxXaWR0aCk7
CiAKICAgICBJbmxpbmVMYXlvdXRVbml0IGxvZ2ljYWxMZWZ0KCkgY29uc3QgeyByZXR1cm4gbG9n
aWNhbFJlY3QoKS5sZWZ0KCk7IH07CiAgICAgSW5saW5lTGF5b3V0VW5pdCBsb2dpY2FsUmlnaHQo
KSBjb25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgpLnJpZ2h0KCk7IH07CkBAIC01MCw3ICs1MCw5
IEBAIHB1YmxpYzoKICAgICBjb25zdCBJbmxpbmVMYXlvdXRTaXplJiBsaW5lQm94TG9naWNhbFNp
emUoKSBjb25zdCB7IHJldHVybiBtX2xpbmVCb3hMb2dpY2FsU2l6ZTsgfQogCiAgICAgSW5saW5l
TGF5b3V0VW5pdCBiYXNlbGluZSgpIGNvbnN0IHsgcmV0dXJuIG1fYWxpZ21lbnRCYXNlbGluZTsg
fQotICAgIElubGluZUxheW91dFVuaXQgaG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCgpIGNvbnN0
IHsgcmV0dXJuIG1faG9yaXpvbnRhbEFsaWdubWVudE9mZnNldDsgfQorCisgICAgSW5saW5lTGF5
b3V0VW5pdCBjb250ZW50TG9naWNhbE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudExv
Z2ljYWxPZmZzZXQ7IH0KKyAgICBJbmxpbmVMYXlvdXRVbml0IGNvbnRlbnRMb2dpY2FsV2lkdGgo
KSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRMb2dpY2FsV2lkdGg7IH0KIAogICAgIHZvaWQgbW92
ZVZlcnRpY2FsbHkoSW5saW5lTGF5b3V0VW5pdCBvZmZzZXQpIHsgbV9sb2dpY2FsUmVjdC5tb3Zl
VmVydGljYWxseShvZmZzZXQpOyB9CiAKQEAgLTU4LDE0ICs2MCwxNiBAQCBwcml2YXRlOgogICAg
IElubGluZVJlY3QgbV9sb2dpY2FsUmVjdDsKICAgICBJbmxpbmVMYXlvdXRTaXplIG1fbGluZUJv
eExvZ2ljYWxTaXplOwogICAgIElubGluZUxheW91dFVuaXQgbV9hbGlnbWVudEJhc2VsaW5lIHsg
MCB9OwotICAgIElubGluZUxheW91dFVuaXQgbV9ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0IHsg
MCB9OworICAgIElubGluZUxheW91dFVuaXQgbV9jb250ZW50TG9naWNhbE9mZnNldCB7IDAgfTsK
KyAgICBJbmxpbmVMYXlvdXRVbml0IG1fY29udGVudExvZ2ljYWxXaWR0aCB7IDAgfTsKIH07CiAK
LWlubGluZSBJbmxpbmVMaW5lR2VvbWV0cnk6OklubGluZUxpbmVHZW9tZXRyeShjb25zdCBJbmxp
bmVSZWN0JiBsaW5lTG9naWNhbFJlY3QsIGNvbnN0IElubGluZUxheW91dFNpemUmIGxpbmVCb3hM
b2dpY2FsU2l6ZSwgSW5saW5lTGF5b3V0VW5pdCBhbGlnbWVudEJhc2VsaW5lLCBJbmxpbmVMYXlv
dXRVbml0IGhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQpCitpbmxpbmUgSW5saW5lTGluZUdlb21l
dHJ5OjpJbmxpbmVMaW5lR2VvbWV0cnkoY29uc3QgSW5saW5lUmVjdCYgbGluZUxvZ2ljYWxSZWN0
LCBjb25zdCBJbmxpbmVMYXlvdXRTaXplJiBsaW5lQm94TG9naWNhbFNpemUsIElubGluZUxheW91
dFVuaXQgYWxpZ21lbnRCYXNlbGluZSwgSW5saW5lTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbE9m
ZnNldCwgSW5saW5lTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbFdpZHRoKQogICAgIDogbV9sb2dp
Y2FsUmVjdChsaW5lTG9naWNhbFJlY3QpCiAgICAgLCBtX2xpbmVCb3hMb2dpY2FsU2l6ZShsaW5l
Qm94TG9naWNhbFNpemUpCiAgICAgLCBtX2FsaWdtZW50QmFzZWxpbmUoYWxpZ21lbnRCYXNlbGlu
ZSkKLSAgICAsIG1faG9yaXpvbnRhbEFsaWdubWVudE9mZnNldChob3Jpem9udGFsQWxpZ25tZW50
T2Zmc2V0KQorICAgICwgbV9jb250ZW50TG9naWNhbE9mZnNldChjb250ZW50TG9naWNhbE9mZnNl
dCkKKyAgICAsIG1fY29udGVudExvZ2ljYWxXaWR0aChjb250ZW50TG9naWNhbFdpZHRoKQogewog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAK
aW5kZXggZmZlNzMzNzkyYjdlODZmY2Y2Y2U4MThhZjhmYTc4NWU4YTNhZjkyZS4uNzcyOThlNjMz
ZTRjNjkxZDc1NDI0OWY1ODljMzY4ZjVjZTY0OGMzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcApAQCAtMzQ0LDcgKzM0NCw3IEBAIHZvaWQg
SW5saW5lQ29udGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lcyhjb25zdCBMYXlvdXQ6Oklu
bGluZUZvcm1hdHRpbmdTdGF0CiAgICAgICAgICAgICBlbmNsb3NpbmdUb3BBbmRCb3R0b20udG9w
ID0gcm91bmRUb0ludChlbmNsb3NpbmdUb3BBbmRCb3R0b20udG9wKTsKICAgICAgICAgICAgIGVu
Y2xvc2luZ1RvcEFuZEJvdHRvbS5ib3R0b20gPSByb3VuZFRvSW50KGVuY2xvc2luZ1RvcEFuZEJv
dHRvbS5ib3R0b20pOwogICAgICAgICB9Ci0gICAgICAgIGlubGluZUNvbnRlbnQubGluZXMuYXBw
ZW5kKHsgZmlyc3RSdW5JbmRleCwgcnVuQ291bnQsIGxpbmVSZWN0LCBsaW5lQm94TG9naWNhbFNp
emUud2lkdGgoKSwgZW5jbG9zaW5nVG9wQW5kQm90dG9tLCBzY3JvbGxhYmxlT3ZlcmZsb3dSZWN0
LCBsaW5lSW5rT3ZlcmZsb3dSZWN0LCBsaW5lLmJhc2VsaW5lKCksIGxpbmUuaG9yaXpvbnRhbEFs
aWdubWVudE9mZnNldCgpIH0pOworICAgICAgICBpbmxpbmVDb250ZW50LmxpbmVzLmFwcGVuZCh7
IGZpcnN0UnVuSW5kZXgsIHJ1bkNvdW50LCBsaW5lUmVjdCwgbGluZUJveExvZ2ljYWxTaXplLndp
ZHRoKCksIGVuY2xvc2luZ1RvcEFuZEJvdHRvbSwgc2Nyb2xsYWJsZU92ZXJmbG93UmVjdCwgbGlu
ZUlua092ZXJmbG93UmVjdCwgbGluZS5iYXNlbGluZSgpLCBsaW5lLmNvbnRlbnRMb2dpY2FsT2Zm
c2V0KCksIGxpbmUuY29udGVudExvZ2ljYWxXaWR0aCgpIH0pOwogICAgIH0KIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9u
TGluZS5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0
aW9uTGluZS5oCmluZGV4IDk2OTA1YTgzY2EwYTE2OWJhNWMyNDQ2Y2RhYmIxMGJiYWEzOTJmY2Eu
LjVmOWJhMWM1YjY4NWIzODc4OTViZjhlNGRlMWNlNDlhOTc0MGEyZDcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25M
aW5lLmgKQEAgLTQwLDcgKzQwLDcgQEAgcHVibGljOgogICAgICAgICBmbG9hdCB0b3AgeyAwIH07
CiAgICAgICAgIGZsb2F0IGJvdHRvbSB7IDAgfTsKICAgICB9OwotICAgIExpbmUoc2l6ZV90IGZp
cnN0UnVuSW5kZXgsIHNpemVfdCBydW5Db3VudCwgY29uc3QgRmxvYXRSZWN0JiBsaW5lUmVjdCwg
ZmxvYXQgbGluZUJveFdpZHRoLCBFbmNsb3NpbmdUb3BBbmRCb3R0b20gZW5jbG9zaW5nVG9wQW5k
Qm90dG9tLCBjb25zdCBGbG9hdFJlY3QmIHNjcm9sbGFibGVPdmVyZmxvdywgY29uc3QgRmxvYXRS
ZWN0JiBpbmtPdmVyZmxvdywgZmxvYXQgYmFzZWxpbmUsIGZsb2F0IGhvcml6b250YWxBbGlnbm1l
bnRPZmZzZXQpCisgICAgTGluZShzaXplX3QgZmlyc3RSdW5JbmRleCwgc2l6ZV90IHJ1bkNvdW50
LCBjb25zdCBGbG9hdFJlY3QmIGxpbmVSZWN0LCBmbG9hdCBsaW5lQm94V2lkdGgsIEVuY2xvc2lu
Z1RvcEFuZEJvdHRvbSBlbmNsb3NpbmdUb3BBbmRCb3R0b20sIGNvbnN0IEZsb2F0UmVjdCYgc2Ny
b2xsYWJsZU92ZXJmbG93LCBjb25zdCBGbG9hdFJlY3QmIGlua092ZXJmbG93LCBmbG9hdCBiYXNl
bGluZSwgZmxvYXQgY29udGVudE9mZnNldCwgZmxvYXQgY29udGVudFdpZHRoKQogICAgICAgICA6
IG1fZmlyc3RSdW5JbmRleChmaXJzdFJ1bkluZGV4KQogICAgICAgICAsIG1fcnVuQ291bnQocnVu
Q291bnQpCiAgICAgICAgICwgbV9saW5lUmVjdChsaW5lUmVjdCkKQEAgLTQ5LDcgKzQ5LDggQEAg
cHVibGljOgogICAgICAgICAsIG1fc2Nyb2xsYWJsZU92ZXJmbG93KHNjcm9sbGFibGVPdmVyZmxv
dykKICAgICAgICAgLCBtX2lua092ZXJmbG93KGlua092ZXJmbG93KQogICAgICAgICAsIG1fYmFz
ZWxpbmUoYmFzZWxpbmUpCi0gICAgICAgICwgbV9ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KGhv
cml6b250YWxBbGlnbm1lbnRPZmZzZXQpCisgICAgICAgICwgbV9jb250ZW50T2Zmc2V0KGNvbnRl
bnRPZmZzZXQpCisgICAgICAgICwgbV9jb250ZW50V2lkdGgoY29udGVudFdpZHRoKQogICAgIHsK
ICAgICB9CiAKQEAgLTYyLDcgKzYzLDggQEAgcHVibGljOgogICAgIGNvbnN0IEZsb2F0UmVjdCYg
c2Nyb2xsYWJsZU92ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9zY3JvbGxhYmxlT3ZlcmZsb3c7
IH0KICAgICBjb25zdCBGbG9hdFJlY3QmIGlua092ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9p
bmtPdmVyZmxvdzsgfQogICAgIGZsb2F0IGJhc2VsaW5lKCkgY29uc3QgeyByZXR1cm4gbV9iYXNl
bGluZTsgfQotICAgIGZsb2F0IGhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQoKSBjb25zdCB7IHJl
dHVybiBtX2hvcml6b250YWxBbGlnbm1lbnRPZmZzZXQ7IH0KKyAgICBmbG9hdCBjb250ZW50TG9n
aWNhbE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudE9mZnNldDsgfQorICAgIGZsb2F0
IGNvbnRlbnRMb2dpY2FsV2lkdGgoKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRXaWR0aDsgfQog
CiBwcml2YXRlOgogICAgIHNpemVfdCBtX2ZpcnN0UnVuSW5kZXggeyAwIH07CkBAIC03Nyw3ICs3
OSw4IEBAIHByaXZhdGU6CiAgICAgRmxvYXRSZWN0IG1fc2Nyb2xsYWJsZU92ZXJmbG93OwogICAg
IEZsb2F0UmVjdCBtX2lua092ZXJmbG93OwogICAgIGZsb2F0IG1fYmFzZWxpbmUgeyAwIH07Ci0g
ICAgZmxvYXQgbV9ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0IHsgMCB9OworICAgIGZsb2F0IG1f
Y29udGVudE9mZnNldCB7IDAgfTsKKyAgICBmbG9hdCBtX2NvbnRlbnRXaWR0aCB7IDAgfTsKIH07
CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlv
dXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRvck1vZGVyblBhdGguaCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRvck1vZGVyblBhdGgu
aAppbmRleCBkOTBiNzFiMmE0OWZjZjBmOGM3N2JlYTI2YzVjMDUzOTA0NWI4MTY4Li45ZDgyYmQ4
OTQ2YjVlMTczZDg5MzMxZTMxOTg3ZTJlOTM1NTBjZTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3JNb2Rl
cm5QYXRoLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dElu
dGVncmF0aW9uTGluZUl0ZXJhdG9yTW9kZXJuUGF0aC5oCkBAIC01OSw4ICs1OSw4IEBAIHB1Ymxp
YzoKICAgICBMYXlvdXRVbml0IHNlbGVjdGlvblRvcEZvckhpdFRlc3RpbmcoKSBjb25zdCB7IHJl
dHVybiB0b3AoKTsgfQogICAgIExheW91dFVuaXQgc2VsZWN0aW9uQm90dG9tKCkgY29uc3QgeyBy
ZXR1cm4gYm90dG9tKCk7IH0KIAotICAgIGZsb2F0IGNvbnRlbnRMb2dpY2FsTGVmdCgpIGNvbnN0
IHsgcmV0dXJuIGxpbmUoKS5yZWN0KCkueCgpICsgbGluZSgpLmhvcml6b250YWxBbGlnbm1lbnRP
ZmZzZXQoKTsgfQotICAgIGZsb2F0IGNvbnRlbnRMb2dpY2FsUmlnaHQoKSBjb25zdCB7IHJldHVy
biBjb250ZW50TG9naWNhbExlZnQoKSArIGxpbmUoKS5yZWN0KCkud2lkdGgoKTsgfQorICAgIGZs
b2F0IGNvbnRlbnRMb2dpY2FsTGVmdCgpIGNvbnN0IHsgcmV0dXJuIGxpbmUoKS5yZWN0KCkueCgp
ICsgbGluZSgpLmNvbnRlbnRMb2dpY2FsT2Zmc2V0KCk7IH0KKyAgICBmbG9hdCBjb250ZW50TG9n
aWNhbFJpZ2h0KCkgY29uc3QgeyByZXR1cm4gY29udGVudExvZ2ljYWxMZWZ0KCkgKyBsaW5lKCku
Y29udGVudExvZ2ljYWxXaWR0aCgpOyB9CiAgICAgZmxvYXQgeSgpIGNvbnN0IHsgcmV0dXJuIGxp
bmVCb3hUb3AoKTsgfQogICAgIGZsb2F0IGxvZ2ljYWxIZWlnaHQoKSBjb25zdCB7IHJldHVybiBs
aW5lKCkucmVjdCgpLmhlaWdodCgpOyB9CiAgICAgYm9vbCBpc0hvcml6b250YWwoKSBjb25zdCB7
IHJldHVybiB0cnVlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCmluZGV4IDdl
YmNjYWM3OGRiOGIyMzZlOTJmOGE5NTQwMjU5YjhmOWYyOTliNTEuLmM5NjA3MDA4ZWE1Y2FlNjAy
ZGJiY2U3YWUyMDdmN2Q5MzE2MzBiMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQu
Y3BwCkBAIC00MTUsNyArNDE1LDcgQEAgdm9pZCBMaW5lTGF5b3V0OjpwYWludChQYWludEluZm8m
IHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQogICAgICAgICBhdXRv
IGV4cGFuc2lvbiA9IHJ1bi5leHBhbnNpb24oKTsKICAgICAgICAgLy8gVGV4dFJ1biBleHBlY3Rz
IHRoZSB4UG9zIHRvIGJlIGFkanVzdGVkIHdpdGggdGhlIGFsaWdtZW50IG9mZnNldCAoZS5nLiB3
aGVuIHRoZSBsaW5lIGlzIGNlbnRlciBhbGlnbmVkCiAgICAgICAgIC8vIGFuZCB0aGUgcnVuIHN0
YXJ0cyBhdCAxMDBweCwgZHVlIHRvIHRoZSBob3Jpem9udGFsIGFsaWdtZW50LCB0aGUgeHBvcyBp
cyBzdXBwb3NlZCB0byBiZSBhdCAwcHgpLgotICAgICAgICBhdXRvIHhQb3MgPSByZWN0LngoKSAt
IChsaW5lLnJlY3QoKS54KCkgKyBsaW5lLmhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQoKSk7Cisg
ICAgICAgIGF1dG8geFBvcyA9IHJlY3QueCgpIC0gKGxpbmUucmVjdCgpLngoKSArIGxpbmUuY29u
dGVudExvZ2ljYWxPZmZzZXQoKSk7CiAgICAgICAgIFdlYkNvcmU6OlRleHRSdW4gdGV4dFJ1biB7
IHRleHRDb250ZW50LnJlbmRlcmVkQ29udGVudCgpLCB4UG9zLCBleHBhbnNpb24uaG9yaXpvbnRh
bEV4cGFuc2lvbiwgZXhwYW5zaW9uLmJlaGF2aW9yIH07CiAgICAgICAgIHRleHRSdW4uc2V0VGFi
U2l6ZSghc3R5bGUuY29sbGFwc2VXaGl0ZVNwYWNlKCksIHN0eWxlLnRhYlNpemUoKSk7CiAgICAg
ICAgIEZsb2F0UG9pbnQgdGV4dE9yaWdpbiB7IHJlY3QueCgpICsgcGFpbnRPZmZzZXQueCgpLCBy
b3VuZFRvRGV2aWNlUGl4ZWwoYmFzZWxpbmUsIGRldmljZVNjYWxlRmFjdG9yKSB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9u
UGFnaW5hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25QYWdpbmF0aW9uLmNwcAppbmRleCBkOGZiZTc5YjdlNGJlNjkzYzg0ZTc2ZDNj
YzUzZTA2ZGQ4YWMyNGE5Li5mNGJiYjNiN2Q0YWRhZGM2NjExYjc1ZWIzNWZhZDY5ZWU4NmEyYTFl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25QYWdpbmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0aW9uLmNwcApAQCAtMTM1LDcgKzEzNSw4IEBA
IHN0YXRpYyBSZWY8SW5saW5lQ29udGVudD4gbWFrZUFkanVzdGVkQ29udGVudChjb25zdCBJbmxp
bmVDb250ZW50JiBpbmxpbmVDb250ZW50CiAgICAgICAgICAgICBtb3ZlVmVydGljYWxseShsaW5l
LnNjcm9sbGFibGVPdmVyZmxvdygpLCBvZmZzZXQpLAogICAgICAgICAgICAgbW92ZVZlcnRpY2Fs
bHkobGluZS5pbmtPdmVyZmxvdygpLCBvZmZzZXQpLAogICAgICAgICAgICAgbGluZS5iYXNlbGlu
ZSgpLAotICAgICAgICAgICAgbGluZS5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCkKKyAgICAg
ICAgICAgIGxpbmUuY29udGVudExvZ2ljYWxPZmZzZXQoKSwKKyAgICAgICAgICAgIGxpbmUuY29u
dGVudExvZ2ljYWxXaWR0aCgpCiAgICAgICAgIH07CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUnVuSXRlcmF0
b3JNb2Rlcm5QYXRoLmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25SdW5JdGVyYXRvck1vZGVyblBhdGguaAppbmRleCBmOTdkZDY2NjE5NGQ2N2Zi
OTNkMzQ5MTg4Y2I2Y2Y2OWIwODZkNmQ0Li5lOTYxZThmMTJkZDJmZmRkMTcwNTFlNjQxODZjMTE1
OGI1NWUyMzExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24v
TGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvck1vZGVyblBhdGguaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvck1vZGVy
blBhdGguaApAQCAtMjIxLDcgKzIyMSw3IEBAIHByaXZhdGU6CiAgICAgICAgIGF1dG8mIHN0eWxl
ID0gcnVuKCkuc3R5bGUoKTsKICAgICAgICAgYXV0byBleHBhbnNpb24gPSBydW4oKS5leHBhbnNp
b24oKTsKICAgICAgICAgYXV0byByZWN0ID0gdGhpcy0+cmVjdCgpOwotICAgICAgICBhdXRvIHhQ
b3MgPSByZWN0LngoKSAtIChsaW5lKCkucmVjdCgpLngoKSArIGxpbmUoKS5ob3Jpem9udGFsQWxp
Z25tZW50T2Zmc2V0KCkpOworICAgICAgICBhdXRvIHhQb3MgPSByZWN0LngoKSAtIChsaW5lKCku
cmVjdCgpLngoKSArIGxpbmUoKS5jb250ZW50TG9naWNhbE9mZnNldCgpKTsKIAogICAgICAgICBh
dXRvIHRleHRGb3JSdW4gPSBbJl0gewogICAgICAgICAgICAgaWYgKGh5cGhlbk1vZGUgPT0gSHlw
aGVuTW9kZTo6SWdub3JlIHx8ICFoYXNIeXBoZW4oKSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414738</attachid>
            <date>2020-11-20 15:44:47 -0800</date>
            <delta_ts>2020-11-20 15:54:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219220-20201120154446.patch</filename>
            <type>text/plain</type>
            <size>15167</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjk4MmQ3MmI0OGQ1N2Rm
NTRiYWZmOTQxZjQ0YzE3NjI5MjAxYWY0NC4uYmY3MTk3MjlkNzYzMzVhNTVkMjk4NzFhNzRiMWMz
OGMxZjYwNDcyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTExLTIwICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25d
IEFkZCBjb250ZW50TG9naWNhbE9mZnNldCBhbmQgY29udGVudExvZ2ljYWxXaWR0aCB0byBJbmxp
bmVMaW5lR2VvbWV0cnkoTGluZSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxOTIyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFRoaXMgaGVscHMgdG8gbWF0Y2ggdGhlIGxlZ2FjeSByb290IGlubGluZSBi
b3gncyBnZW9tZXRyeSB3aGVyZQorICAgICAgICBsaW5lIGxlZnQgKyBjb250ZW50IG9mZnNldCA9
PSByb290IGlubGluZSBib3ggbGVmdCBlZGdlCisgICAgICAgIGxpbmUgbGVmdCArIGNvbnRlbnQg
b2Zmc2V0ICsgY29udGVudCB3aWR0aCA9IHJvb3QgaW5saW5lIGJveCByaWdodCBlZGdlCisKKyAg
ICAgICAgKiBsYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpj
b21wdXRlR2VvbWV0cnlGb3JMaW5lQ29udGVudCk6CisgICAgICAgICogbGF5b3V0L2lubGluZWZv
cm1hdHRpbmcvSW5saW5lTGluZUdlb21ldHJ5Lmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OklubGluZUxpbmVHZW9tZXRyeTo6Y29udGVudE9mZnNldCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXQ6OklubGluZUxpbmVHZW9tZXRyeTo6Y29udGVudFdpZHRoIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lTGluZUdlb21ldHJ5OjpJbmxpbmVMaW5lR2Vv
bWV0cnkpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVMaW5lR2VvbWV0cnk6Omhv
cml6b250YWxBbGlnbm1lbnRPZmZzZXQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIGxheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50QnVpbGRl
cjo6Y3JlYXRlRGlzcGxheUxpbmVzIGNvbnN0KToKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25MaW5lLmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRl
Z3JhdGlvbjo6TGluZTo6TGluZSk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlv
bjo6TGluZTo6Y29udGVudE9mZnNldCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJ
bnRlZ3JhdGlvbjo6TGluZTo6Y29udGVudFdpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dEludGVncmF0aW9uOjpMaW5lOjpob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0IGNvbnN0
KTogRGVsZXRlZC4KKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRp
b25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRl
Z3JhdGlvbjo6TGluZUl0ZXJhdG9yTW9kZXJuUGF0aDo6Y29udGVudExvZ2ljYWxMZWZ0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lSXRlcmF0b3JNb2Rl
cm5QYXRoOjpjb250ZW50TG9naWNhbFJpZ2h0IGNvbnN0KToKKyAgICAgICAgKiBsYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0OjpwYWludCk6CisgICAgICAgICogbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6bWFrZUFkanVzdGVkQ29udGVudCk6CisgICAg
ICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUnVuSXRlcmF0b3JNb2Rl
cm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6UnVuSXRlcmF0
b3JNb2Rlcm5QYXRoOjpjcmVhdGVUZXh0UnVuIGNvbnN0KToKKwogMjAyMC0xMS0yMCAgWmFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ10gQXNzaWduIHRv
cC9sZWZ0IHRvIExpbmVCb3gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxp
bmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAppbmRl
eCBkNmMxMTc3M2Y5NmNiMmM5ZmIwZDRkM2RjYzU2ODFkOGEwNWM5MzZiLi44NzBkM2E4MjJkMWRi
ZTE0ZTI2YWYyMmM3MmFkYjIyMWUyZDhiOWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0Nv
bnRleHQuY3BwCkBAIC00OTMsNyArNDkzLDcgQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5n
Q29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAg
ICB1cGRhdGVCb3hHZW9tZXRyeSgpOwogCiAgICAgYXV0byBjb25zdHJ1Y3RMaW5lR2VvbWV0cnkg
PSBbJl0gewotICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZSh7IGxpbmVMb2dpY2FsUmVj
dCwgbGluZUJveC5sb2dpY2FsU2l6ZSgpLCBsaW5lQm94LmFsaWdubWVudEJhc2VsaW5lKCksIGxp
bmVCb3guaG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCgpLnZhbHVlT3IoSW5saW5lTGF5b3V0VW5p
dCB7IH0pIH0pOworICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZSh7IGxpbmVMb2dpY2Fs
UmVjdCwgbGluZUJveC5sb2dpY2FsU2l6ZSgpLCBsaW5lQm94LmFsaWdubWVudEJhc2VsaW5lKCks
IGxpbmVCb3guaG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCgpLnZhbHVlT3IoSW5saW5lTGF5b3V0
VW5pdCB7IH0pLCBsaW5lQ29udGVudC5jb250ZW50TG9naWNhbFdpZHRoIH0pOwogICAgIH07CiAg
ICAgY29uc3RydWN0TGluZUdlb21ldHJ5KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnku
Y3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0
dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKaW5kZXggMTI0MjNiYTZmYTZkYzY5YWYxNTkyOGY4OTRj
NzkzOGE3YTcwMWJlNi4uZTc1ZjMyZjliYmIwN2ZjNWM4MDQ0N2EwM2MyNTc5OTRiOGU3YzQ1MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5l
Rm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKQEAg
LTE1NSw3ICsxNTUsNyBAQCBMaW5lQm94IExpbmVCb3hCdWlsZGVyOjpidWlsZChjb25zdCBMaW5l
QnVpbGRlcjo6TGluZUNvbnRlbnQmIGxpbmVDb250ZW50KQogewogICAgIGF1dG8mIHJ1bnMgPSBs
aW5lQ29udGVudC5ydW5zOwogICAgIGF1dG8gbGluZUxvZ2ljYWxXaWR0aCA9IGxpbmVDb250ZW50
LmxpbmVMb2dpY2FsV2lkdGg7Ci0gICAgYXV0byBjb250ZW50TG9naWNhbFdpZHRoID0gbGluZUNv
bnRlbnQubGluZUNvbnRlbnRMb2dpY2FsV2lkdGg7CisgICAgYXV0byBjb250ZW50TG9naWNhbFdp
ZHRoID0gbGluZUNvbnRlbnQuY29udGVudExvZ2ljYWxXaWR0aDsKICAgICBhdXRvIGlzTGluZUNv
bnNpZGVyZWRFbXB0eSA9IGxpbmVDb250ZW50LmlzTGluZUNvbnNpZGVyZWRFbXB0eSA/IExpbmVC
b3g6OklzTGluZUNvbnNpZGVyZWRFbXB0eTo6WWVzIDogTGluZUJveDo6SXNMaW5lQ29uc2lkZXJl
ZEVtcHR5OjpObzsKICAgICBhdXRvIGxpbmVCb3ggPSBMaW5lQm94IHsgbGluZUNvbnRlbnQubG9n
aWNhbFRvcExlZnQsIGNvbnRlbnRMb2dpY2FsV2lkdGgsIGlzTGluZUNvbnNpZGVyZWRFbXB0eSB9
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9J
bmxpbmVMaW5lQnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRp
bmcvSW5saW5lTGluZUJ1aWxkZXIuaAppbmRleCA5NzZkM2FhMWM1M2U5NDI4NDViYzcwODQxYTE2
Mzk3MDAyMGUyOTk0Li5mMDU5ZmNkMWI0NzUzNmM2NDUzNDQzMGUwY2UzOTU5Yjg2Nzc5NmU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVM
aW5lQnVpbGRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5n
L0lubGluZUxpbmVCdWlsZGVyLmgKQEAgLTU5LDcgKzU5LDcgQEAgcHVibGljOgogICAgICAgICBi
b29sIGhhc0ludHJ1c2l2ZUZsb2F0IHsgZmFsc2UgfTsKICAgICAgICAgSW5saW5lTGF5b3V0UG9p
bnQgbG9naWNhbFRvcExlZnQ7CiAgICAgICAgIElubGluZUxheW91dFVuaXQgbGluZUxvZ2ljYWxX
aWR0aDsKLSAgICAgICAgSW5saW5lTGF5b3V0VW5pdCBsaW5lQ29udGVudExvZ2ljYWxXaWR0aDsK
KyAgICAgICAgSW5saW5lTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbFdpZHRoOwogICAgICAgICBi
b29sIGlzTGluZUNvbnNpZGVyZWRFbXB0eSB7IHRydWUgfTsKICAgICAgICAgYm9vbCBpc0xhc3RM
aW5lV2l0aElubGluZUNvbnRlbnQgeyB0cnVlIH07CiAgICAgICAgIGNvbnN0IExpbmU6OlJ1bkxp
c3QmIHJ1bnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0
dGluZy9JbmxpbmVMaW5lR2VvbWV0cnkuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVm
b3JtYXR0aW5nL0lubGluZUxpbmVHZW9tZXRyeS5oCmluZGV4IDM4YzEzNDc0NWUyZGRhZjNhNmU2
OTEyZjIzOTA0MTkzYzE5NzQzMTIuLjAwNmEyM2U5MGE0NDAyMzZiYWYxZDE5YzBmYWVmZWIyNjUw
OTdkMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5n
L0lubGluZUxpbmVHZW9tZXRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVm
b3JtYXR0aW5nL0lubGluZUxpbmVHZW9tZXRyeS5oCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFj
ZSBMYXlvdXQgewogY2xhc3MgSW5saW5lTGluZUdlb21ldHJ5IHsKICAgICBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRDsKIHB1YmxpYzoKLSAgICBJbmxpbmVMaW5lR2VvbWV0cnkoY29uc3QgSW5saW5l
UmVjdCYgbGluZUxvZ2ljYWxSZWN0LCBjb25zdCBJbmxpbmVMYXlvdXRTaXplJiBsaW5lQm94TG9n
aWNhbFNpemUsIElubGluZUxheW91dFVuaXQgYWxpZ21lbnRCYXNlbGluZSwgSW5saW5lTGF5b3V0
VW5pdCBob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KTsKKyAgICBJbmxpbmVMaW5lR2VvbWV0cnko
Y29uc3QgSW5saW5lUmVjdCYgbGluZUxvZ2ljYWxSZWN0LCBjb25zdCBJbmxpbmVMYXlvdXRTaXpl
JiBsaW5lQm94TG9naWNhbFNpemUsIElubGluZUxheW91dFVuaXQgYWxpZ21lbnRCYXNlbGluZSwg
SW5saW5lTGF5b3V0VW5pdCBjb250ZW50TGVmdE9mZnNldCwgSW5saW5lTGF5b3V0VW5pdCBjb250
ZW50TG9naWNhbFdpZHRoKTsKIAogICAgIElubGluZUxheW91dFVuaXQgbG9naWNhbExlZnQoKSBj
b25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgpLmxlZnQoKTsgfTsKICAgICBJbmxpbmVMYXlvdXRV
bml0IGxvZ2ljYWxSaWdodCgpIGNvbnN0IHsgcmV0dXJuIGxvZ2ljYWxSZWN0KCkucmlnaHQoKTsg
fTsKQEAgLTUwLDcgKzUwLDkgQEAgcHVibGljOgogICAgIGNvbnN0IElubGluZUxheW91dFNpemUm
IGxpbmVCb3hMb2dpY2FsU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbGluZUJveExvZ2ljYWxTaXpl
OyB9CiAKICAgICBJbmxpbmVMYXlvdXRVbml0IGJhc2VsaW5lKCkgY29uc3QgeyByZXR1cm4gbV9h
bGlnbWVudEJhc2VsaW5lOyB9Ci0gICAgSW5saW5lTGF5b3V0VW5pdCBob3Jpem9udGFsQWxpZ25t
ZW50T2Zmc2V0KCkgY29uc3QgeyByZXR1cm4gbV9ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0OyB9
CisKKyAgICBJbmxpbmVMYXlvdXRVbml0IGNvbnRlbnRMb2dpY2FsTGVmdE9mZnNldCgpIGNvbnN0
IHsgcmV0dXJuIG1fY29udGVudExvZ2ljYWxMZWZ0T2Zmc2V0OyB9CisgICAgSW5saW5lTGF5b3V0
VW5pdCBjb250ZW50TG9naWNhbFdpZHRoKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50TG9naWNh
bFdpZHRoOyB9CiAKICAgICB2b2lkIG1vdmVWZXJ0aWNhbGx5KElubGluZUxheW91dFVuaXQgb2Zm
c2V0KSB7IG1fbG9naWNhbFJlY3QubW92ZVZlcnRpY2FsbHkob2Zmc2V0KTsgfQogCkBAIC01OCwx
NCArNjAsMTYgQEAgcHJpdmF0ZToKICAgICBJbmxpbmVSZWN0IG1fbG9naWNhbFJlY3Q7CiAgICAg
SW5saW5lTGF5b3V0U2l6ZSBtX2xpbmVCb3hMb2dpY2FsU2l6ZTsKICAgICBJbmxpbmVMYXlvdXRV
bml0IG1fYWxpZ21lbnRCYXNlbGluZSB7IDAgfTsKLSAgICBJbmxpbmVMYXlvdXRVbml0IG1faG9y
aXpvbnRhbEFsaWdubWVudE9mZnNldCB7IDAgfTsKKyAgICBJbmxpbmVMYXlvdXRVbml0IG1fY29u
dGVudExvZ2ljYWxMZWZ0T2Zmc2V0IHsgMCB9OworICAgIElubGluZUxheW91dFVuaXQgbV9jb250
ZW50TG9naWNhbFdpZHRoIHsgMCB9OwogfTsKIAotaW5saW5lIElubGluZUxpbmVHZW9tZXRyeTo6
SW5saW5lTGluZUdlb21ldHJ5KGNvbnN0IElubGluZVJlY3QmIGxpbmVMb2dpY2FsUmVjdCwgY29u
c3QgSW5saW5lTGF5b3V0U2l6ZSYgbGluZUJveExvZ2ljYWxTaXplLCBJbmxpbmVMYXlvdXRVbml0
IGFsaWdtZW50QmFzZWxpbmUsIElubGluZUxheW91dFVuaXQgaG9yaXpvbnRhbEFsaWdubWVudE9m
ZnNldCkKK2lubGluZSBJbmxpbmVMaW5lR2VvbWV0cnk6OklubGluZUxpbmVHZW9tZXRyeShjb25z
dCBJbmxpbmVSZWN0JiBsaW5lTG9naWNhbFJlY3QsIGNvbnN0IElubGluZUxheW91dFNpemUmIGxp
bmVCb3hMb2dpY2FsU2l6ZSwgSW5saW5lTGF5b3V0VW5pdCBhbGlnbWVudEJhc2VsaW5lLCBJbmxp
bmVMYXlvdXRVbml0IGNvbnRlbnRMb2dpY2FsTGVmdE9mZnNldCwgSW5saW5lTGF5b3V0VW5pdCBj
b250ZW50TG9naWNhbFdpZHRoKQogICAgIDogbV9sb2dpY2FsUmVjdChsaW5lTG9naWNhbFJlY3Qp
CiAgICAgLCBtX2xpbmVCb3hMb2dpY2FsU2l6ZShsaW5lQm94TG9naWNhbFNpemUpCiAgICAgLCBt
X2FsaWdtZW50QmFzZWxpbmUoYWxpZ21lbnRCYXNlbGluZSkKLSAgICAsIG1faG9yaXpvbnRhbEFs
aWdubWVudE9mZnNldChob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KQorICAgICwgbV9jb250ZW50
TG9naWNhbExlZnRPZmZzZXQoY29udGVudExvZ2ljYWxMZWZ0T2Zmc2V0KQorICAgICwgbV9jb250
ZW50TG9naWNhbFdpZHRoKGNvbnRlbnRMb2dpY2FsV2lkdGgpCiB7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGlu
ZUNvbnRlbnRCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcAppbmRleCBmZmU3MzM3OTJi
N2U4NmZjZjZjZTgxOGFmOGZhNzg1ZThhM2FmOTJlLi5jNTgwOGI2YzQ3MjEyNzcwYzNlNGJmMWFh
MDliODk2NTVmYTg5OTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29u
dGVudEJ1aWxkZXIuY3BwCkBAIC0zNDQsNyArMzQ0LDcgQEAgdm9pZCBJbmxpbmVDb250ZW50QnVp
bGRlcjo6Y3JlYXRlRGlzcGxheUxpbmVzKGNvbnN0IExheW91dDo6SW5saW5lRm9ybWF0dGluZ1N0
YXQKICAgICAgICAgICAgIGVuY2xvc2luZ1RvcEFuZEJvdHRvbS50b3AgPSByb3VuZFRvSW50KGVu
Y2xvc2luZ1RvcEFuZEJvdHRvbS50b3ApOwogICAgICAgICAgICAgZW5jbG9zaW5nVG9wQW5kQm90
dG9tLmJvdHRvbSA9IHJvdW5kVG9JbnQoZW5jbG9zaW5nVG9wQW5kQm90dG9tLmJvdHRvbSk7CiAg
ICAgICAgIH0KLSAgICAgICAgaW5saW5lQ29udGVudC5saW5lcy5hcHBlbmQoeyBmaXJzdFJ1bklu
ZGV4LCBydW5Db3VudCwgbGluZVJlY3QsIGxpbmVCb3hMb2dpY2FsU2l6ZS53aWR0aCgpLCBlbmNs
b3NpbmdUb3BBbmRCb3R0b20sIHNjcm9sbGFibGVPdmVyZmxvd1JlY3QsIGxpbmVJbmtPdmVyZmxv
d1JlY3QsIGxpbmUuYmFzZWxpbmUoKSwgbGluZS5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCkg
fSk7CisgICAgICAgIGlubGluZUNvbnRlbnQubGluZXMuYXBwZW5kKHsgZmlyc3RSdW5JbmRleCwg
cnVuQ291bnQsIGxpbmVSZWN0LCBsaW5lQm94TG9naWNhbFNpemUud2lkdGgoKSwgZW5jbG9zaW5n
VG9wQW5kQm90dG9tLCBzY3JvbGxhYmxlT3ZlcmZsb3dSZWN0LCBsaW5lSW5rT3ZlcmZsb3dSZWN0
LCBsaW5lLmJhc2VsaW5lKCksIGxpbmUuY29udGVudExvZ2ljYWxMZWZ0T2Zmc2V0KCksIGxpbmUu
Y29udGVudExvZ2ljYWxXaWR0aCgpIH0pOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZS5oIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZS5oCmlu
ZGV4IDk2OTA1YTgzY2EwYTE2OWJhNWMyNDQ2Y2RhYmIxMGJiYWEzOTJmY2EuLmY5NzNiZDRkNjU1
ZGI1MzUyMzcyYjY3MjEwY2IxMzM1MWI4ZWFiNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lLmgKQEAgLTQw
LDcgKzQwLDcgQEAgcHVibGljOgogICAgICAgICBmbG9hdCB0b3AgeyAwIH07CiAgICAgICAgIGZs
b2F0IGJvdHRvbSB7IDAgfTsKICAgICB9OwotICAgIExpbmUoc2l6ZV90IGZpcnN0UnVuSW5kZXgs
IHNpemVfdCBydW5Db3VudCwgY29uc3QgRmxvYXRSZWN0JiBsaW5lUmVjdCwgZmxvYXQgbGluZUJv
eFdpZHRoLCBFbmNsb3NpbmdUb3BBbmRCb3R0b20gZW5jbG9zaW5nVG9wQW5kQm90dG9tLCBjb25z
dCBGbG9hdFJlY3QmIHNjcm9sbGFibGVPdmVyZmxvdywgY29uc3QgRmxvYXRSZWN0JiBpbmtPdmVy
ZmxvdywgZmxvYXQgYmFzZWxpbmUsIGZsb2F0IGhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQpCisg
ICAgTGluZShzaXplX3QgZmlyc3RSdW5JbmRleCwgc2l6ZV90IHJ1bkNvdW50LCBjb25zdCBGbG9h
dFJlY3QmIGxpbmVSZWN0LCBmbG9hdCBsaW5lQm94V2lkdGgsIEVuY2xvc2luZ1RvcEFuZEJvdHRv
bSBlbmNsb3NpbmdUb3BBbmRCb3R0b20sIGNvbnN0IEZsb2F0UmVjdCYgc2Nyb2xsYWJsZU92ZXJm
bG93LCBjb25zdCBGbG9hdFJlY3QmIGlua092ZXJmbG93LCBmbG9hdCBiYXNlbGluZSwgZmxvYXQg
Y29udGVudExlZnRPZmZzZXQsIGZsb2F0IGNvbnRlbnRXaWR0aCkKICAgICAgICAgOiBtX2ZpcnN0
UnVuSW5kZXgoZmlyc3RSdW5JbmRleCkKICAgICAgICAgLCBtX3J1bkNvdW50KHJ1bkNvdW50KQog
ICAgICAgICAsIG1fbGluZVJlY3QobGluZVJlY3QpCkBAIC00OSw3ICs0OSw4IEBAIHB1YmxpYzoK
ICAgICAgICAgLCBtX3Njcm9sbGFibGVPdmVyZmxvdyhzY3JvbGxhYmxlT3ZlcmZsb3cpCiAgICAg
ICAgICwgbV9pbmtPdmVyZmxvdyhpbmtPdmVyZmxvdykKICAgICAgICAgLCBtX2Jhc2VsaW5lKGJh
c2VsaW5lKQotICAgICAgICAsIG1faG9yaXpvbnRhbEFsaWdubWVudE9mZnNldChob3Jpem9udGFs
QWxpZ25tZW50T2Zmc2V0KQorICAgICAgICAsIG1fY29udGVudExlZnRPZmZzZXQoY29udGVudExl
ZnRPZmZzZXQpCisgICAgICAgICwgbV9jb250ZW50V2lkdGgoY29udGVudFdpZHRoKQogICAgIHsK
ICAgICB9CiAKQEAgLTYyLDcgKzYzLDggQEAgcHVibGljOgogICAgIGNvbnN0IEZsb2F0UmVjdCYg
c2Nyb2xsYWJsZU92ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9zY3JvbGxhYmxlT3ZlcmZsb3c7
IH0KICAgICBjb25zdCBGbG9hdFJlY3QmIGlua092ZXJmbG93KCkgY29uc3QgeyByZXR1cm4gbV9p
bmtPdmVyZmxvdzsgfQogICAgIGZsb2F0IGJhc2VsaW5lKCkgY29uc3QgeyByZXR1cm4gbV9iYXNl
bGluZTsgfQotICAgIGZsb2F0IGhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQoKSBjb25zdCB7IHJl
dHVybiBtX2hvcml6b250YWxBbGlnbm1lbnRPZmZzZXQ7IH0KKyAgICBmbG9hdCBjb250ZW50TGVm
dE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudExlZnRPZmZzZXQ7IH0KKyAgICBmbG9h
dCBjb250ZW50V2lkdGgoKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRXaWR0aDsgfQogCiBwcml2
YXRlOgogICAgIHNpemVfdCBtX2ZpcnN0UnVuSW5kZXggeyAwIH07CkBAIC03Nyw3ICs3OSw4IEBA
IHByaXZhdGU6CiAgICAgRmxvYXRSZWN0IG1fc2Nyb2xsYWJsZU92ZXJmbG93OwogICAgIEZsb2F0
UmVjdCBtX2lua092ZXJmbG93OwogICAgIGZsb2F0IG1fYmFzZWxpbmUgeyAwIH07Ci0gICAgZmxv
YXQgbV9ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0IHsgMCB9OworICAgIGZsb2F0IG1fY29udGVu
dExlZnRPZmZzZXQgeyAwIH07CisgICAgZmxvYXQgbV9jb250ZW50V2lkdGggeyAwIH07CiB9Owog
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmgK
aW5kZXggZDkwYjcxYjJhNDlmY2YwZjhjNzdiZWEyNmM1YzA1MzkwNDViODE2OC4uYjZiODVkZGIw
YWI3MzhkOWJlYjc4Njg4OTI1YmFiODQ3YzhjY2QzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yTW9kZXJu
UGF0aC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvbkxpbmVJdGVyYXRvck1vZGVyblBhdGguaApAQCAtNTksOCArNTksOCBAQCBwdWJsaWM6
CiAgICAgTGF5b3V0VW5pdCBzZWxlY3Rpb25Ub3BGb3JIaXRUZXN0aW5nKCkgY29uc3QgeyByZXR1
cm4gdG9wKCk7IH0KICAgICBMYXlvdXRVbml0IHNlbGVjdGlvbkJvdHRvbSgpIGNvbnN0IHsgcmV0
dXJuIGJvdHRvbSgpOyB9CiAKLSAgICBmbG9hdCBjb250ZW50TG9naWNhbExlZnQoKSBjb25zdCB7
IHJldHVybiBsaW5lKCkucmVjdCgpLngoKSArIGxpbmUoKS5ob3Jpem9udGFsQWxpZ25tZW50T2Zm
c2V0KCk7IH0KLSAgICBmbG9hdCBjb250ZW50TG9naWNhbFJpZ2h0KCkgY29uc3QgeyByZXR1cm4g
Y29udGVudExvZ2ljYWxMZWZ0KCkgKyBsaW5lKCkucmVjdCgpLndpZHRoKCk7IH0KKyAgICBmbG9h
dCBjb250ZW50TG9naWNhbExlZnQoKSBjb25zdCB7IHJldHVybiBsaW5lKCkucmVjdCgpLngoKSAr
IGxpbmUoKS5jb250ZW50TGVmdE9mZnNldCgpOyB9CisgICAgZmxvYXQgY29udGVudExvZ2ljYWxS
aWdodCgpIGNvbnN0IHsgcmV0dXJuIGNvbnRlbnRMb2dpY2FsTGVmdCgpICsgbGluZSgpLmNvbnRl
bnRXaWR0aCgpOyB9CiAgICAgZmxvYXQgeSgpIGNvbnN0IHsgcmV0dXJuIGxpbmVCb3hUb3AoKTsg
fQogICAgIGZsb2F0IGxvZ2ljYWxIZWlnaHQoKSBjb25zdCB7IHJldHVybiBsaW5lKCkucmVjdCgp
LmhlaWdodCgpOyB9CiAgICAgYm9vbCBpc0hvcml6b250YWwoKSBjb25zdCB7IHJldHVybiB0cnVl
OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0
SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3Jh
dGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCmluZGV4IDdlYmNjYWM3OGRiOGIy
MzZlOTJmOGE5NTQwMjU5YjhmOWYyOTliNTEuLmUyOWI1MWEwZmNkOGQxN2VlZTFlNmFiNGFmZmVl
ODAzM2ZhYmE5ZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCkBAIC00MTUs
NyArNDE1LDcgQEAgdm9pZCBMaW5lTGF5b3V0OjpwYWludChQYWludEluZm8mIHBhaW50SW5mbywg
Y29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQogICAgICAgICBhdXRvIGV4cGFuc2lvbiA9
IHJ1bi5leHBhbnNpb24oKTsKICAgICAgICAgLy8gVGV4dFJ1biBleHBlY3RzIHRoZSB4UG9zIHRv
IGJlIGFkanVzdGVkIHdpdGggdGhlIGFsaWdtZW50IG9mZnNldCAoZS5nLiB3aGVuIHRoZSBsaW5l
IGlzIGNlbnRlciBhbGlnbmVkCiAgICAgICAgIC8vIGFuZCB0aGUgcnVuIHN0YXJ0cyBhdCAxMDBw
eCwgZHVlIHRvIHRoZSBob3Jpem9udGFsIGFsaWdtZW50LCB0aGUgeHBvcyBpcyBzdXBwb3NlZCB0
byBiZSBhdCAwcHgpLgotICAgICAgICBhdXRvIHhQb3MgPSByZWN0LngoKSAtIChsaW5lLnJlY3Qo
KS54KCkgKyBsaW5lLmhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQoKSk7CisgICAgICAgIGF1dG8g
eFBvcyA9IHJlY3QueCgpIC0gKGxpbmUucmVjdCgpLngoKSArIGxpbmUuY29udGVudExlZnRPZmZz
ZXQoKSk7CiAgICAgICAgIFdlYkNvcmU6OlRleHRSdW4gdGV4dFJ1biB7IHRleHRDb250ZW50LnJl
bmRlcmVkQ29udGVudCgpLCB4UG9zLCBleHBhbnNpb24uaG9yaXpvbnRhbEV4cGFuc2lvbiwgZXhw
YW5zaW9uLmJlaGF2aW9yIH07CiAgICAgICAgIHRleHRSdW4uc2V0VGFiU2l6ZSghc3R5bGUuY29s
bGFwc2VXaGl0ZVNwYWNlKCksIHN0eWxlLnRhYlNpemUoKSk7CiAgICAgICAgIEZsb2F0UG9pbnQg
dGV4dE9yaWdpbiB7IHJlY3QueCgpICsgcGFpbnRPZmZzZXQueCgpLCByb3VuZFRvRGV2aWNlUGl4
ZWwoYmFzZWxpbmUsIGRldmljZVNjYWxlRmFjdG9yKSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25QYWdp
bmF0aW9uLmNwcAppbmRleCBkOGZiZTc5YjdlNGJlNjkzYzg0ZTc2ZDNjYzUzZTA2ZGQ4YWMyNGE5
Li4xNjM3Y2Y5NzJmYmMxMTU4MjNlY2IyMDliN2NjOGVjZjM2OGVmNjEwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0
aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50
ZWdyYXRpb25QYWdpbmF0aW9uLmNwcApAQCAtMTM1LDcgKzEzNSw4IEBAIHN0YXRpYyBSZWY8SW5s
aW5lQ29udGVudD4gbWFrZUFkanVzdGVkQ29udGVudChjb25zdCBJbmxpbmVDb250ZW50JiBpbmxp
bmVDb250ZW50CiAgICAgICAgICAgICBtb3ZlVmVydGljYWxseShsaW5lLnNjcm9sbGFibGVPdmVy
ZmxvdygpLCBvZmZzZXQpLAogICAgICAgICAgICAgbW92ZVZlcnRpY2FsbHkobGluZS5pbmtPdmVy
ZmxvdygpLCBvZmZzZXQpLAogICAgICAgICAgICAgbGluZS5iYXNlbGluZSgpLAotICAgICAgICAg
ICAgbGluZS5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCkKKyAgICAgICAgICAgIGxpbmUuY29u
dGVudExlZnRPZmZzZXQoKSwKKyAgICAgICAgICAgIGxpbmUuY29udGVudFdpZHRoKCkKICAgICAg
ICAgfTsKICAgICB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvck1vZGVyblBhdGguaCBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9k
ZXJuUGF0aC5oCmluZGV4IGY5N2RkNjY2MTk0ZDY3ZmI5M2QzNDkxODhjYjZjZjY5YjA4NmQ2ZDQu
LjA3N2IzZTdhOWQ5NzExMGE1OTZkNTE2YjNiZGE3MjZkNTJiODkxZGIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJh
dG9yTW9kZXJuUGF0aC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9M
YXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJuUGF0aC5oCkBAIC0yMjEsNyArMjIxLDcg
QEAgcHJpdmF0ZToKICAgICAgICAgYXV0byYgc3R5bGUgPSBydW4oKS5zdHlsZSgpOwogICAgICAg
ICBhdXRvIGV4cGFuc2lvbiA9IHJ1bigpLmV4cGFuc2lvbigpOwogICAgICAgICBhdXRvIHJlY3Qg
PSB0aGlzLT5yZWN0KCk7Ci0gICAgICAgIGF1dG8geFBvcyA9IHJlY3QueCgpIC0gKGxpbmUoKS5y
ZWN0KCkueCgpICsgbGluZSgpLmhvcml6b250YWxBbGlnbm1lbnRPZmZzZXQoKSk7CisgICAgICAg
IGF1dG8geFBvcyA9IHJlY3QueCgpIC0gKGxpbmUoKS5yZWN0KCkueCgpICsgbGluZSgpLmNvbnRl
bnRMZWZ0T2Zmc2V0KCkpOwogCiAgICAgICAgIGF1dG8gdGV4dEZvclJ1biA9IFsmXSB7CiAgICAg
ICAgICAgICBpZiAoaHlwaGVuTW9kZSA9PSBIeXBoZW5Nb2RlOjpJZ25vcmUgfHwgIWhhc0h5cGhl
bigpKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414739</attachid>
            <date>2020-11-20 15:54:09 -0800</date>
            <delta_ts>2020-11-21 04:57:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219220-20201120155409.patch</filename>
            <type>text/plain</type>
            <size>15174</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwMTIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjk4MmQ3MmI0OGQ1N2Rm
NTRiYWZmOTQxZjQ0YzE3NjI5MjAxYWY0NC4uYmY3MTk3MjlkNzYzMzVhNTVkMjk4NzFhNzRiMWMz
OGMxZjYwNDcyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTExLTIwICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25d
IEFkZCBjb250ZW50TG9naWNhbE9mZnNldCBhbmQgY29udGVudExvZ2ljYWxXaWR0aCB0byBJbmxp
bmVMaW5lR2VvbWV0cnkoTGluZSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxOTIyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFRoaXMgaGVscHMgdG8gbWF0Y2ggdGhlIGxlZ2FjeSByb290IGlubGluZSBi
b3gncyBnZW9tZXRyeSB3aGVyZQorICAgICAgICBsaW5lIGxlZnQgKyBjb250ZW50IG9mZnNldCA9
PSByb290IGlubGluZSBib3ggbGVmdCBlZGdlCisgICAgICAgIGxpbmUgbGVmdCArIGNvbnRlbnQg
b2Zmc2V0ICsgY29udGVudCB3aWR0aCA9IHJvb3QgaW5saW5lIGJveCByaWdodCBlZGdlCisKKyAg
ICAgICAgKiBsYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdDb250ZXh0Ojpj
b21wdXRlR2VvbWV0cnlGb3JMaW5lQ29udGVudCk6CisgICAgICAgICogbGF5b3V0L2lubGluZWZv
cm1hdHRpbmcvSW5saW5lTGluZUdlb21ldHJ5Lmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6
OklubGluZUxpbmVHZW9tZXRyeTo6Y29udGVudE9mZnNldCBjb25zdCk6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXQ6OklubGluZUxpbmVHZW9tZXRyeTo6Y29udGVudFdpZHRoIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lTGluZUdlb21ldHJ5OjpJbmxpbmVMaW5lR2Vv
bWV0cnkpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVMaW5lR2VvbWV0cnk6Omhv
cml6b250YWxBbGlnbm1lbnRPZmZzZXQgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAqIGxheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50QnVpbGRl
cjo6Y3JlYXRlRGlzcGxheUxpbmVzIGNvbnN0KToKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25MaW5lLmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRl
Z3JhdGlvbjo6TGluZTo6TGluZSk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlv
bjo6TGluZTo6Y29udGVudE9mZnNldCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJ
bnRlZ3JhdGlvbjo6TGluZTo6Y29udGVudFdpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkxheW91dEludGVncmF0aW9uOjpMaW5lOjpob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0IGNvbnN0
KTogRGVsZXRlZC4KKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRp
b25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRl
Z3JhdGlvbjo6TGluZUl0ZXJhdG9yTW9kZXJuUGF0aDo6Y29udGVudExvZ2ljYWxMZWZ0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lSXRlcmF0b3JNb2Rl
cm5QYXRoOjpjb250ZW50TG9naWNhbFJpZ2h0IGNvbnN0KToKKyAgICAgICAgKiBsYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxheW91dEludGVncmF0aW9uOjpMaW5lTGF5b3V0OjpwYWludCk6CisgICAgICAgICogbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6bWFrZUFkanVzdGVkQ29udGVudCk6CisgICAg
ICAgICogbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUnVuSXRlcmF0b3JNb2Rl
cm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6UnVuSXRlcmF0
b3JNb2Rlcm5QYXRoOjpjcmVhdGVUZXh0UnVuIGNvbnN0KToKKwogMjAyMC0xMS0yMCAgWmFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ10gQXNzaWduIHRv
cC9sZWZ0IHRvIExpbmVCb3gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxp
bmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcAppbmRl
eCBkNmMxMTc3M2Y5NmNiMmM5ZmIwZDRkM2RjYzU2ODFkOGEwNWM5MzZiLi44NzBkM2E4MjJkMWRi
ZTE0ZTI2YWYyMmM3MmFkYjIyMWUyZDhiOWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0Nv
bnRleHQuY3BwCkBAIC00OTMsNyArNDkzLDcgQEAgSW5saW5lUmVjdCBJbmxpbmVGb3JtYXR0aW5n
Q29udGV4dDo6Y29tcHV0ZUdlb21ldHJ5Rm9yTGluZUNvbnRlbnQoY29uc3QgTGluZUJ1aWwKICAg
ICB1cGRhdGVCb3hHZW9tZXRyeSgpOwogCiAgICAgYXV0byBjb25zdHJ1Y3RMaW5lR2VvbWV0cnkg
PSBbJl0gewotICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZSh7IGxpbmVMb2dpY2FsUmVj
dCwgbGluZUJveC5sb2dpY2FsU2l6ZSgpLCBsaW5lQm94LmFsaWdubWVudEJhc2VsaW5lKCksIGxp
bmVCb3guaG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCgpLnZhbHVlT3IoSW5saW5lTGF5b3V0VW5p
dCB7IH0pIH0pOworICAgICAgICBmb3JtYXR0aW5nU3RhdGUuYWRkTGluZSh7IGxpbmVMb2dpY2Fs
UmVjdCwgbGluZUJveC5sb2dpY2FsU2l6ZSgpLCBsaW5lQm94LmFsaWdubWVudEJhc2VsaW5lKCks
IGxpbmVCb3guaG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCgpLnZhbHVlT3IoSW5saW5lTGF5b3V0
VW5pdCB7IH0pLCBsaW5lQ29udGVudC5jb250ZW50TG9naWNhbFdpZHRoIH0pOwogICAgIH07CiAg
ICAgY29uc3RydWN0TGluZUdlb21ldHJ5KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbmxpbmVmb3JtYXR0aW5nL0lubGluZUZvcm1hdHRpbmdDb250ZXh0R2VvbWV0cnku
Y3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0
dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKaW5kZXggMTI0MjNiYTZmYTZkYzY5YWYxNTkyOGY4OTRj
NzkzOGE3YTcwMWJlNi4uZTc1ZjMyZjliYmIwN2ZjNWM4MDQ0N2EwM2MyNTc5OTRiOGU3YzQ1MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRpbmcvSW5saW5l
Rm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2lubGluZWZvcm1hdHRpbmcvSW5saW5lRm9ybWF0dGluZ0NvbnRleHRHZW9tZXRyeS5jcHAKQEAg
LTE1NSw3ICsxNTUsNyBAQCBMaW5lQm94IExpbmVCb3hCdWlsZGVyOjpidWlsZChjb25zdCBMaW5l
QnVpbGRlcjo6TGluZUNvbnRlbnQmIGxpbmVDb250ZW50KQogewogICAgIGF1dG8mIHJ1bnMgPSBs
aW5lQ29udGVudC5ydW5zOwogICAgIGF1dG8gbGluZUxvZ2ljYWxXaWR0aCA9IGxpbmVDb250ZW50
LmxpbmVMb2dpY2FsV2lkdGg7Ci0gICAgYXV0byBjb250ZW50TG9naWNhbFdpZHRoID0gbGluZUNv
bnRlbnQubGluZUNvbnRlbnRMb2dpY2FsV2lkdGg7CisgICAgYXV0byBjb250ZW50TG9naWNhbFdp
ZHRoID0gbGluZUNvbnRlbnQuY29udGVudExvZ2ljYWxXaWR0aDsKICAgICBhdXRvIGlzTGluZUNv
bnNpZGVyZWRFbXB0eSA9IGxpbmVDb250ZW50LmlzTGluZUNvbnNpZGVyZWRFbXB0eSA/IExpbmVC
b3g6OklzTGluZUNvbnNpZGVyZWRFbXB0eTo6WWVzIDogTGluZUJveDo6SXNMaW5lQ29uc2lkZXJl
ZEVtcHR5OjpObzsKICAgICBhdXRvIGxpbmVCb3ggPSBMaW5lQm94IHsgbGluZUNvbnRlbnQubG9n
aWNhbFRvcExlZnQsIGNvbnRlbnRMb2dpY2FsV2lkdGgsIGlzTGluZUNvbnNpZGVyZWRFbXB0eSB9
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9J
bmxpbmVMaW5lQnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2lubGluZWZvcm1hdHRp
bmcvSW5saW5lTGluZUJ1aWxkZXIuaAppbmRleCA5NzZkM2FhMWM1M2U5NDI4NDViYzcwODQxYTE2
Mzk3MDAyMGUyOTk0Li5mMDU5ZmNkMWI0NzUzNmM2NDUzNDQzMGUwY2UzOTU5Yjg2Nzc5NmU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0dGluZy9JbmxpbmVM
aW5lQnVpbGRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5n
L0lubGluZUxpbmVCdWlsZGVyLmgKQEAgLTU5LDcgKzU5LDcgQEAgcHVibGljOgogICAgICAgICBi
b29sIGhhc0ludHJ1c2l2ZUZsb2F0IHsgZmFsc2UgfTsKICAgICAgICAgSW5saW5lTGF5b3V0UG9p
bnQgbG9naWNhbFRvcExlZnQ7CiAgICAgICAgIElubGluZUxheW91dFVuaXQgbGluZUxvZ2ljYWxX
aWR0aDsKLSAgICAgICAgSW5saW5lTGF5b3V0VW5pdCBsaW5lQ29udGVudExvZ2ljYWxXaWR0aDsK
KyAgICAgICAgSW5saW5lTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbFdpZHRoOwogICAgICAgICBi
b29sIGlzTGluZUNvbnNpZGVyZWRFbXB0eSB7IHRydWUgfTsKICAgICAgICAgYm9vbCBpc0xhc3RM
aW5lV2l0aElubGluZUNvbnRlbnQgeyB0cnVlIH07CiAgICAgICAgIGNvbnN0IExpbmU6OlJ1bkxp
c3QmIHJ1bnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5lZm9ybWF0
dGluZy9JbmxpbmVMaW5lR2VvbWV0cnkuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVm
b3JtYXR0aW5nL0lubGluZUxpbmVHZW9tZXRyeS5oCmluZGV4IDM4YzEzNDc0NWUyZGRhZjNhNmU2
OTEyZjIzOTA0MTkzYzE5NzQzMTIuLjM3ZGNkM2IzMjViNjNjOWUxZDU5ZDUxOTIxYWFkYjM3YmJm
MmU5NDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVmb3JtYXR0aW5n
L0lubGluZUxpbmVHZW9tZXRyeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbmxpbmVm
b3JtYXR0aW5nL0lubGluZUxpbmVHZW9tZXRyeS5oCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFj
ZSBMYXlvdXQgewogY2xhc3MgSW5saW5lTGluZUdlb21ldHJ5IHsKICAgICBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRDsKIHB1YmxpYzoKLSAgICBJbmxpbmVMaW5lR2VvbWV0cnkoY29uc3QgSW5saW5l
UmVjdCYgbGluZUxvZ2ljYWxSZWN0LCBjb25zdCBJbmxpbmVMYXlvdXRTaXplJiBsaW5lQm94TG9n
aWNhbFNpemUsIElubGluZUxheW91dFVuaXQgYWxpZ21lbnRCYXNlbGluZSwgSW5saW5lTGF5b3V0
VW5pdCBob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KTsKKyAgICBJbmxpbmVMaW5lR2VvbWV0cnko
Y29uc3QgSW5saW5lUmVjdCYgbGluZUxvZ2ljYWxSZWN0LCBjb25zdCBJbmxpbmVMYXlvdXRTaXpl
JiBsaW5lQm94TG9naWNhbFNpemUsIElubGluZUxheW91dFVuaXQgYWxpZ21lbnRCYXNlbGluZSwg
SW5saW5lTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbExlZnRPZmZzZXQsIElubGluZUxheW91dFVu
aXQgY29udGVudExvZ2ljYWxXaWR0aCk7CiAKICAgICBJbmxpbmVMYXlvdXRVbml0IGxvZ2ljYWxM
ZWZ0KCkgY29uc3QgeyByZXR1cm4gbG9naWNhbFJlY3QoKS5sZWZ0KCk7IH07CiAgICAgSW5saW5l
TGF5b3V0VW5pdCBsb2dpY2FsUmlnaHQoKSBjb25zdCB7IHJldHVybiBsb2dpY2FsUmVjdCgpLnJp
Z2h0KCk7IH07CkBAIC01MCw3ICs1MCw5IEBAIHB1YmxpYzoKICAgICBjb25zdCBJbmxpbmVMYXlv
dXRTaXplJiBsaW5lQm94TG9naWNhbFNpemUoKSBjb25zdCB7IHJldHVybiBtX2xpbmVCb3hMb2dp
Y2FsU2l6ZTsgfQogCiAgICAgSW5saW5lTGF5b3V0VW5pdCBiYXNlbGluZSgpIGNvbnN0IHsgcmV0
dXJuIG1fYWxpZ21lbnRCYXNlbGluZTsgfQotICAgIElubGluZUxheW91dFVuaXQgaG9yaXpvbnRh
bEFsaWdubWVudE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1faG9yaXpvbnRhbEFsaWdubWVudE9m
ZnNldDsgfQorCisgICAgSW5saW5lTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbExlZnRPZmZzZXQo
KSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRMb2dpY2FsTGVmdE9mZnNldDsgfQorICAgIElubGlu
ZUxheW91dFVuaXQgY29udGVudExvZ2ljYWxXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVu
dExvZ2ljYWxXaWR0aDsgfQogCiAgICAgdm9pZCBtb3ZlVmVydGljYWxseShJbmxpbmVMYXlvdXRV
bml0IG9mZnNldCkgeyBtX2xvZ2ljYWxSZWN0Lm1vdmVWZXJ0aWNhbGx5KG9mZnNldCk7IH0KIApA
QCAtNTgsMTQgKzYwLDE2IEBAIHByaXZhdGU6CiAgICAgSW5saW5lUmVjdCBtX2xvZ2ljYWxSZWN0
OwogICAgIElubGluZUxheW91dFNpemUgbV9saW5lQm94TG9naWNhbFNpemU7CiAgICAgSW5saW5l
TGF5b3V0VW5pdCBtX2FsaWdtZW50QmFzZWxpbmUgeyAwIH07Ci0gICAgSW5saW5lTGF5b3V0VW5p
dCBtX2hvcml6b250YWxBbGlnbm1lbnRPZmZzZXQgeyAwIH07CisgICAgSW5saW5lTGF5b3V0VW5p
dCBtX2NvbnRlbnRMb2dpY2FsTGVmdE9mZnNldCB7IDAgfTsKKyAgICBJbmxpbmVMYXlvdXRVbml0
IG1fY29udGVudExvZ2ljYWxXaWR0aCB7IDAgfTsKIH07CiAKLWlubGluZSBJbmxpbmVMaW5lR2Vv
bWV0cnk6OklubGluZUxpbmVHZW9tZXRyeShjb25zdCBJbmxpbmVSZWN0JiBsaW5lTG9naWNhbFJl
Y3QsIGNvbnN0IElubGluZUxheW91dFNpemUmIGxpbmVCb3hMb2dpY2FsU2l6ZSwgSW5saW5lTGF5
b3V0VW5pdCBhbGlnbWVudEJhc2VsaW5lLCBJbmxpbmVMYXlvdXRVbml0IGhvcml6b250YWxBbGln
bm1lbnRPZmZzZXQpCitpbmxpbmUgSW5saW5lTGluZUdlb21ldHJ5OjpJbmxpbmVMaW5lR2VvbWV0
cnkoY29uc3QgSW5saW5lUmVjdCYgbGluZUxvZ2ljYWxSZWN0LCBjb25zdCBJbmxpbmVMYXlvdXRT
aXplJiBsaW5lQm94TG9naWNhbFNpemUsIElubGluZUxheW91dFVuaXQgYWxpZ21lbnRCYXNlbGlu
ZSwgSW5saW5lTGF5b3V0VW5pdCBjb250ZW50TG9naWNhbExlZnRPZmZzZXQsIElubGluZUxheW91
dFVuaXQgY29udGVudExvZ2ljYWxXaWR0aCkKICAgICA6IG1fbG9naWNhbFJlY3QobGluZUxvZ2lj
YWxSZWN0KQogICAgICwgbV9saW5lQm94TG9naWNhbFNpemUobGluZUJveExvZ2ljYWxTaXplKQog
ICAgICwgbV9hbGlnbWVudEJhc2VsaW5lKGFsaWdtZW50QmFzZWxpbmUpCi0gICAgLCBtX2hvcml6
b250YWxBbGlnbm1lbnRPZmZzZXQoaG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCkKKyAgICAsIG1f
Y29udGVudExvZ2ljYWxMZWZ0T2Zmc2V0KGNvbnRlbnRMb2dpY2FsTGVmdE9mZnNldCkKKyAgICAs
IG1fY29udGVudExvZ2ljYWxXaWR0aChjb250ZW50TG9naWNhbFdpZHRoKQogewogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRp
b25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHAKaW5kZXggZmZl
NzMzNzkyYjdlODZmY2Y2Y2U4MThhZjhmYTc4NWU4YTNhZjkyZS4uYzU4MDhiNmM0NzIxMjc3MGMz
ZTRiZjFhYTA5Yjg5NjU1ZmE4OTkwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklu
bGluZUNvbnRlbnRCdWlsZGVyLmNwcApAQCAtMzQ0LDcgKzM0NCw3IEBAIHZvaWQgSW5saW5lQ29u
dGVudEJ1aWxkZXI6OmNyZWF0ZURpc3BsYXlMaW5lcyhjb25zdCBMYXlvdXQ6OklubGluZUZvcm1h
dHRpbmdTdGF0CiAgICAgICAgICAgICBlbmNsb3NpbmdUb3BBbmRCb3R0b20udG9wID0gcm91bmRU
b0ludChlbmNsb3NpbmdUb3BBbmRCb3R0b20udG9wKTsKICAgICAgICAgICAgIGVuY2xvc2luZ1Rv
cEFuZEJvdHRvbS5ib3R0b20gPSByb3VuZFRvSW50KGVuY2xvc2luZ1RvcEFuZEJvdHRvbS5ib3R0
b20pOwogICAgICAgICB9Ci0gICAgICAgIGlubGluZUNvbnRlbnQubGluZXMuYXBwZW5kKHsgZmly
c3RSdW5JbmRleCwgcnVuQ291bnQsIGxpbmVSZWN0LCBsaW5lQm94TG9naWNhbFNpemUud2lkdGgo
KSwgZW5jbG9zaW5nVG9wQW5kQm90dG9tLCBzY3JvbGxhYmxlT3ZlcmZsb3dSZWN0LCBsaW5lSW5r
T3ZlcmZsb3dSZWN0LCBsaW5lLmJhc2VsaW5lKCksIGxpbmUuaG9yaXpvbnRhbEFsaWdubWVudE9m
ZnNldCgpIH0pOworICAgICAgICBpbmxpbmVDb250ZW50LmxpbmVzLmFwcGVuZCh7IGZpcnN0UnVu
SW5kZXgsIHJ1bkNvdW50LCBsaW5lUmVjdCwgbGluZUJveExvZ2ljYWxTaXplLndpZHRoKCksIGVu
Y2xvc2luZ1RvcEFuZEJvdHRvbSwgc2Nyb2xsYWJsZU92ZXJmbG93UmVjdCwgbGluZUlua092ZXJm
bG93UmVjdCwgbGluZS5iYXNlbGluZSgpLCBsaW5lLmNvbnRlbnRMb2dpY2FsTGVmdE9mZnNldCgp
LCBsaW5lLmNvbnRlbnRMb2dpY2FsV2lkdGgoKSB9KTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmUu
aCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxp
bmUuaAppbmRleCA5NjkwNWE4M2NhMGExNjliYTVjMjQ0NmNkYWJiMTBiYmFhMzkyZmNhLi5mOTcz
YmQ0ZDY1NWRiNTM1MjM3MmI2NzIxMGNiMTMzNTFiOGVhYjQxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZS5o
CkBAIC00MCw3ICs0MCw3IEBAIHB1YmxpYzoKICAgICAgICAgZmxvYXQgdG9wIHsgMCB9OwogICAg
ICAgICBmbG9hdCBib3R0b20geyAwIH07CiAgICAgfTsKLSAgICBMaW5lKHNpemVfdCBmaXJzdFJ1
bkluZGV4LCBzaXplX3QgcnVuQ291bnQsIGNvbnN0IEZsb2F0UmVjdCYgbGluZVJlY3QsIGZsb2F0
IGxpbmVCb3hXaWR0aCwgRW5jbG9zaW5nVG9wQW5kQm90dG9tIGVuY2xvc2luZ1RvcEFuZEJvdHRv
bSwgY29uc3QgRmxvYXRSZWN0JiBzY3JvbGxhYmxlT3ZlcmZsb3csIGNvbnN0IEZsb2F0UmVjdCYg
aW5rT3ZlcmZsb3csIGZsb2F0IGJhc2VsaW5lLCBmbG9hdCBob3Jpem9udGFsQWxpZ25tZW50T2Zm
c2V0KQorICAgIExpbmUoc2l6ZV90IGZpcnN0UnVuSW5kZXgsIHNpemVfdCBydW5Db3VudCwgY29u
c3QgRmxvYXRSZWN0JiBsaW5lUmVjdCwgZmxvYXQgbGluZUJveFdpZHRoLCBFbmNsb3NpbmdUb3BB
bmRCb3R0b20gZW5jbG9zaW5nVG9wQW5kQm90dG9tLCBjb25zdCBGbG9hdFJlY3QmIHNjcm9sbGFi
bGVPdmVyZmxvdywgY29uc3QgRmxvYXRSZWN0JiBpbmtPdmVyZmxvdywgZmxvYXQgYmFzZWxpbmUs
IGZsb2F0IGNvbnRlbnRMZWZ0T2Zmc2V0LCBmbG9hdCBjb250ZW50V2lkdGgpCiAgICAgICAgIDog
bV9maXJzdFJ1bkluZGV4KGZpcnN0UnVuSW5kZXgpCiAgICAgICAgICwgbV9ydW5Db3VudChydW5D
b3VudCkKICAgICAgICAgLCBtX2xpbmVSZWN0KGxpbmVSZWN0KQpAQCAtNDksNyArNDksOCBAQCBw
dWJsaWM6CiAgICAgICAgICwgbV9zY3JvbGxhYmxlT3ZlcmZsb3coc2Nyb2xsYWJsZU92ZXJmbG93
KQogICAgICAgICAsIG1faW5rT3ZlcmZsb3coaW5rT3ZlcmZsb3cpCiAgICAgICAgICwgbV9iYXNl
bGluZShiYXNlbGluZSkKLSAgICAgICAgLCBtX2hvcml6b250YWxBbGlnbm1lbnRPZmZzZXQoaG9y
aXpvbnRhbEFsaWdubWVudE9mZnNldCkKKyAgICAgICAgLCBtX2NvbnRlbnRMZWZ0T2Zmc2V0KGNv
bnRlbnRMZWZ0T2Zmc2V0KQorICAgICAgICAsIG1fY29udGVudFdpZHRoKGNvbnRlbnRXaWR0aCkK
ICAgICB7CiAgICAgfQogCkBAIC02Miw3ICs2Myw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBGbG9h
dFJlY3QmIHNjcm9sbGFibGVPdmVyZmxvdygpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsYWJsZU92
ZXJmbG93OyB9CiAgICAgY29uc3QgRmxvYXRSZWN0JiBpbmtPdmVyZmxvdygpIGNvbnN0IHsgcmV0
dXJuIG1faW5rT3ZlcmZsb3c7IH0KICAgICBmbG9hdCBiYXNlbGluZSgpIGNvbnN0IHsgcmV0dXJu
IG1fYmFzZWxpbmU7IH0KLSAgICBmbG9hdCBob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCkgY29u
c3QgeyByZXR1cm4gbV9ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0OyB9CisgICAgZmxvYXQgY29u
dGVudExlZnRPZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRMZWZ0T2Zmc2V0OyB9Cisg
ICAgZmxvYXQgY29udGVudFdpZHRoKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50V2lkdGg7IH0K
IAogcHJpdmF0ZToKICAgICBzaXplX3QgbV9maXJzdFJ1bkluZGV4IHsgMCB9OwpAQCAtNzcsNyAr
NzksOCBAQCBwcml2YXRlOgogICAgIEZsb2F0UmVjdCBtX3Njcm9sbGFibGVPdmVyZmxvdzsKICAg
ICBGbG9hdFJlY3QgbV9pbmtPdmVyZmxvdzsKICAgICBmbG9hdCBtX2Jhc2VsaW5lIHsgMCB9Owot
ICAgIGZsb2F0IG1faG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCB7IDAgfTsKKyAgICBmbG9hdCBt
X2NvbnRlbnRMZWZ0T2Zmc2V0IHsgMCB9OworICAgIGZsb2F0IG1fY29udGVudFdpZHRoIHsgMCB9
OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9u
L0xheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yTW9kZXJuUGF0aC5oIGIvU291cmNlL1dlYkNv
cmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yTW9kZXJu
UGF0aC5oCmluZGV4IGQ5MGI3MWIyYTQ5ZmNmMGY4Yzc3YmVhMjZjNWMwNTM5MDQ1YjgxNjguLmI2
Yjg1ZGRiMGFiNzM4ZDliZWI3ODY4ODkyNWJhYjg0N2M4Y2NkM2EgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRv
ck1vZGVyblBhdGguaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5
b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmgKQEAgLTU5LDggKzU5LDggQEAg
cHVibGljOgogICAgIExheW91dFVuaXQgc2VsZWN0aW9uVG9wRm9ySGl0VGVzdGluZygpIGNvbnN0
IHsgcmV0dXJuIHRvcCgpOyB9CiAgICAgTGF5b3V0VW5pdCBzZWxlY3Rpb25Cb3R0b20oKSBjb25z
dCB7IHJldHVybiBib3R0b20oKTsgfQogCi0gICAgZmxvYXQgY29udGVudExvZ2ljYWxMZWZ0KCkg
Y29uc3QgeyByZXR1cm4gbGluZSgpLnJlY3QoKS54KCkgKyBsaW5lKCkuaG9yaXpvbnRhbEFsaWdu
bWVudE9mZnNldCgpOyB9Ci0gICAgZmxvYXQgY29udGVudExvZ2ljYWxSaWdodCgpIGNvbnN0IHsg
cmV0dXJuIGNvbnRlbnRMb2dpY2FsTGVmdCgpICsgbGluZSgpLnJlY3QoKS53aWR0aCgpOyB9Cisg
ICAgZmxvYXQgY29udGVudExvZ2ljYWxMZWZ0KCkgY29uc3QgeyByZXR1cm4gbGluZSgpLnJlY3Qo
KS54KCkgKyBsaW5lKCkuY29udGVudExlZnRPZmZzZXQoKTsgfQorICAgIGZsb2F0IGNvbnRlbnRM
b2dpY2FsUmlnaHQoKSBjb25zdCB7IHJldHVybiBjb250ZW50TG9naWNhbExlZnQoKSArIGxpbmUo
KS5jb250ZW50V2lkdGgoKTsgfQogICAgIGZsb2F0IHkoKSBjb25zdCB7IHJldHVybiBsaW5lQm94
VG9wKCk7IH0KICAgICBmbG9hdCBsb2dpY2FsSGVpZ2h0KCkgY29uc3QgeyByZXR1cm4gbGluZSgp
LnJlY3QoKS5oZWlnaHQoKTsgfQogICAgIGJvb2wgaXNIb3Jpem9udGFsKCkgY29uc3QgeyByZXR1
cm4gdHJ1ZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9u
L0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAppbmRleCA3ZWJjY2Fj
NzhkYjhiMjM2ZTkyZjhhOTU0MDI1OWI4ZjlmMjk5YjUxLi5lMjliNTFhMGZjZDhkMTdlZWUxZTZh
YjRhZmZlZTgwMzNmYWJhOWRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcApA
QCAtNDE1LDcgKzQxNSw3IEBAIHZvaWQgTGluZUxheW91dDo6cGFpbnQoUGFpbnRJbmZvJiBwYWlu
dEluZm8sIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCkKICAgICAgICAgYXV0byBleHBh
bnNpb24gPSBydW4uZXhwYW5zaW9uKCk7CiAgICAgICAgIC8vIFRleHRSdW4gZXhwZWN0cyB0aGUg
eFBvcyB0byBiZSBhZGp1c3RlZCB3aXRoIHRoZSBhbGlnbWVudCBvZmZzZXQgKGUuZy4gd2hlbiB0
aGUgbGluZSBpcyBjZW50ZXIgYWxpZ25lZAogICAgICAgICAvLyBhbmQgdGhlIHJ1biBzdGFydHMg
YXQgMTAwcHgsIGR1ZSB0byB0aGUgaG9yaXpvbnRhbCBhbGlnbWVudCwgdGhlIHhwb3MgaXMgc3Vw
cG9zZWQgdG8gYmUgYXQgMHB4KS4KLSAgICAgICAgYXV0byB4UG9zID0gcmVjdC54KCkgLSAobGlu
ZS5yZWN0KCkueCgpICsgbGluZS5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCkpOworICAgICAg
ICBhdXRvIHhQb3MgPSByZWN0LngoKSAtIChsaW5lLnJlY3QoKS54KCkgKyBsaW5lLmNvbnRlbnRM
ZWZ0T2Zmc2V0KCkpOwogICAgICAgICBXZWJDb3JlOjpUZXh0UnVuIHRleHRSdW4geyB0ZXh0Q29u
dGVudC5yZW5kZXJlZENvbnRlbnQoKSwgeFBvcywgZXhwYW5zaW9uLmhvcml6b250YWxFeHBhbnNp
b24sIGV4cGFuc2lvbi5iZWhhdmlvciB9OwogICAgICAgICB0ZXh0UnVuLnNldFRhYlNpemUoIXN0
eWxlLmNvbGxhcHNlV2hpdGVTcGFjZSgpLCBzdHlsZS50YWJTaXplKCkpOwogICAgICAgICBGbG9h
dFBvaW50IHRleHRPcmlnaW4geyByZWN0LngoKSArIHBhaW50T2Zmc2V0LngoKSwgcm91bmRUb0Rl
dmljZVBpeGVsKGJhc2VsaW5lLCBkZXZpY2VTY2FsZUZhY3RvcikgfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0
aW9uUGFnaW5hdGlvbi5jcHAKaW5kZXggZDhmYmU3OWI3ZTRiZTY5M2M4NGU3NmQzY2M1M2UwNmRk
OGFjMjRhOS4uMTYzN2NmOTcyZmJjMTE1ODIzZWNiMjA5YjdjYzhlY2YzNjhlZjYxMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9u
UGFnaW5hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xh
eW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAKQEAgLTEzNSw3ICsxMzUsOCBAQCBzdGF0aWMg
UmVmPElubGluZUNvbnRlbnQ+IG1ha2VBZGp1c3RlZENvbnRlbnQoY29uc3QgSW5saW5lQ29udGVu
dCYgaW5saW5lQ29udGVudAogICAgICAgICAgICAgbW92ZVZlcnRpY2FsbHkobGluZS5zY3JvbGxh
YmxlT3ZlcmZsb3coKSwgb2Zmc2V0KSwKICAgICAgICAgICAgIG1vdmVWZXJ0aWNhbGx5KGxpbmUu
aW5rT3ZlcmZsb3coKSwgb2Zmc2V0KSwKICAgICAgICAgICAgIGxpbmUuYmFzZWxpbmUoKSwKLSAg
ICAgICAgICAgIGxpbmUuaG9yaXpvbnRhbEFsaWdubWVudE9mZnNldCgpCisgICAgICAgICAgICBs
aW5lLmNvbnRlbnRMZWZ0T2Zmc2V0KCksCisgICAgICAgICAgICBsaW5lLmNvbnRlbnRXaWR0aCgp
CiAgICAgICAgIH07CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0
L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uUnVuSXRlcmF0b3JNb2Rlcm5QYXRoLmggYi9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVy
YXRvck1vZGVyblBhdGguaAppbmRleCBmOTdkZDY2NjE5NGQ2N2ZiOTNkMzQ5MTg4Y2I2Y2Y2OWIw
ODZkNmQ0Li4wNzdiM2U3YTlkOTcxMTBhNTk2ZDUxNmIzYmRhNzI2ZDUyYjg5MWRiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25S
dW5JdGVyYXRvck1vZGVyblBhdGguaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvck1vZGVyblBhdGguaApAQCAtMjIxLDcg
KzIyMSw3IEBAIHByaXZhdGU6CiAgICAgICAgIGF1dG8mIHN0eWxlID0gcnVuKCkuc3R5bGUoKTsK
ICAgICAgICAgYXV0byBleHBhbnNpb24gPSBydW4oKS5leHBhbnNpb24oKTsKICAgICAgICAgYXV0
byByZWN0ID0gdGhpcy0+cmVjdCgpOwotICAgICAgICBhdXRvIHhQb3MgPSByZWN0LngoKSAtIChs
aW5lKCkucmVjdCgpLngoKSArIGxpbmUoKS5ob3Jpem9udGFsQWxpZ25tZW50T2Zmc2V0KCkpOwor
ICAgICAgICBhdXRvIHhQb3MgPSByZWN0LngoKSAtIChsaW5lKCkucmVjdCgpLngoKSArIGxpbmUo
KS5jb250ZW50TGVmdE9mZnNldCgpKTsKIAogICAgICAgICBhdXRvIHRleHRGb3JSdW4gPSBbJl0g
ewogICAgICAgICAgICAgaWYgKGh5cGhlbk1vZGUgPT0gSHlwaGVuTW9kZTo6SWdub3JlIHx8ICFo
YXNIeXBoZW4oKSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>