<?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>59543</bug_id>
          
          <creation_ts>2011-04-26 14:51:56 -0700</creation_ts>
          <short_desc>Remove Datagrid from the tree</short_desc>
          <delta_ts>2011-04-26 17:51:49 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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="Sam Weinig">sam</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>392777</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-04-26 14:51:56 -0700</bug_when>
    <thetext>Remove Datagrid from the tree</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>392779</commentid>
    <comment_count>1</comment_count>
      <attachid>91168</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-04-26 14:58:47 -0700</bug_when>
    <thetext>Created attachment 91168
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>392780</commentid>
    <comment_count>2</comment_count>
      <attachid>91168</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-04-26 14:59:48 -0700</bug_when>
    <thetext>Comment on attachment 91168
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393192</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-04-26 17:51:49 -0700</bug_when>
    <thetext>Committed r84991: &lt;http://trac.webkit.org/changeset/84991&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91168</attachid>
            <date>2011-04-26 14:58:47 -0700</date>
            <delta_ts>2011-04-26 14:59:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-59543-20110426145844.patch</filename>
            <type>text/plain</type>
            <size>212278</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gODQ5NjIpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAK
KzIwMTEtMDQtMjYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgRGF0YWdyaWQgZnJvbSB0
aGUgdHJlZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTk1NDMKKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmln
OgorICAgICAgICBSZW1vdmUgZmVhdHVyZS4KKwogMjAxMS0wNC0yNiAgRGFuIEJlcm5zdGVpbiAg
PG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDg0ODA0KQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5n
IGNvcHkpCkBAIC02MSw3ICs2MSw2IEBAIEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04g
PSAkKEVOQUIKIEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT05fbWFjb3N4ID0gRU5BQkxF
X0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTjsKIAogRU5BQkxFX0RBVEFCQVNFID0gRU5BQkxFX0RB
VEFCQVNFOwotRU5BQkxFX0RBVEFHUklEID0gOwogCiBFTkFCTEVfREFUQUxJU1QgPSAkKEVOQUJM
RV9EQVRBTElTVF8kKFJFQUxfUExBVEZPUk1fTkFNRSkpOwogRU5BQkxFX0RBVEFMSVNUX21hY29z
eCA9IEVOQUJMRV9EQVRBTElTVDsKQEAgLTEzMiw0ICsxMzEsNCBAQCBFTkFCTEVfWEhUTUxNUCA9
IDsKIEVOQUJMRV9YUEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hT
TFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxF
X0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFXzNEX1JFTkRF
UklORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxF
X0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RB
VEFHUklEKSAkKEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykg
JChFTkFCTEVfREVUQUlMUykgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9E
SVJFQ1RPUllfVVBMT0FEKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VS
Q0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GVUxM
U0NSRUVOX0FQSSkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkg
JChFTkFCTEVfSU1BR0VfUkVTSVpFUikgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFC
TEVfSU5QVVRfU1BFRUNIKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9N
QVRITUwpICQoRU5BQkxFX01FVEVSX1RBRykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFC
TEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJ
KSAkKEVOQUJMRV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRM
RVIpICQoRU5BQkxFX1FVT1RBKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZH
KSAkKEVOQUJMRV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxF
X1NWR19ET01fT0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdf
Rk9SRUlHTl9PQkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJM
RV9WSURFT19UUkFDSykgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfV0VCX0FV
RElPKSAkKEVOQUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVf
V01MKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkg
JChFTkFCTEVfWFNMVCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV9MSU5LX1BSRUZFVENI
KSAkKEVOQUJMRV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJM
RV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KSAkKEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAk
KEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVf
REVUQUlMUykgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllf
VVBMT0FEKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5B
QkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQ
SSkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVf
SU1BR0VfUkVTSVpFUikgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRf
U1BFRUNIKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQo
RU5BQkxFX01FVEVSX1RBRykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElO
RV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJM
RV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5B
QkxFX1FVT1RBKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJM
RV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01f
T0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9P
QkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19U
UkFDSykgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVO
QUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV01MKSAkKEVO
QUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVf
WFNMVCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiA4NDk2MikKKysrIFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc1IEBACisyMDExLTA0LTI2ICBT
YW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIERhdGFncmlkIGZyb20gdGhlIHRyZWUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5NTQzCisKKyAgICAg
ICAgKiBBbmRyb2lkLmRlcml2ZWQuanNjYmluZGluZ3MubWs6CisgICAgICAgICogQW5kcm9pZC5k
ZXJpdmVkLnY4YmluZGluZ3MubWs6CisgICAgICAgICogQW5kcm9pZC5qc2NiaW5kaW5ncy5tazoK
KyAgICAgICAgKiBBbmRyb2lkLnY4YmluZGluZ3MubWs6CisgICAgICAgICogQ01ha2VMaXN0cy50
eHQ6CisgICAgICAgICogQ29kZUdlbmVyYXRvcnMucHJpOgorICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnOgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLmNw
cDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAqIEdOVW1ha2VmaWxl
LmFtOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogVXNlSlNDLmNt
YWtlOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnBybzoKKyAg
ICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5k
aW5nc0FsbEluT25lLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RhdGFHcmlkQ29sdW1u
TGlzdEN1c3RvbS5jcHA6IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvSlNEYXRhR3Jp
ZERhdGFTb3VyY2UuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGF0YUdy
aWREYXRhU291cmNlLmg6IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvSlNIVE1MRGF0
YUdyaWRFbGVtZW50Q3VzdG9tLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBiaW5kaW5ncy92OC9W
OERhdGFHcmlkRGF0YVNvdXJjZS5jcHA6IFJlbW92ZWQuCisgICAgICAgICogYmluZGluZ3Mvdjgv
VjhEYXRhR3JpZERhdGFTb3VyY2UuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBiaW5kaW5ncy92OC9j
dXN0b20vVjhEYXRhR3JpZENvbHVtbkxpc3RDdXN0b20uY3BwOiBSZW1vdmVkLgorICAgICAgICAq
IGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxEYXRhR3JpZEVsZW1lbnRDdXN0b20uY3BwOiBSZW1v
dmVkLgorICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAgICAgICAgKiBjc3Mv
Q1NTU3R5bGVTZWxlY3Rvci5oOgorICAgICAgICAqIGNzcy9odG1sLmNzczoKKyAgICAgICAgKGlu
cHV0LCB0ZXh0YXJlYSwga2V5Z2VuLCBzZWxlY3QsIGJ1dHRvbiwgaXNpbmRleCk6CisgICAgICAg
IChzZWxlY3Q6ZGlzYWJsZWQsIGtleWdlbjpkaXNhYmxlZCwgb3B0Z3JvdXA6ZGlzYWJsZWQsIG9w
dGlvbjpkaXNhYmxlZCk6CisgICAgICAgICogZWRpdGluZy9odG1sZWRpdGluZy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpjYW5IYXZlQ2hpbGRyZW5Gb3JFZGl0aW5nKToKKyAgICAgICAgKiBmZWF0
dXJlcy5wcmk6CisgICAgICAgICogaHRtbC9ET01EYXRhR3JpZERhdGFTb3VyY2UuY3BwOiBSZW1v
dmVkLgorICAgICAgICAqIGh0bWwvRE9NRGF0YUdyaWREYXRhU291cmNlLmg6IFJlbW92ZWQuCisg
ICAgICAgICogaHRtbC9EYXRhR3JpZENvbHVtbi5jcHA6IFJlbW92ZWQuCisgICAgICAgICogaHRt
bC9EYXRhR3JpZENvbHVtbi5oOiBSZW1vdmVkLgorICAgICAgICAqIGh0bWwvRGF0YUdyaWRDb2x1
bW4uaWRsOiBSZW1vdmVkLgorICAgICAgICAqIGh0bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmNwcDog
UmVtb3ZlZC4KKyAgICAgICAgKiBodG1sL0RhdGFHcmlkQ29sdW1uTGlzdC5oOiBSZW1vdmVkLgor
ICAgICAgICAqIGh0bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmlkbDogUmVtb3ZlZC4KKyAgICAgICAg
KiBodG1sL0RhdGFHcmlkRGF0YVNvdXJjZS5oOiBSZW1vdmVkLgorICAgICAgICAqIGh0bWwvSFRN
TERhdGFHcmlkQ2VsbEVsZW1lbnQuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGh0bWwvSFRNTERh
dGFHcmlkQ2VsbEVsZW1lbnQuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBodG1sL0hUTUxEYXRhR3Jp
ZENlbGxFbGVtZW50LmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodG1sL0hUTUxEYXRhR3JpZENv
bEVsZW1lbnQuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGh0bWwvSFRNTERhdGFHcmlkQ29sRWxl
bWVudC5oOiBSZW1vdmVkLgorICAgICAgICAqIGh0bWwvSFRNTERhdGFHcmlkQ29sRWxlbWVudC5p
ZGw6IFJlbW92ZWQuCisgICAgICAgICogaHRtbC9IVE1MRGF0YUdyaWRFbGVtZW50LmNwcDogUmVt
b3ZlZC4KKyAgICAgICAgKiBodG1sL0hUTUxEYXRhR3JpZEVsZW1lbnQuaDogUmVtb3ZlZC4KKyAg
ICAgICAgKiBodG1sL0hUTUxEYXRhR3JpZEVsZW1lbnQuaWRsOiBSZW1vdmVkLgorICAgICAgICAq
IGh0bWwvSFRNTERhdGFHcmlkUm93RWxlbWVudC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogaHRt
bC9IVE1MRGF0YUdyaWRSb3dFbGVtZW50Lmg6IFJlbW92ZWQuCisgICAgICAgICogaHRtbC9IVE1M
RGF0YUdyaWRSb3dFbGVtZW50LmlkbDogUmVtb3ZlZC4KKyAgICAgICAgKiBodG1sL0hUTUxFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjppZUZvcmJpZHNJbnNlcnRI
VE1MKToKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50c0FsbEluT25lLmNwcDoKKyAgICAgICAg
KiBodG1sL0hUTUxUYWdOYW1lcy5pbjoKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6Cisg
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJCb3g6OnNpemVzVG9JbnRyaW5zaWNMb2dpY2FsV2lkdGgpOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJEYXRhR3JpZC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
ckRhdGFHcmlkLmg6IFJlbW92ZWQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlcmluZ0FsbElu
T25lLmNwcDoKKwogMjAxMS0wNC0yNiAgSmVmZiBNaWxsZXIgIDxqZWZmbUBhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkIGEgbmV3bGluZSBhdCB0aGUgZW5kIG9mIFNWR0ZFRHJvcFNoYWRvd0VsZW1l
bnQuaWRsLgpJbmRleDogU291cmNlL1dlYkNvcmUvQW5kcm9pZC5kZXJpdmVkLmpzY2JpbmRpbmdz
Lm1rCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC5qc2NiaW5k
aW5ncy5tawkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9BbmRyb2lkLmRlcml2
ZWQuanNjYmluZGluZ3MubWsJKHdvcmtpbmcgY29weSkKQEAgLTE1OSw4ICsxNTksNiBAQCBHRU4g
Oj0gXAogICAgICQoaW50ZXJtZWRpYXRlcykvaHRtbC9KU0RPTVNldHRhYmxlVG9rZW5MaXN0Lmgg
XAogICAgICQoaW50ZXJtZWRpYXRlcykvaHRtbC9KU0RPTVRva2VuTGlzdC5oIFwKICAgICAkKGlu
dGVybWVkaWF0ZXMpL2h0bWwvSlNET01VUkwuaCBcCi0gICAgJChpbnRlcm1lZGlhdGVzKS9odG1s
L0pTRGF0YUdyaWRDb2x1bW4uaCBcCi0gICAgJChpbnRlcm1lZGlhdGVzKS9odG1sL0pTRGF0YUdy
aWRDb2x1bW5MaXN0LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvaHRtbC9KU0ZpbGUuaCBcCiAg
ICAgJChpbnRlcm1lZGlhdGVzKS9odG1sL0pTRmlsZUVycm9yLmggXAogICAgICQoaW50ZXJtZWRp
YXRlcykvaHRtbC9KU0ZpbGVMaXN0LmggXApAQCAtMTc3LDEwICsxNzUsNiBAQCBHRU4gOj0gXAog
ICAgICQoaW50ZXJtZWRpYXRlcykvaHRtbC9KU0hUTUxCdXR0b25FbGVtZW50LmggXAogICAgICQo
aW50ZXJtZWRpYXRlcykvaHRtbC9KU0hUTUxDYW52YXNFbGVtZW50LmggXAogICAgICQoaW50ZXJt
ZWRpYXRlcykvaHRtbC9KU0hUTUxDb2xsZWN0aW9uLmggXAotICAgICQoaW50ZXJtZWRpYXRlcykv
aHRtbC9KU0hUTUxEYXRhR3JpZEVsZW1lbnQuaCBcCi0gICAgJChpbnRlcm1lZGlhdGVzKS9odG1s
L0pTSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaCBcCi0gICAgJChpbnRlcm1lZGlhdGVzKS9odG1s
L0pTSFRNTERhdGFHcmlkQ29sRWxlbWVudC5oIFwKLSAgICAkKGludGVybWVkaWF0ZXMpL2h0bWwv
SlNIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvaHRtbC9K
U0hUTUxEYXRhTGlzdEVsZW1lbnQuaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9odG1sL0pTSFRN
TERMaXN0RWxlbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2h0bWwvSlNIVE1MRGlyZWN0
b3J5RWxlbWVudC5oIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC52OGJp
bmRpbmdzLm1rCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0FuZHJvaWQuZGVyaXZlZC52
OGJpbmRpbmdzLm1rCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL0FuZHJvaWQu
ZGVyaXZlZC52OGJpbmRpbmdzLm1rCSh3b3JraW5nIGNvcHkpCkBAIC0xNDAsOCArMTQwLDYgQEAg
R0VOIDo9IFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RE9NVG9rZW5MaXN0Lmgg
XAogICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhET01TZXR0YWJsZVRva2VuTGlzdC5o
IFwKICAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRpbmdzL1Y4RE9NVVJMLmggXAotICAgICQoaW50
ZXJtZWRpYXRlcykvYmluZGluZ3MvVjhEYXRhR3JpZENvbHVtbi5oIFwKLSAgICAkKGludGVybWVk
aWF0ZXMpL2JpbmRpbmdzL1Y4RGF0YUdyaWRDb2x1bW5MaXN0LmggXAogICAgICQoaW50ZXJtZWRp
YXRlcykvYmluZGluZ3MvVjhGaWxlLmggXAogICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3Mv
VjhGaWxlRXJyb3IuaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5kaW5ncy9WOEZpbGVMaXN0
LmggXApAQCAtMTU4LDEwICsxNTYsNiBAQCBHRU4gOj0gXAogICAgICQoaW50ZXJtZWRpYXRlcykv
YmluZGluZ3MvVjhIVE1MQnV0dG9uRWxlbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2Jp
bmRpbmdzL1Y4SFRNTENhbnZhc0VsZW1lbnQuaCBcCiAgICAgJChpbnRlcm1lZGlhdGVzKS9iaW5k
aW5ncy9WOEhUTUxDb2xsZWN0aW9uLmggXAotICAgICQoaW50ZXJtZWRpYXRlcykvYmluZGluZ3Mv
VjhIVE1MRGF0YUdyaWRDZWxsRWxlbWVudC5oIFwKLSAgICAkKGludGVybWVkaWF0ZXMpL2JpbmRp
bmdzL1Y4SFRNTERhdGFHcmlkQ29sRWxlbWVudC5oIFwKLSAgICAkKGludGVybWVkaWF0ZXMpL2Jp
bmRpbmdzL1Y4SFRNTERhdGFHcmlkRWxlbWVudC5oIFwKLSAgICAkKGludGVybWVkaWF0ZXMpL2Jp
bmRpbmdzL1Y4SFRNTERhdGFHcmlkUm93RWxlbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMp
L2JpbmRpbmdzL1Y4SFRNTERhdGFMaXN0RWxlbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMp
L2JpbmRpbmdzL1Y4SFRNTERMaXN0RWxlbWVudC5oIFwKICAgICAkKGludGVybWVkaWF0ZXMpL2Jp
bmRpbmdzL1Y4SFRNTERpcmVjdG9yeUVsZW1lbnQuaCBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9B
bmRyb2lkLmpzY2JpbmRpbmdzLm1rCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0FuZHJv
aWQuanNjYmluZGluZ3MubWsJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvQW5k
cm9pZC5qc2NiaW5kaW5ncy5tawkod29ya2luZyBjb3B5KQpAQCAtOTQsOCArOTQsNiBAQCBMT0NB
TF9TUkNfRklMRVMgKz0gXAogCWJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAgXAogCWJp
bmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmNwcCBcCiAJYmluZGluZ3MvanMvSlNET01XaW5k
b3dTaGVsbC5jcHAgXAotCWJpbmRpbmdzL2pzL0pTRGF0YUdyaWRDb2x1bW5MaXN0Q3VzdG9tLmNw
cCBcCi0JYmluZGluZ3MvanMvSlNEYXRhR3JpZERhdGFTb3VyY2UuY3BwIFwKIAliaW5kaW5ncy9q
cy9KU0RhdGFiYXNlQ2FsbGJhY2suY3BwIFwKIAliaW5kaW5ncy9qcy9KU0RlZGljYXRlZFdvcmtl
ckNvbnRleHRDdXN0b20uY3BwIFwKIAliaW5kaW5ncy9qcy9KU0Rlc2t0b3BOb3RpZmljYXRpb25z
Q3VzdG9tLmNwcCBcCkBAIC0xMTQsNyArMTEyLDYgQEAgTE9DQUxfU1JDX0ZJTEVTICs9IFwKIAli
aW5kaW5ncy9qcy9KU0hUTUxBcHBsZXRFbGVtZW50Q3VzdG9tLmNwcCBcCiAJYmluZGluZ3MvanMv
SlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHAgXAogCWJpbmRpbmdzL2pzL0pTSFRNTENvbGxl
Y3Rpb25DdXN0b20uY3BwIFwKLQliaW5kaW5ncy9qcy9KU0hUTUxEYXRhR3JpZEVsZW1lbnRDdXN0
b20uY3BwIFwKIAliaW5kaW5ncy9qcy9KU0hUTUxEb2N1bWVudEN1c3RvbS5jcHAgXAogCWJpbmRp
bmdzL2pzL0pTSFRNTEVsZW1lbnRDdXN0b20uY3BwIFwKIAliaW5kaW5ncy9qcy9KU0hUTUxFbWJl
ZEVsZW1lbnRDdXN0b20uY3BwIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0FuZHJvaWQudjhiaW5k
aW5ncy5tawo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9BbmRyb2lkLnY4YmluZGluZ3Mu
bWsJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvQW5kcm9pZC52OGJpbmRpbmdz
Lm1rCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw3ICs2Nyw2IEBAIExPQ0FMX1NSQ19GSUxFUyArPSBc
CiAJYmluZGluZ3MvdjgvVjhDb25zb2xlTWVzc2FnZS5jcHAgXAogCWJpbmRpbmdzL3Y4L1Y4RE9N
TWFwLmNwcCBcCiAJYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcCBcCi0JYmluZGluZ3Mvdjgv
VjhEYXRhR3JpZERhdGFTb3VyY2UuY3BwIFwKIAliaW5kaW5ncy92OC9WOEV2ZW50TGlzdGVuZXJM
aXN0LmNwcCBcCiAJYmluZGluZ3MvdjgvVjhHQ0NvbnRyb2xsZXIuY3BwIFwKIAliaW5kaW5ncy92
OC9WOEhlbHBlcnMuY3BwIFwKQEAgLTEwNCw3ICsxMDMsNiBAQCBMT0NBTF9TUkNfRklMRVMgKz0g
XAogCWJpbmRpbmdzL3Y4L2N1c3RvbS9WOEN1c3RvbVZvaWRDYWxsYmFjay5jcHAgXAogCWJpbmRp
bmdzL3Y4L2N1c3RvbS9WOERPTUZvcm1EYXRhQ3VzdG9tLmNwcCBcCiAJYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcCBcCi0JYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YUdy
aWRDb2x1bW5MaXN0Q3VzdG9tLmNwcCBcCiAJYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YWJhc2VD
YWxsYmFjay5jcHAgXAogCWJpbmRpbmdzL3Y4L2N1c3RvbS9WOERlZGljYXRlZFdvcmtlckNvbnRl
eHRDdXN0b20uY3BwIFwKIAliaW5kaW5ncy92OC9jdXN0b20vVjhEZXZpY2VNb3Rpb25FdmVudEN1
c3RvbS5jcHAgXApAQCAtMTIzLDcgKzEyMSw2IEBAIExPQ0FMX1NSQ19GSUxFUyArPSBcCiAJYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTEF1ZGlvRWxlbWVudENvbnN0cnVjdG9yLmNwcCBcCiAJYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTENhbnZhc0VsZW1lbnRDdXN0b20uY3BwIFwKIAliaW5kaW5n
cy92OC9jdXN0b20vVjhIVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAgXAotCWJpbmRpbmdzL3Y4L2N1
c3RvbS9WOEhUTUxEYXRhR3JpZEVsZW1lbnRDdXN0b20uY3BwIFwKIAliaW5kaW5ncy92OC9jdXN0
b20vVjhIVE1MRG9jdW1lbnRDdXN0b20uY3BwIFwKIAliaW5kaW5ncy92OC9jdXN0b20vVjhIVE1M
RWxlbWVudEN1c3RvbS5jcHAgXAogCWJpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxGb3JtRWxlbWVu
dEN1c3RvbS5jcHAgXApJbmRleDogU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQJKHJldmlzaW9uIDg0OTUyKQor
KysgU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTE5Miw4
ICsxOTIsNiBAQCBTRVQoV2ViQ29yZV9JRExfRklMRVMKICAgICBmaWxlYXBpL0ZpbGVSZWFkZXIu
aWRsCiAgICAgZmlsZWFwaS9XZWJLaXRCbG9iQnVpbGRlci5pZGwKIAotICAgIGh0bWwvRGF0YUdy
aWRDb2x1bW4uaWRsCi0gICAgaHRtbC9EYXRhR3JpZENvbHVtbkxpc3QuaWRsCiAgICAgaHRtbC9E
T01Gb3JtRGF0YS5pZGwKICAgICBodG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmlkbAogICAgIGh0
bWwvRE9NVG9rZW5MaXN0LmlkbApAQCAtMjExLDEwICsyMDksNiBAQCBTRVQoV2ViQ29yZV9JRExf
RklMRVMKICAgICBodG1sL0hUTUxCdXR0b25FbGVtZW50LmlkbAogICAgIGh0bWwvSFRNTENhbnZh
c0VsZW1lbnQuaWRsCiAgICAgaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGwKLSAgICBodG1sL0hUTUxE
YXRhR3JpZENlbGxFbGVtZW50LmlkbAotICAgIGh0bWwvSFRNTERhdGFHcmlkQ29sRWxlbWVudC5p
ZGwKLSAgICBodG1sL0hUTUxEYXRhR3JpZEVsZW1lbnQuaWRsCi0gICAgaHRtbC9IVE1MRGF0YUdy
aWRSb3dFbGVtZW50LmlkbAogICAgIGh0bWwvSFRNTERhdGFMaXN0RWxlbWVudC5pZGwKICAgICBo
dG1sL0hUTUxEZXRhaWxzRWxlbWVudC5pZGwKICAgICBodG1sL0hUTUxEaXJlY3RvcnlFbGVtZW50
LmlkbApAQCAtNzE4LDEzICs3MTIsMTAgQEAgU0VUKFdlYkNvcmVfU09VUkNFUwogICAgIGh0bWwv
Q2xhc3NMaXN0LmNwcAogICAgIGh0bWwvQ29sbGVjdGlvbkNhY2hlLmNwcAogICAgIGh0bWwvQ29s
b3JJbnB1dFR5cGUuY3BwCi0gICAgaHRtbC9ET01EYXRhR3JpZERhdGFTb3VyY2UuY3BwCiAgICAg
aHRtbC9ET01Gb3JtRGF0YS5jcHAKICAgICBodG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmNwcAog
ICAgIGh0bWwvRE9NVG9rZW5MaXN0LmNwcAogICAgIGh0bWwvRE9NVVJMLmNwcAotICAgIGh0bWwv
RGF0YUdyaWRDb2x1bW4uY3BwCi0gICAgaHRtbC9EYXRhR3JpZENvbHVtbkxpc3QuY3BwCiAgICAg
aHRtbC9EYXRlQ29tcG9uZW50cy5jcHAKICAgICBodG1sL0RhdGVJbnB1dFR5cGUuY3BwCiAgICAg
aHRtbC9EYXRlVGltZUlucHV0VHlwZS5jcHAKQEAgLTc0NywxMCArNzM4LDYgQEAgU0VUKFdlYkNv
cmVfU09VUkNFUwogICAgIGh0bWwvSFRNTENhbnZhc0VsZW1lbnQuY3BwCiAgICAgaHRtbC9IVE1M
Q29sbGVjdGlvbi5jcHAKICAgICBodG1sL0hUTUxETGlzdEVsZW1lbnQuY3BwCi0gICAgaHRtbC9I
VE1MRGF0YUdyaWRDZWxsRWxlbWVudC5jcHAKLSAgICBodG1sL0hUTUxEYXRhR3JpZENvbEVsZW1l
bnQuY3BwCi0gICAgaHRtbC9IVE1MRGF0YUdyaWRFbGVtZW50LmNwcAotICAgIGh0bWwvSFRNTERh
dGFHcmlkUm93RWxlbWVudC5jcHAKICAgICBodG1sL0hUTUxEYXRhTGlzdEVsZW1lbnQuY3BwCiAg
ICAgaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuY3BwCiAgICAgaHRtbC9IVE1MRGlyZWN0b3J5RWxl
bWVudC5jcHAKQEAgLTEyMjEsNyArMTIwOCw2IEBAIFNFVChXZWJDb3JlX1NPVVJDRVMKICAgICBy
ZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmNwcAogICAgIHJlbmRlcmluZy9SZW5kZXJDb21iaW5lVGV4
dC5jcHAKICAgICByZW5kZXJpbmcvUmVuZGVyQ291bnRlci5jcHAKLSAgICByZW5kZXJpbmcvUmVu
ZGVyRGF0YUdyaWQuY3BwCiAgICAgcmVuZGVyaW5nL1JlbmRlckRldGFpbHMuY3BwCiAgICAgcmVu
ZGVyaW5nL1JlbmRlckRldGFpbHNNYXJrZXIuY3BwCiAgICAgcmVuZGVyaW5nL1JlbmRlckVtYmVk
ZGVkT2JqZWN0LmNwcApJbmRleDogU291cmNlL1dlYkNvcmUvQ29kZUdlbmVyYXRvcnMucHJpCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NvZGVHZW5lcmF0b3JzLnByaQkocmV2aXNpb24g
ODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9Db2RlR2VuZXJhdG9ycy5wcmkJKHdvcmtpbmcgY29w
eSkKQEAgLTIxNyw4ICsyMTcsNiBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGh0bWwvY2FudmFz
L1VpbnQ4QXJyYXkuaWRsIFwKICAgICBodG1sL2NhbnZhcy9VaW50MzJBcnJheS5pZGwgXAogICAg
IGh0bWwvY2FudmFzL1VpbnQxNkFycmF5LmlkbCBcCi0gICAgaHRtbC9EYXRhR3JpZENvbHVtbi5p
ZGwgXAotICAgIGh0bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmlkbCBcCiAgICAgaHRtbC9ET01Gb3Jt
RGF0YS5pZGwgXAogICAgIGh0bWwvRE9NU2V0dGFibGVUb2tlbkxpc3QuaWRsIFwKICAgICBodG1s
L0RPTVRva2VuTGlzdC5pZGwgXApAQCAtMjM2LDEwICsyMzQsNiBAQCBJRExfQklORElOR1MgKz0g
XAogICAgIGh0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuaWRsIFwKICAgICBodG1sL0hUTUxDYW52YXNF
bGVtZW50LmlkbCBcCiAgICAgaHRtbC9IVE1MQ29sbGVjdGlvbi5pZGwgXAotICAgIGh0bWwvSFRN
TERhdGFHcmlkRWxlbWVudC5pZGwgXAotICAgIGh0bWwvSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQu
aWRsIFwKLSAgICBodG1sL0hUTUxEYXRhR3JpZENvbEVsZW1lbnQuaWRsIFwKLSAgICBodG1sL0hU
TUxEYXRhR3JpZFJvd0VsZW1lbnQuaWRsIFwKICAgICBodG1sL0hUTUxEYXRhTGlzdEVsZW1lbnQu
aWRsIFwKICAgICBodG1sL0hUTUxEZXRhaWxzRWxlbWVudC5pZGwgXAogICAgIGh0bWwvSFRNTERp
cmVjdG9yeUVsZW1lbnQuaWRsIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAJKHJl
dmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC02OSw4ICs2OSw2IEBACiAjaW5jbHVkZSAiSlNEYXRhYmFzZS5jcHAiCiAj
aW5jbHVkZSAiSlNEYXRhYmFzZUNhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJKU0RhdGFiYXNlU3lu
Yy5jcHAiCi0jaW5jbHVkZSAiSlNEYXRhR3JpZENvbHVtbi5jcHAiCi0jaW5jbHVkZSAiSlNEYXRh
R3JpZENvbHVtbkxpc3QuY3BwIgogI2luY2x1ZGUgIkpTRGF0YVRyYW5zZmVySXRlbS5jcHAiCiAj
aW5jbHVkZSAiSlNEYXRhVHJhbnNmZXJJdGVtcy5jcHAiCiAjaW5jbHVkZSAiSlNEYXRhVmlldy5j
cHAiCkBAIC0xNDcsMTAgKzE0NSw2IEBACiAjaW5jbHVkZSAiSlNIVE1MQnV0dG9uRWxlbWVudC5j
cHAiCiAjaW5jbHVkZSAiSlNIVE1MQ2FudmFzRWxlbWVudC5jcHAiCiAjaW5jbHVkZSAiSlNIVE1M
Q29sbGVjdGlvbi5jcHAiCi0jaW5jbHVkZSAiSlNIVE1MRGF0YUdyaWRFbGVtZW50LmNwcCIKLSNp
bmNsdWRlICJKU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcCIKLSNpbmNsdWRlICJKU0hUTUxE
YXRhR3JpZENvbEVsZW1lbnQuY3BwIgotI2luY2x1ZGUgIkpTSFRNTERhdGFHcmlkUm93RWxlbWVu
dC5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MRGF0YUxpc3RFbGVtZW50LmNwcCIKICNpbmNsdWRlICJK
U0hUTUxEZXRhaWxzRWxlbWVudC5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MRGlyZWN0b3J5RWxlbWVu
dC5jcHAiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UJKHJldmlzaW9uIDg0OTUy
KQorKysgU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQkod29ya2luZyBjb3B5KQpA
QCAtMTMwLDggKzEzMCw2IEBAIERPTV9DTEFTU0VTID0gXAogICAgIENvdW50ZXIgXAogICAgIENy
eXB0byBcCiAgICAgQ3VzdG9tRXZlbnQgXAotICAgIERhdGFHcmlkQ29sdW1uIFwKLSAgICBEYXRh
R3JpZENvbHVtbkxpc3QgXAogICAgIERhdGFUcmFuc2Zlckl0ZW0gXAogICAgIERhdGFUcmFuc2Zl
ckl0ZW1zIFwKICAgICBEZWRpY2F0ZWRXb3JrZXJDb250ZXh0IFwKQEAgLTIxNSwxMCArMjEzLDYg
QEAgRE9NX0NMQVNTRVMgPSBcCiAgICAgSFRNTEJ1dHRvbkVsZW1lbnQgXAogICAgIEhUTUxDYW52
YXNFbGVtZW50IFwKICAgICBIVE1MQ29sbGVjdGlvbiBcCi0gICAgSFRNTERhdGFHcmlkRWxlbWVu
dCBcCi0gICAgSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQgXAotICAgIEhUTUxEYXRhR3JpZENvbEVs
ZW1lbnQgXAotICAgIEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQgXAogICAgIEhUTUxEYXRhTGlzdEVs
ZW1lbnQgXAogICAgIEhUTUxEZXRhaWxzRWxlbWVudCBcCiAgICAgSFRNTERMaXN0RWxlbWVudCBc
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2Vi
Q29yZS9HTlVtYWtlZmlsZS5hbQkod29ya2luZyBjb3B5KQpAQCAtMTM3LDE0ICsxMzcsNiBAQCB3
ZWJjb3JlZ3RrX2NwcGZsYWdzICs9IFwKIGVuZGlmICMgRU5EIFVTRV9QQU5HTwogCiAjIC0tLS0K
LSMgSFRNTCBEYXRhIEdyaWQKLSMgLS0tLQotaWYgRU5BQkxFX0RBVEFHUklECi1GRUFUVVJFX0RF
RklORVMgKz0gRU5BQkxFX0RBVEFHUklEPTEKLXdlYmNvcmVfY3BwZmxhZ3MgKz0gLURFTkFCTEVf
REFUQUdSSUQ9MQotZW5kaWYKLQotIyAtLS0tCiAjIEhUTUwgRGV0YWlscyBFbGVtZW50CiAjIC0t
LS0KIGlmIEVOQUJMRV9ERVRBSUxTCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5s
aXN0LmFtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0J
KHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQko
d29ya2luZyBjb3B5KQpAQCAtOTksMTAgKzk5LDYgQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9
IFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQ1NTVmFsdWVMaXN0LmggXAogCURlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSlNDdXN0b21FdmVudC5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNDdXN0b21FdmVudC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRGF0YUdyaWRD
b2x1bW4uY3BwIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRGF0YUdyaWRDb2x1bW4uaCBc
Ci0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RhdGFHcmlkQ29sdW1uTGlzdC5jcHAgXAotCURl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNEYXRhR3JpZENvbHVtbkxpc3QuaCBcCiAJRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0RhdGFUcmFuc2Zlckl0ZW1zLmggXAogCURlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNEYXRhVHJhbnNmZXJJdGVtcy5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNEYXRhVmlldy5jcHAgXApAQCAtMjEyLDE0ICsyMDgsNiBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJj
ZXMgKz0gXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIVE1MQ2FudmFzRWxlbWVudC5oIFwK
IAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSFRNTENvbGxlY3Rpb24uY3BwIFwKIAlEZXJpdmVk
U291cmNlcy9XZWJDb3JlL0pTSFRNTENvbGxlY3Rpb24uaCBcCi0JRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmggXAotCURlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNIVE1MRGF0YUdyaWRDb2xFbGVtZW50LmNwcCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU0hUTUxEYXRhR3JpZENvbEVsZW1lbnQuaCBcCi0JRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9K
U0hUTUxEYXRhR3JpZEVsZW1lbnQuY3BwIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSFRN
TERhdGFHcmlkRWxlbWVudC5oIFwKLQlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSFRNTERhdGFH
cmlkUm93RWxlbWVudC5jcHAgXAotCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIVE1MRGF0YUdy
aWRSb3dFbGVtZW50LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIVE1MRGF0YUxpc3RF
bGVtZW50LmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxEYXRhTGlzdEVsZW1l
bnQuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxEZXRhaWxzRWxlbWVudC5jcHAg
XApAQCAtNjk0LDkgKzY4Miw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dTaGVsbC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTVdyYXBwZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTVdyYXBwZXIuaCBcCi0JU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEYXRhR3JpZENv
bHVtbkxpc3RDdXN0b20uY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RhdGFH
cmlkRGF0YVNvdXJjZS5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGF0YUdy
aWREYXRhU291cmNlLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGF0YVZpZXdD
dXN0b20uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RlZGljYXRlZFdvcmtl
ckNvbnRleHRDdXN0b20uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Rldmlj
ZU1vdGlvbkV2ZW50Q3VzdG9tLmNwcCBcCkBAIC03MjUsNyArNzEwLDYgQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxBcHBsZXRFbGVtZW50
Q3VzdG9tLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSFRNTENhbnZhc0VsZW1l
bnRDdXN0b20uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxDb2xsZWN0
aW9uQ3VzdG9tLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRGF0YUdy
aWRFbGVtZW50Q3VzdG9tLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1M
RG9jdW1lbnRDdXN0b20uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxF
bGVtZW50Q3VzdG9tLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRW1i
ZWRFbGVtZW50Q3VzdG9tLmNwcCBcCkBAIC0xNTY5LDExICsxNTUzLDYgQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9odG1sL0NvbGxlY3Rpb25UeXBlLmggXAogCVNvdXJj
ZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9odG1s
L0NvbG9ySW5wdXRUeXBlLmggXAotCVNvdXJjZS9XZWJDb3JlL2h0bWwvRGF0YUdyaWRDb2x1bW4u
Y3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9odG1sL0RhdGFHcmlkQ29sdW1uLmggXAotCVNvdXJjZS9X
ZWJDb3JlL2h0bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmNwcCBcCi0JU291cmNlL1dlYkNvcmUvaHRt
bC9EYXRhR3JpZENvbHVtbkxpc3QuaCBcCi0JU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZERh
dGFTb3VyY2UuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9EYXRlQ29tcG9uZW50cy5jcHAgXAog
CVNvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZUNvbXBvbmVudHMuaCBcCiAJU291cmNlL1dlYkNvcmUv
aHRtbC9EYXRlSW5wdXRUeXBlLmNwcCBcCkBAIC0xNTgyLDggKzE1NjEsNiBAQCB3ZWJjb3JlX3Nv
dXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvRGF0ZVRpbWVJbnB1dFR5cGUuaCBcCiAJ
U291cmNlL1dlYkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5wdXRUeXBlLmNwcCBcCiAJU291cmNl
L1dlYkNvcmUvaHRtbC9EYXRlVGltZUxvY2FsSW5wdXRUeXBlLmggXAotCVNvdXJjZS9XZWJDb3Jl
L2h0bWwvRE9NRGF0YUdyaWREYXRhU291cmNlLmNwcCBcCi0JU291cmNlL1dlYkNvcmUvaHRtbC9E
T01EYXRhR3JpZERhdGFTb3VyY2UuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9ET01Gb3JtRGF0
YS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NRm9ybURhdGEuaCBcCiAJU291cmNlL1dl
YkNvcmUvaHRtbC9ET01VUkwuY3BwIFwKQEAgLTE2MjQsMTQgKzE2MDEsNiBAQCB3ZWJjb3JlX3Nv
dXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaCBcCiAJ
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ29sbGVjdGlvbi5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTENvbGxlY3Rpb24uaCBcCi0JU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdy
aWRDZWxsRWxlbWVudC5jcHAgXAotCVNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERhdGFHcmlkQ2Vs
bEVsZW1lbnQuaCBcCi0JU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50
LmNwcCBcCi0JU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50LmggXAot
CVNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERhdGFHcmlkRWxlbWVudC5jcHAgXAotCVNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTERhdGFHcmlkRWxlbWVudC5oIFwKLQlTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxEYXRhR3JpZFJvd0VsZW1lbnQuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxE
YXRhR3JpZFJvd0VsZW1lbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUxpc3RF
bGVtZW50LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUxpc3RFbGVtZW50Lmgg
XAogCVNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERldGFpbHNFbGVtZW50LmNwcCBcCkBAIC0yNzgz
LDggKzI3NTIsNiBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJDb21iaW5lVGV4dC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQ291bnRlci5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJDb3VudGVy
LmggXAotCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJEYXRhR3JpZC5jcHAgXAotCVNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJEYXRhR3JpZC5oIFwKIAlTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyRGV0YWlscy5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJEZXRhaWxzLmggXAogCVNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJEZXRh
aWxzTWFya2VyLmNwcCBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCShyZXZpc2lvbiA4NDk1MikKKysr
IFNvdXJjZS9XZWJDb3JlL1VzZUpTQy5jbWFrZQkod29ya2luZyBjb3B5KQpAQCAtNTAsOCArNTAs
NiBAQCBMSVNUKEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICAgICBiaW5kaW5ncy9qcy9KU0RPTVdp
bmRvd0N1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1NoZWxsLmNwcAogICAg
IGJpbmRpbmdzL2pzL0pTRE9NV3JhcHBlci5jcHAKLSAgICBiaW5kaW5ncy9qcy9KU0RhdGFHcmlk
Q29sdW1uTGlzdEN1c3RvbS5jcHAKLSAgICBiaW5kaW5ncy9qcy9KU0RhdGFHcmlkRGF0YVNvdXJj
ZS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0RlZGljYXRlZFdvcmtlckNvbnRleHRDdXN0b20uY3Bw
CiAgICAgYmluZGluZ3MvanMvSlNEZXZpY2VNb3Rpb25FdmVudEN1c3RvbS5jcHAKICAgICBiaW5k
aW5ncy9qcy9KU0RldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwCkBAIC03MCw3ICs2OCw2
IEBAIExJU1QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEFw
cGxldEVsZW1lbnRDdXN0b20uY3BwCiAgICAgYmluZGluZ3MvanMvSlNIVE1MQ2FudmFzRWxlbWVu
dEN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcAot
ICAgIGJpbmRpbmdzL2pzL0pTSFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAKICAgICBiaW5k
aW5ncy9qcy9KU0hUTUxEb2N1bWVudEN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0hUTUxF
bGVtZW50Q3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTSFRNTEVtYmVkRWxlbWVudEN1c3Rv
bS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCSh3b3JraW5nIGNvcHkpCkBAIC02MDMsNyArNjAzLDYgQEAKICAg
ICAgICAgICAgICdodG1sL0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5oJywKICAgICAgICAgICAgICdo
dG1sL0hUTUxBcHBsZXRFbGVtZW50LmgnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTENvbGxlY3Rp
b24uaCcsCi0gICAgICAgICAgICAnaHRtbC9IVE1MRGF0YUdyaWRFbGVtZW50LmgnLAogICAgICAg
ICAgICAgJ2h0bWwvSFRNTERvY3VtZW50LmgnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTEVsZW1l
bnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmgnLApAQCAt
MTIwMSw4ICsxMjAwLDYgQEAKICAgICAgICAgICAgICdodG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0
LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9ET01Ub2tlbkxpc3QuaWRsJywKICAgICAgICAgICAg
ICdodG1sL0RPTVVSTC5pZGwnLAotICAgICAgICAgICAgJ2h0bWwvRGF0YUdyaWRDb2x1bW4uaWRs
JywKLSAgICAgICAgICAgICdodG1sL0RhdGFHcmlkQ29sdW1uTGlzdC5pZGwnLAogICAgICAgICAg
ICAgJ2h0bWwvSFRNTEFsbENvbGxlY3Rpb24uaWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxB
bmNob3JFbGVtZW50LmlkbCcsCiAgICAgICAgICAgICAnaHRtbC9IVE1MQXBwbGV0RWxlbWVudC5p
ZGwnLApAQCAtMTIxNywxMCArMTIxNCw2IEBACiAgICAgICAgICAgICAnaHRtbC9IVE1MQ2FudmFz
RWxlbWVudC5pZGwnLAogICAgICAgICAgICAgJ2h0bWwvSFRNTENvbGxlY3Rpb24uaWRsJywKICAg
ICAgICAgICAgICdodG1sL0hUTUxETGlzdEVsZW1lbnQuaWRsJywKLSAgICAgICAgICAgICdodG1s
L0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmlkbCcsCi0gICAgICAgICAgICAnaHRtbC9IVE1MRGF0
YUdyaWRDb2xFbGVtZW50LmlkbCcsCi0gICAgICAgICAgICAnaHRtbC9IVE1MRGF0YUdyaWRFbGVt
ZW50LmlkbCcsCi0gICAgICAgICAgICAnaHRtbC9IVE1MRGF0YUdyaWRSb3dFbGVtZW50LmlkbCcs
CiAgICAgICAgICAgICAnaHRtbC9IVE1MRGF0YUxpc3RFbGVtZW50LmlkbCcsCiAgICAgICAgICAg
ICAnaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaWRsJywKICAgICAgICAgICAgICdodG1sL0hUTUxE
aXJlY3RvcnlFbGVtZW50LmlkbCcsCkBAIC0xNzU0LDkgKzE3NDcsNiBAQAogICAgICAgICAgICAg
J2JpbmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdz
L2pzL0pTRE9NV2luZG93U2hlbGwuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0RP
TVdyYXBwZXIuY3BwJywKLSAgICAgICAgICAgICdiaW5kaW5ncy9qcy9KU0RhdGFHcmlkQ29sdW1u
TGlzdEN1c3RvbS5jcHAnLAotICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTRGF0YUdyaWREYXRh
U291cmNlLmNwcCcsCi0gICAgICAgICAgICAnYmluZGluZ3MvanMvSlNEYXRhR3JpZERhdGFTb3Vy
Y2UuaCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNEYXRhVmlld0N1c3RvbS5jcHAnLAog
ICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTRGVkaWNhdGVkV29ya2VyQ29udGV4dEN1c3RvbS5j
cHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTRGVza3RvcE5vdGlmaWNhdGlvbnNDdXN0
b20uY3BwJywKQEAgLTE3ODYsNyArMTc3Niw2IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvanMv
SlNIVE1MQXBwbGV0RWxlbWVudEN1c3RvbS5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9K
U0hUTUxDYW52YXNFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMv
SlNIVE1MQ29sbGVjdGlvbkN1c3RvbS5jcHAnLAotICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pT
SFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pz
L0pTSFRNTERvY3VtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvSlNI
VE1MRWxlbWVudEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0pTSFRNTEVt
YmVkRWxlbWVudEN1c3RvbS5jcHAnLApAQCAtMjAyMCw4ICsyMDA5LDYgQEAKICAgICAgICAgICAg
ICdiaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmgnLAogICAgICAgICAgICAgJ2JpbmRpbmdz
L3Y4L1Y4RE9NV3JhcHBlci5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L1Y4RE9NV3Jh
cHBlci5oJywKLSAgICAgICAgICAgICdiaW5kaW5ncy92OC9WOERhdGFHcmlkRGF0YVNvdXJjZS5j
cHAnLAotICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L1Y4RGF0YUdyaWREYXRhU291cmNlLmgnLAog
ICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L1Y4RXZlbnRMaXN0ZW5lci5jcHAnLAogICAgICAgICAg
ICAgJ2JpbmRpbmdzL3Y4L1Y4RXZlbnRMaXN0ZW5lci5oJywKICAgICAgICAgICAgICdiaW5kaW5n
cy92OC9WOEV2ZW50TGlzdGVuZXJMaXN0LmNwcCcsCkBAIC0yMDkxLDcgKzIwNzgsNiBAQAogICAg
ICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVN0cmluZ01hcEN1c3RvbS5jcHAnLAog
ICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVRva2VuTGlzdEN1c3RvbS5jcHAn
LAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAn
LAotICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERhdGFHcmlkQ29sdW1uTGlzdEN1
c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERhdGFWaWV3Q3Vz
dG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGVkaWNhdGVkV29y
a2VyQ29udGV4dEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OERldmljZU1vdGlvbkV2ZW50Q3VzdG9tLmNwcCcsCkBAIC0yMTEzLDcgKzIwOTksNiBAQAogICAg
ICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxBdWRpb0VsZW1lbnRDb25zdHJ1Y3Rv
ci5oJywKICAgICAgICAgICAgICdiaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MQ2FudmFzRWxlbWVu
dEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxDb2xs
ZWN0aW9uQ3VzdG9tLmNwcCcsCi0gICAgICAgICAgICAnYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRN
TERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOEhUTUxEb2N1bWVudEN1c3RvbS5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOEhUTUxFbGVtZW50Q3VzdG9tLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3Mv
djgvY3VzdG9tL1Y4SFRNTEZvcm1FbGVtZW50Q3VzdG9tLmNwcCcsCkBAIC0yODE1LDggKzI4MDAs
NiBAQAogICAgICAgICAgICAgJ2h0bWwvQ29sbGVjdGlvbkNhY2hlLmNwcCcsCiAgICAgICAgICAg
ICAnaHRtbC9Db2xvcklucHV0VHlwZS5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvQ29sb3JJbnB1
dFR5cGUuaCcsCi0gICAgICAgICAgICAnaHRtbC9ET01EYXRhR3JpZERhdGFTb3VyY2UuY3BwJywK
LSAgICAgICAgICAgICdodG1sL0RPTURhdGFHcmlkRGF0YVNvdXJjZS5oJywKICAgICAgICAgICAg
ICdodG1sL0RPTUZvcm1EYXRhLmNwcCcsCiAgICAgICAgICAgICAnaHRtbC9ET01Gb3JtRGF0YS5o
JywKICAgICAgICAgICAgICdodG1sL0RPTVNldHRhYmxlVG9rZW5MaXN0LmNwcCcsCkBAIC0yODI1
LDExICsyODA4LDYgQEAKICAgICAgICAgICAgICdodG1sL0RPTVRva2VuTGlzdC5oJywKICAgICAg
ICAgICAgICdodG1sL0RPTVVSTC5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvRE9NVVJMLmgnLAot
ICAgICAgICAgICAgJ2h0bWwvRGF0YUdyaWRDb2x1bW4uY3BwJywKLSAgICAgICAgICAgICdodG1s
L0RhdGFHcmlkQ29sdW1uLmgnLAotICAgICAgICAgICAgJ2h0bWwvRGF0YUdyaWRDb2x1bW5MaXN0
LmNwcCcsCi0gICAgICAgICAgICAnaHRtbC9EYXRhR3JpZENvbHVtbkxpc3QuaCcsCi0gICAgICAg
ICAgICAnaHRtbC9EYXRhR3JpZERhdGFTb3VyY2UuaCcsCiAgICAgICAgICAgICAnaHRtbC9EYXRl
Q29tcG9uZW50cy5jcHAnLAogICAgICAgICAgICAgJ2h0bWwvRGF0ZUlucHV0VHlwZS5jcHAnLAog
ICAgICAgICAgICAgJ2h0bWwvRGF0ZUlucHV0VHlwZS5oJywKQEAgLTI4NzIsMTMgKzI4NTAsNiBA
QAogICAgICAgICAgICAgJ2h0bWwvSFRNTENvbGxlY3Rpb24uY3BwJywKICAgICAgICAgICAgICdo
dG1sL0hUTUxETGlzdEVsZW1lbnQuY3BwJywKICAgICAgICAgICAgICdodG1sL0hUTUxETGlzdEVs
ZW1lbnQuaCcsCi0gICAgICAgICAgICAnaHRtbC9IVE1MRGF0YUdyaWRDZWxsRWxlbWVudC5jcHAn
LAotICAgICAgICAgICAgJ2h0bWwvSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaCcsCi0gICAgICAg
ICAgICAnaHRtbC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50LmNwcCcsCi0gICAgICAgICAgICAnaHRt
bC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50LmgnLAotICAgICAgICAgICAgJ2h0bWwvSFRNTERhdGFH
cmlkRWxlbWVudC5jcHAnLAotICAgICAgICAgICAgJ2h0bWwvSFRNTERhdGFHcmlkUm93RWxlbWVu
dC5jcHAnLAotICAgICAgICAgICAgJ2h0bWwvSFRNTERhdGFHcmlkUm93RWxlbWVudC5oJywKICAg
ICAgICAgICAgICdodG1sL0hUTUxEYXRhTGlzdEVsZW1lbnQuY3BwJywKICAgICAgICAgICAgICdo
dG1sL0hUTUxEYXRhTGlzdEVsZW1lbnQuaCcsCiAgICAgICAgICAgICAnaHRtbC9IVE1MRGV0YWls
c0VsZW1lbnQuY3BwJywKQEAgLTUxNzgsOCArNTE0OSw2IEBACiAgICAgICAgICAgICAncmVuZGVy
aW5nL1JlbmRlckNvbWJpbmVUZXh0LmgnLAogICAgICAgICAgICAgJ3JlbmRlcmluZy9SZW5kZXJD
b3VudGVyLmNwcCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL1JlbmRlckNvdW50ZXIuaCcsCi0g
ICAgICAgICAgICAncmVuZGVyaW5nL1JlbmRlckRhdGFHcmlkLmNwcCcsCi0gICAgICAgICAgICAn
cmVuZGVyaW5nL1JlbmRlckRhdGFHcmlkLmgnLAogICAgICAgICAgICAgJ3JlbmRlcmluZy9SZW5k
ZXJEZXRhaWxzLmNwcCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL1JlbmRlckRldGFpbHMuaCcs
CiAgICAgICAgICAgICAncmVuZGVyaW5nL1JlbmRlckRldGFpbHNNYXJrZXIuY3BwJywKQEAgLTcx
MzQsMTAgKzcxMDMsNiBAQAogICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNET01VUkwuY3BwJywKICAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9E
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRE9NVVJMLmgnLAogICAgICAgICAgICAgJzwoUFJPRFVD
VF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNET01XaW5kb3cuY3BwJywKLSAgICAgICAg
ICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRGF0YUdyaWRDb2x1
bW4uY3BwJywKLSAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTRGF0YUdyaWRDb2x1bW4uaCcsCi0gICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RhdGFHcmlkQ29sdW1uTGlzdC5jcHAnLAotICAgICAgICAg
ICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNEYXRhR3JpZENvbHVt
bkxpc3QuaCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0RhdGFWaWV3LmNwcCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0RhdGFWaWV3LmgnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNEYXRhYmFzZS5jcHAnLApAQCAtNzI1OCwxNCAr
NzIyMyw2IEBACiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0hUTUxDb2xsZWN0aW9uLmgnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIVE1MRExpc3RFbGVtZW50LmNwcCcsCiAgICAgICAgICAg
ICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxETGlzdEVsZW1l
bnQuaCcsCi0gICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS9KU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcCcsCi0gICAgICAgICAgICAnPChQUk9EVUNU
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50Lmgn
LAotICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNI
VE1MRGF0YUdyaWRDb2xFbGVtZW50LmNwcCcsCi0gICAgICAgICAgICAnPChQUk9EVUNUX0RJUikv
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxEYXRhR3JpZENvbEVsZW1lbnQuaCcsCi0gICAg
ICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxEYXRh
R3JpZEVsZW1lbnQuY3BwJywKLSAgICAgICAgICAgICc8KFBST0RVQ1RfRElSKS9EZXJpdmVkU291
cmNlcy9XZWJDb3JlL0pTSFRNTERhdGFHcmlkRWxlbWVudC5oJywKLSAgICAgICAgICAgICc8KFBS
T0RVQ1RfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTSFRNTERhdGFHcmlkUm93RWxlbWVu
dC5jcHAnLAotICAgICAgICAgICAgJzwoUFJPRFVDVF9ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvSlNIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmgnLAogICAgICAgICAgICAgJzwoUFJPRFVDVF9E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIVE1MRGF0YUxpc3RFbGVtZW50LmNwcCcsCiAg
ICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxE
YXRhTGlzdEVsZW1lbnQuaCcsCiAgICAgICAgICAgICAnPChQUk9EVUNUX0RJUikvRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0hUTUxEZXRhaWxzRWxlbWVudC5jcHAnLApJbmRleDogU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5wcm8KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS5w
cm8JKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8JKHdvcmtp
bmcgY29weSkKQEAgLTExNSw3ICsxMTUsNiBAQCB2OCB7CiAgICAgICAgIGJpbmRpbmdzL3Y4L1Y4
Q29sbGVjdGlvbi5jcHAgXAogICAgICAgICBiaW5kaW5ncy92OC9WOERPTU1hcC5jcHAgXAogICAg
ICAgICBiaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3BwIFwKLSAgICAgICAgYmluZGluZ3Mvdjgv
VjhEYXRhR3JpZERhdGFTb3VyY2UuY3BwIFwKICAgICAgICAgYmluZGluZ3MvdjgvVjhFdmVudExp
c3RlbmVyLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL3Y4L1Y4RXZlbnRMaXN0ZW5lckxpc3QuY3Bw
IFwKICAgICAgICAgYmluZGluZ3MvdjgvVjhHQ0NvbnRyb2xsZXIuY3BwIFwKQEAgLTE1OSw3ICsx
NTgsNiBAQCB2OCB7CiAgICAgICAgIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEN1c3RvbVZvaWRDYWxs
YmFjay5jcHAgXAogICAgICAgICBiaW5kaW5ncy92OC9jdXN0b20vVjhET01Gb3JtRGF0YUN1c3Rv
bS5jcHAgXAogICAgICAgICBiaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3Bw
IFwKLSAgICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YUdyaWRDb2x1bW5MaXN0Q3VzdG9t
LmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERlZGljYXRlZFdvcmtlckNvbnRl
eHRDdXN0b20uY3BwIFwKICAgICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4RG9jdW1lbnRDdXN0
b20uY3BwIFwKICAgICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4RG9jdW1lbnRMb2NhdGlvbkN1
c3RvbS5jcHAgXApAQCAtMTc3LDcgKzE3NSw2IEBAIHY4IHsKICAgICBTT1VSQ0VTICs9IFwKICAg
ICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTENhbnZhc0VsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTENvbGxlY3Rpb25DdXN0b20uY3BwIFwK
LSAgICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5j
cHAgXAogICAgICAgICBiaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MRG9jdW1lbnRDdXN0b20uY3Bw
IFwKICAgICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTEVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICAgICAgYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTEZvcm1FbGVtZW50Q3VzdG9tLmNwcCBc
CkBAIC0yNjgsOCArMjY1LDYgQEAgdjggewogICAgICAgICBiaW5kaW5ncy9qcy9KU0RPTVdpbmRv
d0N1c3RvbS5jcHAgXAogICAgICAgICBiaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1NoZWxsLmNwcCBc
CiAgICAgICAgIGJpbmRpbmdzL2pzL0pTRE9NV3JhcHBlci5jcHAgXAotICAgICAgICBiaW5kaW5n
cy9qcy9KU0RhdGFHcmlkQ29sdW1uTGlzdEN1c3RvbS5jcHAgXAotICAgICAgICBiaW5kaW5ncy9q
cy9KU0RhdGFHcmlkRGF0YVNvdXJjZS5jcHAgXAogICAgICAgICBiaW5kaW5ncy9qcy9KU0RhdGFW
aWV3Q3VzdG9tLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTRGVza3RvcE5vdGlmaWNhdGlv
bnNDdXN0b20uY3BwIFwKICAgICAgICAgYmluZGluZ3MvanMvSlNEZXZpY2VNb3Rpb25FdmVudEN1
c3RvbS5jcHAgXApAQCAtMjg5LDcgKzI4NCw2IEBAIHY4IHsKICAgICAgICAgYmluZGluZ3MvanMv
SlNIVE1MQXBwbGV0RWxlbWVudEN1c3RvbS5jcHAgXAogICAgICAgICBiaW5kaW5ncy9qcy9KU0hU
TUxDYW52YXNFbGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTSFRNTENv
bGxlY3Rpb25DdXN0b20uY3BwIFwKLSAgICAgICAgYmluZGluZ3MvanMvSlNIVE1MRGF0YUdyaWRF
bGVtZW50Q3VzdG9tLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTSFRNTERvY3VtZW50Q3Vz
dG9tLmNwcCBcCiAgICAgICAgIGJpbmRpbmdzL2pzL0pTSFRNTEVsZW1lbnRDdXN0b20uY3BwIFwK
ICAgICAgICAgYmluZGluZ3MvanMvSlNIVE1MRW1iZWRFbGVtZW50Q3VzdG9tLmNwcCBcCkBAIC02
NDIsMTMgKzYzNiwxMCBAQCBTT1VSQ0VTICs9IFwKICAgICBodG1sL0NsYXNzTGlzdC5jcHAgXAog
ICAgIGh0bWwvQ29sbGVjdGlvbkNhY2hlLmNwcCBcCiAgICAgaHRtbC9Db2xvcklucHV0VHlwZS5j
cHAgXAotICAgIGh0bWwvRE9NRGF0YUdyaWREYXRhU291cmNlLmNwcCBcCiAgICAgaHRtbC9ET01G
b3JtRGF0YS5jcHAgXAogICAgIGh0bWwvRE9NU2V0dGFibGVUb2tlbkxpc3QuY3BwIFwKICAgICBo
dG1sL0RPTVRva2VuTGlzdC5jcHAgXAogICAgIGh0bWwvRE9NVVJMLmNwcCBcCi0gICAgaHRtbC9E
YXRhR3JpZENvbHVtbi5jcHAgXAotICAgIGh0bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmNwcCBcCiAg
ICAgaHRtbC9EYXRlQ29tcG9uZW50cy5jcHAgXAogICAgIGh0bWwvRGF0ZUlucHV0VHlwZS5jcHAg
XAogICAgIGh0bWwvRGF0ZVRpbWVJbnB1dFR5cGUuY3BwIFwKQEAgLTY3MSwxMCArNjYyLDYgQEAg
U09VUkNFUyArPSBcCiAgICAgaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5jcHAgXAogICAgIGh0bWwv
SFRNTENvbGxlY3Rpb24uY3BwIFwKICAgICBodG1sL0hUTUxETGlzdEVsZW1lbnQuY3BwIFwKLSAg
ICBodG1sL0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcCBcCi0gICAgaHRtbC9IVE1MRGF0YUdy
aWRDb2xFbGVtZW50LmNwcCBcCi0gICAgaHRtbC9IVE1MRGF0YUdyaWRFbGVtZW50LmNwcCBcCi0g
ICAgaHRtbC9IVE1MRGF0YUdyaWRSb3dFbGVtZW50LmNwcCBcCiAgICAgaHRtbC9IVE1MRGF0YUxp
c3RFbGVtZW50LmNwcCBcCiAgICAgaHRtbC9IVE1MRGlyZWN0b3J5RWxlbWVudC5jcHAgXAogICAg
IGh0bWwvSFRNTERldGFpbHNFbGVtZW50LmNwcCBcCkBAIC0xMTAzLDcgKzEwOTAsNiBAQCBTT1VS
Q0VTICs9IFwKICAgICByZW5kZXJpbmcvUmVuZGVyQnV0dG9uLmNwcCBcCiAgICAgcmVuZGVyaW5n
L1JlbmRlckNvbWJpbmVUZXh0LmNwcCBcCiAgICAgcmVuZGVyaW5nL1JlbmRlckNvdW50ZXIuY3Bw
IFwKLSAgICByZW5kZXJpbmcvUmVuZGVyRGF0YUdyaWQuY3BwIFwKICAgICByZW5kZXJpbmcvUmVu
ZGVyRGV0YWlscy5jcHAgXAogICAgIHJlbmRlcmluZy9SZW5kZXJEZXRhaWxzTWFya2VyLmNwcCBc
CiAgICAgcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmNwcCBcCkBAIC0xMjY0LDcgKzEy
NTAsNiBAQCB2OCB7CiAgICAgICAgIGJpbmRpbmdzL3Y4L1Y4QWJzdHJhY3RFdmVudExpc3RlbmVy
LmggXAogICAgICAgICBiaW5kaW5ncy92OC9WOEJpbmRpbmcuaCBcCiAgICAgICAgIGJpbmRpbmdz
L3Y4L1Y4Q29sbGVjdGlvbi5oIFwKLSAgICAgICAgYmluZGluZ3MvdjgvVjhEYXRhR3JpZERhdGFT
b3VyY2UuaCBcCiAgICAgICAgIGJpbmRpbmdzL3Y4L1Y4RE9NTWFwLmggXAogICAgICAgICBiaW5k
aW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmggXAogICAgICAgICBiaW5kaW5ncy92OC9WOERPTVdy
YXBwZXIuaCBcCkBAIC0xMzA3LDcgKzEyOTIsNiBAQCB2OCB7CiAgICAgICAgIGJpbmRpbmdzL2pz
L0pTRE9NV2luZG93Q3VzdG9tLmggXAogICAgICAgICBiaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1No
ZWxsLmggXAogICAgICAgICBiaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXIuaCBcCi0gICAgICAgIGJp
bmRpbmdzL2pzL0pTRGF0YUdyaWREYXRhU291cmNlLmggXAogICAgICAgICBiaW5kaW5ncy9qcy9K
U0Vycm9ySGFuZGxlci5oIFwKICAgICAgICAgYmluZGluZ3MvanMvSlNFdmVudExpc3RlbmVyLmgg
XAogICAgICAgICBiaW5kaW5ncy9qcy9KU0V2ZW50VGFyZ2V0LmggXApAQCAtMTYzMSwxMCArMTYx
NSw3IEBAIEhFQURFUlMgKz0gXAogICAgIGh0bWwvY2FudmFzL1VpbnQ4QXJyYXkuaCBcCiAgICAg
aHRtbC9DbGFzc0xpc3QuaCBcCiAgICAgaHRtbC9Db2xsZWN0aW9uQ2FjaGUuaCBcCi0gICAgaHRt
bC9EYXRhR3JpZENvbHVtbi5oIFwKLSAgICBodG1sL0RhdGFHcmlkQ29sdW1uTGlzdC5oIFwKICAg
ICBodG1sL0RhdGVDb21wb25lbnRzLmggXAotICAgIGh0bWwvRE9NRGF0YUdyaWREYXRhU291cmNl
LmggXAogICAgIGh0bWwvRE9NRm9ybURhdGEuaCBcCiAgICAgaHRtbC9ET01TZXR0YWJsZVRva2Vu
TGlzdC5oIFwKICAgICBodG1sL0RPTVRva2VuTGlzdC5oIFwKQEAgLTE2NTUsMTAgKzE2MzYsNiBA
QCBIRUFERVJTICs9IFwKICAgICBodG1sL0hUTUxCdXR0b25FbGVtZW50LmggXAogICAgIGh0bWwv
SFRNTENhbnZhc0VsZW1lbnQuaCBcCiAgICAgaHRtbC9IVE1MQ29sbGVjdGlvbi5oIFwKLSAgICBo
dG1sL0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmggXAotICAgIGh0bWwvSFRNTERhdGFHcmlkQ29s
RWxlbWVudC5oIFwKLSAgICBodG1sL0hUTUxEYXRhR3JpZEVsZW1lbnQuaCBcCi0gICAgaHRtbC9I
VE1MRGF0YUdyaWRSb3dFbGVtZW50LmggXAogICAgIGh0bWwvSFRNTERpcmVjdG9yeUVsZW1lbnQu
aCBcCiAgICAgaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaCBcCiAgICAgaHRtbC9IVE1MRGl2RWxl
bWVudC5oIFwKQEAgLTIxMjEsNyArMjA5OCw2IEBAIEhFQURFUlMgKz0gXAogICAgIHJlbmRlcmlu
Zy9SZW5kZXJCdXR0b24uaCBcCiAgICAgcmVuZGVyaW5nL1JlbmRlckNvbWJpbmVUZXh0LmggXAog
ICAgIHJlbmRlcmluZy9SZW5kZXJDb3VudGVyLmggXAotICAgIHJlbmRlcmluZy9SZW5kZXJEYXRh
R3JpZC5oIFwKICAgICByZW5kZXJpbmcvUmVuZGVyRGV0YWlscy5oIFwKICAgICByZW5kZXJpbmcv
UmVuZGVyRGV0YWlsc01hcmtlci5oIFwKICAgICByZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmpl
Y3QuaCBcCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9mZWF0dXJlcy5wcmkKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvZmVhdHVyZXMucHJpCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9X
ZWJDb3JlL2ZlYXR1cmVzLnByaQkod29ya2luZyBjb3B5KQpAQCAtNjQsNyArNjQsNiBAQCBjb250
YWlucyhERUZJTkVTLCBFTkFCTEVfU0lOR0xFX1RIUkVBREVECiAhY29udGFpbnMoREVGSU5FUywg
RU5BQkxFX1NIQVJFRF9XT1JLRVJTPS4pOiBERUZJTkVTICs9IEVOQUJMRV9TSEFSRURfV09SS0VS
Uz0xCiAhY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1dPUktFUlM9Lik6IERFRklORVMgKz0gRU5B
QkxFX1dPUktFUlM9MQogIWNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9YSFRNTE1QPS4pOiBERUZJ
TkVTICs9IEVOQUJMRV9YSFRNTE1QPTAKLSFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfREFUQUdS
SUQ9Lik6IERFRklORVMgKz0gRU5BQkxFX0RBVEFHUklEPTAKICFjb250YWlucyhERUZJTkVTLCBF
TkFCTEVfREVUQUlMUz0uKTogREVGSU5FUyArPSBFTkFCTEVfREVUQUlMUz0xCiAhY29udGFpbnMo
REVGSU5FUywgRU5BQkxFX01FVEVSX1RBRz0uKTogREVGSU5FUyArPSBFTkFCTEVfTUVURVJfVEFH
PTEKICFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfUFJPR1JFU1NfVEFHPS4pOiBERUZJTkVTICs9
IEVOQUJMRV9QUk9HUkVTU19UQUc9MQpAQCAtMTk5LDcgKzE5OCw2IEBAIEZFQVRVUkVfREVGSU5F
U19KQVZBU0NSSVBUID0gTEFOR1VBR0VfSkEKIHY4OiBGRUFUVVJFX0RFRklORVNfSkFWQVNDUklQ
VCArPSBWOF9CSU5ESU5HPTEKIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9DSEFOTkVMX01FU1NB
R0lORz0xKTogRkVBVFVSRV9ERUZJTkVTX0pBVkFTQ1JJUFQgKz0gRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HPTEKIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9PUklFTlRBVElPTl9FVkVOVFM9MSk6
IEZFQVRVUkVfREVGSU5FU19KQVZBU0NSSVBUICs9IEVOQUJMRV9PUklFTlRBVElPTl9FVkVOVFM9
MQotY29udGFpbnMoREVGSU5FUywgRU5BQkxFX0RBVEFHUklEPTEpOiBGRUFUVVJFX0RFRklORVNf
SkFWQVNDUklQVCArPSBFTkFCTEVfREFUQUdSSUQ9MQogY29udGFpbnMoREVGSU5FUywgRU5BQkxF
X0VWRU5UU09VUkNFPTEpOiBGRUFUVVJFX0RFRklORVNfSkFWQVNDUklQVCArPSBFTkFCTEVfRVZF
TlRTT1VSQ0U9MQogY29udGFpbnMoREVGSU5FUywgRU5BQkxFX0RBVEFCQVNFPTEpOiBGRUFUVVJF
X0RFRklORVNfSkFWQVNDUklQVCArPSBFTkFCTEVfREFUQUJBU0U9MQogY29udGFpbnMoREVGSU5F
UywgRU5BQkxFX0RBVEFMSVNUPTEpOiBGRUFUVVJFX0RFRklORVNfSkFWQVNDUklQVCArPSBFTkFC
TEVfREFUQUxJU1Q9MQpJbmRleDogU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNl
L1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcg
Y29weSkKQEAgLTYxLDcgKzYxLDYgQEAgRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTiA9
ICQoRU5BQgogRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTl9tYWNvc3ggPSBFTkFCTEVf
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OOwogCiBFTkFCTEVfREFUQUJBU0UgPSBFTkFCTEVfREFU
QUJBU0U7Ci1FTkFCTEVfREFUQUdSSUQgPSA7CiAKIEVOQUJMRV9EQVRBTElTVCA9ICQoRU5BQkxF
X0RBVEFMSVNUXyQoUkVBTF9QTEFURk9STV9OQU1FKSk7CiBFTkFCTEVfREFUQUxJU1RfbWFjb3N4
ID0gRU5BQkxFX0RBVEFMSVNUOwpAQCAtMTMyLDQgKzEzMSw0IEBAIEVOQUJMRV9YSFRNTE1QID0g
OwogRU5BQkxFX1hQQVRIID0gRU5BQkxFX1hQQVRIOwogRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNM
VDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVf
QUNDRUxFUkFURURfMkRfQ0FOVkFTKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfM0RfUkVOREVS
SU5HKSAkKEVOQUJMRV9CTE9CKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVf
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFU
QUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAk
KEVOQUJMRV9ERVRBSUxTKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJ
UkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJD
RSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZVTExT
Q1JFRU5fQVBJKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAk
KEVOQUJMRV9JTUFHRV9SRVNJWkVSKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJM
RV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01B
VEhNTCkgJChFTkFCTEVfTUVURVJfVEFHKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkp
ICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExF
UikgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcp
ICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVf
U1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19G
T1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxF
X1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9XRUJfQVVE
SU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9X
TUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAk
KEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gp
ICQoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxF
XzNEX1JFTkRFUklORykgJChFTkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcp
ICQoRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQo
RU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9E
RVRBSUxTKSAkKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9V
UExPQUQpICQoRU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFC
TEVfRklMVEVSUykgJChFTkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJ
KSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9J
TUFHRV9SRVNJWkVSKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9T
UEVFQ0gpICQoRU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChF
TkFCTEVfTUVURVJfVEFHKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5F
X1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxF
X1BST0dSRVNTX1RBRykgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChFTkFC
TEVfUVVPVEEpICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxF
X1NWR19BTklNQVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9P
QkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09C
SkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RS
QUNLKSAkKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5B
QkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XTUwpICQoRU5B
QkxFX1dPUktFUlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9Y
U0xUKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dl
YkNvcmUudmNwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0yNjUwLDExOCArMjY1MCw2IEBACiAJCQkJ
PgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlv
bkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNEYXRhR3JpZENv
bHVtbi5jcHAiCi0JCQkJPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1
Z3xXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRv
b2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUmVsZWFzZXxX
aW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wK
LQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmln
dXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm9f
Q0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJ
CQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0Zp
bGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJSZWxl
YXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0J
CQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+
Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJ
TmFtZT0iRGVidWdfQWxsfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJ
CQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4K
LQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlO
YW1lPSJQcm9kdWN0aW9ufFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJ
CQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4K
LQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKLQkJCQlSZWxh
dGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVy
aXZlZFNvdXJjZXNcSlNEYXRhR3JpZENvbHVtbi5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxG
aWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqXCQoUHJv
amVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRGF0YUdyaWRDb2x1bW5MaXN0LmNwcCIKLQkJCQk+
Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgotCQkJCQlF
eGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0i
VkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJ
CTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgotCQkJCQlFeGNs
dWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkND
TENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxG
aWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb19DRkxpdGV8V2luMzIiCi0J
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZMaXRl
fFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9v
bAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25m
aWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z19BbGx8
V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29s
Ci0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZp
Z3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlByb2R1Y3Rpb258
V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29s
Ci0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZp
Z3VyYXRpb24+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iJChDb25m
aWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0Rh
dGFHcmlkQ29sdW1uTGlzdC5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCiAJCQkJUmVs
YXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERl
cml2ZWRTb3VyY2VzXEpTRGF0YVRyYW5zZmVySXRlbS5jcHAiCiAJCQkJPgogCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbgpAQCAtNjM4MiwyMzAgKzYyNzAsNiBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJ
CTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqXCQo
UHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuY3Bw
IgotCQkJCT4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWd8V2luMzIi
Ci0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJ
CQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRp
b24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiCi0J
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxX
aW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wK
LQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmln
dXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUmVsZWFzZV9DYWly
b19DRkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0J
CQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwv
RmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRl
YnVnX0FsbHxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJ
CQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUHJv
ZHVjdGlvbnxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJ
CQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRo
PSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3Vy
Y2VzXEpTSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8
RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFBy
b2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0hUTUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwIgot
CQkJCT4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWd8V2luMzIiCi0J
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiCi0JCQkJ
CUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1l
PSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0J
CQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4z
MiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJ
CQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJh
dGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb19D
RkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJ
CTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVn
X0FsbHxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJ
PFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxl
Q29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUHJvZHVj
dGlvbnxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJ
PFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxl
Q29uZmlndXJhdGlvbj4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIk
KENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2Vz
XEpTSFRNTERhdGFHcmlkQ29sRWxlbWVudC5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxl
Ci0JCQkJUmVsYXRpdmVQYXRoPSIkKENvbmZpZ3VyYXRpb25CdWlsZERpcilcb2JqXCQoUHJvamVj
dE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTSFRNTERhdGFHcmlkRWxlbWVudC5jcHAiCi0JCQkJPgot
CQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKLQkJCQkJRXhj
bHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZD
Q0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8
RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUmVsZWFzZXxXaW4zMiIKLQkJCQkJRXhjbHVk
ZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xD
b21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJ
CQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFt
ZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgot
CQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxX
aW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wK
LQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmln
dXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWdfQWxsfFdp
bjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAot
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJQcm9kdWN0aW9ufFdp
bjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAot
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9IiQoQ29uZmln
dXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNIVE1M
RGF0YUdyaWRFbGVtZW50LmgiCi0JCQkJPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKLQkJCQlSZWxh
dGl2ZVBhdGg9IiQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVy
aXZlZFNvdXJjZXNcSlNIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmNwcCIKLQkJCQk+Ci0JCQkJPEZp
bGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZy
b21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBp
bGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbgotCQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmln
dXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z19DYWlyb19DRkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1
ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZp
bGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgot
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJ
TmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
PgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiCi0J
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5hbWU9IlByb2R1Y3Rpb258V2luMzIiCi0J
CQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlO
YW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+
Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iJChDb25maWd1cmF0aW9u
QnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0hUTUxEYXRhR3Jp
ZFJvd0VsZW1lbnQuaCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQogCQkJCVJlbGF0aXZl
UGF0aD0iJChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVk
U291cmNlc1xKU0hUTUxEYXRhTGlzdEVsZW1lbnQuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24KQEAgLTMzODAyLDYyICszMzQ2Niw2IEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJ
PEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXHJlbmRlcmluZ1xSZW5kZXJEYXRhR3JpZC5jcHAi
Ci0JCQkJPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIK
LQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJ
CU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlv
bj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iUmVsZWFzZXxXaW4zMiIKLQkJ
CQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4K
LQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdp
bjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAot
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJv
X0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJ
CQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVi
dWdfQWxsfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJ
CQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0Zp
bGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1lPSJQcm9k
dWN0aW9ufFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJ
CQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJCQk8L0Zp
bGVDb25maWd1cmF0aW9uPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXHJlbmRlcmluZ1xSZW5kZXJEYXRhR3JpZC5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxG
aWxlCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxyZW5kZXJpbmdcUmVuZGVyRGV0YWlscy5jcHAiCiAJ
CQkJPgogCQkJCTxGaWxlQ29uZmlndXJhdGlvbgpAQCAtNTE1MjYsMjYgKzUxMTM0LDYgQEAKIAkJ
CQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxEYXRh
R3JpZENvbHVtbi5jcHAiCi0JCQkJPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKLQkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGh0bWxcRGF0YUdyaWRDb2x1bW4uaCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8
RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxEYXRhR3JpZENvbHVtbkxpc3QuY3BwIgot
CQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXERh
dGFHcmlkQ29sdW1uTGlzdC5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVs
YXRpdmVQYXRoPSIuLlxodG1sXERhdGFHcmlkRGF0YVNvdXJjZS5oIgotCQkJCT4KLQkJCTwvRmls
ZT4KLQkJCTxGaWxlCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXGNhbnZhc1xEYXRhVmlldy5j
cHAiCiAJCQkJPgogCQkJPC9GaWxlPgpAQCAtNTE2MjIsMTQgKzUxMjEwLDYgQEAKIAkJCQk+CiAJ
CQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxET01EYXRhR3Jp
ZERhdGFTb3VyY2UuY3BwIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRp
dmVQYXRoPSIuLlxodG1sXERPTURhdGFHcmlkRGF0YVNvdXJjZS5oIgotCQkJCT4KLQkJCTwvRmls
ZT4KLQkJCTxGaWxlCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxmaWxlYXBpXERPTUZpbGVQYXRoLmNw
cCIKIAkJCQk+CiAJCQk8L0ZpbGU+CkBAIC01MjU2NiwyMzAgKzUyMTQ2LDYgQEAKIAkJCQk+CiAJ
CQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxIVE1MRGF0YUdy
aWRDZWxsRWxlbWVudC5jcHAiCi0JCQkJPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlO
YW1lPSJEZWJ1Z3xXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4K
LQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJ
PC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0i
UmVsZWFzZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJ
CQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFtZT0iRGVi
dWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJ
CQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4K
LQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlO
YW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9
InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wi
Ci0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRp
b24KLQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0i
dHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIK
LQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlv
bgotCQkJCQlOYW1lPSJQcm9kdWN0aW9ufFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0i
dHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIK
LQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJPC9GaWxlPgotCQkJPEZpbGUK
LQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaCIKLQkJ
CQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxIVE1M
RGF0YUdyaWRDb2xFbGVtZW50LmNwcCIKLQkJCQk+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0J
CQkJCU5hbWU9IkRlYnVnfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJ
CQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4K
LQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlO
YW1lPSJSZWxlYXNlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJ
PgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJLz4KLQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQlOYW1l
PSJEZWJ1Z19DYWlyb19DRkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVl
IgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJ
CQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0J
CQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmln
dXJhdGlvbgotCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1
aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1
cmF0aW9uCi0JCQkJCU5hbWU9IlByb2R1Y3Rpb258V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1
aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJU
b29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQk8L0ZpbGU+Ci0JCQk8
RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRtbFxIVE1MRGF0YUdyaWRDb2xFbGVtZW50Lmgi
Ci0JCQkJPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxc
SFRNTERhdGFHcmlkRWxlbWVudC5jcHAiCi0JCQkJPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgot
CQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0J
CQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+
Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJ
TmFtZT0iUmVsZWFzZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJ
CT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCS8+Ci0J
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJTmFt
ZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1
ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJ
CQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmlndXJhdGlvbgot
CQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24KLQkJCQkJTmFtZT0iRGVidWdfQWxsfFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTxGaWxlQ29uZmln
dXJhdGlvbgotCQkJCQlOYW1lPSJQcm9kdWN0aW9ufFdpbjMyIgotCQkJCQlFeGNsdWRlZEZyb21C
dWlsZD0idHJ1ZSIKLQkJCQkJPgotCQkJCQk8VG9vbAotCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKLQkJCQkJLz4KLQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJPC9GaWxlPgotCQkJ
PEZpbGUKLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGh0bWxcSFRNTERhdGFHcmlkRWxlbWVudC5oIgot
CQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEhU
TUxEYXRhR3JpZFJvd0VsZW1lbnQuY3BwIgotCQkJCT4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24K
LQkJCQkJTmFtZT0iRGVidWd8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgot
CQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkv
PgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJ
CU5hbWU9IlJlbGVhc2V8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJ
CQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkvPgot
CQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCU5h
bWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRy
dWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0J
CQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24K
LQkJCQkJTmFtZT0iUmVsZWFzZV9DYWlyb19DRkxpdGV8V2luMzIiCi0JCQkJCUV4Y2x1ZGVkRnJv
bUJ1aWxkPSJ0cnVlIgotCQkJCQk+Ci0JCQkJCTxUb29sCi0JCQkJCQlOYW1lPSJWQ0NMQ29tcGls
ZXJUb29sIgotCQkJCQkvPgotCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJPEZpbGVDb25m
aWd1cmF0aW9uCi0JCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24KLQkJCQkJTmFtZT0iUHJvZHVjdGlvbnxXaW4zMiIKLQkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiCi0JCQkJCT4KLQkJCQkJPFRvb2wKLQkJCQkJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiCi0JCQkJCS8+Ci0JCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCTwvRmlsZT4KLQkJ
CTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxodG1sXEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQu
aCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQogCQkJCVJlbGF0aXZlUGF0aD0iLi5caHRt
bFxIVE1MRGF0YUxpc3RFbGVtZW50LmNwcCIKIAkJCQk+CiAJCQkJPEZpbGVDb25maWd1cmF0aW9u
CkBAIC01ODU2OSwxMTAgKzU3OTI1LDYgQEAKIAkJCQkJPgogCQkJCTwvRmlsZT4KIAkJCQk8Rmls
ZQotCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTRGF0YUdyaWRDb2x1bW5MaXN0
Q3VzdG9tLmNwcCIKLQkJCQkJPgotCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9
IkRlYnVnfFdpbjMyIgotCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0J
CQkJCQk8VG9vbAotCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5h
bWU9IlJlbGVhc2V8V2luMzIiCi0JCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJ
CT4KLQkJCQkJCTxUb29sCi0JCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJCS8+
Ci0JCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJ
CQkJTmFtZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQkJRXhjbHVkZWRGcm9tQnVp
bGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCQk8RmlsZUNv
bmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJ
CQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJCQkJ
CU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1cmF0
aW9uPgotCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4z
MiIKLQkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wK
LQkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4KLQkJCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJQcm9kdWN0
aW9ufFdpbjMyIgotCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJ
CQk8VG9vbAotCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJCQk8
L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCTwvRmlsZT4KLQkJCQk8RmlsZQotCQkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTRGF0YUdyaWREYXRhU291cmNlLmNwcCIKLQkJCQkJPgot
CQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9IkRlYnVnfFdpbjMyIgotCQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJCQkJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
PgotCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9IlJlbGVhc2V8V2luMzIiCi0J
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKLQkJCQkJCT4KLQkJCQkJCTxUb29sCi0JCQkJ
CQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJCQkJCS8+Ci0JCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+Ci0JCQkJCTxGaWxlQ29uZmlndXJhdGlvbgotCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm9f
Q0ZMaXRlfFdpbjMyIgotCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0J
CQkJCQk8VG9vbAotCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJ
CQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5h
bWU9IlJlbGVhc2VfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgotCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9
InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRv
b2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgotCQkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24KLQkJCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4zMiIKLQkJCQkJCUV4Y2x1ZGVkRnJv
bUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wKLQkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQkJPEZp
bGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJQcm9kdWN0aW9ufFdpbjMyIgotCQkJCQkJRXhj
bHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJCQkJCU5hbWU9
IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgot
CQkJCTwvRmlsZT4KLQkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpz
XEpTRGVkaWNhdGVkV29ya2VyQ29udGV4dEN1c3RvbS5jcHAiCiAJCQkJCT4KIAkJCQkJPEZpbGVD
b25maWd1cmF0aW9uCkBAIC02MDQwOSw1OCArNTk2NjEsNiBAQAogCQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQotCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJp
bmRpbmdzXGpzXEpTSFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAiCi0JCQkJCT4KLQkJCQkJ
PEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKLQkJCQkJCUV4Y2x1
ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wKLQkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJ
CQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgotCQkJCQkJ
RXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCi0JCQkJCQk+Ci0JCQkJCQk8VG9vbAotCQkJCQkJCU5h
bWU9IlZDQ0xDb21waWxlclRvb2wiCi0JCQkJCQkvPgotCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
PgotCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KLQkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0
ZXxXaW4zMiIKLQkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJ
PFRvb2wKLQkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9G
aWxlQ29uZmlndXJhdGlvbj4KLQkJCQkJPEZpbGVDb25maWd1cmF0aW9uCi0JCQkJCQlOYW1lPSJS
ZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIKLQkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVl
IgotCQkJCQkJPgotCQkJCQkJPFRvb2wKLQkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgot
CQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQkJPEZpbGVDb25maWd1cmF0
aW9uCi0JCQkJCQlOYW1lPSJEZWJ1Z19BbGx8V2luMzIiCi0JCQkJCQlFeGNsdWRlZEZyb21CdWls
ZD0idHJ1ZSIKLQkJCQkJCT4KLQkJCQkJCTxUb29sCi0JCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCIKLQkJCQkJCS8+Ci0JCQkJCTwvRmlsZUNvbmZpZ3VyYXRpb24+Ci0JCQkJCTxGaWxlQ29u
ZmlndXJhdGlvbgotCQkJCQkJTmFtZT0iUHJvZHVjdGlvbnxXaW4zMiIKLQkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIgotCQkJCQkJPgotCQkJCQkJPFRvb2wKLQkJCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIgotCQkJCQkJLz4KLQkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KLQkJCQk8
L0ZpbGU+Ci0JCQkJPEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xKU0hU
TUxEb2N1bWVudEN1c3RvbS5jcHAiCiAJCQkJCT4KIAkJCQkJPEZpbGVDb25maWd1cmF0aW9uCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNDkxMyw5ICs0OTEzLDYgQEAKIAkJ
QkMxQTM3QkYwOTdDNzE1RjAwMTlGM0Q4IC8qIERPTVV0aWxpdHkubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzFBMzdBOTA5N0M3MTVGMDAxOUYzRDgg
LyogRE9NVXRpbGl0eS5tbSAqLzsgfTsKIAkJQkMxQTM3QzAwOTdDNzE1RjAwMTlGM0Q4IC8qIERP
TVZpZXdzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
QzFBMzdBQTA5N0M3MTVGMDAxOUYzRDggLyogRE9NVmlld3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQzIwRkI3RjBDMEU4RTZDMDBEMTQ0N0Yg
LyogSlNDU1NWYWx1ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCQzIwRkI3RTBDMEU4RTZDMDBEMTQ0N0YgLyogSlNDU1NWYWx1ZUN1c3Rv
bS5jcHAgKi87IH07Ci0JCUJDMjEyQTFGMEZFODMzMzIwMEVDMzcwOCAvKiBIVE1MRGF0YUdyaWRF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
QzIxMkExRTBGRTgzMzMyMDBFQzM3MDggLyogSFRNTERhdGFHcmlkRWxlbWVudC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUJDMjEyQTQxMEZFODNB
MTgwMEVDMzcwOCAvKiBKU0hUTUxEYXRhR3JpZEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMyMTJBM0YwRkU4M0ExODAwRUMzNzA4IC8q
IEpTSFRNTERhdGFHcmlkRWxlbWVudC5jcHAgKi87IH07Ci0JCUJDMjEyQTQyMEZFODNBMTgwMEVD
MzcwOCAvKiBKU0hUTUxEYXRhR3JpZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjEyQTQwMEZFODNBMTgwMEVDMzcwOCAvKiBKU0hUTUxE
YXRhR3JpZEVsZW1lbnQuaCAqLzsgfTsKIAkJQkMyMjcyODcwRTgyRTcwNzAwRTdGOTc1IC8qIFN0
eWxlUmVmbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkMyMjcyODYwRTgyRTcwNzAwRTdGOTc1IC8qIFN0eWxlUmVmbGVjdGlvbi5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUJDMjI3MkEyMEU4
MkU4N0MwMEU3Rjk3NSAvKiBDdXJzb3JEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQzIyNzJBMTBFODJFODdDMDBFN0Y5NzUgLyogQ3Vyc29yRGF0
YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUJD
MjI3MkFEMEU4MkU4RjMwMEU3Rjk3NSAvKiBDdXJzb3JMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzIyNzJBQzBFODJFOEYzMDBFN0Y5NzUgLyog
Q3Vyc29yTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CkBAIC01MTEyLDMxICs1MTA5LDYgQEAKIAkJQkM3NzJDNUUwQzRFQjM0NDAwODMyODVGIC8q
IE1JTUVUeXBlUmVnaXN0cnlNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCQzc3MkM1RDBDNEVCMzQ0MDA4MzI4NUYgLyogTUlNRVR5cGVSZWdpc3Ry
eU1hYy5tbSAqLzsgfTsKIAkJQkM3NzJFMTMxMzMxNjIwQzAwMUVDOUNFIC8qIENTU0xpbmVCb3hD
b250YWluVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDNzcyRTEyMTMzMTYyMEMwMDFFQzlDRSAvKiBDU1NMaW5lQm94Q29udGFpblZhbHVlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQkM3NzJF
MTYxMzMxNjJDMjAwMUVDOUNFIC8qIENTU0xpbmVCb3hDb250YWluVmFsdWUuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3NzJFMTUxMzMxNjJDMjAw
MUVDOUNFIC8qIENTU0xpbmVCb3hDb250YWluVmFsdWUuY3BwICovOyB9OwotCQlCQzc3Q0I4NzBG
RUJGNUFGMDA3MDg4N0IgLyogSFRNTERhdGFHcmlkQ29sRWxlbWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3N0NCODYwRkVCRjVBRjAwNzA4ODdC
IC8qIEhUTUxEYXRhR3JpZENvbEVsZW1lbnQuaCAqLzsgfTsKLQkJQkM3N0NCQUEwRkVCRjZDOTAw
NzA4ODdCIC8qIEhUTUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3N0NCQTkwRkVCRjZDOTAwNzA4ODdCIC8qIEhU
TUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwICovOyB9OwotCQlCQzc3Q0JEMzBGRUJGODMxMDA3MDg4
N0IgLyogSlNIVE1MRGF0YUdyaWRDb2xFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNzdDQkQxMEZFQkY4MzEwMDcwODg3QiAvKiBKU0hU
TUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwICovOyB9OwotCQlCQzc3Q0JENDBGRUJGODMxMDA3MDg4
N0IgLyogSlNIVE1MRGF0YUdyaWRDb2xFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3Q0JEMjBGRUJGODMxMDA3MDg4N0IgLyogSlNIVE1M
RGF0YUdyaWRDb2xFbGVtZW50LmggKi87IH07Ci0JCUJDNzdDQ0VFMEZFRkRFNkMwMDcwODg3QiAv
KiBIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQzc3Q0NFRDBGRUZERTZDMDA3MDg4N0IgLyogSFRNTERhdGFHcmlk
Um93RWxlbWVudC5oICovOyB9OwotCQlCQzc3Q0Q0MjBGRUZFMEM0MDA3MDg4N0IgLyogSFRNTERh
dGFHcmlkUm93RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQzc3Q0Q0MTBGRUZFMEM0MDA3MDg4N0IgLyogSFRNTERhdGFHcmlkUm93RWxl
bWVudC5jcHAgKi87IH07Ci0JCUJDNzdDRDRFMEZFRkUxNjEwMDcwODg3QiAvKiBKU0hUTUxEYXRh
R3JpZFJvd0VsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkM3N0NENEMwRkVGRTE2MTAwNzA4ODdCIC8qIEpTSFRNTERhdGFHcmlkUm93RWxl
bWVudC5jcHAgKi87IH07Ci0JCUJDNzdDRDRGMEZFRkUxNjEwMDcwODg3QiAvKiBKU0hUTUxEYXRh
R3JpZFJvd0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDNzdDRDREMEZFRkUxNjEwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZFJvd0VsZW1l
bnQuaCAqLzsgfTsKLQkJQkM3N0NEQjgwRkVGRjEyMTAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZENl
bGxFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDNzdDREI3MEZFRkYxMjEwMDcwODg3QiAvKiBIVE1MRGF0YUdyaWRDZWxsRWxlbWVudC5j
cHAgKi87IH07Ci0JCUJDNzdDREJDMEZFRkYxNDIwMDcwODg3QiAvKiBIVE1MRGF0YUdyaWRDZWxs
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkM3N0NEQkIwRkVGRjE0MjAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50LmggKi87
IH07Ci0JCUJDNzdDRENFMEZFRkYzM0IwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZENlbGxFbGVt
ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
NzdDRENDMEZFRkYzM0IwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcCAq
LzsgfTsKLQkJQkM3N0NEQ0YwRkVGRjMzQjAwNzA4ODdCIC8qIEpTSFRNTERhdGFHcmlkQ2VsbEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
NzdDRENEMEZFRkYzM0IwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmggKi87
IH07Ci0JCUJDNzdDRUIzMEZGMDE3RjIwMDcwODg3QiAvKiBSZW5kZXJEYXRhR3JpZC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3N0NFQjIwRkYwMTdG
MjAwNzA4ODdCIC8qIFJlbmRlckRhdGFHcmlkLmggKi87IH07Ci0JCUJDNzdDRUM4MEZGMDFDQkUw
MDcwODg3QiAvKiBSZW5kZXJEYXRhR3JpZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3Q0VDNzBGRjAxQ0JFMDA3MDg4N0IgLyogUmVuZGVyRGF0
YUdyaWQuY3BwICovOyB9OwotCQlCQzc3Q0ZBQzBGRjE3M0QzMDA3MDg4N0IgLyogRGF0YUdyaWRD
b2x1bW5MaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQzc3Q0ZBQjBGRjE3M0QzMDA3MDg4N0IgLyogRGF0YUdyaWRDb2x1bW5MaXN0LmggKi87IH07
Ci0JCUJDNzdDRkMyMEZGMTc1NTUwMDcwODg3QiAvKiBEYXRhR3JpZENvbHVtbi5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3N0NGQzEwRkYxNzU1NTAw
NzA4ODdCIC8qIERhdGFHcmlkQ29sdW1uLmggKi87IH07Ci0JCUJDNzdEMTUyMEZGMTlDNzMwMDcw
ODg3QiAvKiBKU0RhdGFHcmlkQ29sdW1uTGlzdEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3RDE1MTBGRjE5QzczMDA3MDg4N0IgLyog
SlNEYXRhR3JpZENvbHVtbkxpc3RDdXN0b20uY3BwICovOyB9OwotCQlCQzc3RDE2OTBGRjE5RjU2
MDA3MDg4N0IgLyogSlNEYXRhR3JpZENvbHVtbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3RDE2NTBGRjE5RjU1MDA3MDg4N0IgLyogSlNEYXRh
R3JpZENvbHVtbi5jcHAgKi87IH07Ci0JCUJDNzdEMTZBMEZGMTlGNTYwMDcwODg3QiAvKiBKU0Rh
dGFHcmlkQ29sdW1uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCQzc3RDE2NjBGRjE5RjU1MDA3MDg4N0IgLyogSlNEYXRhR3JpZENvbHVtbi5oICovOyB9
OwotCQlCQzc3RDE2QjBGRjE5RjU2MDA3MDg4N0IgLyogSlNEYXRhR3JpZENvbHVtbkxpc3QuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3N0QxNjcw
RkYxOUY1NTAwNzA4ODdCIC8qIEpTRGF0YUdyaWRDb2x1bW5MaXN0LmNwcCAqLzsgfTsKLQkJQkM3
N0QxNkMwRkYxOUY1NjAwNzA4ODdCIC8qIEpTRGF0YUdyaWRDb2x1bW5MaXN0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3RDE2ODBGRjE5RjU1MDA3
MDg4N0IgLyogSlNEYXRhR3JpZENvbHVtbkxpc3QuaCAqLzsgfTsKLQkJQkM3N0QxRkQwRkYyOEQ5
QjAwNzA4ODdCIC8qIERhdGFHcmlkQ29sdW1uTGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3RDFGQzBGRjI4RDlCMDA3MDg4N0IgLyogRGF0
YUdyaWRDb2x1bW5MaXN0LmNwcCAqLzsgfTsKLQkJQkM3N0QyMzkwRkYyOTgwODAwNzA4ODdCIC8q
IERhdGFHcmlkQ29sdW1uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDNzdEMjM4MEZGMjk4MDgwMDcwODg3QiAvKiBEYXRhR3JpZENvbHVtbi5jcHAg
Ki87IH07Ci0JCUJDN0RBQUVFMEZGOTYxNUQwMENFMDEzOCAvKiBET01EYXRhR3JpZERhdGFTb3Vy
Y2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3
REFBRUMwRkY5NjE1RDAwQ0UwMTM4IC8qIERPTURhdGFHcmlkRGF0YVNvdXJjZS5jcHAgKi87IH07
Ci0JCUJDN0RBQUVGMEZGOTYxNUQwMENFMDEzOCAvKiBET01EYXRhR3JpZERhdGFTb3VyY2UuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDN0RBQUVEMEZG
OTYxNUQwMENFMDEzOCAvKiBET01EYXRhR3JpZERhdGFTb3VyY2UuaCAqLzsgfTsKIAkJQkM3RjQ0
QTgwQjlFMzI0RTAwQTlEMDgxIC8qIEltYWdlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDN0Y0NEE3MEI5RTMyNEUwMEE5RDA4MSAvKiBJ
bWFnZU9ic2VydmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJQkM3RkE2MjAwRDFGMENCRDAwREIyMkE5IC8qIER5bmFtaWNOb2RlTGlzdC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzdGQTYxRTBE
MUYwQ0JEMDBEQjIyQTkgLyogRHluYW1pY05vZGVMaXN0LmNwcCAqLzsgfTsKIAkJQkM3RkE2MjEw
RDFGMENCRDAwREIyMkE5IC8qIER5bmFtaWNOb2RlTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3RkE2MUYwRDFGMENCRDAwREIyMkE5IC8qIER5
bmFtaWNOb2RlTGlzdC5oICovOyB9OwpAQCAtNTIyOCwxMCArNTIwMCw2IEBACiAJCUJDQjc3MzYy
MEMxNzg1M0QwMDEzMkJBNCAvKiBKU05vZGVGaWx0ZXJDb25kaXRpb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQjc3MzVGMEMxNzg1M0QwMDEzMkJB
NCAvKiBKU05vZGVGaWx0ZXJDb25kaXRpb24uaCAqLzsgfTsKIAkJQkNCNzczNjMwQzE3ODUzRDAw
MTMyQkE0IC8qIEpTTm9kZUZpbHRlckN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0I3NzM2MDBDMTc4NTNEMDAxMzJCQTQgLyogSlNOb2Rl
RmlsdGVyQ3VzdG9tLmNwcCAqLzsgfTsKIAkJQkNCOTJENEYxMjkzNTUwQjAwQzgzODdGIC8qIEZv
bnRCYXNlbGluZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkNCOTJENEUxMjkzNTUwQjAwQzgzODdGIC8qIEZvbnRCYXNlbGluZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUJDQkNBRTM3MEZGMTkzODUw
MDA3NjJBRSAvKiBEYXRhR3JpZERhdGFTb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQkNBRTM2MEZGMTkzODUwMDA3NjJBRSAvKiBEYXRhR3Jp
ZERhdGFTb3VyY2UuaCAqLzsgfTsKLQkJQkNCQ0FFM0MwRkYxOTM5OTAwMDc2MkFFIC8qIEpTRGF0
YUdyaWREYXRhU291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDQkNBRTNBMEZGMTkzOTkwMDA3NjJBRSAvKiBKU0RhdGFHcmlkRGF0YVNvdXJj
ZS5jcHAgKi87IH07Ci0JCUJDQkNBRTNEMEZGMTkzOTkwMDA3NjJBRSAvKiBKU0RhdGFHcmlkRGF0
YVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkNCQ0FFM0IwRkYxOTM5OTAwMDc2MkFFIC8qIEpTRGF0YUdyaWREYXRhU291cmNlLmggKi87IH07
Ci0JCUJDQkNBRTU0MEZGMUEyOUUwMDA3NjJBRSAvKiBKU0hUTUxEYXRhR3JpZEVsZW1lbnRDdXN0
b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNC
Q0FFNTMwRkYxQTI5RTAwMDc2MkFFIC8qIEpTSFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAg
Ki87IH07CiAJCUJDQkQyMUFCMEU0MTdBRDQwMEEwNzBGMiAvKiBLVVJMSGFzaC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNCRDIxQUEwRTQxN0FENDAw
QTA3MEYyIC8qIEtVUkxIYXNoLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJQkNCRkI1M0MwRENEMjlDRjAwMTlCM0U1IC8qIEpTRE9NV2luZG93U2hl
bGwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNC
RkI1M0EwRENEMjlDRjAwMTlCM0U1IC8qIEpTRE9NV2luZG93U2hlbGwuY3BwICovOyB9OwogCQlC
Q0JGQjUzRDBEQ0QyOUNGMDAxOUIzRTUgLyogSlNET01XaW5kb3dTaGVsbC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNCRkI1M0IwRENEMjlDRjAwMTlC
M0U1IC8qIEpTRE9NV2luZG93U2hlbGwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwpAQCAtNTM3MCw3ICs1MzM4LDYgQEAKIAkJQkNFRkUxRUEwRENBNUY2
NDAwNzM5MjE5IC8qIEpTWFNMVFByb2Nlc3Nvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0VGRTFFODBEQ0E1RjY0MDA3MzkyMTkgLyogSlNYU0xU
UHJvY2Vzc29yLmNwcCAqLzsgfTsKIAkJQkNFRkUxRUIwRENBNUY2NDAwNzM5MjE5IC8qIEpTWFNM
VFByb2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkNFRkUxRTkwRENBNUY2NDAwNzM5MjE5IC8qIEpTWFNMVFByb2Nlc3Nvci5oICovOyB9Owog
CQlCQ0YzNEEzNzExQTIzMUNEMDBDNzE4MDQgLyogTmFtZWROb2RlTWFwLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRjM0QTM2MTFBMjMxQ0QwMEM3
MTgwNCAvKiBOYW1lZE5vZGVNYXAuY3BwICovOyB9OwotCQlCQ0Y1MjQ2MDBGRUJFRTVEMDA5NUJG
MjYgLyogSFRNTERhdGFHcmlkRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Y1MjQ1RjBGRUJFRTVEMDA5NUJGMjYgLyogSFRNTERhdGFH
cmlkRWxlbWVudC5jcHAgKi87IH07CiAJCUJDRkE5MzA4MTAzMzMxOTMwMDdCMjVEMSAvKiBSZW5k
ZXJPdmVyZmxvdy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkNGQTkzMDcxMDMzMzE5MzAwN0IyNUQxIC8qIFJlbmRlck92ZXJmbG93LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQkNGQjJFNUUwOTc5RTQ2
NDAwQkE3MDNEIC8qIENhY2hlZFJlc291cmNlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0ZCMkU1RDA5NzlFNDY0MDBCQTcwM0QgLyogQ2Fj
aGVkUmVzb3VyY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQlCQ0ZCMkY3NjA5N0EyRTFBMDBCQTcwM0QgLyogQXJlbmEuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGQjJGNzQwOTdBMkUx
QTAwQkE3MDNEIC8qIEFyZW5hLmNwcCAqLzsgfTsKQEAgLTgzMDUsNyArODI3Miw3IEBACiAJCTc3
QTE3QUEzMTJGMjhCMkEwMDRFMDJGNiAvKiBKU09FU1ZlcnRleEFycmF5T2JqZWN0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTT0VTVmVydGV4QXJyYXlPYmplY3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzdFRjYyRjExMkY5REI3NDAwQzc3QkQyIC8qIEpT
V2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1dlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3N0VGNjJGMjEyRjlEQjc0MDBDNzdCRDIgLyogSlNXZWJHTFZlcnRl
eEFycmF5T2JqZWN0T0VTLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2Vi
R0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3
ODE3NTU4NTEzNjVBMUIwMDA5M0JFMkUgLyogRGF0YVRyYW5zZmVySXRlbXMuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRGF0YVRyYW5zZmVySXRlbXMuY3BwOyBwYXRo
ID0gZG9tL0RhdGFUcmFuc2Zlckl0ZW1zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzgxNzU1ODUxMzY1QTFCMDAwOTNCRTJFIC8qIERhdGFUcmFuc2Zlckl0ZW1zLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFUcmFuc2Zlckl0ZW1zLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzlBQzkyMTYxMDk5NDVDODAwMjEyNjZFIC8q
IEpTQ29tcG9zaXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0NvbXBvc2l0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk3OUFDOTIxNzEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21wb3NpdGlvbkV2ZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ29tcG9zaXRpb25FdmVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk3OUYyRjU5RTEwOTE5MzlBMDAwRDg3Q0IgLyogQ29tcG9z
aXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb21w
b3NpdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExNDE5LDEw
ICsxMTM4Niw2IEBACiAJCUJDMUEzN0E5MDk3QzcxNUYwMDE5RjNEOCAvKiBET01VdGlsaXR5Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERPTVV0aWxpdHkubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMUEzN0FBMDk3QzcxNUYwMDE5RjNEOCAv
KiBET01WaWV3cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NVmlld3Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkMyMEZCN0UwQzBFOEU2QzAwRDE0NDdG
IC8qIEpTQ1NTVmFsdWVDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTQ1NTVmFsdWVDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQlCQzIxMkExRTBGRTgzMzMyMDBFQzM3MDggLyogSFRNTERhdGFHcmlkRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MRGF0YUdyaWRFbGVtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDMjEyQTIzMEZFODM0NUQwMEVDMzcwOCAvKiBIVE1M
RGF0YUdyaWRFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MRGF0YUdyaWRF
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQkMyMTJBM0YwRkU4M0Ex
ODAwRUMzNzA4IC8qIEpTSFRNTERhdGFHcmlkRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxEYXRhR3JpZEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlCQzIxMkE0MDBGRTgzQTE4MDBFQzM3MDggLyogSlNIVE1MRGF0
YUdyaWRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTERh
dGFHcmlkRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzIyNzI4NjBF
ODJFNzA3MDBFN0Y5NzUgLyogU3R5bGVSZWZsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IFN0eWxlUmVmbGVjdGlvbi5oOyBwYXRoID0gc3R5bGUvU3R5bGVSZWZsZWN0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMjI3MkExMEU4MkU4N0MwMEU3
Rjk3NSAvKiBDdXJzb3JEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEN1
cnNvckRhdGEuaDsgcGF0aCA9IHN0eWxlL0N1cnNvckRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQkMyMjcyQUMwRTgyRThGMzAwRTdGOTc1IC8qIEN1cnNvckxpc3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ3Vyc29yTGlzdC5oOyBwYXRoID0gc3R5bGUv
Q3Vyc29yTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTE2MjYsMzcgKzEx
NTg5LDcgQEAKIAkJQkM3NzJDNUQwQzRFQjM0NDAwODMyODVGIC8qIE1JTUVUeXBlUmVnaXN0cnlN
YWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTUlNRVR5cGVS
ZWdpc3RyeU1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkM3NzJFMTIxMzMx
NjIwQzAwMUVDOUNFIC8qIENTU0xpbmVCb3hDb250YWluVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCQzc3MkUxNTEzMzE2MkMyMDAxRUM5Q0UgLyogQ1NTTGluZUJveENv
bnRhaW5WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NM
aW5lQm94Q29udGFpblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQkM3
N0NCODYwRkVCRjVBRjAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZENvbEVsZW1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTERhdGFHcmlkQ29sRWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3Q0I4ODBGRUJGNUJBMDA3MDg4N0IgLyogSFRN
TERhdGFHcmlkQ29sRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTERhdGFH
cmlkQ29sRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDNzdDQkE5
MEZFQkY2QzkwMDcwODg3QiAvKiBIVE1MRGF0YUdyaWRDb2xFbGVtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3Q0JEMTBGRUJGODMxMDA3MDg4N0IgLyog
SlNIVE1MRGF0YUdyaWRDb2xFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTSFRNTERhdGFHcmlkQ29sRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07Ci0JCUJDNzdDQkQyMEZFQkY4MzEwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZENv
bEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MRGF0YUdy
aWRDb2xFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDNzdDQzZCMEZF
QzNENUYwMDcwODg3QiAvKiBIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKLQkJQkM3N0NDRUQwRkVGREU2QzAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZFJvd0Vs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTERhdGFHcmlkUm93
RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3Q0Q0MTBGRUZFMEM0
MDA3MDg4N0IgLyogSFRNTERhdGFHcmlkUm93RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQkM3N0NENEMwRkVGRTE2MTAwNzA4ODdCIC8qIEpTSFRNTERh
dGFHcmlkUm93RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0hUTUxEYXRhR3JpZFJvd0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQlCQzc3Q0Q0RDBGRUZFMTYxMDA3MDg4N0IgLyogSlNIVE1MRGF0YUdyaWRSb3dFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTERhdGFHcmlkUm93RWxl
bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3Q0RBMjBGRUZFQjUzMDA3
MDg4N0IgLyogSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IEhUTUxEYXRhR3JpZENlbGxFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJQkM3N0NEQjcwRkVGRjEyMTAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxEYXRhR3JpZENl
bGxFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQkM3N0NEQkIwRkVG
RjE0MjAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxEYXRhR3JpZENlbGxFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCUJDNzdDRENDMEZFRkYzM0IwMDcwODg3QiAvKiBKU0hUTUxEYXRh
R3JpZENlbGxFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQlCQzc3Q0RDRDBGRUZGMzNCMDA3MDg4N0IgLyogSlNIVE1MRGF0YUdyaWRDZWxsRWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxEYXRhR3JpZENlbGxF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDNzdDRUIyMEZGMDE3RjIw
MDcwODg3QiAvKiBSZW5kZXJEYXRhR3JpZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBSZW5kZXJEYXRhR3JpZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3
Q0VDNzBGRjAxQ0JFMDA3MDg4N0IgLyogUmVuZGVyRGF0YUdyaWQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyRGF0YUdyaWQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQlCQzc3Q0Y5ODBGRjE3MjQyMDA3MDg4N0IgLyogRGF0YUdyaWRDb2x1
bW5MaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBEYXRhR3JpZENvbHVtbkxpc3QuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3Q0Y5RTBGRjE3MkIzMDA3MDg4N0Ig
LyogRGF0YUdyaWRDb2x1bW4uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERhdGFHcmlkQ29s
dW1uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQkM3N0NGQUIwRkYxNzNEMzAw
NzA4ODdCIC8qIERhdGFHcmlkQ29sdW1uTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBEYXRhR3JpZENvbHVtbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJQkM3N0NGQzEwRkYxNzU1NTAwNzA4ODdCIC8qIERhdGFHcmlkQ29sdW1uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFHcmlkQ29sdW1uLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCUJDNzdEMTUxMEZGMTlDNzMwMDcwODg3QiAvKiBKU0RhdGFHcmlkQ29s
dW1uTGlzdEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0RhdGFHcmlkQ29sdW1uTGlzdEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCUJDNzdEMTY1MEZGMTlGNTUwMDcwODg3QiAvKiBKU0RhdGFHcmlkQ29sdW1uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGF0YUdyaWRDb2x1bW4uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3RDE2NjBGRjE5RjU1MDA3MDg4N0IgLyog
SlNEYXRhR3JpZENvbHVtbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Rh
dGFHcmlkQ29sdW1uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDNzdEMTY3MEZG
MTlGNTUwMDcwODg3QiAvKiBKU0RhdGFHcmlkQ29sdW1uTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RhdGFHcmlkQ29sdW1uTGlzdC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDNzdEMTY4MEZGMTlGNTUwMDcwODg3QiAvKiBKU0RhdGFH
cmlkQ29sdW1uTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RhdGFH
cmlkQ29sdW1uTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzc3RDFGQzBG
RjI4RDlCMDA3MDg4N0IgLyogRGF0YUdyaWRDb2x1bW5MaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFHcmlkQ29sdW1uTGlzdC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCUJDNzdEMjM4MEZGMjk4MDgwMDcwODg3QiAvKiBEYXRhR3JpZENv
bHVtbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRhR3JpZENv
bHVtbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDN0IyQUY4MDQ1MDgyNDEw
MEE4MDAwRiAvKiBTY3JvbGxiYXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsYmFyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRh
YldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OwotCQlCQzdEQUFFQzBGRjk2MTVEMDBDRTAxMzgg
LyogRE9NRGF0YUdyaWREYXRhU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IERPTURhdGFHcmlkRGF0YVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCUJDN0RBQUVEMEZGOTYxNUQwMENFMDEzOCAvKiBET01EYXRhR3JpZERhdGFTb3Vy
Y2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NRGF0YUdyaWREYXRhU291
cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDN0Y0NEE3MEI5RTMyNEUwMEE5
RDA4MSAvKiBJbWFnZU9ic2VydmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJbWFnZU9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDN0ZBNjFF
MEQxRjBDQkQwMERCMjJBOSAvKiBEeW5hbWljTm9kZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRHluYW1pY05vZGVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQkM3RkE2MUYwRDFGMENCRDAwREIyMkE5IC8qIER5bmFtaWNOb2RlTGlz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEeW5hbWljTm9kZUxpc3QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExNzU0LDEwICsxMTY4Nyw2IEBACiAJCUJD
Qjc3MzVGMEMxNzg1M0QwMDEzMkJBNCAvKiBKU05vZGVGaWx0ZXJDb25kaXRpb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTm9kZUZpbHRlckNvbmRpdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0I3NzM2MDBDMTc4NTNEMDAxMzJCQTQgLyogSlNO
b2RlRmlsdGVyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU05vZGVGaWx0ZXJDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlC
Q0I5MkQ0RTEyOTM1NTBCMDBDODM4N0YgLyogRm9udEJhc2VsaW5lLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRCYXNlbGluZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQlCQ0JDQUUzNjBGRjE5Mzg1MDAwNzYyQUUgLyogRGF0YUdyaWREYXRhU291cmNlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFHcmlkRGF0YVNvdXJjZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQ0JDQUUzQTBGRjE5Mzk5MDAwNzYyQUUgLyog
SlNEYXRhR3JpZERhdGFTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNEYXRhR3JpZERhdGFTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQlCQ0JDQUUzQjBGRjE5Mzk5MDAwNzYyQUUgLyogSlNEYXRhR3JpZERhdGFTb3VyY2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEYXRhR3JpZERhdGFTb3VyY2UuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQkNCQ0FFNTMwRkYxQTI5RTAwMDc2MkFFIC8q
IEpTSFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0hUTUxEYXRhR3JpZEVsZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlCQ0JEMjFBQTBFNDE3QUQ0MDBBMDcwRjIgLyogS1VSTEhhc2gu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gS1VSTEhhc2guaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNCRkI1M0EwRENEMjlDRjAwMTlCM0U1IC8qIEpTRE9NV2lu
ZG93U2hlbGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01X
aW5kb3dTaGVsbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDQkZCNTNCMERD
RDI5Q0YwMDE5QjNFNSAvKiBKU0RPTVdpbmRvd1NoZWxsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRE9NV2luZG93U2hlbGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTExOTA2LDcgKzExODM1LDYgQEAKIAkJQkNFRkUxRTgwRENBNUY2NDAwNzM5MjE5IC8q
IEpTWFNMVFByb2Nlc3Nvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1hTTFRQcm9jZXNzb3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0VG
RTFFOTBEQ0E1RjY0MDA3MzkyMTkgLyogSlNYU0xUUHJvY2Vzc29yLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTWFNMVFByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlCQ0YzNEEzNjExQTIzMUNEMDBDNzE4MDQgLyogTmFtZWROb2RlTWFwLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hbWVkTm9kZU1hcC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDRjUyNDVGMEZFQkVFNUQwMDk1QkYyNiAvKiBI
VE1MRGF0YUdyaWRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEhUTUxEYXRhR3JpZEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCQ0ZBOTMwNzEwMzMzMTkzMDA3QjI1RDEgLyogUmVuZGVyT3ZlcmZsb3cuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyT3ZlcmZsb3cuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQkNGQjJFNUQwOTc5RTQ2NDAwQkE3MDNEIC8qIENhY2hlZFJlc291cmNl
Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRSZXNvdXJj
ZUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0ZCMkY3NDA5N0EyRTFB
MDBCQTcwM0QgLyogQXJlbmEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEFyZW5hLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEyNzMzLDcgKzEy
NjYxLDYgQEAKIAkJMDg2N0Q2OTFGRTg0MDI4RkMwMkFBQzA3IC8qIFdlYktpdCAqLyA9IHsKIAkJ
CWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCi0JCQkJNzgxNzU1ODUxMzY1QTFCMDAw
OTNCRTJFIC8qIERhdGFUcmFuc2Zlckl0ZW1zLmNwcCAqLywKIAkJCQk2NUM5N0FGMjA4RUE5MDg4
MDBBQ0QyNzMgLyogY29uZmlnLmggKi8sCiAJCQkJRURFQzk4MDIwQUVEN0UxNzAwNTkxMzdGIC8q
IFdlYkNvcmVQcmVmaXguaCAqLywKIAkJCQk5MzA3MDYxMzA5RTBDQTgyMDBCMTdGRTQgLyogRGVy
aXZlZFNvdXJjZXMubWFrZSAqLywKQEAgLTE1ODg3LDEzICsxNTgxNCw2IEBACiAJCQkJOTNDNDQx
RkYwRjgxM0FFMTAwQzFBNjM0IC8qIENvbGxlY3Rpb25UeXBlLmggKi8sCiAJCQkJRjU1QjNEN0Yx
MjUxRjEyRDAwM0VGMjY5IC8qIENvbG9ySW5wdXRUeXBlLmNwcCAqLywKIAkJCQlGNTVCM0Q4MDEy
NTFGMTJEMDAzRUYyNjkgLyogQ29sb3JJbnB1dFR5cGUuaCAqLywKLQkJCQlCQzc3RDIzODBGRjI5
ODA4MDA3MDg4N0IgLyogRGF0YUdyaWRDb2x1bW4uY3BwICovLAotCQkJCUJDNzdDRkMxMEZGMTc1
NTUwMDcwODg3QiAvKiBEYXRhR3JpZENvbHVtbi5oICovLAotCQkJCUJDNzdDRjlFMEZGMTcyQjMw
MDcwODg3QiAvKiBEYXRhR3JpZENvbHVtbi5pZGwgKi8sCi0JCQkJQkM3N0QxRkMwRkYyOEQ5QjAw
NzA4ODdCIC8qIERhdGFHcmlkQ29sdW1uTGlzdC5jcHAgKi8sCi0JCQkJQkM3N0NGQUIwRkYxNzNE
MzAwNzA4ODdCIC8qIERhdGFHcmlkQ29sdW1uTGlzdC5oICovLAotCQkJCUJDNzdDRjk4MEZGMTcy
NDIwMDcwODg3QiAvKiBEYXRhR3JpZENvbHVtbkxpc3QuaWRsICovLAotCQkJCUJDQkNBRTM2MEZG
MTkzODUwMDA3NjJBRSAvKiBEYXRhR3JpZERhdGFTb3VyY2UuaCAqLywKIAkJCQlGNUQzQTU3QTEw
NkI4M0IzMDA1NDUyOTcgLyogRGF0ZUNvbXBvbmVudHMuY3BwICovLAogCQkJCUY1RDNBNTdCMTA2
QjgzQjMwMDU0NTI5NyAvKiBEYXRlQ29tcG9uZW50cy5oICovLAogCQkJCUY1NUIzRDgxMTI1MUYx
MkQwMDNFRjI2OSAvKiBEYXRlSW5wdXRUeXBlLmNwcCAqLywKQEAgLTE1OTAyLDggKzE1ODIyLDYg
QEAKIAkJCQlGNTVCM0Q4NDEyNTFGMTJEMDAzRUYyNjkgLyogRGF0ZVRpbWVJbnB1dFR5cGUuaCAq
LywKIAkJCQlGNTVCM0Q4NTEyNTFGMTJEMDAzRUYyNjkgLyogRGF0ZVRpbWVMb2NhbElucHV0VHlw
ZS5jcHAgKi8sCiAJCQkJRjU1QjNEODYxMjUxRjEyRDAwM0VGMjY5IC8qIERhdGVUaW1lTG9jYWxJ
bnB1dFR5cGUuaCAqLywKLQkJCQlCQzdEQUFFQzBGRjk2MTVEMDBDRTAxMzggLyogRE9NRGF0YUdy
aWREYXRhU291cmNlLmNwcCAqLywKLQkJCQlCQzdEQUFFRDBGRjk2MTVEMDBDRTAxMzggLyogRE9N
RGF0YUdyaWREYXRhU291cmNlLmggKi8sCiAJCQkJMkVENjA5QkExMTQ1QjA3MTAwQzg2ODRFIC8q
IERPTUZvcm1EYXRhLmNwcCAqLywKIAkJCQkyRUQ2MDlCQjExNDVCMDcxMDBDODY4NEUgLyogRE9N
Rm9ybURhdGEuaCAqLywKIAkJCQkyRTA4ODhDMzExNDg4M0E5MDBBRjQyNjUgLyogRE9NRm9ybURh
dGEuaWRsICovLApAQCAtMTU5NjgsMTggKzE1ODg2LDYgQEAKIAkJCQlBOERGM0ZDOTA5N0ZBMEZC
MDA1Mjk4MUIgLyogSFRNTENvbGxlY3Rpb24uY3BwICovLAogCQkJCUE4REYzRkM4MDk3RkEwRkIw
MDUyOTgxQiAvKiBIVE1MQ29sbGVjdGlvbi5oICovLAogCQkJCTg1REYyRjY5MEFBM0M3NDMwMEFE
NjRDNSAvKiBIVE1MQ29sbGVjdGlvbi5pZGwgKi8sCi0JCQkJQkM3N0NEQjcwRkVGRjEyMTAwNzA4
ODdCIC8qIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcCAqLywKLQkJCQlCQzc3Q0RCQjBGRUZG
MTQyMDA3MDg4N0IgLyogSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaCAqLywKLQkJCQlCQzc3Q0RB
MjBGRUZFQjUzMDA3MDg4N0IgLyogSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaWRsICovLAotCQkJ
CUJDNzdDQkE5MEZFQkY2QzkwMDcwODg3QiAvKiBIVE1MRGF0YUdyaWRDb2xFbGVtZW50LmNwcCAq
LywKLQkJCQlCQzc3Q0I4NjBGRUJGNUFGMDA3MDg4N0IgLyogSFRNTERhdGFHcmlkQ29sRWxlbWVu
dC5oICovLAotCQkJCUJDNzdDQjg4MEZFQkY1QkEwMDcwODg3QiAvKiBIVE1MRGF0YUdyaWRDb2xF
bGVtZW50LmlkbCAqLywKLQkJCQlCQ0Y1MjQ1RjBGRUJFRTVEMDA5NUJGMjYgLyogSFRNTERhdGFH
cmlkRWxlbWVudC5jcHAgKi8sCi0JCQkJQkMyMTJBMUUwRkU4MzMzMjAwRUMzNzA4IC8qIEhUTUxE
YXRhR3JpZEVsZW1lbnQuaCAqLywKLQkJCQlCQzIxMkEyMzBGRTgzNDVEMDBFQzM3MDggLyogSFRN
TERhdGFHcmlkRWxlbWVudC5pZGwgKi8sCi0JCQkJQkM3N0NENDEwRkVGRTBDNDAwNzA4ODdCIC8q
IEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQuY3BwICovLAotCQkJCUJDNzdDQ0VEMEZFRkRFNkMwMDcw
ODg3QiAvKiBIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmggKi8sCi0JCQkJQkM3N0NDNkIwRkVDM0Q1
RjAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQuaWRsICovLAogCQkJCUY1QzA0MUQ3
MEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0YUxpc3RFbGVtZW50LmNwcCAqLywKIAkJCQlGNUMw
NDFEODBGRkNBN0NFMDA4MzlENEEgLyogSFRNTERhdGFMaXN0RWxlbWVudC5oICovLAogCQkJCUY1
QzA0MUQ5MEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0YUxpc3RFbGVtZW50LmlkbCAqLywKQEAg
LTE2NDg2LDEwICsxNjM5Miw2IEBACiAJCQkJNDlFRUQxM0QxMDUxOTY5NDAwMDk5RkFCIC8qIEpT
Q2FudmFzUmVuZGVyaW5nQ29udGV4dC5oICovLAogCQkJCTQ5RUVEMTNFMTA1MTk2OTQwMDA5OUZB
QiAvKiBKU0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHAgKi8sCiAJCQkJNDlFRUQxM0YxMDUx
OTY5NDAwMDk5RkFCIC8qIEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmggKi8sCi0JCQkJQkM3
N0QxNjUwRkYxOUY1NTAwNzA4ODdCIC8qIEpTRGF0YUdyaWRDb2x1bW4uY3BwICovLAotCQkJCUJD
NzdEMTY2MEZGMTlGNTUwMDcwODg3QiAvKiBKU0RhdGFHcmlkQ29sdW1uLmggKi8sCi0JCQkJQkM3
N0QxNjcwRkYxOUY1NTAwNzA4ODdCIC8qIEpTRGF0YUdyaWRDb2x1bW5MaXN0LmNwcCAqLywKLQkJ
CQlCQzc3RDE2ODBGRjE5RjU1MDA3MDg4N0IgLyogSlNEYXRhR3JpZENvbHVtbkxpc3QuaCAqLywK
IAkJCQkyRTk3Q0U2RDEyOTNBRDZCMDBDNUM4RkYgLyogSlNEYXRhVmlldy5jcHAgKi8sCiAJCQkJ
MkU5N0NFNkUxMjkzQUQ2QjAwQzVDOEZGIC8qIEpTRGF0YVZpZXcuaCAqLywKIAkJCQkyRTA4ODhE
MjExNDg4NDhBMDBBRjQyNjUgLyogSlNET01Gb3JtRGF0YS5jcHAgKi8sCkBAIC0xNjUyOCwxNCAr
MTY0MzAsNiBAQAogCQkJCTkzOEU2NjYxMDlGMDlCODcwMDhBNDhFQyAvKiBKU0hUTUxDYW52YXNF
bGVtZW50LmggKi8sCiAJCQkJQkNDQkFEM0UwQzE4QzE0MjAwQ0U4OTBGIC8qIEpTSFRNTENvbGxl
Y3Rpb24uY3BwICovLAogCQkJCUJDQ0JBRDNGMEMxOEMxNDIwMENFODkwRiAvKiBKU0hUTUxDb2xs
ZWN0aW9uLmggKi8sCi0JCQkJQkM3N0NEQ0MwRkVGRjMzQjAwNzA4ODdCIC8qIEpTSFRNTERhdGFH
cmlkQ2VsbEVsZW1lbnQuY3BwICovLAotCQkJCUJDNzdDRENEMEZFRkYzM0IwMDcwODg3QiAvKiBK
U0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmggKi8sCi0JCQkJQkM3N0NCRDEwRkVCRjgzMTAwNzA4
ODdCIC8qIEpTSFRNTERhdGFHcmlkQ29sRWxlbWVudC5jcHAgKi8sCi0JCQkJQkM3N0NCRDIwRkVC
RjgzMTAwNzA4ODdCIC8qIEpTSFRNTERhdGFHcmlkQ29sRWxlbWVudC5oICovLAotCQkJCUJDMjEy
QTNGMEZFODNBMTgwMEVDMzcwOCAvKiBKU0hUTUxEYXRhR3JpZEVsZW1lbnQuY3BwICovLAotCQkJ
CUJDMjEyQTQwMEZFODNBMTgwMEVDMzcwOCAvKiBKU0hUTUxEYXRhR3JpZEVsZW1lbnQuaCAqLywK
LQkJCQlCQzc3Q0Q0QzBGRUZFMTYxMDA3MDg4N0IgLyogSlNIVE1MRGF0YUdyaWRSb3dFbGVtZW50
LmNwcCAqLywKLQkJCQlCQzc3Q0Q0RDBGRUZFMTYxMDA3MDg4N0IgLyogSlNIVE1MRGF0YUdyaWRS
b3dFbGVtZW50LmggKi8sCiAJCQkJRjVDMDQxRTEwRkZDQTk2RDAwODM5RDRBIC8qIEpTSFRNTERh
dGFMaXN0RWxlbWVudC5jcHAgKi8sCiAJCQkJRjVDMDQxRTIwRkZDQTk2RDAwODM5RDRBIC8qIEpT
SFRNTERhdGFMaXN0RWxlbWVudC5oICovLAogCQkJCUQzNTlEOEJDMTI5Q0E1NUMwMDA2RTVEMiAv
KiBKU0hUTUxEZXRhaWxzRWxlbWVudC5jcHAgKi8sCkBAIC0xODM0OSw3ICsxODI0Myw2IEBACiAJ
CQkJQkM1ODI1RjIwQzBCODkzODAwNTNGMUI1IC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3Rv
bS5jcHAgKi8sCiAJCQkJRTFBRDE0RTcxMjk3Mzc3NDAwQUNBOTg5IC8qIEpTQ1NTU3R5bGVSdWxl
Q3VzdG9tLmNwcCAqLywKIAkJCQlCQzIwRkI3RTBDMEU4RTZDMDBEMTQ0N0YgLyogSlNDU1NWYWx1
ZUN1c3RvbS5jcHAgKi8sCi0JCQkJQkM3N0QxNTEwRkYxOUM3MzAwNzA4ODdCIC8qIEpTRGF0YUdy
aWRDb2x1bW5MaXN0Q3VzdG9tLmNwcCAqLywKIAkJCQkyRTk3Q0NGNjEyOTNBNDNBMDBDNUM4RkYg
LyogSlNEYXRhVmlld0N1c3RvbS5jcHAgKi8sCiAJCQkJNDE2MkE0NTMxMDExNDVFMzAwREZGM0VE
IC8qIEpTRGVkaWNhdGVkV29ya2VyQ29udGV4dEN1c3RvbS5jcHAgKi8sCiAJCQkJMzM1MDNDQkYx
MDE3OUMxQTAwM0I0N0UxIC8qIEpTRGVza3RvcE5vdGlmaWNhdGlvbnNDdXN0b20uY3BwICovLApA
QCAtMTgzODAsNyArMTgyNzMsNiBAQAogCQkJCUUxQUQxNDFEMTI5NUVBNEYwMEFDQTk4OSAvKiBK
U0hUTUxBcHBsZXRFbGVtZW50Q3VzdG9tLmggKi8sCiAJCQkJOTM5MjI2MkMxMDMyMTA3QjAwNkU3
RDVEIC8qIEpTSFRNTENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovLAogCQkJCUJDQ0JBRDNBMEMx
OEJGRjgwMENFODkwRiAvKiBKU0hUTUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLywKLQkJCQlCQ0JD
QUU1MzBGRjFBMjlFMDAwNzYyQUUgLyogSlNIVE1MRGF0YUdyaWRFbGVtZW50Q3VzdG9tLmNwcCAq
LywKIAkJCQlCQzUxNTgwQTBDMDNENDA0MDA4QkIwRUUgLyogSlNIVE1MRG9jdW1lbnRDdXN0b20u
Y3BwICovLAogCQkJCUJDNTgyM0Y0MEMwQTk4REYwMDUzRjFCNSAvKiBKU0hUTUxFbGVtZW50Q3Vz
dG9tLmNwcCAqLywKIAkJCQlCQzZENDRCRDBDMDdFRkI2MDA3MkQyQzkgLyogSlNIVE1MRW1iZWRF
bGVtZW50Q3VzdG9tLmNwcCAqLywKQEAgLTE4Njg1LDggKzE4NTc3LDYgQEAKIAkJCQkxQTM0MTdD
NzBDRUNGRjI1MDA0OUNCREUgLyogSlNDdXN0b21Wb2lkQ2FsbGJhY2suaCAqLywKIAkJCQlFMTBC
OTNDMjBCNzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwICovLAog
CQkJCUUxMEI5MzdCMEI3M0MwMEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNvbHZlci5o
ICovLAotCQkJCUJDQkNBRTNBMEZGMTkzOTkwMDA3NjJBRSAvKiBKU0RhdGFHcmlkRGF0YVNvdXJj
ZS5jcHAgKi8sCi0JCQkJQkNCQ0FFM0IwRkYxOTM5OTAwMDc2MkFFIC8qIEpTRGF0YUdyaWREYXRh
U291cmNlLmggKi8sCiAJCQkJOTNCNzBENEQwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTRXZlbnRMaXN0
ZW5lci5jcHAgKi8sCiAJCQkJOTNCNzBENEUwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTRXZlbnRMaXN0
ZW5lci5oICovLAogCQkJCTkzNUY0NTQwMEY3QzNCNUYwMEQ3QzFGQiAvKiBKU0xhenlFdmVudExp
c3RlbmVyLmNwcCAqLywKQEAgLTE5MjQ3LDggKzE5MTM3LDYgQEAKIAkJCQlCQ0U0NDEzMjEyRjc0
OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuaCAqLywKIAkJCQk5MzkyRjE0MzBBRDE4
NUZFMDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5jcHAgKi8sCiAJCQkJOTM5MkYxNDEwQUQxODVG
NDAwNjkxQkQ0IC8qIFJlbmRlckNvdW50ZXIuaCAqLywKLQkJCQlCQzc3Q0VDNzBGRjAxQ0JFMDA3
MDg4N0IgLyogUmVuZGVyRGF0YUdyaWQuY3BwICovLAotCQkJCUJDNzdDRUIyMEZGMDE3RjIwMDcw
ODg3QiAvKiBSZW5kZXJEYXRhR3JpZC5oICovLAogCQkJCUQzMDI3NTQzMTJBNUZFODQwMDRCRDgy
OCAvKiBSZW5kZXJEZXRhaWxzLmNwcCAqLywKIAkJCQlEMzAyNzU0NDEyQTVGRTg0MDA0QkQ4Mjgg
LyogUmVuZGVyRGV0YWlscy5oICovLAogCQkJCUQzMDI3NTQ1MTJBNUZFODQwMDRCRDgyOCAvKiBS
ZW5kZXJEZXRhaWxzTWFya2VyLmNwcCAqLywKQEAgLTE5NDU1LDYgKzE5MzQzLDcgQEAKIAkJCQk4
MTVFNjE2NjEzMjU4N0FBMDBCNjIyQjAgLyogRGF0YVRyYW5zZmVySXRlbS5jcHAgKi8sCiAJCQkJ
ODFBQzU5OTcxMzE2MzZFNjAwMDlBN0UwIC8qIERhdGFUcmFuc2Zlckl0ZW0uaCAqLywKIAkJCQk4
MUFDNUFFODEzMTYzOTJFMDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbS5pZGwgKi8sCisJCQkJ
NzgxNzU1ODUxMzY1QTFCMDAwOTNCRTJFIC8qIERhdGFUcmFuc2Zlckl0ZW1zLmNwcCAqLywKIAkJ
CQk4MUFDNTk5ODEzMTYzNkU2MDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbXMuaCAqLywKIAkJ
CQk4MUFDNUFFOTEzMTYzOTJFMDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbXMuaWRsICovLAog
CQkJCUE4QzIyOEEwMTFENTcyMkUwMEQ1QTdEMyAvKiBEZWNvZGVkRGF0YURvY3VtZW50UGFyc2Vy
LmNwcCAqLywKQEAgLTIwMjYxLDkgKzIwMTUwLDYgQEAKIAkJCQk1MTk2MTE3ODBDQUM1NkE4MDAx
MEE4MEMgLyogRGF0YWJhc2VUaHJlYWQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBRDUxQTE0MENC
NTlDRDMwMDk1M0QxMSAvKiBEYXRhYmFzZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTUx
RkFGRTM0MENFQ0JGMkQwMEJCM0YyNCAvKiBEYXRhYmFzZVRyYWNrZXJDbGllbnQuaCBpbiBIZWFk
ZXJzICovLAotCQkJCUJDNzdDRkMyMEZGMTc1NTUwMDcwODg3QiAvKiBEYXRhR3JpZENvbHVtbi5o
IGluIEhlYWRlcnMgKi8sCi0JCQkJQkM3N0NGQUMwRkYxNzNEMzAwNzA4ODdCIC8qIERhdGFHcmlk
Q29sdW1uTGlzdC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQkNCQ0FFMzcwRkYxOTM4NTAwMDc2MkFF
IC8qIERhdGFHcmlkRGF0YVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMyMjc0NkYwRTgz
NjY0NTAwRTdGOTc1IC8qIERhdGFSZWYuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNjQ2NDFDMTFE
N0Y0MTYwMDY0NTVCMCAvKiBEYXRhc2V0RE9NU3RyaW5nTWFwLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk4MUFDNTk5OTEzMTYzNkU2MDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbS5oIGluIEhlYWRl
cnMgKi8sCkBAIC0yMDM2Nyw3ICsyMDI1Myw2IEBACiAJCQkJODU4QzM4M0MwQUE4RUQ4MjAwQjE4
N0E0IC8qIERPTUNTU1ZhbHVlTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODU5MDlEMkIwQUND
N0Q1NTAwREYwMUYxIC8qIERPTUNTU1ZhbHVlTGlzdEludGVybmFsLmggaW4gSGVhZGVycyAqLywK
IAkJCQlFMTBCOUNDQzBCNzQ3QTQ0MDAzRUQ4OTAgLyogRE9NQ3VzdG9tWFBhdGhOU1Jlc29sdmVy
LmggaW4gSGVhZGVycyAqLywKLQkJCQlCQzdEQUFFRjBGRjk2MTVEMDBDRTAxMzggLyogRE9NRGF0
YUdyaWREYXRhU291cmNlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NUFDQUJCMDBBOUNBRjgwMDA2
NzFFOTAgLyogRE9NRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1MDg5Q0RCMEE5OEM0
MjgwMEEyNzVBQSAvKiBET01Eb2N1bWVudEZyYWdtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk0
NDMxMUY4MjEyRTRFNjZDMDAwQThEMTkgLyogRE9NRG9jdW1lbnRGcmFnbWVudEludGVybmFsLmgg
aW4gSGVhZGVycyAqLywKQEAgLTIxMjk2LDEwICsyMTE4MSw2IEBACiAJCQkJQThERjNGRDAwOTdG
QTBGQzAwNTI5ODFCIC8qIEhUTUxDb2xsZWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzdC
Mzg2NTEyMjg4M0U5MDBCODFGRjggLyogSFRNTENvbnN0cnVjdGlvblNpdGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUUxQTMxNjYzMTM0QkNBRTgwMDdDOUE0RiAvKiBIVE1MQ29udmVydGVyLmggaW4g
SGVhZGVycyAqLywKLQkJCQlCQzc3Q0RCQzBGRUZGMTQyMDA3MDg4N0IgLyogSFRNTERhdGFHcmlk
Q2VsbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDNzdDQjg3MEZFQkY1QUYwMDcwODg3
QiAvKiBIVE1MRGF0YUdyaWRDb2xFbGVtZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlCQzIxMkEx
RjBGRTgzMzMyMDBFQzM3MDggLyogSFRNTERhdGFHcmlkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
Ci0JCQkJQkM3N0NDRUUwRkVGREU2QzAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCUY1QzA0MURCMEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0
YUxpc3RFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlEMzU5RDc4QTEyOUNBMjcxMDAwNkU1
RDIgLyogSFRNTERldGFpbHNFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEVBNzlGQTBB
MTkxNkRGMDBBOEVGNUYgLyogSFRNTERpcmVjdG9yeUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApA
QCAtMjE1ODIsOSArMjE0NjMsNiBAQAogCQkJCTFBRTgyRjkwMENBQUZBOUQwMDIyMzdBRSAvKiBK
U0RhdGFiYXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCNTlERDY5OTExOTAyOUU1MDA3RTk2ODQg
LyogSlNEYXRhYmFzZUNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCQlCNThDRUI2OTExOTEz
NjA3MDAyQTY3OTAgLyogSlNEYXRhYmFzZVN5bmMuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDNzdE
MTZBMEZGMTlGNTYwMDcwODg3QiAvKiBKU0RhdGFHcmlkQ29sdW1uLmggaW4gSGVhZGVycyAqLywK
LQkJCQlCQzc3RDE2QzBGRjE5RjU2MDA3MDg4N0IgLyogSlNEYXRhR3JpZENvbHVtbkxpc3QuaCBp
biBIZWFkZXJzICovLAotCQkJCUJDQkNBRTNEMEZGMTkzOTkwMDA3NjJBRSAvKiBKU0RhdGFHcmlk
RGF0YVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkU5N0NFNzAxMjkzQUQ2QjAwQzVDOEZG
IC8qIEpTRGF0YVZpZXcuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNjJBNDU4MTAxMTQ2NDcwMERG
RjNFRCAvKiBKU0RlZGljYXRlZFdvcmtlckNvbnRleHQuaCBpbiBIZWFkZXJzICovLAogCQkJCUZE
QTE1RUQyMTJCMDNGOTQwMDNBNTgzQSAvKiBKU0RlbGF5Tm9kZS5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yMTY3MSwxMCArMjE1NDksNiBAQAogCQkJCUE4MEU3RTlGMEExQTgzRTMwMDdGQjhDNSAvKiBK
U0hUTUxCdXR0b25FbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzhFNjY2MjA5RjA5Qjg3
MDA4QTQ4RUMgLyogSlNIVE1MQ2FudmFzRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkND
QkFENDEwQzE4QzE0MjAwQ0U4OTBGIC8qIEpTSFRNTENvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICov
LAotCQkJCUJDNzdDRENGMEZFRkYzM0IwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZENlbGxFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlCQzc3Q0JENDBGRUJGODMxMDA3MDg4N0IgLyogSlNI
VE1MRGF0YUdyaWRDb2xFbGVtZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQlCQzIxMkE0MjBGRTgz
QTE4MDBFQzM3MDggLyogSlNIVE1MRGF0YUdyaWRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKLQkJ
CQlCQzc3Q0Q0RjBGRUZFMTYxMDA3MDg4N0IgLyogSlNIVE1MRGF0YUdyaWRSb3dFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKIAkJCQlGNUMwNDFFNzBGRkNBOTZEMDA4MzlENEEgLyogSlNIVE1MRGF0
YUxpc3RFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlEMzU5RDhCRjEyOUNBNTVDMDAwNkU1
RDIgLyogSlNIVE1MRGV0YWlsc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBODVCMUU3
MEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxEaXJlY3RvcnlFbGVtZW50LmggaW4gSGVhZGVycyAq
LywKQEAgLTIyMjc1LDcgKzIyMTQ5LDYgQEAKIAkJCQlCQ0VBNDg2NjA5N0Q5MzAyMDA5NEM5RTQg
LyogUmVuZGVyQnV0dG9uLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0U0NDEzNDEyRjc0OEUyMDA5
Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzOTJGMTQy
MEFEMTg1RjQwMDY5MUJENCAvKiBSZW5kZXJDb3VudGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQlC
Qzc3Q0VCMzBGRjAxN0YyMDA3MDg4N0IgLyogUmVuZGVyRGF0YUdyaWQuaCBpbiBIZWFkZXJzICov
LAogCQkJCUQzMDI3NTQ4MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxzLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlEMzAyNzU0QTEyQTVGRTg0MDA0QkQ4MjggLyogUmVuZGVyRGV0YWlsc01h
cmtlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY1QjdBNTUxMEY2NUQ3QTAwMzc2MzAyIC8qIFJl
bmRlckVtYmVkZGVkT2JqZWN0LmggaW4gSGVhZGVycyAqLywKQEAgLTIzNjE0LDggKzIzNDg3LDYg
QEAKIAkJCQk1MTk2MTFFQjBDQUM3NDlDMDAxMEE4MEMgLyogRGF0YWJhc2VUYXNrLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTUxOTYxMTZEMENBQzU2NTcwMDEwQTgwQyAvKiBEYXRhYmFzZVRocmVh
ZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUQ1MUExNTBDQjU5Q0QzMDA5NTNEMTEgLyogRGF0
YWJhc2VUcmFja2VyLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUJDNzdEMjM5MEZGMjk4MDgwMDcw
ODg3QiAvKiBEYXRhR3JpZENvbHVtbi5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlCQzc3RDFGRDBG
RjI4RDlCMDA3MDg4N0IgLyogRGF0YUdyaWRDb2x1bW5MaXN0LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUJDNjQ2NDFEMTFEN0Y0MTYwMDY0NTVCMCAvKiBEYXRhc2V0RE9NU3RyaW5nTWFwLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTgxNUU2MTY3MTMyNTg3QUEwMEI2MjJCMCAvKiBEYXRhVHJhbnNm
ZXJJdGVtLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJFOTdDQ0VBMTI5MzlDQjgwMEM1QzhGRiAv
KiBEYXRhVmlldy5jcHAgaW4gU291cmNlcyAqLywKQEAgLTIzNjg5LDcgKzIzNTYwLDYgQEAKIAkJ
CQk4NThDMzgxRDBBQThFMjk2MDBCMTg3QTQgLyogRE9NQ1NTVmFsdWUubW0gaW4gU291cmNlcyAq
LywKIAkJCQk4NThDMzgzRDBBQThFRDgyMDBCMTg3QTQgLyogRE9NQ1NTVmFsdWVMaXN0Lm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJRTEwQjlDQ0QwQjc0N0E0NDAwM0VEODkwIC8qIERPTUN1c3RvbVhQ
YXRoTlNSZXNvbHZlci5tbSBpbiBTb3VyY2VzICovLAotCQkJCUJDN0RBQUVFMEZGOTYxNUQwMENF
MDEzOCAvKiBET01EYXRhR3JpZERhdGFTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODVB
Q0FCQjEwQTlDQUY4MDAwNjcxRTkwIC8qIERPTURvY3VtZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJODUwODlDREMwQTk4QzQyODAwQTI3NUFBIC8qIERPTURvY3VtZW50RnJhZ21lbnQubW0gaW4g
U291cmNlcyAqLywKIAkJCQk4NUNBOTc1RDBBOTYyRTU0MDA2OTBDQ0YgLyogRE9NRG9jdW1lbnRU
eXBlLm1tIGluIFNvdXJjZXMgKi8sCkBAIC0yNDE0NiwxMCArMjQwMTYsNiBAQAogCQkJCUE4REYz
RkQxMDk3RkEwRkMwMDUyOTgxQiAvKiBIVE1MQ29sbGVjdGlvbi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk5NzdCMzg2NDEyMjg4M0U5MDBCODFGRjggLyogSFRNTENvbnN0cnVjdGlvblNpdGUuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUQ0RjUxREYxMzI3MjU0ODAwMTZGNTQxIC8qIEhUTUxDb252
ZXJ0ZXIubW0gaW4gU291cmNlcyAqLywKLQkJCQlCQzc3Q0RCODBGRUZGMTIxMDA3MDg4N0IgLyog
SFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQkM3N0NCQUEw
RkVCRjZDOTAwNzA4ODdCIC8qIEhUTUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJQkNGNTI0NjAwRkVCRUU1RDAwOTVCRjI2IC8qIEhUTUxEYXRhR3JpZEVsZW1lbnQu
Y3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQkM3N0NENDIwRkVGRTBDNDAwNzA4ODdCIC8qIEhUTUxE
YXRhR3JpZFJvd0VsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjVDMDQxREEwRkZDQTdD
RTAwODM5RDRBIC8qIEhUTUxEYXRhTGlzdEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
RDM1OUQ3ODkxMjlDQTI3MTAwMDZFNUQyIC8qIEhUTUxEZXRhaWxzRWxlbWVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlBOEVBNzlGOTBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTERpcmVjdG9yeUVs
ZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNDQzMSwxMCArMjQyOTcsNiBAQAogCQkJCTFB
RTgyRjhGMENBQUZBOUQwMDIyMzdBRSAvKiBKU0RhdGFiYXNlLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCUI1OURENjlBMTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQjU4Q0VCNkExMTkxMzYwNzAwMkE2NzkwIC8qIEpTRGF0YWJhc2VT
eW5jLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUJDNzdEMTY5MEZGMTlGNTYwMDcwODg3QiAvKiBK
U0RhdGFHcmlkQ29sdW1uLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUJDNzdEMTZCMEZGMTlGNTYw
MDcwODg3QiAvKiBKU0RhdGFHcmlkQ29sdW1uTGlzdC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlC
Qzc3RDE1MjBGRjE5QzczMDA3MDg4N0IgLyogSlNEYXRhR3JpZENvbHVtbkxpc3RDdXN0b20uY3Bw
IGluIFNvdXJjZXMgKi8sCi0JCQkJQkNCQ0FFM0MwRkYxOTM5OTAwMDc2MkFFIC8qIEpTRGF0YUdy
aWREYXRhU291cmNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJFOTdDRTZGMTI5M0FENkIwMEM1
QzhGRiAvKiBKU0RhdGFWaWV3LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJFOTdDQ0Y3MTI5M0E0
M0EwMEM1QzhGRiAvKiBKU0RhdGFWaWV3Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTQx
NjJBNDU3MTAxMTQ2NDcwMERGRjNFRCAvKiBKU0RlZGljYXRlZFdvcmtlckNvbnRleHQuY3BwIGlu
IFNvdXJjZXMgKi8sCkBAIC0yNDU0OSwxMSArMjQ0MTEsNiBAQAogCQkJCTkzOTIyNjJEMTAzMjEw
N0IwMDZFN0Q1RCAvKiBKU0hUTUxDYW52YXNFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUJDQ0JBRDQwMEMxOEMxNDIwMENFODkwRiAvKiBKU0hUTUxDb2xsZWN0aW9uLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUJDQ0JBRDNCMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxDb2xs
ZWN0aW9uQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUJDNzdDRENFMEZFRkYzM0IwMDcw
ODg3QiAvKiBKU0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAotCQkJ
CUJDNzdDQkQzMEZFQkY4MzEwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZENvbEVsZW1lbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCi0JCQkJQkMyMTJBNDEwRkU4M0ExODAwRUMzNzA4IC8qIEpTSFRNTERh
dGFHcmlkRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlCQ0JDQUU1NDBGRjFBMjlFMDAw
NzYyQUUgLyogSlNIVE1MRGF0YUdyaWRFbGVtZW50Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAot
CQkJCUJDNzdDRDRFMEZFRkUxNjEwMDcwODg3QiAvKiBKU0hUTUxEYXRhR3JpZFJvd0VsZW1lbnQu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjVDMDQxRTYwRkZDQTk2RDAwODM5RDRBIC8qIEpTSFRN
TERhdGFMaXN0RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlEMzU5RDhCRTEyOUNBNTVD
MDAwNkU1RDIgLyogSlNIVE1MRGV0YWlsc0VsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MUE4NUIxRTYwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTERpcmVjdG9yeUVsZW1lbnQuY3BwIGlu
IFNvdXJjZXMgKi8sCkBAIC0yNTE2Myw3ICsyNTAyMCw2IEBACiAJCQkJQkNFQTQ4NjUwOTdEOTMw
MjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQ0U0NDEz
MzEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOTM5MkYxNDQwQUQxODVGRTAwNjkxQkQ0IC8qIFJlbmRlckNvdW50ZXIuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJQkM3N0NFQzgwRkYwMUNCRTAwNzA4ODdCIC8qIFJlbmRlckRhdGFHcmlk
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUQzMDI3NTQ3MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5k
ZXJEZXRhaWxzLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUQzMDI3NTQ5MTJBNUZFODQwMDRCRDgy
OCAvKiBSZW5kZXJEZXRhaWxzTWFya2VyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGNUI3QTU0
MTBGNjVEN0EwMDM3NjMwMiAvKiBSZW5kZXJFbWJlZGRlZE9iamVjdC5jcHAgaW4gU291cmNlcyAq
LywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw4ICs2Nyw2IEBA
CiAjaW5jbHVkZSAiSlNET01XaW5kb3dDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTRE9NV2luZG93
U2hlbGwuY3BwIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5jcHAiCi0jaW5jbHVkZSAiSlNEYXRh
R3JpZENvbHVtbkxpc3RDdXN0b20uY3BwIgotI2luY2x1ZGUgIkpTRGF0YUdyaWREYXRhU291cmNl
LmNwcCIKICNpbmNsdWRlICJKU0RhdGFWaWV3Q3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0RlZGlj
YXRlZFdvcmtlckNvbnRleHRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTRGVza3RvcE5vdGlmaWNh
dGlvbnNDdXN0b20uY3BwIgpAQCAtODcsNyArODUsNiBAQAogI2luY2x1ZGUgIkpTSFRNTEFwcGxl
dEVsZW1lbnRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTSFRNTENhbnZhc0VsZW1lbnRDdXN0b20u
Y3BwIgogI2luY2x1ZGUgIkpTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwIgotI2luY2x1ZGUgIkpT
SFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNIVE1MRG9jdW1lbnRD
dXN0b20uY3BwIgogI2luY2x1ZGUgIkpTSFRNTEVsZW1lbnRDdXN0b20uY3BwIgogI2luY2x1ZGUg
IkpTSFRNTEVtYmVkRWxlbWVudEN1c3RvbS5jcHAiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RhdGFHcmlkQ29sdW1uTGlzdEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEYXRhR3JpZENvbHVtbkxpc3RDdXN0b20uY3BwCShy
ZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGF0YUdyaWRD
b2x1bW5MaXN0Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSw1NCArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBB
UyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgot
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKLSAqLwotCi0jaW5j
bHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoREFUQUdSSUQpCi0KLSNpbmNsdWRlICJKU0Rh
dGFHcmlkQ29sdW1uTGlzdC5oIgotCi0jaW5jbHVkZSAiRGF0YUdyaWRDb2x1bW4uaCIKLSNpbmNs
dWRlICJEYXRhR3JpZENvbHVtbkxpc3QuaCIKLSNpbmNsdWRlICJKU0RhdGFHcmlkQ29sdW1uLmgi
Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+Ci0KLXVzaW5nIG5hbWVzcGFjZSBK
U0M7Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotYm9vbCBKU0RhdGFHcmlkQ29sdW1uTGlzdDo6
Y2FuR2V0SXRlbXNGb3JOYW1lKEV4ZWNTdGF0ZSosIERhdGFHcmlkQ29sdW1uTGlzdCogaW1wbCwg
Y29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKQotewotICAgIHJldHVybiBpbXBsLT5pdGVt
V2l0aE5hbWUoaWRlbnRpZmllclRvQXRvbWljU3RyaW5nKHByb3BlcnR5TmFtZSkpOwotfQotCi1K
U1ZhbHVlIEpTRGF0YUdyaWRDb2x1bW5MaXN0OjpuYW1lR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywg
SlNWYWx1ZSBzbG90QmFzZSwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKQotewotICAg
IEpTRGF0YUdyaWRDb2x1bW5MaXN0KiB0aGlzT2JqID0gc3RhdGljX2Nhc3Q8SlNEYXRhR3JpZENv
bHVtbkxpc3QqPihhc09iamVjdChzbG90QmFzZSkpOwotICAgIHJldHVybiB0b0pTKGV4ZWMsIHRo
aXNPYmotPmdsb2JhbE9iamVjdCgpLCB0aGlzT2JqLT5pbXBsKCktPml0ZW1XaXRoTmFtZShpZGVu
dGlmaWVyVG9BdG9taWNTdHJpbmcocHJvcGVydHlOYW1lKSkpOwotfQotCi19IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
YXRhR3JpZERhdGFTb3VyY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRGF0YUdyaWREYXRhU291cmNlLmNwcAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RhdGFHcmlkRGF0YVNvdXJjZS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEsNTUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLiAKLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoREFUQUdSSUQp
Ci0KLSNpbmNsdWRlICJKU0RhdGFHcmlkRGF0YVNvdXJjZS5oIgotCi0jaW5jbHVkZSAiRG9jdW1l
bnQuaCIKLSNpbmNsdWRlICJGcmFtZS5oIgotI2luY2x1ZGUgIkhUTUxEYXRhR3JpZEVsZW1lbnQu
aCIKLSNpbmNsdWRlICJKU0hUTUxEYXRhR3JpZEVsZW1lbnQuaCIKLSNpbmNsdWRlICJKU0RPTVdp
bmRvd0Jhc2UuaCIKLSNpbmNsdWRlIDxydW50aW1lL0pTTG9jay5oPgotCi11c2luZyBuYW1lc3Bh
Y2UgSlNDOwotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLUpTRGF0YUdyaWREYXRhU291cmNlOjpK
U0RhdGFHcmlkRGF0YVNvdXJjZShKU0M6OkpTVmFsdWUgZGF0YVNvdXJjZSwgRnJhbWUqIGZyYW1l
KQotICAgIDogbV9kYXRhU291cmNlKGRhdGFTb3VyY2UpCi0gICAgLCBtX2ZyYW1lKGZyYW1lKQot
ewotfQotCi1KU0RhdGFHcmlkRGF0YVNvdXJjZTo6fkpTRGF0YUdyaWREYXRhU291cmNlKCkKLXsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKERBVEFHUklE
KQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEYXRhR3JpZERhdGFTb3VyY2Uu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RhdGFHcmlkRGF0
YVNvdXJjZS5oCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRGF0YUdyaWREYXRhU291cmNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNzYgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKLSAqLwotCi0jaWZuZGVmIEpT
RGF0YUdyaWREYXRhU291cmNlX2gKLSNkZWZpbmUgSlNEYXRhR3JpZERhdGFTb3VyY2VfaAotCi0j
aWYgRU5BQkxFKERBVEFHUklEKQotCi0jaW5jbHVkZSAiRGF0YUdyaWREYXRhU291cmNlLmgiCi0j
aW5jbHVkZSA8aGVhcC9TdHJvbmcuaD4KLSNpbmNsdWRlIDxydW50aW1lL0pTVmFsdWUuaD4KLSNp
bmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBGcmFtZTsKLWNsYXNzIEhUTUxEYXRhR3JpZEVsZW1l
bnQ7Ci0KLWNsYXNzIEpTRGF0YUdyaWREYXRhU291cmNlIDogcHVibGljIERhdGFHcmlkRGF0YVNv
dXJjZSB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8SlNEYXRhR3JpZERhdGFTb3Vy
Y2U+IGNyZWF0ZShKU0M6OkpTVmFsdWUgZGF0YVNvdXJjZSwgRnJhbWUqIGZyYW1lKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBKU0RhdGFHcmlkRGF0YVNvdXJjZShkYXRhU291
cmNlLCBmcmFtZSkpOwotICAgIH0KLQotICAgIHZpcnR1YWwgfkpTRGF0YUdyaWREYXRhU291cmNl
KCk7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNKU0RhdGFHcmlkRGF0YVNvdXJjZSgpIGNvbnN0IHsg
cmV0dXJuIHRydWU7IH0KLSAgICBKU0M6OkpTVmFsdWUganNEYXRhU291cmNlKCkgY29uc3QgeyBy
ZXR1cm4gbV9kYXRhU291cmNlLmdldCgpOyB9Ci0KLXByaXZhdGU6Ci0gICAgSlNEYXRhR3JpZERh
dGFTb3VyY2UoSlNDOjpKU1ZhbHVlLCBGcmFtZSopOwotCi0gICAgSlNDOjpQcm90ZWN0ZWRKU1Zh
bHVlIG1fZGF0YVNvdXJjZTsKLSAgICBSZWZQdHI8RnJhbWU+IG1fZnJhbWU7Ci19OwotCi1pbmxp
bmUgSlNEYXRhR3JpZERhdGFTb3VyY2UqIGFzSlNEYXRhR3JpZERhdGFTb3VyY2UoRGF0YUdyaWRE
YXRhU291cmNlKiBkYXRhU291cmNlKQotewotICAgIEFTU0VSVChkYXRhU291cmNlLT5pc0pTRGF0
YUdyaWREYXRhU291cmNlKCkpOwotICAgIHJldHVybiBzdGF0aWNfY2FzdDxKU0RhdGFHcmlkRGF0
YVNvdXJjZSo+KGRhdGFTb3VyY2UpOwotfQotCi1pbmxpbmUgY29uc3QgSlNEYXRhR3JpZERhdGFT
b3VyY2UqIGFzSlNEYXRhR3JpZERhdGFTb3VyY2UoY29uc3QgRGF0YUdyaWREYXRhU291cmNlKiBk
YXRhU291cmNlKQotewotICAgIEFTU0VSVChkYXRhU291cmNlLT5pc0pTRGF0YUdyaWREYXRhU291
cmNlKCkpOwotICAgIHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBKU0RhdGFHcmlkRGF0YVNvdXJj
ZSo+KGRhdGFTb3VyY2UpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoREFUQUdSSUQpCi0jZW5kaWYgLy8gSlNEYXRhR3JpZERhdGFTb3VyY2VfaApJbmRl
eDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRGF0YUdyaWRFbGVtZW50Q3VzdG9t
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxEYXRh
R3JpZEVsZW1lbnRDdXN0b20uY3BwCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTSFRNTERhdGFHcmlkRWxlbWVudEN1c3RvbS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEsNjAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoREFUQUdSSUQpCi0K
LSNpbmNsdWRlICJKU0hUTUxEYXRhR3JpZEVsZW1lbnQuaCIKLQotI2luY2x1ZGUgIkRvY3VtZW50
LmgiCi0jaW5jbHVkZSAiSFRNTERhdGFHcmlkRWxlbWVudC5oIgotI2luY2x1ZGUgIkpTRGF0YUdy
aWREYXRhU291cmNlLmgiCi0KLXVzaW5nIG5hbWVzcGFjZSBKU0M7Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotSlNWYWx1ZSBKU0hUTUxEYXRhR3JpZEVsZW1lbnQ6OmRhdGFTb3VyY2UoRXhlY1N0
YXRlKikgY29uc3QKLXsKLSAgICBEYXRhR3JpZERhdGFTb3VyY2UqIGRhdGFTb3VyY2UgPSBzdGF0
aWNfY2FzdDxIVE1MRGF0YUdyaWRFbGVtZW50Kj4oaW1wbCgpKS0+ZGF0YVNvdXJjZSgpOwotICAg
IGlmIChkYXRhU291cmNlICYmIGRhdGFTb3VyY2UtPmlzSlNEYXRhR3JpZERhdGFTb3VyY2UoKSkK
LSAgICAgICAgcmV0dXJuIGFzSlNEYXRhR3JpZERhdGFTb3VyY2UoZGF0YVNvdXJjZSktPmpzRGF0
YVNvdXJjZSgpOwotICAgIHJldHVybiBqc051bGwoKTsKLX0KLQotdm9pZCBKU0hUTUxEYXRhR3Jp
ZEVsZW1lbnQ6OnNldERhdGFTb3VyY2UoRXhlY1N0YXRlKiwgSlNWYWx1ZSB2YWx1ZSkKLXsKLSAg
ICBpZiAodmFsdWUuaXNOdWxsKCkpIHsKLSAgICAgICAgc3RhdGljX2Nhc3Q8SFRNTERhdGFHcmlk
RWxlbWVudCo+KGltcGwoKSktPnNldERhdGFTb3VyY2UoMCk7Ci0gICAgICAgIHJldHVybjsKLSAg
ICB9Ci0KLSAgICBzdGF0aWNfY2FzdDxIVE1MRGF0YUdyaWRFbGVtZW50Kj4oaW1wbCgpKS0+c2V0
RGF0YVNvdXJjZShKU0RhdGFHcmlkRGF0YVNvdXJjZTo6Y3JlYXRlKHZhbHVlLCBpbXBsKCktPmRv
Y3VtZW50KCktPmZyYW1lKCkpKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKERBVEFHUklEKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
VjhEYXRhR3JpZERhdGFTb3VyY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4RGF0YUdyaWREYXRhU291cmNlLmNwcAkocmV2aXNpb24gODQ5NTIpCisrKyBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERhdGFHcmlkRGF0YVNvdXJjZS5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZQotICogbWV0OgotICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0g
KiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQotICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
Ci0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJM
RShEQVRBR1JJRCkKLQotI2luY2x1ZGUgIlY4RGF0YUdyaWREYXRhU291cmNlLmgiCi0KLSNpbmNs
dWRlICJEb2N1bWVudC5oIgotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiSFRNTERhdGFH
cmlkRWxlbWVudC5oIgotI2luY2x1ZGUgIlY4SFRNTERhdGFHcmlkRWxlbWVudC5oIgotCi0KLW5h
bWVzcGFjZSBXZWJDb3JlIHsKLQotVjhEYXRhR3JpZERhdGFTb3VyY2U6OlY4RGF0YUdyaWREYXRh
U291cmNlKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBkYXRhU291cmNlLCBGcmFtZSogZnJhbWUpCi0g
ICAgOiBtX2RhdGFTb3VyY2Uodjg6OlBlcnNpc3RlbnQ8djg6OlZhbHVlPjo6TmV3KGRhdGFTb3Vy
Y2UpKQotICAgICwgbV9mcmFtZShmcmFtZSkKLXsKLSNpZm5kZWYgTkRFQlVHCi0gICAgVjhHQ0Nv
bnRyb2xsZXI6OnJlZ2lzdGVyR2xvYmFsSGFuZGxlKERBVEFTT1VSQ0UsIHRoaXMsIG1fZGF0YVNv
dXJjZSk7Ci0jZW5kaWYKLX0KLQotVjhEYXRhR3JpZERhdGFTb3VyY2U6On5WOERhdGFHcmlkRGF0
YVNvdXJjZSgpCi17Ci0jaWZuZGVmIE5ERUJVRwotICAgIFY4R0NDb250cm9sbGVyOjp1bnJlZ2lz
dGVyR2xvYmFsSGFuZGxlKHRoaXMsIG1fZGF0YVNvdXJjZSk7Ci0jZW5kaWYKLSAgICBtX2RhdGFT
b3VyY2UuRGlzcG9zZSgpOwotICAgIG1fZGF0YVNvdXJjZS5DbGVhcigpOwotfQotCi19IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoREFUQUdSSUQpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERhdGFHcmlkRGF0YVNvdXJjZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RGF0YUdyaWREYXRhU291cmNlLmgJKHJl
dmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhEYXRhR3JpZERh
dGFTb3VyY2UuaAkod29ya2luZyBjb3B5KQpAQCAtMSw4MSArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0gKiBtZXQ6Ci0gKgotICogICAgICogUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUKLSAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSAqIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqIGRpc3RyaWJ1dGlv
bi4KLSAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1l
cyBvZiBpdHMKLSAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0gKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJ
UyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IKLSAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAq
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
Ci0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotCi0jaWZuZGVmIFY4RGF0
YUdyaWREYXRhU291cmNlX2gKLSNkZWZpbmUgVjhEYXRhR3JpZERhdGFTb3VyY2VfaAotCi0jaWYg
RU5BQkxFKERBVEFHUklEKQotCi0jaW5jbHVkZSAiRGF0YUdyaWREYXRhU291cmNlLmgiCi0jaW5j
bHVkZSA8djguaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9S
ZWZQdHIuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBGcmFtZTsKLWNsYXNzIEhU
TUxEYXRhR3JpZEVsZW1lbnQ7Ci0KLWNsYXNzIFY4RGF0YUdyaWREYXRhU291cmNlIDogcHVibGlj
IERhdGFHcmlkRGF0YVNvdXJjZSB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8VjhE
YXRhR3JpZERhdGFTb3VyY2U+IGNyZWF0ZSh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZGF0YVNvdXJj
ZSwgRnJhbWUqIGZyYW1lKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBWOERh
dGFHcmlkRGF0YVNvdXJjZShkYXRhU291cmNlLCBmcmFtZSkpOwotICAgIH0KLQotICAgIHZpcnR1
YWwgflY4RGF0YUdyaWREYXRhU291cmNlKCk7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNKU0RhdGFH
cmlkRGF0YVNvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLSAgICB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4ganNEYXRhU291cmNlKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhU291cmNlOyB9Ci0K
LXByaXZhdGU6Ci0gICAgVjhEYXRhR3JpZERhdGFTb3VyY2Uodjg6OkhhbmRsZTx2ODo6VmFsdWU+
LCBGcmFtZSopOwotCi0gICAgdjg6OlBlcnNpc3RlbnQ8djg6OlZhbHVlPiBtX2RhdGFTb3VyY2U7
Ci0gICAgUmVmUHRyPEZyYW1lPiBtX2ZyYW1lOwotfTsKLQotaW5saW5lIFY4RGF0YUdyaWREYXRh
U291cmNlKiBhc1Y4RGF0YUdyaWREYXRhU291cmNlKERhdGFHcmlkRGF0YVNvdXJjZSogZGF0YVNv
dXJjZSkKLXsKLSAgICBBU1NFUlQoZGF0YVNvdXJjZS0+aXNKU0RhdGFHcmlkRGF0YVNvdXJjZSgp
KTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VjhEYXRhR3JpZERhdGFTb3VyY2UqPihkYXRhU291
cmNlKTsKLX0KLQotaW5saW5lIGNvbnN0IFY4RGF0YUdyaWREYXRhU291cmNlKiBhc1Y4RGF0YUdy
aWREYXRhU291cmNlKGNvbnN0IERhdGFHcmlkRGF0YVNvdXJjZSogZGF0YVNvdXJjZSkKLXsKLSAg
ICBBU1NFUlQoZGF0YVNvdXJjZS0+aXNKU0RhdGFHcmlkRGF0YVNvdXJjZSgpKTsKLSAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8Y29uc3QgVjhEYXRhR3JpZERhdGFTb3VyY2UqPihkYXRhU291cmNlKTsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKERBVEFHUklE
KQotI2VuZGlmIC8vIFY4RGF0YUdyaWREYXRhU291cmNlX2gKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERhdGFHcmlkQ29sdW1uTGlzdEN1c3RvbS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGF0YUdyaWRDb2x1
bW5MaXN0Q3VzdG9tLmNwcAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhEYXRhR3JpZENvbHVtbkxpc3RDdXN0b20uY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDY0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICogUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVpdGhlciB0
aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29udHJpYnV0
b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgot
ICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRGF0YUdy
aWRDb2x1bW5MaXN0LmgiCi0KLSNpbmNsdWRlICJEb2N1bWVudC5oIgotI2luY2x1ZGUgIlY4Qmlu
ZGluZy5oIgotI2luY2x1ZGUgIlY4UHJveHkuaCIKLQotI2lmIEVOQUJMRShEQVRBR1JJRCkKLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi1OQU1FRF9QUk9QRVJUWV9HRVRURVIoRGF0YUdyaWRDb2x1
bW5MaXN0KQotewotICAgIElOQ19TVEFUUygiRGF0YUdyaWRDb2x1bW5MaXN0Lk5hbWVkUHJvcGVy
dHlHZXR0ZXIiKTsKLSAgICAvLyBTZWFyY2ggdGhlIHByb3RvdHlwZSBjaGFpbiBmaXJzdC4KLSAg
ICB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUgPSBpbmZvLkhvbGRlcigpLT5HZXRSZWFsTmFt
ZWRQcm9wZXJ0eUluUHJvdG90eXBlQ2hhaW4obmFtZSk7Ci0gICAgaWYgKCF2YWx1ZS5Jc0VtcHR5
KCkpCi0gICAgICAgIHJldHVybiB2YWx1ZTsKLSAgICAKLSAgICAvLyBUaGVuIGxvb2sgZm9yIElE
TCBkZWZpbmVkIHByb3BlcnRpZXMgb24gdGhlIG9iamVjdCBpdHNlbGYuCi0gICAgaWYgKGluZm8u
SG9sZGVyKCktPkhhc1JlYWxOYW1lZENhbGxiYWNrUHJvcGVydHkobmFtZSkpCi0gICAgICAgIHJl
dHVybiBub3RIYW5kbGVkQnlJbnRlcmNlcHRvcigpOwotICAgIAotICAgIC8vIEZpbmFsbHksIGxv
b2sgdXAgYSBjb2x1bW4gYnkgbmFtZS4KLSAgICBEYXRhR3JpZENvbHVtbkxpc3QqIGltcCA9IFY4
RGF0YUdyaWRDb2x1bW5MaXN0Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBEYXRhR3Jp
ZENvbHVtbiogcmVzdWx0ID0gaW1wLT5pdGVtV2l0aE5hbWUodG9XZWJDb3JlU3RyaW5nKG5hbWUp
KTsKLSAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgcmV0dXJuIG5vdEhhbmRsZWRCeUludGVyY2Vw
dG9yKCk7Ci0gICAgcmV0dXJuIHRvVjgocmVzdWx0KTsKLX0KLSAgICAKLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShEQVRBR1JJRCkKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxEYXRhR3JpZEVsZW1lbnRDdXN0b20uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxEYXRh
R3JpZEVsZW1lbnRDdXN0b20uY3BwCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxEYXRhR3JpZEVsZW1lbnRDdXN0b20uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDY5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICog
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQot
ICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVp
dGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29u
dHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09Q
WVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
SFRNTERhdGFHcmlkRWxlbWVudC5oIgotCi0jaW5jbHVkZSAiRG9jdW1lbnQuaCIKLSNpbmNsdWRl
ICJWOEJpbmRpbmcuaCIKLSNpbmNsdWRlICJWOERhdGFHcmlkRGF0YVNvdXJjZS5oIgotI2luY2x1
ZGUgIlY4UHJveHkuaCIKLQotI2lmIEVOQUJMRShEQVRBR1JJRCkKLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1BQ0NFU1NPUl9HRVRURVIoSFRNTERhdGFHcmlkRWxlbWVudERhdGFTb3VyY2UpCi17
Ci0gICAgSU5DX1NUQVRTKCJET00uSFRNTERhdGFHcmlkRWxlbWVudC5kYXRhU291cmNlLl9nZXQi
KTsKLSAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGhvbGRlciA9IGluZm8uSG9sZGVyKCk7Ci0g
ICAgSFRNTERhdGFHcmlkRWxlbWVudCogaW1wID0gVjhET01XcmFwcGVyOjpjb252ZXJ0RE9NV3Jh
cHBlclRvTm9kZTxIVE1MRGF0YUdyaWRFbGVtZW50Pihob2xkZXIpOwotICAgIERhdGFHcmlkRGF0
YVNvdXJjZSogZGF0YVNvdXJjZSA9IGltcC0+ZGF0YVNvdXJjZSgpOwotICAgIGlmIChkYXRhU291
cmNlICYmIGRhdGFTb3VyY2UtPmlzSlNEYXRhR3JpZERhdGFTb3VyY2UoKSkKLSAgICAgICAgcmV0
dXJuIGFzVjhEYXRhR3JpZERhdGFTb3VyY2UoZGF0YVNvdXJjZSktPmpzRGF0YVNvdXJjZSgpOwot
ICAgIHJldHVybiB2ODo6TnVsbCgpOwotfQotCi1BQ0NFU1NPUl9TRVRURVIoSFRNTERhdGFHcmlk
RWxlbWVudERhdGFTb3VyY2UpCi17Ci0gICAgSU5DX1NUQVRTKCJET00uSFRNTERhdGFHcmlkRWxl
bWVudC5kYXRhU291cmNlLl9zZXQiKTsKLSAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGhvbGRl
ciA9IGluZm8uSG9sZGVyKCk7Ci0gICAgSFRNTERhdGFHcmlkRWxlbWVudCogaW1wID0gVjhET01X
cmFwcGVyOjpjb252ZXJ0RE9NV3JhcHBlclRvTm9kZTxIVE1MRGF0YUdyaWRFbGVtZW50Pihob2xk
ZXIpOwotICAgIFJlZlB0cjxEYXRhR3JpZERhdGFTb3VyY2U+IGRhdGFTb3VyY2U7Ci0gICAgaWYg
KCF2YWx1ZS5Jc0VtcHR5KCkpIHsKLSAgICAgICAgRnJhbWUgKmZyYW1lID0gaW1wLT5kb2N1bWVu
dCgpLT5mcmFtZSgpOwotICAgICAgICBkYXRhU291cmNlID0gVjhEYXRhR3JpZERhdGFTb3VyY2U6
OmNyZWF0ZSh2YWx1ZSwgZnJhbWUpOwotICAgIH0KLSAgICBpbXAtPnNldERhdGFTb3VyY2UoZGF0
YVNvdXJjZS5nZXQoKSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShEQVRBR1JJRCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVj
dG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rv
ci5jcHAJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2Vs
ZWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzc0LDIyICsxNzc0LDYgQEAgUGFzc1JlZlB0
cjxSZW5kZXJTdHlsZT4gQ1NTU3R5bGVTZWxlY3RvcgogICAgIHJldHVybiBtX3N0eWxlLnJlbGVh
c2UoKTsKIH0KIAotI2lmIEVOQUJMRShEQVRBR1JJRCkKLQotUGFzc1JlZlB0cjxSZW5kZXJTdHls
ZT4gQ1NTU3R5bGVTZWxlY3Rvcjo6cHNldWRvU3R5bGVGb3JEYXRhR3JpZENvbHVtbihEYXRhR3Jp
ZENvbHVtbiosIFJlbmRlclN0eWxlKikKLXsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50Ci0gICAg
cmV0dXJuIDA7Ci19Ci0KLVBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IENTU1N0eWxlU2VsZWN0b3I6
OnBzZXVkb1N0eWxlRm9yRGF0YUdyaWRDb2x1bW5IZWFkZXIoRGF0YUdyaWRDb2x1bW4qLCBSZW5k
ZXJTdHlsZSopCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudAotICAgIHJldHVybiAwOwotfQot
Ci0jZW5kaWYKLQogc3RhdGljIHZvaWQgYWRkSW50cmluc2ljTWFyZ2lucyhSZW5kZXJTdHlsZSog
c3R5bGUpCiB7CiAgICAgLy8gSW50cmluc2ljIG1hcmdpbiB2YWx1ZS4KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuaAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC01MCw3ICs1MCw2
IEBAIGNsYXNzIENTU1N0eWxlUnVsZTsKIGNsYXNzIENTU1N0eWxlU2hlZXQ7CiBjbGFzcyBDU1NW
YWx1ZTsKIGNsYXNzIENvbnRhaW5lck5vZGU7Ci1jbGFzcyBEYXRhR3JpZENvbHVtbjsKIGNsYXNz
IERvY3VtZW50OwogY2xhc3MgRWxlbWVudDsKIGNsYXNzIEZyYW1lOwpAQCAtMTA4LDEyICsxMDcs
NiBAQCBwdWJsaWM6CiAKICAgICAgICAgc3RhdGljIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHN0
eWxlRm9yRG9jdW1lbnQoRG9jdW1lbnQqKTsKIAotI2lmIEVOQUJMRShEQVRBR1JJRCkKLSAgICAg
ICAgLy8gRGF0YWdyaWQgc3R5bGUgY29tcHV0YXRpb24gKHVzZXMgdW5pcXVlIHBzZXVkbyBlbGVt
ZW50cyBhbmQgc3RydWN0dXJlcykKLSAgICAgICAgUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gcHNl
dWRvU3R5bGVGb3JEYXRhR3JpZENvbHVtbihEYXRhR3JpZENvbHVtbiosIFJlbmRlclN0eWxlKiBw
YXJlbnRTdHlsZSk7Ci0gICAgICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHBzZXVkb1N0eWxl
Rm9yRGF0YUdyaWRDb2x1bW5IZWFkZXIoRGF0YUdyaWRDb2x1bW4qLCBSZW5kZXJTdHlsZSogcGFy
ZW50U3R5bGUpOwotI2VuZGlmCi0KICAgICAgICAgUmVuZGVyU3R5bGUqIHN0eWxlKCkgY29uc3Qg
eyByZXR1cm4gbV9zdHlsZS5nZXQoKTsgfQogICAgICAgICBSZW5kZXJTdHlsZSogcGFyZW50U3R5
bGUoKSBjb25zdCB7IHJldHVybiBtX3BhcmVudFN0eWxlOyB9CiAgICAgICAgIEVsZW1lbnQqIGVs
ZW1lbnQoKSBjb25zdCB7IHJldHVybiBtX2VsZW1lbnQ7IH0KSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2Nzcy9odG1sLmNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvaHRtbC5jc3MJ
KHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzCSh3b3JraW5n
IGNvcHkpCkBAIC0zODUsNyArMzg1LDcgQEAgaW5wdXQsIHRleHRhcmVhLCBrZXlnZW4sIHNlbGVj
dCwgYnV0dG9uLAogICAgIC13ZWJraXQtYmxvY2stZmxvdzogdGIgIWltcG9ydGFudDsKIH0KIAot
aW5wdXQsIHRleHRhcmVhLCBrZXlnZW4sIHNlbGVjdCwgYnV0dG9uLCBpc2luZGV4LCBkYXRhZ3Jp
ZCB7CitpbnB1dCwgdGV4dGFyZWEsIGtleWdlbiwgc2VsZWN0LCBidXR0b24sIGlzaW5kZXggewog
ICAgIG1hcmdpbjogMF9fcWVtOwogICAgIGZvbnQ6IC13ZWJraXQtc21hbGwtY29udHJvbDsKICAg
ICBjb2xvcjogaW5pdGlhbDsKQEAgLTU1MCw3ICs1NTAsNyBAQCBpbnB1dFt0eXBlPSJyYW5nZSJd
Ojotd2Via2l0LXNsaWRlci10aHVtCiAKIGlucHV0W3R5cGU9ImJ1dHRvbiJdOmRpc2FibGVkLCBp
bnB1dFt0eXBlPSJzdWJtaXQiXTpkaXNhYmxlZCwgaW5wdXRbdHlwZT0icmVzZXQiXTpkaXNhYmxl
ZCwKIGlucHV0W3R5cGU9ImZpbGUiXTpkaXNhYmxlZDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0
b24sIGJ1dHRvbjpkaXNhYmxlZCwKLXNlbGVjdDpkaXNhYmxlZCwga2V5Z2VuOmRpc2FibGVkLCBv
cHRncm91cDpkaXNhYmxlZCwgb3B0aW9uOmRpc2FibGVkLCBkYXRhZ3JpZDpkaXNhYmxlZCB7Citz
ZWxlY3Q6ZGlzYWJsZWQsIGtleWdlbjpkaXNhYmxlZCwgb3B0Z3JvdXA6ZGlzYWJsZWQsIG9wdGlv
bjpkaXNhYmxlZCB7CiAgICAgY29sb3I6IEdyYXlUZXh0CiB9CiAKQEAgLTczNCwyMCArNzM0LDYg
QEAgcHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUgewogICAgIC13ZWJraXQtYm94LXNp
emluZzogYm9yZGVyLWJveDsKIH0KIAotLyogZGF0YWdyaWQgKi8KLQotZGF0YWdyaWQgewotICAg
IGhlaWdodDogMTUwcHg7IC8qIFdlIGRvbid0IHVzZSB3aWR0aDozMDBweCBpbiBDU1MsIHNpbmNl
IHdlIHdhbnQgd2lkdGg6aW50cmluc2ljIGFuZCB3aWR0aDptaW4taW50cmluc2ljIHRvIHJlc2V0
IHRvIDMwMCBwcm9wZXJseS4gKi8KLSAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGRhdGFncmlkOwot
ICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsKLSAgICAtd2Via2l0LXJ0bC1vcmRl
cmluZzogbG9naWNhbDsKLSAgICBjb2xvcjogYmxhY2s7Ci0gICAgYmFja2dyb3VuZC1jb2xvcjog
d2hpdGU7Ci0gICAgY3Vyc29yOiBkZWZhdWx0OwotICAgIGJvcmRlcjogMXB4IGluc2V0IGdyYXk7
Ci0gICAgd2hpdGUtc3BhY2U6IGluaXRpYWw7Ci19Ci0KIC8qIGlubGluZSBlbGVtZW50cyAqLwog
CiB1LCBpbnMgewpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9odG1sZWRpdGluZy5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9odG1sZWRpdGluZy5jcHAJKHJl
dmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvZWRpdGluZy9odG1sZWRpdGluZy5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTg3LDcgKzg3LDcgQEAgYm9vbCBjYW5IYXZlQ2hpbGRyZW5Gb3JF
ZGl0aW5nKGNvbnN0IE5vZAogI2lmIEVOQUJMRShXTUwpCiAgICAgICAgICYmICFub2RlLT5oYXNU
YWdOYW1lKFdNTE5hbWVzOjpkb1RhZykKICNlbmRpZgotICAgICAgICAmJiAoKCFub2RlLT5oYXNU
YWdOYW1lKGhyVGFnKSAmJiAhbm9kZS0+aGFzVGFnTmFtZShkYXRhZ3JpZFRhZykpIHx8IG5vZGUt
Pmhhc0NoaWxkTm9kZXMoKSk7CisgICAgICAgICYmICghbm9kZS0+aGFzVGFnTmFtZShoclRhZykg
fHwgbm9kZS0+aGFzQ2hpbGROb2RlcygpKTsKIH0KIAogLy8gQ29tcGFyZSB0d28gcG9zaXRpb25z
LCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBwb3NzaWJpbGl0eSB0aGF0IG9uZSBvciBib3RoCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTURhdGFHcmlkRGF0YVNvdXJjZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9ET01EYXRhR3JpZERhdGFTb3VyY2UuY3BwCShy
ZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvRE9NRGF0YUdyaWREYXRhU291
cmNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSw0NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuIAotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lm
IEVOQUJMRShEQVRBR1JJRCkKLQotI2luY2x1ZGUgIkRPTURhdGFHcmlkRGF0YVNvdXJjZS5oIgot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLURPTURhdGFHcmlkRGF0YVNvdXJjZTo6RE9NRGF0YUdy
aWREYXRhU291cmNlKCkKLXsKLX0KLQotRE9NRGF0YUdyaWREYXRhU291cmNlOjp+RE9NRGF0YUdy
aWREYXRhU291cmNlKCkKLXsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKERBVEFHUklEKQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9ET01EYXRhR3Jp
ZERhdGFTb3VyY2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0RPTURhdGFH
cmlkRGF0YVNvdXJjZS5oCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwv
RE9NRGF0YUdyaWREYXRhU291cmNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNjkgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKLSAqLwotCi0jaWZuZGVmIERP
TURhdGFHcmlkRGF0YVNvdXJjZV9oCi0jZGVmaW5lIERPTURhdGFHcmlkRGF0YVNvdXJjZV9oCi0K
LSNpZiBFTkFCTEUoREFUQUdSSUQpCi0KLSNpbmNsdWRlICJEYXRhR3JpZERhdGFTb3VyY2UuaCIK
LSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KLQot
bmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBIVE1MRGF0YUdyaWRFbGVtZW50OwotCi1jbGFz
cyBET01EYXRhR3JpZERhdGFTb3VyY2UgOiBwdWJsaWMgRGF0YUdyaWREYXRhU291cmNlIHsKLXB1
YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxET01EYXRhR3JpZERhdGFTb3VyY2U+IGNyZWF0
ZSgpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERPTURhdGFHcmlkRGF0YVNv
dXJjZSk7Ci0gICAgfQotCi0gICAgdmlydHVhbCB+RE9NRGF0YUdyaWREYXRhU291cmNlKCk7Ci0K
LSAgICB2aXJ0dWFsIGJvb2wgaXNET01EYXRhR3JpZERhdGFTb3VyY2UoKSBjb25zdCB7IHJldHVy
biB0cnVlOyB9Ci0KLXByaXZhdGU6Ci0gICAgRE9NRGF0YUdyaWREYXRhU291cmNlKCk7Ci19Owot
Ci1pbmxpbmUgRE9NRGF0YUdyaWREYXRhU291cmNlKiBhc0RPTURhdGFHcmlkRGF0YVNvdXJjZShE
YXRhR3JpZERhdGFTb3VyY2UqIGRhdGFTb3VyY2UpCi17Ci0gICAgQVNTRVJUKGRhdGFTb3VyY2Ut
PmlzRE9NRGF0YUdyaWREYXRhU291cmNlKCkpOwotICAgIHJldHVybiBzdGF0aWNfY2FzdDxET01E
YXRhR3JpZERhdGFTb3VyY2UqPihkYXRhU291cmNlKTsKLX0KLQotaW5saW5lIGNvbnN0IERPTURh
dGFHcmlkRGF0YVNvdXJjZSogYXNET01EYXRhR3JpZERhdGFTb3VyY2UoY29uc3QgRGF0YUdyaWRE
YXRhU291cmNlKiBkYXRhU291cmNlKQotewotICAgIEFTU0VSVChkYXRhU291cmNlLT5pc0RPTURh
dGFHcmlkRGF0YVNvdXJjZSgpKTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgRE9NRGF0
YUdyaWREYXRhU291cmNlKj4oZGF0YVNvdXJjZSk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShEQVRBR1JJRCkKLSNlbmRpZiAvLyBET01EYXRhR3JpZERh
dGFTb3VyY2VfaApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbi5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbi5jcHAJKHJl
dmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbi5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTEsNTMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAw
OSBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQot
I2lmIEVOQUJMRShEQVRBR1JJRCkKLQotI2luY2x1ZGUgIkRhdGFHcmlkQ29sdW1uLmgiCi0KLSNp
bmNsdWRlICJEYXRhR3JpZENvbHVtbkxpc3QuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi12
b2lkIERhdGFHcmlkQ29sdW1uOjpzZXRQcmltYXJ5KGJvb2wgcHJpbWFyeSkKLXsKLSAgICBpZiAo
bV9wcmltYXJ5ICE9IHByaW1hcnkpIHsKLSAgICAgICAgbV9wcmltYXJ5ID0gcHJpbWFyeTsKLSAg
ICAgICAgaWYgKG1fY29sdW1ucykKLSAgICAgICAgICAgIG1fY29sdW1ucy0+cHJpbWFyeUNvbHVt
bkNoYW5nZWQodGhpcyk7Ci0gICAgfQotfQotCi12b2lkIERhdGFHcmlkQ29sdW1uOjpjb2x1bW5D
aGFuZ2VkKCkKLXsKLSAgICBpZiAobV9jb2x1bW5zKQotICAgICAgICBtX2NvbHVtbnMtPnNldERh
dGFHcmlkTmVlZHNMYXlvdXQoKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvRGF0YUdyaWRDb2x1bW4uaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0RhdGFHcmlkQ29sdW1uLmgJKHJldmlzaW9uIDg0OTUy
KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbi5oCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDExNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA5IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBDT01QVVRFUiwgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLiAKLSAqLwotCi0jaWZuZGVmIERhdGFHcmlkQ29sdW1uX2gKLSNkZWZpbmUgRGF0
YUdyaWRDb2x1bW5faAotCi0jaWYgRU5BQkxFKERBVEFHUklEKQotCi0jaW5jbHVkZSAiUmVuZGVy
U3R5bGUuaCIKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+Ci0KLW5hbWVzcGFj
ZSBXZWJDb3JlIHsKLQotY2xhc3MgRGF0YUdyaWRDb2x1bW5MaXN0OwotCi1jbGFzcyBEYXRhR3Jp
ZENvbHVtbiA6IHB1YmxpYyBSZWZDb3VudGVkPERhdGFHcmlkQ29sdW1uPiB7Ci1wdWJsaWM6Ci0g
ICAgc3RhdGljIFBhc3NSZWZQdHI8RGF0YUdyaWRDb2x1bW4+IGNyZWF0ZShjb25zdCBTdHJpbmcm
IGNvbHVtbklELCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCBTdHJpbmcmIHR5cGUsIGJvb2wg
cHJpbWFyeSwgdW5zaWduZWQgc2hvcnQgc29ydGFibGUpCi0gICAgewotICAgICAgICByZXR1cm4g
YWRvcHRSZWYobmV3IERhdGFHcmlkQ29sdW1uKGNvbHVtbklELCBsYWJlbCwgdHlwZSwgcHJpbWFy
eSwgc29ydGFibGUpKTsKLSAgICB9Ci0KLSAgICBjb25zdCBBdG9taWNTdHJpbmcmIGlkKCkgY29u
c3QgeyByZXR1cm4gbV9pZDsgfQotICAgIHZvaWQgc2V0SWQoY29uc3QgQXRvbWljU3RyaW5nJiBp
ZCkgeyBtX2lkID0gaWQ7IGNvbHVtbkNoYW5nZWQoKTsgfQotCi0gICAgY29uc3QgQXRvbWljU3Ry
aW5nJiBsYWJlbCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFiZWw7IH0KLSAgICB2b2lkIHNldExhYmVs
KGNvbnN0IEF0b21pY1N0cmluZyYgbGFiZWwpIHsgbV9sYWJlbCA9IGxhYmVsOyBjb2x1bW5DaGFu
Z2VkKCk7IH0KLSAgICAKLSAgICBjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUoKSBjb25zdCB7IHJl
dHVybiBtX3R5cGU7IH0KLSAgICB2b2lkIHNldFR5cGUoY29uc3QgQXRvbWljU3RyaW5nJiB0eXBl
KSB7IG1fdHlwZSA9IHR5cGU7IGNvbHVtbkNoYW5nZWQoKTsgfQotICAgIAotICAgIHVuc2lnbmVk
IHNob3J0IHNvcnRhYmxlKCkgY29uc3QgeyByZXR1cm4gbV9zb3J0YWJsZTsgfQotICAgIHZvaWQg
c2V0U29ydGFibGUodW5zaWduZWQgc2hvcnQgc29ydGFibGUpIHsgbV9zb3J0YWJsZSA9IHNvcnRh
YmxlOyBjb2x1bW5DaGFuZ2VkKCk7IH0KLSAgICAKLSAgICB1bnNpZ25lZCBzaG9ydCBzb3J0RGly
ZWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9zb3J0RGlyZWN0aW9uOyB9Ci0gICAgdm9pZCBzZXRT
b3J0RGlyZWN0aW9uKHVuc2lnbmVkIHNob3J0IHNvcnREaXJlY3Rpb24pIHsgbV9zb3J0RGlyZWN0
aW9uID0gc29ydERpcmVjdGlvbjsgY29sdW1uQ2hhbmdlZCgpOyB9Ci0gICAgCi0gICAgYm9vbCBw
cmltYXJ5KCkgY29uc3QgeyByZXR1cm4gbV9wcmltYXJ5OyB9Ci0gICAgdm9pZCBzZXRQcmltYXJ5
KGJvb2wpOwotCi0gICAgdm9pZCBzZXRDb2x1bW5MaXN0KERhdGFHcmlkQ29sdW1uTGlzdCogbGlz
dCkKLSAgICB7Ci0gICAgICAgIG1fY29sdW1ucyA9IGxpc3Q7Ci0gICAgICAgIG1fY29sdW1uU3R5
bGUgPSAwOwotICAgICAgICBtX2hlYWRlclN0eWxlID0gMDsKLSAgICAgICAgbV9yZWN0ID0gSW50
UmVjdCgpOwotICAgIH0KLQotICAgIFJlbmRlclN0eWxlKiBjb2x1bW5TdHlsZSgpIGNvbnN0IHsg
cmV0dXJuIG1fY29sdW1uU3R5bGUuZ2V0KCk7IH0KLSAgICB2b2lkIHNldENvbHVtblN0eWxlKFBh
c3NSZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlKSB7IG1fY29sdW1uU3R5bGUgPSBzdHlsZTsgfQot
ICAgIAotICAgIFJlbmRlclN0eWxlKiBoZWFkZXJTdHlsZSgpIGNvbnN0IHsgcmV0dXJuIG1faGVh
ZGVyU3R5bGUuZ2V0KCk7IH0KLSAgICB2b2lkIHNldEhlYWRlclN0eWxlKFBhc3NSZWZQdHI8UmVu
ZGVyU3R5bGU+IHN0eWxlKSB7IG1faGVhZGVyU3R5bGUgPSBzdHlsZTsgfQotICAgIAotICAgIGNv
bnN0IEludFJlY3QmIHJlY3QoKSBjb25zdCB7IHJldHVybiBtX3JlY3Q7IH0KLSAgICB2b2lkIHNl
dFJlY3QoY29uc3QgSW50UmVjdCYgcmVjdCkgeyBtX3JlY3QgPSByZWN0OyB9Ci0KLXByaXZhdGU6
Ci0gICAgRGF0YUdyaWRDb2x1bW4oY29uc3QgU3RyaW5nJiBjb2x1bW5JRCwgY29uc3QgU3RyaW5n
JiBsYWJlbCwgY29uc3QgU3RyaW5nJiB0eXBlLCBib29sIHByaW1hcnksIHVuc2lnbmVkIHNob3J0
IHNvcnRhYmxlKQotICAgICAgICA6IG1fY29sdW1ucygwKQotICAgICAgICAsIG1faWQoY29sdW1u
SUQpCi0gICAgICAgICwgbV9sYWJlbChsYWJlbCkKLSAgICAgICAgLCBtX3R5cGUodHlwZSkKLSAg
ICAgICAgLCBtX3ByaW1hcnkocHJpbWFyeSkKLSAgICAgICAgLCBtX3NvcnRhYmxlKHNvcnRhYmxl
KQotICAgICAgICAsIG1fc29ydERpcmVjdGlvbigwKQotICAgIHsKLSAgICB9Ci0KLSAgICB2b2lk
IGNvbHVtbkNoYW5nZWQoKTsKLQotICAgIERhdGFHcmlkQ29sdW1uTGlzdCogbV9jb2x1bW5zOyAv
LyBOb3QgcmVmY291bnRlZC4gIFRoZSBjb2x1bW5zIGxpc3Qgd2lsbCBudWxsIG91dCBvdXIgcmVm
ZXJlbmNlIHdoZW4gaXQgZ29lcyBhd2F5LgotCi0gICAgQXRvbWljU3RyaW5nIG1faWQ7Ci0gICAg
QXRvbWljU3RyaW5nIG1fbGFiZWw7Ci0gICAgQXRvbWljU3RyaW5nIG1fdHlwZTsKLQotICAgIGJv
b2wgbV9wcmltYXJ5OwotCi0gICAgdW5zaWduZWQgc2hvcnQgbV9zb3J0YWJsZTsKLSAgICB1bnNp
Z25lZCBzaG9ydCBtX3NvcnREaXJlY3Rpb247Ci0gICAgCi0gICAgUmVmUHRyPFJlbmRlclN0eWxl
PiBtX2NvbHVtblN0eWxlOyAvLyBUaGUgc3R5bGUgdXNlZCB0byByZW5kZXIgdGhlIGNvbHVtbiBi
YWNrZ3JvdW5kIGJlaGluZCB0aGUgcm93IGNlbGxzLgotICAgIFJlZlB0cjxSZW5kZXJTdHlsZT4g
bV9oZWFkZXJTdHlsZTsgLy8gVGhlIHN0eWxlIHVzZWQgdG8gcmVuZGVyIHRoZSBjb2x1bW4gaGVh
ZGVyIGFib3ZlIHRoZSByb3cgY2VsbHMuCi0gICAgCi0gICAgSW50UmVjdCBtX3JlY3Q7Ci19Owot
Ci19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgotCi0jZW5kaWYgLy8gRGF0YUdyaWRD
b2x1bW5faApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbi5pZGwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbi5pZGwJKHJldmlz
aW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbi5pZGwJKHdv
cmtpbmcgY29weSkKQEAgLTEsNDggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBB
cHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuIAotICovCi0KLW1vZHVsZSBodG1sIHsKLQotICAgIGludGVy
ZmFjZSBbCi0gICAgICAgIENvbmRpdGlvbmFsPURBVEFHUklECi0gICAgXSBEYXRhR3JpZENvbHVt
biB7Ci0gICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgaWQ7IC8vIFRoZSBpZGVudGlmaWVyIGZv
ciB0aGUgY29sdW1uLgotICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGxhYmVsOyAvLyBUaGUg
dGV4dCB0byBkaXNwbGF5IGluIHRoZSBjb2x1bW4uCi0gICAgICAgIGF0dHJpYnV0ZSBET01TdHJp
bmcgdHlwZTsgLy8gVGhlIHR5cGUgb2YgZGF0YSBkaXNwbGF5ZWQgaW4gdGhpcyBjb2x1bW4uCi0K
LSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTkVWRVJfU09SVEVEID0gMDsKLSAgICAgICAg
Y29uc3QgdW5zaWduZWQgc2hvcnQgQUxXQVlTX1NPUlRFRCA9IDE7Ci0gICAgICAgIGNvbnN0IHVu
c2lnbmVkIHNob3J0IFNPTUVUSU1FU19TT1JURUQgPSAyOwotICAgICAgICBhdHRyaWJ1dGUgdW5z
aWduZWQgc2hvcnQgc29ydGFibGU7IC8vIFdoZXRoZXIgb3Igbm90IHRoZSBjb2x1bW4gY2FuIGJl
IHNvcnRlZC4KLQotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBOQVRVUkFMX1NPUlQgPSAw
OwotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBTT1JUX0FTQ0VORElORyA9IDE7Ci0gICAg
ICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNPUkNfREVTQ0VORElORyA9IDI7Ci0gICAgICAgIGF0
dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBzb3J0RGlyZWN0aW9uOyAvLyBUaGUgc29ydCBkaXJlY3Rp
b24gZm9yIHRoZSBjb2x1bW4uICBWYWxpZCB2YWx1ZXMgYXJlIGFzY2VuZGluZywgZGVzY2VuZGlu
ZyBhbmQgbmF0dXJhbCAobm8gc29ydCBhcHBsaWVkKS4KLSAgICAKLSAgICAgICAgYXR0cmlidXRl
IGJvb2xlYW4gcHJpbWFyeTsgLy8gV2hldGhlciBvciBub3QgdGhpcyBpcyB0aGUgcHJpbWFyeSBj
b2x1bW4gb2YgdGhlIHRyZWUgKHRoaXMgd2lsbCBiZSB3aGVyZSB0aGUgZGlzY2xvc3VyZSB0cmlh
bmdsZSBhbmQgY29ubmVjdGluZyB0cmVlIGxpbmVzIHdpbGwgZGlzcGxheSkKLSAgICB9OwotCi19
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0RhdGFHcmlkQ29sdW1uTGlzdC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9EYXRhR3JpZENvbHVtbkxpc3QuY3BwCShyZXZp
c2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMSwxMjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAot
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgot
Ci0jaWYgRU5BQkxFKERBVEFHUklEKQotCi0jaW5jbHVkZSAiRGF0YUdyaWRDb2x1bW5MaXN0Lmgi
Ci0jaW5jbHVkZSAiSFRNTERhdGFHcmlkRWxlbWVudC5oIgotI2luY2x1ZGUgIlBsYXRmb3JtU3Ry
aW5nLmgiCi0jaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCi0jaW5jbHVkZSA8d3RmL3RleHQvQXRv
bWljU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotRGF0YUdyaWRDb2x1bW5MaXN0
OjpEYXRhR3JpZENvbHVtbkxpc3QoSFRNTERhdGFHcmlkRWxlbWVudCogZGF0YUdyaWQpCi0gICAg
OiBtX2RhdGFHcmlkKGRhdGFHcmlkKQotewotfQotCi1EYXRhR3JpZENvbHVtbkxpc3Q6On5EYXRh
R3JpZENvbHVtbkxpc3QoKQotewotICAgIGNsZWFyKCk7Ci19Ci0KLURhdGFHcmlkQ29sdW1uKiBE
YXRhR3JpZENvbHVtbkxpc3Q6Oml0ZW1XaXRoTmFtZShjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUp
IGNvbnN0Ci17Ci0gICAgdW5zaWduZWQgbGVuZ3RoID0gbV9jb2x1bW5zLnNpemUoKTsKLSAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbGVuZ3RoOyArK2kpIHsKLSAgICAgICAgaWYgKG1fY29s
dW1uc1tpXS0+aWQoKSA9PSBuYW1lKQotICAgICAgICAgICAgcmV0dXJuIG1fY29sdW1uc1tpXS5n
ZXQoKTsKLSAgICB9Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLXZvaWQgRGF0YUdyaWRDb2x1bW5MaXN0
OjpzZXREYXRhR3JpZE5lZWRzTGF5b3V0KCkKLXsKLSAgICAvLyBNYXJrIHRoZSBkYXRhZ3JpZCBh
cyBuZWVkaW5nIGxheW91dC4KLSAgICBpZiAoZGF0YUdyaWQoKSAmJiBkYXRhR3JpZCgpLT5yZW5k
ZXJlcigpKSAKLSAgICAgICAgZGF0YUdyaWQoKS0+cmVuZGVyZXIoKS0+c2V0TmVlZHNMYXlvdXQo
dHJ1ZSk7Ci19Ci0KLURhdGFHcmlkQ29sdW1uKiBEYXRhR3JpZENvbHVtbkxpc3Q6OmFkZChjb25z
dCBTdHJpbmcmIGlkLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCBTdHJpbmcmIHR5cGUsIGJv
b2wgcHJpbWFyeSwgdW5zaWduZWQgc2hvcnQgc29ydGFibGUpCi17Ci0gICAgcmV0dXJuIGFkZChE
YXRhR3JpZENvbHVtbjo6Y3JlYXRlKGlkLCBsYWJlbCwgdHlwZSwgcHJpbWFyeSwgc29ydGFibGUp
LmdldCgpKTsKLX0KLQotRGF0YUdyaWRDb2x1bW4qIERhdGFHcmlkQ29sdW1uTGlzdDo6YWRkKERh
dGFHcmlkQ29sdW1uKiBjb2x1bW4pCi17Ci0gICAgaWYgKGNvbHVtbi0+cHJpbWFyeSgpKQotICAg
ICAgICBtX3ByaW1hcnlDb2x1bW4gPSBjb2x1bW47Ci0gICAgbV9jb2x1bW5zLmFwcGVuZChjb2x1
bW4pOwotICAgIGNvbHVtbi0+c2V0Q29sdW1uTGlzdCh0aGlzKTsKLSAgICBzZXREYXRhR3JpZE5l
ZWRzTGF5b3V0KCk7Ci0gICAgcmV0dXJuIGNvbHVtbjsKLX0KLQotdm9pZCBEYXRhR3JpZENvbHVt
bkxpc3Q6OnJlbW92ZShEYXRhR3JpZENvbHVtbiogY29sKQotewotICAgIHNpemVfdCBpbmRleCA9
IG1fY29sdW1ucy5maW5kKGNvbCk7Ci0gICAgaWYgKGluZGV4ID09IG5vdEZvdW5kKQotICAgICAg
ICByZXR1cm47Ci0gICAgbV9jb2x1bW5zLnJlbW92ZShpbmRleCk7Ci0gICAgaWYgKGNvbCA9PSBt
X3ByaW1hcnlDb2x1bW4pCi0gICAgICAgIG1fcHJpbWFyeUNvbHVtbiA9IDA7Ci0gICAgaWYgKGNv
bCA9PSBtX3NvcnRDb2x1bW4pCi0gICAgICAgIG1fc29ydENvbHVtbiA9IDA7Ci0gICAgY29sLT5z
ZXRDb2x1bW5MaXN0KDApOwotICAgIHNldERhdGFHcmlkTmVlZHNMYXlvdXQoKTsKLX0KLQotdm9p
ZCBEYXRhR3JpZENvbHVtbkxpc3Q6Om1vdmUoRGF0YUdyaWRDb2x1bW4qIGNvbCwgdW5zaWduZWQg
bG9uZyBpbmRleCkKLXsKLSAgICBzaXplX3QgY29sSW5kZXggPSBtX2NvbHVtbnMuZmluZChjb2wp
OwotICAgIGlmIChjb2xJbmRleCA9PSBub3RGb3VuZCkKLSAgICAgICAgcmV0dXJuOwotICAgIG1f
Y29sdW1ucy5pbnNlcnQoaW5kZXgsIGNvbCk7Ci0gICAgc2V0RGF0YUdyaWROZWVkc0xheW91dCgp
OwotfQotCi12b2lkIERhdGFHcmlkQ29sdW1uTGlzdDo6Y2xlYXIoKQotewotICAgIHVuc2lnbmVk
IGxlbmd0aCA9IG1fY29sdW1ucy5zaXplKCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8
IGxlbmd0aDsgKytpKQotICAgICAgICBtX2NvbHVtbnNbaV0tPnNldENvbHVtbkxpc3QoMCk7Ci0g
ICAgbV9jb2x1bW5zLmNsZWFyKCk7Ci0gICAgbV9wcmltYXJ5Q29sdW1uID0gMDsKLSAgICBtX3Nv
cnRDb2x1bW4gPSAwOwotICAgIHNldERhdGFHcmlkTmVlZHNMYXlvdXQoKTsKLX0KLQotdm9pZCBE
YXRhR3JpZENvbHVtbkxpc3Q6OnByaW1hcnlDb2x1bW5DaGFuZ2VkKERhdGFHcmlkQ29sdW1uKiBj
b2wpCi17Ci0gICAgaWYgKGNvbC0+cHJpbWFyeSgpKQotICAgICAgICBtX3ByaW1hcnlDb2x1bW4g
PSBjb2w7Ci0gICAgZWxzZSBpZiAobV9wcmltYXJ5Q29sdW1uID0gY29sKQotICAgICAgICBtX3By
aW1hcnlDb2x1bW4gPSAwOwotICAgIAotICAgIHNldERhdGFHcmlkTmVlZHNMYXlvdXQoKTsKLX0K
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2h0bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
aHRtbC9EYXRhR3JpZENvbHVtbkxpc3QuaAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2Vi
Q29yZS9odG1sL0RhdGFHcmlkQ29sdW1uTGlzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDYzICsw
LDAgQEAKLSNpZm5kZWYgRGF0YUdyaWRDb2x1bW5MaXN0X2gKLSNkZWZpbmUgRGF0YUdyaWRDb2x1
bW5MaXN0X2gKLQotI2lmIEVOQUJMRShEQVRBR1JJRCkKLQotI2luY2x1ZGUgIkRhdGFHcmlkQ29s
dW1uLmgiCi0KLSNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVm
UHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYvVmVjdG9y
Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgSFRNTERhdGFHcmlkRWxlbWVudDsK
LQotY2xhc3MgRGF0YUdyaWRDb2x1bW5MaXN0IDogcHVibGljIFJlZkNvdW50ZWQ8RGF0YUdyaWRD
b2x1bW5MaXN0PiB7Ci0gICAgZnJpZW5kIGNsYXNzIERhdGFHcmlkQ29sdW1uOwotcHVibGljOgot
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPERhdGFHcmlkQ29sdW1uTGlzdD4gY3JlYXRlKEhUTUxEYXRh
R3JpZEVsZW1lbnQqIGdyaWQpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IERh
dGFHcmlkQ29sdW1uTGlzdChncmlkKSk7Ci0gICAgfQotCi0gICAgfkRhdGFHcmlkQ29sdW1uTGlz
dCgpOwotCi0gICAgdW5zaWduZWQgbGVuZ3RoKCkgY29uc3QgeyByZXR1cm4gbV9jb2x1bW5zLnNp
emUoKTsgfQotCi0gICAgRGF0YUdyaWRDb2x1bW4qIGl0ZW0odW5zaWduZWQgaW5kZXgpIGNvbnN0
IHsgcmV0dXJuIG1fY29sdW1uc1tpbmRleF0uZ2V0KCk7IH0KLSAgICBEYXRhR3JpZENvbHVtbiog
aXRlbVdpdGhOYW1lKGNvbnN0IEF0b21pY1N0cmluZyYpIGNvbnN0OwotCi0gICAgRGF0YUdyaWRD
b2x1bW4qIHByaW1hcnlDb2x1bW4oKSBjb25zdCB7IHJldHVybiBtX3ByaW1hcnlDb2x1bW4uZ2V0
KCk7IH0KLQotICAgIERhdGFHcmlkQ29sdW1uKiBzb3J0Q29sdW1uKCkgY29uc3QgeyByZXR1cm4g
bV9zb3J0Q29sdW1uLmdldCgpOyB9Ci0KLSAgICBEYXRhR3JpZENvbHVtbiogYWRkKGNvbnN0IFN0
cmluZyYgaWQsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IFN0cmluZyYgdHlwZSwgYm9vbCBw
cmltYXJ5LCB1bnNpZ25lZCBzaG9ydCBzb3J0YWJsZSk7Ci0gICAgRGF0YUdyaWRDb2x1bW4qIGFk
ZChEYXRhR3JpZENvbHVtbiopOwotICAgIHZvaWQgcmVtb3ZlKERhdGFHcmlkQ29sdW1uKik7Ci0g
ICAgdm9pZCBtb3ZlKERhdGFHcmlkQ29sdW1uKiwgdW5zaWduZWQgbG9uZyBpbmRleCk7Ci0gICAg
dm9pZCBjbGVhcigpOwotCi0gICAgSFRNTERhdGFHcmlkRWxlbWVudCogZGF0YUdyaWQoKSBjb25z
dCB7IHJldHVybiBtX2RhdGFHcmlkOyB9Ci0gICAgdm9pZCBjbGVhckRhdGFHcmlkKCkgeyBtX2Rh
dGFHcmlkID0gMDsgfQotCi0gICAgdm9pZCBzZXREYXRhR3JpZE5lZWRzTGF5b3V0KCk7Ci0KLXBy
aXZhdGU6Ci0gICAgRGF0YUdyaWRDb2x1bW5MaXN0KEhUTUxEYXRhR3JpZEVsZW1lbnQqKTsKLQot
ICAgIHZvaWQgcHJpbWFyeUNvbHVtbkNoYW5nZWQoRGF0YUdyaWRDb2x1bW4qKTsKLQotICAgIEhU
TUxEYXRhR3JpZEVsZW1lbnQqIG1fZGF0YUdyaWQ7IC8vIFdlYWsgcmVmZXJlbmNlLiAgV2lsbCBi
ZSBudWxsZWQgb3V0IHdoZW4gb3VyIHRyZWUgZ29lcyBhd2F5LgotCi0gICAgVmVjdG9yPFJlZlB0
cjxEYXRhR3JpZENvbHVtbj4gPiBtX2NvbHVtbnM7Ci0gICAgUmVmUHRyPERhdGFHcmlkQ29sdW1u
PiBtX3ByaW1hcnlDb2x1bW47Ci0gICAgUmVmUHRyPERhdGFHcmlkQ29sdW1uPiBtX3NvcnRDb2x1
bW47Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgotCi0jZW5kaWYgLy8g
RGF0YUdyaWRDb2x1bW5MaXN0X2gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvRGF0YUdyaWRD
b2x1bW5MaXN0LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0RhdGFHcmlk
Q29sdW1uTGlzdC5pZGwJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9E
YXRhR3JpZENvbHVtbkxpc3QuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQ1ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
YGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBP
UgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKLSAqLwotCi1t
b2R1bGUgaHRtbCB7Ci0KLSAgICBpbnRlcmZhY2UgWwotICAgICAgICBIYXNJbmRleEdldHRlciwK
LSAgICAgICAgSGFzTmFtZUdldHRlciwKLSAgICAgICAgQ29uZGl0aW9uYWw9REFUQUdSSUQKLSAg
ICBdIERhdGFHcmlkQ29sdW1uTGlzdCB7Ci0gICAgICAgIERhdGFHcmlkQ29sdW1uIGl0ZW0oaW4g
W0lzSW5kZXhdIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwotICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7Ci0KLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERh
dGFHcmlkQ29sdW1uIHNvcnRDb2x1bW47Ci0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBEYXRh
R3JpZENvbHVtbiBwcmltYXJ5Q29sdW1uOwotCi0gICAgICAgIERhdGFHcmlkQ29sdW1uIGFkZChp
biBET01TdHJpbmcgaWQsIGluIERPTVN0cmluZyBsYWJlbCwgaW4gRE9NU3RyaW5nIHR5cGUsIGlu
IGJvb2xlYW4gcHJpbWFyeSwgaW4gdW5zaWduZWQgc2hvcnQgc29ydGFibGUpOwotICAgICAgICB2
b2lkIHJlbW92ZShpbiBEYXRhR3JpZENvbHVtbiBjb2x1bW4pOwotICAgICAgICB2b2lkIG1vdmUo
aW4gRGF0YUdyaWRDb2x1bW4gY29sdW1uLCBpbiB1bnNpZ25lZCBsb25nIGluZGV4KTsKLSAgICAg
ICAgdm9pZCBjbGVhcigpOwotICAgIH07Ci0KLX0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwv
RGF0YUdyaWREYXRhU291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9E
YXRhR3JpZERhdGFTb3VyY2UuaAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9o
dG1sL0RhdGFHcmlkRGF0YVNvdXJjZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQ5ICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0g
KiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCi0gKi8KLQotI2lmbmRlZiBE
YXRhR3JpZERhdGFTb3VyY2VfaAotI2RlZmluZSBEYXRhR3JpZERhdGFTb3VyY2VfaAotCi0jaWYg
RU5BQkxFKERBVEFHUklEKQotCi0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1jbGFzcyBIVE1MRGF0YUdyaWRFbGVtZW50OwotCi1jbGFzcyBEYXRh
R3JpZERhdGFTb3VyY2UgOiBwdWJsaWMgUmVmQ291bnRlZDxEYXRhR3JpZERhdGFTb3VyY2U+IHsK
LXB1YmxpYzoKLSAgICB2aXJ0dWFsIH5EYXRhR3JpZERhdGFTb3VyY2UoKSB7IH0KLQotICAgIHZp
cnR1YWwgYm9vbCBpc0RPTURhdGFHcmlkRGF0YVNvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNl
OyB9Ci0gICAgdmlydHVhbCBib29sIGlzSlNEYXRhR3JpZERhdGFTb3VyY2UoKSBjb25zdCB7IHJl
dHVybiBmYWxzZTsgfQotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKLQot
I2VuZGlmIC8vIERhdGFHcmlkRGF0YVNvdXJjZV9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcAkocmV2aXNpb24gODQ5NTIpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEYXRhR3JpZENlbGxFbGVtZW50LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMSwxMDAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSwgMjAxMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4gCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYg
RU5BQkxFKERBVEFHUklEKQotCi0jaW5jbHVkZSAiSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaCIK
LQotI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXVzaW5n
IG5hbWVzcGFjZSBIVE1MTmFtZXM7Ci0KLWlubGluZSBIVE1MRGF0YUdyaWRDZWxsRWxlbWVudDo6
SFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgRG9jdW1l
bnQqIGRvY3VtZW50KQotICAgIDogSFRNTEVsZW1lbnQobmFtZSwgZG9jdW1lbnQpCi17Ci19Ci0K
LVBhc3NSZWZQdHI8SFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQ+IEhUTUxEYXRhR3JpZENlbGxFbGVt
ZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50
KQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQobmFt
ZSwgZG9jdW1lbnQpKTsKLX0KLQotU3RyaW5nIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50OjpsYWJl
bCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGdldEF0dHJpYnV0ZShsYWJlbEF0dHIpOwotfQotCi12
b2lkIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50OjpzZXRMYWJlbChjb25zdCBTdHJpbmcmIGxhYmVs
KQotewotICAgIHNldEF0dHJpYnV0ZShsYWJlbEF0dHIsIGxhYmVsKTsKLX0KLQotYm9vbCBIVE1M
RGF0YUdyaWRDZWxsRWxlbWVudDo6Zm9jdXNlZCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGhhc0F0
dHJpYnV0ZShmb2N1c2VkQXR0cik7Ci19Ci0KLXZvaWQgSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQ6
OnNldEZvY3VzZWQoYm9vbCBmb2N1c2VkKQotewotICAgIHNldEF0dHJpYnV0ZShmb2N1c2VkQXR0
ciwgZm9jdXNlZCA/ICIiIDogMCk7Ci19Ci0KLWJvb2wgSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQ6
OmNoZWNrZWQoKSBjb25zdAotewotICAgIHJldHVybiBoYXNBdHRyaWJ1dGUoY2hlY2tlZEF0dHIp
OwotfQotCi12b2lkIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50OjpzZXRDaGVja2VkKGJvb2wgY2hl
Y2tlZCkKLXsKLSAgICBzZXRBdHRyaWJ1dGUoY2hlY2tlZEF0dHIsIGNoZWNrZWQgPyAiIiA6IDAp
OwotfQotCi1ib29sIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50OjppbmRldGVybWluYXRlKCkgY29u
c3QKLXsKLSAgICByZXR1cm4gaGFzQXR0cmlidXRlKGluZGV0ZXJtaW5hdGVBdHRyKTsKLX0KLQot
dm9pZCBIVE1MRGF0YUdyaWRDZWxsRWxlbWVudDo6c2V0SW5kZXRlcm1pbmF0ZShib29sIGluZGV0
ZXJtaW5hdGUpCi17Ci0gICAgc2V0QXR0cmlidXRlKGluZGV0ZXJtaW5hdGVBdHRyLCBpbmRldGVy
bWluYXRlID8gIiIgOiAwKTsKLX0KLQotZmxvYXQgSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQ6OnBy
b2dyZXNzKCkgY29uc3QKLXsKLSAgICByZXR1cm4gZ2V0QXR0cmlidXRlKHByb2dyZXNzQXR0ciku
dG9JbnQoKTsKLX0KLQotdm9pZCBIVE1MRGF0YUdyaWRDZWxsRWxlbWVudDo6c2V0UHJvZ3Jlc3Mo
ZmxvYXQgcHJvZ3Jlc3MpCi17Ci0gICAgc2V0QXR0cmlidXRlKHByb2dyZXNzQXR0ciwgU3RyaW5n
OjpudW1iZXIocHJvZ3Jlc3MpKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEYXRhR3JpZENlbGxFbGVtZW50
LmgJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRD
ZWxsRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDYyICswLDAgQEAKLS8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMDksIDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCi0g
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAotICovCi0KLSNpZm5k
ZWYgSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnRfaAotI2RlZmluZSBIVE1MRGF0YUdyaWRDZWxsRWxl
bWVudF9oCi0KLSNpZiBFTkFCTEUoREFUQUdSSUQpCi0KLSNpbmNsdWRlICJIVE1MRWxlbWVudC5o
IgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50
IDogcHVibGljIEhUTUxFbGVtZW50IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxI
VE1MRGF0YUdyaWRDZWxsRWxlbWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1
bWVudCopOwotCi0gICAgU3RyaW5nIGxhYmVsKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRMYWJlbChj
b25zdCBTdHJpbmcmKTsKLSAgICAKLSAgICBib29sIGZvY3VzZWQoKSBjb25zdDsKLSAgICB2b2lk
IHNldEZvY3VzZWQoYm9vbCk7Ci0KLSAgICBib29sIGNoZWNrZWQoKSBjb25zdDsKLSAgICB2b2lk
IHNldENoZWNrZWQoYm9vbCk7Ci0gICAgCi0gICAgYm9vbCBpbmRldGVybWluYXRlKCkgY29uc3Q7
Ci0gICAgdm9pZCBzZXRJbmRldGVybWluYXRlKGJvb2wpOwotICAgIAotICAgIGZsb2F0IHByb2dy
ZXNzKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRQcm9ncmVzcyhmbG9hdCk7Ci0KLXByaXZhdGU6Ci0g
ICAgSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50
Kik7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgotCi0jZW5kaWYgLy8g
SFRNTERhdGFHcmlkQ2VsbEVsZW1lbnRfaApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RGF0YUdyaWRDZWxsRWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRGF0YUdyaWRDZWxsRWxlbWVudC5pZGwJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRDZWxsRWxlbWVudC5pZGwJKHdvcmtpbmcgY29weSkK
QEAgLTEsNDEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMuICBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBh
cmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIENPTVBVVEVSLCBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuIAotICovCi0KLW1vZHVsZSBodG1sIHsKLQotICAgIGludGVyZmFjZSBbCi0gICAg
ICAgIENvbmRpdGlvbmFsPURBVEFHUklECi0gICAgXSBIVE1MRGF0YUdyaWRDZWxsRWxlbWVudCA6
IEhUTUxFbGVtZW50IHsKLSAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBsYWJlbDsgLy8gVGhl
IHRleHQgdG8gZGlzcGxheSBpbiB0aGUgY29sdW1uLCBhc3N1bWluZyB0aGUgdHlwZSBzdXBwb3J0
cyB0ZXh0LgotCi0gICAgICAgIGF0dHJpYnV0ZSBib29sZWFuIGZvY3VzZWQ7IC8vIFdoZXRoZXIg
b3Igbm90IHRoaXMgY2VsbCBpcyBjdXJyZW50bHkgZm9jdXNlZC4KLQotICAgICAgICBhdHRyaWJ1
dGUgYm9vbGVhbiBjaGVja2VkOyAvLyBUaGUgY2hlY2tlZCBzdGF0ZSBvZiB0aGUgY29sdW1uLCBh
c3N1bWluZyB0aGUgdHlwZSBvZiB0aGUgY29sdW1uIGlzIGNoZWNrYm94LgotICAgICAgICBhdHRy
aWJ1dGUgYm9vbGVhbiBpbmRldGVybWluYXRlOyAvLyBJZiB0aGUgY2hlY2tlZCBzdGF0ZSBpcyBp
bmRldGVybWluYXRlLgotCi0gICAgICAgIGF0dHJpYnV0ZSBmbG9hdCBwcm9ncmVzczsgLy8gRm9y
IHByb2dyZXNzIGNlbGxzLCBhIHZhbHVlIGZyb20gMC0xLjAgaW5kaWNhdGluZyB0aGUgc3RhdGUg
b2YgcHJvZ3Jlc3MuCi0gICAgfTsKLQotfQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RGF0YUdyaWRDb2xFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTERhdGFHcmlkQ29sRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEsMTc2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDksIDIwMTAgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShE
QVRBR1JJRCkKLQotI2luY2x1ZGUgIkF0dHJpYnV0ZS5oIgotI2luY2x1ZGUgIkRhdGFHcmlkQ29s
dW1uLmgiCi0jaW5jbHVkZSAiSFRNTERhdGFHcmlkQ29sRWxlbWVudC5oIgotI2luY2x1ZGUgIkhU
TUxEYXRhR3JpZEVsZW1lbnQuaCIKLSNpbmNsdWRlICJIVE1MTmFtZXMuaCIKLSNpbmNsdWRlICJU
ZXh0LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1l
czsKLQotaW5saW5lIEhUTUxEYXRhR3JpZENvbEVsZW1lbnQ6OkhUTUxEYXRhR3JpZENvbEVsZW1l
bnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQotICAgIDog
SFRNTEVsZW1lbnQobmFtZSwgZG9jdW1lbnQpCi0gICAgLCBtX2RhdGFHcmlkKDApCi17Ci19Ci0K
LVBhc3NSZWZQdHI8SFRNTERhdGFHcmlkQ29sRWxlbWVudD4gSFRNTERhdGFHcmlkQ29sRWxlbWVu
dDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIERvY3VtZW50KiBkb2N1bWVudCkK
LXsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IEhUTUxEYXRhR3JpZENvbEVsZW1lbnQobmFtZSwg
ZG9jdW1lbnQpKTsKLX0KLQotSFRNTERhdGFHcmlkRWxlbWVudCogSFRNTERhdGFHcmlkQ29sRWxl
bWVudDo6ZmluZERhdGFHcmlkQW5jZXN0b3IoKSBjb25zdAotewotICAgIGlmIChwYXJlbnQoKSAm
JiBwYXJlbnQoKS0+aGFzVGFnTmFtZShkYXRhZ3JpZFRhZykpCi0gICAgICAgIHJldHVybiBzdGF0
aWNfY2FzdDxIVE1MRGF0YUdyaWRFbGVtZW50Kj4ocGFyZW50KCkpOwotICAgIHJldHVybiAwOwot
fQotCi12b2lkIEhUTUxEYXRhR3JpZENvbEVsZW1lbnQ6OmVuc3VyZUNvbHVtbigpCi17Ci0gICAg
aWYgKG1fY29sdW1uKQotICAgICAgICByZXR1cm47Ci0gICAgbV9jb2x1bW4gPSBEYXRhR3JpZENv
bHVtbjo6Y3JlYXRlKGdldElkQXR0cmlidXRlKCksIGxhYmVsKCksIHR5cGUoKSwgcHJpbWFyeSgp
LCBzb3J0YWJsZSgpKTsKLX0KLQotdm9pZCBIVE1MRGF0YUdyaWRDb2xFbGVtZW50OjppbnNlcnRl
ZEludG9UcmVlKGJvb2wgZGVlcCkKLXsKLSAgICBIVE1MRWxlbWVudDo6aW5zZXJ0ZWRJbnRvVHJl
ZShkZWVwKTsKLSAgICBpZiAoZGF0YUdyaWQoKSkgLy8gV2UncmUgY29ubmVjdGVkIHRvIGEgZGF0
YWdyaWQgYWxyZWFkeS4KLSAgICAgICAgcmV0dXJuOwotICAgIG1fZGF0YUdyaWQgPSBmaW5kRGF0
YUdyaWRBbmNlc3RvcigpOwotICAgIGlmIChkYXRhR3JpZCgpICYmIGRhdGFHcmlkKCktPmRhdGFT
b3VyY2UoKS0+aXNET01EYXRhR3JpZERhdGFTb3VyY2UoKSkgewotICAgICAgICBlbnN1cmVDb2x1
bW4oKTsKLSAgICAgICAgbV9kYXRhR3JpZC0+Y29sdW1ucygpLT5hZGQoY29sdW1uKCkpOyAvLyBG
SVhNRTogRGVhbCB3aXRoIG9yZGVyaW5nIGlzc3VlcyAoY29tcGxpY2F0ZWQsIHNpbmNlIGNvbHVt
bnMgY2FuIGJlIG1hZGUgb3V0c2lkZSB0aGUgRE9NKS4KLSAgICB9Ci19Ci0KLXZvaWQgSFRNTERh
dGFHcmlkQ29sRWxlbWVudDo6cmVtb3ZlZEZyb21UcmVlKGJvb2wgZGVlcCkKLXsKLSAgICBIVE1M
RWxlbWVudDo6cmVtb3ZlZEZyb21UcmVlKGRlZXApOwotICAgIGlmIChkYXRhR3JpZCgpICYmIGRh
dGFHcmlkKCktPmRhdGFTb3VyY2UoKS0+aXNET01EYXRhR3JpZERhdGFTb3VyY2UoKSkgewotICAg
ICAgICBIVE1MRGF0YUdyaWRFbGVtZW50KiBncmlkID0gZmluZERhdGFHcmlkQW5jZXN0b3IoKTsK
LSAgICAgICAgaWYgKCFncmlkICYmIGNvbHVtbigpKSB7Ci0gICAgICAgICAgICBkYXRhR3JpZCgp
LT5jb2x1bW5zKCktPnJlbW92ZShjb2x1bW4oKSk7Ci0gICAgICAgICAgICBtX2RhdGFHcmlkID0g
MDsKLSAgICAgICAgfQotICAgIH0KLX0KLSAgICAKLVN0cmluZyBIVE1MRGF0YUdyaWRDb2xFbGVt
ZW50OjpsYWJlbCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGdldEF0dHJpYnV0ZShsYWJlbEF0dHIp
OwotfQotCi12b2lkIEhUTUxEYXRhR3JpZENvbEVsZW1lbnQ6OnNldExhYmVsKGNvbnN0IFN0cmlu
ZyYgbGFiZWwpCi17Ci0gICAgc2V0QXR0cmlidXRlKGxhYmVsQXR0ciwgbGFiZWwpOwotfQotCi1T
dHJpbmcgSFRNTERhdGFHcmlkQ29sRWxlbWVudDo6dHlwZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IGdldEF0dHJpYnV0ZSh0eXBlQXR0cik7Ci19Ci0KLXZvaWQgSFRNTERhdGFHcmlkQ29sRWxlbWVu
dDo6c2V0VHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCi17Ci0gICAgc2V0QXR0cmlidXRlKHR5cGVB
dHRyLCB0eXBlKTsKLX0KLQotdW5zaWduZWQgc2hvcnQgSFRNTERhdGFHcmlkQ29sRWxlbWVudDo6
c29ydGFibGUoKSBjb25zdAotewotICAgIGlmICghaGFzQXR0cmlidXRlKHNvcnRhYmxlQXR0cikp
Ci0gICAgICAgIHJldHVybiAyOwotICAgIHJldHVybiBnZXRBdHRyaWJ1dGUoc29ydGFibGVBdHRy
KS50b0ludCgwKTsKLX0KLQotdm9pZCBIVE1MRGF0YUdyaWRDb2xFbGVtZW50OjpzZXRTb3J0YWJs
ZSh1bnNpZ25lZCBzaG9ydCBzb3J0YWJsZSkKLXsKLSAgICBzZXRBdHRyaWJ1dGUoc29ydGFibGVB
dHRyLCBTdHJpbmc6Om51bWJlcihzb3J0YWJsZSkpOwotfQotCi11bnNpZ25lZCBzaG9ydCBIVE1M
RGF0YUdyaWRDb2xFbGVtZW50Ojpzb3J0RGlyZWN0aW9uKCkgY29uc3QKLXsKLSAgICBTdHJpbmcg
c29ydERpcmVjdGlvbiA9IGdldEF0dHJpYnV0ZShzb3J0ZGlyZWN0aW9uQXR0cik7Ci0gICAgaWYg
KGVxdWFsSWdub3JpbmdDYXNlKHNvcnREaXJlY3Rpb24sICJhc2NlbmRpbmciKSkKLSAgICAgICAg
cmV0dXJuIDE7Ci0gICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHNvcnREaXJlY3Rpb24sICJkZXNj
ZW5kaW5nIikpCi0gICAgICAgIHJldHVybiAyOwotICAgIHJldHVybiAwOwotfQotCi12b2lkIEhU
TUxEYXRhR3JpZENvbEVsZW1lbnQ6OnNldFNvcnREaXJlY3Rpb24odW5zaWduZWQgc2hvcnQgc29y
dERpcmVjdGlvbikKLXsKLSAgICAvLyBGSVhNRTogQ2hlY2sgc29ydGFibGUgcnVsZXMuCi0gICAg
aWYgKHNvcnREaXJlY3Rpb24gPT0gMCkKLSAgICAgICAgc2V0QXR0cmlidXRlKHNvcnRkaXJlY3Rp
b25BdHRyLCAibmF0dXJhbCIpOwotICAgIGVsc2UgaWYgKHNvcnREaXJlY3Rpb24gPT0gMSkKLSAg
ICAgICAgc2V0QXR0cmlidXRlKHNvcnRkaXJlY3Rpb25BdHRyLCAiYXNjZW5kaW5nIik7Ci0gICAg
ZWxzZSBpZiAoc29ydERpcmVjdGlvbiA9PSAyKQotICAgICAgICBzZXRBdHRyaWJ1dGUoc29ydGRp
cmVjdGlvbkF0dHIsICJkZXNjZW5kaW5nIik7Ci19Ci0KLWJvb2wgSFRNTERhdGFHcmlkQ29sRWxl
bWVudDo6cHJpbWFyeSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGhhc0F0dHJpYnV0ZShwcmltYXJ5
QXR0cik7Ci19Ci0KLXZvaWQgSFRNTERhdGFHcmlkQ29sRWxlbWVudDo6c2V0UHJpbWFyeShib29s
IHByaW1hcnkpCi17Ci0gICAgc2V0QXR0cmlidXRlKHByaW1hcnlBdHRyLCBwcmltYXJ5ID8gIiIg
OiAwKTsKLX0KLQotdm9pZCBIVE1MRGF0YUdyaWRDb2xFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJp
YnV0ZShBdHRyaWJ1dGUqIGF0dHIpIAotewotICAgIEhUTUxFbGVtZW50OjpwYXJzZU1hcHBlZEF0
dHJpYnV0ZShhdHRyKTsKLSAgICAgCi0gICAgaWYgKCFjb2x1bW4oKSkKLSAgICAgICAgcmV0dXJu
OwotCi0gICAgaWYgKGF0dHItPm5hbWUoKSA9PSBsYWJlbEF0dHIpCi0gICAgICAgIGNvbHVtbigp
LT5zZXRMYWJlbChsYWJlbCgpKTsKLSAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gdHlwZUF0
dHIpCi0gICAgICAgIGNvbHVtbigpLT5zZXRUeXBlKHR5cGUoKSk7Ci0gICAgZWxzZSBpZiAoYXR0
ci0+bmFtZSgpID09IHByaW1hcnlBdHRyKQotICAgICAgICBjb2x1bW4oKS0+c2V0UHJpbWFyeShw
cmltYXJ5KCkpOwotICAgIGVsc2UgaWYgKGF0dHItPm5hbWUoKSA9PSBzb3J0YWJsZUF0dHIpCi0g
ICAgICAgIGNvbHVtbigpLT5zZXRTb3J0YWJsZShzb3J0YWJsZSgpKTsKLSAgICBlbHNlIGlmIChh
dHRyLT5uYW1lKCkgPT0gc29ydGRpcmVjdGlvbkF0dHIpCi0gICAgICAgIGNvbHVtbigpLT5zZXRT
b3J0RGlyZWN0aW9uKHNvcnREaXJlY3Rpb24oKSk7Ci0gICAgZWxzZSBpZiAoaXNJZEF0dHJpYnV0
ZU5hbWUoYXR0ci0+bmFtZSgpKSkKLSAgICAgICAgY29sdW1uKCktPnNldElkKGdldElkQXR0cmli
dXRlKCkpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDogU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50LmgJKHJldmlzaW9uIDg0
OTUyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTEsNzkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSwg
MjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAot
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCi0gKi8KLQotI2lmbmRlZiBIVE1MRGF0YUdyaWRD
b2xFbGVtZW50X2gKLSNkZWZpbmUgSFRNTERhdGFHcmlkQ29sRWxlbWVudF9oCi0KLSNpZiBFTkFC
TEUoREFUQUdSSUQpCi0KLSNpbmNsdWRlICJEYXRhR3JpZENvbHVtbi5oIgotI2luY2x1ZGUgIkhU
TUxFbGVtZW50LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgSFRNTERhdGFHcmlk
RWxlbWVudDsKLQotY2xhc3MgSFRNTERhdGFHcmlkQ29sRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxl
bWVudCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8SFRNTERhdGFHcmlkQ29sRWxl
bWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCopOwotCi0gICAgU3Ry
aW5nIGxhYmVsKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRMYWJlbChjb25zdCBTdHJpbmcmKTsKLSAg
ICAKLSAgICBTdHJpbmcgdHlwZSgpIGNvbnN0OwotICAgIHZvaWQgc2V0VHlwZShjb25zdCBTdHJp
bmcmKTsKLSAgICAKLSAgICB1bnNpZ25lZCBzaG9ydCBzb3J0YWJsZSgpIGNvbnN0OwotICAgIHZv
aWQgc2V0U29ydGFibGUodW5zaWduZWQgc2hvcnQpOwotICAgIAotICAgIHVuc2lnbmVkIHNob3J0
IHNvcnREaXJlY3Rpb24oKSBjb25zdDsKLSAgICB2b2lkIHNldFNvcnREaXJlY3Rpb24odW5zaWdu
ZWQgc2hvcnQpOwotICAgIAotICAgIGJvb2wgcHJpbWFyeSgpIGNvbnN0OwotICAgIHZvaWQgc2V0
UHJpbWFyeShib29sKTsKLSAgICAKLSAgICBEYXRhR3JpZENvbHVtbiogY29sdW1uKCkgY29uc3Qg
eyByZXR1cm4gbV9jb2x1bW4uZ2V0KCk7IH0KLSAgICB2b2lkIHNldENvbHVtbihQYXNzUmVmUHRy
PERhdGFHcmlkQ29sdW1uPiBjb2wpIHsgbV9jb2x1bW4gPSBjb2w7IH0KLQotcHJpdmF0ZToKLSAg
ICBIVE1MRGF0YUdyaWRDb2xFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCop
OwotCi0gICAgdmlydHVhbCB2b2lkIGluc2VydGVkSW50b1RyZWUoYm9vbCAvKmRlZXAqLyk7Ci0g
ICAgdmlydHVhbCB2b2lkIHJlbW92ZWRGcm9tVHJlZShib29sIC8qZGVlcCovKTsKLSAgICB2aXJ0
dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoQXR0cmlidXRlKik7Ci0KLSAgICBIVE1MRGF0
YUdyaWRFbGVtZW50KiBkYXRhR3JpZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YUdyaWQ7IH0KLSAg
ICBIVE1MRGF0YUdyaWRFbGVtZW50KiBmaW5kRGF0YUdyaWRBbmNlc3RvcigpIGNvbnN0OwotICAg
IHZvaWQgZW5zdXJlQ29sdW1uKCk7Ci0KLSAgICBSZWZQdHI8RGF0YUdyaWRDb2x1bW4+IG1fY29s
dW1uOwotICAgIEhUTUxEYXRhR3JpZEVsZW1lbnQqIG1fZGF0YUdyaWQ7IC8vIE5vdCByZWZjb3Vu
dGVkLiBXZSB3aWxsIG51bGwgb3V0IG91ciByZWZlcmVuY2UgaWYgd2UgZ2V0IHJlbW92ZWQgZnJv
bSB0aGUgZ3JpZC4KLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmCi0KLSNl
bmRpZiAvLyBIVE1MRGF0YUdyaWRDb2xFbGVtZW50X2gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTERhdGFHcmlkQ29sRWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRGF0YUdyaWRDb2xFbGVtZW50LmlkbAkocmV2aXNpb24gODQ5NTIpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEYXRhR3JpZENvbEVsZW1lbnQuaWRsCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDQwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBwbGUgSW5j
LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwot
ICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0g
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0g
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLiAKLSAqLwotCi1tb2R1bGUgaHRtbCB7Ci0KLSAgICBpbnRlcmZhY2UgWwot
ICAgICAgICBDb25kaXRpb25hbD1EQVRBR1JJRAotICAgIF0gSFRNTERhdGFHcmlkQ29sRWxlbWVu
dCA6IEhUTUxFbGVtZW50IHsKLSAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBsYWJlbDsgLy8g
VGhlIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgY29sdW1uLgotICAgICAgICBhdHRyaWJ1dGUgRE9N
U3RyaW5nIHR5cGU7IC8vIFRoZSB0eXBlIG9mIGRhdGEgZGlzcGxheWVkIGluIHRoaXMgY29sdW1u
LgotCi0gICAgICAgIGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBzb3J0YWJsZTsgLy8gV2hldGhl
ciBvciBub3QgdGhlIGNvbHVtbiBjYW4gYmUgc29ydGVkLiAgVmFsdWVzIGFyZSBub25lLCBhc2Nl
bmRpbmcvZGVzY2VuZGluZywgYW5kIGFzY2VuZGluZy9kZXNjZW5kaW5nL25hCi0gICAgICAgIGF0
dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBzb3J0RGlyZWN0aW9uOyAvLyBUaGUgc29ydCBkaXJlY3Rp
b24gZm9yIHRoZSBjb2x1bW4uICBWYWxpZCB2YWx1ZXMgYXJlIGFzY2VuZGluZywgZGVzY2VuZGlu
ZyBhbmQgbmF0dXJhbCAobm8gc29ydCBhcHBsaWVkKS4KLSAgICAKLSAgICAgICAgYXR0cmlidXRl
IGJvb2xlYW4gcHJpbWFyeTsgLy8gV2hldGhlciBvciBub3QgdGhpcyBpcyB0aGUgcHJpbWFyeSBj
b2x1bW4gb2YgdGhlIHRyZWUgKHRoaXMgd2lsbCBiZSB3aGVyZSB0aGUgZGlzY2xvc3VyZSB0cmlh
bmdsZSBhbmQgY29ubmVjdGluZyB0cmVlIGxpbmVzIHdpbGwgZGlzcGxheSkKLSAgICB9OwotCi19
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEYXRhR3JpZEVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERhdGFHcmlkRWxlbWVudC5jcHAJKHJl
dmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRFbGVtZW50
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSwxMTYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAwOSwgMjAxMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCi0gKi8KLQotI2luY2x1ZGUgImNv
bmZpZy5oIgotCi0jaWYgRU5BQkxFKERBVEFHUklEKQotCi0jaW5jbHVkZSAiSFRNTERhdGFHcmlk
RWxlbWVudC5oIgotCi0jaW5jbHVkZSAiRE9NRGF0YUdyaWREYXRhU291cmNlLmgiCi0jaW5jbHVk
ZSAiSFRNTE5hbWVzLmgiCi0jaW5jbHVkZSAiUmVuZGVyRGF0YUdyaWQuaCIKLSNpbmNsdWRlICJU
ZXh0LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1l
czsKLQotaW5saW5lIEhUTUxEYXRhR3JpZEVsZW1lbnQ6OkhUTUxEYXRhR3JpZEVsZW1lbnQoY29u
c3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQotICAgIDogSFRN
TEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCi0gICAgLCBtX2NvbHVtbnMoRGF0YUdyaWRDb2x1
bW5MaXN0OjpjcmVhdGUodGhpcykpCi17Ci0gICAgc2V0RGF0YVNvdXJjZShET01EYXRhR3JpZERh
dGFTb3VyY2U6OmNyZWF0ZSgpKTsKLX0KLQotUGFzc1JlZlB0cjxIVE1MRGF0YUdyaWRFbGVtZW50
PiBIVE1MRGF0YUdyaWRFbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFt
ZSwgRG9jdW1lbnQqIGRvY3VtZW50KQotewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgSFRNTERh
dGFHcmlkRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkpOwotfQotCi1IVE1MRGF0YUdyaWRFbGVt
ZW50Ojp+SFRNTERhdGFHcmlkRWxlbWVudCgpCi17Ci0gICAgbV9jb2x1bW5zLT5jbGVhckRhdGFH
cmlkKCk7Ci19Ci0KLVJlbmRlck9iamVjdCogSFRNTERhdGFHcmlkRWxlbWVudDo6Y3JlYXRlUmVu
ZGVyZXIoUmVuZGVyQXJlbmEqIGFyZW5hLCBSZW5kZXJTdHlsZSopCi17Ci0gICAgcmV0dXJuIG5l
dyAoYXJlbmEpIFJlbmRlckRhdGFHcmlkKHRoaXMpOwotfQotCi1ib29sIEhUTUxEYXRhR3JpZEVs
ZW1lbnQ6OmF1dG9mb2N1cygpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGhhc0F0dHJpYnV0ZShhdXRv
Zm9jdXNBdHRyKTsKLX0KLQotdm9pZCBIVE1MRGF0YUdyaWRFbGVtZW50OjpzZXRBdXRvZm9jdXMo
Ym9vbCBhdXRvZm9jdXMpCi17Ci0gICAgc2V0QXR0cmlidXRlKGF1dG9mb2N1c0F0dHIsIGF1dG9m
b2N1cyA/ICIiIDogMCk7Ci19Ci0KLWJvb2wgSFRNTERhdGFHcmlkRWxlbWVudDo6ZGlzYWJsZWQo
KSBjb25zdAotewotICAgIHJldHVybiBoYXNBdHRyaWJ1dGUoZGlzYWJsZWRBdHRyKTsKLX0KLQot
dm9pZCBIVE1MRGF0YUdyaWRFbGVtZW50OjpzZXREaXNhYmxlZChib29sIGRpc2FibGVkKQotewot
ICAgIHNldEF0dHJpYnV0ZShkaXNhYmxlZEF0dHIsIGRpc2FibGVkID8gIiIgOiAwKTsKLX0KLQot
Ym9vbCBIVE1MRGF0YUdyaWRFbGVtZW50OjptdWx0aXBsZSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IGhhc0F0dHJpYnV0ZShtdWx0aXBsZUF0dHIpOwotfQotCi12b2lkIEhUTUxEYXRhR3JpZEVsZW1l
bnQ6OnNldE11bHRpcGxlKGJvb2wgbXVsdGlwbGUpCi17Ci0gICAgc2V0QXR0cmlidXRlKG11bHRp
cGxlQXR0ciwgbXVsdGlwbGUgPyAiIiA6IDApOwotfQotCi12b2lkIEhUTUxEYXRhR3JpZEVsZW1l
bnQ6OnNldERhdGFTb3VyY2UoUGFzc1JlZlB0cjxEYXRhR3JpZERhdGFTb3VyY2U+IGRzKQotewot
ICAgIGlmIChtX2RhdGFTb3VyY2UgPT0gZHMpCi0gICAgICAgIHJldHVybjsKLSAgICAKLSAgICBS
ZWZQdHI8RGF0YUdyaWREYXRhU291cmNlPiBkYXRhU291cmNlID0gZHM7Ci0gICAgaWYgKCFkYXRh
U291cmNlKQotICAgICAgICBkYXRhU291cmNlID0gRE9NRGF0YUdyaWREYXRhU291cmNlOjpjcmVh
dGUoKTsKLSAgICBtX2RhdGFTb3VyY2UgPSBkYXRhU291cmNlOwotICAgIAotICAgIC8vIEFsd2F5
cyBjbGVhciBvdXIgY29sdW1ucyB3aGVuIGEgZGF0YSBzb3VyY2UgY2hhbmdlcy4KLSAgICAvLyBU
aGUgcmVnaXN0ZXIgY2FsbGJhY2sgd2lsbCByZWJ1aWxkIHRoZSBjb2x1bW5zLgotICAgIG1fY29s
dW1ucy0+Y2xlYXIoKTsKLX0KLQotRGF0YUdyaWREYXRhU291cmNlKiBIVE1MRGF0YUdyaWRFbGVt
ZW50OjpkYXRhU291cmNlKCkgY29uc3QKLXsKLSAgICBBU1NFUlQobV9kYXRhU291cmNlKTsKLSAg
ICByZXR1cm4gbV9kYXRhU291cmNlLmdldCgpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoREFUQUdSSUQpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxEYXRhR3JpZEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxEYXRhR3JpZEVsZW1lbnQuaAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxEYXRhR3JpZEVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMSw2OSArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01Q
VVRFUiwgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKLSAqLwotCi0jaWZuZGVmIEhUTUxEYXRhR3JpZEVsZW1lbnRfaAotI2RlZmluZSBIVE1MRGF0
YUdyaWRFbGVtZW50X2gKLQotI2lmIEVOQUJMRShEQVRBR1JJRCkKLQotI2luY2x1ZGUgIkRhdGFH
cmlkQ29sdW1uTGlzdC5oIgotI2luY2x1ZGUgIkRhdGFHcmlkRGF0YVNvdXJjZS5oIgotI2luY2x1
ZGUgIkhUTUxFbGVtZW50LmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgSFRNTERh
dGFHcmlkRWxlbWVudCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7Ci1wdWJsaWM6Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8SFRNTERhdGFHcmlkRWxlbWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5h
bWUmLCBEb2N1bWVudCopOwotICAgIHZpcnR1YWwgfkhUTUxEYXRhR3JpZEVsZW1lbnQoKTsKLQot
ICAgIGJvb2wgYXV0b2ZvY3VzKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRBdXRvZm9jdXMoYm9vbCk7
Ci0KLSAgICBib29sIGRpc2FibGVkKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXREaXNhYmxlZChib29s
KTsKLQotICAgIGJvb2wgbXVsdGlwbGUoKSBjb25zdDsKLSAgICB2b2lkIHNldE11bHRpcGxlKGJv
b2wpOwotCi0gICAgdm9pZCBzZXREYXRhU291cmNlKFBhc3NSZWZQdHI8RGF0YUdyaWREYXRhU291
cmNlPik7Ci0gICAgRGF0YUdyaWREYXRhU291cmNlKiBkYXRhU291cmNlKCkgY29uc3Q7Ci0KLSAg
ICBEYXRhR3JpZENvbHVtbkxpc3QqIGNvbHVtbnMoKSBjb25zdCB7IHJldHVybiBtX2NvbHVtbnMu
Z2V0KCk7IH0KLQotcHJpdmF0ZToKLSAgICBIVE1MRGF0YUdyaWRFbGVtZW50KGNvbnN0IFF1YWxp
ZmllZE5hbWUmLCBEb2N1bWVudCopOwotCi0gICAgdmlydHVhbCBSZW5kZXJPYmplY3QqIGNyZWF0
ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiwgUmVuZGVyU3R5bGUqKTsKLQotICAgIFJlZlB0cjxEYXRh
R3JpZERhdGFTb3VyY2U+IG1fZGF0YVNvdXJjZTsKLSAgICBSZWZQdHI8RGF0YUdyaWRDb2x1bW5M
aXN0PiBtX2NvbHVtbnM7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgot
Ci0jZW5kaWYgLy8gSFRNTERhdGFHcmlkRWxlbWVudF9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxEYXRhR3JpZEVsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTERhdGFHcmlkRWxlbWVudC5pZGwJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRFbGVtZW50LmlkbAkod29ya2luZyBjb3B5KQpAQCAt
MSw0MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA5IEFwcGxlIEluYy4gIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
Q09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCi0gKi8KLQotbW9kdWxlIGh0bWwgewotCi0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAg
Q29uZGl0aW9uYWw9REFUQUdSSUQKLSAgICBdIEhUTUxEYXRhR3JpZEVsZW1lbnQgOiBIVE1MRWxl
bWVudCB7Ci0gICAgICAgIGF0dHJpYnV0ZSBbQ3VzdG9tXSBEYXRhR3JpZERhdGFTb3VyY2UgZGF0
YVNvdXJjZTsKLQotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRGF0YUdyaWRDb2x1bW5MaXN0
IGNvbHVtbnM7Ci0KLSAgICAgICAgYXR0cmlidXRlIGJvb2xlYW4gYXV0b2ZvY3VzOyAvLyBXaGV0
aGVyIG9yIG5vdCB0aGUgZGF0YWdyaWQgc2hvdWxkIGF1dG9mb2N1cy4KLSAgICAgICAgYXR0cmli
dXRlIGJvb2xlYW4gZGlzYWJsZWQ7IC8vIFdoZXRoZXIgb3Igbm90IHRoZSBkYXRhZ3JpZCBjYW4g
YmUgaW50ZXJhY3RlZCB3aXRoLgotICAgICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBtdWx0aXBsZTsg
Ly8gV2hldGhlciBvciBub3QgdGhlIGRhdGFncmlkIHN1cHBvcnRzIG11bHRpcGxlIHNlbGVjdGlv
bi4KLSAgICB9OwotCi19CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEYXRhR3JpZFJv
d0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERhdGFH
cmlkUm93RWxlbWVudC5jcHAJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRGF0YUdyaWRSb3dFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMSw4MCArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA5LCAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01Q
VVRFUiwgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoREFUQUdSSUQpCi0K
LSNpbmNsdWRlICJIVE1MRGF0YUdyaWRSb3dFbGVtZW50LmgiCi0KLSNpbmNsdWRlICJIVE1MTmFt
ZXMuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi11c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVz
OwotCi1pbmxpbmUgSFRNTERhdGFHcmlkUm93RWxlbWVudDo6SFRNTERhdGFHcmlkUm93RWxlbWVu
dChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBEb2N1bWVudCogZG9jdW1lbnQpCi0gICAgOiBI
VE1MRWxlbWVudChuYW1lLCBkb2N1bWVudCkKLXsKLX0KLQotUGFzc1JlZlB0cjxIVE1MRGF0YUdy
aWRSb3dFbGVtZW50PiBIVE1MRGF0YUdyaWRSb3dFbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlm
aWVkTmFtZSYgbmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQotewotICAgIHJldHVybiBhZG9wdFJl
ZihuZXcgSFRNTERhdGFHcmlkUm93RWxlbWVudChuYW1lLCBkb2N1bWVudCkpOwotfQotCi1ib29s
IEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQ6OnNlbGVjdGVkKCkgY29uc3QKLXsKLSAgICByZXR1cm4g
aGFzQXR0cmlidXRlKHNlbGVjdGVkQXR0cik7Ci19Ci0KLXZvaWQgSFRNTERhdGFHcmlkUm93RWxl
bWVudDo6c2V0U2VsZWN0ZWQoYm9vbCBzZWxlY3RlZCkKLXsKLSAgICBzZXRBdHRyaWJ1dGUoc2Vs
ZWN0ZWRBdHRyLCBzZWxlY3RlZCA/ICIiIDogMCk7Ci19Ci0KLWJvb2wgSFRNTERhdGFHcmlkUm93
RWxlbWVudDo6Zm9jdXNlZCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGhhc0F0dHJpYnV0ZShmb2N1
c2VkQXR0cik7Ci19Ci0KLXZvaWQgSFRNTERhdGFHcmlkUm93RWxlbWVudDo6c2V0Rm9jdXNlZChi
b29sIGZvY3VzZWQpCi17Ci0gICAgc2V0QXR0cmlidXRlKGZvY3VzZWRBdHRyLCBmb2N1c2VkID8g
IiIgOiAwKTsKLX0KLQotYm9vbCBIVE1MRGF0YUdyaWRSb3dFbGVtZW50OjpleHBhbmRlZCgpIGNv
bnN0Ci17Ci0gICAgcmV0dXJuIGhhc0F0dHJpYnV0ZShleHBhbmRlZEF0dHIpOwotfQotCi12b2lk
IEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQ6OnNldEV4cGFuZGVkKGJvb2wgZXhwYW5kZWQpCi17Ci0g
ICAgc2V0QXR0cmlidXRlKGV4cGFuZGVkQXR0ciwgZXhwYW5kZWQgPyAiIiA6IDApOwotfQotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRGF0YUdyaWRSb3dFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRGF0YUdyaWRSb3dFbGVtZW50LmgJKHJldmlzaW9uIDg0OTUyKQorKysgU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MRGF0YUdyaWRSb3dFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAg
LTEsNTYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSwgMjAxMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgQ09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCi0gKi8KLQotI2lmbmRlZiBIVE1MRGF0YUdyaWRSb3dFbGVtZW50X2gKLSNk
ZWZpbmUgSFRNTERhdGFHcmlkUm93RWxlbWVudF9oCi0KLSNpZiBFTkFCTEUoREFUQUdSSUQpCi0K
LSNpbmNsdWRlICJIVE1MRWxlbWVudC5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNz
IEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQgOiBwdWJsaWMgSFRNTEVsZW1lbnQgewotcHVibGljOgot
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPEhUTUxEYXRhR3JpZFJvd0VsZW1lbnQ+IGNyZWF0ZShjb25z
dCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKLQotICAgIGJvb2wgc2VsZWN0ZWQoKSBjb25z
dDsKLSAgICB2b2lkIHNldFNlbGVjdGVkKGJvb2wpOwotICAgIAotICAgIGJvb2wgZm9jdXNlZCgp
IGNvbnN0OwotICAgIHZvaWQgc2V0Rm9jdXNlZChib29sKTsKLSAgICAKLSAgICBib29sIGV4cGFu
ZGVkKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRFeHBhbmRlZChib29sKTsKLQotcHJpdmF0ZToKLSAg
ICBIVE1MRGF0YUdyaWRSb3dFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCop
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKLQotI2VuZGlmIC8vIEhU
TUxEYXRhR3JpZFJvd0VsZW1lbnRfaApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGF0
YUdyaWRSb3dFbGVtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxEYXRhR3JpZFJvd0VsZW1lbnQuaWRsCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTERhdGFHcmlkUm93RWxlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTEs
MzcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMuICBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENP
TVBVVEVSLCBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAotICovCi0KLW1vZHVsZSBodG1sIHsKLQotICAgIGludGVyZmFjZSBbCi0gICAgICAgIENv
bmRpdGlvbmFsPURBVEFHUklECi0gICAgXSBIVE1MRGF0YUdyaWRSb3dFbGVtZW50IDogSFRNTEVs
ZW1lbnQgewotICAgICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBzZWxlY3RlZDsgLy8gV2hldGhlciBv
ciBub3QgdGhlIHJvdyBpcyBjdXJyZW50bHkgc2VsZWN0ZWQuCi0gICAgICAgIGF0dHJpYnV0ZSBi
b29sZWFuIGZvY3VzZWQ7IC8vIFdoZXRoZXIgb3Igbm90IHRoZSByb3cgaXMgdGhlIGN1cnJlbnQg
b2JqZWN0IGluIHRoZSB0cmVlIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uIChvciBhcyB0aGUgcHJp
bmNpcGFsIGl0ZW0gb2YgYSBtdWx0aXBsZSBzZWxlY3Rpb24pLgotICAgICAgICAKLSAgICAgICAg
YXR0cmlidXRlIGJvb2xlYW4gZXhwYW5kZWQ7IC8vIFdoZXRoZXIgb3Igbm90IHRoZSByb3cgaXMg
b3BlbiAoaWYgaXQgaXMsIGNoaWxkIHJvd3Mgd2lsbCBiZSBzaG93bikuCi0gICAgfTsKLQotfQpJ
bmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAJKHJldmlzaW9uIDg0OTUyKQorKysg
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg1
LDEwICs4NSw2IEBAIGJvb2wgSFRNTEVsZW1lbnQ6OmllRm9yYmlkc0luc2VydEhUTUwoKSAKICAg
ICAgICAgfHwgaGFzTG9jYWxOYW1lKGJhc2Vmb250VGFnKQogICAgICAgICB8fCBoYXNMb2NhbE5h
bWUoYnJUYWcpCiAgICAgICAgIHx8IGhhc0xvY2FsTmFtZShjb2xUYWcpCi0jaWYgRU5BQkxFKERB
VEFHUklEKQotICAgICAgICB8fCBoYXNMb2NhbE5hbWUoZGNlbGxUYWcpCi0gICAgICAgIHx8IGhh
c0xvY2FsTmFtZShkY29sVGFnKQotI2VuZGlmCiAgICAgICAgIHx8IGhhc0xvY2FsTmFtZShlbWJl
ZFRhZykKICAgICAgICAgfHwgaGFzTG9jYWxOYW1lKGZyYW1lVGFnKQogICAgICAgICB8fCBoYXNM
b2NhbE5hbWUoaHJUYWcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50c0Fs
bEluT25lLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50
c0FsbEluT25lLmNwcAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50c0FsbEluT25lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDIsMTAgKzQyLDYgQEAK
ICNpbmNsdWRlICJIVE1MQm9keUVsZW1lbnQuY3BwIgogI2luY2x1ZGUgIkhUTUxCdXR0b25FbGVt
ZW50LmNwcCIKICNpbmNsdWRlICJIVE1MQ2FudmFzRWxlbWVudC5jcHAiCi0jaW5jbHVkZSAiSFRN
TERhdGFHcmlkRWxlbWVudC5jcHAiCi0jaW5jbHVkZSAiSFRNTERhdGFHcmlkQ2VsbEVsZW1lbnQu
Y3BwIgotI2luY2x1ZGUgIkhUTUxEYXRhR3JpZENvbEVsZW1lbnQuY3BwIgotI2luY2x1ZGUgIkhU
TUxEYXRhR3JpZFJvd0VsZW1lbnQuY3BwIgogI2luY2x1ZGUgIkhUTUxEYXRhTGlzdEVsZW1lbnQu
Y3BwIgogI2luY2x1ZGUgIkhUTUxEZXRhaWxzRWxlbWVudC5jcHAiCiAjaW5jbHVkZSAiSFRNTERM
aXN0RWxlbWVudC5jcHAiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5p
bgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5pbgkocmV2
aXNpb24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWdOYW1lcy5pbgkod29y
a2luZyBjb3B5KQpAQCAtMjksMTEgKzI5LDcgQEAgY29kZSBpbnRlcmZhY2VOYW1lPUhUTUxFbGVt
ZW50CiBjb2wgaW50ZXJmYWNlTmFtZT1IVE1MVGFibGVDb2xFbGVtZW50CiBjb2xncm91cCBpbnRl
cmZhY2VOYW1lPUhUTUxUYWJsZUNvbEVsZW1lbnQKIGNvbW1hbmQgaW50ZXJmYWNlTmFtZT1IVE1M
RWxlbWVudAotZGF0YWdyaWQgaW50ZXJmYWNlTmFtZT1IVE1MRGF0YUdyaWRFbGVtZW50LCBjb25k
aXRpb25hbD1EQVRBR1JJRAogZGF0YWxpc3QgaW50ZXJmYWNlTmFtZT1IVE1MRGF0YUxpc3RFbGVt
ZW50LCBjb25kaXRpb25hbD1EQVRBTElTVAotZGNlbGwgaW50ZXJmYWNlTmFtZT1IVE1MRGF0YUdy
aWRDZWxsRWxlbWVudCwgY29uZGl0aW9uYWw9REFUQUdSSUQKLWRjb2wgaW50ZXJmYWNlTmFtZT1I
VE1MRGF0YUdyaWRDb2xFbGVtZW50LCBjb25kaXRpb25hbD1EQVRBR1JJRAotZHJvdyBpbnRlcmZh
Y2VOYW1lPUhUTUxEYXRhR3JpZFJvd0VsZW1lbnQsIGNvbmRpdGlvbmFsPURBVEFHUklECiBkZCBp
bnRlcmZhY2VOYW1lPUhUTUxFbGVtZW50CiBkZWwgaW50ZXJmYWNlTmFtZT1IVE1MTW9kRWxlbWVu
dAogZGV0YWlscyBjb25kaXRpb25hbD1ERVRBSUxTCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdl
L0RPTVdpbmRvdy5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5k
b3cuaWRsCShyZXZpc2lvbiA4NDk1MikKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNDIwLDkgKzQyMCw2IEBAIG1vZHVsZSB3aW5kb3cgewog
ICAgICAgICBhdHRyaWJ1dGUgSFRNTEJvZHlFbGVtZW50Q29uc3RydWN0b3IgSFRNTEJvZHlFbGVt
ZW50OwogICAgICAgICBhdHRyaWJ1dGUgSFRNTEJ1dHRvbkVsZW1lbnRDb25zdHJ1Y3RvciBIVE1M
QnV0dG9uRWxlbWVudDsKICAgICAgICAgYXR0cmlidXRlIEhUTUxDYW52YXNFbGVtZW50Q29uc3Ry
dWN0b3IgSFRNTENhbnZhc0VsZW1lbnQ7Ci0gICAgICAgIGF0dHJpYnV0ZSBbQ29uZGl0aW9uYWw9
REFUQUdSSURdIEhUTUxEYXRhR3JpZEVsZW1lbnRDb25zdHJ1Y3RvciBIVE1MRGF0YUdyaWRFbGVt
ZW50OwotICAgICAgICBhdHRyaWJ1dGUgW0NvbmRpdGlvbmFsPURBVEFHUklEXSBIVE1MRGF0YUdy
aWRDZWxsRWxlbWVudENvbnN0cnVjdG9yIEhUTUxEYXRhR3JpZENlbGxFbGVtZW50OwotICAgICAg
ICBhdHRyaWJ1dGUgW0NvbmRpdGlvbmFsPURBVEFHUklEXSBIVE1MRGF0YUdyaWRDb2xFbGVtZW50
Q29uc3RydWN0b3IgSFRNTERhdGFHcmlkQ29sRWxlbWVudDsKICAgICAgICAgYXR0cmlidXRlIEhU
TUxETGlzdEVsZW1lbnRDb25zdHJ1Y3RvciBIVE1MRExpc3RFbGVtZW50OwogICAgICAgICBhdHRy
aWJ1dGUgSFRNTERpcmVjdG9yeUVsZW1lbnRDb25zdHJ1Y3RvciBIVE1MRGlyZWN0b3J5RWxlbWVu
dDsKICAgICAgICAgYXR0cmlidXRlIEhUTUxEaXZFbGVtZW50Q29uc3RydWN0b3IgSFRNTERpdkVs
ZW1lbnQ7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAkocmV2aXNp
b24gODQ5NTIpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTY5NSwxMiArMTY5NSwxMiBAQCBib29sIFJlbmRlckJveDo6c2l6ZXNU
b0ludHJpbnNpY0xvZ2ljYWxXCiAgICAgICAgICAgICAmJiAocGFyZW50KCktPnN0eWxlKCktPmJv
eE9yaWVudCgpID09IEhPUklaT05UQUwgfHwgcGFyZW50KCktPnN0eWxlKCktPmJveEFsaWduKCkg
IT0gQlNUUkVUQ0gpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIC8vIEJ1dHRvbiwgaW5w
dXQsIHNlbGVjdCwgdGV4dGFyZWEsIGxlZ2VuZCBhbmQgZGF0YWdyaWQgdHJlYXQKKyAgICAvLyBC
dXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhLCBhbmQgbGVnZW5kIHRyZWF0CiAgICAgLy8g
d2lkdGggdmFsdWUgb2YgJ2F1dG8nIGFzICdpbnRyaW5zaWMnIHVubGVzcyBpdCdzIGluIGEKICAg
ICAvLyBzdHJldGNoaW5nIHZlcnRpY2FsIGZsZXhib3guCiAgICAgLy8gRklYTUU6IFRoaW5rIGFi
b3V0IGJsb2NrLWZsb3cgaGVyZS4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDY0NzMKLSAgICBpZiAobG9naWNhbFdpZHRoLnR5cGUoKSA9PSBBdXRvICYm
ICEocGFyZW50KCktPmlzRmxleGlibGVCb3goKSAmJiBwYXJlbnQoKS0+c3R5bGUoKS0+Ym94T3Jp
ZW50KCkgPT0gVkVSVElDQUwgJiYgcGFyZW50KCktPnN0eWxlKCktPmJveEFsaWduKCkgPT0gQlNU
UkVUQ0gpICYmIG5vZGUoKSAmJiAobm9kZSgpLT5oYXNUYWdOYW1lKGlucHV0VGFnKSB8fCBub2Rl
KCktPmhhc1RhZ05hbWUoc2VsZWN0VGFnKSB8fCBub2RlKCktPmhhc1RhZ05hbWUoYnV0dG9uVGFn
KSB8fCBub2RlKCktPmhhc1RhZ05hbWUodGV4dGFyZWFUYWcpIHx8IG5vZGUoKS0+aGFzVGFnTmFt
ZShsZWdlbmRUYWcpIHx8IG5vZGUoKS0+aGFzVGFnTmFtZShkYXRhZ3JpZFRhZykpKQorICAgIGlm
IChsb2dpY2FsV2lkdGgudHlwZSgpID09IEF1dG8gJiYgIShwYXJlbnQoKS0+aXNGbGV4aWJsZUJv
eCgpICYmIHBhcmVudCgpLT5zdHlsZSgpLT5ib3hPcmllbnQoKSA9PSBWRVJUSUNBTCAmJiBwYXJl
bnQoKS0+c3R5bGUoKS0+Ym94QWxpZ24oKSA9PSBCU1RSRVRDSCkgJiYgbm9kZSgpICYmIChub2Rl
KCktPmhhc1RhZ05hbWUoaW5wdXRUYWcpIHx8IG5vZGUoKS0+aGFzVGFnTmFtZShzZWxlY3RUYWcp
IHx8IG5vZGUoKS0+aGFzVGFnTmFtZShidXR0b25UYWcpIHx8IG5vZGUoKS0+aGFzVGFnTmFtZSh0
ZXh0YXJlYVRhZykgfHwgbm9kZSgpLT5oYXNUYWdOYW1lKGxlZ2VuZFRhZykpKQogICAgICAgICBy
ZXR1cm4gdHJ1ZTsKIAogICAgIHJldHVybiBmYWxzZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJEYXRhR3JpZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckRhdGFHcmlkLmNwcAkocmV2aXNpb24gODQ5NTIpCisrKyBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGF0YUdyaWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDI3NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA5IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBD
T01QVVRFUiwgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLiAKLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoREFUQUdSSUQp
Ci0KLSNpbmNsdWRlICJSZW5kZXJEYXRhR3JpZC5oIgotCi0jaW5jbHVkZSAiQ1NTU3R5bGVTZWxl
Y3Rvci5oIgotI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgotI2luY2x1ZGUgIkZyYW1lLmgi
Ci0jaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCi0jaW5jbHVkZSAiUGFnZS5oIgotI2luY2x1
ZGUgIlJlbmRlclZpZXcuaCIKLSNpbmNsdWRlICJTY3JvbGxiYXIuaCIKLQotdXNpbmcgc3RkOjpt
aW47Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotc3RhdGljIGNvbnN0IGludCBjRGVmYXVsdFdp
ZHRoID0gMzAwOwotCi1SZW5kZXJEYXRhR3JpZDo6UmVuZGVyRGF0YUdyaWQoRWxlbWVudCogZWx0
KQotICAgIDogUmVuZGVyQmxvY2soZWx0KQotewotICAgIGlmIChQYWdlKiBwYWdlID0gZnJhbWUo
KS0+cGFnZSgpKSB7Ci0gICAgICAgIG1fcGFnZSA9IHBhZ2U7Ci0gICAgICAgIG1fcGFnZS0+YWRk
U2Nyb2xsYWJsZUFyZWEodGhpcyk7Ci0gICAgfQotfQotCi1SZW5kZXJEYXRhR3JpZDo6flJlbmRl
ckRhdGFHcmlkKCkKLXsKLSAgICBpZiAobV9wYWdlKQotICAgICAgICBtX3BhZ2UtPnJlbW92ZVNj
cm9sbGFibGVBcmVhKHRoaXMpOwotfQotCi12b2lkIFJlbmRlckRhdGFHcmlkOjpzdHlsZURpZENo
YW5nZShTdHlsZURpZmZlcmVuY2UgZGlmZiwgY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxlKQot
ewotICAgIFJlbmRlckJsb2NrOjpzdHlsZURpZENoYW5nZShkaWZmLCBvbGRTdHlsZSk7Ci0gICAg
cmVjYWxjU3R5bGVGb3JDb2x1bW5zKCk7Ci19Ci0KLXZvaWQgUmVuZGVyRGF0YUdyaWQ6OnJlY2Fs
Y1N0eWxlRm9yQ29sdW1ucygpCi17Ci0gICAgRGF0YUdyaWRDb2x1bW5MaXN0KiBjb2x1bW5zID0g
Z3JpZEVsZW1lbnQoKS0+Y29sdW1ucygpOwotICAgIHVuc2lnbmVkIGxlbmd0aCA9IGNvbHVtbnMt
Pmxlbmd0aCgpOwotICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkKLSAg
ICAgICAgcmVjYWxjU3R5bGVGb3JDb2x1bW4oY29sdW1ucy0+aXRlbShpKSk7Ci19Ci0KLXZvaWQg
UmVuZGVyRGF0YUdyaWQ6OnJlY2FsY1N0eWxlRm9yQ29sdW1uKERhdGFHcmlkQ29sdW1uKiBjb2x1
bW4pCi17Ci0gICAgaWYgKCFjb2x1bW4tPmNvbHVtblN0eWxlKCkpCi0gICAgICAgIGNvbHVtbi0+
c2V0Q29sdW1uU3R5bGUoZG9jdW1lbnQoKS0+c3R5bGVTZWxlY3RvcigpLT5wc2V1ZG9TdHlsZUZv
ckRhdGFHcmlkQ29sdW1uKGNvbHVtbiwgc3R5bGUoKSkpOwotICAgIGlmICghY29sdW1uLT5oZWFk
ZXJTdHlsZSgpKQotICAgICAgICBjb2x1bW4tPnNldEhlYWRlclN0eWxlKGRvY3VtZW50KCktPnN0
eWxlU2VsZWN0b3IoKS0+cHNldWRvU3R5bGVGb3JEYXRhR3JpZENvbHVtbkhlYWRlcihjb2x1bW4s
IHN0eWxlKCkpKTsKLX0KLQotUmVuZGVyU3R5bGUqIFJlbmRlckRhdGFHcmlkOjpjb2x1bW5TdHls
ZShEYXRhR3JpZENvbHVtbiogY29sdW1uKQotewotICAgIGlmICghY29sdW1uLT5jb2x1bW5TdHls
ZSgpKQotICAgICAgICByZWNhbGNTdHlsZUZvckNvbHVtbihjb2x1bW4pOwotICAgIHJldHVybiBj
b2x1bW4tPmNvbHVtblN0eWxlKCk7Ci19Ci0KLVJlbmRlclN0eWxlKiBSZW5kZXJEYXRhR3JpZDo6
aGVhZGVyU3R5bGUoRGF0YUdyaWRDb2x1bW4qIGNvbHVtbikKLXsKLSAgICBpZiAoIWNvbHVtbi0+
aGVhZGVyU3R5bGUoKSkKLSAgICAgICAgcmVjYWxjU3R5bGVGb3JDb2x1bW4oY29sdW1uKTsKLSAg
ICByZXR1cm4gY29sdW1uLT5oZWFkZXJTdHlsZSgpOwotfQotCi12b2lkIFJlbmRlckRhdGFHcmlk
Ojpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCi17Ci0gICAgbV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGggPSAwOwotICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKLQot
ICAgIGlmIChzdHlsZSgpLT53aWR0aCgpLmlzRml4ZWQoKSAmJiBzdHlsZSgpLT53aWR0aCgpLnZh
bHVlKCkgPiAwKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsV2lkdGgoc3R5bGUo
KS0+d2lkdGgoKS52YWx1ZSgpKTsKLSAgICBlbHNlCi0gICAgICAgIG1fbWF4UHJlZmVycmVkTG9n
aWNhbFdpZHRoID0gY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsV2lkdGgoY0RlZmF1bHRXaWR0aCk7
Ci0KLSAgICBpZiAoc3R5bGUoKS0+bWluV2lkdGgoKS5pc0ZpeGVkKCkgJiYgc3R5bGUoKS0+bWlu
V2lkdGgoKS52YWx1ZSgpID4gMCkgewotICAgICAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0
aCA9IG1heChtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCwgY29tcHV0ZUNvbnRlbnRCb3hMb2dp
Y2FsV2lkdGgoc3R5bGUoKS0+bWluV2lkdGgoKS52YWx1ZSgpKSk7Ci0gICAgICAgIG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gbWF4KG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoLCBjb21w
dXRlQ29udGVudEJveExvZ2ljYWxXaWR0aChzdHlsZSgpLT5taW5XaWR0aCgpLnZhbHVlKCkpKTsK
LSAgICB9IGVsc2UgaWYgKHN0eWxlKCktPndpZHRoKCkuaXNQZXJjZW50KCkgfHwgKHN0eWxlKCkt
PndpZHRoKCkuaXNBdXRvKCkgJiYgc3R5bGUoKS0+aGVpZ2h0KCkuaXNQZXJjZW50KCkpKQotICAg
ICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7Ci0gICAgZWxzZQotICAgICAgICBt
X21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoOwot
Ci0gICAgaWYgKHN0eWxlKCktPm1heFdpZHRoKCkuaXNGaXhlZCgpICYmIHN0eWxlKCktPm1heFdp
ZHRoKCkudmFsdWUoKSAhPSB1bmRlZmluZWRMZW5ndGgpIHsKLSAgICAgICAgbV9tYXhQcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSBtaW4obV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgsIGNvbXB1dGVD
b250ZW50Qm94TG9naWNhbFdpZHRoKHN0eWxlKCktPm1heFdpZHRoKCkudmFsdWUoKSkpOwotICAg
ICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1pbihtX21pblByZWZlcnJlZExvZ2lj
YWxXaWR0aCwgY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsV2lkdGgoc3R5bGUoKS0+bWF4V2lkdGgo
KS52YWx1ZSgpKSk7Ci0gICAgfQotCi0gICAgaW50IHRvQWRkID0gYm9yZGVyQW5kUGFkZGluZ1dp
ZHRoKCk7Ci0gICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggKz0gdG9BZGQ7Ci0gICAgbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggKz0gdG9BZGQ7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIAotICAgIHNldFByZWZlcnJlZExvZ2ljYWxXaWR0aHNEaXJ0eShmYWxzZSk7Ci19
Ci0KLXZvaWQgUmVuZGVyRGF0YUdyaWQ6OmxheW91dCgpCi17Ci0gICAgUmVuZGVyQmxvY2s6Omxh
eW91dCgpOwotICAgIGxheW91dENvbHVtbnMoKTsKLX0KLQotdm9pZCBSZW5kZXJEYXRhR3JpZDo6
bGF5b3V0Q29sdW1ucygpCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudC4KLX0KLQotdm9pZCBS
ZW5kZXJEYXRhR3JpZDo6cGFpbnRPYmplY3QoUGFpbnRJbmZvJiBwYWludEluZm8sIGludCB0eCwg
aW50IHR5KQotewotICAgIGlmIChzdHlsZSgpLT52aXNpYmlsaXR5KCkgIT0gVklTSUJMRSkKLSAg
ICAgICAgcmV0dXJuOwotCi0gICAgLy8gUGFpbnQgb3VyIGJhY2tncm91bmQgYW5kIGJvcmRlci4K
LSAgICBSZW5kZXJCbG9jazo6cGFpbnRPYmplY3QocGFpbnRJbmZvLCB0eCwgdHkpOwotICAgIAot
ICAgIGlmIChwYWludEluZm8ucGhhc2UgIT0gUGFpbnRQaGFzZUZvcmVncm91bmQpCi0gICAgICAg
IHJldHVybjsKLQotICAgIC8vIFBhaW50IG91ciBjb2x1bW4gaGVhZGVycyBmaXJzdC4KLSAgICBw
YWludENvbHVtbkhlYWRlcnMocGFpbnRJbmZvLCB0eCwgdHkpOwotfQotCi12b2lkIFJlbmRlckRh
dGFHcmlkOjpwYWludENvbHVtbkhlYWRlcnMoUGFpbnRJbmZvJiBwYWludEluZm8sIGludCB0eCwg
aW50IHR5KQotewotICAgIERhdGFHcmlkQ29sdW1uTGlzdCogY29sdW1ucyA9IGdyaWRFbGVtZW50
KCktPmNvbHVtbnMoKTsKLSAgICB1bnNpZ25lZCBsZW5ndGggPSBjb2x1bW5zLT5sZW5ndGgoKTsK
LSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbGVuZ3RoOyArK2kpIHsKLSAgICAgICAgRGF0
YUdyaWRDb2x1bW4qIGNvbHVtbiA9IGNvbHVtbnMtPml0ZW0oaSk7Ci0gICAgICAgIFJlbmRlclN0
eWxlKiBjb2x1bW5TdHlsZSA9IGhlYWRlclN0eWxlKGNvbHVtbik7Ci0KLSAgICAgICAgLy8gRG9u
J3QgcmVuZGVyIGludmlzaWJsZSBjb2x1bW5zLgotICAgICAgICBpZiAoIWNvbHVtblN0eWxlIHx8
IGNvbHVtblN0eWxlLT5kaXNwbGF5KCkgPT0gTk9ORSB8fCBjb2x1bW5TdHlsZS0+dmlzaWJpbGl0
eSgpICE9IFZJU0lCTEUpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgCi0gICAgICAg
IC8vIFBhaW50IHRoZSBjb2x1bW4gaGVhZGVyIGlmIGl0IGludGVyc2VjdHMgdGhlIGRpcnR5IHJl
Y3QuCi0gICAgICAgIEludFJlY3QgY29sdW1uUmVjdChjb2x1bW4tPnJlY3QoKSk7Ci0gICAgICAg
IGNvbHVtblJlY3QubW92ZSh0eCwgdHkpOwotICAgICAgICBpZiAoY29sdW1uUmVjdC5pbnRlcnNl
Y3RzKHBhaW50SW5mby5yZWN0KSkKLSAgICAgICAgICAgIHBhaW50Q29sdW1uSGVhZGVyKGNvbHVt
biwgcGFpbnRJbmZvLCB0eCwgdHkpOwotICAgIH0KLX0KLQotdm9pZCBSZW5kZXJEYXRhR3JpZDo6
cGFpbnRDb2x1bW5IZWFkZXIoRGF0YUdyaWRDb2x1bW4qLCBQYWludEluZm8mLCBpbnQsIGludCkK
LXsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50LgotfQotCi0vLyBTY3JvbGxpbmcgaW1wbGVtZW50
YXRpb24gZnVuY3Rpb25zCi1pbnQgUmVuZGVyRGF0YUdyaWQ6OnNjcm9sbFNpemUoU2Nyb2xsYmFy
T3JpZW50YXRpb24gb3JpZW50YXRpb24pIGNvbnN0Ci17Ci0gICAgcmV0dXJuICgob3JpZW50YXRp
b24gPT0gVmVydGljYWxsU2Nyb2xsYmFyKSAmJiBtX3ZCYXIpID8gKG1fdkJhci0+dG90YWxTaXpl
KCkgLSBtX3ZCYXItPnZpc2libGVTaXplKCkpIDogMDsKLX0KLQotdm9pZCBSZW5kZXJEYXRhR3Jp
ZDo6c2V0U2Nyb2xsT2Zmc2V0RnJvbUFuaW1hdGlvbihjb25zdCBJbnRQb2ludCYgb2Zmc2V0KQot
ewotICAgIGlmIChtX3ZCYXIpCi0gICAgICAgIG1fdkJhci0+c2V0VmFsdWUob2Zmc2V0LnkoKSwg
U2Nyb2xsYmFyOjpGcm9tU2Nyb2xsQW5pbWF0b3IpOwotfQotCi12b2lkIFJlbmRlckRhdGFHcmlk
Ojp2YWx1ZUNoYW5nZWQoU2Nyb2xsYmFyKikKLXsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50Lgot
fQotCi12b2lkIFJlbmRlckRhdGFHcmlkOjppbnZhbGlkYXRlU2Nyb2xsYmFyUmVjdChTY3JvbGxi
YXIqLCBjb25zdCBJbnRSZWN0JikKLXsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50LgotfQotCi1i
b29sIFJlbmRlckRhdGFHcmlkOjppc0FjdGl2ZSgpIGNvbnN0Ci17Ci0gICAgUGFnZSogcGFnZSA9
IGZyYW1lKCktPnBhZ2UoKTsKLSAgICByZXR1cm4gcGFnZSAmJiBwYWdlLT5mb2N1c0NvbnRyb2xs
ZXIoKS0+aXNBY3RpdmUoKTsKLX0KLQotCi1JbnRSZWN0IFJlbmRlckRhdGFHcmlkOjpjb252ZXJ0
RnJvbVNjcm9sbGJhclRvQ29udGFpbmluZ1ZpZXcoY29uc3QgU2Nyb2xsYmFyKiBzY3JvbGxiYXIs
IGNvbnN0IEludFJlY3QmIHNjcm9sbGJhclJlY3QpIGNvbnN0Ci17Ci0gICAgUmVuZGVyVmlldyog
dmlldyA9IHRoaXMtPnZpZXcoKTsKLSAgICBpZiAoIXZpZXcpCi0gICAgICAgIHJldHVybiBzY3Jv
bGxiYXJSZWN0OwotCi0gICAgSW50UmVjdCByZWN0ID0gc2Nyb2xsYmFyUmVjdDsKLQotICAgIGlu
dCBzY3JvbGxiYXJMZWZ0ID0gd2lkdGgoKSAtIGJvcmRlclJpZ2h0KCkgLSBzY3JvbGxiYXItPndp
ZHRoKCk7Ci0gICAgaW50IHNjcm9sbGJhclRvcCA9IGJvcmRlclRvcCgpOwotICAgIHJlY3QubW92
ZShzY3JvbGxiYXJMZWZ0LCBzY3JvbGxiYXJUb3ApOwotCi0gICAgcmV0dXJuIHZpZXctPmZyYW1l
VmlldygpLT5jb252ZXJ0RnJvbVJlbmRlcmVyKHRoaXMsIHJlY3QpOwotfQotCi1JbnRSZWN0IFJl
bmRlckRhdGFHcmlkOjpjb252ZXJ0RnJvbUNvbnRhaW5pbmdWaWV3VG9TY3JvbGxiYXIoY29uc3Qg
U2Nyb2xsYmFyKiBzY3JvbGxiYXIsIGNvbnN0IEludFJlY3QmIHBhcmVudFJlY3QpIGNvbnN0Ci17
Ci0gICAgUmVuZGVyVmlldyogdmlldyA9IHRoaXMtPnZpZXcoKTsKLSAgICBpZiAoIXZpZXcpCi0g
ICAgICAgIHJldHVybiBwYXJlbnRSZWN0OwotCi0gICAgSW50UmVjdCByZWN0ID0gdmlldy0+ZnJh
bWVWaWV3KCktPmNvbnZlcnRUb1JlbmRlcmVyKHRoaXMsIHBhcmVudFJlY3QpOwotCi0gICAgaW50
IHNjcm9sbGJhckxlZnQgPSB3aWR0aCgpIC0gYm9yZGVyUmlnaHQoKSAtIHNjcm9sbGJhci0+d2lk
dGgoKTsKLSAgICBpbnQgc2Nyb2xsYmFyVG9wID0gYm9yZGVyVG9wKCk7Ci0gICAgcmVjdC5tb3Zl
KC1zY3JvbGxiYXJMZWZ0LCAtc2Nyb2xsYmFyVG9wKTsKLSAgICByZXR1cm4gcmVjdDsKLX0KLQot
SW50UG9pbnQgUmVuZGVyRGF0YUdyaWQ6OmNvbnZlcnRGcm9tU2Nyb2xsYmFyVG9Db250YWluaW5n
Vmlldyhjb25zdCBTY3JvbGxiYXIqIHNjcm9sbGJhciwgY29uc3QgSW50UG9pbnQmIHNjcm9sbGJh
clBvaW50KSBjb25zdAotewotICAgIFJlbmRlclZpZXcqIHZpZXcgPSB0aGlzLT52aWV3KCk7Ci0g
ICAgaWYgKCF2aWV3KQotICAgICAgICByZXR1cm4gc2Nyb2xsYmFyUG9pbnQ7Ci0KLSAgICBJbnRQ
b2ludCBwb2ludCA9IHNjcm9sbGJhclBvaW50OwotCi0gICAgaW50IHNjcm9sbGJhckxlZnQgPSB3
aWR0aCgpIC0gYm9yZGVyUmlnaHQoKSAtIHNjcm9sbGJhci0+d2lkdGgoKTsKLSAgICBpbnQgc2Ny
b2xsYmFyVG9wID0gYm9yZGVyVG9wKCk7Ci0gICAgcG9pbnQubW92ZShzY3JvbGxiYXJMZWZ0LCBz
Y3JvbGxiYXJUb3ApOwotCi0gICAgcmV0dXJuIHZpZXctPmZyYW1lVmlldygpLT5jb252ZXJ0RnJv
bVJlbmRlcmVyKHRoaXMsIHBvaW50KTsKLX0KLQotSW50UG9pbnQgUmVuZGVyRGF0YUdyaWQ6OmNv
bnZlcnRGcm9tQ29udGFpbmluZ1ZpZXdUb1Njcm9sbGJhcihjb25zdCBTY3JvbGxiYXIqIHNjcm9s
bGJhciwgY29uc3QgSW50UG9pbnQmIHBhcmVudFBvaW50KSBjb25zdAotewotICAgIFJlbmRlclZp
ZXcqIHZpZXcgPSB0aGlzLT52aWV3KCk7Ci0gICAgaWYgKCF2aWV3KQotICAgICAgICByZXR1cm4g
cGFyZW50UG9pbnQ7Ci0KLSAgICBJbnRQb2ludCBwb2ludCA9IHZpZXctPmZyYW1lVmlldygpLT5j
b252ZXJ0VG9SZW5kZXJlcih0aGlzLCBwYXJlbnRQb2ludCk7Ci0KLSAgICBpbnQgc2Nyb2xsYmFy
TGVmdCA9IHdpZHRoKCkgLSBib3JkZXJSaWdodCgpIC0gc2Nyb2xsYmFyLT53aWR0aCgpOwotICAg
IGludCBzY3JvbGxiYXJUb3AgPSBib3JkZXJUb3AoKTsKLSAgICBwb2ludC5tb3ZlKC1zY3JvbGxi
YXJMZWZ0LCAtc2Nyb2xsYmFyVG9wKTsKLSAgICByZXR1cm4gcG9pbnQ7Ci19Ci0KLWJvb2wgUmVu
ZGVyRGF0YUdyaWQ6OnNob3VsZFN1c3BlbmRTY3JvbGxBbmltYXRpb25zKCkgY29uc3QKLXsKLSAg
ICBSZW5kZXJWaWV3KiB2aWV3ID0gdGhpcy0+dmlldygpOwotICAgIGlmICghdmlldykKLSAgICAg
ICAgcmV0dXJuIHRydWU7Ci0gICAgcmV0dXJuIHZpZXctPmZyYW1lVmlldygpLT5zaG91bGRTdXNw
ZW5kU2Nyb2xsQW5pbWF0aW9ucygpOwotfQotCi19Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckRhdGFHcmlkLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckRhdGFHcmlkLmgJKHJldmlzaW9uIDg0OTUyKQorKysgU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckRhdGFHcmlkLmgJKHdvcmtpbmcgY29weSkKQEAg
LTEsOTMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
Q09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCi0gKi8KLQotI2lmbmRlZiBSZW5kZXJEYXRhR3JpZF9oCi0jZGVmaW5lIFJlbmRlckRh
dGFHcmlkX2gKLQotI2lmIEVOQUJMRShEQVRBR1JJRCkKLQotI2luY2x1ZGUgIkhUTUxEYXRhR3Jp
ZEVsZW1lbnQuaCIKLSNpbmNsdWRlICJSZW5kZXJCbG9jay5oIgotI2luY2x1ZGUgIlNjcm9sbGFi
bGVBcmVhLmgiCi0jaW5jbHVkZSAiU3R5bGVJbWFnZS5oIgotI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xh
c3MgUmVuZGVyRGF0YUdyaWQgOiBwdWJsaWMgUmVuZGVyQmxvY2ssIHByaXZhdGUgU2Nyb2xsYWJs
ZUFyZWEgewotcHVibGljOgotICAgIFJlbmRlckRhdGFHcmlkKEVsZW1lbnQqKTsKLSAgICB+UmVu
ZGVyRGF0YUdyaWQoKTsKLSAgICAKLSAgICB2aXJ0dWFsIGNvbnN0IGNoYXIqIHJlbmRlck5hbWUo
KSBjb25zdCB7IHJldHVybiAiUmVuZGVyRGF0YUdyaWQiOyB9Ci0gICAgdmlydHVhbCBib29sIGNh
bkhhdmVDaGlsZHJlbigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCB2b2lk
IGNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCk7Ci0gICAgdmlydHVhbCB2b2lkIGxheW91
dCgpOwotICAgIHZpcnR1YWwgdm9pZCBwYWludE9iamVjdChQYWludEluZm8mLCBpbnQgdHgsIGlu
dCB0eSk7Ci0KLSAgICB2b2lkIGNvbHVtbnNDaGFuZ2VkKCk7Ci0KLXByaXZhdGU6Ci0gICAgdmly
dHVhbCB2b2lkIHN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSwgY29uc3QgUmVuZGVyU3R5
bGUqIG9sZFN0eWxlKTsKLQotICAgIHZpcnR1YWwgYm9vbCByZXF1aXJlc0ZvcmNlZFN0eWxlUmVj
YWxjUHJvcGFnYXRpb24oKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0KLSAgICBSZW5kZXJTdHls
ZSogY29sdW1uU3R5bGUoRGF0YUdyaWRDb2x1bW4qKTsKLSAgICBSZW5kZXJTdHlsZSogaGVhZGVy
U3R5bGUoRGF0YUdyaWRDb2x1bW4qKTsKLSAgICB2b2lkIHJlY2FsY1N0eWxlRm9yQ29sdW1ucygp
OwotICAgIHZvaWQgcmVjYWxjU3R5bGVGb3JDb2x1bW4oRGF0YUdyaWRDb2x1bW4qKTsKLQotICAg
IHZvaWQgbGF5b3V0Q29sdW1ucygpOwotICAgIHZvaWQgcGFpbnRDb2x1bW5IZWFkZXJzKFBhaW50
SW5mbyYsIGludCB0eCwgaW50IHR5KTsKLSAgICB2b2lkIHBhaW50Q29sdW1uSGVhZGVyKERhdGFH
cmlkQ29sdW1uKiwgUGFpbnRJbmZvJiwgaW50IHR4LCBpbnQgdHkpOwotCi0gICAgSFRNTERhdGFH
cmlkRWxlbWVudCogZ3JpZEVsZW1lbnQoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxIVE1M
RGF0YUdyaWRFbGVtZW50Kj4obm9kZSgpKTsgfQotCi0gICAgLy8gU2Nyb2xsYWJsZUFyZWEgaW50
ZXJmYWNlLgotICAgIHZpcnR1YWwgaW50IHNjcm9sbFNpemUoU2Nyb2xsYmFyT3JpZW50YXRpb24g
b3JpZW50YXRpb24pIGNvbnN0OwotICAgIHZpcnR1YWwgdm9pZCBzZXRTY3JvbGxPZmZzZXRGcm9t
QW5pbWF0aW9uKGNvbnN0IEludFBvaW50Jik7Ci0gICAgdmlydHVhbCB2b2lkIHZhbHVlQ2hhbmdl
ZChTY3JvbGxiYXIqKTsKLSAgICB2aXJ0dWFsIHZvaWQgaW52YWxpZGF0ZVNjcm9sbGJhclJlY3Qo
U2Nyb2xsYmFyKiwgY29uc3QgSW50UmVjdCYpOwotICAgIHZpcnR1YWwgYm9vbCBpc0FjdGl2ZSgp
IGNvbnN0OwotICAgIHZpcnR1YWwgYm9vbCBzY3JvbGxiYXJDb3JuZXJQcmVzZW50KCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0gLy8gV2UgZG9uJ3Qgc3VwcG9ydCByZXNpemUgb24gZGF0YSBncmlk
cyB5ZXQuICBJZiB3ZSBkaWQgdGhpcyB3b3VsZCBoYXZlIHRvIGNoYW5nZS4KLSAgICB2aXJ0dWFs
IEludFJlY3QgY29udmVydEZyb21TY3JvbGxiYXJUb0NvbnRhaW5pbmdWaWV3KGNvbnN0IFNjcm9s
bGJhciosIGNvbnN0IEludFJlY3QmKSBjb25zdDsKLSAgICB2aXJ0dWFsIEludFJlY3QgY29udmVy
dEZyb21Db250YWluaW5nVmlld1RvU2Nyb2xsYmFyKGNvbnN0IFNjcm9sbGJhciosIGNvbnN0IElu
dFJlY3QmKSBjb25zdDsKLSAgICB2aXJ0dWFsIEludFBvaW50IGNvbnZlcnRGcm9tU2Nyb2xsYmFy
VG9Db250YWluaW5nVmlldyhjb25zdCBTY3JvbGxiYXIqLCBjb25zdCBJbnRQb2ludCYpIGNvbnN0
OwotICAgIHZpcnR1YWwgSW50UG9pbnQgY29udmVydEZyb21Db250YWluaW5nVmlld1RvU2Nyb2xs
YmFyKGNvbnN0IFNjcm9sbGJhciosIGNvbnN0IEludFBvaW50JikgY29uc3Q7Ci0gICAgdmlydHVh
bCBib29sIHNob3VsZFN1c3BlbmRTY3JvbGxBbmltYXRpb25zKCkgY29uc3Q7Ci0KLSAgICB2aXJ0
dWFsIHZvaWQgZGlzY29ubmVjdEZyb21QYWdlKCkgeyBtX3BhZ2UgPSAwOyB9Ci0KLSAgICBSZWZQ
dHI8U2Nyb2xsYmFyPiBtX3ZCYXI7Ci0KLSAgICBQYWdlKiBtX3BhZ2U7Ci19OwotCi19Ci0KLSNl
bmRpZgotCi0jZW5kaWYgLy8gUmVuZGVyRGF0YUdyaWRfaApJbmRleDogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlcmluZ0FsbEluT25lLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyaW5nQWxsSW5PbmUuY3BwCShyZXZpc2lvbiA4NDk1MikKKysr
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJpbmdBbGxJbk9uZS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTQ2LDcgKzQ2LDYgQEAKICNpbmNsdWRlICJSZW5kZXJCdXR0b24uY3BwIgogI2lu
Y2x1ZGUgIlJlbmRlckNvbWJpbmVUZXh0LmNwcCIKICNpbmNsdWRlICJSZW5kZXJDb3VudGVyLmNw
cCIKLSNpbmNsdWRlICJSZW5kZXJEYXRhR3JpZC5jcHAiCiAjaW5jbHVkZSAiUmVuZGVyRGV0YWls
cy5jcHAiCiAjaW5jbHVkZSAiUmVuZGVyRGV0YWlsc01hcmtlci5jcHAiCiAjaW5jbHVkZSAiUmVu
ZGVyRW1iZWRkZWRPYmplY3QuY3BwIgpJbmRleDogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkocmV2aXNpb24gODQ5NjIpCisr
KyBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBA
QAorMjAxMS0wNC0yNiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBEYXRhZ3JpZCBmcm9t
IHRoZSB0cmVlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01OTU0MworCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25m
aWc6CisgICAgICAgIFJlbW92ZSBmZWF0dXJlLgorCiAyMDExLTA0LTI2ICBEYW4gQmVybnN0ZWlu
ICA8bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgpJbmRl
eDogU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmlu
ZXMueGNjb25maWcJKHJldmlzaW9uIDg0ODA0KQorKysgU291cmNlL1dlYktpdDIvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcgY29weSkKQEAgLTYxLDcgKzYx
LDYgQEAgRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTiA9ICQoRU5BQgogRU5BQkxFX0NM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTl9tYWNvc3ggPSBFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xP
Q0FUSU9OOwogCiBFTkFCTEVfREFUQUJBU0UgPSBFTkFCTEVfREFUQUJBU0U7Ci1FTkFCTEVfREFU
QUdSSUQgPSA7CiAKIEVOQUJMRV9EQVRBTElTVCA9ICQoRU5BQkxFX0RBVEFMSVNUXyQoUkVBTF9Q
TEFURk9STV9OQU1FKSk7CiBFTkFCTEVfREFUQUxJU1RfbWFjb3N4ID0gRU5BQkxFX0RBVEFMSVNU
OwpAQCAtMTMzLDQgKzEzMiw0IEBAIEVOQUJMRV9YSFRNTE1QID0gOwogRU5BQkxFX1hQQVRIID0g
RU5BQkxFX1hQQVRIOwogRU5BQkxFX1hTTFQgPSBFTkFCTEVfWFNMVDsKIAotRkVBVFVSRV9ERUZJ
TkVTID0gJChFTkFCTEVfTElOS19QUkVGRVRDSCkgJChFTkFCTEVfQUNDRUxFUkFURURfMkRfQ0FO
VkFTKSAkKEVOQUJMRV9XRUJHTCkgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9CTE9C
KSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ0xJRU5UX0JBU0VEX0dFT0xP
Q0FUSU9OKSAkKEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RB
VEFMSVNUKSAkKEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTKSAk
KEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQo
RU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklMVEVS
UykgJChFTkFCTEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJM
RV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTUFHRV9SRVNJ
WkVSKSAkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQo
RU5BQkxFX0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVU
RVJfVEFHKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBM
SUNBVElPTlMpICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNT
X1RBRykgJChFTkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChFTkFCTEVfUVVPVEEp
ICQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklN
QVRJT04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJ
TkdTKSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChF
TkFCTEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVO
QUJMRV9NRURJQV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9T
T0NLRVRTKSAkKEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktF
UlMpICQoRU5BQkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKK0ZF
QVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX0FDQ0VMRVJB
VEVEXzJEX0NBTlZBUykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChF
TkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NMSUVOVF9C
QVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFMSVNUKSAk
KEVOQUJMRV9EQVRBX1RSQU5TRkVSX0lURU1TKSAkKEVOQUJMRV9ERVRBSUxTKSAkKEVOQUJMRV9E
RVZJQ0VfT1JJRU5UQVRJT04pICQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpICQoRU5BQkxFX0RP
TV9TVE9SQUdFKSAkKEVOQUJMRV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFC
TEVfRklMRV9TWVNURU0pICQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKSAkKEVOQUJMRV9HRU9MT0NB
VElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVOQUJMRV9JTUFHRV9SRVNJWkVSKSAkKEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFKSAkKEVOQUJMRV9JTlBVVF9TUEVFQ0gpICQoRU5BQkxFX0pB
VkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX01BVEhNTCkgJChFTkFCTEVfTUVURVJfVEFHKSAk
KEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMp
ICQoRU5BQkxFX1BBR0VfVklTSUJJTElUWV9BUEkpICQoRU5BQkxFX1BST0dSRVNTX1RBRykgJChF
TkFCTEVfUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgJChFTkFCTEVfUVVPVEEpICQoRU5BQkxF
X1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQo
RU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVO
QUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZH
X1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1ZJREVPX1RSQUNLKSAkKEVOQUJMRV9NRURJ
QV9TVEFUSVNUSUNTKSAkKEVOQUJMRV9XRUJfQVVESU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAk
KEVOQUJMRV9XRUJfVElNSU5HKSAkKEVOQUJMRV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5B
QkxFX1hIVE1MTVApICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA4NDk2MikKKysrIFNvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQt
MjYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgRGF0YWdyaWQgZnJvbSB0aGUgdHJlZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk1NDMKKwor
ICAgICAgICAqIGZlYXR1cmVzLmd5cGk6CisgICAgICAgIFJlbW92ZSBmZWF0dXJlLgorCiAyMDEx
LTA0LTI2ICBFdmFuIE1hcnRpbiAgPGV2YW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2
aWV3ZWQsIENocm9tZS9NYWMgYnVpbGQgZml4LgpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1
bS9mZWF0dXJlcy5neXBpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vZmVh
dHVyZXMuZ3lwaQkocmV2aXNpb24gODQ4MDQpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL2Zl
YXR1cmVzLmd5cGkJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDcgKzQ4LDYgQEAKICAgICAgICAgJ0VO
QUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT049MScsCiAgICAgICAgICdFTkFCTEVfREFTSEJP
QVJEX1NVUFBPUlQ9MCcsCiAgICAgICAgICdFTkFCTEVfREFUQUJBU0U9MScsCi0gICAgICAgICdF
TkFCTEVfREFUQUdSSUQ9MCcsCiAgICAgICAgICdFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUz0x
JywKICAgICAgICAgJ0VOQUJMRV9ERVRBSUxTPTEnLAogICAgICAgICAnRU5BQkxFX0RFVklDRV9P
UklFTlRBVElPTj0xJywKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDg0OTYyKQorKysg
U291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMTEtMDQtMjYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgRGF0YWdyaWQgZnJv
bSB0aGUgdHJlZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTk1NDMKKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnOgorICAgICAgICBSZW1vdmUgZmVhdHVyZS4KKwogMjAxMS0wNC0yNiAgRGFuIEJlcm5zdGVp
biAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiA4NDgwNCkKKysrIFNvdXJjZS9XZWJLaXQvbWFj
L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBA
IC02MSw3ICs2MSw2IEBAIEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04gPSAkKEVOQUIK
IEVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT05fbWFjb3N4ID0gRU5BQkxFX0NMSUVOVF9C
QVNFRF9HRU9MT0NBVElPTjsKIAogRU5BQkxFX0RBVEFCQVNFID0gRU5BQkxFX0RBVEFCQVNFOwot
RU5BQkxFX0RBVEFHUklEID0gOwogCiBFTkFCTEVfREFUQUxJU1QgPSAkKEVOQUJMRV9EQVRBTElT
VF8kKFJFQUxfUExBVEZPUk1fTkFNRSkpOwogRU5BQkxFX0RBVEFMSVNUX21hY29zeCA9IEVOQUJM
RV9EQVRBTElTVDsKQEAgLTEzMyw0ICsxMzIsNCBAQCBFTkFCTEVfWEhUTUxNUCA9IDsKIEVOQUJM
RV9YUEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZF
QVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFX0xJTktfUFJFRkVUQ0gpICQoRU5BQkxFX0FDQ0VMRVJB
VEVEXzJEX0NBTlZBUykgJChFTkFCTEVfV0VCR0wpICQoRU5BQkxFXzNEX1JFTkRFUklORykgJChF
TkFCTEVfQkxPQikgJChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpICQoRU5BQkxFX0NMSUVOVF9C
QVNFRF9HRU9MT0NBVElPTikgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFHUklEKSAk
KEVOQUJMRV9EQVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVf
REVUQUlMUykgJChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllf
VVBMT0FEKSAkKEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5B
QkxFX0ZJTFRFUlMpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQ
SSkgJChFTkFCTEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVf
SU1BR0VfUkVTSVpFUikgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRf
U1BFRUNIKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQo
RU5BQkxFX01FVEVSX1RBRykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElO
RV9XRUJfQVBQTElDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJM
RV9QUk9HUkVTU19UQUcpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5B
QkxFX1FVT1RBKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJM
RV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01f
T0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9P
QkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19U
UkFDSykgJChFTkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVO
QUJMRV9XRUJfU09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV01MKSAkKEVO
QUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVf
WFNMVCk7CitGRUFUVVJFX0RFRklORVMgPSAkKEVOQUJMRV9MSU5LX1BSRUZFVENIKSAkKEVOQUJM
RV9BQ0NFTEVSQVRFRF8yRF9DQU5WQVMpICQoRU5BQkxFX1dFQkdMKSAkKEVOQUJMRV8zRF9SRU5E
RVJJTkcpICQoRU5BQkxFX0JMT0IpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJM
RV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT04pICQoRU5BQkxFX0RBVEFCQVNFKSAkKEVOQUJMRV9E
QVRBTElTVCkgJChFTkFCTEVfREFUQV9UUkFOU0ZFUl9JVEVNUykgJChFTkFCTEVfREVUQUlMUykg
JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKSAkKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKSAk
KEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRF
UlMpICQoRU5BQkxFX0ZJTEVfU1lTVEVNKSAkKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSkgJChFTkFC
TEVfR0VPTE9DQVRJT04pICQoRU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSU1BR0VfUkVT
SVpFUikgJChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJChFTkFCTEVfSU5QVVRfU1BFRUNIKSAk
KEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9NQVRITUwpICQoRU5BQkxFX01F
VEVSX1RBRykgJChFTkFCTEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQ
TElDQVRJT05TKSAkKEVOQUJMRV9QQUdFX1ZJU0lCSUxJVFlfQVBJKSAkKEVOQUJMRV9QUk9HUkVT
U19UQUcpICQoRU5BQkxFX1JFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpICQoRU5BQkxFX1FVT1RB
KSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJMRV9TVkdfQU5J
TUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5E
SU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9PQkpFQ1QpICQo
RU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9WSURFT19UUkFDSykgJChF
TkFCTEVfTUVESUFfU1RBVElTVElDUykgJChFTkFCTEVfV0VCX0FVRElPKSAkKEVOQUJMRV9XRUJf
U09DS0VUUykgJChFTkFCTEVfV0VCX1RJTUlORykgJChFTkFCTEVfV01MKSAkKEVOQUJMRV9XT1JL
RVJTKSAkKEVOQUJMRV9YSFRNTE1QKSAkKEVOQUJMRV9YUEFUSCkgJChFTkFCTEVfWFNMVCk7Cklu
ZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZp
c2lvbiA4NDk2MikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDE3IEBACisyMDExLTA0LTI2ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIERhdGFncmlk
IGZyb20gdGhlIHRyZWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTU5NTQzCisKKyAgICAgICAgKiBTY3JpcHRzL2J1aWxkLXdlYmtpdDoKKyAgICAgICAg
UmVtb3ZlIGZlYXR1cmUuCisKKyAgICAgICAgKiBpRXhwbG9kZXIvaWV4cGxvZGVyLTEuMy4yL2h0
ZG9jcy9odG1sdGFncy5pbjoKKyAgICAgICAgKiBpRXhwbG9kZXIvaWV4cGxvZGVyLTEuNy4yL3Ny
Yy9odG1sLXRhZ3Mvd2Via2l0OgorICAgICAgICBSZW1vdmUgZnJvbSBmdXp6ZXIuCisKIDIwMTEt
MDQtMjYgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IE1paGFpIFBhcnBhcml0YS4KSW5kZXg6IFRvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CShyZXZpc2lvbiA4NDgwNCkK
KysrIFRvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CSh3b3JraW5nIGNvcHkpCkBAIC03MSw3ICs3
MSw2IEBAIG15ICgKICAgICAkY2xpZW50QmFzZWRHZW9sb2NhdGlvblN1cHBvcnQsCiAgICAgJGNv
dmVyYWdlU3VwcG9ydCwKICAgICAkZGF0YWJhc2VTdXBwb3J0LAotICAgICRkYXRhZ3JpZFN1cHBv
cnQsCiAgICAgJGRhdGFsaXN0U3VwcG9ydCwKICAgICAkZGF0YVRyYW5zZmVySXRlbXNTdXBwb3J0
LAogICAgICRkZXRhaWxzU3VwcG9ydCwKQEAgLTE1MCw5ICsxNDksNiBAQCBteSBAZmVhdHVyZXMg
PSAoCiAgICAgeyBvcHRpb24gPT4gImRhdGFiYXNlIiwgZGVzYyA9PiAiVG9nZ2xlIERhdGFiYXNl
IFN1cHBvcnQiLAogICAgICAgZGVmaW5lID0+ICJFTkFCTEVfREFUQUJBU0UiLCBkZWZhdWx0ID0+
IDEsIHZhbHVlID0+IFwkZGF0YWJhc2VTdXBwb3J0IH0sCiAKLSAgICB7IG9wdGlvbiA9PiAiZGF0
YWdyaWQiLCBkZXNjID0+ICJUb2dnbGUgRGF0YWdyaWQgU3VwcG9ydCIsCi0gICAgICBkZWZpbmUg
PT4gIkVOQUJMRV9EQVRBR1JJRCIsIGRlZmF1bHQgPT4gMCwgdmFsdWUgPT4gXCRkYXRhZ3JpZFN1
cHBvcnQgfSwKLQogICAgIHsgb3B0aW9uID0+ICJkYXRhbGlzdCIsIGRlc2MgPT4gIlRvZ2dsZSBI
VE1MNSBkYXRhbGlzdCBzdXBwb3J0IiwKICAgICAgIGRlZmluZSA9PiAiRU5BQkxFX0RBVEFMSVNU
IiwgZGVmYXVsdCA9PiAxLCB2YWx1ZSA9PiBcJGRhdGFsaXN0U3VwcG9ydCB9LAogCkluZGV4OiBU
b29scy9pRXhwbG9kZXIvaWV4cGxvZGVyLTEuMy4yL2h0ZG9jcy9odG1sdGFncy5pbgo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9pRXhwbG9kZXIvaWV4cGxvZGVyLTEuMy4yL2h0ZG9jcy9odG1sdGFncy5p
bgkocmV2aXNpb24gODQ4MDQpCisrKyBUb29scy9pRXhwbG9kZXIvaWV4cGxvZGVyLTEuMy4yL2h0
ZG9jcy9odG1sdGFncy5pbgkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYsNiBAQCBjb2RlCiBj
b2wKIGNvbGdyb3VwCiBjb21tYW5kCi1kYXRhZ3JpZAogZGF0YWxpc3QKIGRjZWxsCiBkY29sCklu
ZGV4OiBUb29scy9pRXhwbG9kZXIvaWV4cGxvZGVyLTEuNy4yL3NyYy9odG1sLXRhZ3Mvd2Via2l0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL2lFeHBsb2Rlci9pZXhwbG9kZXItMS43LjIvc3JjL2h0bWwt
dGFncy93ZWJraXQJKHJldmlzaW9uIDg0ODA0KQorKysgVG9vbHMvaUV4cGxvZGVyL2lleHBsb2Rl
ci0xLjcuMi9zcmMvaHRtbC10YWdzL3dlYmtpdAkod29ya2luZyBjb3B5KQpAQCAtMjYsNyArMjYs
NiBAQCBjb2RlCiBjb2wKIGNvbGdyb3VwCiBjb21tYW5kCi1kYXRhZ3JpZAogZGF0YWxpc3QKIGRj
ZWxsCiBkY29sCg==
</data>
<flag name="review"
          id="83949"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>