<?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>53639</bug_id>
          
          <creation_ts>2011-02-02 16:16:32 -0800</creation_ts>
          <short_desc>Add ChromeClient function to paint custom overhang areas</short_desc>
          <delta_ts>2011-02-02 21:30:26 -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>Frames</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>344368</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-02-02 16:16:32 -0800</bug_when>
    <thetext>Add ChromeClient function to paint custom overhang areas for the main frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344375</commentid>
    <comment_count>1</comment_count>
      <attachid>81000</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-02-02 16:19:29 -0800</bug_when>
    <thetext>Created attachment 81000
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344379</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-02 16:22:27 -0800</bug_when>
    <thetext>Attachment 81000 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:35:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Source/WebKit2/Shared/API/c/cg/WKGraphicsContextCG.h:36:  The parameter name &quot;graphicsContext&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 2 in 29 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344405</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-02-02 16:44:46 -0800</bug_when>
    <thetext>Landed in r77432.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344427</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-02 17:01:26 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/77432 might have broken SnowLeopard Intel Release (Build)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344522</commentid>
    <comment_count>5</comment_count>
      <attachid>81000</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2011-02-02 21:30:26 -0800</bug_when>
    <thetext>Comment on attachment 81000
Patch

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

I know this patch was already committed, but while briefly looking through it I noticed some minor issues.

&gt; Source/WebKit2/Shared/WebGraphicsContext.cpp:8
&gt; +/*
&gt; + *  WebGraphicsContext.cpp
&gt; + *  WebKit2
&gt; + *
&gt; + *  Created by Sam Weinig on 2/1/11.
&gt; + *  Copyright 2011 Apple Inc. All rights reserved.
&gt; + *
&gt; + */

This copyright comment follows from the standard Xcode copyright template. We should be using the Apple BSD license for this file.

&gt; Source/WebKit2/Shared/API/c/WKGraphicsContext.cpp:2
&gt; + * Copyright (C) 2010 Apple Inc. All rights reserved.

Nit: 2010 =&gt; 2011.

&gt; Source/WebKit2/Shared/API/c/WKGraphicsContext.h:2
&gt; + * Copyright (C) 2010 Apple Inc. All rights reserved.

Ditto.

&gt; Source/WebKit2/Shared/API/c/cg/WKGraphicsContextCG.cpp:2
&gt; + * Copyright (C) 2010 Apple Inc. All rights reserved.

Ditto.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81000</attachid>
            <date>2011-02-02 16:19:29 -0800</date>
            <delta_ts>2011-02-02 21:30:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patchForOVerhang.diff</filename>
            <type>text/plain</type>
            <size>41242</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc3NDI5KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTEtMDItMDIgIFNhbSBXZWlu
aWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBZGQgQ2hyb21lQ2xpZW50IGZ1bmN0aW9uIHRvIHBhaW50IGN1c3RvbSBv
dmVyaGFuZyBhcmVhcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTUzNjM5CisKKyAgICAgICAgKiBwYWdlL0Nocm9tZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDaHJvbWVDbGllbnQ6OnBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhKToKKyAgICAgICAgKiBw
YWdlL0Nocm9tZUNsaWVudC5oOgorICAgICAgICBBZGQgQ2hyb21lQ2xpZW50IGZ1bmN0aW9uLgor
CisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVW
aWV3OjpwYWludE92ZXJoYW5nQXJlYXMpOgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6Cisg
ICAgICAgIENhbGwgb3V0IHRoZSB0aGUgQ2hyb21lQ2xpZW50LCBjYWxsIFNjcm9sbFZpZXcgYmFz
ZSBpbXBsZW1lbnRhdGlvbgorICAgICAgICBpZiB0aGUgQ2hyb21lQ2xpZW50IHJldHVybnMgZmFs
c2UuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbFZpZXc6OnBhaW50T3ZlcmhhbmdBcmVhcyk6CisgICAgICAgICogcGxhdGZvcm0v
U2Nyb2xsVmlldy5oOgorICAgICAgICBBZGQgZGlydHkgcmVjdCBmb3IgdXNlIHdoZW4gcGFpbnRp
bmcgb3ZlcmhhbmcgYXJlYXMuCisKIDIwMTEtMDItMDIgIFBldGVyIEthc3RpbmcgIDxwa2FzdGlu
Z0Bnb29nbGUuY29tPgogCiAgICAgICAgIE5vdCByZXZpZXdlZCwgYnVpbGQgZml4LgpJbmRleDog
U291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BhZ2UvQ2hyb21lLmNwcAkocmV2aXNpb24gNzc0MjApCisrKyBTb3VyY2UvV2ViQ29yZS9w
YWdlL0Nocm9tZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUwMyw2ICs1MDMsMTEgQEAgYm9vbCBD
aHJvbWVDbGllbnQ6OnBhaW50Q3VzdG9tU2Nyb2xsQ29ybgogICAgIHJldHVybiBmYWxzZTsKIH0K
IAorYm9vbCBDaHJvbWVDbGllbnQ6OnBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhKEdyYXBoaWNzQ29u
dGV4dCosIGNvbnN0IEludFJlY3QmLCBjb25zdCBJbnRSZWN0JiwgY29uc3QgSW50UmVjdCYpCit7
CisgICAgcmV0dXJuIGZhbHNlOworfQorCiBib29sIENocm9tZTo6c2VsZWN0SXRlbVdyaXRpbmdE
aXJlY3Rpb25Jc05hdHVyYWwoKQogewogICAgIHJldHVybiBtX2NsaWVudC0+c2VsZWN0SXRlbVdy
aXRpbmdEaXJlY3Rpb25Jc05hdHVyYWwoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hy
b21lQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGll
bnQuaAkocmV2aXNpb24gNzc0MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVu
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTEsNiArMjExLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgdmFsdWUs
IGZsb2F0IHByb3BvcnRpb24sIFNjcm9sbGJhckNvbnRyb2xQYXJ0TWFzayk7CiAgICAgICAgIHZp
cnR1YWwgYm9vbCBwYWludEN1c3RvbVNjcm9sbENvcm5lcihHcmFwaGljc0NvbnRleHQqLCBjb25z
dCBGbG9hdFJlY3QmKTsKIAorICAgICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRDdXN0b21PdmVyaGFu
Z0FyZWEoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYsIGNvbnN0IEludFJlY3QmLCBj
b25zdCBJbnRSZWN0Jik7CisKICAgICAgICAgLy8gRklYTUU6IFJlbW92ZSBvbmNlIGFsbCBwb3J0
cyBhcmUgdXNpbmcgY2xpZW50LWJhc2VkIGdlb2xvY2F0aW9uLiBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAzNzMKICAgICAgICAgLy8gRm9yIGNsaWVudC1iYXNlZCBn
ZW9sb2NhdGlvbiwgdGhlc2UgdHdvIG1ldGhvZHMgaGF2ZSBtb3ZlZCB0byBHZW9sb2NhdGlvbkNs
aWVudC4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMDYxCiAgICAg
ICAgIC8vIFRoaXMgY2FuIGJlIGVpdGhlciBhIHN5bmNocm9ub3VzIG9yIGFzeW5jaHJvbm91cyBj
YWxsLiBUaGUgQ2hyb21lQ2xpZW50IGNhbiBkaXNwbGF5IFVJIGFza2luZyB0aGUgdXNlciBmb3Ig
cGVybWlzc2lvbgpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAkocmV2aXNpb24gNzc0
MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTIyNDQsNiArMjI0NCwyMCBAQCB2b2lkIEZyYW1lVmlldzo6c2V0Tm9kZVRvRHJhdyhOb2Rl
KiBub2RlCiAgICAgbV9ub2RlVG9EcmF3ID0gbm9kZTsKIH0KIAordm9pZCBGcmFtZVZpZXc6OnBh
aW50T3ZlcmhhbmdBcmVhcyhHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3Qm
IGhvcml6b250YWxPdmVyaGFuZ0FyZWEsIGNvbnN0IEludFJlY3QmIHZlcnRpY2FsT3ZlcmhhbmdB
cmVhLCBjb25zdCBJbnRSZWN0JiBkaXJ0eVJlY3QpCit7CisgICAgaWYgKGNvbnRleHQtPnBhaW50
aW5nRGlzYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgUGFnZSogcGFnZSA9IG1fZnJh
bWUtPnBhZ2UoKTsKKyAgICBpZiAocGFnZS0+bWFpbkZyYW1lKCkgPT0gbV9mcmFtZSkgeworICAg
ICAgICBpZiAocGFnZS0+Y2hyb21lKCktPmNsaWVudCgpLT5wYWludEN1c3RvbU92ZXJoYW5nQXJl
YShjb250ZXh0LCBob3Jpem9udGFsT3ZlcmhhbmdBcmVhLCB2ZXJ0aWNhbE92ZXJoYW5nQXJlYSwg
ZGlydHlSZWN0KSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICByZXR1cm4gU2Ny
b2xsVmlldzo6cGFpbnRPdmVyaGFuZ0FyZWFzKGNvbnRleHQsIGhvcml6b250YWxPdmVyaGFuZ0Fy
ZWEsIHZlcnRpY2FsT3ZlcmhhbmdBcmVhLCBkaXJ0eVJlY3QpOworfQorCiB2b2lkIEZyYW1lVmll
dzo6dXBkYXRlTGF5b3V0QW5kU3R5bGVJZk5lZWRlZFJlY3Vyc2l2ZSgpCiB7CiAgICAgLy8gV2Ug
aGF2ZSB0byBjcmF3bCBvdXIgZW50aXJlIHRyZWUgbG9va2luZyBmb3IgYW55IEZyYW1lVmlld3Mg
dGhhdCBuZWVkCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgJKHJldmlzaW9uIDc3NDIwKQor
KysgU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAkod29ya2luZyBjb3B5KQpAQCAtMjAy
LDYgKzIwMiw4IEBAIHB1YmxpYzoKICAgICBib29sIGlzUGFpbnRpbmcoKSBjb25zdDsKICAgICB2
b2lkIHNldE5vZGVUb0RyYXcoTm9kZSopOwogCisgICAgdmlydHVhbCB2b2lkIHBhaW50T3Zlcmhh
bmdBcmVhcyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0JiBob3Jpem9udGFsT3Zlcmhh
bmdBcmVhLCBjb25zdCBJbnRSZWN0JiB2ZXJ0aWNhbE92ZXJoYW5nQXJlYSwgY29uc3QgSW50UmVj
dCYgZGlydHlSZWN0KTsKKwogICAgIHN0YXRpYyBkb3VibGUgY3VycmVudFBhaW50VGltZVN0YW1w
KCkgeyByZXR1cm4gc0N1cnJlbnRQYWludFRpbWVTdGFtcDsgfSAvLyByZXR1cm5zIDAgaWYgbm90
IHBhaW50aW5nCiAgICAgCiAgICAgdm9pZCB1cGRhdGVMYXlvdXRBbmRTdHlsZUlmTmVlZGVkUmVj
dXJzaXZlKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAkocmV2
aXNpb24gNzc0MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtODk3LDcgKzg5Nyw3IEBAIHZvaWQgU2Nyb2xsVmlldzo6cGFpbnQo
R3JhcGhpY3NDb250ZXh0KiAKICAgICBjYWxjdWxhdGVPdmVyaGFuZ0FyZWFzRm9yUGFpbnRpbmco
aG9yaXpvbnRhbE92ZXJoYW5nUmVjdCwgdmVydGljYWxPdmVyaGFuZ1JlY3QpOwogCiAgICAgaWYg
KCFob3Jpem9udGFsT3ZlcmhhbmdSZWN0LmlzRW1wdHkoKSB8fCAhdmVydGljYWxPdmVyaGFuZ1Jl
Y3QuaXNFbXB0eSgpKQotICAgICAgICBwYWludE92ZXJoYW5nQXJlYXMoY29udGV4dCwgaG9yaXpv
bnRhbE92ZXJoYW5nUmVjdCwgdmVydGljYWxPdmVyaGFuZ1JlY3QpOworICAgICAgICBwYWludE92
ZXJoYW5nQXJlYXMoY29udGV4dCwgaG9yaXpvbnRhbE92ZXJoYW5nUmVjdCwgdmVydGljYWxPdmVy
aGFuZ1JlY3QsIHJlY3QpOwogCiAgICAgLy8gTm93IHBhaW50IHRoZSBzY3JvbGxiYXJzLgogICAg
IGlmICghbV9zY3JvbGxiYXJzU3VwcHJlc3NlZCAmJiAobV9ob3Jpem9udGFsU2Nyb2xsYmFyIHx8
IG1fdmVydGljYWxTY3JvbGxiYXIpKSB7CkBAIC05NDksNyArOTQ5LDcgQEAgdm9pZCBTY3JvbGxW
aWV3OjpjYWxjdWxhdGVPdmVyaGFuZ0FyZWFzRgogICAgIH0KIH0KIAotdm9pZCBTY3JvbGxWaWV3
OjpwYWludE92ZXJoYW5nQXJlYXMoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBJbnRS
ZWN0JiBob3Jpem9udGFsT3ZlcmhhbmdSZWN0LCBjb25zdCBJbnRSZWN0JiB2ZXJ0aWNhbE92ZXJo
YW5nUmVjdCkKK3ZvaWQgU2Nyb2xsVmlldzo6cGFpbnRPdmVyaGFuZ0FyZWFzKEdyYXBoaWNzQ29u
dGV4dCogY29udGV4dCwgY29uc3QgSW50UmVjdCYgaG9yaXpvbnRhbE92ZXJoYW5nUmVjdCwgY29u
c3QgSW50UmVjdCYgdmVydGljYWxPdmVyaGFuZ1JlY3QsIGNvbnN0IEludFJlY3QmKQogewogICAg
IC8vIEZJWE1FOiBUaGlzIHNob3VsZCBiZSBjaGVja2luZyB0aGUgZGlydHkgcmVjdC4KIApJbmRl
eDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAkocmV2aXNpb24gNzc0MjApCisrKyBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgJKHdvcmtpbmcgY29weSkKQEAgLTI4
MCw2ICsyODAsOSBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIHJlcGFpbnRDb250ZW50
UmVjdGFuZ2xlKGNvbnN0IEludFJlY3QmLCBib29sIG5vdyA9IGZhbHNlKTsKICAgICB2aXJ0dWFs
IHZvaWQgcGFpbnRDb250ZW50cyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0JiBkYW1h
Z2VSZWN0KSA9IDA7CiAKKyAgICB2b2lkIGNhbGN1bGF0ZU92ZXJoYW5nQXJlYXNGb3JQYWludGlu
ZyhJbnRSZWN0JiBob3Jpem9udGFsT3ZlcmhhbmdSZWN0LCBJbnRSZWN0JiB2ZXJ0aWNhbE92ZXJo
YW5nUmVjdCk7CisgICAgdmlydHVhbCB2b2lkIHBhaW50T3ZlcmhhbmdBcmVhcyhHcmFwaGljc0Nv
bnRleHQqLCBjb25zdCBJbnRSZWN0JiBob3Jpem9udGFsT3ZlcmhhbmdBcmVhLCBjb25zdCBJbnRS
ZWN0JiB2ZXJ0aWNhbE92ZXJoYW5nQXJlYSwgY29uc3QgSW50UmVjdCYgZGlydHlSZWN0KTsKKwog
ICAgIHZpcnR1YWwgdm9pZCBjb250ZW50c1Jlc2l6ZWQoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IHZpc2libGVDb250ZW50c1Jlc2l6ZWQoKSA9IDA7CiAKQEAgLTM2MSw5ICszNjQsNiBAQCBwcml2
YXRlOgogICAgIC8vIENhbGxlZCB3aGVuIHRoZSBzY3JvbGwgcG9zaXRpb24gd2l0aGluIHRoaXMg
dmlldyBjaGFuZ2VzLiAgRnJhbWVWaWV3IG92ZXJyaWRlcyB0aGlzIHRvIGdlbmVyYXRlIHJlcGFp
bnQgaW52YWxpZGF0aW9ucy4KICAgICB2aXJ0dWFsIHZvaWQgcmVwYWludEZpeGVkRWxlbWVudHNB
ZnRlclNjcm9sbGluZygpIHt9CiAKLSAgICB2b2lkIGNhbGN1bGF0ZU92ZXJoYW5nQXJlYXNGb3JQ
YWludGluZyhJbnRSZWN0JiBob3Jpem9udGFsT3ZlcmhhbmdSZWN0LCBJbnRSZWN0JiB2ZXJ0aWNh
bE92ZXJoYW5nUmVjdCk7Ci0gICAgdm9pZCBwYWludE92ZXJoYW5nQXJlYXMoR3JhcGhpY3NDb250
ZXh0KiwgY29uc3QgSW50UmVjdCYgaG9yaXpvbnRhbE92ZXJoYW5nQXJlYSwgY29uc3QgSW50UmVj
dCYgdmVydGljYWxPdmVyaGFuZ0FyZWEpOwotCiAgICAgdm9pZCBwbGF0Zm9ybUluaXQoKTsKICAg
ICB2b2lkIHBsYXRmb3JtRGVzdHJveSgpOwogICAgIHZvaWQgcGxhdGZvcm1BZGRDaGlsZChXaWRn
ZXQqKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDc3NDI5KQorKysgU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDUgQEAKKzIwMTEtMDItMDIgIFNh
bSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGQgQ2hyb21lQ2xpZW50IGZ1bmN0aW9uIHRvIHBhaW50IGN1
c3RvbSBvdmVyaGFuZyBhcmVhcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUzNjM5CisKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvV0tCYXNlLmg6Cisg
ICAgICAgICogU2hhcmVkL0FQSS9jL1dLR3JhcGhpY3NDb250ZXh0LmNwcDogQWRkZWQuCisgICAg
ICAgIChXS0dyYXBoaWNzQ29udGV4dEdldFR5cGVJRCk6CisgICAgICAgICogU2hhcmVkL0FQSS9j
L1dLR3JhcGhpY3NDb250ZXh0Lmg6IEFkZGVkLgorICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS1No
YXJlZEFQSUNhc3QuaDoKKyAgICAgICAgKiBTaGFyZWQvQVBJL2MvY2cvV0tHcmFwaGljc0NvbnRl
eHRDRy5jcHA6IEFkZGVkLgorICAgICAgICAoV0tHcmFwaGljc0NvbnRleHRHZXRDR0NvbnRleHQp
OgorICAgICAgICAqIFNoYXJlZC9BUEkvYy9jZy9XS0dyYXBoaWNzQ29udGV4dENHLmg6IEFkZGVk
LgorICAgICAgICAqIFNoYXJlZC9BUElPYmplY3QuaDoKKyAgICAgICAgKiBTaGFyZWQvV2ViR3Jh
cGhpY3NDb250ZXh0LmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OldlYkdyYXBoaWNzQ29u
dGV4dDo6V2ViR3JhcGhpY3NDb250ZXh0KToKKyAgICAgICAgKiBTaGFyZWQvV2ViR3JhcGhpY3ND
b250ZXh0Lmg6IEFkZGVkLgorICAgICAgICAoV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQ6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDo6cGxhdGZvcm1Db250
ZXh0KToKKyAgICAgICAgKFdlYktpdDo6V2ViR3JhcGhpY3NDb250ZXh0Ojp0eXBlKToKKyAgICAg
ICAgQWRkIFdlYkdyYXBoaWNzQ29udGV4dCBBUEkgdHlwZS4KKworICAgICAgICAqIFdlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmg6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50OjpwYWdlRGlkU2Nyb2xsKToK
KyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQ6OnNob3VsZFBhaW50
Q3VzdG9tT3ZlcmhhbmdBcmVhKToKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdl
VUlDbGllbnQ6OnBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhKToKKyAgICAgICAgKiBXZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50Lmg6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOgorICAgICAg
ICBQaXBlIHBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhIHRvIHRoZSBJbmplY3RlZEJ1bmRsZVBhZ2VV
SUNsaWVudC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XZWJLaXQyLmg6CisgICAgICAg
ICogV2ViS2l0Mi5wcm86CisgICAgICAgICogV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIHdpbi9XZWJLaXQyLnZjcHJvajoKKyAgICAgICAgKiB3aW4vV2ViS2l0
MkdlbmVyYXRlZC5tYWtlOgorICAgICAgICBBZGQgbmV3IGZpbGVzLgorCiAyMDExLTAyLTAyICBN
YXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IHRoZSAzMi1iaXQgYnVp
bGQuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnBybwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9XZWJLaXQyLnBybwkocmV2aXNpb24gNzc0MjApCisrKyBTb3VyY2UvV2ViS2l0
Mi9XZWJLaXQyLnBybwkod29ya2luZyBjb3B5KQpAQCAtMjM0LDYgKzIzNCw3IEBAIEhFQURFUlMg
Kz0gXAogICAgIFNoYXJlZC9BUEkvYy9XS0NvbnRleHRNZW51SXRlbS5oIFwKICAgICBTaGFyZWQv
QVBJL2MvV0tDb250ZXh0TWVudUl0ZW1UeXBlcy5oIFwKICAgICBTaGFyZWQvQVBJL2MvV0tHZW9t
ZXRyeS5oIFwKKyAgICBTaGFyZWQvQVBJL2MvV0tHcmFwaGljc0NvbnRleHQuaCBcCiAgICAgU2hh
cmVkL0FQSS9jL1dLSW1hZ2UuaCBcCiAgICAgU2hhcmVkL0FQSS9jL1dLTnVtYmVyLmggXAogICAg
IFNoYXJlZC9BUEkvYy9XS1BhZ2VMb2FkVHlwZXMuaCBcCkBAIC0yNzYsNiArMjc3LDcgQEAgSEVB
REVSUyArPSBcCiAgICAgU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5oIFwKICAgICBTaGFyZWQv
V2ViRmluZE9wdGlvbnMuaCBcCiAgICAgU2hhcmVkL1dlYkdlb2xvY2F0aW9uUG9zaXRpb24uaCBc
CisgICAgU2hhcmVkL1dlYkdyYXBoaWNzQ29udGV4dC5oIFwKICAgICBTaGFyZWQvV2ViSW1hZ2Uu
aCBcCiAgICAgU2hhcmVkL1dlYk5hdmlnYXRpb25EYXRhU3RvcmUuaCBcCiAgICAgU2hhcmVkL1dl
Yk51bWJlci5oIFwKQEAgLTQ2Nyw2ICs0NjksNyBAQCBTT1VSQ0VTICs9IFwKICAgICBTaGFyZWQv
QVBJL2MvV0tBcnJheS5jcHAgXAogICAgIFNoYXJlZC9BUEkvYy9XS0NlcnRpZmljYXRlSW5mby5j
cHAgXAogICAgIFNoYXJlZC9BUEkvYy9XS0NvbnRleHRNZW51SXRlbS5jcHAgXAorICAgIFNoYXJl
ZC9BUEkvYy9XS0dyYXBoaWNzQ29udGV4dC5jcHAgXAogICAgIFNoYXJlZC9BUEkvYy9XS0ltYWdl
LmNwcCBcCiAgICAgU2hhcmVkL0FQSS9jL1dLTnVtYmVyLmNwcCBcCiAgICAgU2hhcmVkL0FQSS9j
L1dLU2VjdXJpdHlPcmlnaW4uY3BwIFwKQEAgLTQ5Nyw2ICs1MDAsNyBAQCBTT1VSQ0VTICs9IFwK
ICAgICBTaGFyZWQvV2ViRXZlbnQuY3BwIFwKICAgICBTaGFyZWQvV2ViRXZlbnRDb252ZXJzaW9u
LmNwcCBcCiAgICAgU2hhcmVkL1dlYkdlb2xvY2F0aW9uUG9zaXRpb24uY3BwIFwKKyAgICBTaGFy
ZWQvV2ViR3JhcGhpY3NDb250ZXh0LmNwcCBcCiAgICAgU2hhcmVkL1dlYktleWJvYXJkRXZlbnQu
Y3BwIFwKICAgICBTaGFyZWQvV2ViSW1hZ2UuY3BwIFwKICAgICBTaGFyZWQvV2ViTW91c2VFdmVu
dC5jcHAgXApJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSU9iamVjdC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUElPYmplY3QuaAkocmV2aXNpb24gNzc0MjAp
CisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJT2JqZWN0LmgJKHdvcmtpbmcgY29weSkKQEAg
LTQ0LDYgKzQ0LDcgQEAgcHVibGljOgogICAgICAgICBUeXBlRGF0YSwKICAgICAgICAgVHlwZURp
Y3Rpb25hcnksCiAgICAgICAgIFR5cGVFcnJvciwKKyAgICAgICAgVHlwZUdyYXBoaWNzQ29udGV4
dCwKICAgICAgICAgVHlwZUltYWdlLAogICAgICAgICBUeXBlUHJvdGVjdGlvblNwYWNlLAogICAg
ICAgICBUeXBlU2VjdXJpdHlPcmlnaW4sCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
R3JhcGhpY3NDb250ZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViR3JhcGhpY3NDb250ZXh0LmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJLaXQyL1No
YXJlZC9XZWJHcmFwaGljc0NvbnRleHQuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBA
CisvKgorICogIFdlYkdyYXBoaWNzQ29udGV4dC5jcHAKKyAqICBXZWJLaXQyCisgKgorICogIENy
ZWF0ZWQgYnkgU2FtIFdlaW5pZyBvbiAyLzEvMTEuCisgKiAgQ29weXJpZ2h0IDIwMTEgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgi
CisjaW5jbHVkZSAiV2ViR3JhcGhpY3NDb250ZXh0LmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOworCituYW1lc3BhY2UgV2ViS2l0IHsKKworV2ViR3JhcGhpY3NDb250ZXh0OjpXZWJHcmFw
aGljc0NvbnRleHQoR3JhcGhpY3NDb250ZXh0KiBncmFwaGljc0NvbnRleHQpCisjaWYgUExBVEZP
Uk0oQ0cpCisgICAgOiBtX3BsYXRmb3JtQ29udGV4dChncmFwaGljc0NvbnRleHQtPnBsYXRmb3Jt
Q29udGV4dCgpKQorI2VuZGlmCit7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDog
U291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkdyYXBoaWNzQ29udGV4dC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJHcmFwaGljc0NvbnRleHQuaAkocmV2aXNpb24gMCkK
KysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJHcmFwaGljc0NvbnRleHQuaAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw2NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgV2ViR3JhcGhpY3NDb250
ZXh0X2gKKyNkZWZpbmUgV2ViR3JhcGhpY3NDb250ZXh0X2gKKworI2luY2x1ZGUgIkFQSU9iamVj
dC5oIgorI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0Lmg+CisjaW5jbHVkZSA8d3Rm
L1Bhc3NSZWZQdHIuaD4KKworI2lmIFBMQVRGT1JNKENHKQorI2luY2x1ZGUgPHd0Zi9SZXRhaW5Q
dHIuaD4KKyNlbmRpZgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgV2ViR3JhcGhpY3ND
b250ZXh0IDogcHVibGljIEFQSU9iamVjdCB7CitwdWJsaWM6CisgICAgc3RhdGljIGNvbnN0IFR5
cGUgQVBJVHlwZSA9IFR5cGVHcmFwaGljc0NvbnRleHQ7CisKKyAgICBzdGF0aWMgUGFzc1JlZlB0
cjxXZWJHcmFwaGljc0NvbnRleHQ+IGNyZWF0ZShXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQqIGdy
YXBoaWNzQ29udGV4dCkKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgV2ViR3Jh
cGhpY3NDb250ZXh0KGdyYXBoaWNzQ29udGV4dCkpOworICAgIH0KKworI2lmIFBMQVRGT1JNKENH
KQorICAgIENHQ29udGV4dFJlZiBwbGF0Zm9ybUNvbnRleHQoKSB7IHJldHVybiBtX3BsYXRmb3Jt
Q29udGV4dC5nZXQoKTsgfQorI2VuZGlmCisKK3ByaXZhdGU6CisgICAgZXhwbGljaXQgV2ViR3Jh
cGhpY3NDb250ZXh0KFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dCopOworCisgICAgdmlydHVhbCBU
eXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBBUElUeXBlOyB9CisKKyNpZiBQTEFURk9STShDRykK
KyAgICBSZXRhaW5QdHI8Q0dDb250ZXh0UmVmPiBtX3BsYXRmb3JtQ29udGV4dDsKKyNlbmRpZgor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRpZiAvLyBXZWJHcmFwaGljc0NvbnRl
eHRfaApJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLQmFzZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0Jhc2UuaAkocmV2aXNpb24gNzc0
MjApCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tCYXNlLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTQ5LDYgKzQ5LDcgQEAgdHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tDb250ZXh0
TWVudQogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tEYXRhKiBXS0RhdGFSZWY7CiB0eXBl
ZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS0RvdWJsZSogV0tEb3VibGVSZWY7CiB0eXBlZGVmIGNv
bnN0IHN0cnVjdCBPcGFxdWVXS0Vycm9yKiBXS0Vycm9yUmVmOwordHlwZWRlZiBjb25zdCBzdHJ1
Y3QgT3BhcXVlV0tHcmFwaGljc0NvbnRleHQqIFdLR3JhcGhpY3NDb250ZXh0UmVmOwogdHlwZWRl
ZiBjb25zdCBzdHJ1Y3QgT3BhcXVlV0tJbWFnZSogV0tJbWFnZVJlZjsKIHR5cGVkZWYgY29uc3Qg
c3RydWN0IE9wYXF1ZVdLU2VjdXJpdHlPcmlnaW4qIFdLU2VjdXJpdHlPcmlnaW5SZWY7CiB0eXBl
ZGVmIGNvbnN0IHN0cnVjdCBPcGFxdWVXS1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZSogV0tTZXJpYWxp
emVkU2NyaXB0VmFsdWVSZWY7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tH
cmFwaGljc0NvbnRleHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UEkvYy9XS0dyYXBoaWNzQ29udGV4dC5jcHAJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvQVBJL2MvV0tHcmFwaGljc0NvbnRleHQuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDM3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldL
R3JhcGhpY3NDb250ZXh0LmgiCisKKyNpbmNsdWRlICJXS1NoYXJlZEFQSUNhc3QuaCIKKyNpbmNs
dWRlICJXZWJHcmFwaGljc0NvbnRleHQuaCIKKwordXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKKwor
V0tUeXBlSUQgV0tHcmFwaGljc0NvbnRleHRHZXRUeXBlSUQoKQoreworICAgIHJldHVybiB0b0FQ
SShXZWJHcmFwaGljc0NvbnRleHQ6OkFQSVR5cGUpOworfQpJbmRleDogU291cmNlL1dlYktpdDIv
U2hhcmVkL0FQSS9jL1dLR3JhcGhpY3NDb250ZXh0LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSS9jL1dLR3JhcGhpY3NDb250ZXh0LmgJKHJldmlzaW9uIDApCisrKyBT
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tHcmFwaGljc0NvbnRleHQuaAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgV0tHcmFwaGljc0NvbnRl
eHRfaAorI2RlZmluZSBXS0dyYXBoaWNzQ29udGV4dF9oCisKKyNpbmNsdWRlIDxXZWJLaXQyL1dL
QmFzZS5oPgorCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2VuZGlmCisKK1dL
X0VYUE9SVCBXS1R5cGVJRCBXS0dyYXBoaWNzQ29udGV4dEdldFR5cGVJRCgpOworCisjaWZkZWYg
X19jcGx1c3BsdXMKK30KKyNlbmRpZgorCisjZW5kaWYgLyogV0tHcmFwaGljc0NvbnRleHRfaCAq
LwpJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNhc3Qu
aAkocmV2aXNpb24gNzc0MjApCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFy
ZWRBUElDYXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTU2LDYgKzU2LDcgQEAgY2xhc3MgTXV0YWJs
ZURpY3Rpb25hcnk7CiBjbGFzcyBXZWJDZXJ0aWZpY2F0ZUluZm87CiBjbGFzcyBXZWJDb250ZXh0
TWVudUl0ZW07CiBjbGFzcyBXZWJEYXRhOworY2xhc3MgV2ViR3JhcGhpY3NDb250ZXh0OwogY2xh
c3MgV2ViSW1hZ2U7CiBjbGFzcyBXZWJTZWN1cml0eU9yaWdpbjsKIGNsYXNzIFdlYlNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZTsKQEAgLTc4LDYgKzc5LDcgQEAgV0tfQUREX0FQSV9NQVBQSU5HKFdLRGF0
YVJlZiwgV2ViRGF0YSkKIFdLX0FERF9BUElfTUFQUElORyhXS0RpY3Rpb25hcnlSZWYsIEltbXV0
YWJsZURpY3Rpb25hcnkpCiBXS19BRERfQVBJX01BUFBJTkcoV0tEb3VibGVSZWYsIFdlYkRvdWJs
ZSkKIFdLX0FERF9BUElfTUFQUElORyhXS0Vycm9yUmVmLCBXZWJFcnJvcikKK1dLX0FERF9BUElf
TUFQUElORyhXS0dyYXBoaWNzQ29udGV4dFJlZiwgV2ViR3JhcGhpY3NDb250ZXh0KQogV0tfQURE
X0FQSV9NQVBQSU5HKFdLSW1hZ2VSZWYsIFdlYkltYWdlKQogV0tfQUREX0FQSV9NQVBQSU5HKFdL
TXV0YWJsZUFycmF5UmVmLCBNdXRhYmxlQXJyYXkpCiBXS19BRERfQVBJX01BUFBJTkcoV0tNdXRh
YmxlRGljdGlvbmFyeVJlZiwgTXV0YWJsZURpY3Rpb25hcnkpCkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvQVBJL2MvY2cvV0tHcmFwaGljc0NvbnRleHRDRy5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL2NnL1dLR3JhcGhpY3NDb250ZXh0Q0cuY3BwCShy
ZXZpc2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL2NnL1dLR3JhcGhpY3ND
b250ZXh0Q0cuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV0tHcmFwaGljc0NvbnRleHRDRy5oIgor
CisjaW5jbHVkZSAiV0tTaGFyZWRBUElDYXN0LmgiCisjaW5jbHVkZSAiV2ViR3JhcGhpY3NDb250
ZXh0LmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CisKK0NHQ29udGV4dFJlZiBXS0dyYXBo
aWNzQ29udGV4dEdldENHQ29udGV4dChXS0dyYXBoaWNzQ29udGV4dFJlZiBncmFwaGljc0NvbnRl
eHRSZWYpCit7CisgICAgcmV0dXJuIHRvSW1wbChncmFwaGljc0NvbnRleHRSZWYpLT5wbGF0Zm9y
bUNvbnRleHQoKTsKK30KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9jZy9XS0dy
YXBoaWNzQ29udGV4dENHLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL0FQ
SS9jL2NnL1dLR3JhcGhpY3NDb250ZXh0Q0cuaAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJL
aXQyL1NoYXJlZC9BUEkvYy9jZy9XS0dyYXBoaWNzQ29udGV4dENHLmgJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFdLR3JhcGhpY3NDb250ZXh0Q0df
aAorI2RlZmluZSBXS0dyYXBoaWNzQ29udGV4dENHX2gKKworI2luY2x1ZGUgPENvcmVHcmFwaGlj
cy9DR0NvbnRleHQuaD4KKyNpbmNsdWRlIDxXZWJLaXQyL1dLQmFzZS5oPgorCisjaWZkZWYgX19j
cGx1c3BsdXMKK2V4dGVybiAiQyIgeworI2VuZGlmCisKK1dLX0VYUE9SVCBDR0NvbnRleHRSZWYg
V0tHcmFwaGljc0NvbnRleHRHZXRDR0NvbnRleHQoV0tHcmFwaGljc0NvbnRleHRSZWYgZ3JhcGhp
Y3NDb250ZXh0KTsKKworI2lmZGVmIF9fY3BsdXNwbHVzCit9CisjZW5kaWYKKworI2VuZGlmIC8q
IFdLR3JhcGhpY3NDb250ZXh0Q0dfaCAqLwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9DL1dlYktpdDIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0MvV2ViS2l0Mi5oCShyZXZpc2lvbiA3NzQyMCkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XZWJLaXQyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQyLDYgKzQyLDcgQEAKICNp
bmNsdWRlIDxXZWJLaXQyL1dLR2VvbG9jYXRpb25NYW5hZ2VyLmg+CiAjaW5jbHVkZSA8V2ViS2l0
Mi9XS0dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3QuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dL
R2VvbG9jYXRpb25Qb3NpdGlvbi5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tHcmFwaGljc0NvbnRl
eHQuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLTXV0YWJsZUFycmF5Lmg+CiAjaW5jbHVkZSA8V2Vi
S2l0Mi9XS011dGFibGVEaWN0aW9uYXJ5Lmg+CiAjaW5jbHVkZSA8V2ViS2l0Mi9XS05hdmlnYXRp
b25EYXRhLmg+CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA3NzQyMCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYktp
dDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNTUxLDYgKzU1
MSwxMiBAQAogCQlCQ0EwRUY4MDEyMzMxRTc4MDA3RDNDRkIgLyogV2ViRWRpdENvbW1hbmQuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNBMEVGN0Ux
MjMzMUU3ODAwN0QzQ0ZCIC8qIFdlYkVkaXRDb21tYW5kLmNwcCAqLzsgfTsKIAkJQkNBMEVGOUYx
MjMzMjY0MjAwN0QzQ0ZCIC8qIFdlYkVkaXRDb21tYW5kUHJveHkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTBFRjlEMTIzMzI2NDIwMDdEM0NGQiAv
KiBXZWJFZGl0Q29tbWFuZFByb3h5LmggKi87IH07CiAJCUJDQTBFRkEwMTIzMzI2NDIwMDdEM0NG
QiAvKiBXZWJFZGl0Q29tbWFuZFByb3h5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTBFRjlFMTIzMzI2NDIwMDdEM0NGQiAvKiBXZWJFZGl0Q29t
bWFuZFByb3h5LmNwcCAqLzsgfTsKKwkJQkNBNTZBMUMxMkY5MDI4RTAwQzU2NkM3IC8qIFdlYkdy
YXBoaWNzQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkNBNTZBMUExMkY5MDI4RTAwQzU2NkM3IC8qIFdlYkdyYXBoaWNzQ29udGV4dC5oICov
OyB9OworCQlCQ0E1NkExRDEyRjkwMjhFMDBDNTY2QzcgLyogV2ViR3JhcGhpY3NDb250ZXh0LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTU2QTFC
MTJGOTAyOEUwMEM1NjZDNyAvKiBXZWJHcmFwaGljc0NvbnRleHQuY3BwICovOyB9OworCQlCQ0E1
NkE2NTEyRjlDOEY5MDBDNTY2QzcgLyogV0tHcmFwaGljc0NvbnRleHQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTU2QTYzMTJGOUM4RjkwMEM1NjZD
NyAvKiBXS0dyYXBoaWNzQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1
YmxpYywgKTsgfTsgfTsKKwkJQkNBNTZBNjYxMkY5QzhGOTAwQzU2NkM3IC8qIFdLR3JhcGhpY3ND
b250ZXh0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDQTU2QTY0MTJGOUM4RjkwMEM1NjZDNyAvKiBXS0dyYXBoaWNzQ29udGV4dC5jcHAgKi87IH07
CisJCUJDQTU2QTY5MTJGOUM5QUQwMEM1NjZDNyAvKiBXS0dyYXBoaWNzQ29udGV4dENHLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0E1NkE2NzEyRjlD
OUFEMDBDNTY2QzcgLyogV0tHcmFwaGljc0NvbnRleHRDRy5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKKwkJQkNBNTZBNkExMkY5QzlBRDAwQzU2NkM3IC8q
IFdLR3JhcGhpY3NDb250ZXh0Q0cuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkNBNTZBNjgxMkY5QzlBRDAwQzU2NkM3IC8qIFdLR3JhcGhpY3NDb250
ZXh0Q0cuY3BwICovOyB9OwogCQlCQ0E4QzZBODExRTNCQTVGMDA4MTJGQjcgLyogSW5qZWN0ZWRC
dW5kbGVQYWdlTG9hZGVyQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDQThDNkE2MTFFM0JBNUYwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRs
ZVBhZ2VMb2FkZXJDbGllbnQuY3BwICovOyB9OwogCQlCQ0E4QzZBOTExRTNCQTVGMDA4MTJGQjcg
LyogSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0E4QzZBNzExRTNCQTVGMDA4MTJGQjcgLyogSW5q
ZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50LmggKi87IH07CiAJCUJDQThDNkFGMTFFM0MwODcw
MDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0E4QzZBRDExRTNDMDg3MDA4MTJGQjcg
LyogSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQuY3BwICovOyB9OwpAQCAtMTMxNiw2ICsxMzIy
LDEyIEBACiAJCUJDQTBFRjdFMTIzMzFFNzgwMDdEM0NGQiAvKiBXZWJFZGl0Q29tbWFuZC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJFZGl0Q29tbWFuZC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDQTBFRjlEMTIzMzI2NDIwMDdEM0NGQiAv
KiBXZWJFZGl0Q29tbWFuZFByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdlYkVkaXRDb21tYW5kUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNB
MEVGOUUxMjMzMjY0MjAwN0QzQ0ZCIC8qIFdlYkVkaXRDb21tYW5kUHJveHkuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViRWRpdENvbW1hbmRQcm94eS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQTU2QTFBMTJGOTAyOEUwMEM1NjZDNyAvKiBX
ZWJHcmFwaGljc0NvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vi
R3JhcGhpY3NDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQTU2QTFC
MTJGOTAyOEUwMEM1NjZDNyAvKiBXZWJHcmFwaGljc0NvbnRleHQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR3JhcGhpY3NDb250ZXh0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBNTZBNjMxMkY5QzhGOTAwQzU2NkM3IC8qIFdLR3JhcGhp
Y3NDb250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLR3JhcGhpY3ND
b250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQTU2QTY0MTJGOUM4Rjkw
MEM1NjZDNyAvKiBXS0dyYXBoaWNzQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBXS0dyYXBoaWNzQ29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDQTU2QTY3MTJGOUM5QUQwMEM1NjZDNyAvKiBXS0dyYXBoaWNzQ29udGV4dENH
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLR3JhcGhpY3NDb250ZXh0Q0cu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBNTZBNjgxMkY5QzlBRDAwQzU2NkM3
IC8qIFdLR3JhcGhpY3NDb250ZXh0Q0cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV0tHcmFwaGljc0NvbnRleHRDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUJDQThDNkE2MTFFM0JBNUYwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VMb2Fk
ZXJDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5qZWN0
ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQkNBOEM2QTcxMUUzQkE1RjAwODEyRkI3IC8qIEluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNs
aWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmplY3RlZEJ1bmRsZVBh
Z2VMb2FkZXJDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNBOEM2QUQx
MUUzQzA4NzAwODEyRkI3IC8qIEluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE4MzksNiArMTg1MSw4IEBACiAJ
CQkJMUE5MEMxRUQxMjY0RkQ1MDAwM0U0NEQ0IC8qIFdlYkZpbmRPcHRpb25zLmggKi8sCiAJCQkJ
QkMwRTYwNzIxMkQ2QkMyMDAwMTJBNzJBIC8qIFdlYkdlb2xvY2F0aW9uUG9zaXRpb24uY3BwICov
LAogCQkJCUJDMEU2MDcxMTJENkJDMjAwMDEyQTcyQSAvKiBXZWJHZW9sb2NhdGlvblBvc2l0aW9u
LmggKi8sCisJCQkJQkNBNTZBMUIxMkY5MDI4RTAwQzU2NkM3IC8qIFdlYkdyYXBoaWNzQ29udGV4
dC5jcHAgKi8sCisJCQkJQkNBNTZBMUExMkY5MDI4RTAwQzU2NkM3IC8qIFdlYkdyYXBoaWNzQ29u
dGV4dC5oICovLAogCQkJCUJDQ0Y2QUJBMTJDOTFFRjkwMDhGOUMzNSAvKiBXZWJJbWFnZS5jcHAg
Ki8sCiAJCQkJQkNDRjZBQkIxMkM5MUVGOTAwOEY5QzM1IC8qIFdlYkltYWdlLmggKi8sCiAJCQkJ
QzAzMzdERDIxMjdBMkEwRTAwOEZGNEY0IC8qIFdlYktleWJvYXJkRXZlbnQuY3BwICovLApAQCAt
MjYyMiw2ICsyNjM2LDggQEAKIAkJQkNDRjZBQzQxMkM5MUYzQjAwOEY5QzM1IC8qIGNnICovID0g
ewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQlCQ0E1NkE2ODEyRjlD
OUFEMDBDNTY2QzcgLyogV0tHcmFwaGljc0NvbnRleHRDRy5jcHAgKi8sCisJCQkJQkNBNTZBNjcx
MkY5QzlBRDAwQzU2NkM3IC8qIFdLR3JhcGhpY3NDb250ZXh0Q0cuaCAqLywKIAkJCQlCQ0NGNkFD
NzEyQzkxRjU5MDA4RjlDMzUgLyogV0tJbWFnZUNHLmNwcCAqLywKIAkJCQlCQ0NGNkFDODEyQzkx
RjU5MDA4RjlDMzUgLyogV0tJbWFnZUNHLmggKi8sCiAJCQkpOwpAQCAtMjY1OSw2ICsyNjc1LDgg
QEAKIAkJCQlCQzQwNzgzQzEyNTBGQUREMDA2OEYyMEEgLyogV0tFdmVudC5oICovLAogCQkJCTM3
RjYyM0I3MTJBNTdCNjIwMEUzRkRGNiAvKiBXS0ZpbmRPcHRpb25zLmggKi8sCiAJCQkJQkNDOEIz
NzMxMjVGQjY5MDAwREU0NkE0IC8qIFdLR2VvbWV0cnkuaCAqLywKKwkJCQlCQ0E1NkE2NDEyRjlD
OEY5MDBDNTY2QzcgLyogV0tHcmFwaGljc0NvbnRleHQuY3BwICovLAorCQkJCUJDQTU2QTYzMTJG
OUM4RjkwMEM1NjZDNyAvKiBXS0dyYXBoaWNzQ29udGV4dC5oICovLAogCQkJCUJDQ0Y2QUMwMTJD
OTFGMzQwMDhGOUMzNSAvKiBXS0ltYWdlLmNwcCAqLywKIAkJCQlCQ0NGNkFDMTEyQzkxRjM0MDA4
RjlDMzUgLyogV0tJbWFnZS5oICovLAogCQkJCUJDNDA3NUUxMTI0RkYwMjcwMDY4RjIwQSAvKiBX
S011dGFibGVBcnJheS5jcHAgKi8sCkBAIC0zMTI2LDYgKzMxNDQsOSBAQAogCQkJCTFBOTYzOUY3
MTJGMzhFQ0QwMDc4QTA2MiAvKiBDb3JlQW5pbWF0aW9uUmVuZGVyZXIuaCBpbiBIZWFkZXJzICov
LAogCQkJCTFBNjkwRDE3MTJGMzlFMzMwMEVDRDI4OSAvKiBMYXllclRyZWVIb3N0TWFjLmggaW4g
SGVhZGVycyAqLywKIAkJCQkxQTkyREMxMTEyRjhCQTQ2MDAxN0FGNjUgLyogTGF5ZXJUcmVlQ29u
dGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNBNTZBMUMxMkY5MDI4RTAwQzU2NkM3IC8qIFdl
YkdyYXBoaWNzQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNBNTZBNjUxMkY5QzhGOTAw
QzU2NkM3IC8qIFdLR3JhcGhpY3NDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0E1NkE2
OTEyRjlDOUFEMDBDNTY2QzcgLyogV0tHcmFwaGljc0NvbnRleHRDRy5oIGluIEhlYWRlcnMgKi8s
CiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07
CkBAIC0zNTk2LDYgKzM2MTcsOSBAQAogCQkJCTFBOTYzNkJDMTJGMzQ4NDkwMDc4QTA2MiAvKiBT
aGFyZWFibGVTdXJmYWNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBOTYzOUY4MTJGMzhFQ0Qw
MDc4QTA2MiAvKiBDb3JlQW5pbWF0aW9uUmVuZGVyZXIubW0gaW4gU291cmNlcyAqLywKIAkJCQkx
QTkyREMxMzEyRjhCQUI5MDAxN0FGNjUgLyogTGF5ZXJUcmVlQ29udGV4dE1hYy5tbSBpbiBTb3Vy
Y2VzICovLAorCQkJCUJDQTU2QTFEMTJGOTAyOEUwMEM1NjZDNyAvKiBXZWJHcmFwaGljc0NvbnRl
eHQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQkNBNTZBNjYxMkY5QzhGOTAwQzU2NkM3IC8qIFdL
R3JhcGhpY3NDb250ZXh0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUJDQTU2QTZBMTJGOUM5QUQw
MEM1NjZDNyAvKiBXS0dyYXBoaWNzQ29udGV4dENHLmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsK
IAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJbmRleDog
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBh
Z2VVSUNsaWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5jcHAJKHJldmlzaW9uIDc3
NDIwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3Rl
ZEJ1bmRsZVBhZ2VVSUNsaWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAK
IAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdC5oIgogI2luY2x1ZGUgIldL
QVBJQ2FzdC5oIgorI2luY2x1ZGUgIldlYkdyYXBoaWNzQ29udGV4dC5oIgogI2luY2x1ZGUgIldL
QnVuZGxlQVBJQ2FzdC5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC03
OSw4ICs4MCwyMyBAQCB2b2lkIEluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50Ojptb3VzZURpCiAK
IHZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQ6OnBhZ2VEaWRTY3JvbGwoV2ViUGFnZSog
cGFnZSkKIHsKLSAgICBpZiAobV9jbGllbnQucGFnZURpZFNjcm9sbCkKLSAgICAgICAgbV9jbGll
bnQucGFnZURpZFNjcm9sbCh0b0FQSShwYWdlKSwgbV9jbGllbnQuY2xpZW50SW5mbyk7CisgICAg
aWYgKCFtX2NsaWVudC5wYWdlRGlkU2Nyb2xsKQorICAgICAgICByZXR1cm47CisKKyAgICBtX2Ns
aWVudC5wYWdlRGlkU2Nyb2xsKHRvQVBJKHBhZ2UpLCBtX2NsaWVudC5jbGllbnRJbmZvKTsKK30K
KworYm9vbCBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudDo6c2hvdWxkUGFpbnRDdXN0b21PdmVy
aGFuZ0FyZWEoKQoreworICAgIHJldHVybiBtX2NsaWVudC5wYWludEN1c3RvbU92ZXJoYW5nQXJl
YTsKK30KKwordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudDo6cGFpbnRDdXN0b21PdmVy
aGFuZ0FyZWEoV2ViUGFnZSogcGFnZSwgR3JhcGhpY3NDb250ZXh0KiBncmFwaGljc0NvbnRleHQs
IGNvbnN0IEludFJlY3QmIGhvcml6b250YWxPdmVyaGFuZ0FyZWEsIGNvbnN0IEludFJlY3QmIHZl
cnRpY2FsT3ZlcmhhbmdBcmVhLCBjb25zdCBJbnRSZWN0JiBkaXJ0eVJlY3QpCit7CisgICAgQVNT
RVJUKHNob3VsZFBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhKCkpOworCisgICAgUmVmUHRyPFdlYkdy
YXBoaWNzQ29udGV4dD4gY29udGV4dCA9IFdlYkdyYXBoaWNzQ29udGV4dDo6Y3JlYXRlKGdyYXBo
aWNzQ29udGV4dCk7CisgICAgbV9jbGllbnQucGFpbnRDdXN0b21PdmVyaGFuZ0FyZWEodG9BUEko
cGFnZSksIHRvQVBJKGNvbnRleHQuZ2V0KCkpLCB0b0FQSShob3Jpem9udGFsT3ZlcmhhbmdBcmVh
KSwgdG9BUEkodmVydGljYWxPdmVyaGFuZ0FyZWEpLCB0b0FQSShkaXJ0eVJlY3QpLCBtX2NsaWVu
dC5jbGllbnRJbmZvKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVVJQ2xp
ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oCShyZXZpc2lvbiA3NzQyMCkKKysrIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdl
VUlDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzIsNyArMzIsOSBAQAogI2luY2x1ZGUgPHd0
Zi9Gb3J3YXJkLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKKyAgICBjbGFzcyBHcmFwaGljc0Nv
bnRleHQ7CiAgICAgY2xhc3MgSGl0VGVzdFJlc3VsdDsKKyAgICBjbGFzcyBJbnRSZWN0OwogfQog
CiBuYW1lc3BhY2UgV2ViS2l0IHsKQEAgLTUwLDYgKzUyLDkgQEAgcHVibGljOgogICAgIHZvaWQg
d2lsbFJ1bkphdmFTY3JpcHRQcm9tcHQoV2ViUGFnZSosIGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0
cmluZyYsIFdlYkZyYW1lKik7CiAgICAgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChXZWJQ
YWdlKiwgY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIFdlYkV2ZW50OjpNb2RpZmllcnMs
IFJlZlB0cjxBUElPYmplY3Q+JiB1c2VyRGF0YSk7CiAgICAgdm9pZCBwYWdlRGlkU2Nyb2xsKFdl
YlBhZ2UqKTsKKworICAgIGJvb2wgc2hvdWxkUGFpbnRDdXN0b21PdmVyaGFuZ0FyZWEoKTsKKyAg
ICB2b2lkIHBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhKFdlYlBhZ2UqLCBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHQqLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiwgY29uc3QgV2ViQ29yZTo6SW50UmVj
dCYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktp
dApJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9X
S0J1bmRsZVBhZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5oCShyZXZpc2lvbiA3NzQyMCkKKysrIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTEyNSw2ICsxMjUsNyBAQCB0eXBlZGVmIHZvaWQgKCpXS0J1
bmRsZVBhZ2VXaWxsUnVuSmF2YVNjCiB0eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VXaWxsUnVu
SmF2YVNjcmlwdFByb21wdENhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tTdHJpbmdS
ZWYgbWVzc2FnZSwgV0tTdHJpbmdSZWYgZGVmYXVsdFZhbHVlLCBXS0J1bmRsZUZyYW1lUmVmIGZy
YW1lLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKIHR5cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFn
ZU1vdXNlRGlkTW92ZU92ZXJFbGVtZW50Q2FsbGJhY2spKFdLQnVuZGxlUGFnZVJlZiBwYWdlLCBX
S0J1bmRsZUhpdFRlc3RSZXN1bHRSZWYgaGl0VGVzdFJlc3VsdCwgV0tFdmVudE1vZGlmaWVycyBt
b2RpZmllcnMsIFdLVHlwZVJlZiogdXNlckRhdGEsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwog
dHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQYWdlRGlkU2Nyb2xsQ2FsbGJhY2spKFdLQnVuZGxlUGFn
ZVJlZiBwYWdlLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKTsKK3R5cGVkZWYgdm9pZCAoKldLQnVu
ZGxlUGFnZVBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhQ2FsbGJhY2spKFdLQnVuZGxlUGFnZVJlZiBw
YWdlLCBXS0dyYXBoaWNzQ29udGV4dFJlZiBncmFwaGljc0NvbnRleHQsIFdLUmVjdCBob3Jpem9u
dGFsT3ZlcmhhbmcsIFdLUmVjdCB2ZXJ0aWNhbE92ZXJoYW5nLCBXS1JlY3QgZGlydHlSZWN0LCBj
b25zdCB2b2lkKiBjbGllbnRJbmZvKTsKIAogc3RydWN0IFdLQnVuZGxlUGFnZVVJQ2xpZW50IHsK
ICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHZlcnNpb247CkBAIC0xMzYsNiArMTM3LDcgQEAgc3RydWN0IFdLQnVu
ZGxlUGFnZVVJQ2xpZW50IHsKICAgICBXS0J1bmRsZVBhZ2VXaWxsUnVuSmF2YVNjcmlwdFByb21w
dENhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgIHdpbGxSdW5KYXZhU2NyaXB0UHJvbXB0
OwogICAgIFdLQnVuZGxlUGFnZU1vdXNlRGlkTW92ZU92ZXJFbGVtZW50Q2FsbGJhY2sgICAgICAg
ICAgICAgICAgICAgICAgICAgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQ7CiAgICAgV0tCdW5kbGVQ
YWdlRGlkU2Nyb2xsQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBwYWdlRGlkU2Nyb2xsOworICAgIFdLQnVuZGxlUGFnZVBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVh
Q2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgcGFpbnRDdXN0b21PdmVyaGFuZ0FyZWE7
CiB9OwogdHlwZWRlZiBzdHJ1Y3QgV0tCdW5kbGVQYWdlVUlDbGllbnQgV0tCdW5kbGVQYWdlVUlD
bGllbnQ7CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAJKHJldmlzaW9uIDc3NDIwKQor
KysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NTEsNiArNTUxLDE1IEBAIGJvb2wgV2ViQ2hyb21l
Q2xpZW50OjpwYWludEN1c3RvbVNjcm9sbEMKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK2Jvb2wg
V2ViQ2hyb21lQ2xpZW50OjpwYWludEN1c3RvbU92ZXJoYW5nQXJlYShHcmFwaGljc0NvbnRleHQq
IGNvbnRleHQsIGNvbnN0IEludFJlY3QmIGhvcml6b250YWxPdmVyaGFuZ0FyZWEsIGNvbnN0IElu
dFJlY3QmIHZlcnRpY2FsT3ZlcmhhbmdBcmVhLCBjb25zdCBJbnRSZWN0JiBkaXJ0eVJlY3QpCit7
CisgICAgaWYgKCFtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zaG91bGRQYWludEN1
c3RvbU92ZXJoYW5nQXJlYSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBtX3BhZ2Ut
PmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5wYWludEN1c3RvbU92ZXJoYW5nQXJlYShtX3BhZ2Us
IGNvbnRleHQsIGhvcml6b250YWxPdmVyaGFuZ0FyZWEsIHZlcnRpY2FsT3ZlcmhhbmdBcmVhLCBk
aXJ0eVJlY3QpOworICAgIHJldHVybiB0cnVlOworfQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
cmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKEZyYW1lKiwgR2VvbG9jYXRpb24q
KQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgJKHJl
dmlzaW9uIDc3NDIwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMTU0LDcgKzE1NCw5IEBAIHBy
aXZhdGU6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlYkNvcmU6OlNj
cm9sbGJhckNvbnRyb2xTdGF0ZSwgV2ViQ29yZTo6U2Nyb2xsYmFyUGFydCBwcmVzc2VkUGFydCwg
Ym9vbCB2ZXJ0aWNhbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxv
YXQgdmFsdWUsIGZsb2F0IHByb3BvcnRpb24sIFdlYkNvcmU6OlNjcm9sbGJhckNvbnRyb2xQYXJ0
TWFzayk7CiAgICAgdmlydHVhbCBib29sIHBhaW50Q3VzdG9tU2Nyb2xsQ29ybmVyKFdlYkNvcmU6
OkdyYXBoaWNzQ29udGV4dCosIGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYpOwotICAgIAorCisg
ICAgdmlydHVhbCBib29sIHBhaW50Q3VzdG9tT3ZlcmhhbmdBcmVhKFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dCosIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0
JiwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpOworCiAgICAgLy8gVGhpcyBpcyBhbiBhc3luY2hy
b25vdXMgY2FsbC4gVGhlIENocm9tZUNsaWVudCBjYW4gZGlzcGxheSBVSSBhc2tpbmcgdGhlIHVz
ZXIgZm9yIHBlcm1pc3Npb24KICAgICAvLyB0byB1c2UgR2VvbG9jb2NhdGlvbi4gVGhlIENocm9t
ZUNsaWVudCBtdXN0IGNhbGwgR2VvbG9jYXRpb246OnNldFNob3VsZENsZWFyQ2FjaGUoKSBhcHBy
b3ByaWF0ZWx5LgogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9u
Rm9yRnJhbWUoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHZW9sb2NhdGlvbiopOwpJbmRleDog
U291cmNlL1dlYktpdDIvd2luL1dlYktpdDIudmNwcm9qCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL3dpbi9XZWJLaXQyLnZjcHJvagkocmV2aXNpb24gNzc0MjApCisrKyBTb3VyY2UvV2Vi
S2l0Mi93aW4vV2ViS2l0Mi52Y3Byb2oJKHdvcmtpbmcgY29weSkKQEAgLTYwNyw2ICs2MDcsMTQg
QEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cU2hh
cmVkXFdlYkdyYXBoaWNzQ29udGV4dC5jcHAiCisJCQkJPgorCQkJPC9GaWxlPgorCQkJPEZpbGUK
KwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXFNoYXJlZFxXZWJHcmFwaGljc0NvbnRleHQuaCIKKwkJCQk+
CisJCQk8L0ZpbGU+CisJCQk8RmlsZQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cU2hhcmVkXFdlYklt
YWdlLmNwcCIKIAkJCQk+CiAJCQk8L0ZpbGU+CkBAIC04MDYsNiArODE0LDE0IEBACiAJCQkJCT4K
IAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxTaGFyZWRcQVBJ
XGNcV0tHcmFwaGljc0NvbnRleHQuY3BwIgorCQkJCQk+CisJCQkJPC9GaWxlPgorCQkJCTxGaWxl
CisJCQkJCVJlbGF0aXZlUGF0aD0iLi5cU2hhcmVkXEFQSVxjXFdLR3JhcGhpY3NDb250ZXh0Lmgi
CisJCQkJCT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxT
aGFyZWRcQVBJXGNcV0tJbWFnZS5jcHAiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CkBAIC0xMDEyLDYg
KzEwMjgsMzAgQEAKIAkJCQkJCVJlbGF0aXZlUGF0aD0iLi5cU2hhcmVkXEFQSVxjXGNnXFdLSW1h
Z2VDRy5oIgogCQkJCQkJPgogCQkJCQk8L0ZpbGU+CisJCQkJCTxGaWxlCisJCQkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXFNoYXJlZFxBUElcY1xjZ1xXS0dyYXBoaWNzQ29udGV4dENHLmNwcCIKKwkJCQkJ
CT4KKwkJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NG
TGl0ZXxXaW4zMiIKKwkJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJCQkJCQk+CisJ
CQkJCQkJPFRvb2wKKwkJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJCQkvPgor
CQkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJ
CQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgorCQkJCQkJCUV4Y2x1ZGVkRnJv
bUJ1aWxkPSJ0cnVlIgorCQkJCQkJCT4KKwkJCQkJCQk8VG9vbAorCQkJCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIgorCQkJCQkJCS8+CisJCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJ
CQk8L0ZpbGU+CisJCQkJCTxGaWxlCisJCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXFNoYXJlZFxBUElc
Y1xjZ1xXS0dyYXBoaWNzQ29udGV4dENHLmgiCisJCQkJCQk+CisJCQkJCTwvRmlsZT4KIAkJCQk8
L0ZpbHRlcj4KIAkJCTwvRmlsdGVyPgogCQkJPEZpbHRlcgpJbmRleDogU291cmNlL1dlYktpdDIv
d2luL1dlYktpdDJHZW5lcmF0ZWQubWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi93
aW4vV2ViS2l0MkdlbmVyYXRlZC5tYWtlCShyZXZpc2lvbiA3NzQyMCkKKysrIFNvdXJjZS9XZWJL
aXQyL3dpbi9XZWJLaXQyR2VuZXJhdGVkLm1ha2UJKHdvcmtpbmcgY29weSkKQEAgLTYsNiArNiw3
IEBAIGFsbDoKICAgICB4Y29weSAveSAvZCAiLi5cU2hhcmVkXEFQSVxjXGNmXFdLVVJMUmVxdWVz
dENGLmgiICIlQ29uZmlndXJhdGlvbkJ1aWxkRGlyJVxpbmNsdWRlXFdlYktpdDIiCiAgICAgeGNv
cHkgL3kgL2QgIi4uXFNoYXJlZFxBUElcY1xjZlxXS1VSTFJlc3BvbnNlQ0YuaCIgIiVDb25maWd1
cmF0aW9uQnVpbGREaXIlXGluY2x1ZGVcV2ViS2l0MiIKICAgICB4Y29weSAveSAvZCAiLi5cU2hh
cmVkXEFQSVxjXGNnXFdLSW1hZ2VDRy5oIiAiJUNvbmZpZ3VyYXRpb25CdWlsZERpciVcaW5jbHVk
ZVxXZWJLaXQyIgorICAgIHhjb3B5IC95IC9kICIuLlxTaGFyZWRcQVBJXGNcY2dcV0tHcmFwaGlj
c0NvbnRleHRDRy5oIiAiJUNvbmZpZ3VyYXRpb25CdWlsZERpciVcaW5jbHVkZVxXZWJLaXQyIgog
ICAgIHhjb3B5IC95IC9kICIuLlxTaGFyZWRcQVBJXGNcd2luXFdLQmFzZVdpbi5oIiAiJUNvbmZp
Z3VyYXRpb25CdWlsZERpciVcaW5jbHVkZVxXZWJLaXQyIgogICAgIHhjb3B5IC95IC9kICIuLlxT
aGFyZWRcQVBJXGNcd2luXFdLQ2VydGlmaWNhdGVJbmZvV2luLmgiICIlQ29uZmlndXJhdGlvbkJ1
aWxkRGlyJVxpbmNsdWRlXFdlYktpdDIiCiAgICAgeGNvcHkgL3kgL2QgIi4uXFNoYXJlZFxBUElc
Y1xXS0FycmF5LmgiICIlQ29uZmlndXJhdGlvbkJ1aWxkRGlyJVxpbmNsdWRlXFdlYktpdDIiCkBA
IC0xOSw2ICsyMCw3IEBAIGFsbDoKICAgICB4Y29weSAveSAvZCAiLi5cU2hhcmVkXEFQSVxjXFdL
RXZlbnQuaCIgIiVDb25maWd1cmF0aW9uQnVpbGREaXIlXGluY2x1ZGVcV2ViS2l0MiIKICAgICB4
Y29weSAveSAvZCAiLi5cU2hhcmVkXEFQSVxjXFdLRmluZE9wdGlvbnMuaCIgIiVDb25maWd1cmF0
aW9uQnVpbGREaXIlXGluY2x1ZGVcV2ViS2l0MiIKICAgICB4Y29weSAveSAvZCAiLi5cU2hhcmVk
XEFQSVxjXFdLR2VvbWV0cnkuaCIgIiVDb25maWd1cmF0aW9uQnVpbGREaXIlXGluY2x1ZGVcV2Vi
S2l0MiIKKyAgICB4Y29weSAveSAvZCAiLi5cU2hhcmVkXEFQSVxjXFdLR3JhcGhpY3NDb250ZXh0
LmgiICIlQ29uZmlndXJhdGlvbkJ1aWxkRGlyJVxpbmNsdWRlXFdlYktpdDIiCiAgICAgeGNvcHkg
L3kgL2QgIi4uXFNoYXJlZFxBUElcY1xXS0ltYWdlLmgiICIlQ29uZmlndXJhdGlvbkJ1aWxkRGly
JVxpbmNsdWRlXFdlYktpdDIiCiAgICAgeGNvcHkgL3kgL2QgIi4uXFNoYXJlZFxBUElcY1xXS011
dGFibGVBcnJheS5oIiAiJUNvbmZpZ3VyYXRpb25CdWlsZERpciVcaW5jbHVkZVxXZWJLaXQyIgog
ICAgIHhjb3B5IC95IC9kICIuLlxTaGFyZWRcQVBJXGNcV0tNdXRhYmxlRGljdGlvbmFyeS5oIiAi
JUNvbmZpZ3VyYXRpb25CdWlsZERpciVcaW5jbHVkZVxXZWJLaXQyIgpJbmRleDogVG9vbHMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNzc0MzApCisr
KyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0w
Mi0wMiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBDaHJvbWVDbGllbnQgZnVuY3Rpb24gdG8g
cGFpbnQgY3VzdG9tIG92ZXJoYW5nIGFyZWFzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTM2MzkKKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmNwcDoKKyAgICAgICAgKFdUUjo6SW5q
ZWN0ZWRCdW5kbGVQYWdlOjpJbmplY3RlZEJ1bmRsZVBhZ2UpOgorICAgICAgICBTdHViIG91dCBu
ZXcgY2FsbGJhY2suCisKIDIwMTEtMDItMDIgIEFkYW0gS2xlaW4gIDxhZGFta0BjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgVG9ueSBDaGFuZy4KSW5kZXg6IFRvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlUGFnZS5jcHAJKHJldmlzaW9uIDc3NDIwKQorKysgVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
MDQsNiArMjA0LDcgQEAgSW5qZWN0ZWRCdW5kbGVQYWdlOjpJbmplY3RlZEJ1bmRsZVBhZ2UoVwog
ICAgICAgICB3aWxsUnVuSmF2YVNjcmlwdFByb21wdCwKICAgICAgICAgMCwgLyptb3VzZURpZE1v
dmVPdmVyRWxlbWVudCovCiAgICAgICAgIDAsIC8qcGFnZURpZFNjcm9sbCovCisgICAgICAgIDAs
IC8qcGFpbnRDdXN0b21PdmVyaGFuZ0FyZWEqLwogICAgIH07CiAgICAgV0tCdW5kbGVQYWdlU2V0
VUlDbGllbnQobV9wYWdlLCAmdWlDbGllbnQpOwogCg==
</data>
<flag name="review"
          id="72524"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>