<?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>189795</bug_id>
          
          <creation_ts>2018-09-20 10:48:01 -0700</creation_ts>
          <short_desc>[WHLSL] Metal code generation for samplers and textures</short_desc>
          <delta_ts>2018-10-13 14:53:31 -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>WebGPU</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>MOVED</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>
          <dependson>187735</dependson>
          <blocked>176199</blocked>
    
    <blocked>189202</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Thomas Denney">tdenney</reporter>
          <assigned_to name="Thomas Denney">tdenney</assigned_to>
          <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>mmaxfield</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1461429</commentid>
    <comment_count>0</comment_count>
    <who name="Thomas Denney">tdenney</who>
    <bug_when>2018-09-20 10:48:01 -0700</bug_when>
    <thetext>Currently the sampler and texture types and functions are unimplemented. However, there should be a 1:1 mapping with WHLSL/MSL functions so this shouldn’t take too long.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1462334</commentid>
    <comment_count>1</comment_count>
      <attachid>350508</attachid>
    <who name="Thomas Denney">tdenney</who>
    <bug_when>2018-09-22 02:23:47 -0700</bug_when>
    <thetext>Created attachment 350508
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1462339</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-09-22 02:27:50 -0700</bug_when>
    <thetext>Attachment 350508 did not pass style-queue:


ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/WHLSL_ToyTests.m:28:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.h:29:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.h:27:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj:790:  developmentRegion is not English.  [xcodeproj/settings] [5]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.h:27:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.h:28:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Tools/WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.m:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 18 in 43 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468809</commentid>
    <comment_count>3</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-10-13 14:23:21 -0700</bug_when>
    <thetext>Migrated to https://api.github.com/repos/gpuweb/WHLSL/issues/32</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468854</commentid>
    <comment_count>4</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-10-13 14:53:31 -0700</bug_when>
    <thetext>https://github.com/gpuweb/WHLSL/issues/32</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>350508</attachid>
            <date>2018-09-22 02:23:47 -0700</date>
            <delta_ts>2018-09-22 02:23:47 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-189795-20180922022340.patch</filename>
            <type>text/plain</type>
            <size>366500</size>
            <attacher name="Thomas Denney">tdenney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM2MzYyCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggY2ExZmEyMzljNDU1ODk5ZTY4OGMyMjNmZmJmZTlhZGQy
OTliMTliNy4uODkyYWJmZGZlNjAwNDM0NTZkYjM1ZGIyN2I1ZTg2NGVkYTBhODVhZSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3
OCBAQAorMjAxOC0wOS0yMiAgVGhvbWFzIERlbm5leSAgPHRkZW5uZXlAYXBwbGUuY29tPgorCisg
ICAgICAgIFtXSExTTF0gTWV0YWwgY29kZSBnZW5lcmF0aW9uIGZvciBzYW1wbGVycyBhbmQgdGV4
dHVyZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
OTc5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvTVNMQmFja2VuZC5qczoKKyAgICAgICAgKE1T
TEJhY2tlbmQucHJvdG90eXBlLl9tZXRhbFNvdXJjZUZvckFycmF5UmVmRGVmaW5pdGlvbi5fbWV0
YWxTb3VyY2VGb3JTdHJ1Y3REZWZpbml0aW9uLl9tZXRhbFNvdXJjZUZvclR5cGVEZWYuZWxzZS5O
YXRpdmVUeXBlTmFtZVZpc2l0b3IucHJvdG90eXBlLl90ZXh0dXJlVHlwZU5hbWUpOgorICAgICAg
ICAoTVNMQmFja2VuZC5wcm90b3R5cGUuX21ldGFsU291cmNlRm9yQXJyYXlSZWZEZWZpbml0aW9u
Ll9tZXRhbFNvdXJjZUZvclN0cnVjdERlZmluaXRpb24uX21ldGFsU291cmNlRm9yVHlwZURlZi5l
bHNlLk5hdGl2ZVR5cGVOYW1lVmlzaXRvci5wcm90b3R5cGUudmlzaXROYXRpdmVUeXBlKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9NU0xOYXRpdmVGdW5jdGlvbkNh
bGwuanM6CisgICAgICAgIChzd2l6emxlQ2FzdCk6CisgICAgICAgIChUZXh0dXJlMURTYW1wbGUp
OgorICAgICAgICAoVGV4dHVyZTFEU2FtcGxlV2l0aE9mZnNldCk6CisgICAgICAgIChUZXh0dXJl
MURMb2FkKToKKyAgICAgICAgKFRleHR1cmUxRExvYWRXaXRoT2Zmc2V0KToKKyAgICAgICAgKFRl
eHR1cmUxREdldERpbWVuc2lvbnMpOgorICAgICAgICAoVGV4dHVyZTFEQXJyYXlTYW1wbGUpOgor
ICAgICAgICAoVGV4dHVyZTFEQXJyYXlTYW1wbGVXaXRoT2Zmc2V0KToKKyAgICAgICAgKFRleHR1
cmUxREFycmF5TG9hZCk6CisgICAgICAgIChUZXh0dXJlMURBcnJheUxvYWRXaXRoT2Zmc2V0KToK
KyAgICAgICAgKFRleHR1cmUxREFycmF5R2V0RGltZW5zaW9ucyk6CisgICAgICAgIChUZXh0dXJl
MkRTYW1wbGUpOgorICAgICAgICAoVGV4dHVyZTJEU2FtcGxlV2l0aE9mZnNldCk6CisgICAgICAg
IChUZXh0dXJlMkRTYW1wbGVCaWFzKToKKyAgICAgICAgKFRleHR1cmUyRFNhbXBsZUJpYXNXaXRo
T2Zmc2V0KToKKyAgICAgICAgKFRleHR1cmUyRFNhbXBsZUdyYWQpOgorICAgICAgICAoVGV4dHVy
ZTJEU2FtcGxlR3JhZFdpdGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZTJEU2FtcGxlTGV2ZWwp
OgorICAgICAgICAoVGV4dHVyZTJEU2FtcGxlTGV2ZWxXaXRoT2Zmc2V0KToKKyAgICAgICAgKFRl
eHR1cmUyREdhdGhlclJlZCk6CisgICAgICAgIChUZXh0dXJlMkRHYXRoZXJSZWRXaXRoT2Zmc2V0
KToKKyAgICAgICAgKFRleHR1cmUyREdhdGhlckdyZWVuKToKKyAgICAgICAgKFRleHR1cmUyRExv
YWRXaXRoT2Zmc2V0KToKKyAgICAgICAgKFRleHR1cmUyREdldERpbWVuc2lvbnMpOgorICAgICAg
ICAoVGV4dHVyZTJEQXJyYXlTYW1wbGUpOgorICAgICAgICAoVGV4dHVyZTJEQXJyYXlTYW1wbGVX
aXRoT2Zmc2V0KToKKyAgICAgICAgKFRleHR1cmUyREFycmF5U2FtcGxlQmlhcyk6CisgICAgICAg
IChUZXh0dXJlMkRBcnJheVNhbXBsZUJpYXNXaXRoT2Zmc2V0KToKKyAgICAgICAgKFRleHR1cmUy
REFycmF5U2FtcGxlR3JhZCk6CisgICAgICAgIChUZXh0dXJlMkRBcnJheVNhbXBsZUdyYWRXaXRo
T2Zmc2V0KToKKyAgICAgICAgKFRleHR1cmUyREFycmF5U2FtcGxlTGV2ZWwpOgorICAgICAgICAo
VGV4dHVyZTJEQXJyYXlTYW1wbGVMZXZlbFdpdGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZTJE
QXJyYXlHYXRoZXJSZWQpOgorICAgICAgICAoVGV4dHVyZTJEQXJyYXlMb2FkV2l0aE9mZnNldCk6
CisgICAgICAgIChUZXh0dXJlMkRBcnJheUdldERpbWVuc2lvbnMpOgorICAgICAgICAoVGV4dHVy
ZTNEU2FtcGxlKToKKyAgICAgICAgKFRleHR1cmUzRFNhbXBsZVdpdGhPZmZzZXQpOgorICAgICAg
ICAoVGV4dHVyZTNETG9hZCk6CisgICAgICAgIChUZXh0dXJlM0RMb2FkV2l0aE9mZnNldCk6Cisg
ICAgICAgIChUZXh0dXJlM0RHZXREaW1lbnNpb25zKToKKyAgICAgICAgKFRleHR1cmVDdWJlU2Ft
cGxlKToKKyAgICAgICAgKFRleHR1cmVDdWJlU2FtcGxlV2l0aE9mZnNldCk6CisgICAgICAgIChU
ZXh0dXJlQ3ViZVNhbXBsZUJpYXMpOgorICAgICAgICAoVGV4dHVyZUN1YmVTYW1wbGVHcmFkKToK
KyAgICAgICAgKFRleHR1cmVDdWJlU2FtcGxlTGV2ZWwpOgorICAgICAgICAoVGV4dHVyZUN1YmVH
YXRoZXJSZWQpOgorICAgICAgICAoUldUZXh0dXJlMURHZXREaW1lbnNpb25zKToKKyAgICAgICAg
KFJXVGV4dHVyZTFER2V0RGltZW5zaW9uc0Zsb2F0KToKKyAgICAgICAgKFJXVGV4dHVyZTFETG9h
ZCk6CisgICAgICAgIChSV1RleHR1cmUxRFN0b3JlKToKKyAgICAgICAgKFJXVGV4dHVyZTFEQXJy
YXlHZXREaW1lbnNpb25zKToKKyAgICAgICAgKFJXVGV4dHVyZTFEQXJyYXlHZXREaW1lbnNpb25z
RmxvYXQpOgorICAgICAgICAoUldUZXh0dXJlMURBcnJheUxvYWQpOgorICAgICAgICAoUldUZXh0
dXJlMURBcnJheVN0b3JlKToKKyAgICAgICAgKFJXVGV4dHVyZTJER2V0RGltZW5zaW9ucyk6Cisg
ICAgICAgIChSV1RleHR1cmUyREdldERpbWVuc2lvbnNGbG9hdCk6CisgICAgICAgIChSV1RleHR1
cmUyRExvYWQpOgorICAgICAgICAoUldUZXh0dXJlMkRTdG9yZSk6CisgICAgICAgIChSV1RleHR1
cmUyREFycmF5R2V0RGltZW5zaW9ucyk6CisgICAgICAgIChSV1RleHR1cmUyREFycmF5R2V0RGlt
ZW5zaW9uc0Zsb2F0KToKKyAgICAgICAgKFJXVGV4dHVyZTJEQXJyYXlMb2FkKToKKyAgICAgICAg
KFJXVGV4dHVyZTJEQXJyYXlTdG9yZSk6CisgICAgICAgIChSV1RleHR1cmUzREdldERpbWVuc2lv
bnMpOgorICAgICAgICAoUldUZXh0dXJlM0RHZXREaW1lbnNpb25zRmxvYXQpOgorICAgICAgICAo
UldUZXh0dXJlM0RMb2FkKToKKyAgICAgICAgKFJXVGV4dHVyZTNEU3RvcmUpOgorICAgICAgICAo
VGV4dHVyZURlcHRoMkRTYW1wbGUpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRTYW1wbGVXaXRo
T2Zmc2V0KToKKyAgICAgICAgKFRleHR1cmVEZXB0aDJEU2FtcGxlQ21wKToKKyAgICAgICAgKFRl
eHR1cmVEZXB0aDJEU2FtcGxlQ21wV2l0aE9mZnNldCk6CisgICAgICAgIChUZXh0dXJlRGVwdGgy
RFNhbXBsZUNtcExldmVsWmVybyk6CisgICAgICAgIChUZXh0dXJlRGVwdGgyRFNhbXBsZUNtcExl
dmVsWmVyb1dpdGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRTYW1wbGVCaWFzKToK
KyAgICAgICAgKFRleHR1cmVEZXB0aDJEU2FtcGxlQmlhc1dpdGhPZmZzZXQpOgorICAgICAgICAo
VGV4dHVyZURlcHRoMkRTYW1wbGVHcmFkKToKKyAgICAgICAgKFRleHR1cmVEZXB0aDJEU2FtcGxl
R3JhZFdpdGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRTYW1wbGVMZXZlbCk6Cisg
ICAgICAgIChUZXh0dXJlRGVwdGgyRFNhbXBsZUxldmVsV2l0aE9mZnNldCk6CisgICAgICAgIChU
ZXh0dXJlRGVwdGgyREdhdGhlclJlZCk6CisgICAgICAgIChUZXh0dXJlRGVwdGgyREdhdGhlclJl
ZFdpdGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRHYXRoZXJDb21wYXJlUmVkKToK
KyAgICAgICAgKFRleHR1cmVEZXB0aDJER2F0aGVyQ29tcGFyZVJlZFdpdGhPZmZzZXQpOgorICAg
ICAgICAoVGV4dHVyZURlcHRoMkRMb2FkKToKKyAgICAgICAgKFRleHR1cmVEZXB0aDJETG9hZFdp
dGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRHZXREaW1lbnNpb25zKToKKyAgICAg
ICAgKFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGUpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRB
cnJheVNhbXBsZVdpdGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRBcnJheVNhbXBs
ZUNtcCk6CisgICAgICAgIChUZXh0dXJlRGVwdGgyREFycmF5U2FtcGxlQ21wV2l0aE9mZnNldCk6
CisgICAgICAgIChUZXh0dXJlRGVwdGgyREFycmF5U2FtcGxlQ21wTGV2ZWxaZXJvKToKKyAgICAg
ICAgKFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGVDbXBMZXZlbFplcm9XaXRoT2Zmc2V0KToKKyAg
ICAgICAgKFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGVCaWFzKToKKyAgICAgICAgKFRleHR1cmVE
ZXB0aDJEQXJyYXlTYW1wbGVCaWFzV2l0aE9mZnNldCk6CisgICAgICAgIChUZXh0dXJlRGVwdGgy
REFycmF5U2FtcGxlR3JhZCk6CisgICAgICAgIChUZXh0dXJlRGVwdGgyREFycmF5U2FtcGxlR3Jh
ZFdpdGhPZmZzZXQpOgorICAgICAgICAoVGV4dHVyZURlcHRoMkRBcnJheVNhbXBsZUxldmVsKToK
KyAgICAgICAgKFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGVMZXZlbFdpdGhPZmZzZXQpOgorICAg
ICAgICAoVGV4dHVyZURlcHRoMkRBcnJheUdhdGhlclJlZCk6CisgICAgICAgIChUZXh0dXJlRGVw
dGgyREFycmF5R2F0aGVyUmVkV2l0aE9mZnNldCk6CisgICAgICAgIChUZXh0dXJlRGVwdGgyREFy
cmF5R2F0aGVyQ21wUmVkKToKKyAgICAgICAgKFRleHR1cmVEZXB0aDJEQXJyYXlHYXRoZXJDbXBS
ZWRXaXRoT2Zmc2V0KToKKyAgICAgICAgKFRleHR1cmVEZXB0aDJEQXJyYXlMb2FkKToKKyAgICAg
ICAgKFRleHR1cmVEZXB0aDJEQXJyYXlMb2FkV2l0aE9mZnNldCk6CisgICAgICAgIChUZXh0dXJl
RGVwdGgyREFycmF5R2V0RGltZW5zaW9ucyk6CisgICAgICAgIChUZXh0dXJlRGVwdGhDdWJlU2Ft
cGxlKToKKyAgICAgICAgKFRleHR1cmVEZXB0aEN1YmVTYW1wbGVDbXApOgorICAgICAgICAoVGV4
dHVyZURlcHRoQ3ViZVNhbXBsZUNtcExldmVsWmVybyk6CisgICAgICAgIChUZXh0dXJlRGVwdGhD
dWJlU2FtcGxlQmlhcyk6CisgICAgICAgIChUZXh0dXJlRGVwdGhDdWJlU2FtcGxlR3JhZCk6Cisg
ICAgICAgIChUZXh0dXJlRGVwdGhDdWJlU2FtcGxlTGV2ZWwpOgorICAgICAgICAoVGV4dHVyZURl
cHRoQ3ViZUdhdGhlclJlZCk6CisgICAgICAgIChUZXh0dXJlRGVwdGhDdWJlR2F0aGVyQ21wUmVk
KToKKyAgICAgICAgKFRleHR1cmVEZXB0aEN1YmVHZXREaW1lbnNpb25zKToKKyAgICAgICAgKFJX
VGV4dHVyZURlcHRoMkRHZXREaW1lbnNpb25zKToKKyAgICAgICAgKFJXVGV4dHVyZURlcHRoMkRH
ZXREaW1lbnNpb25zRmxvYXQpOgorICAgICAgICAoUldUZXh0dXJlRGVwdGgyRExvYWQpOgorICAg
ICAgICAoUldUZXh0dXJlRGVwdGgyRFN0b3JlKToKKyAgICAgICAgKFJXVGV4dHVyZURlcHRoMkRB
cnJheUdldERpbWVuc2lvbnMpOgorICAgICAgICAoUldUZXh0dXJlRGVwdGgyREFycmF5R2V0RGlt
ZW5zaW9uc0Zsb2F0KToKKyAgICAgICAgKFJXVGV4dHVyZURlcHRoMkRBcnJheUxvYWQpOgorICAg
ICAgICAoUldUZXh0dXJlRGVwdGgyREFycmF5U3RvcmUpOgorICAgICAgICAobXNsTmF0aXZlRnVu
Y3Rpb25DYWxsKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9NU0xT
dGF0ZW1lbnRFbWl0dGVyLmpzOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01l
dGFsL1dITFNMIFRlc3RzLy5naXRpZ25vcmU6IEFkZGVkLgorICAgICAgICAqIFdlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvQXBwRGVsZWdhdGUuaDogQWRkZWQu
CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29y
ZS9BcHBEZWxlZ2F0ZS5tOiBBZGRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0Fzc2V0cy54Y2Fzc2V0cy9BcHBJY29uLmFwcGljb25z
ZXQvQ29udGVudHMuanNvbjogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9Bc3NldHMueGNhc3NldHMvQ29udGVudHMuanNvbjog
QWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVz
dHMvQ29yZS9CYXNlLmxwcm9qL01haW4uc3Rvcnlib2FyZDogQWRkZWQuCisgICAgICAgICogV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9Db21waWxlUmVzdWx0
Lmg6IEFkZGVkLgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNM
IFRlc3RzL0NvcmUvQ29tcGlsZVJlc3VsdC5tOiBBZGRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0NvbXBpbGVyLmg6IEFkZGVkLgor
ICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUv
Q29tcGlsZXIubTogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0
YWwvV0hMU0wgVGVzdHMvQ29yZS9DdXN0b21NZXRhbFZpZXcuaDogQWRkZWQuCisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9DdXN0b21NZXRh
bFZpZXcubTogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwv
V0hMU0wgVGVzdHMvQ29yZS9EZW1vIHNoYWRlcnMvRGVmYXVsdC53aGxzbDogQWRkZWQuCisgICAg
ICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9EZW1v
IHNoYWRlcnMvSnVsaWEud2hsc2w6IEFkZGVkLgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvRGVtbyBzaGFkZXJzL01hbmRlbGJyb3Qud2hs
c2w6IEFkZGVkLgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNM
IFRlc3RzL0NvcmUvSW5mby5wbGlzdDogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9SZW5kZXJlci9PZmZzY3JlZW5SZW5kZXJl
ci5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExT
TCBUZXN0cy9Db3JlL1JlbmRlcmVyL09mZnNjcmVlblJlbmRlcmVyLm06IEFkZGVkLgorICAgICAg
ICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvUmVuZGVy
ZXIvT25zY3JlZW5SZW5kZXJlci5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL09uc2NyZWVuUmVuZGVyZXIu
bTogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wg
VGVzdHMvQ29yZS9SZW5kZXJlci9SZW5kZXJlci5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL1JlbmRlcmVy
Lm06IEFkZGVkLgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNM
IFRlc3RzL0NvcmUvVGVzdENhbGxBcmd1bWVudC5oOiBBZGRlZC4KKyAgICAgICAgKiBXZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1Rlc3RDYWxsQXJndW1lbnQu
bTogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wg
VGVzdHMvQ29yZS9UZXN0RGVzY3JpcHRpb24uaDogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9UZXN0RGVzY3JpcHRpb24ubTog
QWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVz
dHMvQ29yZS9UZXN0RmFtaWx5Lmg6IEFkZGVkLgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdEZhbWlseS5tOiBBZGRlZC4KKyAgICAg
ICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1Rlc3RG
YW1pbHlSdW5uZXIuaDogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
TWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9UZXN0RmFtaWx5UnVubmVyLm06IEFkZGVkLgorICAgICAg
ICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVmlld0Nv
bnRyb2xsZXIuaDogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0
YWwvV0hMU0wgVGVzdHMvQ29yZS9WaWV3Q29udHJvbGxlci5tOiBBZGRlZC4KKyAgICAgICAgKiBX
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1dITFNMLmVudGl0
bGVtZW50czogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwv
V0hMU0wgVGVzdHMvQ29yZS9fU2hhcmVkTWV0YWwudHh0OiBBZGRlZC4KKyAgICAgICAgKiBXZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL21haW4ubTogQWRkZWQu
CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvV0hM
U0wgVGVzdHMueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkZWQuCisgICAgICAgICogV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvV0hMU0wgVG95VGVzdHMvSW5m
by5wbGlzdDogQWRkZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwv
V0hMU0wgVGVzdHMvV0hMU0wgVG95VGVzdHMvV0hMU0xfVG95VGVzdHMubTogQWRkZWQuCisgICAg
ICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qczoKKyAgICAgICAgKHRlc3RzLmxv
dHNPZkxvY2FsVmFyaWFibGVzKToKKwogMjAxOC0wOS0yMSAgVGhvbWFzIERlbm5leSAgPHRkZW5u
ZXlAYXBwbGUuY29tPgogCiAgICAgICAgIFtXSExTTF0gTG9jYWwgdmFyaWFibGVzIHNob3VsZCBi
ZSBzdGF0aWNhbGx5IGFsbG9jYXRlZApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTWV0YWwvTVNMQmFja2VuZC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL01ldGFsL01TTEJhY2tlbmQuanMKaW5kZXggNTAzMGE5ZDMzZjkzMjA0ZTIwZTFkMjU2Y2Rk
NmM4ZjBjMzVmMzgwMi4uNTMzNzgwZGQ1YjEyMDNjMDg1ZDUxMDU1ODJjM2ZiN2NiOTMwYTY5ZSAx
MDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvTVNMQmFja2Vu
ZC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9NU0xCYWNrZW5k
LmpzCkBAIC0zNTQsOCArMzU0LDQyIEBAIGNsYXNzIE1TTEJhY2tlbmQgewogICAgICAgICAgICAg
cmV0dXJuIGB0eXBlZGVmICR7bm9kZS5hZGRyZXNzU3BhY2V9ICR7dGhpcy5fdHlwZVVuaWZpZXIu
dW5pcXVlVHlwZUlkKG5vZGUuZWxlbWVudFR5cGUpfSAoKiR7bmFtZX0pO2A7CiAgICAgICAgIGVs
c2UgewogICAgICAgICAgICAgY2xhc3MgTmF0aXZlVHlwZU5hbWVWaXNpdG9yIGV4dGVuZHMgVmlz
aXRvciB7CisgICAgICAgICAgICAgICAgX3RleHR1cmVUeXBlTmFtZShub2RlKQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgY29uc3QgdGV4dHVyZVR5cGVOYW1lcyA9IHsK
KyAgICAgICAgICAgICAgICAgICAgICAgICJUZXh0dXJlMUQiOiAidGV4dHVyZTFkIiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICJSV1RleHR1cmUxRCI6ICJ0ZXh0dXJlMWQiLAorICAgICAgICAg
ICAgICAgICAgICAgICAgIlRleHR1cmUxREFycmF5IiA6ICJ0ZXh0dXJlMWRfYXJyYXkiLAorICAg
ICAgICAgICAgICAgICAgICAgICAgIlJXVGV4dHVyZTFEQXJyYXkiOiAidGV4dHVyZTFkX2FycmF5
IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJUZXh0dXJlMkQiOiAidGV4dHVyZTJkIiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICJSV1RleHR1cmUyRCI6ICJ0ZXh0dXJlMmQiLAorICAgICAg
ICAgICAgICAgICAgICAgICAgIlRleHR1cmUyREFycmF5IjogInRleHR1cmUyZF9hcnJheSIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAiUldUZXh0dXJlMkRBcnJheSI6ICJ0ZXh0dXJlMmRfYXJy
YXkiLAorICAgICAgICAgICAgICAgICAgICAgICAgIlRleHR1cmUzRCI6ICJ0ZXh0dXJlM2QiLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIlJXVGV4dHVyZTNEIjogInRleHR1cmUzZCIsCisgICAg
ICAgICAgICAgICAgICAgICAgICAiVGV4dHVyZUN1YmUiOiAidGV4dHVyZWN1YmUiLAorICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gRklYTUU6IFZlcmlmeSBlYWNoIG9mIHRoZSBmb2xsb3dpbmcK
KyAgICAgICAgICAgICAgICAgICAgICAgICJUZXh0dXJlRGVwdGgyRCI6ICJ0ZXh0dXJlMmQiLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIlJXVGV4dHVyZURlcHRoMkQiOiAidGV4dHVyZTJkIiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICJUZXh0dXJlRGVwdGgyREFycmF5IjogInRleHR1cmUy
ZF9hcnJheSIsCisgICAgICAgICAgICAgICAgICAgICAgICAiUldUZXh0dXJlRGVwdGgyREFycmF5
IjogInRleHR1cmUyZF9hcnJheSIsCisgICAgICAgICAgICAgICAgICAgICAgICAiVGV4dHVyZURl
cHRoQ3ViZSI6ICJkZXB0aGN1YmUiCisgICAgICAgICAgICAgICAgICAgIH07CisgICAgICAgICAg
ICAgICAgICAgIGlmICghKG5vZGUubmFtZSBpbiB0ZXh0dXJlVHlwZU5hbWVzKSkKKyAgICAgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBudWxsOworICAgICAgICAgICAgICAgICAgICBjb25zdCBw
YXJhbWV0ZXJUeXBlID0gdHlwZU9mKG5vZGUudHlwZUFyZ3VtZW50c1swXSk7CisgICAgICAgICAg
ICAgICAgICAgIGlmICgvXlJXLy50ZXN0KG5vZGUubmFtZSkpCisgICAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gYCR7dGV4dHVyZVR5cGVOYW1lc1tub2RlLm5hbWVdfTwke3BhcmFtZXRlclR5
cGUudmlzaXQodGhpcyl9LCBhY2Nlc3M6OnJlYWRfd3JpdGU+YDsKKyAgICAgICAgICAgICAgICAg
ICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGAke3RleHR1cmVUeXBlTmFt
ZXNbbm9kZS5uYW1lXX08JHtwYXJhbWV0ZXJUeXBlLnZpc2l0KHRoaXMpfT5gOworICAgICAgICAg
ICAgICAgIH0KKwogICAgICAgICAgICAgICAgIHZpc2l0TmF0aXZlVHlwZShub2RlKQogICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgY29uc3QgdGV4dHVyZVR5cGUgPSB0aGlz
Ll90ZXh0dXJlVHlwZU5hbWUobm9kZSk7CisgICAgICAgICAgICAgICAgICAgIGlmICh0ZXh0dXJl
VHlwZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0ZXh0dXJlVHlwZTsKKwogICAg
ICAgICAgICAgICAgICAgICAvLyBGSVhNRTogQWxzbyBhZGQgc2FtcGxlcnMgYW5kIHRleHR1cmVz
IGhlcmUuCiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG5hdGl2ZVR5cGVOYW1lTWFwID0gewog
ICAgICAgICAgICAgICAgICAgICAgICAgInZvaWQiOiAidm9pZCIsCkBAIC0zNjksNyArNDAzLDgg
QEAgY2xhc3MgTVNMQmFja2VuZCB7CiAgICAgICAgICAgICAgICAgICAgICAgICAiaGFsZiI6ICJo
YWxmIiwKICAgICAgICAgICAgICAgICAgICAgICAgICJmbG9hdCI6ICJmbG9hdCIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAiYXRvbWljX2ludCI6ICJhdG9taWNfaW50IiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICJhdG9taWNfdWludCI6ICJhdG9taWNfdWludCIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICJhdG9taWNfdWludCI6ICJhdG9taWNfdWludCIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAic2FtcGxlciI6ICJzYW1wbGVyIgogICAgICAgICAgICAgICAgICAgICB9OwogCiAg
ICAgICAgICAgICAgICAgICAgIHJldHVybiBuYXRpdmVUeXBlTmFtZU1hcFtub2RlLm5hbWVdOwpk
aWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvTVNMTmF0aXZl
RnVuY3Rpb25DYWxsLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvTVNM
TmF0aXZlRnVuY3Rpb25DYWxsLmpzCmluZGV4IDJhYjg3MTdmY2QxYWQ3MDc1N2ZiZjBhODc5Y2Vj
OTEyMjU4MTNjY2QuLjNmYzE2YjYxN2U0NDdlZDgxMjU5MTgwODg4OWRmZWI1MWY0NTQ5ZGMgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL01TTE5hdGl2ZUZ1
bmN0aW9uQ2FsbC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9N
U0xOYXRpdmVGdW5jdGlvbkNhbGwuanMKQEAgLTI1LDExICsyNSw4MjYgQEAKIAogInVzZSBzdHJp
Y3QiOwogCi1mdW5jdGlvbiBtc2xOYXRpdmVGdW5jdGlvbkNhbGwobm9kZSwgcmVzdWx0VmFyaWFi
bGUsIGFyZ3MpCisvLyBBbGwgTWV0YWwgdGV4dHVyZSByZWFkaW5nIGZ1bmN0aW9ucyByZXR1cm4g
dmVjdG9yPFQsIDQ+ICh3aGVyZSBUIGlzIHRoZSB0eXBlIHNjYWxhciBhcmd1bWVudCBvZiB0aGUg
dGV4dHVyZSkKKy8vIFRoZSBXSExTTCBBUEkgcmV0dXJucyB0aGUgY29ycmVjdCBzaXplZCB2ZWN0
b3Ivc2NhbGFyLCBzbyB0aGlzIGZ1bmN0aW9uIGdlbmVyYXRlcyB0aGUgbmVjZXNzYXJ5IHN3aXp6
bGUgb3BlcmF0b3IKK2Z1bmN0aW9uIHN3aXp6bGVDYXN0KG5hdGl2ZUZ1bmNEZWZOb2RlKQorewor
ICAgIGNvbnN0IGV4cGVjdGVkUmV0dXJuTGVuZ3RoID0gdHlwZU9mKG5hdGl2ZUZ1bmNEZWZOb2Rl
KS5udW1FbGVtZW50c1ZhbHVlOworICAgIHJldHVybiBgeHl6d2Auc2xpY2UoMCwgZXhwZWN0ZWRS
ZXR1cm5MZW5ndGgpOworfQorCitmdW5jdGlvbiBUZXh0dXJlMURTYW1wbGUobm9kZSwgcmVzdWx0
LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb25dKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9
ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0pLiR7c3dpenpsZUNh
c3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUxRFNhbXBsZVdpdGhPZmZzZXQobm9k
ZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIG9mZnNldF0pCit7CisgICAg
Ly8gRklYTUU6IFRoaXMgbmVlZHMgZW11bGF0aW9uIGZvciB0aGUgb2Zmc2V0IGJlY2F1c2UgTWV0
YWwgZG9lc24ndCBuYXRpdmVseSBzdXBwb3J0IGl0LgorICAgIHRocm93IG5ldyBFcnJvcignVGV4
dHVyZTFEU2FtcGxlV2l0aE9mZnNldCBub3QgaW1wbGVtZW50ZWQuJyk7Cit9CisKKy8vIEZJWE1F
OiBJIGJlbGlldmUgYWxsIGxvYWQgZnVuY3Rpb25zIGNhbiB0cmFwLgorCitmdW5jdGlvbiBUZXh0
dXJlMURMb2FkKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIGNvb3JkXSkKK3sKKyAgICAvLyBUaGUg
bGFzdCBjb21wb25lbnQgaXMgdXNlZCB0byBzcGVjaWZ5IHRoZSBtaXBtYXAgbGV2ZWwsIGJ1dCBN
ZXRhbCBkb2Vzbid0IHN1cHBvcnQgbWlwbWFwcyBmb3IgMUQgdGV4dHVyZXMsIHNvIHdlIGhhdmUg
dG8gcGFzcyB6ZXJvLgorICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5yZWFkKCR7
Y29vcmR9LngsIDApLiR7c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1
cmUxRExvYWRXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIGxvY2F0aW9uLCBvZmZz
ZXRdKQoreworICAgIC8vIEZJWE1FOiBUaGlzIG5lZWRzIGVtdWxhdGlvbiBmb3IgdGhlIG9mZnNl
dCBiZWNhdXNlIE1ldGFsIGRvZXNuJ3QgbmF0aXZlbHkgc3VwcG9ydCBpdC4KKyAgICB0aHJvdyBu
ZXcgRXJyb3IoJ2xvYWRUZXh0dXJlTG9jYXRpb24xRE9mZnNldCBub3QgaW1wbGVtZW50ZWQuJyk7
Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUxREdldERpbWVuc2lvbnMobm9kZSwgcmVzdWx0LCBbdGV4
dHVyZSwgbWlwTGV2ZWwsIHdpZHRoUG9pbnRlciwgbnVtYmVyT2ZMZXZlbHNQb2ludGVyXSkKK3sK
KyAgICAvLyBtaXBMZXZlbCBpZ25vcmVkIGZvciAxRCB0ZXh0dXJlcyBpbiBNZXRhbC4KKyAgICBy
ZXR1cm4gWworICAgICAgICBgKigke3dpZHRoUG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRfd2lk
dGgoKTtgLAorICAgICAgICBgKigke251bWJlck9mTGV2ZWxzUG9pbnRlcn0pID0gJHt0ZXh0dXJl
fS5nZXRfbnVtX21pcF9sZXZlbHMoKTtgCisgICAgXS5qb2luKCJcbiIpOworfQorCitmdW5jdGlv
biBUZXh0dXJlMURBcnJheVNhbXBsZShub2RlLCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIHNhbXBs
ZXIsIGxvY2F0aW9uXSkKK3sKKyAgICAvLyBGSVhNRTogQWNjb3JkaW5nIHRvIGh0dHBzOi8vZG9j
cy5taWNyb3NvZnQuY29tL2VuLXVzL3dpbmRvd3MvZGVza3RvcC9kaXJlY3QzZGhsc2wvZHgtZ3Jh
cGhpY3MtaGxzbC10by1zYW1wbGUgdGhlIGFycmF5IGluZGV4IGlzIHByb2R1Y2VkIGJ5IHRha2lu
ZyB0aGUgbGFzdCBlbGVtZW50IG9mIHRoZSBmbG9hdCB2ZWN0b3IgcGFzc2VkIGluLCByb3VuZGlu
ZyBpdCB0byB0aGUgbmVhcmVzdCBldmVuIGludGVnZXIsIGFuZCB0aGVuIGNvbnZlcnRpbmcgdG8g
YSB1aW50LiBUaGUgYmVsb3cgZG9lc24ndCBkbyB0aGF0IHJvdW5kaW5nLgorICAgIHJldHVybiBg
JHtyZXN1bHR9ID0gJHt0ZXh0dXJlQXJyYXl9LnNhbXBsZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9u
fS54LCB1aW50KCR7bG9jYXRpb259LnkpKS4ke3N3aXp6bGVDYXN0KG5vZGUpfTtgOworfQorCitm
dW5jdGlvbiBUZXh0dXJlMURBcnJheVNhbXBsZVdpdGhPZmZzZXQobm9kZSwgcmVzdWx0LCBhcmdz
KQoreworICAgIC8vIEZJWE1FOiBUaGlzIG5lZWRzIGVtdWxhdGlvbiBmb3IgdGhlIG9mZnNldCBi
ZWNhdXNlIE1ldGFsIGRvZXNuJ3QgbmF0aXZlbHkgc3VwcG9ydCBpdC4KKyAgICB0aHJvdyBuZXcg
RXJyb3IoJ1RleHR1cmUxREFycmF5U2FtcGxlV2l0aE9mZnNldCBub3QgaW1wbGVtZW50ZWQuJyk7
Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUxREFycmF5TG9hZChub2RlLCByZXN1bHQsIFt0ZXh0dXJl
QXJyYXksIGxvY2F0aW9uXSkKK3sKKyAgICAvLyBNZXRhbCAxRCB0ZXh0dXJlIGFycmF5cyBkb24n
dCBzdXBwb3J0IG1pcG1hcHBpbmcsIHRoZSBtaXBtYXAgcGFyYW1ldGVyIGlzIGltcGxpY3RseSAw
LgorICAgIC8vIEZJWE1FOiBUaGVyZSBhcmUgdHdvIG92ZXJsb2FkcyBvZiB0aGlzIGZ1bmN0aW9u
OyBvbmUgdGFrZXMgdWludCB3aGlsc3QgdGhlIG90aGVyIHRha2VzIHVzaG9ydC4gVmVyaWZ5IGF2
YWlsYWJpbGl0eS4KKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZUFycmF5fS5yZWFk
KHVpbnQoJHtsb2NhdGlvbn0ueCksIHVpbnQoJHtsb2NhdGlvbn0ueSkpLiR7c3dpenpsZUNhc3Qo
bm9kZSl9O2AKK30KKworZnVuY3Rpb24gVGV4dHVyZTFEQXJyYXlMb2FkV2l0aE9mZnNldChub2Rl
LCByZXN1bHQsIGFyZ3MpCit7CisgICAgLy8gRklYTUU6IFRoaXMgbmVlZHMgZW11bGF0aW9uIGZv
ciB0aGUgb2Zmc2V0IGJlY2F1c2UgTWV0YWwgZG9lc24ndCBuYXRpdmVseSBzdXBwb3J0IGl0Lgor
ICAgIHRocm93IG5ldyBFcnJvcignVGV4dHVyZTFkQXJyYXlMb2FkV2l0aE9mZnNldCBub3QgaW1w
bGVtZW50ZWQuJyk7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUxREFycmF5R2V0RGltZW5zaW9ucyhu
b2RlLCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIG1pcExldmVsLCB3aWR0aFBvaW50ZXIsIGVsZW1l
bnRzUG9pbnRlciwgbnVtYmVyT2ZMZXZlbHNQb2ludGVyXSkKK3sKKyAgICAvLyBNaXAgbGV2ZWwg
aWdub3JlZCwgc2VlIGFib3ZlCisgICAgcmV0dXJuIFsKKyAgICAgICAgYCooJHt3aWR0aFBvaW50
ZXJ9KSA9ICR7dGV4dHVyZUFycmF5fS5nZXRfd2lkdGgoKTtgLAorICAgICAgICBgKigke2VsZW1l
bnRzUG9pbnRlcn0pID0gJHt0ZXh0dXJlQXJyYXl9LmdldF9hcnJheV9zaXplKCk7YAorICAgICAg
ICBgKigke251bWJlck9mTGV2ZWxzUG9pbnRlcn0pID0gJHt0ZXh0dXJlQXJyYXl9LmdldF9udW1f
bWlwX2xldmVscygpO2AKKyAgICBdLmpvaW4oIlxuIik7Cit9CisKKy8vIEZJWE1FOiBSZXdyaXRl
IHRoZSBhYm92ZSB1c2luZyB0aGlzIHN5bnRheAorLy8gRklYTUU6IFRoZXJlIGFyZW4ndCBhcyBt
YW55IHJlcGVhdGVkIGVsZW1lbnRzIGFzIEkgZXhwZWN0ZWQgaGVyZSwgc28gbWFueSBvZiB0aGVz
ZSBjb3VsZCBiZSBpbmxpbmVkIGFzIGxhbWJkYXMuCitmdW5jdGlvbiBUZXh0dXJlMkRTYW1wbGUo
bm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb25dKQoreworICAgIHJldHVy
biBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0p
LiR7c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyRFNhbXBsZVdp
dGhPZmZzZXQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIG9mZnNl
dF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnNhbXBsZSgke3NhbXBs
ZXJ9LCAke2xvY2F0aW9ufSwgJHtvZmZzZXR9KS4ke3N3aXp6bGVDYXN0KG5vZGUpfTtgOworfQor
CitmdW5jdGlvbiBUZXh0dXJlMkRTYW1wbGVCaWFzKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNh
bXBsZXIsIGxvY2F0aW9uLCBiaWFzXSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4
dHVyZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCBiaWFzKCR7Ymlhc30pKS4ke3N3
aXp6bGVDYXN0KG5vZGUpfTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRTYW1wbGVCaWFzV2l0
aE9mZnNldChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgYmlhcywg
b2Zmc2V0XSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlKCR7
c2FtcGxlcn0sICR7bG9jYXRpb259LCBiaWFzKCR7Ymlhc30pLCAke29mZnNldH0pLiR7c3dpenps
ZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyRFNhbXBsZUdyYWQobm9kZSwg
cmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIGRkeCwgZGR5XSkKK3sKKyAgICBy
ZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRp
b259LCBncmFkaWVudDJkKCR7ZGR4fSwgJHtkZHl9KSkuJHtzd2l6emxlQ2FzdChub2RlKX07YDsK
K30KKworZnVuY3Rpb24gVGV4dHVyZTJEU2FtcGxlR3JhZFdpdGhPZmZzZXQobm9kZSwgcmVzdWx0
LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIGRkeCwgZGR5LCBvZmZzZXRdKQoreworICAg
IHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2Nh
dGlvbn0sIGdyYWRpZW50MmQoJHtkZHh9LCAke2RkeX0pLCAke29mZnNldH0pLiR7c3dpenpsZUNh
c3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyRFNhbXBsZUxldmVsKG5vZGUsIHJl
c3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBsb2RdKQoreworICAgIHJldHVybiBg
JHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0sIGxl
dmVsKCR7bG9kfSkpLiR7c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1
cmUyRFNhbXBsZUxldmVsV2l0aE9mZnNldChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVy
LCBsb2NhdGlvbiwgbG9kLCBvZmZzZXRdKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0
ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0sIGxldmVsKCR7bG9kfSksICR7
b2Zmc2V0fSkuJHtzd2l6emxlQ2FzdChub2RlKX07YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZTJE
R2F0aGVyUmVkKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uXSkKK3sK
KyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uZ2F0aGVyKCR7c2FtcGxlcn0sICR7
bG9jYXRpb259KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRHYXRoZXJSZWRXaXRoT2Zmc2V0
KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXRdKQorewor
ICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5nYXRoZXIoJHtzYW1wbGVyfSwgJHts
b2NhdGlvbn0sICR7b2Zmc2V0fSk7YAorfQorCitmdW5jdGlvbiBUZXh0dXJlMkRHYXRoZXJHcmVl
bihub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7CisgICAgcmV0
dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LmdhdGhlcigke3NhbXBsZXJ9LCAke2xvY2F0aW9u
fSwgaW50MigwLCAwKSwgY29tcG9uZW50Ojp5KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRH
YXRoZXJHcmVlbldpdGhPZmZzZXQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9j
YXRpb24sIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9Lmdh
dGhlcigke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwgJHtvZmZzZXR9LCBjb21wb25lbnQ6OnkpO2AK
K30KKworZnVuY3Rpb24gVGV4dHVyZTJER2F0aGVyQmx1ZShub2RlLCByZXN1bHQsIFt0ZXh0dXJl
LCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1
cmV9LmdhdGhlcigke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwgaW50MigwLCAwKSwgY29tcG9uZW50
Ojp6KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRHYXRoZXJCbHVlV2l0aE9mZnNldChub2Rl
LCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgb2Zmc2V0XSkKK3sKKyAgICBy
ZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uZ2F0aGVyKCR7c2FtcGxlcn0sICR7bG9jYXRp
b259LCAke29mZnNldH0sIGNvbXBvbmVudDo6eik7YAorfQorCitmdW5jdGlvbiBUZXh0dXJlMkRH
YXRoZXJBbHBoYShub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7
CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LmdhdGhlcigke3NhbXBsZXJ9LCAk
e2xvY2F0aW9ufSwgaW50MigwLCAwKSwgY29tcG9uZW50Ojp3KTtgOworfQorCitmdW5jdGlvbiBU
ZXh0dXJlMkRHYXRoZXJBbHBoYVdpdGhPZmZzZXQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2Ft
cGxlciwgbG9jYXRpb24sIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3Rl
eHR1cmV9LmdhdGhlcigke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwgJHtvZmZzZXR9LCBjb21wb25l
bnQ6OncpO2AKK30KKworZnVuY3Rpb24gVGV4dHVyZTJETG9hZChub2RlLCByZXN1bHQsIFt0ZXh0
dXJlLCBsb2NhdGlvbl0pCit7CisgICAgLy8gRklYTUU6IE1ldGFsIHN1cHBvcnRzIGEgc2Vjb25k
YXJ5IG1pcG1hcCBMT0QgcGFyYW1ldGVyIGJ1dCBpdCBsb29rcyBsaWtlIFdITFNMIGRvZXNuJ3Qu
CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnJlYWQoJHtsb2NhdGlvbn0ueHkp
YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZTJETG9hZFdpdGhPZmZzZXQobm9kZSwgcmVzdWx0LCBb
dGV4dHVyZSwgbG9jYXRpb24sIG9mZnNldF0pCit7CisgICAgdGhyb3cgbmV3IEVycm9yKCdUZXh0
dXJlMkRMb2FkV2l0aE9mZnNldCBpcyB1bmltcGxlbWVudGVkIChuZWVkcyBlbXVsYXRpb24gaW4g
TVNMKS4nKTsKK30KKworZnVuY3Rpb24gVGV4dHVyZTJER2V0RGltZW5zaW9ucyhub2RlLCByZXN1
bHQsIFt0ZXh0dXJlLCBtaXBMZXZlbCwgd2lkdGhQb2ludGVyLCBoZWlnaHRQb2ludGVyLCBudW1i
ZXJPZkxldmVsc1BvaW50ZXJdKQoreworICAgIHJldHVybiBbCisgICAgICAgIGAqKCR7d2lkdGhQ
b2ludGVyfSkgPSAke3RleHR1cmV9LmdldF93aWR0aCgke21pcExldmVsfSk7YAorICAgICAgICBg
Kigke2hlaWdodFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X2hlaWdodCgke21pcExldmVsfSk7
YAorICAgICAgICBgKigke251bWJlck9mTGV2ZWxzUG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRf
bnVtX21pcF9sZXZlbHMoKTtgCisgICAgXS5qb2luKCJcbiIpOworfQorCitmdW5jdGlvbiBUZXh0
dXJlMkRBcnJheVNhbXBsZShub2RlLCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIHNhbXBsZXIsIGxv
Y2F0aW9uXSkKK3sKKyAgICAvLyBGSVhNRTogU2VlIGh0dHBzOi8vZG9jcy5taWNyb3NvZnQuY29t
L2VuLXVzL3dpbmRvd3MvZGVza3RvcC9kaXJlY3QzZGhsc2wvZHgtZ3JhcGhpY3MtaGxzbC10by1z
YW1wbGUuCisgICAgLy8gRklYTUU6IENhbiB5b3UgYWN0dWFsbHkgd3JpdGUgdWludCBpbiBNU0w/
Pz8KKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZUFycmF5fS5zYW1wbGUoJHtzYW1w
bGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueikpLiR7c3dpenpsZUNhc3Qo
bm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5U2FtcGxlV2l0aE9mZnNldChu
b2RlLCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXRdKQor
eworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQXJyYXl9LnNhbXBsZSgke3NhbXBs
ZXJ9LCAke2xvY2F0aW9ufS54eSwgdWludCgke2xvY2F0aW9ufS56KSwgJHtvZmZzZXR9KS4ke3N3
aXp6bGVDYXN0KG5vZGUpfTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRBcnJheVNhbXBsZUJp
YXMobm9kZSwgcmVzdWx0LCBbdGV4dHVyZUFycmF5LCBzYW1wbGVyLCBsb2NhdGlvbiwgYmlhc10p
Cit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmVBcnJheX0uc2FtcGxlKCR7c2Ft
cGxlcn0sICR7bG9jYXRpb259Lnh5LCB1aW50KCR7bG9jYXRpb259LnopLCBiaWFzKCR7Ymlhc30p
KS4ke3N3aXp6bGVDYXN0KG5vZGUpfTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRBcnJheVNh
bXBsZUJpYXNXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmVBcnJheSwgc2FtcGxlciwg
bG9jYXRpb24sIGJpYXMsIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3Rl
eHR1cmVBcnJheX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259Lnh5LCB1aW50KCR7bG9j
YXRpb259LnopLCBiaWFzKCR7Ymlhc30pLCAke29mZnNldH0pLiR7c3dpenpsZUNhc3Qobm9kZSl9
O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5U2FtcGxlR3JhZChub2RlLCByZXN1bHQs
IFt0ZXh0dXJlQXJyYXksIHNhbXBsZXIsIGxvY2F0aW9uLCBkZHgsIGRkeV0pCit7CisgICAgcmV0
dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmVBcnJheX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9j
YXRpb259Lnh5LCB1aW50KCR7bG9jYXRpb259LnopLCBncmFkaWVudDJkKCR7ZGR4fSwgJHtkZHl9
KSkuJHtzd2l6emxlQ2FzdChub2RlKX07YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZTJEQXJyYXlT
YW1wbGVHcmFkV2l0aE9mZnNldChub2RlLCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIHNhbXBsZXIs
IGxvY2F0aW9uLCBkZHgsIGRkeSwgb2Zmc2V0XSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9
ICR7dGV4dHVyZUFycmF5fS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQo
JHtsb2NhdGlvbn0ueiksIGdyYWRpZW50MmQoJHtkZHh9LCAke2RkeX0pLCAke29mZnNldH0pLiR7
c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5U2FtcGxl
TGV2ZWwobm9kZSwgcmVzdWx0LCBbdGV4dHVyZUFycmF5LCBzYW1wbGVyLCBsb2NhdGlvbiwgbG9k
XSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZUFycmF5fS5zYW1wbGUoJHtz
YW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiksIGxldmVsKCR7bG9k
fSkpLiR7c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5
U2FtcGxlTGV2ZWxXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmVBcnJheSwgc2FtcGxl
ciwgbG9jYXRpb24sIGxvZCwgb2Zmc2V0XSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7
dGV4dHVyZUFycmF5fS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHts
b2NhdGlvbn0ueiksIGxldmVsKCR7bG9kfSksICR7b2Zmc2V0fSkuJHtzd2l6emxlQ2FzdChub2Rl
KX07YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZTJEQXJyYXlHYXRoZXJSZWQobm9kZSwgcmVzdWx0
LCBbdGV4dHVyZUFycmF5LCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7CisgICAgLy8gRklYTUU6IFNl
ZSB0aGUgYWJvdmUgY29tbWVudHMgYWJvdXQgdGhlIGFycmF5IGluZGV4aW5nIHN0dWZmLgorICAg
IHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQXJyYXl9LmdhdGhlcigke3NhbXBsZXJ9LCAk
e2xvY2F0aW9ufS54eSwgdWludCgke2xvY2F0aW9ufS56KSwgaW50MigwLCAwKSwgY29tcG9uZW50
Ojp4KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRBcnJheUdhdGhlclJlZFdpdGhPZmZzZXQo
bm9kZSwgcmVzdWx0LCBbdGV4dHVyZUFycmF5LCBzYW1wbGVyLCBsb2NhdGlvbiwgb2Zmc2V0XSkK
K3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZUFycmF5fS5nYXRoZXIoJHtzYW1w
bGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiksICR7b2Zmc2V0fSwgY29t
cG9uZW50Ojp4KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRBcnJheUdhdGhlckdyZWVuKG5v
ZGUsIHJlc3VsdCwgW3RleHR1cmVBcnJheSwgc2FtcGxlciwgbG9jYXRpb25dKQoreworICAgIHJl
dHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQXJyYXl9LmdhdGhlcigke3NhbXBsZXJ9LCAke2xv
Y2F0aW9ufS54eSwgdWludCgke2xvY2F0aW9ufS56KSwgaW50MigwLCAwKSwgY29tcG9uZW50Ojp5
KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlMkRBcnJheUdhdGhlckdyZWVuV2l0aE9mZnNldChu
b2RlLCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXRdKQor
eworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQXJyYXl9LmdhdGhlcigke3NhbXBs
ZXJ9LCAke2xvY2F0aW9ufS54eSwgdWludCgke2xvY2F0aW9ufS56KSwgJHtvZmZzZXR9LCBjb21w
b25lbnQ6OnkpO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5R2F0aGVyQmx1ZShub2Rl
LCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIHNhbXBsZXIsIGxvY2F0aW9uXSkKK3sKKyAgICByZXR1
cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZUFycmF5fS5nYXRoZXIoJHtzYW1wbGVyfSwgJHtsb2Nh
dGlvbn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiksIGludDIoMCwgMCksIGNvbXBvbmVudDo6eik7
YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZTJEQXJyYXlHYXRoZXJCbHVlV2l0aE9mZnNldChub2Rl
LCByZXN1bHQsIFt0ZXh0dXJlQXJyYXksIHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXRdKQorewor
ICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQXJyYXl9LmdhdGhlcigke3NhbXBsZXJ9
LCAke2xvY2F0aW9ufS54eSwgdWludCgke2xvY2F0aW9ufS56KSwgJHtvZmZzZXR9LCBjb21wb25l
bnQ6OnopO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5R2F0aGVyQWxwaGEobm9kZSwg
cmVzdWx0LCBbdGV4dHVyZUFycmF5LCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7CisgICAgcmV0dXJu
IGAke3Jlc3VsdH0gPSAke3RleHR1cmVBcnJheX0uZ2F0aGVyKCR7c2FtcGxlcn0sICR7bG9jYXRp
b259Lnh5LCB1aW50KCR7bG9jYXRpb259LnopLCBpbnQyKDAsIDApLCBjb21wb25lbnQ6OncpO2A7
Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5R2F0aGVyQWxwaGFXaXRoT2Zmc2V0KG5vZGUs
IHJlc3VsdCwgW3RleHR1cmVBcnJheSwgc2FtcGxlciwgbG9jYXRpb24sIG9mZnNldF0pCit7Cisg
ICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmVBcnJheX0uZ2F0aGVyKCR7c2FtcGxlcn0s
ICR7bG9jYXRpb259Lnh5LCB1aW50KCR7bG9jYXRpb259LnopLCAke29mZnNldH0sIGNvbXBvbmVu
dDo6dyk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZTJEQXJyYXlMb2FkKG5vZGUsIHJlc3VsdCwg
W3RleHR1cmVBcnJheSwgbG9jYXRpb25dKQoreworICAgIC8vIEZJWE1FOiBNYXliZSBjaGFuZ2Ug
dGhlIFdITFNMIEFQSSB0byB0YWtlIHVpbnQyIGhlcmUgc28gdGhlIGNhc3QgaXNuJ3QgbmVjZXNz
YXJ5LgorICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQXJyYXl9LnJlYWQodWludDIo
dWludCgke2xvY2F0aW9ufS54KSwgdWludCgke2xvY2F0aW9ufS55KSksIHVpbnQoJHtsb2NhdGlv
bn0ueikpO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmUyREFycmF5TG9hZFdpdGhPZmZzZXQobm9k
ZSwgcmVzdWx0LCBbdGV4dHVyZUFycmF5LCBsb2NhdGlvbiwgb2Zmc2V0XSkKK3sKKyAgICAvLyBG
SVhNRTogSW50cmluc2ljcyBsaXRlcmFsbHkganVzdCBhZGRzIHRoZSBvZmZzZXQgdG8gdGhlIGxv
Y2F0aW9uLCBzbyBtYXliZSBkbyB0aGF0ID8/PworICAgIHRocm93IG5ldyBFcnJvcignRklYTUU6
IFRleHR1cmUyREFycmF5TG9hZFdpdGhPZmZzZXQgbmVlZHMgZW11bGF0aW9uJyk7Cit9CisKK2Z1
bmN0aW9uIFRleHR1cmUyREFycmF5R2V0RGltZW5zaW9ucyhub2RlLCByZXN1bHQsIFt0ZXh0dXJl
QXJyYXksIG1pcExldmVsLCB3aWR0aFBvaW50ZXIsIGhlaWdodFBvaW50ZXIsIG51bUVsZW1lbnRz
UG9pbnRlciwgbnVtYmVyT2ZMZXZlbHNQb2ludGVyXSkKK3sKKyAgICByZXR1cm4gWworICAgICAg
ICBgKigke3dpZHRoUG9pbnRlcn0pID0gJHt0ZXh0dXJlQXJyYXl9LmdldF93aWR0aCgke21pcExl
dmVsfSk7YCwKKyAgICAgICAgYCooJHtoZWlnaHRQb2ludGVyfSkgPSAke3RleHR1cmVBcnJheX0u
Z2V0X2hlaWdodCgke21pcExldmVsfSk7YCwKKyAgICAgICAgYCooJHtudW1FbGVtZW50c1BvaW50
ZXJ9KSA9ICR7dGV4dHVyZUFycmF5fS5nZXRfYXJyYXlfc2l6ZSgpO2AsCisgICAgICAgIGAqKCR7
bnVtYmVyT2ZMZXZlbHNQb2ludGVyfSkgPSAke3RleHR1cmVBcnJheX0uZ2V0X251bV9taXBfbGV2
ZWxzKClgCisgICAgXS5qb2luKCJcbiIpOworfQorCitmdW5jdGlvbiBUZXh0dXJlM0RTYW1wbGUo
bm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb25dKQoreworICAgIHJldHVy
biBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0p
LiR7c3dpenpsZUNhc3Qobm9kZSl9O2AKK30KKworZnVuY3Rpb24gVGV4dHVyZTNEU2FtcGxlV2l0
aE9mZnNldChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgb2Zmc2V0
XSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlKCR7c2FtcGxl
cn0sICR7bG9jYXRpb259LCAke29mZnNldH0pLiR7c3dpenpsZUNhc3Qobm9kZSl9O2AKK30KKwor
ZnVuY3Rpb24gVGV4dHVyZTNETG9hZChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBsb2NhdGlvbl0p
Cit7CisgICAgLy8gQWdhaW4sIHNlZSBteSBhYm92ZSBjb21tZW50cyB1c2luZyB0aGUgdWludCB0
eXBlIGhlcmUgcmF0aGVyIHRoYW4gaW50CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1
cmV9LnNhbXBsZSgke3NhbXBsZXJ9LCB1aW50Myh1aW50KCR7bG9jYXRpb259LngpLCB1aW50KCR7
bG9jYXRpb259LnkpLCB1aW50KCR7bG9jYXRpb259LnopKSwgdWludCgke2xvY2F0aW9ufS53KSk7
YAorfQorCitmdW5jdGlvbiBUZXh0dXJlM0RMb2FkV2l0aE9mZnNldChub2RlLCByZXN1bHQsIFt0
ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgb2Zmc2V0XSkKK3sKKyAgICAvLyBJbnRyaW5zaWNz
IGp1c3QgYWRkcyB0aGUgb2Zmc2V0IHRvIHRoZSBsb2NhdGlvbi4KKyAgICB0aHJvdyBuZXcgRXJy
b3IoJ1RleHR1cmUzRExvYWRXaXRoT2Zmc2V0IG5lZWRzIGVtdWxhdGlvbicpOworfQorCitmdW5j
dGlvbiBUZXh0dXJlM0RHZXREaW1lbnNpb25zKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIG1pcExl
dmVsLCB3aWR0aFBvaW50ZXIsIGhlaWdodFBvaW50ZXIsIGRlcHRoUG9pbnRlciwgbnVtYmVyT2ZM
ZXZlbHNQb2ludGVyXSkKK3sKKyAgICByZXR1cm4gWworICAgICAgICBgKigke3dpZHRoUG9pbnRl
cn0pID0gJHt0ZXh0dXJlfS5nZXRfd2lkdGgoJHttaXBMZXZlbH0pO2AsCisgICAgICAgIGAqKCR7
aGVpZ2h0UG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRfaGVpZ2h0KCR7bWlwTGV2ZWx9KTtgLAor
ICAgICAgICBgKigke2RlcHRoUG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRfZGVwdGgoJHttaXBM
ZXZlbH0pO2AsCisgICAgICAgIGAqKCR7bnVtYmVyT2ZMZXZlbHNQb2ludGVyfSkgPSAke3RleHR1
cmV9LmdldF9udW1fbWlwX2xldmVscygpO2AsCisgICAgXS5qb2luKCJcbiIpOworfQorCitmdW5j
dGlvbiBUZXh0dXJlQ3ViZVNhbXBsZShub2RlLCByZXN1bHQsIFt0ZXh0dXJlQ3ViZSwgc2FtcGxl
ciwgbG9jYXRpb25dKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQ3ViZX0u
c2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJl
Q3ViZVNhbXBsZVdpdGhPZmZzZXQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZUN1YmUsIHNhbXBsZXIs
IGxvY2F0aW9uLCBvZmZzZXRdKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJl
Q3ViZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCAke29mZnNldH0pO2A7Cit9CisK
K2Z1bmN0aW9uIFRleHR1cmVDdWJlU2FtcGxlQmlhcyhub2RlLCByZXN1bHQsIFt0ZXh0dXJlQ3Vi
ZSwgc2FtcGxlciwgbG9jYXRpb24sIGJpYXNdKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0g
JHt0ZXh0dXJlQ3ViZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCAsIGJpYXMoJHti
aWFzfSkpO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVDdWJlU2FtcGxlR3JhZChub2RlLCByZXN1
bHQsIFt0ZXh0dXJlQ3ViZSwgc2FtcGxlciwgbG9jYXRpb24sIGRkeCwgZGR5XSkKK3sKKyAgICBy
ZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZUN1YmV9LnNhbXBsZSgke3NhbXBsZXJ9LCAke2xv
Y2F0aW9ufSwgLCBncmFkaWVudDNkKCR7ZGR4fSwgJHtkZHl9KSk7YDsKK30KKworZnVuY3Rpb24g
VGV4dHVyZUN1YmVTYW1wbGVMZXZlbChub2RlLCByZXN1bHQsIFt0ZXh0dXJlQ3ViZSwgc2FtcGxl
ciwgbG9jYXRpb24sIGxldmVsXSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVy
ZUN1YmV9LnNhbXBsZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwgLCBsZXZlbCgke2xldmVsfSkp
O2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVDdWJlR2F0aGVyUmVkKG5vZGUsIHJlc3VsdCwgW3Rl
eHR1cmVDdWJlLCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0g
PSAke3RleHR1cmVDdWJlfS5nYXRoZXIoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0sIGNvbXBvbmVu
dDo6eCk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZUN1YmVHYXRoZXJHcmVlbihub2RlLCByZXN1
bHQsIFt0ZXh0dXJlQ3ViZSwgc2FtcGxlciwgbG9jYXRpb25dKQoreworICAgIHJldHVybiBgJHty
ZXN1bHR9ID0gJHt0ZXh0dXJlQ3ViZX0uZ2F0aGVyKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCBj
b21wb25lbnQ6OnkpO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVDdWJlR2F0aGVyQmx1ZShub2Rl
LCByZXN1bHQsIFt0ZXh0dXJlQ3ViZSwgc2FtcGxlciwgbG9jYXRpb25dKQoreworICAgIHJldHVy
biBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlQ3ViZX0uZ2F0aGVyKCR7c2FtcGxlcn0sICR7bG9jYXRp
b259LCBjb21wb25lbnQ6OnopO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVDdWJlR2F0aGVyQWxw
aGEobm9kZSwgcmVzdWx0LCBbdGV4dHVyZUN1YmUsIHNhbXBsZXIsIGxvY2F0aW9uXSkKK3sKKyAg
ICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZUN1YmV9LmdhdGhlcigke3NhbXBsZXJ9LCAk
e2xvY2F0aW9ufSwgY29tcG9uZW50Ojp3KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlQ3ViZUdl
dERpbWVuc2lvbnMobm9kZSwgcmVzdWx0LCBbdGV4dHVyZUN1YmUsIG1pcExldmVsLCB3aWR0aFBv
aW50ZXIsIGhlaWdodFBvaW50ZXIsIG51bWJlck9mTGV2ZWxzUG9pbnRlcl0pCit7CisgICAgcmV0
dXJuIFsKKyAgICAgICAgYCooJHt3aWR0aFBvaW50ZXJ9KSA9ICR7dGV4dHVyZUN1YmV9LmdldF93
aWR0aCgke21pcExldmVsfSk7YCwKKyAgICAgICAgYCooJHtoZWlnaHRQb2ludGVyfSkgPSAke3Rl
eHR1cmVDdWJlfS5nZXRfaGVpZ2h0KCR7bWlwTGV2ZWx9KTtgLAorICAgICAgICBgKigke251bWJl
ck9mTGV2ZWxzUG9pbnRlcn0pID0gJHt0ZXh0dXJlQ3ViZX0uZ2V0X251bV9taXBfbGV2ZWxzKCk7
YAorICAgIF0uam9pbigiXG4iKTsKK30KKworZnVuY3Rpb24gUldUZXh0dXJlMURHZXREaW1lbnNp
b25zKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHdpZHRoUG9pbnRlcl0pCit7CisgICAgcmV0dXJu
IGAqKCR7d2lkdGhQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF93aWR0aCgpO2A7Cit9CisKK2Z1
bmN0aW9uIFJXVGV4dHVyZTFER2V0RGltZW5zaW9uc0Zsb2F0KG5vZGUsIHJlc3VsdCwgW3RleHR1
cmUsIHdpZHRoUG9pbnRlcl0pCit7CisgICAgcmV0dXJuIGAqKCR7d2lkdGhQb2ludGVyfSkgPSBm
bG9hdCgke3RleHR1cmV9LmdldF93aWR0aCgpKTtgOworfQorCitmdW5jdGlvbiBSV1RleHR1cmUx
RExvYWQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgbG9jYXRpb25dKQoreworICAgIC8vIEZJWE1F
OiBUaGUgc3RhbmRhcmQgbGlicmFyeSBzaG91bGQgcHJvYmFibHkgaGF2ZSBhIHVpbnQgaGVyZSB0
b28uCisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnJlYWQodWludCgke2xvY2F0
aW9ufSkpLiR7c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFJXVGV4dHVyZTFE
U3RvcmUobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgdmFsdWUsIGxvY2F0aW9uXSkKK3sKKyAgICAv
LyBXZWlyZGx5IHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGRvZXMgaGF2ZSBhIHVpbnQgaGVyZSDCr1xf
KOODhClfL8KvCisgICAgLy8gRklYTUU6IFZlcmlmeSB0aGF0IHRoZSB2YWx1ZSB0eXBlcyBtYXRj
aCB1cCBwcm9wZXJseTsgZG9lcyB0aGlzIG5lZWQgdG8gYmUgemVyby1wYWRkZWQ/CisgICAgcmV0
dXJuIGAke3RleHR1cmV9LndyaXRlKCR7dmFsdWV9LCAke2xvY2F0aW9ufSk7YDsKK30KKworZnVu
Y3Rpb24gUldUZXh0dXJlMURBcnJheUdldERpbWVuc2lvbnMobm9kZSwgcmVzdWx0LCBbdGV4dHVy
ZUFycmF5LCB3aWR0aFBvaW50ZXIsIG51bUVsZW1lbnRzUG9pbnRlcl0pCit7CisgICAgcmV0dXJu
IFsKKyAgICAgICAgYCooJHt3aWR0aFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X3dpZHRoKCk7
YCwKKyAgICAgICAgYCooJHtudW1FbGVtZW50c1BvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X2Fy
cmF5X3NpemUoKTtgLAorICAgIF0uam9pbigiXG4iKTsKK30KKworZnVuY3Rpb24gUldUZXh0dXJl
MURBcnJheUdldERpbWVuc2lvbnNGbG9hdChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCB3aWR0aFBv
aW50ZXIsIG51bUVsZW1lbnRzUG9pbnRlcl0pCit7CisgICAgcmV0dXJuIFsKKyAgICAgICAgYCoo
JHt3aWR0aFBvaW50ZXJ9KSA9IGZsb2F0KCR7dGV4dHVyZX0uZ2V0X3dpZHRoKCkpO2AsCisgICAg
ICAgIGAqKCR7bnVtRWxlbWVudHNQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF9hcnJheV9zaXpl
KCk7YCwKKyAgICBdLmpvaW4oIlxuIik7Cit9CisKK2Z1bmN0aW9uIFJXVGV4dHVyZTFEQXJyYXlM
b2FkKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIGxvY2F0aW9uXSkKK3sKKyAgICAvLyBGSVhNRTog
VGhlIHN0YW5kYXJkIGxpYnJhcnkgc2hvdWxkIHByb2JhYmx5IGhhdmUgYSB1aW50IGhlcmUgdG9v
LgorICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5yZWFkKHVpbnQoJHtsb2NhdGlv
bn0ueCksIHVpbnQoJHtsb2NhdGlvbn0ueSkpLiR7c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisK
K2Z1bmN0aW9uIFJXVGV4dHVyZTFEQXJyYXlTdG9yZShub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCB2
YWx1ZSwgbG9jYXRpb25dKQoreworICAgIC8vIFdlaXJkbHkgdGhlIHN0YW5kYXJkIGxpYnJhcnkg
ZG9lcyBoYXZlIGEgdWludCBoZXJlIMKvXF8o44OEKV8vwq8KKyAgICByZXR1cm4gYCR7dGV4dHVy
ZX0ud3JpdGUoJHt2YWx1ZX0sICR7bG9jYXRpb259LngsICR7bG9jYXRpb259LnkpO2A7Cit9CisK
K2Z1bmN0aW9uIFJXVGV4dHVyZTJER2V0RGltZW5zaW9ucyhub2RlLCByZXN1bHQsIFt0ZXh0dXJl
LCB3aWR0aFBvaW50ZXIsIGhlaWdodFBvaW50ZXJdKQoreworICAgIHJldHVybiBbCisgICAgICAg
IGAqKCR7d2lkdGhQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF93aWR0aCgpO2AsCisgICAgICAg
IGAqKCR7aGVpZ2h0UG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRfaGVpZ2h0KCk7YAorICAgIF0u
am9pbigiXG4iKTsKK30KKworZnVuY3Rpb24gUldUZXh0dXJlMkRHZXREaW1lbnNpb25zRmxvYXQo
bm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgd2lkdGhQb2ludGVyLCBoZWlnaHRQb2ludGVyXSkKK3sK
KyAgICByZXR1cm4gWworICAgICAgICBgKigke3dpZHRoUG9pbnRlcn0pID0gZmxvYXQoJHt0ZXh0
dXJlfS5nZXRfd2lkdGgoKSk7YCwKKyAgICAgICAgYCooJHtoZWlnaHRQb2ludGVyfSkgPSBmbG9h
dCgke3RleHR1cmV9LmdldF9oZWlnaHQoKSk7YAorICAgIF0uam9pbigiXG4iKTsKK30KKworZnVu
Y3Rpb24gUldUZXh0dXJlMkRMb2FkKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIGxvY2F0aW9uXSkK
K3sKKyAgICAvLyBGSVhNRTogVGhlIHN0YW5kYXJkIGxpYnJhcnkgc2hvdWxkIHByb2JhYmx5IGhh
dmUgYSB1aW50IGhlcmUgdG9vLgorICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5y
ZWFkKHVpbnQyKHVpbnQoJHtsb2NhdGlvbn0ueCksIHVpbnQoJHtsb2NhdGlvbn0ueSkpKS4ke3N3
aXp6bGVDYXN0KG5vZGUpfTtgOworfQorCitmdW5jdGlvbiBSV1RleHR1cmUyRFN0b3JlKG5vZGUs
IHJlc3VsdCwgW3RleHR1cmUsIHZhbHVlLCBsb2NhdGlvbl0pCit7CisgICAgLy8gV2VpcmRseSB0
aGUgc3RhbmRhcmQgbGlicmFyeSBkb2VzIGhhdmUgYSB1aW50IGhlcmUgwq9cXyjjg4QpXy/Crwor
ICAgIHJldHVybiBgJHt0ZXh0dXJlfS53cml0ZSgke3ZhbHVlfSwgJHtsb2NhdGlvbn0pO2A7Cit9
CisKK2Z1bmN0aW9uIFJXVGV4dHVyZTJEQXJyYXlHZXREaW1lbnNpb25zKG5vZGUsIHJlc3VsdCwg
W3RleHR1cmVBcnJheSwgd2lkdGhQb2ludGVyLCBoZWlnaHRQb2ludGVyLCBudW1FbGVtZW50c1Bv
aW50ZXJdKQoreworICAgIHJldHVybiBbCisgICAgICAgIGAqKCR7d2lkdGhQb2ludGVyfSkgPSAk
e3RleHR1cmV9LmdldF93aWR0aCgpO2AsCisgICAgICAgIGAqKCR7aGVpZ2h0UG9pbnRlcn0pID0g
JHt0ZXh0dXJlfS5nZXRfaGVpZ2h0KCk7YCwKKyAgICAgICAgYCooJHtudW1FbGVtZW50c1BvaW50
ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X2FycmF5X3NpemUoKTtgLAorICAgIF0uam9pbigiXG4iKTsK
K30KKworZnVuY3Rpb24gUldUZXh0dXJlMkRBcnJheUdldERpbWVuc2lvbnNGbG9hdChub2RlLCBy
ZXN1bHQsIFt0ZXh0dXJlLCB3aWR0aFBvaW50ZXIsIGhlaWdodFBvaW50ZXIsIG51bUVsZW1lbnRQ
b2ludGVyXSkKK3sKKyAgICByZXR1cm4gWworICAgICAgICBgKigke3dpZHRoUG9pbnRlcn0pID0g
ZmxvYXQoJHt0ZXh0dXJlfS5nZXRfd2lkdGgoKSk7YCwKKyAgICAgICAgYCooJHt3aWR0aFBvaW50
ZXJ9KSA9IGZsb2F0KCR7dGV4dHVyZX0uZ2V0X3dpZHRoKCkpO2AsCisgICAgICAgIGAqKCR7bnVt
RWxlbWVudHNQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF9hcnJheV9zaXplKCk7YCwKKyAgICBd
LmpvaW4oIlxuIik7Cit9CisKK2Z1bmN0aW9uIFJXVGV4dHVyZTJEQXJyYXlMb2FkKG5vZGUsIHJl
c3VsdCwgW3RleHR1cmUsIGxvY2F0aW9uXSkKK3sKKyAgICAvLyBGSVhNRTogVGhlIHN0YW5kYXJk
IGxpYnJhcnkgc2hvdWxkIHByb2JhYmx5IGhhdmUgYSB1aW50IGhlcmUgdG9vLgorICAgIHJldHVy
biBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5yZWFkKHVpbnQyKHVpbnQoJHtsb2NhdGlvbn0ueCks
IHVpbnQoJHtsb2NhdGlvbn0ueSkpLCB1aW50KCR7bG9jYXRpb259LnopKS4ke3N3aXp6bGVDYXN0
KG5vZGUpfTtgOworfQorCitmdW5jdGlvbiBSV1RleHR1cmUyREFycmF5U3RvcmUobm9kZSwgcmVz
dWx0LCBbdGV4dHVyZSwgdmFsdWUsIGxvY2F0aW9uXSkKK3sKKyAgICAvLyBXZWlyZGx5IHRoZSBz
dGFuZGFyZCBsaWJyYXJ5IGRvZXMgaGF2ZSBhIHVpbnQgaGVyZSDCr1xfKOODhClfL8KvCisgICAg
cmV0dXJuIGAke3RleHR1cmV9LndyaXRlKCR7dmFsdWV9LCB1aW50Migke2xvY2F0aW9ufS54LCAk
e2xvY2F0aW9ufS55KSwgJHtsb2NhdGlvbn0ueik7YDsKK30KKworZnVuY3Rpb24gUldUZXh0dXJl
M0RHZXREaW1lbnNpb25zKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHdpZHRoUG9pbnRlciwgaGVp
Z2h0UG9pbnRlciwgZGVwdGhQb2ludGVyXSkKK3sKKyAgICByZXR1cm4gWworICAgICAgICBgKigk
e3dpZHRoUG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRfd2lkdGgoKTtgLAorICAgICAgICBgKigk
e2hlaWdodFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X2hlaWdodCgpO2AsCisgICAgICAgIGAq
KCR7ZGVwdGhQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF9kZXB0aCgpO2AsCisgICAgXS5qb2lu
KCJcbiIpOworfQorCitmdW5jdGlvbiBSV1RleHR1cmUzREdldERpbWVuc2lvbnNGbG9hdChub2Rl
LCByZXN1bHQsIFt0ZXh0dXJlLCB3aWR0aFBvaW50ZXIsIGhlaWdodFBvaW50ZXIsIGRlcHRoUG9p
bnRlcl0pCit7CisgICAgcmV0dXJuIFsKKyAgICAgICAgYCooJHt3aWR0aFBvaW50ZXJ9KSA9IGZs
b2F0KCR7dGV4dHVyZX0uZ2V0X3dpZHRoKCkpO2AsCisgICAgICAgIGAqKCR7aGVpZ2h0UG9pbnRl
cn0pID0gZmxvYXQoJHt0ZXh0dXJlfS5nZXRfaGVpZ2h0KCkpO2AsCisgICAgICAgIGAqKCR7ZGVw
dGhQb2ludGVyfSkgPSBmbG9hdCgke3RleHR1cmV9LmdldF9kZXB0aCgpKTtgLAorICAgIF0uam9p
bigiXG4iKTsKK30KKworZnVuY3Rpb24gUldUZXh0dXJlM0RMb2FkKG5vZGUsIHJlc3VsdCwgW3Rl
eHR1cmUsIGxvY2F0aW9uXSkKK3sKKyAgICAvLyBGSVhNRTogU2FtZSBjYXZhZXRzIGFwcGx5IGFi
b3V0IGludDMvdWludDMuCisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnJlYWQo
dWludDModWludCgke2xvY2F0aW9ufS54KSwgdWludCgke2xvY2F0aW9ufS55KSwgdWludCgke2xv
Y2F0aW9ufS56KSkpLiR7c3dpenpsZUNhc3Qobm9kZSl9O2A7Cit9CisKK2Z1bmN0aW9uIFJXVGV4
dHVyZTNEU3RvcmUobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgdmFsdWUsIGxvY2F0aW9uXSkKK3sK
KyAgICByZXR1cm4gYCR7dGV4dHVyZX0ud3JpdGUoJHt2YWx1ZX0sICR7bG9jYXRpb259KTtgCit9
CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aDJEU2FtcGxlKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUs
IHNhbXBsZXIsIGxvY2F0aW9uXSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVy
ZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259KTtgOworfQorCitmdW5jdGlvbiBUZXh0
dXJlRGVwdGgyRFNhbXBsZVdpdGhPZmZzZXQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxl
ciwgbG9jYXRpb24sIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1
cmV9LnNhbXBsZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwgJHtvZmZzZXR9KTtgOworfQorCitm
dW5jdGlvbiBUZXh0dXJlRGVwdGgyRFNhbXBsZUNtcChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBz
YW1wbGVyLCBsb2NhdGlvbiwgY29tcGFyZVZhbHVlXSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0
fSA9ICR7dGV4dHVyZX0uc2FtcGxlX2NvbXBhcmUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0sICR7
Y29tcGFyZVZhbHVlfSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRTYW1wbGVDbXBX
aXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBjb21w
YXJlVmFsdWUsIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9
LnNhbXBsZV9jb21wYXJlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCAke2NvbXBhcmVWYWx1ZX0s
ICR7b2Zmc2V0fSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRTYW1wbGVDbXBMZXZl
bFplcm8obm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIGNvbXBhcmVW
YWx1ZV0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnNhbXBsZV9jb21w
YXJlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCAke2NvbXBhcmVWYWx1ZX0sIGxldmVsKDApKTtg
OworfQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGgyRFNhbXBsZUNtcExldmVsWmVyb1dpdGhPZmZz
ZXQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIGNvbXBhcmVWYWx1
ZSwgb2Zmc2V0XSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxl
X2NvbXBhcmUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0sICR7Y29tcGFyZVZhbHVlfSwgbGV2ZWwo
MCksICR7b2Zmc2V0fSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRTYW1wbGVCaWFz
KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBiaWFzXSkKK3sKKyAg
ICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9j
YXRpb259LCBiaWFzKCR7Ymlhc30pKTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGgyRFNh
bXBsZUJpYXNXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0
aW9uLCBjb21wYXJlVmFsdWUsIGJpYXMsIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3Vs
dH0gPSAke3RleHR1cmV9LnNhbXBsZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSxiaWFzKCR7Ymlh
c30pLCAke29mZnNldH0pO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aDJEU2FtcGxlR3Jh
ZChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgZGR4LCBkZHldKQor
eworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwg
JHtsb2NhdGlvbn0sIGdyYWRpZW50MmQoJHtkZHh9LCAke2RkeX0pKTtgOworfQorCitmdW5jdGlv
biBUZXh0dXJlRGVwdGgyRFNhbXBsZUdyYWRXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1
cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBkZHgsIGRkeSwgb2Zmc2V0XSkKK3sKKyAgICByZXR1cm4g
YCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCBn
cmFkaWVudDJkKCR7ZGR4fSwgJHtkZHl9KSwgJHtvZmZzZXR9KTtgOworfQorCitmdW5jdGlvbiBU
ZXh0dXJlRGVwdGgyRFNhbXBsZUxldmVsKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIs
IGxvY2F0aW9uLCBsb2RdKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5z
YW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0sIGxldmVsKCR7bG9kfSkpO2A7Cit9CisKK2Z1
bmN0aW9uIFRleHR1cmVEZXB0aDJEU2FtcGxlTGV2ZWxXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwg
W3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBsb2QsIG9mZnNldF0pCit7CisgICAgcmV0dXJu
IGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnNhbXBsZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwg
bGV2ZWwoJHtsb2R9KSwgJHtvZmZzZXR9KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGgy
REdhdGhlclJlZChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7
CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LmdhdGhlcigke3NhbXBsZXJ9LCAk
e2xvY2F0aW9ufSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRHYXRoZXJSZWRXaXRo
T2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXRd
KQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5nYXRoZXIoJHtzYW1wbGVy
fSwgJHtsb2NhdGlvbn0sICR7b2Zmc2V0fSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRo
MkRHYXRoZXJDb21wYXJlUmVkKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0
aW9uLCBjb21wYXJlVmFsdWVdKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJl
fS5nYXRoZXJfY29tcGFyZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwgJHtjb21wYXJlVmFsdWV9
KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGgyREdhdGhlckNvbXBhcmVSZWRXaXRoT2Zm
c2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBjb21wYXJlVmFs
dWUsIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LmdhdGhl
cl9jb21wYXJlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCAke2NvbXBhcmVWYWx1ZX0sICR7b2Zm
c2V0fSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRMb2FkKG5vZGUsIHJlc3VsdCwg
W3RleHR1cmUsIGxvY2F0aW9uXSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVy
ZX0ucmVhZCh1aW50Mih1aW50KCR7bG9jYXRpb259LngpLCB1aW50KCR7bG9jYXRpb259LnkpKSwg
dWludCgke2xvY2F0aW9ufS56KSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRMb2Fk
V2l0aE9mZnNldChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBsb2NhdGlvbiwgb2Zmc2V0XSkKK3sK
KyAgICB0aHJvdyBuZXcgRXJyb3IoIkZJWE1FOiBUZXh0dXJlRGVwdGgyRExvYWRXaXRoT2Zmc2V0
IG5lZWRzIGVtdWxhdGlvbi4iKTsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRHZXREaW1l
bnNpb25zKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIG1pcExldmVsLCB3aWR0aFBvaW50ZXIsIGhl
aWdodFBvaW50ZXIsIG51bWJlck9mTGV2ZWxzUG9pbnRlcl0pCit7CisgICAgcmV0dXJuIFsKKyAg
ICAgICAgYCooJHt3aWR0aFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X3dpZHRoKCR7bWlwTGV2
ZWx9KTtgLAorICAgICAgICBgKigke2hlaWdodFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X2hl
aWdodCgke21pcExldmVsfSk7YCwKKyAgICAgICAgYCooJHtudW1iZXJPZkxldmVsc1BvaW50ZXJ9
KSA9ICR7dGV4dHVyZX0uZ2V0X251bV9taXBfbGV2ZWxzKCk7YCwKKyAgICBdLmpvaW4oIlxuIik7
Cit9CisKKy8vIEZJWE1FOiB0ZXh0dXJlIC0+IHRleHR1cmVBcnJheSBmb3IgY29uc2lzdGVuY3k/
CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGUobm9kZSwgcmVzdWx0LCBbdGV4
dHVyZSwgc2FtcGxlciwgbG9jYXRpb25dKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0
ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2NhdGlv
bn0ueikpO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGVXaXRoT2Zm
c2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXRdKQor
eworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwg
JHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiksICR7b2Zmc2V0fSk7YDsKK30KKwor
ZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRBcnJheVNhbXBsZUNtcChub2RlLCByZXN1bHQsIFt0ZXh0
dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgY29tcGFyZVZhbHVlXSkKK3sKKyAgICByZXR1cm4gYCR7
cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlX2NvbXBhcmUoJHtzYW1wbGVyfSwgJHtsb2NhdGlv
bn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiwgJHtjb21wYXJlVmFsdWV9KSk7YDsKK30KKworZnVu
Y3Rpb24gVGV4dHVyZURlcHRoMkRBcnJheVNhbXBsZUNtcFdpdGhPZmZzZXQobm9kZSwgcmVzdWx0
LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIG9mZnNldF0pCit7CisgICAgcmV0dXJuIGAk
e3Jlc3VsdH0gPSAke3RleHR1cmV9LnNhbXBsZV9jb21wYXJlKCR7c2FtcGxlcn0sICR7bG9jYXRp
b259Lnh5LCB1aW50KCR7bG9jYXRpb259LnopLCAke2NvbXBhcmVWYWx1ZX0sICR7b2Zmc2V0fSk7
YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRoMkRBcnJheVNhbXBsZUNtcExldmVsWmVybyhu
b2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgY29tcGFyZVZhbHVlXSkK
K3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlX2NvbXBhcmUoJHtz
YW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiwgJHtjb21wYXJlVmFs
dWV9LCBsZXZlbCgwKSkpO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aDJEQXJyYXlTYW1w
bGVDbXBMZXZlbFplcm9XaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBsZXIs
IGxvY2F0aW9uLCBvZmZzZXRdKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJl
fS5zYW1wbGVfY29tcGFyZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9ufS54eSwgdWludCgke2xvY2F0
aW9ufS56KSwgJHtjb21wYXJlVmFsdWV9LCBsZXZlbCgwKSwgJHtvZmZzZXR9KTtgOworfQorCitm
dW5jdGlvbiBUZXh0dXJlRGVwdGgyREFycmF5U2FtcGxlQmlhcyhub2RlLCByZXN1bHQsIFt0ZXh0
dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgYmlhc10pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0g
PSAke3RleHR1cmV9LnNhbXBsZSgke3NhbXBsZXJ9LCAke2xvY2F0aW9ufS54eSwgdWludCgke2xv
Y2F0aW9ufS56LCBiaWFzKCR7Ymlhc30pKSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVyZURlcHRo
MkRBcnJheVNhbXBsZUJpYXNXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHNhbXBs
ZXIsIGxvY2F0aW9uLCBvZmZzZXQsIGJpYXNdKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0g
JHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2Nh
dGlvbn0ueiksIGJpYXMoJHtiaWFzfSksICR7b2Zmc2V0fSk7YDsKK30KKworZnVuY3Rpb24gVGV4
dHVyZURlcHRoMkRBcnJheVNhbXBsZUdyYWQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxl
ciwgbG9jYXRpb24sIGRkeCwgZGR5XSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4
dHVyZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259Lnh5LCB1aW50KCR7bG9jYXRpb259
LnosIGdyYWRpZW50MmQoJHtkZHh9LCAke2RkeX0pKSk7YDsKK30KKworZnVuY3Rpb24gVGV4dHVy
ZURlcHRoMkRBcnJheVNhbXBsZUdyYWRXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUs
IHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXQsIGJpYXNdKQoreworICAgIHJldHVybiBgJHtyZXN1
bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQo
JHtsb2NhdGlvbn0ueiksIGdyYWRpZW50MmQoJHtkZHh9LCAke2RkeX0pLCAke29mZnNldH0pO2A7
Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGVMZXZlbChub2RlLCByZXN1
bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgbG9kXSkKK3sKKyAgICByZXR1cm4gYCR7
cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259Lnh5LCB1
aW50KCR7bG9jYXRpb259LnosIGxldmVsKCR7bG9kfSkpKTtgOworfQorCitmdW5jdGlvbiBUZXh0
dXJlRGVwdGgyREFycmF5U2FtcGxlTGV2ZWxXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1
cmUsIHNhbXBsZXIsIGxvY2F0aW9uLCBvZmZzZXQsIGJpYXNdKQoreworICAgIHJldHVybiBgJHty
ZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVp
bnQoJHtsb2NhdGlvbn0ueiksIGxldmVsKCR7bG9kfSksICR7b2Zmc2V0fSk7YDsKK30KKworZnVu
Y3Rpb24gVGV4dHVyZURlcHRoMkRBcnJheUdhdGhlclJlZChub2RlLCByZXN1bHQsIFt0ZXh0dXJl
LCBzYW1wbGVyLCBsb2NhdGlvbl0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1
cmV9LmdhdGhlcigke3NhbXBsZXJ9LCAke2xvY2F0aW9ufS54eSwgdWludCgke2xvY2F0aW9ufS56
KSk7YAorfQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGgyREFycmF5R2F0aGVyUmVkV2l0aE9mZnNl
dChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgb2Zmc2V0XSkKK3sK
KyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uZ2F0aGVyKCR7c2FtcGxlcn0sICR7
bG9jYXRpb259Lnh5LCB1aW50KCR7bG9jYXRpb259LnosICR7b2Zmc2V0fSkpO2AKK30KKworZnVu
Y3Rpb24gVGV4dHVyZURlcHRoMkRBcnJheUdhdGhlckNtcFJlZChub2RlLCByZXN1bHQsIFt0ZXh0
dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgY29tcGFyZVZhbHVlXSkKK3sKKyAgICByZXR1cm4gYCR7
cmVzdWx0fSA9ICR7dGV4dHVyZX0uZ2F0aGVyX2NvbXBhcmUoJHtzYW1wbGVyfSwgJHtsb2NhdGlv
bn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiksICR7Y29tcGFyZVZhbHVlfSk7YDsKK30KKworZnVu
Y3Rpb24gVGV4dHVyZURlcHRoMkRBcnJheUdhdGhlckNtcFJlZFdpdGhPZmZzZXQobm9kZSwgcmVz
dWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIGNvbXBhcmVWYWx1ZSwgb2Zmc2V0XSkK
K3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uZ2F0aGVyX2NvbXBhcmUoJHtz
YW1wbGVyfSwgJHtsb2NhdGlvbn0ueHksIHVpbnQoJHtsb2NhdGlvbn0ueiksICR7Y29tcGFyZVZh
bHVlfSwgJHtvZmZzZXR9KTtgOworfQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGgyREFycmF5TG9h
ZChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBsb2NhdGlvbl0pCit7CisgICAgLy8gRklYTUU6IEkn
bSBub3Qgc3VyZSB3aHkgdGhlIFdITFNMIEFQSSB0YWtlcyBhbiBpbnQ0IGZvciB0aGUgbG9jYXRp
b24sIHNvIEknbSBsZWF2aW5nIHVuaW1wbGVtZW50ZWQgZm9yIG5vdy4KKyAgICB0aHJvdyBuZXcg
RXJyb3IoIkltcGxlbWVudCBUZXh0dXJlRGVwdGgyRExvYWQiKTsKK30KKworZnVuY3Rpb24gVGV4
dHVyZURlcHRoMkRBcnJheUxvYWRXaXRoT2Zmc2V0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIGxv
Y2F0aW9uLCBvZmZzZXRdKQoreworICAgIC8vIEZJWE1FOiBJJ20gbm90IHN1cmUgd2h5IHRoZSBX
SExTTCBBUEkgdGFrZXMgYW4gaW50NCBmb3IgdGhlIGxvY2F0aW9uLCBzbyBJJ20gbGVhdmluZyB1
bmltcGxlbWVudGVkIGZvciBub3cuCisgICAgdGhyb3cgbmV3IEVycm9yKCJJbXBsZW1lbnQgVGV4
dHVyZURlcHRoMkRMb2FkV2l0aE9mZnNldCIpOworfQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGgy
REFycmF5R2V0RGltZW5zaW9ucyhub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBtaXBMZXZlbCwgd2lk
dGhQb2ludGVyLCBoZWlnaHRQb2ludGVyLCBudW1FbGVtZW50c1BvaW50ZXIsIG51bWJlckxldmVs
c1BvaW50ZXJdKQoreworICAgIHJldHVybiBbCisgICAgICAgIGAqKCR7d2lkdGhQb2ludGVyfSkg
PSAke3RleHR1cmV9LmdldF93aWR0aCgke21pcExldmVsfSk7YCwKKyAgICAgICAgYCooJHtoZWln
aHRQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF9oZWlnaHQoJHttaXBMZXZlbH0pO2AsCisgICAg
ICAgIGAqKCR7bnVtRWxlbWVudHNQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF9hcnJheV9zaXpl
KCk7YCwKKyAgICAgICAgYCooJHtudW1iZXJMZXZlbHNQb2ludGVyfSkgPSAke3RleHR1cmV9Lmdl
dF9udW1fbWlwX2xldmVscygpO2AKKyAgICBdLmpvaW4oIlxuIik7Cit9CisKK2Z1bmN0aW9uIFRl
eHR1cmVEZXB0aEN1YmVTYW1wbGUobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9j
YXRpb25dKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGUoJHtz
YW1wbGVyfSwgJHtsb2NhdGlvbn0pO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aEN1YmVT
YW1wbGVDbXAobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIGNvbXBh
cmVWYWx1ZV0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnNhbXBsZV9j
b21wYXJlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCAke2NvbXBhcmVWYWx1ZX0pO2A7Cit9CisK
K2Z1bmN0aW9uIFRleHR1cmVEZXB0aEN1YmVTYW1wbGVDbXBMZXZlbFplcm8obm9kZSwgcmVzdWx0
LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9jYXRpb24sIGNvbXBhcmVWYWx1ZV0pCit7CisgICAgcmV0
dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnNhbXBsZV9jb21wYXJlKCR7c2FtcGxlcn0sICR7
bG9jYXRpb259LCAke2NvbXBhcmVWYWx1ZX0sIGxldmVsKDApKTtgOworfQorCitmdW5jdGlvbiBU
ZXh0dXJlRGVwdGhDdWJlU2FtcGxlQmlhcyhub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVy
LCBsb2NhdGlvbiwgYmlhc10pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9
LnNhbXBsZV9iaWFzKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCBiaWFzKCR7Ymlhc30pKTtgOwor
fQorCitmdW5jdGlvbiBUZXh0dXJlRGVwdGhDdWJlU2FtcGxlR3JhZChub2RlLCByZXN1bHQsIFt0
ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlvbiwgZGR4LCBkZHldKQoreworICAgIHJldHVybiBgJHty
ZXN1bHR9ID0gJHt0ZXh0dXJlfS5zYW1wbGVfYmlhcygke3NhbXBsZXJ9LCAke2xvY2F0aW9ufSwg
Z3JhZGllbnQyZCgke2RkeH0sICR7ZGR5fSkpO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0
aEN1YmVTYW1wbGVMZXZlbChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBzYW1wbGVyLCBsb2NhdGlv
biwgbG9kXSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0uc2FtcGxlX2Jp
YXMoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0sIGxldmVsKCR7bG9kfSkpO2A7Cit9CisKK2Z1bmN0
aW9uIFRleHR1cmVEZXB0aEN1YmVHYXRoZXJSZWQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2Ft
cGxlciwgbG9jYXRpb25dKQoreworICAgIHJldHVybiBgJHtyZXN1bHR9ID0gJHt0ZXh0dXJlfS5n
YXRoZXIoJHtzYW1wbGVyfSwgJHtsb2NhdGlvbn0pO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVE
ZXB0aEN1YmVHYXRoZXJDbXBSZWQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgc2FtcGxlciwgbG9j
YXRpb24sIGNvbXBhcmVWYWx1ZV0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1
cmV9LmdhdGhlcl9jb21wYXJlKCR7c2FtcGxlcn0sICR7bG9jYXRpb259LCAke2NvbXBhcmVWYWx1
ZX0pO2A7Cit9CisKK2Z1bmN0aW9uIFRleHR1cmVEZXB0aEN1YmVHZXREaW1lbnNpb25zKG5vZGUs
IHJlc3VsdCwgW3RleHR1cmUsIG1pcExldmVsLCB3aWR0aFBvaW50ZXIsIGhlaWdodFBvaW50ZXIs
IG51bWJlck9mTGV2ZWxzUG9pbnRlcl0pCit7CisgICAgcmV0dXJuIFsKKyAgICAgICAgYCooJHt3
aWR0aFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X3dpZHRoKCR7bWlwTGV2ZWx9KTtgLAorICAg
ICAgICBgKigke2hlaWdodFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X2hlaWdodCgke21pcExl
dmVsfSk7YCwKKyAgICAgICAgYCooJHtudW1iZXJPZkxldmVsc1BvaW50ZXJ9KSA9ICR7dGV4dHVy
ZX0uZ2V0X251bV9taXBfbGV2ZWxzKCk7YAorICAgIF0uam9pbigiXG4iKTsKK30KKworZnVuY3Rp
b24gUldUZXh0dXJlRGVwdGgyREdldERpbWVuc2lvbnMobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwg
d2lkdGhQb2ludGVyLCBoZWlnaHRQb2ludGVyXSkKK3sKKyAgICByZXR1cm4gWworICAgICAgICBg
Kigke3dpZHRoUG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRfd2lkdGgoKTtgLAorICAgICAgICBg
Kigke2hlaWdodFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X2hlaWdodCgpO2AsCisgICAgXS5q
b2luKCJcbiIpOworfQorCitmdW5jdGlvbiBSV1RleHR1cmVEZXB0aDJER2V0RGltZW5zaW9uc0Zs
b2F0KG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIHdpZHRoUG9pbnRlciwgaGVpZ2h0UG9pbnRlcl0p
Cit7CisgICAgcmV0dXJuIFsKKyAgICAgICAgYCooJHt3aWR0aFBvaW50ZXJ9KSA9IGZsb2F0KCR7
dGV4dHVyZX0uZ2V0X3dpZHRoKCkpO2AsCisgICAgICAgIGAqKCR7aGVpZ2h0UG9pbnRlcn0pID0g
ZmxvYXQoJHt0ZXh0dXJlfS5nZXRfaGVpZ2h0KCkpO2AsCisgICAgXS5qb2luKCJcbiIpOworfQor
CitmdW5jdGlvbiBSV1RleHR1cmVEZXB0aDJETG9hZChub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCBs
b2NhdGlvbl0pCit7CisgICAgcmV0dXJuIGAke3Jlc3VsdH0gPSAke3RleHR1cmV9LnJlYWQodWlu
dDIodWludCgke2xvY2F0aW9ufS54KSwgdWludCgke2xvY2F0aW9ufS55KSkpO2A7Cit9CisKK2Z1
bmN0aW9uIFJXVGV4dHVyZURlcHRoMkRTdG9yZShub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCB2YWx1
ZSwgbG9jYXRpb25dKQoreworICAgIC8vIEl0IGlzbid0IGRvY3VtZW50ZWQgdGhhdCBzdWNoIGEg
ZnVuY3Rpb24gZXhpc3RzIGluIE1TTC4KKyAgICB0aHJvdyBuZXcgRXJyb3IoIkltcGxlbWVudCBS
V1RleHR1cmVEZXB0aDJEU3RvcmUiKTsKK30KKworZnVuY3Rpb24gUldUZXh0dXJlRGVwdGgyREFy
cmF5R2V0RGltZW5zaW9ucyhub2RlLCByZXN1bHQsIFt0ZXh0dXJlLCB3aWR0aFBvaW50ZXIsIGhl
aWdodFBvaW50ZXIsIG51bUVsZW1lbnRzUG9pbnRlcl0pCit7CisgICAgcmV0dXJuIFsKKyAgICAg
ICAgYCooJHt3aWR0aFBvaW50ZXJ9KSA9ICR7dGV4dHVyZX0uZ2V0X3dpZHRoKCk7YCwKKyAgICAg
ICAgYCooJHtoZWlnaHRQb2ludGVyfSkgPSAke3RleHR1cmV9LmdldF9oZWlnaHQoKTtgLAorICAg
ICAgICBgKigke251bUVsZW1lbnRzUG9pbnRlcn0pID0gJHt0ZXh0dXJlfS5nZXRfYXJyYXlfc2l6
ZSgpO2AsCisgICAgXS5qb2luKCJcbiIpOworfQorCitmdW5jdGlvbiBSV1RleHR1cmVEZXB0aDJE
QXJyYXlHZXREaW1lbnNpb25zRmxvYXQobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwgd2lkdGhQb2lu
dGVyLCBoZWlnaHRQb2ludGVyLCBudW1FbGVtZW50c1BvaW50ZXJdKQoreworICAgIHJldHVybiBb
CisgICAgICAgIGAqKCR7d2lkdGhQb2ludGVyfSkgPSBmbG9hdCgke3RleHR1cmV9LmdldF93aWR0
aCgpKTtgLAorICAgICAgICBgKigke2hlaWdodFBvaW50ZXJ9KSA9IGZsb2F0KCR7dGV4dHVyZX0u
Z2V0X2hlaWdodCgpKTtgLAorICAgICAgICBgKigke251bUVsZW1lbnRzUG9pbnRlcn0pID0gJHt0
ZXh0dXJlfS5nZXRfYXJyYXlfc2l6ZSgpO2AsCisgICAgXS5qb2luKCJcbiIpOworfQorCitmdW5j
dGlvbiBSV1RleHR1cmVEZXB0aDJEQXJyYXlMb2FkKG5vZGUsIHJlc3VsdCwgW3RleHR1cmUsIGxv
Y2F0aW9uXSkKK3sKKyAgICByZXR1cm4gYCR7cmVzdWx0fSA9ICR7dGV4dHVyZX0ucmVhZCh1aW50
Mih1aW50KCR7bG9jYXRpb259LngpLCB1aW50KCR7bG9jYXRpb259LnkpKSk7YDsKK30KKworZnVu
Y3Rpb24gUldUZXh0dXJlRGVwdGgyREFycmF5U3RvcmUobm9kZSwgcmVzdWx0LCBbdGV4dHVyZSwg
dmFsdWUsIGxvY2F0aW9uXSkKK3sKKyAgICAvLyBJdCBpc24ndCBkb2N1bWVudGVkIHRoYXQgc3Vj
aCBhIGZ1bmN0aW9uIGV4aXN0cyBpbiBNU0wuCisgICAgdGhyb3cgbmV3IEVycm9yKCJJbXBsZW1l
bnQgUldUZXh0dXJlRGVwdGgyREFycmF5U3RvcmUiKTsKK30KKworZnVuY3Rpb24gbXNsTmF0aXZl
RnVuY3Rpb25DYWxsKG5vZGUsIHJlc3VsdCwgYXJncykKIHsKICAgICBjb25zdCBrZXkgPSBub2Rl
LnRvU3RyaW5nKCk7CiAKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoZSBzYW1wbGluZyBmdW5j
dGlvbnMuCiAgICAgLy8gRklYTUU6IEltcGxlbWVudCBmdW5jdGlvbnMgbGlrZSBmMTZ0b2YzMiwg
YXNmbG9hdCwgZXRjLgogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGVzdHMgZm9yIGFsbCBuYXRp
dmUgZnVuY3Rpb25zIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk1
MzUuCiAgICAgY29uc3QgZnVuY3Rpb25zV2l0aFRoZVNhbWVDYWxsaW5nQ29udmVudGlvbiA9IHsK
QEAgLTcyLDExICs4ODcsMTc5IEBAIGZ1bmN0aW9uIG1zbE5hdGl2ZUZ1bmN0aW9uQ2FsbChub2Rl
LCByZXN1bHRWYXJpYWJsZSwgYXJncykKICAgICB9CiAKICAgICBjb25zdCBmdW5jdGlvbnNXaXRo
RGlmZmVyZW50Q2FsbGluZ0NvbnZlbnRpb25zID0gewotICAgICAgICAibmF0aXZlIHVpbnQgZjMy
dG9mMTYoZmxvYXQpIiA6ICgpID0+IGAke3Jlc3VsdFZhcmlhYmxlfSA9IHVpbnQoc3RhdGljX2Nh
c3Q8dXNob3J0PihoYWxmKCR7YXJnc1swXX0pKSk7YCwKLSAgICAgICAgIm5hdGl2ZSBmbG9hdCBm
MTZ0b2YzMih1aW50KSIgOiAoKSA9PiBgJHtyZXN1bHRWYXJpYWJsZX0gPSBmbG9hdChzdGF0aWNf
Y2FzdDxoYWxmPih1c2hvcnQoJHthcmdzWzBdfSkpKTtgCisgICAgICAgICJuYXRpdmUgdWludCBm
MzJ0b2YxNihmbG9hdCkiIDogKG5vZGUsIHJlc3VsdFZhcmlhYmxlLCBhcmdzKSA9PiBgJHtyZXN1
bHRWYXJpYWJsZX0gPSB1aW50KHN0YXRpY19jYXN0PHVzaG9ydD4oaGFsZigke2FyZ3NbMF19KSkp
O2AsCisgICAgICAgICJuYXRpdmUgZmxvYXQgZjE2dG9mMzIodWludCkiIDogKG5vZGUsIHJlc3Vs
dFZhcmlhYmxlLCBhcmdzKSA9PiBgJHtyZXN1bHRWYXJpYWJsZX0gPSBmbG9hdChzdGF0aWNfY2Fz
dDxoYWxmPih1c2hvcnQoJHthcmdzWzBdfSkpKTtgCiAgICAgfTsKKworICAgIC8vIEZJWE1FOiBJ
IGNvdWxkIHVzZSB0aGUgZnVsbCB2YXJpYWJsZSBuYW1lIGJ1dCBJIHdhbnRlZCB0byBzYXZlIHR5
cGluZy4KKyAgICBjb25zdCBmcyA9IGZ1bmN0aW9uc1dpdGhEaWZmZXJlbnRDYWxsaW5nQ29udmVu
dGlvbnM7CisKKyAgICAvLyBUaGlzIGxvb3AgaXMgY29waWVkIGZyb20gSW50cmluc2ljcy5qcwor
ICAgIGZvciAobGV0IHR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwg
InNob3J0IiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgZm9yIChsZXQgbGVu
Z3RoVmFyaWFibGUgb2YgW2BgLCBgMmAsIGAzYCwgYDRgXSkgeworICAgICAgICAgICAgY29uc3Qg
bGVuZ3RoID0gbGVuZ3RoVmFyaWFibGU7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0k
e2xlbmd0aH0gU2FtcGxlKFRleHR1cmUxRDwke3R5cGV9JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0
IGxvY2F0aW9uKWBdID0gVGV4dHVyZTFEU2FtcGxlOworICAgICAgICAgICAgZnNbYG5hdGl2ZSAk
e3R5cGV9JHtsZW5ndGh9IFNhbXBsZShUZXh0dXJlMUQ8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxl
cixmbG9hdCBsb2NhdGlvbixpbnQgb2Zmc2V0KWBdID0gVGV4dHVyZTFEU2FtcGxlV2l0aE9mZnNl
dDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBMb2FkKFRleHR1cmUx
RDwke3R5cGV9JHtsZW5ndGh9PixpbnQyIGxvY2F0aW9uKWBdID0gVGV4dHVyZTFETG9hZDsKKyAg
ICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBMb2FkKFRleHR1cmUxRDwke3R5
cGV9JHtsZW5ndGh9PixpbnQyIGxvY2F0aW9uLGludCBvZmZzZXQpYF0gPSBUZXh0dXJlMURMb2Fk
V2l0aE9mZnNldDsKKyAgICAgICAgICAgIGZzWyBgbmF0aXZlIHZvaWQgR2V0RGltZW5zaW9ucyhU
ZXh0dXJlMUQ8JHt0eXBlfSR7bGVuZ3RofT4sdWludCBNaXBMZXZlbCx1aW50KiB0aHJlYWQgV2lk
dGgsdWludCogdGhyZWFkIE51bWJlck9mTGV2ZWxzKWBdID0gVGV4dHVyZTFER2V0RGltZW5zaW9u
czsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBTYW1wbGUoVGV4dHVy
ZTFEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24pYF0gPSBU
ZXh0dXJlMURBcnJheVNhbXBsZTsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVu
Z3RofSBTYW1wbGUoVGV4dHVyZTFEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9h
dDIgbG9jYXRpb24saW50IG9mZnNldClgXSA9IFRleHR1cmUxREFycmF5U2FtcGxlV2l0aE9mZnNl
dDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBMb2FkKFRleHR1cmUx
REFycmF5PCR7dHlwZX0ke2xlbmd0aH0+LGludDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlMURBcnJh
eUxvYWQ7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0ke2xlbmd0aH0gTG9hZChUZXh0
dXJlMURBcnJheTwke3R5cGV9JHtsZW5ndGh9PixpbnQzIGxvY2F0aW9uLGludCBvZmZzZXQpYF0g
PSBUZXh0dXJlMURBcnJheUxvYWRXaXRoT2Zmc2V0OworICAgICAgICAgICAgZnNbYG5hdGl2ZSB2
b2lkIEdldERpbWVuc2lvbnMoVGV4dHVyZTFEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sdWludCBN
aXBMZXZlbCx1aW50KiB0aHJlYWQgV2lkdGgsdWludCogdGhyZWFkIEVsZW1lbnRzLHVpbnQqIHRo
cmVhZCBOdW1iZXJPZkxldmVscylgXSA9IFRleHR1cmUxREFycmF5R2V0RGltZW5zaW9uczsKKyAg
ICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBTYW1wbGUoVGV4dHVyZTJEPCR7
dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uKWBdID0gVGV4dHVyZTJEU2Ft
cGxlOworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZShUZXh0
dXJlMkQ8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24saW50MiBvZmZz
ZXQpYF0gPSBUZXh0dXJlMkRTYW1wbGVXaXRoT2Zmc2V0OworICAgICAgICAgICAgZnNbYG5hdGl2
ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZUJpYXMoVGV4dHVyZTJEPCR7dHlwZX0ke2xlbmd0aH0+
LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLGZsb2F0IEJpYXMpYF0gPSBUZXh0dXJlMkRTYW1wbGVC
aWFzOworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZUJpYXMo
VGV4dHVyZTJEPCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLGZsb2F0
IEJpYXMsaW50MiBvZmZzZXQpYF0gPSBUZXh0dXJlMkRTYW1wbGVCaWFzV2l0aE9mZnNldDsKKyAg
ICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBTYW1wbGVHcmFkKFRleHR1cmUy
RDwke3R5cGV9JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbixmbG9hdDIgRERYLGZs
b2F0MiBERFkpYF0gPSBUZXh0dXJlMkRTYW1wbGVHcmFkOworICAgICAgICAgICAgZnNbYG5hdGl2
ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZUdyYWQoVGV4dHVyZTJEPCR7dHlwZX0ke2xlbmd0aH0+
LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLGZsb2F0MiBERFgsZmxvYXQyIEREWSxpbnQyIG9mZnNl
dClgXSA9IFRleHR1cmUyRFNhbXBsZUdyYWRXaXRoT2Zmc2V0OworICAgICAgICAgICAgZnNbYG5h
dGl2ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZUxldmVsKFRleHR1cmUyRDwke3R5cGV9JHtsZW5n
dGh9PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbixmbG9hdCBMT0QpYF0gPSBUZXh0dXJlMkRTYW1w
bGVMZXZlbDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBTYW1wbGVM
ZXZlbChUZXh0dXJlMkQ8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24s
ZmxvYXQgTE9ELGludDIgb2Zmc2V0KWBdID0gVGV4dHVyZTJEU2FtcGxlTGV2ZWxXaXRoT2Zmc2V0
OworICAgICAgICAgICAgLy8gRklYTUU6IE5vdCBhbGwgZ2F0aGVyIGZ1bmN0aW9ucyBhcmUgYXZh
aWxhYmxlIGZvciBhbGwgdHlwZSBhcmd1bWVudCBsZW5ndGhzLCBidXQgdGhlIGNoZWNrZXIgaGFz
IGFscmVhZHkgZW5zdXJlZCB0aGF0IHRoZXkgYXJlbid0IGJlaW5nIHVzZWQsIHNvIEknbSBiZWlu
ZyBsYXp5IGZvciBub3cgYW5kIGp1c3QgaW5zZXJ0aW5nICphbGwqIG9mIHRoZW0uCisgICAgICAg
ICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlcihUZXh0dXJlMkQ8JHt0eXBlfSR7bGVuZ3Ro
fT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24pYF0gPSBUZXh0dXJlMkRHYXRoZXJSZWQ7CisgICAg
ICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlcihUZXh0dXJlMkQ8JHt0eXBlfSR7bGVu
Z3RofT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24saW50MiBvZmZzZXQpYF0gPSBUZXh0dXJlMkRH
YXRoZXJSZWRXaXRoT2Zmc2V0OworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRo
ZXJSZWQoVGV4dHVyZTJEPCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9u
KWBdID0gVGV4dHVyZTJER2F0aGVyUmVkOworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9
NCBHYXRoZXJSZWQoVGV4dHVyZTJEPCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQyIGxv
Y2F0aW9uLGludDIgb2Zmc2V0KWBdID0gVGV4dHVyZTJER2F0aGVyUmVkV2l0aE9mZnNldDsKKyAg
ICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyR3JlZW4oVGV4dHVyZTJEPCR7dHlw
ZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uKWBdID0gVGV4dHVyZTJER2F0aGVy
R3JlZW47CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckdyZWVuKFRleHR1
cmUyRDwke3R5cGV9JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbixpbnQyIG9mZnNl
dClgXSA9IFRleHR1cmUyREdhdGhlckdyZWVuV2l0aE9mZnNldDsKKyAgICAgICAgICAgIGZzW2Bu
YXRpdmUgJHt0eXBlfTQgR2F0aGVyQmx1ZShUZXh0dXJlMkQ8JHt0eXBlfSR7bGVuZ3RofT4sc2Ft
cGxlcixmbG9hdDIgbG9jYXRpb24pYF0gPSBUZXh0dXJlMkRHYXRoZXJCbHVlOworICAgICAgICAg
ICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRoZXJCbHVlKFRleHR1cmUyRDwke3R5cGV9JHtsZW5n
dGh9PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbixpbnQyIG9mZnNldClgXSA9IFRleHR1cmUyREdh
dGhlckJsdWVXaXRoT2Zmc2V0OworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRo
ZXJBbHBoYShUZXh0dXJlMkQ8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDIgbG9jYXRp
b24pYF0gPSBUZXh0dXJlMkRHYXRoZXJBbHBoYTsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0
eXBlfTQgR2F0aGVyQWxwaGEoVGV4dHVyZTJEPCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxv
YXQyIGxvY2F0aW9uLGludDIgb2Zmc2V0KWBdID0gVGV4dHVyZTJER2F0aGVyQWxwaGFXaXRoT2Zm
c2V0OworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IExvYWQoVGV4dHVy
ZTJEPCR7dHlwZX0ke2xlbmd0aH0+LGludDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlMkRMb2FkOwor
ICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IExvYWQoVGV4dHVyZTJEPCR7
dHlwZX0ke2xlbmd0aH0+LGludDMgbG9jYXRpb24saW50MiBvZmZzZXQpYF0gPSBUZXh0dXJlMkRM
b2FkV2l0aE9mZnNldDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgdm9pZCBHZXREaW1lbnNpb25z
KFRleHR1cmUyRDwke3R5cGV9JHtsZW5ndGh9Pix1aW50IE1pcExldmVsLHVpbnQqIHRocmVhZCBX
aWR0aCx1aW50KiB0aHJlYWQgSGVpZ2h0LHVpbnQqIHRocmVhZCBOdW1iZXJPZkxldmVscylgXSA9
IFRleHR1cmUyREdldERpbWVuc2lvbnM7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0k
e2xlbmd0aH0gU2FtcGxlKFRleHR1cmUyREFycmF5PCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIs
ZmxvYXQzIGxvY2F0aW9uKWBdID0gVGV4dHVyZTJEQXJyYXlTYW1wbGU7CisgICAgICAgICAgICBm
c1tgbmF0aXZlICR7dHlwZX0ke2xlbmd0aH0gU2FtcGxlKFRleHR1cmUyREFycmF5PCR7dHlwZX0k
e2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGludDIgb2Zmc2V0KWBdID0gVGV4dHVy
ZTJEQXJyYXlTYW1wbGVXaXRoT2Zmc2V0OworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9
JHtsZW5ndGh9IFNhbXBsZUJpYXMoVGV4dHVyZTJEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sc2Ft
cGxlcixmbG9hdDMgbG9jYXRpb24sZmxvYXQgQmlhcylgXSA9IFRleHR1cmUyREFycmF5U2FtcGxl
QmlhczsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBTYW1wbGVCaWFz
KFRleHR1cmUyREFycmF5PCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9u
LGZsb2F0IEJpYXMsaW50MiBvZmZzZXQpYF0gPSBUZXh0dXJlMkRBcnJheVNhbXBsZUJpYXNXaXRo
T2Zmc2V0OworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZUdy
YWQoVGV4dHVyZTJEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRp
b24sZmxvYXQyIEREWCxmbG9hdDIgRERZKWBdID0gVGV4dHVyZTJEQXJyYXlTYW1wbGVHcmFkOwor
ICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZUdyYWQoVGV4dHVy
ZTJEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24sZmxvYXQy
IEREWCxmbG9hdDIgRERZLGludDIgb2Zmc2V0KWBdID0gVGV4dHVyZTJEQXJyYXlTYW1wbGVHcmFk
V2l0aE9mZnNldDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBTYW1w
bGVMZXZlbChUZXh0dXJlMkRBcnJheTwke3R5cGV9JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0MyBs
b2NhdGlvbixmbG9hdCBMT0QpYF0gPSBUZXh0dXJlMkRBcnJheVNhbXBsZUxldmVsOworICAgICAg
ICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IFNhbXBsZUxldmVsKFRleHR1cmUyREFy
cmF5PCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGZsb2F0IExPRCxp
bnQyIG9mZnNldClgXSA9IFRleHR1cmUyREFycmF5U2FtcGxlTGV2ZWxXaXRoT2Zmc2V0OworICAg
ICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRoZXIoVGV4dHVyZTJEQXJyYXk8JHt0eXBl
fSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlMkRBcnJheUdh
dGhlclJlZDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyKFRleHR1cmUy
REFycmF5PCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGludDIgb2Zm
c2V0KWBdID0gVGV4dHVyZTJEQXJyYXlHYXRoZXJSZWRXaXRoT2Zmc2V0OworICAgICAgICAgICAg
ZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRoZXJSZWQoVGV4dHVyZTJEQXJyYXk8JHt0eXBlfSR7bGVu
Z3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlMkRBcnJheUdhdGhlclJl
ZDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyUmVkKFRleHR1cmUyREFy
cmF5PCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGludDIgb2Zmc2V0
KWBdID0gVGV4dHVyZTJEQXJyYXlHYXRoZXJSZWRXaXRoT2Zmc2V0OworICAgICAgICAgICAgZnNb
YG5hdGl2ZSAke3R5cGV9NCBHYXRoZXJHcmVlbihUZXh0dXJlMkRBcnJheTwke3R5cGV9JHtsZW5n
dGh9PixzYW1wbGVyLGZsb2F0MyBsb2NhdGlvbilgXSA9IFRleHR1cmUyREFycmF5R2F0aGVyR3Jl
ZW47CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckdyZWVuKFRleHR1cmUy
REFycmF5PCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGludDIgb2Zm
c2V0KWBdID0gVGV4dHVyZTJEQXJyYXlHYXRoZXJHcmVlbldpdGhPZmZzZXQ7CisgICAgICAgICAg
ICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckJsdWUoVGV4dHVyZTJEQXJyYXk8JHt0eXBlfSR7
bGVuZ3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlMkRBcnJheUdhdGhl
ckJsdWU7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckJsdWUoVGV4dHVy
ZTJEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24saW50MiBv
ZmZzZXQpYF0gPSBUZXh0dXJlMkRBcnJheUdhdGhlckJsdWVXaXRoT2Zmc2V0OworICAgICAgICAg
ICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRoZXJBbHBoYShUZXh0dXJlMkRBcnJheTwke3R5cGV9
JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0MyBsb2NhdGlvbilgXSA9IFRleHR1cmUyREFycmF5R2F0
aGVyQWxwaGE7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckFscGhhKFRl
eHR1cmUyREFycmF5PCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGlu
dDIgb2Zmc2V0KWBdID0gVGV4dHVyZTJEQXJyYXlHYXRoZXJBbHBoYVdpdGhPZmZzZXQ7CisgICAg
ICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0ke2xlbmd0aH0gTG9hZChUZXh0dXJlMkRBcnJheTwk
e3R5cGV9JHtsZW5ndGh9PixpbnQ0IGxvY2F0aW9uKWBdID0gVGV4dHVyZTJEQXJyYXlMb2FkOwor
ICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IExvYWQoVGV4dHVyZTJEQXJy
YXk8JHt0eXBlfSR7bGVuZ3RofT4saW50NCBsb2NhdGlvbixpbnQyIG9mZnNldClgXSA9IFRleHR1
cmUyREFycmF5TG9hZFdpdGhPZmZzZXQ7CisgICAgICAgICAgICBmc1tgbmF0aXZlIHZvaWQgR2V0
RGltZW5zaW9ucyhUZXh0dXJlMkRBcnJheTwke3R5cGV9JHtsZW5ndGh9Pix1aW50IE1pcExldmVs
LHVpbnQqIHRocmVhZCBXaWR0aCx1aW50KiB0aHJlYWQgSGVpZ2h0LHVpbnQqIHRocmVhZCBFbGVt
ZW50cyx1aW50KiB0aHJlYWQgTnVtYmVyT2ZMZXZlbHMpYF0gPSBUZXh0dXJlMkRBcnJheUdldERp
bWVuc2lvbnM7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0ke2xlbmd0aH0gU2FtcGxl
KFRleHR1cmUzRDwke3R5cGV9JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0MyBsb2NhdGlvbilgXSA9
IFRleHR1cmUzRFNhbXBsZTsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3Ro
fSBTYW1wbGUoVGV4dHVyZTNEPCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0
aW9uLGludDMgb2Zmc2V0KWBdID0gVGV4dHVyZTNEU2FtcGxlV2l0aE9mZnNldDsKKyAgICAgICAg
ICAgIGZzW2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBMb2FkKFRleHR1cmUzRDwke3R5cGV9JHts
ZW5ndGh9PixpbnQ0IGxvY2F0aW9uKWBdID0gVGV4dHVyZTNETG9hZDsKKyAgICAgICAgICAgIGZz
W2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBMb2FkKFRleHR1cmUzRDwke3R5cGV9JHtsZW5ndGh9
PixpbnQ0IGxvY2F0aW9uLGludDMgb2Zmc2V0KWBdID0gVGV4dHVyZTNETG9hZFdpdGhPZmZzZXQ7
CisgICAgICAgICAgICBmc1tgbmF0aXZlIHZvaWQgR2V0RGltZW5zaW9ucyhUZXh0dXJlM0Q8JHt0
eXBlfSR7bGVuZ3RofT4sdWludCBNaXBMZXZlbCx1aW50KiB0aHJlYWQgV2lkdGgsdWludCogdGhy
ZWFkIEhlaWdodCx1aW50KiB0aHJlYWQgRGVwdGgsdWludCogdGhyZWFkIE51bWJlck9mTGV2ZWxz
KWBdID0gVGV4dHVyZTNER2V0RGltZW5zaW9uczsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgJHt0
eXBlfSR7bGVuZ3RofSBTYW1wbGUoVGV4dHVyZUN1YmU8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxl
cixmbG9hdDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlQ3ViZVNhbXBsZTsKKyAgICAgICAgICAgIGZz
W2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBTYW1wbGVCaWFzKFRleHR1cmVDdWJlPCR7dHlwZX0k
e2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGZsb2F0IEJpYXMpYF0gPSBUZXh0dXJl
Q3ViZVNhbXBsZUJpYXM7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0ke2xlbmd0aH0g
U2FtcGxlR3JhZChUZXh0dXJlQ3ViZTwke3R5cGV9JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0MyBs
b2NhdGlvbixmbG9hdDMgRERYLGZsb2F0MyBERFkpYF0gPSBUZXh0dXJlQ3ViZVNhbXBsZUdyYWQ7
CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0ke2xlbmd0aH0gU2FtcGxlTGV2ZWwoVGV4
dHVyZUN1YmU8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24sZmxvYXQg
TE9EKWBdID0gVGV4dHVyZUN1YmVTYW1wbGVMZXZlbDsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUg
JHt0eXBlfTQgR2F0aGVyKFRleHR1cmVDdWJlPCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxv
YXQzIGxvY2F0aW9uKWBdID0gVGV4dHVyZUN1YmVHYXRoZXJSZWQ7CisgICAgICAgICAgICBmc1tg
bmF0aXZlICR7dHlwZX00IEdhdGhlclJlZChUZXh0dXJlQ3ViZTwke3R5cGV9JHtsZW5ndGh9Pixz
YW1wbGVyLGZsb2F0MyBsb2NhdGlvbilgXSA9IFRleHR1cmVDdWJlR2F0aGVyUmVkOworICAgICAg
ICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRoZXJHcmVlbihUZXh0dXJlQ3ViZTwke3R5cGV9
JHtsZW5ndGh9PixzYW1wbGVyLGZsb2F0MyBsb2NhdGlvbilgXSA9IFRleHR1cmVDdWJlR2F0aGVy
R3JlZW47CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckJsdWUoVGV4dHVy
ZUN1YmU8JHt0eXBlfSR7bGVuZ3RofT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24pYF0gPSBUZXh0
dXJlQ3ViZUdhdGhlckJsdWU7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhl
ckFscGhhKFRleHR1cmVDdWJlPCR7dHlwZX0ke2xlbmd0aH0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0
aW9uKWBdID0gVGV4dHVyZUN1YmVHYXRoZXJBbHBoYTsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUg
dm9pZCBHZXREaW1lbnNpb25zKFRleHR1cmVDdWJlPCR7dHlwZX0ke2xlbmd0aH0+LHVpbnQgTWlw
TGV2ZWwsdWludCogdGhyZWFkIFdpZHRoLHVpbnQqIHRocmVhZCBIZWlnaHQsdWludCogdGhyZWFk
IE51bWJlck9mTGV2ZWxzKWBdID0gVGV4dHVyZUN1YmVHZXREaW1lbnNpb25zOworICAgICAgICAg
ICAgZnNbYG5hdGl2ZSB2b2lkIEdldERpbWVuc2lvbnMoUldUZXh0dXJlMUQ8JHt0eXBlfSR7bGVu
Z3RofT4sdWludCogdGhyZWFkIFdpZHRoKWBdID0gUldUZXh0dXJlMURHZXREaW1lbnNpb25zOwor
ICAgICAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIEdldERpbWVuc2lvbnMoUldUZXh0dXJlMUQ8JHt0
eXBlfSR7bGVuZ3RofT4sZmxvYXQqIHRocmVhZCBXaWR0aClgXSA9IFJXVGV4dHVyZTFER2V0RGlt
ZW5zaW9uc0Zsb2F0OworICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IExv
YWQoUldUZXh0dXJlMUQ8JHt0eXBlfSR7bGVuZ3RofT4saW50IGxvY2F0aW9uKWBdID0gUldUZXh0
dXJlMURMb2FkOworICAgICAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIFN0b3JlKFJXVGV4dHVyZTFE
PCR7dHlwZX0ke2xlbmd0aH0+LCR7dHlwZX0ke2xlbmd0aH0sdWludCBsb2NhdGlvbilgXSA9IFJX
VGV4dHVyZTFEU3RvcmU7CisgICAgICAgICAgICBmc1tgbmF0aXZlIHZvaWQgR2V0RGltZW5zaW9u
cyhSV1RleHR1cmUxREFycmF5PCR7dHlwZX0ke2xlbmd0aH0+LHVpbnQqIHRocmVhZCBXaWR0aCx1
aW50KiB0aHJlYWQgRWxlbWVudHMpYF0gPSBSV1RleHR1cmUxREFycmF5R2V0RGltZW5zaW9uczsK
KyAgICAgICAgICAgIGZzW2BuYXRpdmUgdm9pZCBHZXREaW1lbnNpb25zKFJXVGV4dHVyZTFEQXJy
YXk8JHt0eXBlfSR7bGVuZ3RofT4sZmxvYXQqIHRocmVhZCBXaWR0aCx1aW50KiB0aHJlYWQgRWxl
bWVudHMpYF0gPSBSV1RleHR1cmUxREFycmF5R2V0RGltZW5zaW9uc0Zsb2F0OworICAgICAgICAg
ICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IExvYWQoUldUZXh0dXJlMURBcnJheTwke3R5
cGV9JHtsZW5ndGh9PixpbnQyIGxvY2F0aW9uKWBdID0gUldUZXh0dXJlMURBcnJheUxvYWQ7Cisg
ICAgICAgICAgICBmc1tgbmF0aXZlIHZvaWQgU3RvcmUoUldUZXh0dXJlMURBcnJheTwke3R5cGV9
JHtsZW5ndGh9Piwke3R5cGV9JHtsZW5ndGh9LHVpbnQyIGxvY2F0aW9uKWBdID0gUldUZXh0dXJl
MURBcnJheVN0b3JlOworICAgICAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIEdldERpbWVuc2lvbnMo
UldUZXh0dXJlMkQ8JHt0eXBlfSR7bGVuZ3RofT4sdWludCogdGhyZWFkIFdpZHRoLHVpbnQqIHRo
cmVhZCBIZWlnaHQpYF0gPSBSV1RleHR1cmUyREdldERpbWVuc2lvbnM7CisgICAgICAgICAgICBm
c1tgbmF0aXZlIHZvaWQgR2V0RGltZW5zaW9ucyhSV1RleHR1cmUyRDwke3R5cGV9JHtsZW5ndGh9
PixmbG9hdCogdGhyZWFkIFdpZHRoLGZsb2F0KiB0aHJlYWQgSGVpZ2h0KWBdID0gUldUZXh0dXJl
MkRHZXREaW1lbnNpb25zRmxvYXQ7CisgICAgICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0ke2xl
bmd0aH0gTG9hZChSV1RleHR1cmUyRDwke3R5cGV9JHtsZW5ndGh9PixpbnQyIGxvY2F0aW9uKWBd
ID0gUldUZXh0dXJlMkRMb2FkOworICAgICAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIFN0b3JlKFJX
VGV4dHVyZTJEPCR7dHlwZX0ke2xlbmd0aH0+LCR7dHlwZX0ke2xlbmd0aH0sdWludDIgbG9jYXRp
b24pYF0gPSBSV1RleHR1cmUyRFN0b3JlOworICAgICAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIEdl
dERpbWVuc2lvbnMoUldUZXh0dXJlMkRBcnJheTwke3R5cGV9JHtsZW5ndGh9Pix1aW50KiB0aHJl
YWQgV2lkdGgsdWludCogdGhyZWFkIEhlaWdodCx1aW50KiB0aHJlYWQgRWxlbWVudHMpYF0gPSBS
V1RleHR1cmUyREFycmF5R2V0RGltZW5zaW9uczsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgdm9p
ZCBHZXREaW1lbnNpb25zKFJXVGV4dHVyZTJEQXJyYXk8JHt0eXBlfSR7bGVuZ3RofT4sZmxvYXQq
IHRocmVhZCBXaWR0aCxmbG9hdCogdGhyZWFkIEhlaWdodCxmbG9hdCogdGhyZWFkIEVsZW1lbnRz
KWBdID0gUldUZXh0dXJlMkRBcnJheUdldERpbWVuc2lvbnNGbG9hdDsKKyAgICAgICAgICAgIGZz
W2BuYXRpdmUgJHt0eXBlfSR7bGVuZ3RofSBMb2FkKFJXVGV4dHVyZTJEQXJyYXk8JHt0eXBlfSR7
bGVuZ3RofT4saW50MyBsb2NhdGlvbilgXSA9IFJXVGV4dHVyZTJEQXJyYXlMb2FkOworICAgICAg
ICAgICAgZnNbYG5hdGl2ZSB2b2lkIFN0b3JlKFJXVGV4dHVyZTJEQXJyYXk8JHt0eXBlfSR7bGVu
Z3RofT4sJHt0eXBlfSR7bGVuZ3RofSx1aW50MyBsb2NhdGlvbilgXSA9IFJXVGV4dHVyZTJEQXJy
YXlTdG9yZTsKKyAgICAgICAgICAgIGZzW2BuYXRpdmUgdm9pZCBHZXREaW1lbnNpb25zKFJXVGV4
dHVyZTNEPCR7dHlwZX0ke2xlbmd0aH0+LHVpbnQqIHRocmVhZCBXaWR0aCx1aW50KiB0aHJlYWQg
SGVpZ2h0LHVpbnQqIHRocmVhZCBEZXB0aClgXSA9IFJXVGV4dHVyZTNER2V0RGltZW5zaW9uczsK
KyAgICAgICAgICAgIGZzW2BuYXRpdmUgdm9pZCBHZXREaW1lbnNpb25zKFJXVGV4dHVyZTNEPCR7
dHlwZX0ke2xlbmd0aH0+LGZsb2F0KiB0aHJlYWQgV2lkdGgsZmxvYXQqIHRocmVhZCBIZWlnaHQs
ZmxvYXQqIHRocmVhZCBEZXB0aClgXSA9IFJXVGV4dHVyZTNER2V0RGltZW5zaW9uc0Zsb2F0Owor
ICAgICAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9JHtsZW5ndGh9IExvYWQoUldUZXh0dXJlM0Q8
JHt0eXBlfSR7bGVuZ3RofT4saW50MyBsb2NhdGlvbilgXSA9IFJXVGV4dHVyZTNETG9hZDsKKyAg
ICAgICAgICAgIGZzW2BuYXRpdmUgdm9pZCBTdG9yZShSV1RleHR1cmUzRDwke3R5cGV9JHtsZW5n
dGh9Piwke3R5cGV9JHtsZW5ndGh9LHVpbnQzIGxvY2F0aW9uKWBdID0gUldUZXh0dXJlM0RTdG9y
ZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8vIEFnYWluLCB0aGlzIGxpbmUgaXMgY29waWVk
IGZyb20gSW50cmluc2ljcy5qcyAoYXJvdW5kIGxpbmUgMTY3OCkKKyAgICBmb3IgKGxldCB0eXBl
IG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1w
bGUoVGV4dHVyZURlcHRoMkQ8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24pYF0gPSBU
ZXh0dXJlRGVwdGgyRFNhbXBsZTsKKyAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9IFNhbXBsZShU
ZXh0dXJlRGVwdGgyRDwke3R5cGV9PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbixpbnQyIG9mZnNl
dClgXSA9IFRleHR1cmVEZXB0aDJEU2FtcGxlV2l0aE9mZnNldDsKKyAgICAgICAgZnNbYG5hdGl2
ZSAke3R5cGV9IFNhbXBsZUNtcChUZXh0dXJlRGVwdGgyRDwke3R5cGV9PixzYW1wbGVyLGZsb2F0
MiBsb2NhdGlvbiwke3R5cGV9IENvbXBhcmVWYWx1ZSlgXSA9IFRleHR1cmVEZXB0aDJEU2FtcGxl
Q21wOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0gU2FtcGxlQ21wKFRleHR1cmVEZXB0aDJE
PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLCR7dHlwZX0gQ29tcGFyZVZhbHVlLGlu
dDIgb2Zmc2V0KWBdID0gVGV4dHVyZURlcHRoMkRTYW1wbGVDbXBXaXRoT2Zmc2V0OworICAgICAg
ICBmc1tgbmF0aXZlICR7dHlwZX0gU2FtcGxlQ21wTGV2ZWxaZXJvKFRleHR1cmVEZXB0aDJEPCR7
dHlwZX0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLCR7dHlwZX0gQ29tcGFyZVZhbHVlKWBdID0g
VGV4dHVyZURlcHRoMkRTYW1wbGVDbXBMZXZlbFplcm87CisgICAgICAgIGZzW2BuYXRpdmUgJHt0
eXBlfSBTYW1wbGVDbXBMZXZlbFplcm8oVGV4dHVyZURlcHRoMkQ8JHt0eXBlfT4sc2FtcGxlcixm
bG9hdDIgbG9jYXRpb24sJHt0eXBlfSBDb21wYXJlVmFsdWUsaW50MiBvZmZzZXQpYF0gPSBUZXh0
dXJlRGVwdGgyRFNhbXBsZUNtcExldmVsWmVyb1dpdGhPZmZzZXQ7CisgICAgICAgIGZzW2BuYXRp
dmUgJHt0eXBlfSBTYW1wbGVCaWFzKFRleHR1cmVEZXB0aDJEPCR7dHlwZX0+LHNhbXBsZXIsZmxv
YXQyIGxvY2F0aW9uLGZsb2F0IEJpYXMpYF0gPSBUZXh0dXJlRGVwdGgyRFNhbXBsZUJpYXM7Cisg
ICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVCaWFzKFRleHR1cmVEZXB0aDJEPCR7dHlw
ZX0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLGZsb2F0IEJpYXMsaW50MiBvZmZzZXQpYF0gPSBU
ZXh0dXJlRGVwdGgyRFNhbXBsZUJpYXNXaXRoT2Zmc2V0OworICAgICAgICBmc1tgbmF0aXZlICR7
dHlwZX0gU2FtcGxlR3JhZChUZXh0dXJlRGVwdGgyRDwke3R5cGV9PixzYW1wbGVyLGZsb2F0MiBs
b2NhdGlvbixmbG9hdDIgRERYLGZsb2F0MiBERFkpYF0gPSBUZXh0dXJlRGVwdGgyRFNhbXBsZUdy
YWQ7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVHcmFkKFRleHR1cmVEZXB0aDJE
PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLGZsb2F0MiBERFgsZmxvYXQyIEREWSxp
bnQyIG9mZnNldClgXSA9IFRleHR1cmVEZXB0aDJEU2FtcGxlR3JhZFdpdGhPZmZzZXQ7CisgICAg
ICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVMZXZlbChUZXh0dXJlRGVwdGgyRDwke3R5cGV9
PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbixmbG9hdCBMT0QpYF0gPSBUZXh0dXJlRGVwdGgyRFNh
bXBsZUxldmVsOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0gU2FtcGxlTGV2ZWwoVGV4dHVy
ZURlcHRoMkQ8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24sZmxvYXQgTE9ELGludDIg
b2Zmc2V0KWBdID0gVGV4dHVyZURlcHRoMkRTYW1wbGVMZXZlbFdpdGhPZmZzZXQ7CisgICAgICAg
IGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyKFRleHR1cmVEZXB0aDJEPCR7dHlwZX0+LHNhbXBs
ZXIsZmxvYXQyIGxvY2F0aW9uKWBdID0gVGV4dHVyZURlcHRoMkRHYXRoZXJSZWQ7CisgICAgICAg
IGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyKFRleHR1cmVEZXB0aDJEPCR7dHlwZX0+LHNhbXBs
ZXIsZmxvYXQyIGxvY2F0aW9uLGludDIgb2Zmc2V0KWBdID0gVGV4dHVyZURlcHRoMkRHYXRoZXJS
ZWRXaXRoT2Zmc2V0OworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlclJlZChUZXh0
dXJlRGVwdGgyRDwke3R5cGV9PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbilgXSA9IFRleHR1cmVE
ZXB0aDJER2F0aGVyUmVkOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlclJlZChU
ZXh0dXJlRGVwdGgyRDwke3R5cGV9PixzYW1wbGVyLGZsb2F0MiBsb2NhdGlvbixpbnQyIG9mZnNl
dClgXSA9IFRleHR1cmVEZXB0aDJER2F0aGVyUmVkV2l0aE9mZnNldDsKKyAgICAgICAgZnNbYG5h
dGl2ZSAke3R5cGV9NCBHYXRoZXJDbXAoVGV4dHVyZURlcHRoMkQ8JHt0eXBlfT4sc2FtcGxlcixm
bG9hdDIgbG9jYXRpb24sZmxvYXQgY29tcGFyZV92YWx1ZSlgXSA9IFRleHR1cmVEZXB0aDJER2F0
aGVyQ29tcGFyZVJlZDsKKyAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRoZXJDbXAoVGV4
dHVyZURlcHRoMkQ8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDIgbG9jYXRpb24sZmxvYXQgY29tcGFy
ZV92YWx1ZSxpbnQyIG9mZnNldClgXSA9IFRleHR1cmVEZXB0aDJER2F0aGVyQ29tcGFyZVJlZFdp
dGhPZmZzZXQ7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyQ21wUmVkKFRleHR1
cmVEZXB0aDJEPCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQyIGxvY2F0aW9uLGZsb2F0IGNvbXBhcmVf
dmFsdWUpYF0gPSBUZXh0dXJlRGVwdGgyREdhdGhlckNvbXBhcmVSZWQ7CisgICAgICAgIGZzW2Bu
YXRpdmUgJHt0eXBlfTQgR2F0aGVyQ21wUmVkKFRleHR1cmVEZXB0aDJEPCR7dHlwZX0+LHNhbXBs
ZXIsZmxvYXQyIGxvY2F0aW9uLGZsb2F0IGNvbXBhcmVfdmFsdWUsaW50MiBvZmZzZXQpYF0gPSBU
ZXh0dXJlRGVwdGgyREdhdGhlckNvbXBhcmVSZWRXaXRoT2Zmc2V0OworICAgICAgICBmc1tgbmF0
aXZlICR7dHlwZX0gTG9hZChUZXh0dXJlRGVwdGgyRDwke3R5cGV9PixpbnQzIGxvY2F0aW9uKWBd
ID0gVGV4dHVyZURlcHRoMkRMb2FkOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0gTG9hZChU
ZXh0dXJlRGVwdGgyRDwke3R5cGV9PixpbnQzIGxvY2F0aW9uLGludDIgb2Zmc2V0KWBdID0gVGV4
dHVyZURlcHRoMkRMb2FkV2l0aE9mZnNldDsKKyAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIEdldERp
bWVuc2lvbnMoVGV4dHVyZURlcHRoMkQ8JHt0eXBlfT4sdWludCBNaXBMZXZlbCx1aW50KiB0aHJl
YWQgV2lkdGgsdWludCogdGhyZWFkIEhlaWdodCx1aW50KiB0aHJlYWQgTnVtYmVyT2ZMZXZlbHMp
YF0gPSBUZXh0dXJlRGVwdGgyREdldERpbWVuc2lvbnM7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0
eXBlfSBTYW1wbGUoVGV4dHVyZURlcHRoMkRBcnJheTwke3R5cGV9PixzYW1wbGVyLGZsb2F0MyBs
b2NhdGlvbilgXSA9IFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGU7CisgICAgICAgIGZzW2BuYXRp
dmUgJHt0eXBlfSBTYW1wbGUoVGV4dHVyZURlcHRoMkRBcnJheTwke3R5cGV9PixzYW1wbGVyLGZs
b2F0MyBsb2NhdGlvbixpbnQyIG9mZnNldClgXSA9IFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGVX
aXRoT2Zmc2V0OworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0gU2FtcGxlQ21wKFRleHR1cmVE
ZXB0aDJEQXJyYXk8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24sJHt0eXBlfSBDb21w
YXJlVmFsdWUpYF0gPSBUZXh0dXJlRGVwdGgyREFycmF5U2FtcGxlQ21wOworICAgICAgICBmc1tg
bmF0aXZlICR7dHlwZX0gU2FtcGxlQ21wKFRleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBlfT4sc2Ft
cGxlcixmbG9hdDMgbG9jYXRpb24sJHt0eXBlfSBDb21wYXJlVmFsdWUsaW50MiBvZmZzZXQpYF0g
PSBUZXh0dXJlRGVwdGgyREFycmF5U2FtcGxlQ21wV2l0aE9mZnNldDsKKyAgICAgICAgZnNbYG5h
dGl2ZSAke3R5cGV9IFNhbXBsZUNtcExldmVsWmVybyhUZXh0dXJlRGVwdGgyREFycmF5PCR7dHlw
ZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLCR7dHlwZX0gQ29tcGFyZVZhbHVlKWBdID0gVGV4
dHVyZURlcHRoMkRBcnJheVNhbXBsZUNtcExldmVsWmVybzsKKyAgICAgICAgZnNbYG5hdGl2ZSAk
e3R5cGV9IFNhbXBsZUNtcExldmVsWmVybyhUZXh0dXJlRGVwdGgyREFycmF5PCR7dHlwZX0+LHNh
bXBsZXIsZmxvYXQzIGxvY2F0aW9uLCR7dHlwZX0gQ29tcGFyZVZhbHVlLGludDIgb2Zmc2V0KWBd
ID0gVGV4dHVyZURlcHRoMkRBcnJheVNhbXBsZUNtcExldmVsWmVyb1dpdGhPZmZzZXQ7CisgICAg
ICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVCaWFzKFRleHR1cmVEZXB0aDJEQXJyYXk8JHt0
eXBlfT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24sZmxvYXQgQmlhcylgXSA9IFRleHR1cmVEZXB0
aDJEQXJyYXlTYW1wbGVCaWFzOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX0gU2FtcGxlQmlh
cyhUZXh0dXJlRGVwdGgyREFycmF5PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGZs
b2F0IEJpYXMsaW50MiBvZmZzZXQpYF0gPSBUZXh0dXJlRGVwdGgyREFycmF5U2FtcGxlQmlhc1dp
dGhPZmZzZXQ7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVHcmFkKFRleHR1cmVE
ZXB0aDJEQXJyYXk8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24sZmxvYXQyIEREWCxm
bG9hdDIgRERZKWBdID0gVGV4dHVyZURlcHRoMkRBcnJheVNhbXBsZUdyYWQ7CisgICAgICAgIGZz
W2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVHcmFkKFRleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBlfT4s
c2FtcGxlcixmbG9hdDMgbG9jYXRpb24sZmxvYXQyIEREWCxmbG9hdDIgRERZLGludDIgb2Zmc2V0
KWBdID0gVGV4dHVyZURlcHRoMkRBcnJheVNhbXBsZUdyYWRXaXRoT2Zmc2V0OworICAgICAgICBm
c1tgbmF0aXZlICR7dHlwZX0gU2FtcGxlTGV2ZWwoVGV4dHVyZURlcHRoMkRBcnJheTwke3R5cGV9
PixzYW1wbGVyLGZsb2F0MyBsb2NhdGlvbixmbG9hdCBMT0QpYF0gPSBUZXh0dXJlRGVwdGgyREFy
cmF5U2FtcGxlTGV2ZWw7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVMZXZlbChU
ZXh0dXJlRGVwdGgyREFycmF5PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGZsb2F0
IExPRCxpbnQyIG9mZnNldClgXSA9IFRleHR1cmVEZXB0aDJEQXJyYXlTYW1wbGVMZXZlbFdpdGhP
ZmZzZXQ7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyKFRleHR1cmVEZXB0aDJE
QXJyYXk8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlRGVwdGgy
REFycmF5R2F0aGVyUmVkOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlcihUZXh0
dXJlRGVwdGgyREFycmF5PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGludDIgb2Zm
c2V0KWBdID0gVGV4dHVyZURlcHRoMkRBcnJheUdhdGhlclJlZFdpdGhPZmZzZXQ7CisgICAgICAg
IGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyUmVkKFRleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBl
fT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24pYF0gPSBUZXh0dXJlRGVwdGgyREFycmF5R2F0aGVy
UmVkOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlclJlZChUZXh0dXJlRGVwdGgy
REFycmF5PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGludDIgb2Zmc2V0KWBdID0g
VGV4dHVyZURlcHRoMkRBcnJheUdhdGhlclJlZFdpdGhPZmZzZXQ7CisgICAgICAgIGZzW2BuYXRp
dmUgJHt0eXBlfTQgR2F0aGVyQ21wKFRleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBlfT4sc2FtcGxl
cixmbG9hdDMgbG9jYXRpb24sZmxvYXQgY29tcGFyZV92YWx1ZSlgXSA9IFRleHR1cmVEZXB0aDJE
QXJyYXlHYXRoZXJDbXBSZWQ7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0aGVyQ21w
KFRleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24sZmxv
YXQgY29tcGFyZV92YWx1ZSxpbnQyIG9mZnNldClgXSA9IFRleHR1cmVEZXB0aDJEQXJyYXlHYXRo
ZXJDbXBSZWRXaXRoT2Zmc2V0OworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckNt
cFJlZChUZXh0dXJlRGVwdGgyREFycmF5PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9u
LGZsb2F0IGNvbXBhcmVfdmFsdWUpYF0gPSBUZXh0dXJlRGVwdGgyREFycmF5R2F0aGVyQ21wUmVk
OworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckNtcFJlZChUZXh0dXJlRGVwdGgy
REFycmF5PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGZsb2F0IGNvbXBhcmVfdmFs
dWUsaW50MiBvZmZzZXQpYF0gPSBUZXh0dXJlRGVwdGgyREFycmF5R2F0aGVyQ21wUmVkV2l0aE9m
ZnNldDsKKyAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9IExvYWQoVGV4dHVyZURlcHRoMkRBcnJh
eTwke3R5cGV9PixpbnQ0IGxvY2F0aW9uKWBdID0gVGV4dHVyZURlcHRoMkRBcnJheUxvYWQ7Cisg
ICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBMb2FkKFRleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBl
fT4saW50NCBsb2NhdGlvbixpbnQyIG9mZnNldClgXSA9IFRleHR1cmVEZXB0aDJEQXJyYXlMb2Fk
V2l0aE9mZnNldDsKKyAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIEdldERpbWVuc2lvbnMoVGV4dHVy
ZURlcHRoMkRBcnJheTwke3R5cGV9Pix1aW50IE1pcExldmVsLHVpbnQqIHRocmVhZCBXaWR0aCx1
aW50KiB0aHJlYWQgSGVpZ2h0LHVpbnQqIHRocmVhZCBFbGVtZW50cyx1aW50KiB0aHJlYWQgTnVt
YmVyT2ZMZXZlbHMpYF0gPSBUZXh0dXJlRGVwdGgyREFycmF5R2V0RGltZW5zaW9uczsKKyAgICAg
ICAgZnNbYG5hdGl2ZSAke3R5cGV9IFNhbXBsZShUZXh0dXJlRGVwdGhDdWJlPCR7dHlwZX0+LHNh
bXBsZXIsZmxvYXQzIGxvY2F0aW9uKWBdID0gVGV4dHVyZURlcHRoQ3ViZVNhbXBsZTsKKyAgICAg
ICAgZnNbYG5hdGl2ZSAke3R5cGV9IFNhbXBsZUNtcChUZXh0dXJlRGVwdGhDdWJlPCR7dHlwZX0+
LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLCR7dHlwZX0gQ29tcGFyZVZhbHVlKWBdID0gVGV4dHVy
ZURlcHRoQ3ViZVNhbXBsZUNtcDsKKyAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9IFNhbXBsZUNt
cExldmVsWmVybyhUZXh0dXJlRGVwdGhDdWJlPCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0
aW9uLCR7dHlwZX0gQ29tcGFyZVZhbHVlKWBdID0gVGV4dHVyZURlcHRoQ3ViZVNhbXBsZUNtcExl
dmVsWmVybzsKKyAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9IFNhbXBsZUJpYXMoVGV4dHVyZURl
cHRoQ3ViZTwke3R5cGV9PixzYW1wbGVyLGZsb2F0MyBsb2NhdGlvbixmbG9hdCBCaWFzKWBdID0g
VGV4dHVyZURlcHRoQ3ViZVNhbXBsZUJpYXM7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBT
YW1wbGVHcmFkKFRleHR1cmVEZXB0aEN1YmU8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDMgbG9jYXRp
b24sZmxvYXQzIEREWCxmbG9hdDMgRERZKWBdID0gVGV4dHVyZURlcHRoQ3ViZVNhbXBsZUdyYWQ7
CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfSBTYW1wbGVMZXZlbChUZXh0dXJlRGVwdGhDdWJl
PCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGZsb2F0IExPRClgXSA9IFRleHR1cmVE
ZXB0aEN1YmVTYW1wbGVMZXZlbDsKKyAgICAgICAgZnNbYG5hdGl2ZSAke3R5cGV9NCBHYXRoZXIo
VGV4dHVyZURlcHRoQ3ViZTwke3R5cGV9PixzYW1wbGVyLGZsb2F0MyBsb2NhdGlvbilgXSA9IFRl
eHR1cmVEZXB0aEN1YmVHYXRoZXJSZWQ7CisgICAgICAgIGZzW2BuYXRpdmUgJHt0eXBlfTQgR2F0
aGVyUmVkKFRleHR1cmVEZXB0aEN1YmU8JHt0eXBlfT4sc2FtcGxlcixmbG9hdDMgbG9jYXRpb24p
YF0gPSBUZXh0dXJlRGVwdGhDdWJlR2F0aGVyUmVkOworICAgICAgICBmc1tgbmF0aXZlICR7dHlw
ZX00IEdhdGhlckNtcChUZXh0dXJlRGVwdGhDdWJlPCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxv
Y2F0aW9uLGZsb2F0IGNvbXBhcmVfdmFsdWUpYF0gPSBUZXh0dXJlRGVwdGhDdWJlR2F0aGVyQ21w
UmVkOworICAgICAgICBmc1tgbmF0aXZlICR7dHlwZX00IEdhdGhlckNtcFJlZChUZXh0dXJlRGVw
dGhDdWJlPCR7dHlwZX0+LHNhbXBsZXIsZmxvYXQzIGxvY2F0aW9uLGZsb2F0IGNvbXBhcmVfdmFs
dWUpYF0gPSBUZXh0dXJlRGVwdGhDdWJlR2F0aGVyQ21wUmVkOworICAgICAgICBmc1tgbmF0aXZl
IHZvaWQgR2V0RGltZW5zaW9ucyhUZXh0dXJlRGVwdGhDdWJlPCR7dHlwZX0+LHVpbnQgTWlwTGV2
ZWwsdWludCogdGhyZWFkIFdpZHRoLHVpbnQqIHRocmVhZCBIZWlnaHQsdWludCogdGhyZWFkIE51
bWJlck9mTGV2ZWxzKWBdID0gVGV4dHVyZURlcHRoQ3ViZUdldERpbWVuc2lvbnM7CisgICAgICAg
IGZzW2BuYXRpdmUgdm9pZCBHZXREaW1lbnNpb25zKFJXVGV4dHVyZURlcHRoMkQ8JHt0eXBlfT4s
dWludCogdGhyZWFkIFdpZHRoLHVpbnQqIHRocmVhZCBIZWlnaHQpYF0gPSBSV1RleHR1cmVEZXB0
aDJER2V0RGltZW5zaW9uczsKKyAgICAgICAgZnNbYG5hdGl2ZSB2b2lkIEdldERpbWVuc2lvbnMo
UldUZXh0dXJlRGVwdGgyRDwke3R5cGV9PixmbG9hdCogdGhyZWFkIFdpZHRoLGZsb2F0KiB0aHJl
YWQgSGVpZ2h0KWBdID0gUldUZXh0dXJlRGVwdGgyREdldERpbWVuc2lvbnNGbG9hdDsKKyAgICAg
ICAgZnNbYG5hdGl2ZSAke3R5cGV9IExvYWQoUldUZXh0dXJlRGVwdGgyRDwke3R5cGV9PixpbnQy
IGxvY2F0aW9uKWBdID0gUldUZXh0dXJlRGVwdGgyRExvYWQ7CisgICAgICAgIGZzW2BuYXRpdmUg
dm9pZCBTdG9yZShSV1RleHR1cmVEZXB0aDJEPCR7dHlwZX0+LCR7dHlwZX0sdWludDIgbG9jYXRp
b24pYF0gPSBSV1RleHR1cmVEZXB0aDJEU3RvcmU7CisgICAgICAgIGZzW2BuYXRpdmUgdm9pZCBH
ZXREaW1lbnNpb25zKFJXVGV4dHVyZURlcHRoMkRBcnJheTwke3R5cGV9Pix1aW50KiB0aHJlYWQg
V2lkdGgsdWludCogdGhyZWFkIEhlaWdodCx1aW50KiB0aHJlYWQgRWxlbWVudHMpYF0gPSBSV1Rl
eHR1cmVEZXB0aDJEQXJyYXlHZXREaW1lbnNpb25zOworICAgICAgICBmc1tgbmF0aXZlIHZvaWQg
R2V0RGltZW5zaW9ucyhSV1RleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBlfT4sZmxvYXQqIHRocmVh
ZCBXaWR0aCxmbG9hdCogdGhyZWFkIEhlaWdodCxmbG9hdCogdGhyZWFkIEVsZW1lbnRzKWBdID0g
UldUZXh0dXJlRGVwdGgyREFycmF5R2V0RGltZW5zaW9uc0Zsb2F0OworICAgICAgICBmc1tgbmF0
aXZlICR7dHlwZX0gTG9hZChSV1RleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBlfT4saW50MyBsb2Nh
dGlvbilgXSA9IFJXVGV4dHVyZURlcHRoMkRBcnJheUxvYWQ7CisgICAgICAgIGZzW2BuYXRpdmUg
dm9pZCBTdG9yZShSV1RleHR1cmVEZXB0aDJEQXJyYXk8JHt0eXBlfT4sJHt0eXBlfSx1aW50MyBs
b2NhdGlvbilgXSA9IFJXVGV4dHVyZURlcHRoMkRBcnJheVN0b3JlOworICAgIH0KKwogICAgIGlm
IChrZXkgaW4gZnVuY3Rpb25zV2l0aERpZmZlcmVudENhbGxpbmdDb252ZW50aW9ucykKLSAgICAg
ICAgcmV0dXJuIGZ1bmN0aW9uc1dpdGhEaWZmZXJlbnRDYWxsaW5nQ29udmVudGlvbnNba2V5XSgp
OworICAgICAgICByZXR1cm4gZnVuY3Rpb25zV2l0aERpZmZlcmVudENhbGxpbmdDb252ZW50aW9u
c1trZXldKG5vZGUsIHJlc3VsdCwgYXJncyk7CiAKICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7bm9k
ZX0gZG9lc24ndCBoYXZlIG1hcHBpbmcgdG8gYSBuYXRpdmUgTWV0YWwgZnVuY3Rpb24uYCk7CiB9
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvTWV0YWwvTVNMU3RhdGVtZW50RW1pdHRlci5qcyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL01TTFN0YXRlbWVudEVtaXR0ZXIuanMKaW5kZXggYTEw
NTAxNmNkMmMzNDNhYmI4OTNiNjUzYWExYTk1MTE3NTNhN2U2NS4uN2ZhMTY1ZTA2NjhkNjQ1ZjE2
YjEyZjZlNDFjMzdlM2JmNjY4OWMyNiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTWV0YWwvTVNMU3RhdGVtZW50RW1pdHRlci5qcworKysgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9NU0xTdGF0ZW1lbnRFbWl0dGVyLmpzCkBAIC01NDUsOCAr
NTQ1LDggQEAgY2xhc3MgTVNMU3RhdGVtZW50RW1pdHRlciBleHRlbmRzIFZpc2l0b3IgewogCiAg
ICAgdmlzaXRNYWtlUHRyRXhwcmVzc2lvbihub2RlKQogICAgIHsKLSAgICAgICAgaWYgKG5vZGUu
dGFyZ2V0IGluc3RhbmNlb2YgRGVyZWZlcmVuY2VFeHByZXNzaW9uKQotICAgICAgICAgICAgcmV0
dXJuIHRoaXMuX2VtaXRBc0xWYWx1ZShub2RlLnRhcmdldC5wdHIpOworICAgICAgICBpZiAobm9k
ZS5sVmFsdWUgaW5zdGFuY2VvZiBEZXJlZmVyZW5jZUV4cHJlc3Npb24pCisgICAgICAgICAgICBy
ZXR1cm4gdGhpcy5fZW1pdEFzTFZhbHVlKG5vZGUubFZhbHVlLnB0cik7CiAgICAgICAgIHJldHVy
biBgJigke3RoaXMuX2VtaXRBc0xWYWx1ZShub2RlLmxWYWx1ZSl9KWA7CiAgICAgfQogCmRpZmYg
LS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy8u
Z2l0aWdub3JlIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVz
dHMvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jM2I5YTIyY2IxYWNlYjAwMDE0YmY1NjgyYjgzYzMz
MTI2Yzk2MzJiCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvLmdpdGlnbm9yZQkKQEAgLTAsMCArMSwzIEBACitXSExTTCBU
ZXN0cy54Y29kZXByb2oveGN1c2VyZGF0YQorV0hMU0wgVGVzdHMueGNvZGVwcm9qL3Byb2plY3Qu
eGN3b3Jrc3BhY2UveGNzaGFyZWRkYXRhCitXSExTTCBUZXN0cy54Y29kZXByb2ovcHJvamVjdC54
Y3dvcmtzcGFjZS94Y3VzZXJkYXRhCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0FwcERlbGVnYXRlLmggYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0FwcERlbGVnYXRlLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMzBjZDkyMDU4YTg5YTI0NTNiZTMzYWZkZGY4N2M2YzM0OGI0NTI3MAotLS0g
L2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNM
IFRlc3RzL0NvcmUvQXBwRGVsZWdhdGUuaAkKQEAgLTAsMCArMSwzMiBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPENvY29hL0NvY29hLmg+
CisKK0BpbnRlcmZhY2UgQXBwRGVsZWdhdGUgOiBOU09iamVjdCA8TlNBcHBsaWNhdGlvbkRlbGVn
YXRlPgorCisKK0BlbmQKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9BcHBEZWxlZ2F0ZS5tIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9BcHBEZWxlZ2F0ZS5tCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmZhYmMyNDkwYjUyMTgzMTU2ODgwMmI4OTQ3MjFkMTZiMzdjMmYwZTcKLS0tIC9kZXYv
bnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0
cy9Db3JlL0FwcERlbGVnYXRlLm0JCkBAIC0wLDAgKzEsNDQgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFO
WQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJBcHBEZWxlZ2F0ZS5oIgorCitA
aW50ZXJmYWNlIEFwcERlbGVnYXRlICgpCisKK0BlbmQKKworQGltcGxlbWVudGF0aW9uIEFwcERl
bGVnYXRlCisKKy0gKHZvaWQpYXBwbGljYXRpb25EaWRGaW5pc2hMYXVuY2hpbmc6KE5TTm90aWZp
Y2F0aW9uICopYU5vdGlmaWNhdGlvbiB7CisgICAgLy8gSW5zZXJ0IGNvZGUgaGVyZSB0byBpbml0
aWFsaXplIHlvdXIgYXBwbGljYXRpb24KK30KKworCistICh2b2lkKWFwcGxpY2F0aW9uV2lsbFRl
cm1pbmF0ZTooTlNOb3RpZmljYXRpb24gKilhTm90aWZpY2F0aW9uIHsKKyAgICAvLyBJbnNlcnQg
Y29kZSBoZXJlIHRvIHRlYXIgZG93biB5b3VyIGFwcGxpY2F0aW9uCit9CisKKworQGVuZApkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMv
Q29yZS9Bc3NldHMueGNhc3NldHMvQXBwSWNvbi5hcHBpY29uc2V0L0NvbnRlbnRzLmpzb24gYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0Fzc2V0
cy54Y2Fzc2V0cy9BcHBJY29uLmFwcGljb25zZXQvQ29udGVudHMuanNvbgpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
ZGIyYjFjN2M2YzMxNjUwMGE3YTM0ODA3NjQ4NDM0Mjg5NDk0YmExCi0tLSAvZGV2L251bGwKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9B
c3NldHMueGNhc3NldHMvQXBwSWNvbi5hcHBpY29uc2V0L0NvbnRlbnRzLmpzb24JCkBAIC0wLDAg
KzEsNTggQEAKK3sKKyAgImltYWdlcyIgOiBbCisgICAgeworICAgICAgImlkaW9tIiA6ICJtYWMi
LAorICAgICAgInNpemUiIDogIjE2eDE2IiwKKyAgICAgICJzY2FsZSIgOiAiMXgiCisgICAgfSwK
KyAgICB7CisgICAgICAiaWRpb20iIDogIm1hYyIsCisgICAgICAic2l6ZSIgOiAiMTZ4MTYiLAor
ICAgICAgInNjYWxlIiA6ICIyeCIKKyAgICB9LAorICAgIHsKKyAgICAgICJpZGlvbSIgOiAibWFj
IiwKKyAgICAgICJzaXplIiA6ICIzMngzMiIsCisgICAgICAic2NhbGUiIDogIjF4IgorICAgIH0s
CisgICAgeworICAgICAgImlkaW9tIiA6ICJtYWMiLAorICAgICAgInNpemUiIDogIjMyeDMyIiwK
KyAgICAgICJzY2FsZSIgOiAiMngiCisgICAgfSwKKyAgICB7CisgICAgICAiaWRpb20iIDogIm1h
YyIsCisgICAgICAic2l6ZSIgOiAiMTI4eDEyOCIsCisgICAgICAic2NhbGUiIDogIjF4IgorICAg
IH0sCisgICAgeworICAgICAgImlkaW9tIiA6ICJtYWMiLAorICAgICAgInNpemUiIDogIjEyOHgx
MjgiLAorICAgICAgInNjYWxlIiA6ICIyeCIKKyAgICB9LAorICAgIHsKKyAgICAgICJpZGlvbSIg
OiAibWFjIiwKKyAgICAgICJzaXplIiA6ICIyNTZ4MjU2IiwKKyAgICAgICJzY2FsZSIgOiAiMXgi
CisgICAgfSwKKyAgICB7CisgICAgICAiaWRpb20iIDogIm1hYyIsCisgICAgICAic2l6ZSIgOiAi
MjU2eDI1NiIsCisgICAgICAic2NhbGUiIDogIjJ4IgorICAgIH0sCisgICAgeworICAgICAgImlk
aW9tIiA6ICJtYWMiLAorICAgICAgInNpemUiIDogIjUxMng1MTIiLAorICAgICAgInNjYWxlIiA6
ICIxeCIKKyAgICB9LAorICAgIHsKKyAgICAgICJpZGlvbSIgOiAibWFjIiwKKyAgICAgICJzaXpl
IiA6ICI1MTJ4NTEyIiwKKyAgICAgICJzY2FsZSIgOiAiMngiCisgICAgfQorICBdLAorICAiaW5m
byIgOiB7CisgICAgInZlcnNpb24iIDogMSwKKyAgICAiYXV0aG9yIiA6ICJ4Y29kZSIKKyAgfQor
fQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvQXNzZXRzLnhjYXNzZXRzL0Nv
bnRlbnRzLmpzb24gYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBU
ZXN0cy9Db3JlL0Fzc2V0cy54Y2Fzc2V0cy9Db250ZW50cy5qc29uCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRhNGEx
NjRjOTE4NjUxY2RkMWUxMWRjYTVjYzYyYzMzM2YwOTc2MDEKLS0tIC9kZXYvbnVsbAorKysgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0Fzc2V0
cy54Y2Fzc2V0cy9Db250ZW50cy5qc29uCQpAQCAtMCwwICsxLDYgQEAKK3sKKyAgImluZm8iIDog
eworICAgICJ2ZXJzaW9uIiA6IDEsCisgICAgImF1dGhvciIgOiAieGNvZGUiCisgIH0KK30KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0Jhc2UubHByb2ovTWFpbi5zdG9yeWJv
YXJkIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29y
ZS9CYXNlLmxwcm9qL01haW4uc3Rvcnlib2FyZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNjc2ZDlmNzRjYzU2N2Jm
ZjU2YmVkMWRkNTY1ZGNkZDcwYmViM2RmCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9CYXNlLmxwcm9qL01haW4u
c3Rvcnlib2FyZAkKQEAgLTAsMCArMSw4NDcgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rp
bmc9IlVURi04Ij8+Cis8ZG9jdW1lbnQgdHlwZT0iY29tLmFwcGxlLkludGVyZmFjZUJ1aWxkZXIz
LkNvY29hLlN0b3J5Ym9hcmQuWElCIiB2ZXJzaW9uPSIzLjAiIHRvb2xzVmVyc2lvbj0iMTQyNjku
MTQiIHRhcmdldFJ1bnRpbWU9Ik1hY09TWC5Db2NvYSIgcHJvcGVydHlBY2Nlc3NDb250cm9sPSJu
b25lIiB1c2VBdXRvbGF5b3V0PSJZRVMiIGluaXRpYWxWaWV3Q29udHJvbGxlcj0iQjhELTBOLTV3
UyI+CisgICAgPGRlcGVuZGVuY2llcz4KKyAgICAgICAgPHBsdWdJbiBpZGVudGlmaWVyPSJjb20u
YXBwbGUuSW50ZXJmYWNlQnVpbGRlci5Db2NvYVBsdWdpbiIgdmVyc2lvbj0iMTQyNjkuMTQiLz4K
KyAgICAgICAgPGNhcGFiaWxpdHkgbmFtZT0iZG9jdW1lbnRzIHNhdmVkIGluIHRoZSBYY29kZSA4
IGZvcm1hdCIgbWluVG9vbHNWZXJzaW9uPSI4LjAiLz4KKyAgICA8L2RlcGVuZGVuY2llcz4KKyAg
ICA8c2NlbmVzPgorICAgICAgICA8IS0tQXBwbGljYXRpb24tLT4KKyAgICAgICAgPHNjZW5lIHNj
ZW5lSUQ9IkpQby00eS1GWDMiPgorICAgICAgICAgICAgPG9iamVjdHM+CisgICAgICAgICAgICAg
ICAgPGFwcGxpY2F0aW9uIGlkPSJobncteFYtMHpuIiBzY2VuZU1lbWJlcklEPSJ2aWV3Q29udHJv
bGxlciI+CisgICAgICAgICAgICAgICAgICAgIDxtZW51IGtleT0ibWFpbk1lbnUiIHRpdGxlPSJN
YWluIE1lbnUiIHN5c3RlbU1lbnU9Im1haW4iIGlkPSJBWXUtc0stcVM2Ij4KKyAgICAgICAgICAg
ICAgICAgICAgICAgIDxpdGVtcz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0
ZW0gdGl0bGU9IldITFNMIFRlc3RzIiBpZD0iMVh0LUhZLXVCdyI+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJN
YXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51IGtleT0ic3VibWVu
dSIgdGl0bGU9IldITFNMIFRlc3RzIiBzeXN0ZW1NZW51PSJhcHBsZSIgaWQ9InVReS1ERC1KRHIi
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGl0ZW1zPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iQWJvdXQgV0hM
U0wgVGVzdHMiIGlkPSI1a1YtVmItUXhTIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1h
c2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5l
Y3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PGFjdGlvbiBzZWxlY3Rvcj0ib3JkZXJGcm9udFN0YW5kYXJkQWJvdXRQYW5lbDoiIHRhcmdldD0i
QWR5LWhJLTVnZCIgaWQ9IkV4cC1DWi1WZW0iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxtZW51SXRlbSBpc1NlcGFyYXRvckl0ZW09IllFUyIgaWQ9IlZPcS15MC1T
RUgiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0g
dGl0bGU9IlByZWZlcmVuY2Vz4oCmIiBrZXlFcXVpdmFsZW50PSIsIiBpZD0iQk9GLU5NLTFjVyIv
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpc1Nl
cGFyYXRvckl0ZW09IllFUyIgaWQ9IndGQy1UTy1TQ0oiLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNlcnZpY2VzIiBpZD0iTk1vLW9t
LW5reiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2Rp
Zmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51IGtleT0ic3VibWVudSIgdGl0bGU9
IlNlcnZpY2VzIiBzeXN0ZW1NZW51PSJzZXJ2aWNlcyIgaWQ9Imh6OS1CNC1YeTUiLz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpc1NlcGFyYXRvckl0ZW09
IllFUyIgaWQ9IjRqZS1KUi11NlIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkhpZGUgV0hMU0wgVGVzdHMiIGtleUVxdWl2YWxlbnQ9
ImgiIGlkPSJPbHctblAtYlFOIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0iaGlkZToiIHRhcmdldD0iQWR5LWhJLTVn
ZCIgaWQ9IlBuTi1VYy1tNjgiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxtZW51SXRlbSB0aXRsZT0iSGlkZSBPdGhlcnMiIGtleUVxdWl2YWxlbnQ9ImgiIGlkPSJW
ZHItZnAtWHpPIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siIG9wdGlvbj0iWUVT
IiBjb21tYW5kPSJZRVMiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0iaGlkZU90aGVyQXBwbGljYXRpb25zOiIgdGFy
Z2V0PSJBZHktaEktNWdkIiBpZD0iVlQ0LWFZLVhDVCIvPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJTaG93IEFsbCIgaWQ9IktkMi1tcC1w
VVMiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZp
ZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJ1bmhp
ZGVBbGxBcHBsaWNhdGlvbnM6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJEaGctTGUteG94Ii8+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlv
bnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gaXNTZXBh
cmF0b3JJdGVtPSJZRVMiIGlkPSJrQ3gtT0UtdmdUIi8+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJRdWl0IFdITFNMIFRlc3RzIiBrZXlF
cXVpdmFsZW50PSJxIiBpZD0iNHNiLTRzLVZMaSI+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InRlcm1pbmF0ZToiIHRh
cmdldD0iQWR5LWhJLTVnZCIgaWQ9IlRlNy1wbi1ZekYiLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPC9pdGVtcz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PC9tZW51PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJGaWxlIiBpZD0iZE1zLWNJLW16
USI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJr
ZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxtZW51IGtleT0ic3VibWVudSIgdGl0bGU9IkZpbGUiIGlkPSJiaWItVWotdnp1Ij4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpdGVtcz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9Ik5ldyIga2V5RXF1aXZh
bGVudD0ibiIgaWQ9Ildhcy1KQS10R2wiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJuZXdEb2N1bWVudDoiIHRhcmdl
dD0iQWR5LWhJLTVnZCIgaWQ9IjRTaS1YTi1jNTQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iT3BlbuKApiIga2V5RXF1aXZhbGVudD0i
byIgaWQ9IklBby1TWS1mZDkiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJvcGVuRG9jdW1lbnQ6IiB0YXJnZXQ9IkFk
eS1oSS01Z2QiIGlkPSJiVm4tTk0tS05aIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9Ik9wZW4gRGVmYXVsdCIga2V5RXF1aXZhbGVudD0i
RCIgaWQ9ImFlaS0yei1GZFMiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJsb2FkRGVmYXVsdDoiIHRhcmdldD0iQWR5
LWhJLTVnZCIgaWQ9IlFrYy1tby1NOHEiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iT3BlbiBNYW5kZWxicm90IiBrZXlFcXVpdmFsZW50
PSJkIiBpZD0iT283LUx2LWl4WiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9ImxvYWRNYW5kZWxicm90OiIgdGFyZ2V0
PSJBZHktaEktNWdkIiBpZD0ickJ1LVRZLXE5dSIvPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJPcGVuIEp1bGlhIiBrZXlFcXVpdmFsZW50
PSJqIiBpZD0iZ2huLVRPLVBmOCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9ImxvYWRKdWxpYToiIHRhcmdldD0iQWR5
LWhJLTVnZCIgaWQ9IkxkMy1OWS1oaloiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iT3BlbiBSZWNlbnQiIGlkPSJ0WEktbXItd3dzIj4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFz
ayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnUga2V5PSJzdWJtZW51IiB0aXRsZT0iT3BlbiBS
ZWNlbnQiIHN5c3RlbU1lbnU9InJlY2VudERvY3VtZW50cyIgaWQ9Im9hcy1PYy1maVoiPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGl0ZW1zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRl
bSB0aXRsZT0iQ2xlYXIgTWVudSIgaWQ9InZOWS1yei1qNDIiPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0i
a2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNl
bGVjdG9yPSJjbGVhclJlY2VudERvY3VtZW50czoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IkRh
YS05ZC1CM1UiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pdGVtcz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51PgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJPcGVuIE5hdGl2ZSBGbGF0IENvbG9yIiBpZD0i
NGZGLWxlLWJ6MiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0
b3I9ImxvYWROYXRpdmVGbGF0Q29sb3I6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJEOFYtdFQt
VXVlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29u
bmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51
SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0g
dGl0bGU9Ik9wZW4gTmF0aXZlIE1hbmRlbGJyb3QiIGlkPSJ2a0EtZzUtSzVmIj4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9Imtl
eUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0ibG9hZE5hdGl2ZU1hbmRlbGJy
b3Q6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJmMGYtelAtRVhaIi8+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9Ik9wZW4gTmF0aXZlIEp1
bGlhIiBpZD0icmFnLWhJLTE3SCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9u
cz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rp
b24gc2VsZWN0b3I9ImxvYWROYXRpdmVKdWxpYToiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9ImxW
aC1sbC1zZzgiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51
SXRlbSBpc1NlcGFyYXRvckl0ZW09IllFUyIgaWQ9Im01NC1Jcy1pTEUiLz4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkNsb3NlIiBrZXlF
cXVpdmFsZW50PSJ3IiBpZD0iRFZvLWFHLXBpRyI+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InBlcmZvcm1DbG9zZToi
IHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IkhtTy1Mcy1pN1EiLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iU2F2ZeKApiIga2V5RXF1aXZh
bGVudD0icyIgaWQ9InB4eC01OS1QWFYiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJzYXZlRG9jdW1lbnQ6IiB0YXJn
ZXQ9IkFkeS1oSS01Z2QiIGlkPSJ0ZVotWEItcUpZIi8+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNhdmUgQXPigKYiIGtleUVxdWl2YWxl
bnQ9IlMiIGlkPSJCdzctRlQtaTNBIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0ic2F2ZURvY3VtZW50QXM6IiB0YXJn
ZXQ9IkFkeS1oSS01Z2QiIGlkPSJtRGYtenItSTBDIi8+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlJldmVydCB0byBTYXZlZCIga2V5RXF1
aXZhbGVudD0iciIgaWQ9IkthVy1mdC04NUgiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJyZXZlcnREb2N1bWVudFRv
U2F2ZWQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJpSjMtUHYta3dxIi8+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gaXNTZXBhcmF0b3JJdGVtPSJZ
RVMiIGlkPSJhSmgtaTQtYmVmIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPG1lbnVJdGVtIHRpdGxlPSJQYWdlIFNldHVw4oCmIiBrZXlFcXVpdmFsZW50PSJQIiBp
ZD0icUlTLVc4LVNpSyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIiBzaGlmdD0i
WUVTIiBjb21tYW5kPSJZRVMiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0icnVuUGFnZUxheW91dDoiIHRhcmdldD0i
QWR5LWhJLTVnZCIgaWQ9IkRpbi1yei1nQzUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iUHJpbnTigKYiIGtleUVxdWl2YWxlbnQ9InAi
IGlkPSJhVGwtMXUtSkZTIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0icHJpbnQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2Qi
IGlkPSJxYVotNHctYW9PIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
aXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudT4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxtZW51SXRlbSB0aXRsZT0iRWRpdCIgaWQ9IjVRRi1PYS1wMFQiPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlm
aWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudSBrZXk9InN1
Ym1lbnUiIHRpdGxlPSJFZGl0IiBpZD0iVzQ4LTZmLTREbCI+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8aXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJVbmRvIiBrZXlFcXVpdmFsZW50PSJ6IiBpZD0iZFJK
LTRuLVl6ZyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxj
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxhY3Rpb24gc2VsZWN0b3I9InVuZG86IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJNNmUt
Y3UtZzdWIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9t
ZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0
ZW0gdGl0bGU9IlJlZG8iIGtleUVxdWl2YWxlbnQ9IloiIGlkPSI2ZGgtelMtVmFtIj4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxl
Y3Rvcj0icmVkbzoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9Im9JQS1Scy02T0QiLz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpc1NlcGFyYXRvckl0
ZW09IllFUyIgaWQ9IldSVi1OSS1FeHoiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkN1dCIga2V5RXF1aXZhbGVudD0ieCIgaWQ9InVS
bC1pWS11bkciPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8YWN0aW9uIHNlbGVjdG9yPSJjdXQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJZSmUt
NjgtSTlzIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9t
ZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0
ZW0gdGl0bGU9IkNvcHkiIGtleUVxdWl2YWxlbnQ9ImMiIGlkPSJ4M3YtR0ctaVdVIj4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxl
Y3Rvcj0iY29weToiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IkcxZi1HTC1Kb3kiLz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iUGFzdGUi
IGtleUVxdWl2YWxlbnQ9InYiIGlkPSJnVkEtVTQtc2RMIj4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0icGFzdGU6IiB0
YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJVdlMtOGUtUWRnIi8+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlBhc3RlIGFuZCBNYXRjaCBTdHls
ZSIga2V5RXF1aXZhbGVudD0iViIgaWQ9IldlVC0zVi16d2siPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVu
dE1vZGlmaWVyTWFzayIgb3B0aW9uPSJZRVMiIGNvbW1hbmQ9IllFUyIvPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJw
YXN0ZUFzUGxhaW5UZXh0OiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iY0VoLUtYLXdKUSIvPgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25z
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJE
ZWxldGUiIGlkPSJwYTMtUUktdTJrIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2si
Lz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rp
b25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFj
dGlvbiBzZWxlY3Rvcj0iZGVsZXRlOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iME1rLU1sLVBh
TSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5l
Y3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0
ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRp
dGxlPSJTZWxlY3QgQWxsIiBrZXlFcXVpdmFsZW50PSJhIiBpZD0iUnV3LTZtLUIybSI+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2Vs
ZWN0b3I9InNlbGVjdEFsbDoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IlZObS1NaS1kaU4iLz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9u
cz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpc1NlcGFy
YXRvckl0ZW09IllFUyIgaWQ9InV5bC1oOC1YTzIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkZpbmQiIGlkPSI0RU4teUEtcDB1Ij4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFz
ayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnUga2V5PSJzdWJtZW51IiB0aXRsZT0iRmluZCIg
aWQ9IjFiNy1sMC1ueHgiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPGl0ZW1zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iRmluZOKApiIgdGFnPSIxIiBrZXlFcXVpdmFs
ZW50PSJmIiBpZD0iWHo1LW40LU8wVyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0
b3I9InBlcmZvcm1GaW5kUGFuZWxBY3Rpb246IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJjRDct
UXMtQk40Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkZpbmQgYW5kIFJl
cGxhY2XigKYiIHRhZz0iMTIiIGtleUVxdWl2YWxlbnQ9ImYiIGlkPSJZRXktSkgtVGZ6Ij4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1v
ZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siIG9wdGlvbj0iWUVTIiBj
b21tYW5kPSJZRVMiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0icGVyZm9y
bUZpbmRQYW5lbEFjdGlvbjoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IldEMy1HZy01QUoiLz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iRmluZCBOZXh0IiB0YWc9IjIiIGtl
eUVxdWl2YWxlbnQ9ImciIGlkPSJxMDktZlQtU3llIj4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlv
biBzZWxlY3Rvcj0icGVyZm9ybUZpbmRQYW5lbEFjdGlvbjoiIHRhcmdldD0iQWR5LWhJLTVnZCIg
aWQ9Ik5Eby1SWi12OVIiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iRmlu
ZCBQcmV2aW91cyIgdGFnPSIzIiBrZXlFcXVpdmFsZW50PSJHIiBpZD0iT3dNLW1oLVFNViI+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxj
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InBlcmZvcm1GaW5kUGFuZWxBY3Rpb246
IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJIT2gtc1ktM2F5Ii8+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51
SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8bWVudUl0ZW0gdGl0bGU9IlVzZSBTZWxlY3Rpb24gZm9yIEZpbmQiIHRhZz0iNyIga2V5RXF1
aXZhbGVudD0iZSIgaWQ9ImJ1Si11Zy1wS3QiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNl
bGVjdG9yPSJwZXJmb3JtRmluZFBhbmVsQWN0aW9uOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0i
VTc2LW52LXA1RCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJKdW1wIHRv
IFNlbGVjdGlvbiIga2V5RXF1aXZhbGVudD0iaiIgaWQ9IlMwcC1vQy1tTGQiPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlv
bnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJjZW50ZXJTZWxlY3Rpb25JblZpc2libGVBcmVhOiIg
dGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iSU9HLTZELWc1QiIvPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0
ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2l0
ZW1zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnU+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNw
ZWxsaW5nIGFuZCBHcmFtbWFyIiBpZD0iRHYxLWlvLVl2NyI+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50
TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxtZW51IGtleT0ic3VibWVudSIgdGl0bGU9IlNwZWxsaW5nIiBpZD0iM0lOLXNVLTNCZyI+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aXRlbXM+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1l
bnVJdGVtIHRpdGxlPSJTaG93IFNwZWxsaW5nIGFuZCBHcmFtbWFyIiBrZXlFcXVpdmFsZW50PSI6
IiBpZD0iSEZvLWN5LXp4SSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InNo
b3dHdWVzc1BhbmVsOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0idkZqLUtzLWh5MyIvPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nv
bm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJDaGVjayBEb2N1bWVudCBOb3ciIGtleUVx
dWl2YWxlbnQ9IjsiIGlkPSJoejItQ1UtQ1I3Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBz
ZWxlY3Rvcj0iY2hlY2tTcGVsbGluZzoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9ImZ6Ny1WQy1y
ZU0iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpc1NlcGFyYXRvckl0ZW09IllFUyIg
aWQ9ImJOdy1vZC1tcDUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkNoZWNrIFNwZWxsaW5nIFdoaWxlIFR5cGlu
ZyIgaWQ9InJiRC1SaC13SU4iPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlm
aWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJ0b2dnbGVDb250
aW51b3VzU3BlbGxDaGVja2luZzoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9Ijd3Ni1Rei0wa0Ii
Lz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iQ2hlY2sgR3JhbW1hciBXaXRo
IFNwZWxsaW5nIiBpZD0ibUs2LTJwLTRKRyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFs
ZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InRv
Z2dsZUdyYW1tYXJDaGVja2luZzoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9Im11RC1Rbi1qNHci
Lz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iQ29ycmVjdCBTcGVsbGluZyBB
dXRvbWF0aWNhbGx5IiBpZD0iNzhZLWhBLTYydiI+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVp
dmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9
InRvZ2dsZUF1dG9tYXRpY1NwZWxsaW5nQ29ycmVjdGlvbjoiIHRhcmdldD0iQWR5LWhJLTVnZCIg
aWQ9IjJsTS1RaS1XQVAiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pdGVtcz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51PgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJTdWJzdGl0dXRpb25zIiBpZD0iOWlj
LUZMLW9ieCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxt
b2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51IGtleT0ic3VibWVudSIgdGl0
bGU9IlN1YnN0aXR1dGlvbnMiIGlkPSJGZU0tRDgtV1ZyIj4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpdGVtcz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNob3cgU3Vi
c3RpdHV0aW9ucyIgaWQ9Ino2Ri1GVy0zbnoiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZh
bGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJv
cmRlckZyb250U3Vic3RpdHV0aW9uc1BhbmVsOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0ib2t1
LW1yLWlTcSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIGlzU2VwYXJhdG9ySXRlbT0i
WUVTIiBpZD0iZ1B4LUM5LXVVTyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iU21hcnQgQ29weS9QYXN0ZSIgaWQ9
Ijl5dC00Qi1uU00iPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFz
ayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJ0b2dnbGVTbWFydEluc2Vy
dERlbGV0ZToiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IjNJSi1TZS1EWkQiLz4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0
aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iU21hcnQgUXVvdGVzIiBpZD0iaFFiLTJ2LWZZdiI+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0
aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InRvZ2dsZUF1dG9tYXRpY1F1b3RlU3Vic3RpdHV0
aW9uOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0icHRxLXhkLVFPQSIvPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25z
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
bWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPG1lbnVJdGVtIHRpdGxlPSJTbWFydCBEYXNoZXMiIGlkPSJyZ00tZjQteWNuIj4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1v
ZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25z
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0idG9nZ2xlQXV0b21hdGljRGFzaFN1YnN0aXR1dGlvbjoi
IHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9Im9DdC1wTy05Z1MiLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJ
dGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxtZW51SXRlbSB0aXRsZT0iU21hcnQgTGlua3MiIGlkPSJjd0wtUDEtamlkIj4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVy
TWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PGFjdGlvbiBzZWxlY3Rvcj0idG9nZ2xlQXV0b21hdGljTGlua0RldGVjdGlvbjoiIHRhcmdldD0i
QWR5LWhJLTVnZCIgaWQ9IkdpcC1FMy1Gb3YiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRl
bSB0aXRsZT0iRGF0YSBEZXRlY3RvcnMiIGlkPSJ0UnItcGQtMVBTIj4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBr
ZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlv
biBzZWxlY3Rvcj0idG9nZ2xlQXV0b21hdGljRGF0YURldGVjdGlvbjoiIHRhcmdldD0iQWR5LWhJ
LTVnZCIgaWQ9IlIxSS1OcS1LYmwiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRs
ZT0iVGV4dCBSZXBsYWNlbWVudCIgaWQ9IkhGUS1nSy1ORkEiPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0i
a2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNl
bGVjdG9yPSJ0b2dnbGVBdXRvbWF0aWNUZXh0UmVwbGFjZW1lbnQ6IiB0YXJnZXQ9IkFkeS1oSS01
Z2QiIGlkPSJEdlAtRmUtUHk2Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaXRlbXM+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudT4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iVHJhbnNmb3JtYXRpb25zIiBp
ZD0iMm9JLVJuLVpKQyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51IGtleT0ic3VibWVu
dSIgdGl0bGU9IlRyYW5zZm9ybWF0aW9ucyIgaWQ9ImM4YS15Ni1WUWQiPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGl0ZW1zPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0i
TWFrZSBVcHBlciBDYXNlIiBpZD0idm1WLTZkLTdqSSI+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlF
cXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0
b3I9InVwcGVyY2FzZVdvcmQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJzUGgtVGstZWR1Ii8+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9Ik1ha2UgTG93ZXIgQ2FzZSIgaWQ9
ImQ5TS1DRC1hTWQiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFz
ayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJsb3dlcmNhc2VXb3JkOiIg
dGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iaVVaLWI1LWhpbCIvPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0
ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PG1lbnVJdGVtIHRpdGxlPSJDYXBpdGFsaXplIiBpZD0iVUVaLUJzLWxxRyI+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1h
c2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxh
Y3Rpb24gc2VsZWN0b3I9ImNhcGl0YWxpemVXb3JkOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0i
MjZILVRMLW5zaCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2l0ZW1zPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnU+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNwZWVjaCIgaWQ9InhyRS1NWi1qWDAiPgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNr
IGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8bWVudSBrZXk9InN1Ym1lbnUiIHRpdGxlPSJTcGVlY2gi
IGlkPSIzclMtWkEtTm9IIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxpdGVtcz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlN0YXJ0IFNwZWFraW5nIiBpZD0iWW5rLWY4
LWNMWiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxj
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InN0YXJ0U3BlYWtpbmc6IiB0YXJnZXQ9
IkFkeS1oSS01Z2QiIGlkPSI2NTQtTmcta3lsIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0
ZW0gdGl0bGU9IlN0b3AgU3BlYWtpbmciIGlkPSJPeXotZHktREdtIj4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBr
ZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlv
biBzZWxlY3Rvcj0ic3RvcFNwZWFraW5nOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iZFg4LTZw
LWp5OSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8L2l0ZW1zPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L21lbnU+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDwvaXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudT4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iRm9ybWF0IiBpZD0ianhULUNVLW5JUyI+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFs
ZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51
IGtleT0ic3VibWVudSIgdGl0bGU9IkZvcm1hdCIgaWQ9IkdFTy1Jdy1jS3IiPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPGl0ZW1zPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iRm9udCIgaWQ9IkdpNS0xUy1SUUIi
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJN
YXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudSBrZXk9InN1Ym1lbnUiIHRpdGxlPSJGb250
IiBzeXN0ZW1NZW51PSJmb250IiBpZD0iYVhhLWFNLUphcSI+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aXRlbXM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJTaG93IEZv
bnRzIiBrZXlFcXVpdmFsZW50PSJ0IiBpZD0iUTVlLThLLU5EcSI+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxhY3Rpb24gc2VsZWN0b3I9Im9yZGVyRnJvbnRGb250UGFuZWw6IiB0YXJnZXQ9IllMeS02NS0x
YnoiIGlkPSJXSHItbnEtMnhBIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9
IkJvbGQiIHRhZz0iMiIga2V5RXF1aXZhbGVudD0iYiIgaWQ9IkdCOS1PTS1lMjciPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVj
dGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJhZGRGb250VHJhaXQ6IiB0YXJnZXQ9IllMeS02
NS0xYnoiIGlkPSJocWstaHItc1lWIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0
bGU9Ikl0YWxpYyIgdGFnPSIxIiBrZXlFcXVpdmFsZW50PSJpIiBpZD0iVmp4LXhpLW5qcSI+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxj
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9ImFkZEZvbnRUcmFpdDoiIHRhcmdldD0i
WUx5LTY1LTFieiIgaWQ9IklIVi1PQi1jMDMiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRl
bSB0aXRsZT0iVW5kZXJsaW5lIiBrZXlFcXVpdmFsZW50PSJ1IiBpZD0iV1JHLUNELUsxUyI+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxj
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InVuZGVybGluZToiIHRhcmdldD0iQWR5
LWhJLTVnZCIgaWQ9IkZZUy0yYi1KQVkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBp
c1NlcGFyYXRvckl0ZW09IllFUyIgaWQ9IjVnVC1LQy1XU08iLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkJpZ2dl
ciIgdGFnPSIzIiBrZXlFcXVpdmFsZW50PSIrIiBpZD0iUHRwLVNQLVZFTCI+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9u
cz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9Im1vZGlmeUZvbnQ6IiB0YXJnZXQ9IllMeS02NS0xYnoi
IGlkPSJVYzctZGktVW5MIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNt
YWxsZXIiIHRhZz0iNCIga2V5RXF1aXZhbGVudD0iLSIgaWQ9ImkxZC1Fci1xU1QiPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVj
dGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJtb2RpZnlGb250OiIgdGFyZ2V0PSJZTHktNjUt
MWJ6IiBpZD0iSGNYLUxmLWVOZCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIGlzU2Vw
YXJhdG9ySXRlbT0iWUVTIiBpZD0ia3gzLURrLXgzQiIvPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iS2VybiIgaWQ9
ImpCUS1yNi1WSzIiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFz
ayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8bWVudSBrZXk9InN1Ym1lbnUiIHRpdGxlPSJLZXJuIiBpZD0idGxELU9hLW9BTSI+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8aXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJVc2UgRGVmYXVsdCIgaWQ9IkdVYS1l
Ty1jd1kiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlm
aWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0
aW9uIHNlbGVjdG9yPSJ1c2VTdGFuZGFyZEtlcm5pbmc6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlk
PSI2ZGstOWwtQ2tnIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51
SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlVzZSBOb25lIiBpZD0iY0RCLUlLLWhiUiI+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNr
Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2Vs
ZWN0b3I9InR1cm5PZmZLZXJuaW5nOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iVThhLWd6LU1h
YSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPG1lbnVJdGVtIHRpdGxlPSJUaWdodGVuIiBpZD0iNDZQLWNCLUFZaiI+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InRpZ2h0
ZW5LZXJuaW5nOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iaHI3LU56LThybyIvPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVt
IHRpdGxlPSJMb29zZW4iIGlkPSJvZ2MtclgtdEMxIj4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFz
ayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rp
b25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0ibG9vc2VuS2VybmluZzoiIHRh
cmdldD0iQWR5LWhJLTVnZCIgaWQ9IjhpNC1mOS1GS0UiLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0
aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pdGVtcz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51PgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJ
dGVtIHRpdGxlPSJMaWdhdHVyZXMiIGlkPSJvNmUtcjAtTVdxIj4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9
ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnUga2V5PSJzdWJtZW51IiB0aXRsZT0i
TGlnYXR1cmVzIiBpZD0idzBtLXZ5LVNDOSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aXRlbXM+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVt
IHRpdGxlPSJVc2UgRGVmYXVsdCIgaWQ9ImFndC1VTC0wZTMiPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZp
ZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29u
bmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJ1c2VTdGFuZGFyZExp
Z2F0dXJlczoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9Ijd1Ui13ZC1EeDYiLz4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0
aXRsZT0iVXNlIE5vbmUiIGlkPSJKN3ktbE0tcVBWIj4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFz
ayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rp
b25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0idHVybk9mZkxpZ2F0dXJlczoi
IHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9ImlYMi1nQS1JbHoiLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25u
ZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iVXNl
IEFsbCIgaWQ9InhRRC0xZi1XNHQiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5
RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJ1c2VBbGxMaWdhdHVyZXM6IiB0YXJnZXQ9IkFk
eS1oSS01Z2QiIGlkPSJLY0Ita0EtVHVLIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvaXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudT4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRs
ZT0iQmFzZWxpbmUiIGlkPSJPYVEtWDMtVnNvIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2
YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPG1lbnUga2V5PSJzdWJtZW51IiB0aXRsZT0iQmFzZWxpbmUi
IGlkPSJpamstRUItZGdhIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxpdGVtcz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlVz
ZSBEZWZhdWx0IiBpZD0iM09tLUV5LTJWSyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5
PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InVuc2NyaXB0OiIgdGFyZ2V0PSJBZHkt
aEktNWdkIiBpZD0iMHZaLTk1LVl3biIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJTdXBlcnNjcmlwdCIgaWQ9
IlJxYy0zNC1jSUYiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVu
dE1vZGlmaWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8YWN0aW9uIHNlbGVjdG9yPSJzdXBlcnNjcmlwdDoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9
IjNxVi1mby13cFUiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJ
dGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iU3Vic2NyaXB0IiBpZD0iSTBTLWdoLTQ2bCI+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNr
Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2Vs
ZWN0b3I9InN1YnNjcmlwdDoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IlE2Vy00Vy1JR3oiLz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxt
ZW51SXRlbSB0aXRsZT0iUmFpc2UiIGlkPSIyaDctRVItQW9HIj4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlm
aWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNv
bm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0icmFpc2VCYXNlbGlu
ZToiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IjRzay0zMS03UTkiLz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9j
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0i
TG93ZXIiIGlkPSIxdHgtVzAteER3Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9Imtl
eUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0ibG93ZXJCYXNlbGluZToiIHRhcmdldD0iQWR5
LWhJLTVnZCIgaWQ9Ik9GMS1iYy1LVzQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPC9pdGVtcz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51PgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIGlzU2Vw
YXJhdG9ySXRlbT0iWUVTIiBpZD0iTmR3LXEzLWZhcSIvPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iU2hvdyBDb2xv
cnMiIGtleUVxdWl2YWxlbnQ9IkMiIGlkPSJiZ24tQ1QtY0VrIj4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PGFjdGlvbiBzZWxlY3Rvcj0ib3JkZXJGcm9udENvbG9yUGFuZWw6IiB0YXJnZXQ9IkFkeS1oSS01
Z2QiIGlkPSJtU1gtWHotRFYzIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gaXNTZXBh
cmF0b3JJdGVtPSJZRVMiIGlkPSJpTXMtekEtVUZKIi8+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJDb3B5IFN0eWxl
IiBrZXlFcXVpdmFsZW50PSJjIiBpZD0iNVZ2LWx6LUJzRCI+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJr
ZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIiBvcHRpb249IllFUyIgY29tbWFuZD0iWUVTIi8+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxj
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9ImNvcHlGb250OiIgdGFyZ2V0PSJBZHkt
aEktNWdkIiBpZD0iR0pPLXhBLUw0cSIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRp
dGxlPSJQYXN0ZSBTdHlsZSIga2V5RXF1aXZhbGVudD0idiIgaWQ9InZLQy1qTS1Na0giPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9k
aWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIgb3B0aW9uPSJZRVMiIGNv
bW1hbmQ9IllFUyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJwYXN0ZUZv
bnQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJKZkQtQ0wtbGVPIi8+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9t
ZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDwvaXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
bWVudT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVt
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRs
ZT0iVGV4dCIgaWQ9IkZhbC1JNC1QWmsiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFz
ayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudSBr
ZXk9InN1Ym1lbnUiIHRpdGxlPSJUZXh0IiBpZD0iZDljLW1lLUwySCI+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aXRlbXM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJB
bGlnbiBMZWZ0IiBrZXlFcXVpdmFsZW50PSJ7IiBpZD0iWk0xLTZRLXl5MSI+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9u
cz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9ImFsaWduTGVmdDoiIHRhcmdldD0iQWR5LWhJLTVnZCIg
aWQ9InpVdi1SMS11QWEiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iQ2Vu
dGVyIiBrZXlFcXVpdmFsZW50PSJ8IiBpZD0iVklZLUFnLXpjYiI+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxhY3Rpb24gc2VsZWN0b3I9ImFsaWduQ2VudGVyOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0i
c3BYLW1rLWtjUyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJKdXN0aWZ5
IiBpZD0iSjVVLTV3LWcyMyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZp
ZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9ImFsaWduSnVzdGlm
aWVkOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0ibGpMLTdVLWpORCIvPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25z
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
bWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPG1lbnVJdGVtIHRpdGxlPSJBbGlnbiBSaWdodCIga2V5RXF1aXZhbGVudD0ifSIgaWQ9
IndiMi12RC1scTQiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJhbGlnblJp
Z2h0OiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0icjQ4LWJHLVllWSIvPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25z
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
bWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPG1lbnVJdGVtIGlzU2VwYXJhdG9ySXRlbT0iWUVTIiBpZD0iNHMyLUdZLVZmSyIvPgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51
SXRlbSB0aXRsZT0iV3JpdGluZyBEaXJlY3Rpb24iIGlkPSJIMWItU2ktbzlKIj4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVy
TWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnUga2V5PSJzdWJtZW51
IiB0aXRsZT0iV3JpdGluZyBEaXJlY3Rpb24iIGlkPSI4bXItc20tWWpkIj4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpdGVtcz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlBhcmFncmFwaCIgZW5hYmxlZD0iTk8iIGlkPSJadk8t
R2stUVVIIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2Rp
Zmllck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpZD0iWUdz
LWo1LVNBUiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxzdHJpbmcga2V5PSJ0aXRsZSI+CURlZmF1bHQ8L3N0cmlu
Zz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1h
c2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBz
ZWxlY3Rvcj0ibWFrZUJhc2VXcml0aW5nRGlyZWN0aW9uTmF0dXJhbDoiIHRhcmdldD0iQWR5LWhJ
LTVnZCIgaWQ9InF0Vi01ZS1VQlAiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpZD0iTGJoLUoyLXFWVSI+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxzdHJpbmcga2V5PSJ0aXRsZSI+CUxlZnQgdG8gUmlnaHQ8L3N0cmluZz4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0ibWFr
ZUJhc2VXcml0aW5nRGlyZWN0aW9uTGVmdFRvUmlnaHQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlk
PSJTMFgtOVMtUVNmIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51
SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bWVudUl0ZW0gaWQ9ImpGcS10Qi00S3giPgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ry
aW5nIGtleT0idGl0bGUiPglSaWdodCB0byBMZWZ0PC9zdHJpbmc+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2Rp
Zmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxj
b25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9Im1ha2VCYXNlV3Jp
dGluZ0RpcmVjdGlvblJpZ2h0VG9MZWZ0OiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0iNWZrLXFC
LUFxSiIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPG1lbnVJdGVtIGlzU2VwYXJhdG9ySXRlbT0iWUVTIiBpZD0ic3dwLWdyLWEyMSIvPgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxtZW51SXRlbSB0aXRsZT0iU2VsZWN0aW9uIiBlbmFibGVkPSJOTyIgaWQ9ImNxdi1m
ai1JaEEiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlm
aWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIGlkPSJOb3At
Y2otOTNRIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPHN0cmluZyBrZXk9InRpdGxlIj4JRGVmYXVsdDwvc3RyaW5n
PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFz
ayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNl
bGVjdG9yPSJtYWtlVGV4dFdyaXRpbmdEaXJlY3Rpb25OYXR1cmFsOiIgdGFyZ2V0PSJBZHktaEkt
NWdkIiBpZD0ibFBJLVNlLVpIcCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIGlkPSJCZ00tdmUtYzkzIj4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPHN0cmluZyBrZXk9InRpdGxlIj4JTGVmdCB0byBSaWdodDwvc3RyaW5nPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIvPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJtYWtl
VGV4dFdyaXRpbmdEaXJlY3Rpb25MZWZ0VG9SaWdodDoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9
ImNhVy1Cdi13OTQiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJ
dGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxtZW51SXRlbSBpZD0iUkI0LVNtLUh1QyI+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJp
bmcga2V5PSJ0aXRsZSI+CVJpZ2h0IHRvIExlZnQ8L3N0cmluZz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlm
aWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNv
bm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0ibWFrZVRleHRXcml0
aW5nRGlyZWN0aW9uUmlnaHRUb0xlZnQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJFWEQtNnIt
WlV1Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDwvaXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDwvbWVudT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxtZW51SXRlbSBpc1NlcGFyYXRvckl0ZW09IllFUyIgaWQ9
ImZLeS1nOS0xZ20iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNob3cgUnVsZXIiIGlkPSJ2TG0tM0ktSVVMIj4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siLz4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rp
b25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPGFjdGlvbiBzZWxlY3Rvcj0idG9nZ2xlUnVsZXI6IiB0YXJnZXQ9IkFkeS1oSS01
Z2QiIGlkPSJGT3gtSEotS3dZIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9
IkNvcHkgUnVsZXIiIGtleUVxdWl2YWxlbnQ9ImMiIGlkPSJNa1YtUHItUEs1Ij4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1vZGlmaWVy
TWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siIGNvbnRyb2w9IllFUyIgY29tbWFu
ZD0iWUVTIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9ImNvcHlSdWxlcjoi
IHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9IjcxaS1mVy0zVzIiLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJ
dGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxtZW51SXRlbSB0aXRsZT0iUGFzdGUgUnVsZXIiIGtleUVxdWl2YWxlbnQ9InYiIGlkPSJMVk0t
a08tZlZJIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siIGNv
bnRyb2w9IllFUyIgY29tbWFuZD0iWUVTIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2Vs
ZWN0b3I9InBhc3RlUnVsZXI6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJjU2gtd2QtcU0yIi8+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDwvaXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDwvbWVudT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9p
dGVtcz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51PgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPG1lbnVJdGVtIHRpdGxlPSJWaWV3IiBpZD0iSDhoLTdiLU00diI+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZp
ZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZW51IGtleT0ic3Vi
bWVudSIgdGl0bGU9IlZpZXciIGlkPSJIeVYtZmgtUmdPIj4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxpdGVtcz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IlNob3cgVG9vbGJhciIga2V5RXF1aXZhbGVudD0idCIg
aWQ9InNuVy1TOC1DdzUiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIgb3B0aW9u
PSJZRVMiIGNvbW1hbmQ9IllFUyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJ0b2dnbGVUb29sYmFyU2hvd246IiB0
YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJCWFktd2MtejBDIi8+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9IkN1c3RvbWl6ZSBUb29sYmFy4oCm
IiBpZD0iMVVLLThuLVFQUCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24g
c2VsZWN0b3I9InJ1blRvb2xiYXJDdXN0b21pemF0aW9uUGFsZXR0ZToiIHRhcmdldD0iQWR5LWhJ
LTVnZCIgaWQ9InBRSS1nMy1NVFciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxtZW51SXRlbSBpc1NlcGFyYXRvckl0ZW09IllFUyIgaWQ9ImhCMy1MRi1oMFkiLz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0bGU9
IlJlc2V0IHZpZXdwb3J0IiBrZXlFcXVpdmFsZW50PSJSIiBpZD0iMFJFLUFtLXhTYyI+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2Vs
ZWN0b3I9InJlc2V0Vmlld3BvcnQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJQZEYtdWItMzVG
Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29ubmVj
dGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRl
bT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0gdGl0
bGU9IlNob3cgU2lkZWJhciIga2V5RXF1aXZhbGVudD0icyIgaWQ9ImtJUC12Zi1oYUUiPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtl
eT0ia2V5RXF1aXZhbGVudE1vZGlmaWVyTWFzayIgY29udHJvbD0iWUVTIiBjb21tYW5kPSJZRVMi
Lz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rp
b25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFj
dGlvbiBzZWxlY3Rvcj0idG9nZ2xlU291cmNlTGlzdDoiIHRhcmdldD0iQWR5LWhJLTVnZCIgaWQ9
Iml3YS1nYy01S00iLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxt
ZW51SXRlbSB0aXRsZT0iRW50ZXIgRnVsbCBTY3JlZW4iIGtleUVxdWl2YWxlbnQ9ImYiIGlkPSI0
SjctZFAtdHhhIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
PG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmllck1hc2siIGNvbnRyb2w9IllF
UyIgY29tbWFuZD0iWUVTIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InRvZ2dsZUZ1bGxTY3JlZW46IiB0YXJnZXQ9
IkFkeS1oSS01Z2QiIGlkPSJkVTMtTUEtMVJxIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDwvaXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVu
dT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxtZW51SXRlbSB0aXRsZT0iV2luZG93IiBpZD0iYVVGLWQxLTViUiI+
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2RpZmllck1hc2sga2V5PSJrZXlF
cXVpdmFsZW50TW9kaWZpZXJNYXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxtZW51IGtleT0ic3VibWVudSIgdGl0bGU9IldpbmRvdyIgc3lzdGVtTWVudT0id2luZG93IiBp
ZD0iVGQ3LWFELTVsbyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aXRl
bXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRp
dGxlPSJNaW5pbWl6ZSIga2V5RXF1aXZhbGVudD0ibSIgaWQ9Ik9ZNy1XRi1wb1YiPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVj
dG9yPSJwZXJmb3JtTWluaWF0dXJpemU6IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlkPSJWd1QtV0Qt
WVBlIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY29u
bmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51
SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudUl0ZW0g
dGl0bGU9Ilpvb20iIGlkPSJSNG8tbjItRXE0Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmll
ck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNv
bm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPGFjdGlvbiBzZWxlY3Rvcj0icGVyZm9ybVpvb206IiB0YXJnZXQ9IkFkeS1oSS01Z2QiIGlk
PSJESWwtY0MtY0NzIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
bWVudUl0ZW0gaXNTZXBhcmF0b3JJdGVtPSJZRVMiIGlkPSJldTMtN2kteUlNIi8+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJCcmluZyBB
bGwgdG8gRnJvbnQiIGlkPSJMRTItYVItMFhKIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPG1vZGlmaWVyTWFzayBrZXk9ImtleUVxdWl2YWxlbnRNb2RpZmll
ck1hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNv
bm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPGFjdGlvbiBzZWxlY3Rvcj0iYXJyYW5nZUluRnJvbnQ6IiB0YXJnZXQ9IkFkeS1oSS01Z2Qi
IGlkPSJEUk4tZnUtZ1FoIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgPC9tZW51SXRlbT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwv
aXRlbXM+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudT4KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8L21lbnVJdGVtPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDxtZW51SXRlbSB0aXRsZT0iSGVscCIgaWQ9Indwci0zcS1NY2QiPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICA8bW9kaWZpZXJNYXNrIGtleT0ia2V5RXF1aXZhbGVudE1vZGlm
aWVyTWFzayIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWVudSBrZXk9InN1
Ym1lbnUiIHRpdGxlPSJIZWxwIiBzeXN0ZW1NZW51PSJoZWxwIiBpZD0iRjJTLWZ6LU5WUSI+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aXRlbXM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1lbnVJdGVtIHRpdGxlPSJXSExTTCBUZXN0cyBI
ZWxwIiBrZXlFcXVpdmFsZW50PSI/IiBpZD0iRktFLVNtLUt1bSI+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhY3Rpb24gc2VsZWN0b3I9InNob3dI
ZWxwOiIgdGFyZ2V0PSJBZHktaEktNWdkIiBpZD0ieTdYLTJRLTlubyIvPgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbWVudUl0ZW0+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8L2l0ZW1zPgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA8L21lbnU+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9tZW51SXRlbT4K
KyAgICAgICAgICAgICAgICAgICAgICAgIDwvaXRlbXM+CisgICAgICAgICAgICAgICAgICAgIDwv
bWVudT4KKyAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAg
ICAgICAgICAgPG91dGxldCBwcm9wZXJ0eT0iZGVsZWdhdGUiIGRlc3RpbmF0aW9uPSJWb2UtVHgt
ckxDIiBpZD0iUHJELWZ1LVA2bSIvPgorICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25z
PgorICAgICAgICAgICAgICAgIDwvYXBwbGljYXRpb24+CisgICAgICAgICAgICAgICAgPGN1c3Rv
bU9iamVjdCBpZD0iVm9lLVR4LXJMQyIgY3VzdG9tQ2xhc3M9IkFwcERlbGVnYXRlIi8+CisgICAg
ICAgICAgICAgICAgPGN1c3RvbU9iamVjdCBpZD0iWUx5LTY1LTFieiIgY3VzdG9tQ2xhc3M9Ik5T
Rm9udE1hbmFnZXIiLz4KKyAgICAgICAgICAgICAgICA8Y3VzdG9tT2JqZWN0IGlkPSJBZHktaEkt
NWdkIiB1c2VyTGFiZWw9IkZpcnN0IFJlc3BvbmRlciIgY3VzdG9tQ2xhc3M9Ik5TUmVzcG9uZGVy
IiBzY2VuZU1lbWJlcklEPSJmaXJzdFJlc3BvbmRlciIvPgorICAgICAgICAgICAgPC9vYmplY3Rz
PgorICAgICAgICAgICAgPHBvaW50IGtleT0iY2FudmFzTG9jYXRpb24iIHg9Ijc1IiB5PSIwLjAi
Lz4KKyAgICAgICAgPC9zY2VuZT4KKyAgICAgICAgPCEtLVdpbmRvdyBDb250cm9sbGVyLS0+Cisg
ICAgICAgIDxzY2VuZSBzY2VuZUlEPSJSMlYtQjAtbkk0Ij4KKyAgICAgICAgICAgIDxvYmplY3Rz
PgorICAgICAgICAgICAgICAgIDx3aW5kb3dDb250cm9sbGVyIGlkPSJCOEQtME4tNXdTIiBzY2Vu
ZU1lbWJlcklEPSJ2aWV3Q29udHJvbGxlciI+CisgICAgICAgICAgICAgICAgICAgIDx3aW5kb3cg
a2V5PSJ3aW5kb3ciIHRpdGxlPSJXaW5kb3ciIGFsbG93c1Rvb2xUaXBzV2hlbkFwcGxpY2F0aW9u
SXNJbmFjdGl2ZT0iTk8iIGF1dG9yZWNhbGN1bGF0ZXNLZXlWaWV3TG9vcD0iTk8iIHJlbGVhc2Vk
V2hlbkNsb3NlZD0iTk8iIHZpc2libGVBdExhdW5jaD0iTk8iIGFuaW1hdGlvbkJlaGF2aW9yPSJk
ZWZhdWx0IiBpZD0iSVF2LUlCLWlMQSI+CisgICAgICAgICAgICAgICAgICAgICAgICA8d2luZG93
U3R5bGVNYXNrIGtleT0ic3R5bGVNYXNrIiB0aXRsZWQ9IllFUyIgY2xvc2FibGU9IllFUyIgbWlu
aWF0dXJpemFibGU9IllFUyIgcmVzaXphYmxlPSJZRVMiLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgIDx3aW5kb3dQb3NpdGlvbk1hc2sga2V5PSJpbml0aWFsUG9zaXRpb25NYXNrIiBsZWZ0U3Ry
dXQ9IllFUyIgcmlnaHRTdHJ1dD0iWUVTIiB0b3BTdHJ1dD0iWUVTIiBib3R0b21TdHJ1dD0iWUVT
Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCBrZXk9ImNvbnRlbnRSZWN0IiB4PSIx
OTYiIHk9IjI0MCIgd2lkdGg9IjQ4MCIgaGVpZ2h0PSIyNzAiLz4KKyAgICAgICAgICAgICAgICAg
ICAgICAgIDxyZWN0IGtleT0ic2NyZWVuUmVjdCIgeD0iMC4wIiB5PSIwLjAiIHdpZHRoPSIxNjgw
IiBoZWlnaHQ9IjEwMjciLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxjb25uZWN0aW9ucz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3V0bGV0IHByb3BlcnR5PSJkZWxlZ2F0ZSIg
ZGVzdGluYXRpb249IkI4RC0wTi01d1MiIGlkPSI5OHItaU4telpjIi8+CisgICAgICAgICAgICAg
ICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICA8L3dpbmRvdz4K
KyAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAg
ICAgPHNlZ3VlIGRlc3RpbmF0aW9uPSJYZkctbFEtOXdEIiBraW5kPSJyZWxhdGlvbnNoaXAiIHJl
bGF0aW9uc2hpcD0id2luZG93LnNoYWRvd2VkQ29udGVudFZpZXdDb250cm9sbGVyIiBpZD0iY3Ey
LUZFLUpRTSIvPgorICAgICAgICAgICAgICAgICAgICA8L2Nvbm5lY3Rpb25zPgorICAgICAgICAg
ICAgICAgIDwvd2luZG93Q29udHJvbGxlcj4KKyAgICAgICAgICAgICAgICA8Y3VzdG9tT2JqZWN0
IGlkPSJPa3ktelktb1A0IiB1c2VyTGFiZWw9IkZpcnN0IFJlc3BvbmRlciIgY3VzdG9tQ2xhc3M9
Ik5TUmVzcG9uZGVyIiBzY2VuZU1lbWJlcklEPSJmaXJzdFJlc3BvbmRlciIvPgorICAgICAgICAg
ICAgPC9vYmplY3RzPgorICAgICAgICAgICAgPHBvaW50IGtleT0iY2FudmFzTG9jYXRpb24iIHg9
Ijc1IiB5PSIyNTAiLz4KKyAgICAgICAgPC9zY2VuZT4KKyAgICAgICAgPCEtLVZpZXcgQ29udHJv
bGxlci0tPgorICAgICAgICA8c2NlbmUgc2NlbmVJRD0iaEl6LUFQLVZPRCI+CisgICAgICAgICAg
ICA8b2JqZWN0cz4KKyAgICAgICAgICAgICAgICA8dmlld0NvbnRyb2xsZXIgaWQ9IlhmRy1sUS05
d0QiIGN1c3RvbUNsYXNzPSJWaWV3Q29udHJvbGxlciIgc2NlbmVNZW1iZXJJRD0idmlld0NvbnRy
b2xsZXIiPgorICAgICAgICAgICAgICAgICAgICA8dmlldyBrZXk9InZpZXciIHdhbnRzTGF5ZXI9
IllFUyIgaWQ9Im0yUy1KcC1RZGwiPgorICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qga2V5
PSJmcmFtZSIgeD0iMC4wIiB5PSIwLjAiIHdpZHRoPSIxMjU2IiBoZWlnaHQ9IjQzOSIvPgorICAg
ICAgICAgICAgICAgICAgICAgICAgPGF1dG9yZXNpemluZ01hc2sga2V5PSJhdXRvcmVzaXppbmdN
YXNrIi8+CisgICAgICAgICAgICAgICAgICAgICAgICA8c3Vidmlld3M+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgPGJ1dHRvbiB2ZXJ0aWNhbEh1Z2dpbmdQcmlvcml0eT0iNzUwIiBmaXhl
ZEZyYW1lPSJZRVMiIHRyYW5zbGF0ZXNBdXRvcmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzPSJO
TyIgaWQ9InpXQS11cy1Ga2YiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVj
dCBrZXk9ImZyYW1lIiB4PSIxNCIgeT0iMTMiIHdpZHRoPSI5MCIgaGVpZ2h0PSIzMiIvPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXV0b3Jlc2l6aW5nTWFzayBrZXk9ImF1dG9y
ZXNpemluZ01hc2siIGZsZXhpYmxlTWF4WD0iWUVTIiBmbGV4aWJsZU1heFk9IllFUyIvPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uQ2VsbCBrZXk9ImNlbGwiIHR5cGU9
InB1c2giIHRpdGxlPSJDb21waWxlIiBiZXplbFN0eWxlPSJyb3VuZGVkIiBhbGlnbm1lbnQ9ImNl
bnRlciIgYm9yZGVyU3R5bGU9ImJvcmRlciIgaW1hZ2VTY2FsaW5nPSJwcm9wb3J0aW9uYWxseURv
d24iIGluc2V0PSIyIiBpZD0iMUs1LVBOLW5MRSI+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8YmVoYXZpb3Iga2V5PSJiZWhhdmlvciIgcHVzaEluPSJZRVMiIGxpZ2h0QnlC
YWNrZ3JvdW5kPSJZRVMiIGxpZ2h0QnlHcmF5PSJZRVMiLz4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDxmb250IGtleT0iZm9udCIgbWV0YUZvbnQ9InN5c3RlbSIvPgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN0cmluZyBrZXk9ImtleUVxdWl2YWxl
bnQiPnI8L3N0cmluZz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtb2Rp
Zmllck1hc2sga2V5PSJrZXlFcXVpdmFsZW50TW9kaWZpZXJNYXNrIiBjb21tYW5kPSJZRVMiLz4K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b25DZWxsPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8Y29ubmVjdGlvbnM+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICA8YWN0aW9uIHNlbGVjdG9yPSJjb21waWxlQ2xpY2tlZDoiIHRhcmdl
dD0iWGZHLWxRLTl3RCIgaWQ9IjFGUi1LRS1udHkiLz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPC9jb25uZWN0aW9ucz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1
dHRvbj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2Nyb2xsVmlldyBmaXhlZEZyYW1l
PSJZRVMiIGJvcmRlclR5cGU9Im5vbmUiIGhvcml6b250YWxMaW5lU2Nyb2xsPSIxMCIgaG9yaXpv
bnRhbFBhZ2VTY3JvbGw9IjEwIiB2ZXJ0aWNhbExpbmVTY3JvbGw9IjEwIiB2ZXJ0aWNhbFBhZ2VT
Y3JvbGw9IjEwIiBoYXNIb3Jpem9udGFsU2Nyb2xsZXI9Ik5PIiB0cmFuc2xhdGVzQXV0b3Jlc2l6
aW5nTWFza0ludG9Db25zdHJhaW50cz0iTk8iIGlkPSJlZ0YtOEwtY0k2Ij4KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPHJlY3Qga2V5PSJmcmFtZSIgeD0iMjAiIHk9IjYxIiB3aWR0
aD0iNDAwIiBoZWlnaHQ9IjM1OCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
YXV0b3Jlc2l6aW5nTWFzayBrZXk9ImF1dG9yZXNpemluZ01hc2siIGZsZXhpYmxlTWluWD0iWUVT
IiBmbGV4aWJsZU1heFg9IllFUyIgZmxleGlibGVNaW5ZPSJZRVMiIGZsZXhpYmxlTWF4WT0iWUVT
Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwVmlldyBrZXk9ImNvbnRl
bnRWaWV3IiBhbWJpZ3VvdXM9IllFUyIgZHJhd3NCYWNrZ3JvdW5kPSJOTyIgY29waWVzT25TY3Jv
bGw9Ik5PIiBpZD0iSFc4LUw3LTNQWCI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8cmVjdCBrZXk9ImZyYW1lIiB4PSIwLjAiIHk9IjAuMCIgd2lkdGg9IjQwMCIgaGVpZ2h0
PSIzNTgiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhdXRvcmVzaXpp
bmdNYXNrIGtleT0iYXV0b3Jlc2l6aW5nTWFzayIgd2lkdGhTaXphYmxlPSJZRVMiIGhlaWdodFNp
emFibGU9IllFUyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1YnZp
ZXdzPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0VmlldyBh
bWJpZ3VvdXM9IllFUyIgaW1wb3J0c0dyYXBoaWNzPSJOTyIgcmljaFRleHQ9Ik5PIiB2ZXJ0aWNh
bGx5UmVzaXphYmxlPSJZRVMiIGZpbmRTdHlsZT0iYmFyIiBzbWFydEluc2VydERlbGV0ZT0iWUVT
IiBpZD0icFJQLTlkLThuQiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxyZWN0IGtleT0iZnJhbWUiIHg9IjAuMCIgeT0iMC4wIiB3aWR0aD0iNDAwIiBoZWln
aHQ9IjM1OCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
YXV0b3Jlc2l6aW5nTWFzayBrZXk9ImF1dG9yZXNpemluZ01hc2siIHdpZHRoU2l6YWJsZT0iWUVT
IiBoZWlnaHRTaXphYmxlPSJZRVMiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPGNvbG9yIGtleT0idGV4dENvbG9yIiBuYW1lPSJ0ZXh0Q29sb3IiIGNhdGFs
b2c9IlN5c3RlbSIgY29sb3JTcGFjZT0iY2F0YWxvZyIvPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8Y29sb3Iga2V5PSJiYWNrZ3JvdW5kQ29sb3IiIG5hbWU9
InRleHRCYWNrZ3JvdW5kQ29sb3IiIGNhdGFsb2c9IlN5c3RlbSIgY29sb3JTcGFjZT0iY2F0YWxv
ZyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2l6ZSBr
ZXk9Im1pblNpemUiIHdpZHRoPSI0MDAiIGhlaWdodD0iMzU4Ii8+CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzaXplIGtleT0ibWF4U2l6ZSIgd2lkdGg9IjEz
MTciIGhlaWdodD0iMTAwMDAwMDAiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgPGF0dHJpYnV0ZWRTdHJpbmcga2V5PSJ0ZXh0U3RvcmFnZSI+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZnJhZ21lbnQgY29udGVu
dD0iV0hMU0zigKhUZXh0VmlldyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPGF0dHJpYnV0ZXM+CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb2xvciBrZXk9Ik5TQ29sb3IiIG5hbWU9
InRleHRDb2xvciIgY2F0YWxvZz0iU3lzdGVtIiBjb2xvclNwYWNlPSJjYXRhbG9nIi8+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmb250
IGtleT0iTlNGb250IiBzaXplPSIxMiIgbmFtZT0iTWVubG8tUmVndWxhciIvPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFyYWdyYXBo
U3R5bGUga2V5PSJOU1BhcmFncmFwaFN0eWxlIiBhbGlnbm1lbnQ9Im5hdHVyYWwiIGxpbmVCcmVh
a01vZGU9IndvcmRXcmFwcGluZyIgYmFzZVdyaXRpbmdEaXJlY3Rpb249Im5hdHVyYWwiIHRpZ2h0
ZW5pbmdGYWN0b3JGb3JUcnVuY2F0aW9uPSIwLjAiLz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2F0dHJpYnV0ZXM+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZyYWdtZW50PgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2F0dHJpYnV0ZWRTdHJpbmc+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb2xvciBrZXk9Imlu
c2VydGlvblBvaW50Q29sb3IiIG5hbWU9InRleHRDb2xvciIgY2F0YWxvZz0iU3lzdGVtIiBjb2xv
clNwYWNlPSJjYXRhbG9nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgPC90ZXh0Vmlldz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Vi
dmlld3M+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFZpZXc+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzY3JvbGxlciBrZXk9InZlcnRpY2FsU2Nyb2xs
ZXIiIHdhbnRzTGF5ZXI9IllFUyIgdmVydGljYWxIdWdnaW5nUHJpb3JpdHk9Ijc1MCIgaG9yaXpv
bnRhbD0iTk8iIGlkPSIxVDQtUEwtZEk0Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxyZWN0IGtleT0iZnJhbWUiIHg9IjM4NCIgeT0iMC4wIiB3aWR0aD0iMTYiIGhlaWdo
dD0iMzU4Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXV0b3Jlc2l6
aW5nTWFzayBrZXk9ImF1dG9yZXNpemluZ01hc2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPC9zY3JvbGxlcj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Njcm9s
bFZpZXc+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNjcm9sbFZpZXcgZml4ZWRGcmFt
ZT0iWUVTIiBib3JkZXJUeXBlPSJub25lIiBob3Jpem9udGFsTGluZVNjcm9sbD0iMTAiIGhvcml6
b250YWxQYWdlU2Nyb2xsPSIxMCIgdmVydGljYWxMaW5lU2Nyb2xsPSIxMCIgdmVydGljYWxQYWdl
U2Nyb2xsPSIxMCIgaGFzSG9yaXpvbnRhbFNjcm9sbGVyPSJOTyIgdHJhbnNsYXRlc0F1dG9yZXNp
emluZ01hc2tJbnRvQ29uc3RyYWludHM9Ik5PIiBpZD0idHV1LXVjLUR4ZyI+CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IGtleT0iZnJhbWUiIHg9IjQyOCIgeT0iNjEiIHdp
ZHRoPSI0MDAiIGhlaWdodD0iMzU4Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxhdXRvcmVzaXppbmdNYXNrIGtleT0iYXV0b3Jlc2l6aW5nTWFzayIgZmxleGlibGVNaW5YPSJZ
RVMiIGZsZXhpYmxlTWF4WD0iWUVTIiBmbGV4aWJsZU1pblk9IllFUyIgZmxleGlibGVNYXhZPSJZ
RVMiLz4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBWaWV3IGtleT0iY29u
dGVudFZpZXciIGFtYmlndW91cz0iWUVTIiBkcmF3c0JhY2tncm91bmQ9Ik5PIiBjb3BpZXNPblNj
cm9sbD0iTk8iIGlkPSIxVXMtcEgtekFzIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxyZWN0IGtleT0iZnJhbWUiIHg9IjAuMCIgeT0iMC4wIiB3aWR0aD0iNDAwIiBoZWln
aHQ9IjM1OCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGF1dG9yZXNp
emluZ01hc2sga2V5PSJhdXRvcmVzaXppbmdNYXNrIiB3aWR0aFNpemFibGU9IllFUyIgaGVpZ2h0
U2l6YWJsZT0iWUVTIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Vi
dmlld3M+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRWaWV3
IGFtYmlndW91cz0iWUVTIiBpbXBvcnRzR3JhcGhpY3M9Ik5PIiByaWNoVGV4dD0iTk8iIHZlcnRp
Y2FsbHlSZXNpemFibGU9IllFUyIgZmluZFN0eWxlPSJiYXIiIHNtYXJ0SW5zZXJ0RGVsZXRlPSJZ
RVMiIGlkPSI4Mm4teXYtT1ZvIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPHJlY3Qga2V5PSJmcmFtZSIgeD0iMC4wIiB5PSIwLjAiIHdpZHRoPSI0MDAiIGhl
aWdodD0iMzU4Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxhdXRvcmVzaXppbmdNYXNrIGtleT0iYXV0b3Jlc2l6aW5nTWFzayIgd2lkdGhTaXphYmxlPSJZ
RVMiIGhlaWdodFNpemFibGU9IllFUyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8Y29sb3Iga2V5PSJ0ZXh0Q29sb3IiIG5hbWU9InRleHRDb2xvciIgY2F0
YWxvZz0iU3lzdGVtIiBjb2xvclNwYWNlPSJjYXRhbG9nIi8+CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDxjb2xvciBrZXk9ImJhY2tncm91bmRDb2xvciIgbmFt
ZT0idGV4dEJhY2tncm91bmRDb2xvciIgY2F0YWxvZz0iU3lzdGVtIiBjb2xvclNwYWNlPSJjYXRh
bG9nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzaXpl
IGtleT0ibWluU2l6ZSIgd2lkdGg9IjQwMCIgaGVpZ2h0PSIzNTgiLz4KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNpemUga2V5PSJtYXhTaXplIiB3aWR0aD0i
MTM5MSIgaGVpZ2h0PSIxMDAwMDAwMCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA8Y29sb3Iga2V5PSJpbnNlcnRpb25Qb2ludENvbG9yIiBuYW1lPSJ0ZXh0
Q29sb3IiIGNhdGFsb2c9IlN5c3RlbSIgY29sb3JTcGFjZT0iY2F0YWxvZyIvPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGV4dFZpZXc+CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8L3N1YnZpZXdzPgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICA8L2NsaXBWaWV3PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8
c2Nyb2xsZXIga2V5PSJ2ZXJ0aWNhbFNjcm9sbGVyIiB3YW50c0xheWVyPSJZRVMiIHZlcnRpY2Fs
SHVnZ2luZ1ByaW9yaXR5PSI3NTAiIGhvcml6b250YWw9Ik5PIiBpZD0iZXY5LXhyLU1TUCI+Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCBrZXk9ImZyYW1lIiB4PSIz
ODQiIHk9IjAuMCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjM1OCIvPgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgPGF1dG9yZXNpemluZ01hc2sga2V5PSJhdXRvcmVzaXppbmdNYXNr
Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2Nyb2xsZXI+CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgPC9zY3JvbGxWaWV3PgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDxjdXN0b21WaWV3IGZpeGVkRnJhbWU9IllFUyIgdHJhbnNsYXRlc0F1dG9yZXNpemlu
Z01hc2tJbnRvQ29uc3RyYWludHM9Ik5PIiBpZD0iOUZHLWl2LTZwciIgY3VzdG9tQ2xhc3M9IkN1
c3RvbU1ldGFsVmlldyI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IGtl
eT0iZnJhbWUiIHg9IjgzNiIgeT0iNjEiIHdpZHRoPSI0MDAiIGhlaWdodD0iMzU4Ii8+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhdXRvcmVzaXppbmdNYXNrIGtleT0iYXV0b3Jl
c2l6aW5nTWFzayIgZmxleGlibGVNYXhYPSJZRVMiIGZsZXhpYmxlTWluWT0iWUVTIi8+CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgPC9jdXN0b21WaWV3PgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDx0ZXh0RmllbGQgaG9yaXpvbnRhbEh1Z2dpbmdQcmlvcml0eT0iMjUxIiB2ZXJ0
aWNhbEh1Z2dpbmdQcmlvcml0eT0iNzUwIiBmaXhlZEZyYW1lPSJZRVMiIHRyYW5zbGF0ZXNBdXRv
cmVzaXppbmdNYXNrSW50b0NvbnN0cmFpbnRzPSJOTyIgaWQ9ImFTWS0yci12TXUiPgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCBrZXk9ImZyYW1lIiB4PSIxMDYiIHk9IjIw
IiB3aWR0aD0iMTEzMiIgaGVpZ2h0PSIxOCIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8YXV0b3Jlc2l6aW5nTWFzayBrZXk9ImF1dG9yZXNpemluZ01hc2siIGZsZXhpYmxlTWF4
WD0iWUVTIiBmbGV4aWJsZU1heFk9IllFUyIvPgorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA8dGV4dEZpZWxkQ2VsbCBrZXk9ImNlbGwiIGxpbmVCcmVha01vZGU9ImNsaXBwaW5nIiB0
aXRsZT0iTGFiZWwiIGlkPSJKSzAtM3EtZXBXIj4KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDxmb250IGtleT0iZm9udCIgbWV0YUZvbnQ9InN5c3RlbSIvPgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvbG9yIGtleT0idGV4dENvbG9yIiBuYW1lPSJs
YWJlbENvbG9yIiBjYXRhbG9nPSJTeXN0ZW0iIGNvbG9yU3BhY2U9ImNhdGFsb2ciLz4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjb2xvciBrZXk9ImJhY2tncm91bmRDb2xv
ciIgbmFtZT0idGV4dEJhY2tncm91bmRDb2xvciIgY2F0YWxvZz0iU3lzdGVtIiBjb2xvclNwYWNl
PSJjYXRhbG9nIi8+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGV4dEZpZWxk
Q2VsbD4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RleHRGaWVsZD4KKyAgICAgICAg
ICAgICAgICAgICAgICAgIDwvc3Vidmlld3M+CisgICAgICAgICAgICAgICAgICAgIDwvdmlldz4K
KyAgICAgICAgICAgICAgICAgICAgPGNvbm5lY3Rpb25zPgorICAgICAgICAgICAgICAgICAgICAg
ICAgPG91dGxldCBwcm9wZXJ0eT0iZGVidWdMYWJlbCIgZGVzdGluYXRpb249ImFTWS0yci12TXUi
IGlkPSJoU0MtOU4tbmo5Ii8+CisgICAgICAgICAgICAgICAgICAgICAgICA8b3V0bGV0IHByb3Bl
cnR5PSJtZXRhbFZpZXciIGRlc3RpbmF0aW9uPSI5RkctaXYtNnByIiBpZD0iZDFLLUU3LTh6TCIv
PgorICAgICAgICAgICAgICAgICAgICAgICAgPG91dGxldCBwcm9wZXJ0eT0ibXNsVGV4dFZpZXci
IGRlc3RpbmF0aW9uPSI4Mm4teXYtT1ZvIiBpZD0iZW9FLTNoLXZoViIvPgorICAgICAgICAgICAg
ICAgICAgICAgICAgPG91dGxldCBwcm9wZXJ0eT0ibXNsVmlld0NvbnRhaW5lciIgZGVzdGluYXRp
b249InR1dS11Yy1EeGciIGlkPSJaM0QtY1AtcVkyIi8+CisgICAgICAgICAgICAgICAgICAgICAg
ICA8b3V0bGV0IHByb3BlcnR5PSJ3aGxzbFRleHRWaWV3IiBkZXN0aW5hdGlvbj0icFJQLTlkLThu
QiIgaWQ9Ik11Zi1iby1OS2siLz4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxvdXRsZXQgcHJv
cGVydHk9IndobHNsVmlld0NvbnRhaW5lciIgZGVzdGluYXRpb249ImVnRi04TC1jSTYiIGlkPSJE
SUctajItMnRiIi8+CisgICAgICAgICAgICAgICAgICAgIDwvY29ubmVjdGlvbnM+CisgICAgICAg
ICAgICAgICAgPC92aWV3Q29udHJvbGxlcj4KKyAgICAgICAgICAgICAgICA8Y3VzdG9tT2JqZWN0
IGlkPSJyUHQtTlQtbmtVIiB1c2VyTGFiZWw9IkZpcnN0IFJlc3BvbmRlciIgY3VzdG9tQ2xhc3M9
Ik5TUmVzcG9uZGVyIiBzY2VuZU1lbWJlcklEPSJmaXJzdFJlc3BvbmRlciIvPgorICAgICAgICAg
ICAgPC9vYmplY3RzPgorICAgICAgICAgICAgPHBvaW50IGtleT0iY2FudmFzTG9jYXRpb24iIHg9
Ii0zMzIiIHk9IjkxMS41Ii8+CisgICAgICAgIDwvc2NlbmU+CisgICAgPC9zY2VuZXM+Cis8L2Rv
Y3VtZW50PgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwv
V0hMU0wgVGVzdHMvQ29yZS9Db21waWxlUmVzdWx0LmggYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0NvbXBpbGVSZXN1bHQuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mNzVlMWRiYjU0NjNiOGM1Yjg3ZDllZjQ3MjdlMGIzYjM5Yjc3ODdmCi0tLSAvZGV2L251bGwK
KysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29y
ZS9Db21waWxlUmVzdWx0LmgJCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24u
aD4KKworTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KKworQGludGVyZmFjZSBDb21waWxlUmVzdWx0
IDogTlNPYmplY3QKKworLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoTWV0YWxTb3VyY2U6KE5TU3Ry
aW5nKilzb3VyY2UgZnVuY3Rpb25OYW1lTWFwOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcqLCBOU0Fy
cmF5PE5TU3RyaW5nKj4qPiopbWFwOworCitAcHJvcGVydHkgKHJlYWRvbmx5KSBOU1N0cmluZyAq
c291cmNlOworLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIE5TRGljdGlvbmFyeTxOU1N0cmluZyos
IE5TQXJyYXk8TlNTdHJpbmcqPio+KgorQHByb3BlcnR5IChyZWFkb25seSkgTlNEaWN0aW9uYXJ5
PE5TU3RyaW5nKiwgTlNTdHJpbmcqPiogZnVuY3Rpb25OYW1lTWFwOworCitAZW5kCisKK05TX0FT
U1VNRV9OT05OVUxMX0VORApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9Db21waWxlUmVzdWx0Lm0gYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0NvbXBpbGVSZXN1bHQubQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zNTk4ODBkNDE0Nzk2ZTJjY2JjOGIyYjJkZjZmOTJkZmUwZTcxZWFkCi0tLSAv
ZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wg
VGVzdHMvQ29yZS9Db21waWxlUmVzdWx0Lm0JCkBAIC0wLDAgKzEsNDYgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAor
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJDb21waWxlUmVzdWx0
LmgiCisKK0BpbnRlcmZhY2UgQ29tcGlsZVJlc3VsdCAoKQorCitAcHJvcGVydHkgTlNTdHJpbmcg
KnNvdXJjZTsKK0Bwcm9wZXJ0eSBOU0RpY3Rpb25hcnk8TlNTdHJpbmcqLCBOU1N0cmluZyo+KiBm
dW5jdGlvbk5hbWVNYXA7CisKK0BlbmQKKworQGltcGxlbWVudGF0aW9uIENvbXBpbGVSZXN1bHQK
KworLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoTWV0YWxTb3VyY2U6KE5TU3RyaW5nICopc291cmNl
IGZ1bmN0aW9uTmFtZU1hcDooTlNEaWN0aW9uYXJ5PE5TU3RyaW5nICosIE5TU3RyaW5nICo+ICop
bWFwCit7CisgICAgaWYgKHNlbGYgPSBbc3VwZXIgaW5pdF0pIHsKKyAgICAgICAgc2VsZi5zb3Vy
Y2UgPSBzb3VyY2U7CisgICAgICAgIHNlbGYuZnVuY3Rpb25OYW1lTWFwID0gbWFwOworICAgIH0K
KyAgICByZXR1cm4gc2VsZjsKK30KKworQGVuZApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9Db21waWxlci5oIGIvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9Db21waWxlci5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmY1NGU5M2I3NmU5NDM2MDVkZDY0Y2NkMjQ3NjJhYmZjZmIwYjMzODUKLS0t
IC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExT
TCBUZXN0cy9Db3JlL0NvbXBpbGVyLmgJCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICog
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitAaW1wb3J0IEZvdW5kYXRpb247CitAaW1w
b3J0IEphdmFTY3JpcHRDb3JlOworCisjaW1wb3J0ICJDb21waWxlUmVzdWx0LmgiCisKK05TX0FT
U1VNRV9OT05OVUxMX0JFR0lOCisKK0BpbnRlcmZhY2UgQ29tcGlsZXIgOiBOU09iamVjdAorCist
IChDb21waWxlUmVzdWx0Kiljb21waWxlV2hsc2xUb01ldGFsOihOU1N0cmluZyopd2hsc2xTb3Vy
Y2UgZXJyb3I6KE5TRXJyb3IqKillcnJvcjsKKworQGVuZAorCitOU19BU1NVTUVfTk9OTlVMTF9F
TkQKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNM
IFRlc3RzL0NvcmUvQ29tcGlsZXIubSBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01l
dGFsL1dITFNMIFRlc3RzL0NvcmUvQ29tcGlsZXIubQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MDNkMGMyYmRiNTgx
ODIyYzI3MGVhZjBkN2YwMjBiNDQ4Y2E1ZmIzCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9Db21waWxlci5tCQpA
QCAtMCwwICsxLDEwNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
KyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgIkNvbXBpbGVyLmgiCisKK0BpbXBvcnQgQ29jb2E7CitAaW1wb3J0IEph
dmFTY3JpcHRDb3JlOworCitAaW50ZXJmYWNlIENvbXBpbGVyICgpCisKK0Bwcm9wZXJ0eSBKU0Nv
bnRleHQqIGNvbnRleHQ7CisKK0BlbmQKKworQGltcGxlbWVudGF0aW9uIENvbXBpbGVyCisKKy0g
KGluc3RhbmNldHlwZSlpbml0Cit7CisgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKKyAgICBpZiAo
c2VsZikgeworICAgICAgICBzZWxmLmNvbnRleHQgPSBbW0pTQ29udGV4dCBhbGxvY10gaW5pdF07
CisgICAgICAgIFtzZWxmIGxvYWRTY3JpcHRzXTsKKyAgICB9CisgICAgcmV0dXJuIHNlbGY7Cit9
CisKKy0gKHZvaWQpbG9hZFNjcmlwdHMKK3sKKyAgICBfX3dlYWsgSlNDb250ZXh0KiB3ZWFrQ29u
dGV4dCA9IHNlbGYuY29udGV4dDsKKyAgICBfX2Jsb2NrIE5TTXV0YWJsZVNldDxOU1N0cmluZyo+
KiBhbHJlYWR5TG9hZGVkID0gW05TTXV0YWJsZVNldCBuZXddOworICAgIHZvaWQgKF5sb2FkRnVu
Y3Rpb24pKE5TU3RyaW5nICopID0gXnZvaWQoTlNTdHJpbmcqIG5hbWUpCisgICAgeworICAgICAg
ICBpZiAoIVthbHJlYWR5TG9hZGVkIGNvbnRhaW5zT2JqZWN0Om5hbWVdKSB7CisgICAgICAgICAg
ICBOU1N0cmluZyogcGF0aCA9IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gcGF0aEZvclJlc291cmNl
OltuYW1lIHN0cmluZ0J5RGVsZXRpbmdQYXRoRXh0ZW5zaW9uXSBvZlR5cGU6QCJqcyJdOworICAg
ICAgICAgICAgTlNFcnJvciogbG9hZEVycm9yID0gbmlsOworICAgICAgICAgICAgTlNTdHJpbmcq
IHNyYyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ29udGVudHNPZkZpbGU6cGF0aCBlbmNvZGluZzpO
U1VURjhTdHJpbmdFbmNvZGluZyBlcnJvcjombG9hZEVycm9yXTsKKyAgICAgICAgICAgIGlmIChs
b2FkRXJyb3IpCisgICAgICAgICAgICAgICAgTlNMb2coQCJMb2FkaW5nICVAIGZhaWxlZDogJUAi
LCBuYW1lLCBsb2FkRXJyb3IubG9jYWxpemVkRGVzY3JpcHRpb24pOworICAgICAgICAgICAgZWxz
ZSB7CisgICAgICAgICAgICAgICAgW3dlYWtDb250ZXh0IGV2YWx1YXRlU2NyaXB0OnNyY107Cisg
ICAgICAgICAgICAgICAgW2FscmVhZHlMb2FkZWQgYWRkT2JqZWN0Om5hbWVdOworICAgICAgICAg
ICAgfQorICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIE5TTG9nKEAiQXR0ZW1wdGluZyB0byBs
b2FkIGR1cGxpY2F0ZSBmaWxlICVAIiwgbmFtZSk7CisgICAgfTsKKyAgICBzZWxmLmNvbnRleHRb
QCJsb2FkIl0gPSBsb2FkRnVuY3Rpb247CisKKyAgICBsb2FkRnVuY3Rpb24oQCJBbGwuanMiKTsK
KyAgICBsb2FkRnVuY3Rpb24oQCJNU0xDb2RlZ2VuQWxsLmpzIik7Cit9CisKKy0gKENvbXBpbGVS
ZXN1bHQqKWNvbXBpbGVXaGxzbFRvTWV0YWw6KE5TU3RyaW5nICopd2hsc2xTb3VyY2UgZXJyb3I6
KE5TRXJyb3IgKiBfTnVsbGFibGUgX19hdXRvcmVsZWFzaW5nICopZXJyb3IKK3sKKyAgICBKU1Zh
bHVlICpjb21waWxlRnVuY3Rpb24gPSBbc2VsZi5jb250ZXh0IG9iamVjdEZvcktleWVkU3Vic2Ny
aXB0OkAid2hsc2xUb01zbCJdOworICAgIGlmIChjb21waWxlRnVuY3Rpb24pIHsKKyAgICAgICAg
SlNWYWx1ZSAqIHJlc3VsdCA9IFtjb21waWxlRnVuY3Rpb24gY2FsbFdpdGhBcmd1bWVudHM6QFt3
aGxzbFNvdXJjZV1dOworICAgICAgICBpZiAocmVzdWx0KSB7CisgICAgICAgICAgICBpZiAoW3Jl
c3VsdCBoYXNQcm9wZXJ0eTpAIl9lcnJvciJdICYmIFtyZXN1bHQgaGFzUHJvcGVydHk6QCJfbWV0
YWxTaGFkZXJMYW5ndWFnZVNvdXJjZSJdICYmIFtyZXN1bHQgaGFzUHJvcGVydHk6QCJfb3JpZ2lu
YWxGdW5jdGlvbk5hbWVUb01hbmdsZWROYW1lcyJdKSB7CisgICAgICAgICAgICAgICAgaWYgKFtb
cmVzdWx0IHZhbHVlRm9yUHJvcGVydHk6QCJfZXJyb3IiXSBpc051bGxdKSB7CisgICAgICAgICAg
ICAgICAgICAgIE5TU3RyaW5nICpzcmMgPSBbW3Jlc3VsdCB2YWx1ZUZvclByb3BlcnR5OkAiX21l
dGFsU2hhZGVyTGFuZ3VhZ2VTb3VyY2UiXSB0b1N0cmluZ107CisgICAgICAgICAgICAgICAgICAg
IE5TRGljdGlvbmFyeSAqbWFwID0gW1tyZXN1bHQgdmFsdWVGb3JQcm9wZXJ0eTpAIl9vcmlnaW5h
bEZ1bmN0aW9uTmFtZVRvTWFuZ2xlZE5hbWVzIl0gdG9EaWN0aW9uYXJ5XTsKKyAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIFtbQ29tcGlsZVJlc3VsdCBhbGxvY10gaW5pdFdpdGhNZXRhbFNvdXJj
ZTpzcmMgZnVuY3Rpb25OYW1lTWFwOm1hcF07CisgICAgICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAgICAgKmVycm9yID0gW05TRXJyb3IgZXJyb3JXaXRoRG9tYWluOkAiV2hsc2xDb21waWxl
ciIgY29kZToxIHVzZXJJbmZvOkB7IE5TTG9jYWxpemVkRGVzY3JpcHRpb25LZXk6IFtbcmVzdWx0
IHZhbHVlRm9yUHJvcGVydHk6QCJfZXJyb3IiXSB0b1N0cmluZ119XTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gbmlsOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAqZXJyb3IgPSBbTlNF
cnJvciBlcnJvcldpdGhEb21haW46QCJXaGxzbENvbXBpbGVyIiBjb2RlOjIgdXNlckluZm86QHsg
TlNMb2NhbGl6ZWREZXNjcmlwdGlvbktleTogQCJLZXlzIG5vdCBwcmVzZW50IGluIHJlc3VsdCIg
fV07CisgICAgICAgICAgICByZXR1cm4gbmlsOworICAgICAgICB9CisKKyAgICAgICAgKmVycm9y
ID0gW05TRXJyb3IgZXJyb3JXaXRoRG9tYWluOkAiV2hsc2xDb21waWxlciIgY29kZTozIHVzZXJJ
bmZvOkB7IE5TTG9jYWxpemVkRGVzY3JpcHRpb25LZXk6IEAiQ29tcGlsYXRpb24gZmFpbGVkIiB9
XTsKKyAgICAgICAgcmV0dXJuIG5pbDsKKworICAgIH0KKworICAgICplcnJvciA9IFtOU0Vycm9y
IGVycm9yV2l0aERvbWFpbjpAIldobHNsQ29tcGlsZXIiIGNvZGU6NCB1c2VySW5mbzpAeyBOU0xv
Y2FsaXplZERlc2NyaXB0aW9uS2V5OiBAIkRpZG4ndCBmaW5kIGNvbXBpbGF0aW9uIGZ1bmN0aW9u
IiB9XTsKKyAgICByZXR1cm4gbmlsOworfQorCitAZW5kCmRpZmYgLS1naXQgYS9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0N1c3RvbU1ldGFsVmll
dy5oIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29y
ZS9DdXN0b21NZXRhbFZpZXcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZTU5YTY4NTNkYjBmZDdlYjBhMGMzMjk4
YTc3ZTAyOTE4ZmIzYmIwCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9DdXN0b21NZXRhbFZpZXcuaAkKQEAgLTAs
MCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgorI2ltcG9ydCA8TWV0YWxLaXQvTWV0
YWxLaXQuaD4KKworTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KKworQGNsYXNzIEN1c3RvbU1ldGFs
VmlldzsKKworQHByb3RvY29sIEN1c3RvbU1ldGFsVmlld0RlbGVnYXRlIDxOU09iamVjdD4KKwor
LSAodm9pZCljdXN0b21NZXRhbFZpZXc6KEN1c3RvbU1ldGFsVmlldyopbWV0YWxWaWV3IHNjcm9s
bGVkRGVsdGFYOihDR0Zsb2F0KWRlbHRhWCBkZWx0YVk6KENHRmxvYXQpZGVsdGFZOworCitAZW5k
CisKK0BpbnRlcmZhY2UgQ3VzdG9tTWV0YWxWaWV3IDogTVRLVmlldworCitAcHJvcGVydHkgaWQ8
Q3VzdG9tTWV0YWxWaWV3RGVsZWdhdGU+IHNjcm9sbERlbGVnYXRlOworCitAZW5kCisKK05TX0FT
U1VNRV9OT05OVUxMX0VORApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9DdXN0b21NZXRhbFZpZXcubSBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvQ3VzdG9tTWV0YWxWaWV3
Lm0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNzI3MzkwZGJhYWI5ZTIxYTJmYWU0ZTM2MzJlYjcwODVjMGM2Mzc2ZAot
LS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dI
TFNMIFRlc3RzL0NvcmUvQ3VzdG9tTWV0YWxWaWV3Lm0JCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJDdXN0b21N
ZXRhbFZpZXcuaCIKKworQGltcGxlbWVudGF0aW9uIEN1c3RvbU1ldGFsVmlldworCistICh2b2lk
KXNjcm9sbFdoZWVsOihOU0V2ZW50ICopZXZlbnQKK3sKKyAgICBbc2VsZi5zY3JvbGxEZWxlZ2F0
ZSBjdXN0b21NZXRhbFZpZXc6c2VsZiBzY3JvbGxlZERlbHRhWDpldmVudC5kZWx0YVggZGVsdGFZ
OmV2ZW50LmRlbHRhWV07Cit9CisKK0BlbmQKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvRGVtbyBzaGFkZXJzL0RlZmF1bHQu
d2hsc2wgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9D
b3JlL0RlbW8gc2hhZGVycy9EZWZhdWx0LndobHNsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI0MTlkZjdhMGJiOWVm
N2I4NDc3ZWYwMjlkZmU4OTQ1OTQxN2ViNzMKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0RlbW8gc2hhZGVycy9E
ZWZhdWx0LndobHNsCQpAQCAtMCwwICsxLDI2IEBACitzdHJ1Y3QgVmVydGV4SW5wdXQgeworICAg
IGZsb2F0MiBwb3NpdGlvbjsKKyAgICBmbG9hdDIgdXY7Cit9CisKK3N0cnVjdCBWZXJ0ZXhPdXRw
dXQgeworICAgIGZsb2F0NCB3c2xfUG9zaXRpb247CisgICAgZmxvYXQ0IGNvbG9yOworfQorCitz
dHJ1Y3QgRnJhZ21lbnRPdXRwdXQgeworICAgIGZsb2F0NCB3c2xfQ29sb3I7Cit9CisKK3ZlcnRl
eCBWZXJ0ZXhPdXRwdXQgdmVydGV4U2hhZGVyKFZlcnRleElucHV0IHZlcnRleElucHV0KSB7Cisg
ICAgVmVydGV4T3V0cHV0IHJlc3VsdDsKKyAgICByZXN1bHQud3NsX1Bvc2l0aW9uID0gZmxvYXQ0
KHZlcnRleElucHV0LnBvc2l0aW9uLCAwLiwgMS4pOworICAgIHJlc3VsdC5jb2xvciA9IGZsb2F0
NCh2ZXJ0ZXhJbnB1dC51diwgMC4wLCAxLjApOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2Zy
YWdtZW50IEZyYWdtZW50T3V0cHV0IGZyYWdtZW50U2hhZGVyKFZlcnRleE91dHB1dCBzdGFnZUlu
KSB7CisgICAgRnJhZ21lbnRPdXRwdXQgcmVzdWx0OworICAgIHJlc3VsdC53c2xfQ29sb3IgPSBz
dGFnZUluLmNvbG9yOworICAgIHJldHVybiByZXN1bHQ7Cit9CmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0RlbW8gc2hhZGVy
cy9KdWxpYS53aGxzbCBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNM
IFRlc3RzL0NvcmUvRGVtbyBzaGFkZXJzL0p1bGlhLndobHNsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZmODA4OGVk
MzM4MDdhYzFjMzkyZWZjNzQwNDM3ZTM2NDE0NzU4ODIKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0RlbW8gc2hh
ZGVycy9KdWxpYS53aGxzbAkKQEAgLTAsMCArMSwxMDMgQEAKK3N0cnVjdCBWZXJ0ZXhJbnB1dCB7
CisgICAgZmxvYXQyIHBvc2l0aW9uOworICAgIGZsb2F0MiB1djsKK30KKworc3RydWN0IFZlcnRl
eE91dHB1dCB7CisgICAgZmxvYXQ0IHdzbF9Qb3NpdGlvbjsKKyAgICBmbG9hdDIgdXY7Cit9CisK
K3N0cnVjdCBGcmFnbWVudE91dHB1dCB7CisgICAgZmxvYXQ0IHdzbF9Db2xvcjsKK30KKwordmVy
dGV4IFZlcnRleE91dHB1dCB2ZXJ0ZXhTaGFkZXIoVmVydGV4SW5wdXQgdmVydGV4SW5wdXQpIHsK
KyAgICBWZXJ0ZXhPdXRwdXQgcmVzdWx0OworICAgIHJlc3VsdC53c2xfUG9zaXRpb24gPSBmbG9h
dDQodmVydGV4SW5wdXQucG9zaXRpb24sIDAuLCAxLik7CisgICAgcmVzdWx0LnV2ID0gdmVydGV4
SW5wdXQudXY7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworZnJhZ21lbnQgRnJhZ21lbnRPdXRw
dXQgZnJhZ21lbnRTaGFkZXIoVmVydGV4T3V0cHV0IHN0YWdlSW4pIHsKKyAgICBGcmFnbWVudE91
dHB1dCByZXN1bHQ7CisgICAgZmxvYXQgbSA9IGp1bGlhKHN0YWdlSW4udXYpOworICAgIGZsb2F0
MyBob3QgPSBmbG9hdDMoMSwgMSwgMSk7CisgICAgZmxvYXQzIGNvbGQgPSBmbG9hdDMoMCwgMSwg
MC4xKTsKKyAgICBmbG9hdDMgcmVzID0gaW50ZXJwb2xhdGUoY29sZCwgaG90LCBtKTsKKyAgICBy
ZXMgPSBoc2xUb1JnYihyZXMpOworICAgIHJlc3VsdC53c2xfQ29sb3IgPSBmbG9hdDQocmVzLCAx
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitmbG9hdDMgaW50ZXJwb2xhdGUoZmxvYXQzIHgs
IGZsb2F0MyB5LCBmbG9hdCB6KQoreworICAgIGZsb2F0MyByZXM7CisgICAgcmVzLnggPSB4Lngg
KyAoeS54IC0geC54KSAqIHo7CisgICAgcmVzLnkgPSB4LnkgKyAoeS55IC0geC55KSAqIHo7Cisg
ICAgcmVzLnogPSB4LnogKyAoeS56IC0geC56KSAqIHo7CisgICAgcmV0dXJuIHJlczsKK30KKwor
ZmxvYXQgaHVlVG9SZ2IoZmxvYXQgcCwgZmxvYXQgcSwgZmxvYXQgdCkKK3sKK2lmKHQgPCAwLjAp
IHQgKz0gMS4wOworICAgICAgICAgICAgaWYodCA+IDEuMCkgdCAtPSAxLjA7CisgICAgICAgICAg
ICBpZih0IDwgMS4wLzYuMCkgcmV0dXJuIHAgKyAocSAtIHApICogNi4wICogdDsKKyAgICAgICAg
ICAgIGlmKHQgPCAxLjAvMi4wKSByZXR1cm4gcTsKKyAgICAgICAgICAgIGlmKHQgPCAyLjAvMy4w
KSByZXR1cm4gcCArIChxIC0gcCkgKiAoMi4wLzMuMCAtIHQpICogNi4wOworICAgICAgICAgICAg
cmV0dXJuIHA7Cit9CisKK2Zsb2F0MyBoc2xUb1JnYihmbG9hdDMgaHNsKQoreworICAgIGZsb2F0
MyByZ2I7CisgICAgZmxvYXQgaCA9IGhzbC54OworICAgIGZsb2F0IHMgPSBoc2wueTsKKyAgICBm
bG9hdCBsID0gaHNsLno7CisgICAgaWYocyA9PSAwKXsKKyAgICAgICAgcmdiID0gZmxvYXQzKGws
IGwsIGwpOworICAgIH0gZWxzZSB7CisgICAgICAgIGZsb2F0IHE7CisgICAgICAgIGlmIChsIDwg
MC41KSB7IHEgPSBsICogKDEuMCArIHMpOyB9IGVsc2UgeyBxID0gbCArIHMgLSBsICogczsgfQor
ICAgICAgICBmbG9hdCBwID0gMi4wICogbCAtIHE7CisgICAgICAgIHJnYi54ID0gaHVlVG9SZ2Io
cCwgcSwgaCArIDEuMC8zLjApOworICAgICAgICByZ2IueSA9IGh1ZVRvUmdiKHAsIHEsIGgpOwor
ICAgICAgICByZ2IueiA9IGh1ZVRvUmdiKHAsIHEsIGggLSAxLjAvMy4wKTsKKyAgICB9CisKKyAg
ICByZXR1cm4gcmdiOworCit9CisKK2Zsb2F0IGp1bGlhKGZsb2F0MiB1dikKK3sKKyAgICBmbG9h
dCBuID0gMi4wZjsKKyAgICBmbG9hdDIgejsKKyAgICBmbG9hdDIgYzsKKyAgICBmbG9hdDIgc2Nh
bGUgPSBmbG9hdDIoMiwgMi45KTsKKyAgICBmbG9hdDIgY2VudGVyID0gZmxvYXQyKDAuNywgMCk7
CisgICAgaW50IGl0ZXIgPSAxMDA7CisgICAgYy54ID0gMS4zMzMzICogKHV2LnggLSAwLjUpICog
c2NhbGUueCAtIGNlbnRlci54OworICAgIGMueSA9ICh1di55IC0gMC41KSAqIHNjYWxlLnkgLSBj
ZW50ZXIueTsKKyAgICB6ID0gYzsKKyAgICBpbnQgaTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgaXRl
cjsgaSsrKSB7CisgICAgICAgIGZsb2F0IHggPSBwb3coei54ICogei54ICsgei55ICogei55LCBu
IC8gMi4wKSAqIGNvcyhuICogYXRhbjIoei55LCB6LngpKSArIGMueDsKKyAgICAgICAgZmxvYXQg
eSA9IHBvdyh6LnggKiB6LnggKyB6LnkgKiB6LnksIG4gLyAyLjApICogc2luKG4gKiBhdGFuMih6
LnksIHoueCkpICsgYy55OworCisgICAgICAgIGlmKHBvdyh4LCAyLjBmKSArIHBvdyh5LCAyLjBm
KSA+IDE2LjBmKSBicmVhazsKKyAgICAgICAgei54ID0geDsKKyAgICAgICAgei55ID0geTsKKyAg
ICB9CisgICAgZmxvYXQgcmVzOworICAgIGlmIChpIDwgaXRlcikgeworICAgICAgICBmbG9hdCBs
b2dfem4gPSBsb2coIHoueCp6LnggKyB6Lnkqei55ICkgLyAyLjBmOworICAgICAgICBmbG9hdCBu
dSA9IGxvZyggbG9nX3puIC8gbG9nKG4pICkgLyBsb2coMi4wZik7CisgICAgICAgIHJlcyA9IChm
bG9hdChpKSArIDEgLSBudSkgLyBmbG9hdChpdGVyKTsKKyAgICB9IGVsc2UgeworICAgICAgIHJl
cyA9IDE7CisgICAgfQorICAgIHJldHVybiByZXM7Cit9CisKZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvRGVtbyBzaGFkZXJz
L01hbmRlbGJyb3Qud2hsc2wgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9X
SExTTCBUZXN0cy9Db3JlL0RlbW8gc2hhZGVycy9NYW5kZWxicm90LndobHNsCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjUyMWYwY2VkNDA2MDU5NzgwM2QwZjg2N2U2Y2MwZDc3MjliNGU5MWEKLS0tIC9kZXYvbnVsbAor
KysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3Jl
L0RlbW8gc2hhZGVycy9NYW5kZWxicm90LndobHNsCQpAQCAtMCwwICsxLDk4IEBACitzdHJ1Y3Qg
VmVydGV4SW5wdXQgeworICAgIGZsb2F0MiBwb3NpdGlvbjsKKyAgICBmbG9hdDIgdXY7Cit9CisK
K3N0cnVjdCBWZXJ0ZXhPdXRwdXQgeworICAgIGZsb2F0NCB3c2xfUG9zaXRpb247CisgICAgZmxv
YXQyIHV2OworfQorCitzdHJ1Y3QgRnJhZ21lbnRPdXRwdXQgeworICAgIGZsb2F0NCB3c2xfQ29s
b3I7Cit9CisKK3ZlcnRleCBWZXJ0ZXhPdXRwdXQgdmVydGV4U2hhZGVyKFZlcnRleElucHV0IHZl
cnRleElucHV0KSB7CisgICAgVmVydGV4T3V0cHV0IHJlc3VsdDsKKyAgICByZXN1bHQud3NsX1Bv
c2l0aW9uID0gZmxvYXQ0KHZlcnRleElucHV0LnBvc2l0aW9uLCAwLiwgMS4pOworICAgIHJlc3Vs
dC51diA9IHZlcnRleElucHV0LnV2OworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2ZyYWdtZW50
IEZyYWdtZW50T3V0cHV0IGZyYWdtZW50U2hhZGVyKFZlcnRleE91dHB1dCBzdGFnZUluKSB7Cisg
ICAgRnJhZ21lbnRPdXRwdXQgcmVzdWx0OworICAgIGZsb2F0IG0gPSBtYW5kZWxicm90KHN0YWdl
SW4udXYpOworICAgIGZsb2F0MyBob3QgPSBmbG9hdDMoMSwgMSwgMSk7CisgICAgZmxvYXQzIGNv
bGQgPSBmbG9hdDMoMCwgMSwgMC4xKTsKKyAgICBmbG9hdDMgcmVzID0gaW50ZXJwb2xhdGUoY29s
ZCwgaG90LCBtKTsKKyAgICByZXMgPSBoc2xUb1JnYihyZXMpOworICAgIHJlc3VsdC53c2xfQ29s
b3IgPSBmbG9hdDQocmVzLCAxKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitmbG9hdDMgaW50
ZXJwb2xhdGUoZmxvYXQzIHgsIGZsb2F0MyB5LCBmbG9hdCB6KQoreworICAgIGZsb2F0MyByZXM7
CisgICAgcmVzLnggPSB4LnggKyAoeS54IC0geC54KSAqIHo7CisgICAgcmVzLnkgPSB4LnkgKyAo
eS55IC0geC55KSAqIHo7CisgICAgcmVzLnogPSB4LnogKyAoeS56IC0geC56KSAqIHo7CisgICAg
cmV0dXJuIHJlczsKK30KKworZmxvYXQgaHVlVG9SZ2IoZmxvYXQgcCwgZmxvYXQgcSwgZmxvYXQg
dCkKK3sKKyAgICBpZih0IDwgMC4wKSB0ICs9IDEuMDsKKyAgICBpZih0ID4gMS4wKSB0IC09IDEu
MDsKKyAgICBpZih0IDwgMS4wLzYuMCkgcmV0dXJuIHAgKyAocSAtIHApICogNi4wICogdDsKKyAg
ICBpZih0IDwgMS4wLzIuMCkgcmV0dXJuIHE7CisgICAgaWYodCA8IDIuMC8zLjApIHJldHVybiBw
ICsgKHEgLSBwKSAqICgyLjAvMy4wIC0gdCkgKiA2LjA7CisgICAgcmV0dXJuIHA7Cit9CisKK2Zs
b2F0MyBoc2xUb1JnYihmbG9hdDMgaHNsKQoreworICAgIGZsb2F0MyByZ2I7CisgICAgZmxvYXQg
aCA9IGhzbC54OworICAgIGZsb2F0IHMgPSBoc2wueTsKKyAgICBmbG9hdCBsID0gaHNsLno7Cisg
ICAgaWYocyA9PSAwKXsKKyAgICAgICAgcmdiID0gZmxvYXQzKGwsIGwsIGwpOworICAgIH0gZWxz
ZSB7CisgICAgICAgIGZsb2F0IHE7CisgICAgICAgIGlmIChsIDwgMC41KSB7IHEgPSBsICogKDEu
MCArIHMpOyB9IGVsc2UgeyBxID0gbCArIHMgLSBsICogczsgfQorICAgICAgICBmbG9hdCBwID0g
Mi4wICogbCAtIHE7CisgICAgICAgIHJnYi54ID0gaHVlVG9SZ2IocCwgcSwgaCArIDEuMC8zLjAp
OworICAgICAgICByZ2IueSA9IGh1ZVRvUmdiKHAsIHEsIGgpOworICAgICAgICByZ2IueiA9IGh1
ZVRvUmdiKHAsIHEsIGggLSAxLjAvMy4wKTsKKyAgICB9CisKKyAgICByZXR1cm4gcmdiOworfQor
CitmbG9hdCBtYW5kZWxicm90KGZsb2F0MiB1dikKK3sKKyAgICBmbG9hdDIgejsKKyAgICBmbG9h
dDIgYyA9IHV2OworICAgIGludCBpdGVyID0gMTAwOworICAgIHogPSBjOworICAgIGludCBpOwor
ICAgIGZvciAoaSA9IDA7IGkgPCBpdGVyOyBpKyspIHsKKyAgICAgICAgZmxvYXQgeCA9ICh6Lngg
KiB6LnggLSB6LnkgKiB6LnkpICsgYy54OworICAgICAgICBmbG9hdCB5ID0gKHoueSAqIHoueCAr
IHoueCAqIHoueSkgKyBjLnk7CisKKyAgICAgICAgaWYocG93KHgsIDIuMGYpICsgcG93KHksIDIu
MGYpID4gMjU2LjApIGJyZWFrOworICAgICAgICB6LnggPSB4OworICAgICAgICB6LnkgPSB5Owor
ICAgIH0KKyAgICBmbG9hdCByZXM7CisgICAgaWYgKGkgPCBpdGVyKSB7CisgICAgICAgIGZsb2F0
IGxvZ196biA9IGxvZyggei54KnoueCArIHoueSp6LnkgKSAvIDI7CisgICAgICAgIGZsb2F0IG51
ID0gbG9nKCBsb2dfem4gLyBsb2coMi4wZikgKSAvIGxvZygyLjBmKTsKKyAgICAgICAgcmVzID0g
KGZsb2F0KGkpICsgMSAtIG51KSAvIGZsb2F0KGl0ZXIpOworICAgIH0gZWxzZSB7CisgICAgICAg
IHJlcyA9IDE7CisgICAgfQorcmV0dXJuIHJlczsKK30KKworCmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0luZm8ucGxpc3Qg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL0lu
Zm8ucGxpc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDE4NTdmNTJkYWIzM2M2ZTBlMGMzYzNmMjhkYTYwNDYxYTA3
YTU3ZQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01l
dGFsL1dITFNMIFRlc3RzL0NvcmUvSW5mby5wbGlzdAkKQEAgLTAsMCArMSwzMiBAQAorPD94bWwg
dmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9DVFlQRSBwbGlzdCBQVUJMSUMg
Ii0vL0FwcGxlLy9EVEQgUExJU1QgMS4wLy9FTiIgImh0dHA6Ly93d3cuYXBwbGUuY29tL0RURHMv
UHJvcGVydHlMaXN0LTEuMC5kdGQiPgorPHBsaXN0IHZlcnNpb249IjEuMCI+Cis8ZGljdD4KKwk8
a2V5PkNGQnVuZGxlRGV2ZWxvcG1lbnRSZWdpb248L2tleT4KKwk8c3RyaW5nPiQoREVWRUxPUE1F
TlRfTEFOR1VBR0UpPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZUV4ZWN1dGFibGU8L2tleT4KKwk8
c3RyaW5nPiQoRVhFQ1VUQUJMRV9OQU1FKTwvc3RyaW5nPgorCTxrZXk+Q0ZCdW5kbGVJY29uRmls
ZTwva2V5PgorCTxzdHJpbmc+PC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZUlkZW50aWZpZXI8L2tl
eT4KKwk8c3RyaW5nPiQoUFJPRFVDVF9CVU5ETEVfSURFTlRJRklFUik8L3N0cmluZz4KKwk8a2V5
PkNGQnVuZGxlSW5mb0RpY3Rpb25hcnlWZXJzaW9uPC9rZXk+CisJPHN0cmluZz42LjA8L3N0cmlu
Zz4KKwk8a2V5PkNGQnVuZGxlTmFtZTwva2V5PgorCTxzdHJpbmc+JChQUk9EVUNUX05BTUUpPC9z
dHJpbmc+CisJPGtleT5DRkJ1bmRsZVBhY2thZ2VUeXBlPC9rZXk+CisJPHN0cmluZz5BUFBMPC9z
dHJpbmc+CisJPGtleT5DRkJ1bmRsZVNob3J0VmVyc2lvblN0cmluZzwva2V5PgorCTxzdHJpbmc+
MS4wPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVZlcnNpb248L2tleT4KKwk8c3RyaW5nPjE8L3N0
cmluZz4KKwk8a2V5PkxTTWluaW11bVN5c3RlbVZlcnNpb248L2tleT4KKwk8c3RyaW5nPiQoTUFD
T1NYX0RFUExPWU1FTlRfVEFSR0VUKTwvc3RyaW5nPgorCTxrZXk+TlNIdW1hblJlYWRhYmxlQ29w
eXJpZ2h0PC9rZXk+CisJPHN0cmluZz5Db3B5cmlnaHQgwqkgMjAxOCBBcHBsZSwgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLjwvc3RyaW5nPgorCTxrZXk+TlNNYWluU3Rvcnlib2FyZEZpbGU8L2tl
eT4KKwk8c3RyaW5nPk1haW48L3N0cmluZz4KKwk8a2V5Pk5TUHJpbmNpcGFsQ2xhc3M8L2tleT4K
Kwk8c3RyaW5nPk5TQXBwbGljYXRpb248L3N0cmluZz4KKzwvZGljdD4KKzwvcGxpc3Q+CmRpZmYg
LS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9D
b3JlL1JlbmRlcmVyL09mZnNjcmVlblJlbmRlcmVyLmggYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL09mZnNjcmVlblJlbmRlcmVy
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMmI2NjVmYjE2NWFlNGIyNWQwNWRlYmY0NzA5NGI0NWQ5OWI5ODhiNwot
LS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dI
TFNMIFRlc3RzL0NvcmUvUmVuZGVyZXIvT2Zmc2NyZWVuUmVuZGVyZXIuaAkKQEAgLTAsMCArMSw0
MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBv
cnQgIlJlbmRlcmVyLmgiCisKK05TX0FTU1VNRV9OT05OVUxMX0JFR0lOCisKK0BpbnRlcmZhY2Ug
T2Zmc2NyZWVuUmVuZGVyZXIgOiBSZW5kZXJlcgorCitAcHJvcGVydHkgTVRMUGl4ZWxGb3JtYXQg
b3V0cHV0UGl4ZWxGb3JtYXQ7CisKKy0gKHZvaWQpc2V0TGlicmFyeTooaWQ8TVRMTGlicmFyeT4p
bGlicmFyeSB2ZXJ0ZXhTaGFkZXJOYW1lOihOU1N0cmluZyopdmVydGV4U2hhZGVyIGZyYWdtZW50
U2hhZGVyTmFtZTooTlNTdHJpbmcqKWZyYWdtZW50U2hhZGVyTmFtZTsKKy0gKHZvaWQpcmVhZFRl
eHR1cmVEYXRhVG9CdWZmZXI6KHVpbnQ4X3QqKWJ1ZmZlciBieXRlc1BlclJvdzooTlNVSW50ZWdl
cilieXRlc1BlclJvdzsKKworLSAoaW50KWludFZhbHVlOworLSAodW5zaWduZWQpdWludFZhbHVl
OworLSAoZmxvYXQpZmxvYXRWYWx1ZTsKKworQGVuZAorCitOU19BU1NVTUVfTk9OTlVMTF9FTkQK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRl
c3RzL0NvcmUvUmVuZGVyZXIvT2Zmc2NyZWVuUmVuZGVyZXIubSBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvUmVuZGVyZXIvT2Zmc2NyZWVuUmVu
ZGVyZXIubQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5hN2VmMjBjNWYzYjljNjc2N2NmMzA3NjEzZmY1YTJjYWEwNGU1
NGU1Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0
YWwvV0hMU0wgVGVzdHMvQ29yZS9SZW5kZXJlci9PZmZzY3JlZW5SZW5kZXJlci5tCQpAQCAtMCww
ICsxLDEwNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbXBvcnQgIk9mZnNjcmVlblJlbmRlcmVyLmgiCisKK0BpbnRlcmZhY2UgT2Zmc2NyZWVuUmVu
ZGVyZXIgKCkKK3sKKyAgICBpZDxNVExUZXh0dXJlPiBfb3V0cHV0VGV4dHVyZTsKK30KKworQGVu
ZAorCitAaW1wbGVtZW50YXRpb24gT2Zmc2NyZWVuUmVuZGVyZXIKKworLSAodm9pZClzZXRMaWJy
YXJ5OihpZDxNVExMaWJyYXJ5PilsaWJyYXJ5IHZlcnRleFNoYWRlck5hbWU6KE5TU3RyaW5nKil2
ZXJ0ZXhTaGFkZXIgZnJhZ21lbnRTaGFkZXJOYW1lOihOU1N0cmluZyopZnJhZ21lbnRTaGFkZXJO
YW1lCit7CisgICAgW3N1cGVyIHNldExpYnJhcnk6bGlicmFyeSB2ZXJ0ZXhTaGFkZXJOYW1lOnZl
cnRleFNoYWRlciBmcmFnbWVudFNoYWRlck5hbWU6ZnJhZ21lbnRTaGFkZXJOYW1lIHBpeGVsRm9y
bWF0OnNlbGYub3V0cHV0UGl4ZWxGb3JtYXRdOworfQorCistICh2b2lkKXNldFRhcmdldFdpZHRo
OihOU1VJbnRlZ2VyKXdpZHRoIHNldFRhcmdldEhlaWdodDooTlNVSW50ZWdlciloZWlnaHQKK3sK
KyAgICBbc3VwZXIgc2V0VGFyZ2V0V2lkdGg6d2lkdGggc2V0VGFyZ2V0SGVpZ2h0OmhlaWdodF07
CisgICAgTVRMVGV4dHVyZURlc2NyaXB0b3IgKm91dHB1dERlc2NyaXB0b3IgPSBbTVRMVGV4dHVy
ZURlc2NyaXB0b3IgdGV4dHVyZTJERGVzY3JpcHRvcldpdGhQaXhlbEZvcm1hdDpzZWxmLm91dHB1
dFBpeGVsRm9ybWF0IHdpZHRoOnNlbGYudGFyZ2V0V2lkdGggaGVpZ2h0OnNlbGYudGFyZ2V0SGVp
Z2h0IG1pcG1hcHBlZDpOT107CisgICAgb3V0cHV0RGVzY3JpcHRvci51c2FnZSA9IE1UTFRleHR1
cmVVc2FnZVJlbmRlclRhcmdldDsKKyAgICBvdXRwdXREZXNjcmlwdG9yLnN0b3JhZ2VNb2RlID0g
TVRMU3RvcmFnZU1vZGVNYW5hZ2VkOworICAgIF9vdXRwdXRUZXh0dXJlID0gW3NlbGYuZGV2aWNl
IG5ld1RleHR1cmVXaXRoRGVzY3JpcHRvcjpvdXRwdXREZXNjcmlwdG9yXTsKK30KKworLSAoTVRM
UmVuZGVyUGFzc0Rlc2NyaXB0b3IqKXJlbmRlclBhc3NEZXNjcmlwdG9yCit7CisgICAgTVRMUmVu
ZGVyUGFzc0Rlc2NyaXB0b3IgKnJlbmRlclBhc3NEZXNjcmlwdG9yID0gW01UTFJlbmRlclBhc3NE
ZXNjcmlwdG9yIHJlbmRlclBhc3NEZXNjcmlwdG9yXTsKKyAgICByZW5kZXJQYXNzRGVzY3JpcHRv
ci5jb2xvckF0dGFjaG1lbnRzWzBdLnRleHR1cmUgPSBfb3V0cHV0VGV4dHVyZTsKKyAgICByZXR1
cm4gcmVuZGVyUGFzc0Rlc2NyaXB0b3I7Cit9CisKKy0gKHZvaWQpY29uZmlndXJlQ29tbWFuZEJ1
ZmZlckJlZm9yZUNvbW1pdDooaWQ8TVRMQ29tbWFuZEJ1ZmZlcj4pY29tbWFuZEJ1ZmZlcgorewor
ICAgIGlkIDxNVExCbGl0Q29tbWFuZEVuY29kZXI+IGJsaXRFbmNvZGVyID0gW2NvbW1hbmRCdWZm
ZXIgYmxpdENvbW1hbmRFbmNvZGVyXTsKKyAgICBbYmxpdEVuY29kZXIgc3luY2hyb25pemVSZXNv
dXJjZTpfb3V0cHV0VGV4dHVyZV07CisgICAgW2JsaXRFbmNvZGVyIGVuZEVuY29kaW5nXTsKK30K
KworLSAodm9pZClyZWFkVGV4dHVyZURhdGFUb0J1ZmZlcjoodWludDhfdCAqKWJ1ZmZlciBieXRl
c1BlclJvdzooTlNVSW50ZWdlcilieXRlc1BlclJvdworeworICAgIC8vIFRoZSB0ZXh0dXJlIGlz
bid0IG1pcG1hcHBlZCwgc28gd2UgdXNlIHRoZSBkZWZhdWx0IGxldmVsIG9mIDAKKyAgICBbX291
dHB1dFRleHR1cmUgZ2V0Qnl0ZXM6YnVmZmVyIGJ5dGVzUGVyUm93OmJ5dGVzUGVyUm93IGZyb21S
ZWdpb246TVRMUmVnaW9uTWFrZTJEKDAsIDAsIHNlbGYudGFyZ2V0V2lkdGgsIHNlbGYudGFyZ2V0
SGVpZ2h0KSBtaXBtYXBMZXZlbDowXTsKK30KKworLSAoaW50KWludFZhbHVlCit7CisgICAgLy8g
V2UgYWx3YXlzIGhhdmUgNCBieXRlcyBwZXIgcGl4ZWwKKyAgICBOU1VJbnRlZ2VyIGxlbmd0aCA9
IHNlbGYudGFyZ2V0V2lkdGggKiBzZWxmLnRhcmdldEhlaWdodCAqIDQ7CisgICAgdWludDhfdCAq
YnVmZmVyID0gY2FsbG9jKGxlbmd0aCwgc2l6ZW9mKHVpbnQ4X3QpKTsKKyAgICBbc2VsZiByZWFk
VGV4dHVyZURhdGFUb0J1ZmZlcjoodWludDhfdCopYnVmZmVyIGJ5dGVzUGVyUm93OjQgKiBzZWxm
LnRhcmdldFdpZHRoXTsKKyAgICBpbnQgaW50VmFsdWUgPSAoKGludCopYnVmZmVyKVswXTsKKyAg
ICBmcmVlKGJ1ZmZlcik7CisgICAgcmV0dXJuIGludFZhbHVlOworfQorCistICh1bnNpZ25lZCl1
aW50VmFsdWUKK3sKKyAgICAvLyBXZSBhbHdheXMgaGF2ZSA0IGJ5dGVzIHBlciBwaXhlbAorICAg
IE5TVUludGVnZXIgbGVuZ3RoID0gc2VsZi50YXJnZXRXaWR0aCAqIHNlbGYudGFyZ2V0SGVpZ2h0
ICogNDsKKyAgICB1aW50OF90ICpidWZmZXIgPSBjYWxsb2MobGVuZ3RoLCBzaXplb2YodWludDhf
dCkpOworICAgIFtzZWxmIHJlYWRUZXh0dXJlRGF0YVRvQnVmZmVyOih1aW50OF90KilidWZmZXIg
Ynl0ZXNQZXJSb3c6NCAqIHNlbGYudGFyZ2V0V2lkdGhdOworICAgIHVuc2lnbmVkIHVpbnRWYWx1
ZSA9ICgodW5zaWduZWQqKWJ1ZmZlcilbMF07CisgICAgZnJlZShidWZmZXIpOworICAgIHJldHVy
biB1aW50VmFsdWU7Cit9CisKKy0gKGZsb2F0KWZsb2F0VmFsdWUKK3sKKyAgICAvLyBXZSBhbHdh
eXMgaGF2ZSA0IGJ5dGVzIHBlciBwaXhlbAorICAgIE5TVUludGVnZXIgbGVuZ3RoID0gc2VsZi50
YXJnZXRXaWR0aCAqIHNlbGYudGFyZ2V0SGVpZ2h0ICogNDsKKyAgICB1aW50OF90ICpidWZmZXIg
PSBjYWxsb2MobGVuZ3RoLCBzaXplb2YodWludDhfdCkpOworICAgIFtzZWxmIHJlYWRUZXh0dXJl
RGF0YVRvQnVmZmVyOih1aW50OF90KilidWZmZXIgYnl0ZXNQZXJSb3c6NCAqIHNlbGYudGFyZ2V0
V2lkdGhdOworICAgIGZsb2F0IGZsb2F0VmFsdWUgPSAoKGZsb2F0KilidWZmZXIpWzBdOworICAg
IGZyZWUoYnVmZmVyKTsKKyAgICByZXR1cm4gZmxvYXRWYWx1ZTsKK30KKworQGVuZApkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29y
ZS9SZW5kZXJlci9PbnNjcmVlblJlbmRlcmVyLmggYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL09uc2NyZWVuUmVuZGVyZXIuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi41NjBhYjYwY2UxNGY3Y2Y1MTkxYjg0OWRjYzJjMTExMGJkYWYxOTg4Ci0tLSAv
ZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wg
VGVzdHMvQ29yZS9SZW5kZXJlci9PbnNjcmVlblJlbmRlcmVyLmgJCkBAIC0wLDAgKzEsNDIgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisg
KiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0IDxG
b3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KKworI2ltcG9ydCAiUmVuZGVyZXIuaCIKKworTlNfQVNT
VU1FX05PTk5VTExfQkVHSU4KKworQGludGVyZmFjZSBPbnNjcmVlblJlbmRlcmVyIDogUmVuZGVy
ZXI8TVRLVmlld0RlbGVnYXRlPgorCistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhWaWV3OihNVEtW
aWV3Kil2aWV3IGRldmljZTooaWQ8TVRMRGV2aWNlPilkZXZpY2U7CisKK0Bwcm9wZXJ0eSAocmVh
ZG9ubHkpIE1US1ZpZXcgKnZpZXc7CisKKy0gKHZvaWQpc2V0U2hhZGVyU291cmNlOihOU1N0cmlu
Zyopc291cmNlIHZlcnRleFNoYWRlck5hbWU6KE5TU3RyaW5nKil2ZXJ0ZXhTaGFkZXIgZnJhZ21l
bnRTaGFkZXJOYW1lOihOU1N0cmluZyopZnJhZ21lbnRTaGFkZXI7CisKK0BlbmQKKworTlNfQVNT
VU1FX05PTk5VTExfRU5ECmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL09uc2NyZWVuUmVuZGVyZXIubSBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvUmVuZGVy
ZXIvT25zY3JlZW5SZW5kZXJlci5tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwNjI0ODIxNWY4Y2Y0ZDNkNDNjMzg0
NjE5ZWMyZjQ0ZjdjZjgzYjMKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL09uc2NyZWVuUmVuZGVy
ZXIubQkKQEAgLTAsMCArMSw4MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQor
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpbXBvcnQgIk9uc2NyZWVuUmVuZGVyZXIuaCIKKworI2ltcG9ydCA8c2lt
ZC9zaW1kLmg+CisKK0BpbnRlcmZhY2UgT25zY3JlZW5SZW5kZXJlciAoKQorCitAcHJvcGVydHkg
TVRLVmlldyAqdmlldzsKK0Bwcm9wZXJ0eSBDR1NpemUgZHJhd2FibGVTaXplOworCitAZW5kCisK
K0BpbXBsZW1lbnRhdGlvbiBPbnNjcmVlblJlbmRlcmVyCisKKy0gKGluc3RhbmNldHlwZSlpbml0
V2l0aFZpZXc6KE1US1ZpZXcgKil2aWV3IGRldmljZToobm9ubnVsbCBpZDxNVExEZXZpY2U+KWRl
dmljZQoreworICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhEZXZpY2U6ZGV2aWNlXTsKKyAgICBp
ZiAoc2VsZikgeworICAgICAgICBzZWxmLnZpZXcgPSB2aWV3OworICAgICAgICBzZWxmLnZpZXcu
ZGVsZWdhdGUgPSBzZWxmOworICAgIH0KKyAgICByZXR1cm4gc2VsZjsKK30KKworLSAodm9pZClt
dGtWaWV3OihNVEtWaWV3ICopdmlldyBkcmF3YWJsZVNpemVXaWxsQ2hhbmdlOihDR1NpemUpc2l6
ZQoreworICAgIFtzZWxmIHNldFRhcmdldFdpZHRoOnNpemUud2lkdGggc2V0VGFyZ2V0SGVpZ2h0
OnNpemUuaGVpZ2h0XTsKK30KKworLSAodm9pZClkcmF3SW5NVEtWaWV3OihNVEtWaWV3ICopdmll
dworeworICAgIFtzZWxmIGRyYXddOworfQorCistIChNVExSZW5kZXJQYXNzRGVzY3JpcHRvciop
cmVuZGVyUGFzc0Rlc2NyaXB0b3IKK3sKKyAgICByZXR1cm4gc2VsZi52aWV3LmN1cnJlbnRSZW5k
ZXJQYXNzRGVzY3JpcHRvcjsKK30KKworLSAodm9pZCljb25maWd1cmVDb21tYW5kQnVmZmVyQmVm
b3JlQ29tbWl0OihpZDxNVExDb21tYW5kQnVmZmVyPiljb21tYW5kQnVmZmVyCit7CisgICAgW2Nv
bW1hbmRCdWZmZXIgcHJlc2VudERyYXdhYmxlOnNlbGYudmlldy5jdXJyZW50RHJhd2FibGVdOwor
fQorCistICh2b2lkKXNldFNoYWRlclNvdXJjZTooTlNTdHJpbmcgKilzb3VyY2UgdmVydGV4U2hh
ZGVyTmFtZTooTlNTdHJpbmcgKil2ZXJ0ZXhTaGFkZXJOYW1lIGZyYWdtZW50U2hhZGVyTmFtZToo
TlNTdHJpbmcgKilmcmFnbWVudFNoYWRlck5hbWUKK3sKKyAgICBNVExDb21waWxlT3B0aW9ucyAq
Y29tcGlsZU9wdGlvbnMgPSBbW01UTENvbXBpbGVPcHRpb25zIGFsbG9jXSBpbml0XTsKKyAgICBO
U0Vycm9yICplcnJvciA9IG5pbDsKKyAgICBpZDxNVExMaWJyYXJ5PiBsaWJyYXJ5ID0gW3NlbGYu
ZGV2aWNlIG5ld0xpYnJhcnlXaXRoU291cmNlOnNvdXJjZSBvcHRpb25zOmNvbXBpbGVPcHRpb25z
IGVycm9yOiZlcnJvcl07CisgICAgaWYgKCFsaWJyYXJ5ICYmIGVycm9yKSB7CisgICAgICAgIE5T
TG9nKEAiQ29tcGlsZSBlcnJvcjogJUAiLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbik7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBbc2VsZiBzZXRMaWJyYXJ5OmxpYnJhcnkgdmVy
dGV4U2hhZGVyTmFtZTp2ZXJ0ZXhTaGFkZXJOYW1lIGZyYWdtZW50U2hhZGVyTmFtZTpmcmFnbWVu
dFNoYWRlck5hbWUgcGl4ZWxGb3JtYXQ6c2VsZi52aWV3LmNvbG9yUGl4ZWxGb3JtYXRdOworfQor
CitAZW5kCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9X
SExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL1JlbmRlcmVyLmggYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL1JlbmRlcmVyLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNzBiMjM1M2I4MjYzZDdiM2I1MDQwYjZhOTcwMmMzNmM0M2IwNzhmYgotLS0gL2Rl
di9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRl
c3RzL0NvcmUvUmVuZGVyZXIvUmVuZGVyZXIuaAkKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
CisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPEZvdW5kYXRpb24v
Rm91bmRhdGlvbi5oPgorI2ltcG9ydCA8TWV0YWxLaXQvTWV0YWxLaXQuaD4KKworTlNfQVNTVU1F
X05PTk5VTExfQkVHSU4KKworQGludGVyZmFjZSBSZW5kZXJlciA6IE5TT2JqZWN0CisKKy0gKGlu
c3RhbmNldHlwZSlpbml0V2l0aERldmljZTooaWQ8TVRMRGV2aWNlPilkZXZpY2U7CisKK0Bwcm9w
ZXJ0eSAobm9uYXRvbWljKSBzaW1kX2Zsb2F0M3gzIHRyYW5zZm9ybU1hdHJpeDsKKworQHByb3Bl
cnR5IChyZWFkb25seSkgaWQ8TVRMRGV2aWNlPiBkZXZpY2U7CisKK0Bwcm9wZXJ0eSAocmVhZG9u
bHkpIE5TVUludGVnZXIgdGFyZ2V0V2lkdGg7CitAcHJvcGVydHkgKHJlYWRvbmx5KSBOU1VJbnRl
Z2VyIHRhcmdldEhlaWdodDsKKworLSAodm9pZClzZXRUYXJnZXRXaWR0aDooTlNVSW50ZWdlcil3
aWR0aCBzZXRUYXJnZXRIZWlnaHQ6KE5TVUludGVnZXIpaGVpZ2h0OworCistICh2b2lkKXNldExp
YnJhcnk6KGlkPE1UTExpYnJhcnk+KWxpYnJhcnkgdmVydGV4U2hhZGVyTmFtZTooTlNTdHJpbmcq
KXZlcnRleFNoYWRlciBmcmFnbWVudFNoYWRlck5hbWU6KE5TU3RyaW5nKilmcmFnbWVudFNoYWRl
ck5hbWUgcGl4ZWxGb3JtYXQ6KE1UTFBpeGVsRm9ybWF0KXBpeGVsRm9ybWF0OworCistICh2b2lk
KWRyYXc7CisKKy8vIE1ldGhvZHMgdGhhdCBjYW4gYmUgb3ZlcmxvYWRlZCB0byBjb25maWd1cmUg
dGhlIHJlbmRlciBwaXBlbGluZQorLSAoTVRMUmVuZGVyUGFzc0Rlc2NyaXB0b3IqKXJlbmRlclBh
c3NEZXNjcmlwdG9yOworLSAodm9pZCljb25maWd1cmVDb21tYW5kQnVmZmVyQmVmb3JlQ29tbWl0
OihpZDxNVExDb21tYW5kQnVmZmVyPiljb21tYW5kQnVmZmVyOworCitAZW5kCisKK05TX0FTU1VN
RV9OT05OVUxMX0VORApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
TWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9SZW5kZXJlci9SZW5kZXJlci5tIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9SZW5kZXJlci9SZW5kZXJl
ci5tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjgyMWY5NWNlNzgyNjRjOWZjMjVjZDRhYzA0NDZiZDY0YWQ2NmFjM2YK
LS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9X
SExTTCBUZXN0cy9Db3JlL1JlbmRlcmVyL1JlbmRlcmVyLm0JCkBAIC0wLDAgKzEsMTcyIEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
YGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiUmVu
ZGVyZXIuaCIKKworLy8gVGhpcyBzaG91bGQgbWlycm9yIHRoZSBzdHJ1Y3R1cmUgdGhhdCBpcyB1
c2VkIGZvciB0aGUgdmVydGV4IHNoYWRlcnMKK3R5cGVkZWYgc3RydWN0IHsKKyAgICB2ZWN0b3Jf
ZmxvYXQyIHBvc2l0aW9uOworICAgIHZlY3Rvcl9mbG9hdDIgdXY7Cit9IFZlcnRleFN0cnVjdDsK
KworLy8gQSBxdWFkIHRoYXQgZmlsbHMgdGhlIHZpZXdwb3J0CitzdGF0aWMgVmVydGV4U3RydWN0
IHZlcnRleERhdGFbXSA9Cit7CisgICAgLy8gMkQgcG9zaXRpb25zCisgICAgeyB7IC0xLjAsICAt
MS4wIH0sIHsgMCwgMCB9IH0sCisgICAgeyB7ICAxLjAsICAtMS4wIH0sIHsgMSwgMCB9IH0sCisg
ICAgeyB7IC0xLjAsIDEuMCB9LCB7IDAsIDEgfSB9LAorICAgIHsgeyAgMS4wLCAxLjAgfSwgeyAx
LCAxIH0gfQorfTsKKworQGludGVyZmFjZSBSZW5kZXJlciAoKQorCitAcHJvcGVydHkgaWQ8TVRM
RGV2aWNlPiBkZXZpY2U7CitAcHJvcGVydHkgTlNVSW50ZWdlciB0YXJnZXRXaWR0aDsKK0Bwcm9w
ZXJ0eSBOU1VJbnRlZ2VyIHRhcmdldEhlaWdodDsKKworQGVuZAorCitAaW1wbGVtZW50YXRpb24g
UmVuZGVyZXIgeworICAgIGlkPE1UTENvbW1hbmRRdWV1ZT4gX2NvbW1hbmRRdWV1ZTsKKyAgICBp
ZDxNVExMaWJyYXJ5PiBfbGlicmFyeTsKKworICAgIE1UTFJlbmRlclBpcGVsaW5lRGVzY3JpcHRv
ciAqX3BpcGVsaW5lU3RhdGVEZXNjcmlwdG9yOworCisgICAgaWQ8TVRMUmVuZGVyUGlwZWxpbmVT
dGF0ZT4gX3BpcGVsaW5lU3RhdGU7Cit9CisKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aERldmlj
ZTooaWQ8TVRMRGV2aWNlPilkZXZpY2UKK3sKKyAgICBzZWxmID0gW3N1cGVyIGluaXRdOworICAg
IGlmIChzZWxmKSB7CisgICAgICAgIF9kZXZpY2UgPSBkZXZpY2U7CisgICAgICAgIF9jb21tYW5k
UXVldWUgPSBbX2RldmljZSBuZXdDb21tYW5kUXVldWVdOworICAgICAgICBzZWxmLnRyYW5zZm9y
bU1hdHJpeCA9IG1hdHJpeF9pZGVudGl0eV9mbG9hdDN4MzsKKyAgICB9CisgICAgcmV0dXJuIHNl
bGY7Cit9CisKKy0gKHZvaWQpc2V0TGlicmFyeTooaWQ8TVRMTGlicmFyeT4pbGlicmFyeSB2ZXJ0
ZXhTaGFkZXJOYW1lOihOU1N0cmluZyopdmVydGV4U2hhZGVyTmFtZSBmcmFnbWVudFNoYWRlck5h
bWU6KE5TU3RyaW5nKilmcmFnbWVudFNoYWRlck5hbWUgcGl4ZWxGb3JtYXQ6KE1UTFBpeGVsRm9y
bWF0KXBpeGVsRm9ybWF0Cit7CisgICAgX2xpYnJhcnkgPSBsaWJyYXJ5OworICAgIGlkPE1UTEZ1
bmN0aW9uPiB2ZXJ0ZXhGdW5jdGlvbiA9IFtfbGlicmFyeSBuZXdGdW5jdGlvbldpdGhOYW1lOnZl
cnRleFNoYWRlck5hbWVdOworICAgIGlkPE1UTEZ1bmN0aW9uPiBmcmFnbWVudEZ1bmN0aW9uID0g
W19saWJyYXJ5IG5ld0Z1bmN0aW9uV2l0aE5hbWU6ZnJhZ21lbnRTaGFkZXJOYW1lXTsKKworICAg
IC8vIENvbmZpZ3VyZSBhIHBpcGVsaW5lIGRlc2NyaXB0b3IgdGhhdCBpcyB1c2VkIHRvIGNyZWF0
ZSBhIHBpcGVsaW5lIHN0YXRlCisgICAgX3BpcGVsaW5lU3RhdGVEZXNjcmlwdG9yID0gW1tNVExS
ZW5kZXJQaXBlbGluZURlc2NyaXB0b3IgYWxsb2NdIGluaXRdOworCisgICAgTVRMVmVydGV4RGVz
Y3JpcHRvciAqdmVydGV4RGVzY3JpcHRvciA9IFtNVExWZXJ0ZXhEZXNjcmlwdG9yIHZlcnRleERl
c2NyaXB0b3JdOworICAgIHZlcnRleERlc2NyaXB0b3IuYXR0cmlidXRlc1swXS5mb3JtYXQgPSBN
VExWZXJ0ZXhGb3JtYXRGbG9hdDI7CisgICAgdmVydGV4RGVzY3JpcHRvci5hdHRyaWJ1dGVzWzBd
LmJ1ZmZlckluZGV4ID0gMDsKKyAgICB2ZXJ0ZXhEZXNjcmlwdG9yLmF0dHJpYnV0ZXNbMF0ub2Zm
c2V0ID0gMDsKKworICAgIHZlcnRleERlc2NyaXB0b3IuYXR0cmlidXRlc1sxXS5mb3JtYXQgPSBN
VExWZXJ0ZXhGb3JtYXRGbG9hdDI7CisgICAgdmVydGV4RGVzY3JpcHRvci5hdHRyaWJ1dGVzWzFd
LmJ1ZmZlckluZGV4ID0gMDsKKyAgICB2ZXJ0ZXhEZXNjcmlwdG9yLmF0dHJpYnV0ZXNbMV0ub2Zm
c2V0ID0gb2Zmc2V0b2YoVmVydGV4U3RydWN0LCB1dik7CisKKyAgICB2ZXJ0ZXhEZXNjcmlwdG9y
LmxheW91dHNbMF0uc3RyaWRlID0gc2l6ZW9mKFZlcnRleFN0cnVjdCk7CisgICAgdmVydGV4RGVz
Y3JpcHRvci5sYXlvdXRzWzBdLnN0ZXBGdW5jdGlvbiA9IE1UTFZlcnRleFN0ZXBGdW5jdGlvblBl
clZlcnRleDsKKworICAgIF9waXBlbGluZVN0YXRlRGVzY3JpcHRvci52ZXJ0ZXhEZXNjcmlwdG9y
ID0gdmVydGV4RGVzY3JpcHRvcjsKKworICAgIF9waXBlbGluZVN0YXRlRGVzY3JpcHRvci5sYWJl
bCA9IEAiU2ltcGxlIFBpcGVsaW5lIjsKKyAgICBfcGlwZWxpbmVTdGF0ZURlc2NyaXB0b3IudmVy
dGV4RnVuY3Rpb24gPSB2ZXJ0ZXhGdW5jdGlvbjsKKyAgICBfcGlwZWxpbmVTdGF0ZURlc2NyaXB0
b3IuZnJhZ21lbnRGdW5jdGlvbiA9IGZyYWdtZW50RnVuY3Rpb247CisgICAgX3BpcGVsaW5lU3Rh
dGVEZXNjcmlwdG9yLmNvbG9yQXR0YWNobWVudHNbMF0ucGl4ZWxGb3JtYXQgPSBwaXhlbEZvcm1h
dDsKKworICAgIE5TRXJyb3IgKmVycm9yID0gbmlsOworICAgIF9waXBlbGluZVN0YXRlID0gW19k
ZXZpY2UgbmV3UmVuZGVyUGlwZWxpbmVTdGF0ZVdpdGhEZXNjcmlwdG9yOl9waXBlbGluZVN0YXRl
RGVzY3JpcHRvciBlcnJvcjomZXJyb3JdOworCisgICAgTlNBc3NlcnQoX3BpcGVsaW5lU3RhdGUs
IEAiRmFpbGVkIHRvIGNyZWF0ZWQgcGlwZWxpbmUgc3RhdGU6ICVAIiwgZXJyb3IubG9jYWxpemVk
RGVzY3JpcHRpb24pOworfQorCistICh2b2lkKXNldFRhcmdldFdpZHRoOihOU1VJbnRlZ2VyKXdp
ZHRoIHNldFRhcmdldEhlaWdodDooTlNVSW50ZWdlciloZWlnaHQKK3sKKyAgICBfdGFyZ2V0V2lk
dGggPSB3aWR0aDsKKyAgICBfdGFyZ2V0SGVpZ2h0ID0gaGVpZ2h0OworfQorCistICh2b2lkKWRy
YXcKK3sKKyAgICBpZiAoIV9waXBlbGluZVN0YXRlKQorICAgICAgICByZXR1cm47CisKKyAgICAv
LyBDcmVhdGUgYSBuZXcgY29tbWFuZCBidWZmZXIgZm9yIGVhY2ggcmVuZGVyIHBhc3MgdG8gdGhl
IGN1cnJlbnQgZHJhd2FibGUKKyAgICBpZDxNVExDb21tYW5kQnVmZmVyPiBjb21tYW5kQnVmZmVy
ID0gW19jb21tYW5kUXVldWUgY29tbWFuZEJ1ZmZlcl07CisgICAgY29tbWFuZEJ1ZmZlci5sYWJl
bCA9IEAiTXlDb21tYW5kIjsKKworICAgIE1UTFJlbmRlclBhc3NEZXNjcmlwdG9yICpyZW5kZXJQ
YXNzRGVzY3JpcHRvciA9IFtzZWxmIHJlbmRlclBhc3NEZXNjcmlwdG9yXTsKKworICAgIE5TQXNz
ZXJ0KHJlbmRlclBhc3NEZXNjcmlwdG9yLCBAIm5pbCBNVExSZW5kZXJQYXNzRGVzY3JpcHRvciIp
OworCisgICAgcmVuZGVyUGFzc0Rlc2NyaXB0b3IuY29sb3JBdHRhY2htZW50c1swXS5jbGVhckNv
bG9yID0gTVRMQ2xlYXJDb2xvck1ha2UoMCwgMCwgMCwgMCk7CisgICAgcmVuZGVyUGFzc0Rlc2Ny
aXB0b3IuY29sb3JBdHRhY2htZW50c1swXS5sb2FkQWN0aW9uID0gTVRMTG9hZEFjdGlvbkNsZWFy
OworICAgIHJlbmRlclBhc3NEZXNjcmlwdG9yLmNvbG9yQXR0YWNobWVudHNbMF0uc3RvcmVBY3Rp
b24gPSBNVExTdG9yZUFjdGlvblN0b3JlOworCisgICAgLy8gQ3JlYXRlIGEgcmVuZGVyIGNvbW1h
bmQgZW5jb2RlciBzbyB3ZSBjYW4gcmVuZGVyIGludG8gc29tZXRoaW5nCisgICAgaWQ8TVRMUmVu
ZGVyQ29tbWFuZEVuY29kZXI+IHJlbmRlckVuY29kZXIgPSBbY29tbWFuZEJ1ZmZlciByZW5kZXJD
b21tYW5kRW5jb2RlcldpdGhEZXNjcmlwdG9yOnJlbmRlclBhc3NEZXNjcmlwdG9yXTsKKyAgICBy
ZW5kZXJFbmNvZGVyLmxhYmVsID0gQCJNeVJlbmRlckVuY29kZXIiOworCisgICAgW3JlbmRlckVu
Y29kZXIgc2V0Vmlld3BvcnQ6KE1UTFZpZXdwb3J0KSB7IDAuMCwgMC4wLCBfdGFyZ2V0V2lkdGgs
IF90YXJnZXRIZWlnaHQsIC0xLjAsIDEuMCB9XTsKKworICAgIFtyZW5kZXJFbmNvZGVyIHNldFJl
bmRlclBpcGVsaW5lU3RhdGU6X3BpcGVsaW5lU3RhdGVdOworCisgICAgW3JlbmRlckVuY29kZXIg
c2V0VmVydGV4Qnl0ZXM6dmVydGV4RGF0YSBsZW5ndGg6c2l6ZW9mKHZlcnRleERhdGEpIGF0SW5k
ZXg6MF07CisKKyAgICBbcmVuZGVyRW5jb2RlciBkcmF3UHJpbWl0aXZlczpNVExQcmltaXRpdmVU
eXBlVHJpYW5nbGVTdHJpcCB2ZXJ0ZXhTdGFydDowIHZlcnRleENvdW50OjRdOworCisgICAgW3Jl
bmRlckVuY29kZXIgZW5kRW5jb2RpbmddOworCisgICAgW3NlbGYgY29uZmlndXJlQ29tbWFuZEJ1
ZmZlckJlZm9yZUNvbW1pdDpjb21tYW5kQnVmZmVyXTsKKworICAgIFtjb21tYW5kQnVmZmVyIGNv
bW1pdF07CisgICAgW2NvbW1hbmRCdWZmZXIgd2FpdFVudGlsQ29tcGxldGVkXTsKK30KKworLSAo
dm9pZClzZXRUcmFuc2Zvcm1NYXRyaXg6KHNpbWRfZmxvYXQzeDMpdHJhbnNmb3JtTWF0cml4Cit7
CisgICAgX3RyYW5zZm9ybU1hdHJpeCA9IHRyYW5zZm9ybU1hdHJpeDsKKyAgICBzaW1kX2Zsb2F0
MyB2MCA9IG1hdHJpeF9tdWx0aXBseShfdHJhbnNmb3JtTWF0cml4LCB2ZWN0b3IzKDAuMGYsIDAu
MGYsIDEuMGYpKTsKKyAgICBzaW1kX2Zsb2F0MyB2MSA9IG1hdHJpeF9tdWx0aXBseShfdHJhbnNm
b3JtTWF0cml4LCB2ZWN0b3IzKDEuMGYsIDAuMGYsIDEuMGYpKTsKKyAgICBzaW1kX2Zsb2F0MyB2
MiA9IG1hdHJpeF9tdWx0aXBseShfdHJhbnNmb3JtTWF0cml4LCB2ZWN0b3IzKDAuMGYsIDEuMGYs
IDEuMGYpKTsKKyAgICBzaW1kX2Zsb2F0MyB2MyA9IG1hdHJpeF9tdWx0aXBseShfdHJhbnNmb3Jt
TWF0cml4LCB2ZWN0b3IzKDEuMGYsIDEuMGYsIDEuMGYpKTsKKworICAgIHZlcnRleERhdGFbMF0u
dXYgPSB2ZWN0b3IyKHYwLngsIHYwLnkpOworICAgIHZlcnRleERhdGFbMV0udXYgPSB2ZWN0b3Iy
KHYxLngsIHYxLnkpOworICAgIHZlcnRleERhdGFbMl0udXYgPSB2ZWN0b3IyKHYyLngsIHYyLnkp
OworICAgIHZlcnRleERhdGFbM10udXYgPSB2ZWN0b3IyKHYzLngsIHYzLnkpOworfQorCistIChN
VExSZW5kZXJQYXNzRGVzY3JpcHRvciAqKXJlbmRlclBhc3NEZXNjcmlwdG9yCit7CisgICAgcmV0
dXJuIG5pbDsKK30KKworLSAodm9pZCljb25maWd1cmVDb21tYW5kQnVmZmVyQmVmb3JlQ29tbWl0
OihpZDxNVExDb21tYW5kQnVmZmVyPiljb21tYW5kQnVmZmVyCit7Cit9CisKK0BlbmQKZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0Nv
cmUvVGVzdENhbGxBcmd1bWVudC5oIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0
YWwvV0hMU0wgVGVzdHMvQ29yZS9UZXN0Q2FsbEFyZ3VtZW50LmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTJiMzM1
YmRlMWNhZWM2NmEzMjU5YTk0MTQwYmFkOTlkMDI5MWYyMAotLS0gL2Rldi9udWxsCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdENh
bGxBcmd1bWVudC5oCQpAQCAtMCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
KyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+CisK
K3R5cGVkZWYgZW51bSA6IE5TVUludGVnZXIgeworICAgIFdITFNMVHlwZUJvb2wsCisgICAgV0hM
U0xUeXBlVWNoYXIsCisgICAgV0hMU0xUeXBlU2hvcnQsCisgICAgV0hMU0xUeXBlSW50LAorICAg
IFdITFNMVHlwZVVzaG9ydCwKKyAgICBXSExTTFR5cGVVaW50LAorICAgIFdITFNMVHlwZUhhbGYs
CisgICAgV0hMU0xUeXBlRmxvYXQKK30gV0hMU0xUeXBlOworCitOU1N0cmluZyogV0hMU0xUeXBl
U3RyaW5nKFdITFNMVHlwZSk7CisKK05TX0FTU1VNRV9OT05OVUxMX0JFR0lOCisKK0BpbnRlcmZh
Y2UgVGVzdENhbGxBcmd1bWVudCA6IE5TT2JqZWN0CisKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0
aFZhbHVlOihOU051bWJlciopdmFsdWUgdHlwZTooV0hMU0xUeXBlKXR5cGU7CisKK0Bwcm9wZXJ0
eSAocmVhZG9ubHkpIE5TTnVtYmVyKiB2YWx1ZTsKK0Bwcm9wZXJ0eSAocmVhZG9ubHkpIFdITFNM
VHlwZSB0eXBlOworCistIChOU1N0cmluZyopd2hsc2xTb3VyY2U7CisKK0BlbmQKKworTlNfQVNT
VU1FX05PTk5VTExfRU5ECmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1Rlc3RDYWxsQXJndW1lbnQubSBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdENhbGxBcmd1bWVu
dC5tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmU5NzA0NmUyZDE0NGQ2MjMwYzgyNjQyMDNhODAwMTMyMzQyZmU5YWIK
LS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9X
SExTTCBUZXN0cy9Db3JlL1Rlc3RDYWxsQXJndW1lbnQubQkKQEAgLTAsMCArMSw5MyBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgIlRlc3RD
YWxsQXJndW1lbnQuaCIKKworTlNTdHJpbmcqIFdITFNMVHlwZVN0cmluZyhXSExTTFR5cGUgdHlw
ZSkKK3sKKyAgICBzd2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIFdITFNMVHlwZUJvb2w6CisgICAg
ICAgIHJldHVybiBAImJvb2wiOworICAgIGNhc2UgV0hMU0xUeXBlVWNoYXI6CisgICAgICAgIHJl
dHVybiBAInVjaGFyIjsKKyAgICBjYXNlIFdITFNMVHlwZVNob3J0OgorICAgICAgICByZXR1cm4g
QCJ1c2hvcnQiOworICAgIGNhc2UgV0hMU0xUeXBlSW50OgorICAgICAgICByZXR1cm4gQCJpbnQi
OworICAgIGNhc2UgV0hMU0xUeXBlVXNob3J0OgorICAgICAgICByZXR1cm4gQCJ1c2hvcnQiOwor
ICAgIGNhc2UgV0hMU0xUeXBlVWludDoKKyAgICAgICAgcmV0dXJuIEAidWludCI7CisgICAgY2Fz
ZSBXSExTTFR5cGVIYWxmOgorICAgICAgICByZXR1cm4gQCJoYWxmIjsKKyAgICBjYXNlIFdITFNM
VHlwZUZsb2F0OgorICAgICAgICByZXR1cm4gQCJmbG9hdCI7CisgICAgZGVmYXVsdDoKKyAgICAg
ICAgcmV0dXJuIG5pbDsKKyAgICB9Cit9CisKK0BpbnRlcmZhY2UgVGVzdENhbGxBcmd1bWVudCAo
KQorCitAcHJvcGVydHkgTlNOdW1iZXIqIHZhbHVlOworQHByb3BlcnR5IFdITFNMVHlwZSB0eXBl
OworCitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBUZXN0Q2FsbEFyZ3VtZW50CisKKy0gKGluc3Rh
bmNldHlwZSlpbml0V2l0aFZhbHVlOihOU051bWJlciAqKXZhbHVlIHR5cGU6KFdITFNMVHlwZSl0
eXBlCit7CisgICAgaWYgKHNlbGYgPSBbc3VwZXIgaW5pdF0pIHsKKyAgICAgICAgc2VsZi52YWx1
ZSA9IHZhbHVlOworICAgICAgICBzZWxmLnR5cGUgPSB0eXBlOworICAgIH0KKyAgICByZXR1cm4g
c2VsZjsKK30KKworLy8gRklYTUU6IFRoaXMgc2hvdWxkIHByb2JhYmx5IGJlIE1TTCBzb3VyY2UK
Ky0gKE5TU3RyaW5nKil3aGxzbFNvdXJjZQoreworICAgIHN3aXRjaCAoc2VsZi50eXBlKSB7Cisg
ICAgY2FzZSBXSExTTFR5cGVCb29sOgorICAgICAgICByZXR1cm4gc2VsZi52YWx1ZS5ib29sVmFs
dWUgPyBAInRydWUiIDogQCJmYWxzZSI7CisgICAgY2FzZSBXSExTTFR5cGVVY2hhcjoKKyAgICAg
ICAgcmV0dXJuIFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAidWludDhfdCgldXUpIiwgc2Vs
Zi52YWx1ZS51bnNpZ25lZEludFZhbHVlXTsKKyAgICBjYXNlIFdITFNMVHlwZVNob3J0OgorICAg
ICAgICByZXR1cm4gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJpbnQxNl90KCVkKSIsIHNl
bGYudmFsdWUuaW50VmFsdWVdOworICAgIGNhc2UgV0hMU0xUeXBlVXNob3J0OgorICAgICAgICBy
ZXR1cm4gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJ1aW50MTZfdCgldXUpIiwgc2VsZi52
YWx1ZS51bnNpZ25lZEludFZhbHVlXTsKKyAgICBjYXNlIFdITFNMVHlwZUludDoKKyAgICAgICAg
cmV0dXJuIFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiJWQiLCBzZWxmLnZhbHVlLmludFZh
bHVlXTsKKyAgICBjYXNlIFdITFNMVHlwZVVpbnQ6CisgICAgICAgIHJldHVybiBbTlNTdHJpbmcg
c3RyaW5nV2l0aEZvcm1hdDpAIiV1dSIsIHNlbGYudmFsdWUudW5zaWduZWRJbnRWYWx1ZV07Cisg
ICAgY2FzZSBXSExTTFR5cGVIYWxmOgorICAgICAgICByZXR1cm4gW05TU3RyaW5nIHN0cmluZ1dp
dGhGb3JtYXQ6QCIlZiIsIHNlbGYudmFsdWUuZmxvYXRWYWx1ZV07CisgICAgY2FzZSBXSExTTFR5
cGVGbG9hdDoKKyAgICAgICAgcmV0dXJuIFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OkAiaGFs
ZiglZikiLCBzZWxmLnZhbHVlLmZsb2F0VmFsdWVdOworICAgIH0KK30KKworQGVuZApkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29y
ZS9UZXN0RGVzY3JpcHRpb24uaCBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFs
L1dITFNMIFRlc3RzL0NvcmUvVGVzdERlc2NyaXB0aW9uLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDYxOGJjNWIz
MDJkNzdmNDNmNTZkYmFmN2Q0ODlhMjgyNGM0NDE3YwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdERlc2Ny
aXB0aW9uLmgJCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCitAaW1wb3J0IEZvdW5kYXRpb247CisjaW1wb3J0ICJUZXN0Q2FsbEFy
Z3VtZW50LmgiCisKK0BjbGFzcyBUZXN0RmFtaWx5OworCitOU19BU1NVTUVfTk9OTlVMTF9CRUdJ
TgorCitAaW50ZXJmYWNlIFRlc3REZXNjcmlwdGlvbiA6IE5TT2JqZWN0CisKKy0gKGluc3RhbmNl
dHlwZSlpbml0V2l0aEZ1bmN0aW9uTmFtZTooTlNTdHJpbmcqKWZ1bmN0aW9uTmFtZSBhcmd1bWVu
dHM6KE5TQXJyYXk8VGVzdENhbGxBcmd1bWVudCo+Kilhcmd1bWVudHM7CisKK0Bwcm9wZXJ0eSBO
U1N0cmluZyogZnVuY3Rpb25OYW1lOworQHByb3BlcnR5IE5TQXJyYXk8VGVzdENhbGxBcmd1bWVu
dCo+KiBhcmd1bWVudHM7CisKK0Bwcm9wZXJ0eSBXSExTTFR5cGUgcmV0dXJuVHlwZTsKK0Bwcm9w
ZXJ0eSBOU051bWJlciogZXhwZWN0YXRpb247CisKK0Bwcm9wZXJ0eSAod2VhaykgVGVzdEZhbWls
eSogdGVzdEZhbWlseTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyogZnJhZ21lbnRTaGFkZXJOYW1lOwor
CistIChOU1N0cmluZyopbWV0YWxGcmFnbWVudFNoYWRlclNvdXJjZUZvckNhbGxUb01ldGFsRnVu
Y3Rpb246KE5TU3RyaW5nKiljb21waWxlZE5hbWVPZkZ1bmN0aW9uOworCitAZW5kCisKK05TX0FT
U1VNRV9OT05OVUxMX0VORApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9UZXN0RGVzY3JpcHRpb24ubSBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdERlc2NyaXB0aW9u
Lm0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzU4MmUyYzk4OTBkOGI1NmJhZTIxNzBjNTBkOWIzZTRjN2E0Y2YyOQot
LS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dI
TFNMIFRlc3RzL0NvcmUvVGVzdERlc2NyaXB0aW9uLm0JCkBAIC0wLDAgKzEsMTIyIEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
CisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiVGVzdERl
c2NyaXB0aW9uLmgiCisKK0BpbXBsZW1lbnRhdGlvbiBUZXN0RGVzY3JpcHRpb24KKworLSAoaW5z
dGFuY2V0eXBlKWluaXRXaXRoRnVuY3Rpb25OYW1lOihOU1N0cmluZyAqKWZ1bmN0aW9uTmFtZSBh
cmd1bWVudHM6KE5TQXJyYXk8VGVzdENhbGxBcmd1bWVudCAqPiAqKWFyZ3VtZW50cworeworICAg
IGlmIChzZWxmID0gW3N1cGVyIGluaXRdKSB7CisgICAgICAgIHNlbGYuZnVuY3Rpb25OYW1lID0g
ZnVuY3Rpb25OYW1lOworICAgICAgICBzZWxmLmFyZ3VtZW50cyA9IGFyZ3VtZW50czsKKyAgICB9
CisgICAgcmV0dXJuIHNlbGY7Cit9CisKKy0gKE5TU3RyaW5nKiljYWxsU3RyaW5nOihOU1N0cmlu
ZyopY29tcGlsZWROYW1lT2ZGdW5jdGlvbgoreworICAgIE5TTXV0YWJsZVN0cmluZyogc3RyaW5n
ID0gW05TTXV0YWJsZVN0cmluZyBuZXddOworICAgIFtzdHJpbmcgYXBwZW5kRm9ybWF0OkAiJUAo
IiwgY29tcGlsZWROYW1lT2ZGdW5jdGlvbl07CisKKyAgICBCT09MIGZpcnN0ID0gWUVTOworICAg
IGZvciAoVGVzdENhbGxBcmd1bWVudCogYXJndW1lbnQgaW4gc2VsZi5hcmd1bWVudHMpIHsKKyAg
ICAgICAgaWYgKCFmaXJzdCkKKyAgICAgICAgICAgIFtzdHJpbmcgYXBwZW5kRm9ybWF0OkAiLCAl
QCIsIGFyZ3VtZW50LndobHNsU291cmNlXTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgW3N0
cmluZyBhcHBlbmRTdHJpbmc6YXJndW1lbnQud2hsc2xTb3VyY2VdOworICAgICAgICBmaXJzdCA9
IE5POworICAgIH0KKworICAgIFtzdHJpbmcgYXBwZW5kU3RyaW5nOkAiKSJdOworICAgIHJldHVy
biBzdHJpbmc7Cit9CisKKy0gKE5TU3RyaW5nKilkZXNjcmlwdGlvbgoreworICAgIE5TTXV0YWJs
ZVN0cmluZyogc3RyaW5nID0gW05TTXV0YWJsZVN0cmluZyBuZXddOworICAgIFtzdHJpbmcgYXBw
ZW5kRm9ybWF0OkAiJUAgJUAoIiwgV0hMU0xUeXBlU3RyaW5nKHNlbGYucmV0dXJuVHlwZSksIHNl
bGYuZnVuY3Rpb25OYW1lXTsKKyAgICBCT09MIGZpcnN0ID0gWUVTOworICAgIGZvciAoVGVzdENh
bGxBcmd1bWVudCogYXJndW1lbnQgaW4gc2VsZi5hcmd1bWVudHMpIHsKKyAgICAgICAgaWYgKCFm
aXJzdCkKKyAgICAgICAgICAgIFtzdHJpbmcgYXBwZW5kRm9ybWF0OkAiLCAlQCAlQCIsIFdITFNM
VHlwZVN0cmluZyhzZWxmLnJldHVyblR5cGUpLCBhcmd1bWVudC53aGxzbFNvdXJjZV07CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIFtzdHJpbmcgYXBwZW5kRm9ybWF0OkAiJUAgJUAiLCBXSExT
TFR5cGVTdHJpbmcoc2VsZi5yZXR1cm5UeXBlKSwgYXJndW1lbnQud2hsc2xTb3VyY2VdOworICAg
ICAgICBmaXJzdCA9IE5POworICAgIH0KKyAgICBbc3RyaW5nIGFwcGVuZFN0cmluZzpAIikiXTsK
KyAgICByZXR1cm4gc3RyaW5nOworfQorCistIChOU1N0cmluZyopbWV0YWxGcmFnbWVudFNoYWRl
clNvdXJjZUZvckNhbGxUb01ldGFsRnVuY3Rpb246KE5TU3RyaW5nICopY29tcGlsZWROYW1lT2ZG
dW5jdGlvbgoreworICAgIE5TU3RyaW5nKiByZXR1cm5UeXBlU3RyaW5nOworICAgIHN3aXRjaCAo
c2VsZi5yZXR1cm5UeXBlKSB7CisgICAgY2FzZSBXSExTTFR5cGVCb29sOgorICAgIGNhc2UgV0hM
U0xUeXBlVWNoYXI6CisgICAgY2FzZSBXSExTTFR5cGVVc2hvcnQ6CisgICAgY2FzZSBXSExTTFR5
cGVVaW50OgorICAgICAgICByZXR1cm5UeXBlU3RyaW5nID0gQCJGcmFnbWVudE91dHB1dFVpbnQi
OworICAgICAgICBicmVhazsKKyAgICBjYXNlIFdITFNMVHlwZVNob3J0OgorICAgIGNhc2UgV0hM
U0xUeXBlSW50OgorICAgICAgICByZXR1cm5UeXBlU3RyaW5nID0gQCJGcmFnbWVudE91dHB1dElu
dCI7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgV0hMU0xUeXBlSGFsZjoKKyAgICBjYXNlIFdI
TFNMVHlwZUZsb2F0OgorICAgICAgICByZXR1cm5UeXBlU3RyaW5nID0gQCJGcmFnbWVudE91dHB1
dEZsb2F0IjsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIE5TTXV0YWJsZVN0cmluZyogc3Ry
aW5nID0gW05TTXV0YWJsZVN0cmluZyBuZXddOworICAgIFtzdHJpbmcgYXBwZW5kRm9ybWF0OkAi
ZnJhZ21lbnQgJUAgJUAoVmVydGV4T3V0cHV0IHN0YWdlSW4gW1tzdGFnZV9pbl1dKVxuIiwgcmV0
dXJuVHlwZVN0cmluZywgc2VsZi5mcmFnbWVudFNoYWRlck5hbWVdOworICAgIFtzdHJpbmcgYXBw
ZW5kU3RyaW5nOkAie1xuIl07CisgICAgW3N0cmluZyBhcHBlbmRGb3JtYXQ6QCIgICAgJUAgZnJh
Z21lbnRPdXRwdXQ7XG4iLCByZXR1cm5UeXBlU3RyaW5nXTsKKworICAgIE5TU3RyaW5nICogY2Fs
bCA9IFtzZWxmIGNhbGxTdHJpbmc6Y29tcGlsZWROYW1lT2ZGdW5jdGlvbl07CisKKyAgICBzd2l0
Y2ggKHNlbGYucmV0dXJuVHlwZSkgeworICAgIGNhc2UgV0hMU0xUeXBlQm9vbDoKKyAgICBjYXNl
IFdITFNMVHlwZVVjaGFyOgorICAgIGNhc2UgV0hMU0xUeXBlVXNob3J0OgorICAgIGNhc2UgV0hM
U0xUeXBlVWludDoKKyAgICAgICAgW3N0cmluZyBhcHBlbmRGb3JtYXQ6QCIgICAgZnJhZ21lbnRP
dXRwdXQucmVzdWx0ID0gdWludDMyX3QoJUApO1xuIiwgY2FsbF07CisgICAgICAgIGJyZWFrOwor
ICAgIGNhc2UgV0hMU0xUeXBlU2hvcnQ6CisgICAgY2FzZSBXSExTTFR5cGVJbnQ6CisgICAgICAg
IFtzdHJpbmcgYXBwZW5kRm9ybWF0OkAiICAgIGZyYWdtZW50T3V0cHV0LnJlc3VsdCA9IGludDMy
X3QoJUApO1xuIiwgY2FsbF07CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgV0hMU0xUeXBlSGFs
ZjoKKyAgICBjYXNlIFdITFNMVHlwZUZsb2F0OgorICAgICAgICBbc3RyaW5nIGFwcGVuZEZvcm1h
dDpAIiAgICBmcmFnbWVudE91dHB1dC5yZXN1bHQgPSBmbG9hdCglQCk7XG4iLCBjYWxsXTsKKyAg
ICAgICAgYnJlYWs7CisgICAgfQorCisgICAgW3N0cmluZyBhcHBlbmRTdHJpbmc6QCIgICAgcmV0
dXJuIGZyYWdtZW50T3V0cHV0O1xuIl07CisgICAgW3N0cmluZyBhcHBlbmRTdHJpbmc6QCJ9XG4i
XTsKKworICAgIHJldHVybiBzdHJpbmc7Cit9CisKK0BlbmQKZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdEZhbWlseS5o
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9U
ZXN0RmFtaWx5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzQxZWI5ZDIwNDEyZGRkNDhmY2I1NDFhZGUxMjM4YWJi
NzQwNzUwYQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdEZhbWlseS5oCQpAQCAtMCwwICsxLDU0IEBACisv
KgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
YGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCA8Rm91
bmRhdGlvbi9Gb3VuZGF0aW9uLmg+CisjaW1wb3J0ICJUZXN0Q2FsbEFyZ3VtZW50LmgiCisjaW1w
b3J0ICJUZXN0RGVzY3JpcHRpb24uaCIKKworTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KKworQGlu
dGVyZmFjZSBUZXN0RmFtaWx5IDogTlNPYmplY3QKKworLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRo
TmFtZTooTlNTdHJpbmcqKW5hbWUgc291cmNlOihOU1N0cmluZyopc291cmNlOworCitAcHJvcGVy
dHkgKHJlYWRvbmx5KSBOU1N0cmluZyogbmFtZTsKK0Bwcm9wZXJ0eSAocmVhZG9ubHkpIE5TU3Ry
aW5nKiB3aGxzbFNvdXJjZTsKK0Bwcm9wZXJ0eSAocmVhZG9ubHkpIE5TVUludGVnZXIgdG90YWxU
ZXN0Q2FzZUNvdW50OworCistICh2b2lkKWFkZFRlc3REZXNjcmlwdGlvbjooVGVzdERlc2NyaXB0
aW9uKil0ZXN0RGVzY3JpcHRpb247CistIChOU0FycmF5PFRlc3REZXNjcmlwdGlvbio+Kil0ZXN0
c0ZvclJldHVyblR5cGU6KFdITFNMVHlwZSl0eXBlOworCisrIChOU1N0cmluZyopc2hhcmVkTWV0
YWxTb3VyY2U7CistIChOU1N0cmluZyopbWV0YWxTb3VyY2VGb3JDYWxsaW5nRnVuY3Rpb25zV2l0
aENvbXBpbGVkTmFtZXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyosIE5TU3RyaW5nKj4qKWNvbXBp
bGVkTmFtZXM7CisKKysgKE5TQXJyYXk8VGVzdEZhbWlseSo+KilhbGxUZXN0czsKKworLSAoTlNB
cnJheTxUZXN0RGVzY3JpcHRpb24qPiopaW50ZWdlclRlc3RzOworLSAoTlNBcnJheTxUZXN0RGVz
Y3JpcHRpb24qPiopdW5zaWduZWRJbnRlZ2VyVGVzdHM7CistIChOU0FycmF5PFRlc3REZXNjcmlw
dGlvbio+KilmbG9hdFRlc3RzOworCitAZW5kCisKK05TX0FTU1VNRV9OT05OVUxMX0VORApkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMv
Q29yZS9UZXN0RmFtaWx5Lm0gYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9X
SExTTCBUZXN0cy9Db3JlL1Rlc3RGYW1pbHkubQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYjU5MmQyYTkxYmMxYWU4
ZDcyZTY5NDk2MTRkMzVmNTBmZDA1N2U4Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9UZXN0RmFtaWx5Lm0JCkBA
IC0wLDAgKzEsMjU1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2ltcG9ydCAiVGVzdEZhbWlseS5oIgorCitAaW1wb3J0IEphdmFTY3JpcHRDb3JlOwor
CitAaW50ZXJmYWNlIFRlc3RGYW1pbHkgKCkKKworQHByb3BlcnR5IE5TU3RyaW5nKiBuYW1lOwor
QHByb3BlcnR5IE5TU3RyaW5nKiB3aGxzbFNvdXJjZTsKK0Bwcm9wZXJ0eSBOU1VJbnRlZ2VyIHRv
dGFsVGVzdENhc2VDb3VudDsKKworQHByb3BlcnR5IE5TTXV0YWJsZURpY3Rpb25hcnk8TlNOdW1i
ZXIqLCBOU011dGFibGVBcnJheTxUZXN0RGVzY3JpcHRpb24qPio+KiB0ZXN0czsKKworQGVuZAor
CitAaW1wbGVtZW50YXRpb24gVGVzdEZhbWlseQorCistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhO
YW1lOihOU1N0cmluZyAqKW5hbWUgc291cmNlOihOU1N0cmluZyAqKXNvdXJjZQoreworICAgIGlm
IChzZWxmID0gW3N1cGVyIGluaXRdKSB7CisgICAgICAgIHNlbGYubmFtZSA9IG5hbWU7CisgICAg
ICAgIHNlbGYud2hsc2xTb3VyY2UgPSBzb3VyY2U7CisgICAgICAgIHNlbGYudGVzdHMgPSBbTlNN
dXRhYmxlRGljdGlvbmFyeSBuZXddOworICAgICAgICBzZWxmLnRlc3RzW0AoV0hMU0xUeXBlQm9v
bCldID0gW05TTXV0YWJsZUFycmF5IG5ld107CisgICAgICAgIHNlbGYudGVzdHNbQChXSExTTFR5
cGVVY2hhcildID0gW05TTXV0YWJsZUFycmF5IG5ld107CisgICAgICAgIHNlbGYudGVzdHNbQChX
SExTTFR5cGVTaG9ydCldID0gW05TTXV0YWJsZUFycmF5IG5ld107CisgICAgICAgIHNlbGYudGVz
dHNbQChXSExTTFR5cGVVc2hvcnQpXSA9IFtOU011dGFibGVBcnJheSBuZXddOworICAgICAgICBz
ZWxmLnRlc3RzW0AoV0hMU0xUeXBlVWludCldID0gW05TTXV0YWJsZUFycmF5IG5ld107CisgICAg
ICAgIHNlbGYudGVzdHNbQChXSExTTFR5cGVJbnQpXSA9IFtOU011dGFibGVBcnJheSBuZXddOwor
ICAgICAgICBzZWxmLnRlc3RzW0AoV0hMU0xUeXBlRmxvYXQpXSA9IFtOU011dGFibGVBcnJheSBu
ZXddOworICAgICAgICBzZWxmLnRlc3RzW0AoV0hMU0xUeXBlSGFsZildID0gW05TTXV0YWJsZUFy
cmF5IG5ld107CisgICAgfQorICAgIHJldHVybiBzZWxmOworfQorCistICh2b2lkKWFkZFRlc3RE
ZXNjcmlwdGlvbjooVGVzdERlc2NyaXB0aW9uICopdGVzdERlc2NyaXB0aW9uCit7CisgICAgW3Nl
bGYudGVzdHNbQCh0ZXN0RGVzY3JpcHRpb24ucmV0dXJuVHlwZSldIGFkZE9iamVjdDp0ZXN0RGVz
Y3JpcHRpb25dOworICAgIHRlc3REZXNjcmlwdGlvbi50ZXN0RmFtaWx5ID0gc2VsZjsKKyAgICB0
ZXN0RGVzY3JpcHRpb24uZnJhZ21lbnRTaGFkZXJOYW1lID0gW05TU3RyaW5nIHN0cmluZ1dpdGhG
b3JtYXQ6QCJmcmFnbWVudF8lQF8lbGQiLCBzZWxmLm5hbWUsIHNlbGYudG90YWxUZXN0Q2FzZUNv
dW50KytdOworfQorCistIChOU0FycmF5PFRlc3REZXNjcmlwdGlvbio+Kil0ZXN0c0ZvclJldHVy
blR5cGU6KFdITFNMVHlwZSl0eXBlCit7CisgICAgcmV0dXJuIHNlbGYudGVzdHNbQCh0eXBlKV07
Cit9CisKKy0gKE5TQXJyYXk8VGVzdERlc2NyaXB0aW9uKj4qKWludGVnZXJUZXN0cworeworICAg
IE5TTXV0YWJsZUFycmF5PFRlc3REZXNjcmlwdGlvbio+KiByZXN1bHQgPSBbTlNNdXRhYmxlQXJy
YXkgbmV3XTsKKyAgICBbcmVzdWx0IGFkZE9iamVjdHNGcm9tQXJyYXk6W3NlbGYgdGVzdHNGb3JS
ZXR1cm5UeXBlOldITFNMVHlwZVNob3J0XV07CisgICAgW3Jlc3VsdCBhZGRPYmplY3RzRnJvbUFy
cmF5OltzZWxmIHRlc3RzRm9yUmV0dXJuVHlwZTpXSExTTFR5cGVJbnRdXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorCistIChOU0FycmF5PFRlc3REZXNjcmlwdGlvbio+Kil1bnNpZ25lZEludGVn
ZXJUZXN0cworeworICAgIE5TTXV0YWJsZUFycmF5PFRlc3REZXNjcmlwdGlvbio+KiByZXN1bHQg
PSBbTlNNdXRhYmxlQXJyYXkgbmV3XTsKKyAgICBbcmVzdWx0IGFkZE9iamVjdHNGcm9tQXJyYXk6
W3NlbGYgdGVzdHNGb3JSZXR1cm5UeXBlOldITFNMVHlwZUJvb2xdXTsKKyAgICBbcmVzdWx0IGFk
ZE9iamVjdHNGcm9tQXJyYXk6W3NlbGYgdGVzdHNGb3JSZXR1cm5UeXBlOldITFNMVHlwZVVjaGFy
XV07CisgICAgW3Jlc3VsdCBhZGRPYmplY3RzRnJvbUFycmF5OltzZWxmIHRlc3RzRm9yUmV0dXJu
VHlwZTpXSExTTFR5cGVVc2hvcnRdXTsKKyAgICBbcmVzdWx0IGFkZE9iamVjdHNGcm9tQXJyYXk6
W3NlbGYgdGVzdHNGb3JSZXR1cm5UeXBlOldITFNMVHlwZVVpbnRdXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorCistIChOU0FycmF5PFRlc3REZXNjcmlwdGlvbio+KilmbG9hdFRlc3RzCit7Cisg
ICAgTlNNdXRhYmxlQXJyYXk8VGVzdERlc2NyaXB0aW9uKj4qIHJlc3VsdCA9IFtOU011dGFibGVB
cnJheSBuZXddOworICAgIFtyZXN1bHQgYWRkT2JqZWN0c0Zyb21BcnJheTpbc2VsZiB0ZXN0c0Zv
clJldHVyblR5cGU6V0hMU0xUeXBlSGFsZl1dOworICAgIFtyZXN1bHQgYWRkT2JqZWN0c0Zyb21B
cnJheTpbc2VsZiB0ZXN0c0ZvclJldHVyblR5cGU6V0hMU0xUeXBlRmxvYXRdXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorCisrIChOU1N0cmluZyopc2hhcmVkTWV0YWxTb3VyY2UKK3sKKyAgICBz
dGF0aWMgTlNTdHJpbmcqIHJlc3VsdDsKKyAgICBzdGF0aWMgZGlzcGF0Y2hfb25jZV90IG9uY2VU
b2tlbjsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlVG9rZW4sIF57CisgICAgICAgIE5TU3RyaW5n
KiBwYXRoID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBwYXRoRm9yUmVzb3VyY2U6QCJfU2hhcmVk
TWV0YWwiIG9mVHlwZTpAInR4dCJdOworICAgICAgICByZXN1bHQgPSBbTlNTdHJpbmcgc3RyaW5n
V2l0aENvbnRlbnRzT2ZGaWxlOnBhdGggZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgZXJy
b3I6bmlsXTsKKyAgICB9KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCistIChOU1N0cmluZyop
bWV0YWxTb3VyY2VGb3JDYWxsaW5nRnVuY3Rpb25zV2l0aENvbXBpbGVkTmFtZXM6KE5TRGljdGlv
bmFyeTxOU1N0cmluZyAqLCBOU1N0cmluZyAqPiAqKWNvbXBpbGVkTmFtZXMKK3sKKyAgICBOU011
dGFibGVTdHJpbmcqIHNvdXJjZSA9IFtOU011dGFibGVTdHJpbmcgbmV3XTsKKworICAgIFtzZWxm
LnRlc3RzIGVudW1lcmF0ZUtleXNBbmRPYmplY3RzVXNpbmdCbG9jazpeKE5TTnVtYmVyICogX05v
bm51bGwgdHlwZSwgTlNNdXRhYmxlQXJyYXk8VGVzdERlc2NyaXB0aW9uICo+ICogX05vbm51bGwg
dGVzdHMsIEJPT0wgKiBfTm9ubnVsbCBzdG9wKSB7CisgICAgICAgIGZvciAoVGVzdERlc2NyaXB0
aW9uKiB0ZXN0RGVzY3JpcHRpb24gaW4gdGVzdHMpCisgICAgICAgICAgICBbc291cmNlIGFwcGVu
ZEZvcm1hdDpAIiVAXG4iLCBbdGVzdERlc2NyaXB0aW9uIG1ldGFsRnJhZ21lbnRTaGFkZXJTb3Vy
Y2VGb3JDYWxsVG9NZXRhbEZ1bmN0aW9uOmNvbXBpbGVkTmFtZXNbdGVzdERlc2NyaXB0aW9uLmZ1
bmN0aW9uTmFtZV1dXTsKKyAgICB9XTsKKworICAgIHJldHVybiBzb3VyY2U7Cit9CisKKysgKE5T
QXJyYXk8VGVzdEZhbWlseSo+KilhbGxUZXN0cworeworICAgIEpTQ29udGV4dCogY29tcGlsZXJD
b250ZXh0ID0gW0pTQ29udGV4dCBuZXddOworICAgIC8vIFRoZSB0ZXN0IHN1aXRlIGRvZXNuJ3Qg
YWN0dWFsbHkgbmVlZCB0byBsb2FkIGFueSBvZiBpdHMgZGVwZW5kZW5jaWVzIGluIG9yZGVyIHRv
IGdlbmVyYXRlIHRoZSBkYXRhIG5lZWRlZCBmb3IgdGVzdCBleGVjdXRpb24uCisgICAgY29tcGls
ZXJDb250ZXh0W0AibG9hZCJdID0gXnZvaWQoTlNTdHJpbmcqIGZpbGVQYXRoKSB7IH07CisgICAg
Ly8gU29tZSBvZiB0aGUgdGVzdHMgZGlyZWN0bHkgY2FsbCBwcmVwYXJlOyBidXQgdGhlc2UgdGVz
dHMgY2FuIGJlIGlnbm9yZWQgYmVjYXVzZSB0aGV5IGFyZSB0ZXN0aW5nIGFzcGVjdHMgb2YgdGhl
IGludGVycHJldGVyLgorICAgIGNvbXBpbGVyQ29udGV4dFtAInByZXBhcmUiXSA9IF5pZChOU1N0
cmluZyogZmlsZVBhdGgsIE5TTnVtYmVyKiBsaW5lTnVtYmVyLCBOU1N0cmluZyogc3JjLCBOU051
bWJlciogZW5hYmxlSW5saW5pbmcpIAorICAgIHsKKyAgICAgICAgcmV0dXJuIG5pbDsKKyAgICB9
OworCisgICAgTlNTdHJpbmcqIHRlc3RGaWxlID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDb250ZW50
c09mRmlsZTpbW05TQnVuZGxlIG1haW5CdW5kbGVdIHBhdGhGb3JSZXNvdXJjZTpAIlRlc3QiIG9m
VHlwZTpAImpzIl0gZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgZXJyb3I6bmlsXTsKKyAg
ICBbY29tcGlsZXJDb250ZXh0IGV2YWx1YXRlU2NyaXB0OnRlc3RGaWxlXTsKKworICAgIF9fYmxv
Y2sgTlNTdHJpbmcgKmN1cnJlbnRUZXN0TmFtZSA9IG5pbDsKKyAgICBfX2Jsb2NrIEJPT0wgaW5j
bHVkZVRlc3QgPSBZRVM7CisKKyAgICBOU011dGFibGVBcnJheTxUZXN0RmFtaWx5Kj4qIHRlc3RG
YW1pbGllcyA9IFtOU011dGFibGVBcnJheSBuZXddOworCisgICAgLy8gU2VlIHRoZSBib3R0b20g
b2YgVGVzdC5qcworICAgIGNvbXBpbGVyQ29udGV4dFtAInJ1bm5pbmdJbkNvY29hSG9zdCJdID0g
W0pTVmFsdWUgdmFsdWVXaXRoQm9vbDpZRVMgaW5Db250ZXh0OmNvbXBpbGVyQ29udGV4dF07CisK
KyAgICBjb21waWxlckNvbnRleHRbQCJkb1ByZXAiXSA9IF5UZXN0RmFtaWx5KihOU1N0cmluZyog
Y29kZSkKKyAgICB7CisgICAgICAgIFRlc3RGYW1pbHkqIGZhbWlseSA9IFtbVGVzdEZhbWlseSBh
bGxvY10gaW5pdFdpdGhOYW1lOmN1cnJlbnRUZXN0TmFtZSBzb3VyY2U6Y29kZV07CisgICAgICAg
IFt0ZXN0RmFtaWxpZXMgYWRkT2JqZWN0OmZhbWlseV07CisgICAgICAgIGluY2x1ZGVUZXN0ID0g
WUVTOworICAgICAgICByZXR1cm4gZmFtaWx5OworICAgIH07CisKKyAgICBjb21waWxlckNvbnRl
eHQuZXhjZXB0aW9uSGFuZGxlciA9IF4oSlNDb250ZXh0ICpjb250ZXh0LCBKU1ZhbHVlICpleGNl
cHRpb24pIHsKKyAgICAgICAgaW5jbHVkZVRlc3QgPSBOTzsKKyAgICB9OworICAgIC8vIEZJWE1F
OiBJbiBsaW5lIHdpdGggVGVzdC5qcywgdGhlc2Ugc2hvdWxkIHJhaXNlIHNvbWUga2luZCBvZiBl
cnJvciBpZiB0aGUgdmFsdWUgY2Fubm90IGJlIGNhc3Qgc2FmZWx5LgorICAgIC8vIEhvd2V2ZXIs
IHRoZSBjb252ZXJzaW9uIHRvIGFuIE5TTnVtYmVyIG1heSBoYXZlIGFscmVhZHkgbG9zdCB0aGUg
cHJlY2lzaW9uLgorCisgICAgY29tcGlsZXJDb250ZXh0W0AibWFrZUludCJdID0gXlRlc3RDYWxs
QXJndW1lbnQqKFRlc3RGYW1pbHkqIHByb2dyYW0sIE5TTnVtYmVyKiBudW1iZXIpCisgICAgewor
ICAgICAgICByZXR1cm4gW1tUZXN0Q2FsbEFyZ3VtZW50IGFsbG9jXSBpbml0V2l0aFZhbHVlOm51
bWJlciB0eXBlOldITFNMVHlwZUludF07CisgICAgfTsKKworICAgIGNvbXBpbGVyQ29udGV4dFtA
Im1ha2VVaW50Il0gPSBeVGVzdENhbGxBcmd1bWVudCooVGVzdEZhbWlseSogcHJvZ3JhbSwgTlNO
dW1iZXIqIG51bWJlcikKKyAgICB7CisgICAgICAgIHJldHVybiBbW1Rlc3RDYWxsQXJndW1lbnQg
YWxsb2NdIGluaXRXaXRoVmFsdWU6bnVtYmVyIHR5cGU6V0hMU0xUeXBlVWludF07CisgICAgfTsK
KworICAgIGNvbXBpbGVyQ29udGV4dFtAIm1ha2VVY2hhciJdID0gXlRlc3RDYWxsQXJndW1lbnQq
KFRlc3RGYW1pbHkqIHByb2dyYW0sIE5TTnVtYmVyKiBudW1iZXIpCisgICAgeworICAgICAgICBy
ZXR1cm4gW1tUZXN0Q2FsbEFyZ3VtZW50IGFsbG9jXSBpbml0V2l0aFZhbHVlOm51bWJlciB0eXBl
OldITFNMVHlwZVVjaGFyXTsKKyAgICB9OworCisgICAgY29tcGlsZXJDb250ZXh0W0AibWFrZUJv
b2wiXSA9IF5UZXN0Q2FsbEFyZ3VtZW50KihUZXN0RmFtaWx5KiBwcm9ncmFtLCBOU051bWJlciog
bnVtYmVyKQorICAgIHsKKyAgICAgICAgcmV0dXJuIFtbVGVzdENhbGxBcmd1bWVudCBhbGxvY10g
aW5pdFdpdGhWYWx1ZTpudW1iZXIgdHlwZTpXSExTTFR5cGVCb29sXTsKKyAgICB9OworCisgICAg
Y29tcGlsZXJDb250ZXh0W0AibWFrZUZsb2F0Il0gPSBeVGVzdENhbGxBcmd1bWVudCooVGVzdEZh
bWlseSogcHJvZ3JhbSwgTlNOdW1iZXIqIG51bWJlcikKKyAgICB7CisgICAgICAgIHJldHVybiBb
W1Rlc3RDYWxsQXJndW1lbnQgYWxsb2NdIGluaXRXaXRoVmFsdWU6bnVtYmVyIHR5cGU6V0hMU0xU
eXBlRmxvYXRdOworICAgIH07CisKKyAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgaGF2ZSB0aGUg
c2FtZSBsb2dpYyBhcyB0aGUgaW1wbGVtZW50YXRpb24gaW4gVGVzdHMuanMKKyAgICBjb21waWxl
ckNvbnRleHRbQCJtYWtlQ2FzdGVkRmxvYXQiXSA9IF5UZXN0Q2FsbEFyZ3VtZW50KihUZXN0RmFt
aWx5KiBwcm9ncmFtLCBOU051bWJlciogbnVtYmVyKQorICAgIHsKKyAgICAgICAgcmV0dXJuIFtb
VGVzdENhbGxBcmd1bWVudCBhbGxvY10gaW5pdFdpdGhWYWx1ZTpudW1iZXIgdHlwZTpXSExTTFR5
cGVGbG9hdF07CisgICAgfTsKKworICAgIGNvbXBpbGVyQ29udGV4dFtAIm1ha2VIYWxmIl0gPSBe
VGVzdENhbGxBcmd1bWVudCooVGVzdEZhbWlseSogcHJvZ3JhbSwgTlNOdW1iZXIqIG51bWJlcikK
KyAgICB7CisgICAgICAgIHJldHVybiBbW1Rlc3RDYWxsQXJndW1lbnQgYWxsb2NdIGluaXRXaXRo
VmFsdWU6bnVtYmVyIHR5cGU6V0hMU0xUeXBlSGFsZl07CisgICAgfTsKKworICAgIGNvbXBpbGVy
Q29udGV4dFtAImNhbGxGdW5jdGlvbiJdID0gXlRlc3REZXNjcmlwdGlvbiooVGVzdEZhbWlseSog
cHJvZ3JhbSwgTlNTdHJpbmcqIGZ1bmN0aW9uTmFtZSwgTlNBcnJheSogYXJncykKKyAgICB7Cisg
ICAgICAgIHJldHVybiBbW1Rlc3REZXNjcmlwdGlvbiBhbGxvY10gaW5pdFdpdGhGdW5jdGlvbk5h
bWU6ZnVuY3Rpb25OYW1lIGFyZ3VtZW50czphcmdzXTsKKyAgICB9OworCisgICAgdm9pZCheYWRk
VGVzdCkoVGVzdEZhbWlseSosIFRlc3REZXNjcmlwdGlvbiosIE5TTnVtYmVyKiwgV0hMU0xUeXBl
KSA9IF52b2lkKFRlc3RGYW1pbHkqIHByb2dyYW0sIFRlc3REZXNjcmlwdGlvbiogdGVzdERlc2Ms
IE5TTnVtYmVyKiBleHBlY3RhdGlvbiwgV0hMU0xUeXBlIHR5cGUpCisgICAgeworICAgICAgICBp
ZiAoaW5jbHVkZVRlc3QpIHsKKyAgICAgICAgICAgIHRlc3REZXNjLnJldHVyblR5cGUgPSB0eXBl
OworICAgICAgICAgICAgdGVzdERlc2MuZXhwZWN0YXRpb24gPSBleHBlY3RhdGlvbjsKKyAgICAg
ICAgICAgIFtwcm9ncmFtIGFkZFRlc3REZXNjcmlwdGlvbjp0ZXN0RGVzY107CisgICAgICAgIH0K
KyAgICB9OworCisgICAgY29tcGlsZXJDb250ZXh0W0AiY2hlY2tJbnQiXSA9IF52b2lkKFRlc3RG
YW1pbHkqIHByb2dyYW0sIFRlc3REZXNjcmlwdGlvbiogdGVzdERlc2MsIE5TTnVtYmVyKiBleHBl
Y3RhdGlvbikKKyAgICB7CisgICAgICAgIGFkZFRlc3QocHJvZ3JhbSwgdGVzdERlc2MsIGV4cGVj
dGF0aW9uLCBXSExTTFR5cGVJbnQpOworICAgIH07CisKKyAgICBjb21waWxlckNvbnRleHRbQCJj
aGVja1VpbnQiXSA9IF52b2lkKFRlc3RGYW1pbHkqIHByb2dyYW0sIFRlc3REZXNjcmlwdGlvbiog
dGVzdERlc2MsIE5TTnVtYmVyKiBleHBlY3RhdGlvbikKKyAgICB7CisgICAgICAgIGFkZFRlc3Qo
cHJvZ3JhbSwgdGVzdERlc2MsIGV4cGVjdGF0aW9uLCBXSExTTFR5cGVVaW50KTsKKyAgICB9Owor
CisgICAgY29tcGlsZXJDb250ZXh0W0AiY2hlY2tIYWxmIl0gPSBedm9pZChUZXN0RmFtaWx5KiBw
cm9ncmFtLCBUZXN0RGVzY3JpcHRpb24qIHRlc3REZXNjLCBOU051bWJlciogZXhwZWN0YXRpb24p
CisgICAgeworICAgICAgICBhZGRUZXN0KHByb2dyYW0sIHRlc3REZXNjLCBleHBlY3RhdGlvbiwg
V0hMU0xUeXBlSGFsZik7CisgICAgfTsKKworICAgIGNvbXBpbGVyQ29udGV4dFtAImNoZWNrRmxv
YXQiXSA9IF52b2lkKFRlc3RGYW1pbHkqIHByb2dyYW0sIFRlc3REZXNjcmlwdGlvbiogdGVzdERl
c2MsIE5TTnVtYmVyKiBleHBlY3RhdGlvbikKKyAgICB7CisgICAgICAgIGFkZFRlc3QocHJvZ3Jh
bSwgdGVzdERlc2MsIGV4cGVjdGF0aW9uLCBXSExTTFR5cGVGbG9hdCk7CisgICAgfTsKKworICAg
IGNvbXBpbGVyQ29udGV4dFtAImNoZWNrQm9vbCJdID0gXnZvaWQoVGVzdEZhbWlseSogcHJvZ3Jh
bSwgVGVzdERlc2NyaXB0aW9uKiB0ZXN0RGVzYywgTlNOdW1iZXIqIGV4cGVjdGF0aW9uKQorICAg
IHsKKyAgICAgICAgYWRkVGVzdChwcm9ncmFtLCB0ZXN0RGVzYywgZXhwZWN0YXRpb24sIFdITFNM
VHlwZUJvb2wpOworICAgIH07CisKKyAgICBjb21waWxlckNvbnRleHRbQCJjaGVja1VjaGFyIl0g
PSBedm9pZChUZXN0RmFtaWx5KiBwcm9ncmFtLCBUZXN0RGVzY3JpcHRpb24qIHRlc3REZXNjLCBO
U051bWJlciogZXhwZWN0YXRpb24pCisgICAgeworICAgICAgICBhZGRUZXN0KHByb2dyYW0sIHRl
c3REZXNjLCBleHBlY3RhdGlvbiwgV0hMU0xUeXBlVWNoYXIpOworICAgIH07CisKKyAgICAvLyBE
ZWxpYmVyYXRlbHkgbm90IGluY2x1ZGVkCisgICAgY29tcGlsZXJDb250ZXh0W0AiY2hlY2tFbnVt
Il0gPSBedm9pZChUZXN0RmFtaWx5KiBwcm9ncmFtLCBUZXN0RGVzY3JpcHRpb24qIHRlc3REZXNj
LCBOU051bWJlciogZXhwZWN0YXRpb24pIHsgfTsKKyAgICBjb21waWxlckNvbnRleHRbQCJjaGVj
a0Zsb2F0NCJdID0gXnZvaWQoVGVzdEZhbWlseSogcHJvZ3JhbSwgVGVzdERlc2NyaXB0aW9uKiB0
ZXN0RGVzYywgTlNOdW1iZXIqIGV4cGVjdGF0aW9uKSB7IH07CisgICAgY29tcGlsZXJDb250ZXh0
W0AiY2hlY2tGYWlsIl0gPSBedm9pZChpZCBjYWxsYmFjaywgaWQgZXJyb3JDYWxsYmFjaykgeyB9
OworICAgIGNvbXBpbGVyQ29udGV4dFtAImNoZWNrTGV4ZXJUb2tlbiJdID0gXnZvaWQoTlNTdHJp
bmcqIHRva2VuLCBOU051bWJlciogaWQsIE5TU3RyaW5nKiBuYW1lLCBOU1N0cmluZyogdG9rZW5U
ZXh0KSB7IH07CisKKyAgICBKU1ZhbHVlKiB0ZXN0cyA9IFtjb21waWxlckNvbnRleHQgZXZhbHVh
dGVTY3JpcHQ6QCJ0ZXN0cyJdOworCisgICAgTlNBcnJheTxOU1N0cmluZyo+KiB0ZXN0TmFtZXMg
PSBbdGVzdHMudG9EaWN0aW9uYXJ5LmFsbEtleXMgc29ydGVkQXJyYXlVc2luZ1NlbGVjdG9yOkBz
ZWxlY3Rvcihsb2NhbGl6ZWRDYXNlSW5zZW5zaXRpdmVDb21wYXJlOildOworCisgICAgZm9yIChj
dXJyZW50VGVzdE5hbWUgaW4gdGVzdE5hbWVzKSB7CisgICAgICAgIEpTVmFsdWUqIGZ1bmMgPSBb
dGVzdHMgb2JqZWN0Rm9yS2V5ZWRTdWJzY3JpcHQ6Y3VycmVudFRlc3ROYW1lXTsKKyAgICAgICAg
W2Z1bmMgY2FsbFdpdGhBcmd1bWVudHM6QFtdXTsKKyAgICB9CisKKyAgICByZXR1cm4gdGVzdEZh
bWlsaWVzOworfQorCitAZW5kCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1Rlc3RGYW1pbHlSdW5uZXIuaCBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdEZhbWlseVJ1
bm5lci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQ2NWJiMjAxM2IxMDYzOTBiNGZhODRmZTcxMmViODhiOWZhMjVm
MjAKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRh
bC9XSExTTCBUZXN0cy9Db3JlL1Rlc3RGYW1pbHlSdW5uZXIuaAkKQEAgLTAsMCArMSw0MyBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPEZv
dW5kYXRpb24vRm91bmRhdGlvbi5oPgorI2ltcG9ydCAiVGVzdEZhbWlseS5oIgorCitOU19BU1NV
TUVfTk9OTlVMTF9CRUdJTgorCitAaW50ZXJmYWNlIFRlc3RGYW1pbHlSdW5uZXIgOiBOU09iamVj
dAorCistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhUZXN0RmFtaWx5OihUZXN0RmFtaWx5Kil0ZXN0
RmFtaWx5OworCitAcHJvcGVydHkgKHJlYWRvbmx5KSBUZXN0RmFtaWx5KiB0ZXN0RmFtaWx5Owor
CistIChCT09MKWV4ZWN1dGVBbGxUZXN0czsKKworKyAoTlNVSW50ZWdlcilleGVjdXRpb25Db3Vu
dDsKKworQGVuZAorCitOU19BU1NVTUVfTk9OTlVMTF9FTkQKZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdEZhbWlseVJ1
bm5lci5tIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMv
Q29yZS9UZXN0RmFtaWx5UnVubmVyLm0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTE3ZTJiMWQwZTIzODRiMzFhNmMy
OTE5ZTRjNDc4NDRjODU0ZjM1YwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVGVzdEZhbWlseVJ1bm5lci5tCQpA
QCAtMCwwICsxLDE5MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
KyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgIlRlc3RGYW1pbHlSdW5uZXIuaCIKKworI2ltcG9ydCAiQ29tcGlsZXIu
aCIKKyNpbXBvcnQgIk9mZnNjcmVlblJlbmRlcmVyLmgiCisKK3N0YXRpYyBOU1VJbnRlZ2VyIGV4
ZWN1dGlvbkNvdW50ID0gMDsKKworQGludGVyZmFjZSBUZXN0RmFtaWx5UnVubmVyICgpCisKK0Bw
cm9wZXJ0eSBUZXN0RmFtaWx5KiB0ZXN0RmFtaWx5OworCitAZW5kCisKK0BpbXBsZW1lbnRhdGlv
biBUZXN0RmFtaWx5UnVubmVyCisKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aFRlc3RGYW1pbHk6
KFRlc3RGYW1pbHkgKil0ZXN0RmFtaWx5Cit7CisgICAgaWYgKHNlbGYgPSBbc3VwZXIgaW5pdF0p
CisgICAgICAgIHNlbGYudGVzdEZhbWlseSA9IHRlc3RGYW1pbHk7CisgICAgcmV0dXJuIHNlbGY7
Cit9CisKKysgKGlkPE1UTERldmljZT4pZGVmYXVsdFRlc3RpbmdEZXZpY2UKK3sKKyAgICBOU0Fy
cmF5PGlkPE1UTERldmljZT4+KiBhbGxEZXZpY2VzID0gTVRMQ29weUFsbERldmljZXMoKTsKKyAg
ICBmb3IgKGlkPE1UTERldmljZT4gZGV2aWNlIGluIGFsbERldmljZXMpIHsKKyAgICAgICAgaWYg
KGRldmljZS5pc0xvd1Bvd2VyKQorICAgICAgICAgICAgcmV0dXJuIGRldmljZTsKKyAgICB9Cisg
ICAgcmV0dXJuIE1UTENyZWF0ZVN5c3RlbURlZmF1bHREZXZpY2UoKTsKK30KKworKyAoT2Zmc2Ny
ZWVuUmVuZGVyZXIqKWludE9mZnNjcmVlblJlbmRlcmVyCit7CisgICAgc3RhdGljIE9mZnNjcmVl
blJlbmRlcmVyKiBvZmZzY3JlZW5SZW5kZXJlcjsKKyAgICBzdGF0aWMgZGlzcGF0Y2hfb25jZV90
IG9uY2VUb2tlbjsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlVG9rZW4sIF57CisgICAgICAgIG9m
ZnNjcmVlblJlbmRlcmVyID0gW1tPZmZzY3JlZW5SZW5kZXJlciBhbGxvY10gaW5pdFdpdGhEZXZp
Y2U6W1Rlc3RGYW1pbHlSdW5uZXIgZGVmYXVsdFRlc3RpbmdEZXZpY2VdXTsKKyAgICAgICAgW29m
ZnNjcmVlblJlbmRlcmVyIHNldE91dHB1dFBpeGVsRm9ybWF0Ok1UTFBpeGVsRm9ybWF0UjMyU2lu
dF07CisgICAgICAgIFtvZmZzY3JlZW5SZW5kZXJlciBzZXRUYXJnZXRXaWR0aDoxIHNldFRhcmdl
dEhlaWdodDoxXTsKKyAgICB9KTsKKyAgICByZXR1cm4gb2Zmc2NyZWVuUmVuZGVyZXI7Cit9CisK
KysgKE9mZnNjcmVlblJlbmRlcmVyKil1aW50T2Zmc2NyZWVuUmVuZGVyZXIKK3sKKyAgICBzdGF0
aWMgT2Zmc2NyZWVuUmVuZGVyZXIqIG9mZnNjcmVlblJlbmRlcmVyOworICAgIHN0YXRpYyBkaXNw
YXRjaF9vbmNlX3Qgb25jZVRva2VuOworICAgIGRpc3BhdGNoX29uY2UoJm9uY2VUb2tlbiwgXnsK
KyAgICAgICAgb2Zmc2NyZWVuUmVuZGVyZXIgPSBbW09mZnNjcmVlblJlbmRlcmVyIGFsbG9jXSBp
bml0V2l0aERldmljZTpbVGVzdEZhbWlseVJ1bm5lciBkZWZhdWx0VGVzdGluZ0RldmljZV1dOwor
ICAgICAgICBbb2Zmc2NyZWVuUmVuZGVyZXIgc2V0T3V0cHV0UGl4ZWxGb3JtYXQ6TVRMUGl4ZWxG
b3JtYXRSMzJVaW50XTsKKyAgICAgICAgW29mZnNjcmVlblJlbmRlcmVyIHNldFRhcmdldFdpZHRo
OjEgc2V0VGFyZ2V0SGVpZ2h0OjFdOworICAgIH0pOworICAgIHJldHVybiBvZmZzY3JlZW5SZW5k
ZXJlcjsKK30KKworKyAoT2Zmc2NyZWVuUmVuZGVyZXIqKWZsb2F0T2Zmc2NyZWVuUmVuZGVyZXIK
K3sKKyAgICBzdGF0aWMgT2Zmc2NyZWVuUmVuZGVyZXIqIG9mZnNjcmVlblJlbmRlcmVyOworICAg
IHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZVRva2VuOworICAgIGRpc3BhdGNoX29uY2UoJm9u
Y2VUb2tlbiwgXnsKKyAgICAgICAgb2Zmc2NyZWVuUmVuZGVyZXIgPSBbW09mZnNjcmVlblJlbmRl
cmVyIGFsbG9jXSBpbml0V2l0aERldmljZTpbVGVzdEZhbWlseVJ1bm5lciBkZWZhdWx0VGVzdGlu
Z0RldmljZV1dOworICAgICAgICBbb2Zmc2NyZWVuUmVuZGVyZXIgc2V0T3V0cHV0UGl4ZWxGb3Jt
YXQ6TVRMUGl4ZWxGb3JtYXRSMzJGbG9hdF07CisgICAgICAgIFtvZmZzY3JlZW5SZW5kZXJlciBz
ZXRUYXJnZXRXaWR0aDoxIHNldFRhcmdldEhlaWdodDoxXTsKKyAgICB9KTsKKyAgICByZXR1cm4g
b2Zmc2NyZWVuUmVuZGVyZXI7Cit9CisKKysgKENvbXBpbGVyKiljb21waWxlcgoreworICAgIHN0
YXRpYyBDb21waWxlciogY29tcGlsZXI7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNl
VG9rZW47CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZVRva2VuLCBeeworICAgICAgICBjb21waWxl
ciA9IFtDb21waWxlciBuZXddOworICAgIH0pOworICAgIHJldHVybiBjb21waWxlcjsKK30KKwor
LSAoQk9PTClleGVjdXRlQWxsVGVzdHMKK3sKKyAgICBpZiAoIXNlbGYudGVzdEZhbWlseS50b3Rh
bFRlc3RDYXNlQ291bnQpCisgICAgICAgIHJldHVybiBZRVM7CisKKyAgICBOU1N0cmluZyogd2hs
c2xTb3VyY2UgPSBzZWxmLnRlc3RGYW1pbHkud2hsc2xTb3VyY2U7CisgICAgTlNFcnJvciogd2hs
c2xDb21waWxlRXJyb3IgPSBuaWw7CisgICAgQ29tcGlsZVJlc3VsdCogcmVzdWx0ID0gW1tUZXN0
RmFtaWx5UnVubmVyIGNvbXBpbGVyXSBjb21waWxlV2hsc2xUb01ldGFsOndobHNsU291cmNlIGVy
cm9yOiZ3aGxzbENvbXBpbGVFcnJvcl07CisgICAgaWYgKCFyZXN1bHQpIHsKKyAgICAgICAgTlNM
b2coQCJbJUBdOiBXSExTTCBDb21waWxlIEVycm9yOiAlQCIsIHNlbGYudGVzdEZhbWlseS5uYW1l
LCB3aGxzbENvbXBpbGVFcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbik7CisgICAgICAgIHJldHVy
biBOTzsKKyAgICB9CisKKyAgICBOU0xvZyhAIkNvbXBpbGVkIFdITFNMIik7CisKKyAgICBOU011
dGFibGVTdHJpbmcqIG1zbFN0cmluZyA9IFtOU011dGFibGVTdHJpbmcgbmV3XTsKKyAgICBbbXNs
U3RyaW5nIGFwcGVuZFN0cmluZzpyZXN1bHQuc291cmNlXTsKKyAgICBbbXNsU3RyaW5nIGFwcGVu
ZFN0cmluZzpAIlxuIl07CisgICAgW21zbFN0cmluZyBhcHBlbmRTdHJpbmc6W1Rlc3RGYW1pbHkg
c2hhcmVkTWV0YWxTb3VyY2VdXTsKKyAgICBbbXNsU3RyaW5nIGFwcGVuZFN0cmluZzpbc2VsZi50
ZXN0RmFtaWx5IG1ldGFsU291cmNlRm9yQ2FsbGluZ0Z1bmN0aW9uc1dpdGhDb21waWxlZE5hbWVz
OnJlc3VsdC5mdW5jdGlvbk5hbWVNYXBdXTsKKworICAgIGlkPE1UTERldmljZT4gZGV2aWNlID0g
TVRMQ3JlYXRlU3lzdGVtRGVmYXVsdERldmljZSgpOworICAgIE5TRXJyb3IgKmVycm9yID0gbmls
OworICAgIGlkPE1UTExpYnJhcnk+IGxpYnJhcnkgPSBbZGV2aWNlIG5ld0xpYnJhcnlXaXRoU291
cmNlOm1zbFN0cmluZyBvcHRpb25zOm5pbCBlcnJvcjomZXJyb3JdOworICAgIGlmICghbGlicmFy
eSkgeworICAgICAgICBOU0xvZyhAIltMaWJyYXJ5XTogJUAiLCBlcnJvci5sb2NhbGl6ZWREZXNj
cmlwdGlvbik7CisgICAgICAgIHJldHVybiBOTzsKKyAgICB9CisKKyAgICBpZiAoZXJyb3IpCisg
ICAgICAgIE5TTG9nKEAiW0xpYnJhcnkgY29tcGlsZWQgd2l0aCB3YXJuaW5nc106ICVAIiwgZXJy
b3IubG9jYWxpemVkRGVzY3JpcHRpb24pOworICAgIE5TTG9nKEAiQ29tcGlsZWQgbWV0YWwiKTsK
KworICAgIEJPT0wgc3RhdHVzID0gWUVTOworCisgICAgTlNTdHJpbmcgKnZlcnRleFNoYWRlck5h
bWUgPSBAInZlcnRleFNoYWRlciI7CisKKyAgICBPZmZzY3JlZW5SZW5kZXJlciAqaW50UmVuZGVy
ZXIgPSBbVGVzdEZhbWlseVJ1bm5lciBpbnRPZmZzY3JlZW5SZW5kZXJlcl07CisgICAgZm9yIChU
ZXN0RGVzY3JpcHRpb24qIHRlc3QgaW4gc2VsZi50ZXN0RmFtaWx5LmludGVnZXJUZXN0cykgewor
ICAgICAgICBbaW50UmVuZGVyZXIgc2V0TGlicmFyeTpsaWJyYXJ5IHZlcnRleFNoYWRlck5hbWU6
dmVydGV4U2hhZGVyTmFtZSBmcmFnbWVudFNoYWRlck5hbWU6dGVzdC5mcmFnbWVudFNoYWRlck5h
bWVdOworICAgICAgICBbaW50UmVuZGVyZXIgZHJhd107CisKKyAgICAgICAgaW50IHJlc3VsdCA9
IGludFJlbmRlcmVyLmludFZhbHVlOworICAgICAgICBpZiAocmVzdWx0ICE9IHRlc3QuZXhwZWN0
YXRpb24uaW50VmFsdWUpIHsKKyAgICAgICAgICAgIE5TTG9nKEAiJUAgPSAlZCwgc2hvdWxkIGJl
ICVkIiwgdGVzdCwgcmVzdWx0LCB0ZXN0LmV4cGVjdGF0aW9uLmludFZhbHVlKTsKKyAgICAgICAg
ICAgIHN0YXR1cyA9IE5POworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIE5TTG9nKEAiJUAg
PSAlZCIsIHRlc3QsIHJlc3VsdCk7CisgICAgICAgIGV4ZWN1dGlvbkNvdW50Kys7CisgICAgfQor
CisgICAgT2Zmc2NyZWVuUmVuZGVyZXIgKnVpbnRSZW5kZXJlciA9IFtUZXN0RmFtaWx5UnVubmVy
IHVpbnRPZmZzY3JlZW5SZW5kZXJlcl07CisgICAgZm9yIChUZXN0RGVzY3JpcHRpb24qIHRlc3Qg
aW4gc2VsZi50ZXN0RmFtaWx5LnVuc2lnbmVkSW50ZWdlclRlc3RzKSB7CisgICAgICAgIFt1aW50
UmVuZGVyZXIgc2V0TGlicmFyeTpsaWJyYXJ5IHZlcnRleFNoYWRlck5hbWU6dmVydGV4U2hhZGVy
TmFtZSBmcmFnbWVudFNoYWRlck5hbWU6dGVzdC5mcmFnbWVudFNoYWRlck5hbWVdOworICAgICAg
ICBbdWludFJlbmRlcmVyIGRyYXddOworCisgICAgICAgIHVuc2lnbmVkIHJlc3VsdCA9IHVpbnRS
ZW5kZXJlci51aW50VmFsdWU7CisgICAgICAgIGlmIChyZXN1bHQgIT0gdGVzdC5leHBlY3RhdGlv
bi51bnNpZ25lZEludFZhbHVlKSB7CisgICAgICAgICAgICBOU0xvZyhAIiVAID0gJXUsIHNob3Vs
ZCBiZSAldSIsIHRlc3QsIHJlc3VsdCwgdGVzdC5leHBlY3RhdGlvbi51bnNpZ25lZEludFZhbHVl
KTsKKyAgICAgICAgICAgIHN0YXR1cyA9IE5POworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAg
IE5TTG9nKEAiJUAgPSAldSIsIHRlc3QsIHJlc3VsdCk7CisgICAgICAgIGV4ZWN1dGlvbkNvdW50
Kys7CisgICAgfQorCisgICAgT2Zmc2NyZWVuUmVuZGVyZXIgKmZsb2F0UmVuZGVyZXIgPSBbVGVz
dEZhbWlseVJ1bm5lciBmbG9hdE9mZnNjcmVlblJlbmRlcmVyXTsKKyAgICBmb3IgKFRlc3REZXNj
cmlwdGlvbiogdGVzdCBpbiBzZWxmLnRlc3RGYW1pbHkuZmxvYXRUZXN0cykgeworICAgICAgICBb
ZmxvYXRSZW5kZXJlciBzZXRMaWJyYXJ5OmxpYnJhcnkgdmVydGV4U2hhZGVyTmFtZTp2ZXJ0ZXhT
aGFkZXJOYW1lIGZyYWdtZW50U2hhZGVyTmFtZTp0ZXN0LmZyYWdtZW50U2hhZGVyTmFtZV07Cisg
ICAgICAgIFtmbG9hdFJlbmRlcmVyIGRyYXddOworCisgICAgICAgIGZsb2F0IHJlc3VsdCA9IGZs
b2F0UmVuZGVyZXIuZmxvYXRWYWx1ZTsKKyAgICAgICAgaWYgKHJlc3VsdCAhPSB0ZXN0LmV4cGVj
dGF0aW9uLmZsb2F0VmFsdWUpIHsKKyAgICAgICAgICAgIE5TTG9nKEAiJUAgPSAlZiwgc2hvdWxk
IGJlICVmIiwgdGVzdCwgcmVzdWx0LCB0ZXN0LmV4cGVjdGF0aW9uLmZsb2F0VmFsdWUpOworICAg
ICAgICAgICAgc3RhdHVzID0gTk87CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgTlNMb2co
QCIlQCA9ICVmIiwgdGVzdCwgcmVzdWx0KTsKKyAgICAgICAgZXhlY3V0aW9uQ291bnQrKzsKKyAg
ICB9CisKKyAgICByZXR1cm4gc3RhdHVzOworfQorCisrIChOU1VJbnRlZ2VyKWV4ZWN1dGlvbkNv
dW50Cit7CisgICAgcmV0dXJuIGV4ZWN1dGlvbkNvdW50OworfQorCitAZW5kCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1Zp
ZXdDb250cm9sbGVyLmggYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExT
TCBUZXN0cy9Db3JlL1ZpZXdDb250cm9sbGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTBlNjM2MzQ3MjE5NzAy
YjhiZDdlZGU2MzY1MmIxNjEzNTdiZWQzNQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvVmlld0NvbnRyb2xsZXIu
aAkKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbXBvcnQgPENvY29hL0NvY29hLmg+CisjaW1wb3J0IDxNZXRhbEtpdC9NZXRh
bEtpdC5oPgorCisjaW1wb3J0ICJDb21waWxlci5oIgorI2ltcG9ydCAiQ3VzdG9tTWV0YWxWaWV3
LmgiCisKK0BpbnRlcmZhY2UgVmlld0NvbnRyb2xsZXIgOiBOU1ZpZXdDb250cm9sbGVyPE5TR2Vz
dHVyZVJlY29nbml6ZXJEZWxlZ2F0ZSwgQ3VzdG9tTWV0YWxWaWV3RGVsZWdhdGU+CisKK0Bwcm9w
ZXJ0eSAodW5zYWZlX3VucmV0YWluZWQpIElCT3V0bGV0IE5TVGV4dFZpZXcgKndobHNsVGV4dFZp
ZXc7CitAcHJvcGVydHkgKHVuc2FmZV91bnJldGFpbmVkKSBJQk91dGxldCBOU1RleHRWaWV3ICpt
c2xUZXh0VmlldzsKK0Bwcm9wZXJ0eSAod2VhaykgSUJPdXRsZXQgQ3VzdG9tTWV0YWxWaWV3ICpt
ZXRhbFZpZXc7CisKK0Bwcm9wZXJ0eSBDb21waWxlciAqY29tcGlsZXI7CisKK0BlbmQKKwpkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMv
Q29yZS9WaWV3Q29udHJvbGxlci5tIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0
YWwvV0hMU0wgVGVzdHMvQ29yZS9WaWV3Q29udHJvbGxlci5tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVmNTY0YmZj
N2ExMmRiZTFiZTFhODRjYmRlNWJmMWZkMDNiMDRlNGIKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL1ZpZXdDb250
cm9sbGVyLm0JCkBAIC0wLDAgKzEsMjEwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiVmlld0NvbnRyb2xsZXIuaCIKKyNpbXBvcnQgIk9u
c2NyZWVuUmVuZGVyZXIuaCIKKworQGludGVyZmFjZSBWaWV3Q29udHJvbGxlciAoKQorCitAcHJv
cGVydHkgT25zY3JlZW5SZW5kZXJlciAqcmVuZGVyZXI7CitAcHJvcGVydHkgTlNNYWduaWZpY2F0
aW9uR2VzdHVyZVJlY29nbml6ZXIgKm1hZ25pZnlHZXN0dXJlOworQHByb3BlcnR5IE5TUm90YXRp
b25HZXN0dXJlUmVjb2duaXplciAqcm90YXRpb25HZXN0dXJlOworQHByb3BlcnR5ICh3ZWFrKSBJ
Qk91dGxldCBOU1RleHRGaWVsZCAqZGVidWdMYWJlbDsKK0Bwcm9wZXJ0eSAod2VhaykgSUJPdXRs
ZXQgTlNTY3JvbGxWaWV3ICp3aGxzbFZpZXdDb250YWluZXI7CitAcHJvcGVydHkgKHdlYWspIElC
T3V0bGV0IE5TU2Nyb2xsVmlldyAqbXNsVmlld0NvbnRhaW5lcjsKK0Bwcm9wZXJ0eSBpZDxNVExM
aWJyYXJ5PiBsaWJyYXJ5OworCitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBWaWV3Q29udHJvbGxl
cgorCistICh2b2lkKXZpZXdEaWRMb2FkIHsKKyAgICBbc3VwZXIgdmlld0RpZExvYWRdOworCisg
ICAgW3NlbGYgbG9hZEZpbGU6QCJEZWZhdWx0Il07CisKKyAgICBzZWxmLmNvbXBpbGVyID0gW1tD
b21waWxlciBhbGxvY10gaW5pdF07CisKKyAgICBzZWxmLm1ldGFsVmlldy5kZXZpY2UgPSBNVExD
cmVhdGVTeXN0ZW1EZWZhdWx0RGV2aWNlKCk7CisgICAgc2VsZi5yZW5kZXJlciA9IFtbT25zY3Jl
ZW5SZW5kZXJlciBhbGxvY10gaW5pdFdpdGhWaWV3OnNlbGYubWV0YWxWaWV3IGRldmljZTpzZWxm
Lm1ldGFsVmlldy5kZXZpY2VdOworCisgICAgc2VsZi5tYWduaWZ5R2VzdHVyZSA9IFtbTlNNYWdu
aWZpY2F0aW9uR2VzdHVyZVJlY29nbml6ZXIgYWxsb2NdIGluaXRXaXRoVGFyZ2V0OnNlbGYgYWN0
aW9uOkBzZWxlY3Rvcih6b29tOildOworICAgIHNlbGYubWFnbmlmeUdlc3R1cmUuZGVsZWdhdGUg
PSBzZWxmOworICAgIFtzZWxmLm1ldGFsVmlldyBhZGRHZXN0dXJlUmVjb2duaXplcjpzZWxmLm1h
Z25pZnlHZXN0dXJlXTsKKworICAgIHNlbGYucm90YXRpb25HZXN0dXJlID0gW1tOU1JvdGF0aW9u
R2VzdHVyZVJlY29nbml6ZXIgYWxsb2NdIGluaXRXaXRoVGFyZ2V0OnNlbGYgYWN0aW9uOkBzZWxl
Y3Rvcihyb3RhdGU6KV07CisgICAgc2VsZi5yb3RhdGlvbkdlc3R1cmUuZGVsZWdhdGUgPSBzZWxm
OworICAgIFtzZWxmLm1ldGFsVmlldyBhZGRHZXN0dXJlUmVjb2duaXplcjpzZWxmLnJvdGF0aW9u
R2VzdHVyZV07CisKKyAgICBzZWxmLm1ldGFsVmlldy5zY3JvbGxEZWxlZ2F0ZSA9IHNlbGY7CisK
KyAgICBbc2VsZiB2aWV3RGlkTGF5b3V0XTsKKworICAgIHNlbGYubGlicmFyeSA9IFtzZWxmLnJl
bmRlcmVyLmRldmljZSBuZXdEZWZhdWx0TGlicmFyeVdpdGhCdW5kbGU6W05TQnVuZGxlIG1haW5C
dW5kbGVdIGVycm9yOm5pbF07Cit9CisKKy0gKEJPT0wpZ2VzdHVyZVJlY29nbml6ZXI6KE5TR2Vz
dHVyZVJlY29nbml6ZXIgKilnZXN0dXJlUmVjb2duaXplciBzaG91bGRSZWNvZ25pemVTaW11bHRh
bmVvdXNseVdpdGhHZXN0dXJlUmVjb2duaXplcjoobm9ubnVsbCBOU0dlc3R1cmVSZWNvZ25pemVy
ICopb3RoZXJHZXN0dXJlUmVjb2duaXplcgoreworICAgIHJldHVybiBZRVM7Cit9CisKKy0gKHZv
aWQpdmlld0RpZExheW91dAoreworICAgIFtzdXBlciB2aWV3RGlkTGF5b3V0XTsKKworICAgIENH
RmxvYXQgd2lkdGggPSBDR1JlY3RHZXRXaWR0aChzZWxmLnZpZXcuZnJhbWUpOworICAgIENHRmxv
YXQgYm94V2lkdGggPSAod2lkdGggLSAyMCAqIDIgLSAxMCAqIDIpIC8gMzsKKyAgICBDR0Zsb2F0
IGhlaWdodCA9IENHUmVjdEdldEhlaWdodChzZWxmLnZpZXcuZnJhbWUpOworICAgIENHRmxvYXQg
Ym94SGVpZ2h0ID0gaGVpZ2h0IC0gNjAgLSAyMDsKKworICAgIHNlbGYud2hsc2xWaWV3Q29udGFp
bmVyLmZyYW1lID0gQ0dSZWN0TWFrZSgyMCwgNjAsIGJveFdpZHRoLCBib3hIZWlnaHQpOworICAg
IHNlbGYubXNsVmlld0NvbnRhaW5lci5mcmFtZSA9IENHUmVjdE1ha2UoMjAgKyBib3hXaWR0aCAr
IDEwLCA2MCwgYm94V2lkdGgsIGJveEhlaWdodCk7CisgICAgc2VsZi5tZXRhbFZpZXcuZnJhbWUg
PSBDR1JlY3RNYWtlKDIwICsgYm94V2lkdGggKyAxMCArIGJveFdpZHRoICsgMTAsIDYwLCBib3hX
aWR0aCwgYm94SGVpZ2h0KTsKKworICAgIGZsb2F0IHJhdGlvID0gYm94SGVpZ2h0IC8gKGJveFdp
ZHRoIC8gMyk7CisgICAgLy8gTk9URTogc2ltZF9tYXRyaXggdGFrZXMgY29sdW1ucywgbm90IHJv
d3MhCisgICAgc2VsZi5yZW5kZXJlci50cmFuc2Zvcm1NYXRyaXggPSBzaW1kX21hdHJpeChzaW1k
X21ha2VfZmxvYXQzKDMsIDAsIDApLCBzaW1kX21ha2VfZmxvYXQzKDAsICByYXRpbywgMCksIHNp
bWRfbWFrZV9mbG9hdDMoLTIuMiwgLXJhdGlvIC8gMiwgMSkpOworCisgICAgc2VsZi5kZWJ1Z0xh
YmVsLnN0cmluZ1ZhbHVlID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJXaWR0aCA9ICVm
LCBoZWlnaHQgPSAlZiIsIGJveFdpZHRoLCBib3hIZWlnaHRdOworfQorCistIChJQkFjdGlvbily
ZXNldFZpZXdwb3J0OihpZClzZW5kZXIKK3sKKyAgICBbc2VsZiB2aWV3RGlkTGF5b3V0XTsKKyAg
ICBbc2VsZi5tZXRhbFZpZXcgc2V0TmVlZHNEaXNwbGF5OllFU107Cit9CisKKy0gKElCQWN0aW9u
KWxvYWREZWZhdWx0OihpZClzZW5kZXIKK3sKKyAgICBbc2VsZiBsb2FkRmlsZTpAIkRlZmF1bHQi
XTsKK30KKworLSAoSUJBY3Rpb24pbG9hZE1hbmRlbGJyb3Q6KGlkKXNlbmRlcgoreworICAgIFtz
ZWxmIGxvYWRGaWxlOkAiTWFuZGVsYnJvdCJdOworfQorCistIChJQkFjdGlvbilsb2FkSnVsaWE6
KGlkKXNlbmRlcgoreworICAgIFtzZWxmIGxvYWRGaWxlOkAiSnVsaWEiXTsKK30KKworLSAodm9p
ZClsb2FkRmlsZTooTlNTdHJpbmcqKW5hbWUKK3sKKyAgICBOU1N0cmluZyogZGVmYXVsdEZpbGVQ
YXRoID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBwYXRoRm9yUmVzb3VyY2U6bmFtZSBvZlR5cGU6
QCJ3aGxzbCJdOworICAgIE5TU3RyaW5nKiBkZWZhdWx0Q29udGVudHMgPSBbTlNTdHJpbmcgc3Ry
aW5nV2l0aENvbnRlbnRzT2ZGaWxlOmRlZmF1bHRGaWxlUGF0aCBlbmNvZGluZzpOU1VURjhTdHJp
bmdFbmNvZGluZyBlcnJvcjpuaWxdOworCisgICAgLy8gRG8gYW55IGFkZGl0aW9uYWwgc2V0dXAg
YWZ0ZXIgbG9hZGluZyB0aGUgdmlldy4KKyAgICBzZWxmLndobHNsVGV4dFZpZXcuc3RyaW5nID0g
ZGVmYXVsdENvbnRlbnRzOworICAgIHNlbGYubXNsVGV4dFZpZXcuc3RyaW5nID0gQCIiOworICAg
IHNlbGYubWV0YWxWaWV3LmhpZGRlbiA9IFlFUzsKK30KKworLSAoSUJBY3Rpb24pY29tcGlsZUNs
aWNrZWQ6KGlkKXNlbmRlciB7CisgICAgTlNFcnJvciAqZXJyb3IgPSBuaWw7CisgICAgQ29tcGls
ZVJlc3VsdCAqb3V0cHV0ID0gW3NlbGYuY29tcGlsZXIgY29tcGlsZVdobHNsVG9NZXRhbDpzZWxm
LndobHNsVGV4dFZpZXcuc3RyaW5nIGVycm9yOiZlcnJvcl07CisgICAgaWYgKGVycm9yKQorICAg
ICAgICBzZWxmLm1zbFRleHRWaWV3LnN0cmluZyA9IGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9u
OworICAgIGVsc2UgeworICAgICAgICBzZWxmLm1ldGFsVmlldy5oaWRkZW4gPSBOTzsKKyAgICAg
ICAgc2VsZi5tc2xUZXh0Vmlldy5zdHJpbmcgPSBvdXRwdXQuc291cmNlOworICAgICAgICBOU1N0
cmluZyAqdmVydGV4U2hhZGVyTmFtZSA9IG91dHB1dC5mdW5jdGlvbk5hbWVNYXBbQCJ2ZXJ0ZXhT
aGFkZXIiXTsKKyAgICAgICAgTlNTdHJpbmcgKmZyYWdtZW50U2hhZGVyTmFtZSA9IG91dHB1dC5m
dW5jdGlvbk5hbWVNYXBbQCJmcmFnbWVudFNoYWRlciJdOworICAgICAgICBbc2VsZiB2aWV3RGlk
TGF5b3V0XTsKKyAgICAgICAgW3NlbGYucmVuZGVyZXIgc2V0U2hhZGVyU291cmNlOm91dHB1dC5z
b3VyY2UgdmVydGV4U2hhZGVyTmFtZTp2ZXJ0ZXhTaGFkZXJOYW1lIGZyYWdtZW50U2hhZGVyTmFt
ZTpmcmFnbWVudFNoYWRlck5hbWVdOworICAgICAgICBbc2VsZi5tZXRhbFZpZXcgc2V0TmVlZHNE
aXNwbGF5OllFU107CisgICAgfQorICAgIHNlbGYubXNsVGV4dFZpZXcuZm9udCA9IFtOU0ZvbnQg
Zm9udFdpdGhOYW1lOkAiTWVubG8iIHNpemU6MTJdOworfQorCistIChJQkFjdGlvbilsb2FkTmF0
aXZlRmxhdENvbG9yOihpZClzZW5kZXIKK3sKKyAgICBbc2VsZiBsb2FkTmF0aXZlRmxhdENvbG9y
OkAiZmxhdENvbG9yIl07Cit9CisKKy0gKElCQWN0aW9uKWxvYWROYXRpdmVNYW5kZWxicm90Oihp
ZClzZW5kZXIKK3sKKyAgICBbc2VsZiBsb2FkTmF0aXZlTWV0YWxTaGFkZXJXaXRoTmFtZTpAIm1h
bmRlbGJyb3QiXTsKK30KKworLSAoSUJBY3Rpb24pbG9hZE5hdGl2ZUp1bGlhOihpZClzZW5kZXIK
K3sKKyAgICBbc2VsZiBsb2FkTmF0aXZlTWV0YWxTaGFkZXJXaXRoTmFtZTpAImp1bGlhIl07Cit9
CisKKy0gKHZvaWQpbG9hZE5hdGl2ZU1ldGFsU2hhZGVyV2l0aE5hbWU6KE5TU3RyaW5nKiluYW1l
Cit7CisgICAgTlNTdHJpbmcqIHZlcnRleFNoYWRlck5hbWUgPSBbbmFtZSBzdHJpbmdCeUFwcGVu
ZGluZ1N0cmluZzpAIlZlcnRleFNoYWRlciJdOworICAgIE5TU3RyaW5nKiBmcmFnbWVudFNoYWRl
ck5hbWUgPSBbbmFtZSBzdHJpbmdCeUFwcGVuZGluZ1N0cmluZzpAIkZyYWdtZW50U2hhZGVyIl07
CisgICAgW3NlbGYgdmlld0RpZExheW91dF07CisgICAgW3NlbGYucmVuZGVyZXIgc2V0TGlicmFy
eTpzZWxmLmxpYnJhcnkgdmVydGV4U2hhZGVyTmFtZTp2ZXJ0ZXhTaGFkZXJOYW1lIGZyYWdtZW50
U2hhZGVyTmFtZTpmcmFnbWVudFNoYWRlck5hbWUgcGl4ZWxGb3JtYXQ6c2VsZi5tZXRhbFZpZXcu
Y29sb3JQaXhlbEZvcm1hdF07CisgICAgW3NlbGYubWV0YWxWaWV3IHNldE5lZWRzRGlzcGxheTpZ
RVNdOworfQorCistIChJQkFjdGlvbil6b29tOihpZClzZW5kZXIKK3sKKyAgICBmbG9hdCBmYWN0
b3IgPSAxLjBmIC8gKDEgKyBzZWxmLm1hZ25pZnlHZXN0dXJlLm1hZ25pZmljYXRpb24pOworICAg
IE5TUG9pbnQgbG9jYXRpb24gPSBbc2VsZi5tYWduaWZ5R2VzdHVyZSBsb2NhdGlvbkluVmlldzpz
ZWxmLm1ldGFsVmlld107CisgICAgZmxvYXQgbm9ybWFsaXplZFggPSBsb2NhdGlvbi54IC8gQ0dS
ZWN0R2V0V2lkdGgoc2VsZi5tZXRhbFZpZXcuZnJhbWUpOworICAgIGZsb2F0IG5vcm1hbGl6ZWRZ
ID0gbG9jYXRpb24ueSAvIENHUmVjdEdldEhlaWdodChzZWxmLm1ldGFsVmlldy5mcmFtZSk7Cisg
ICAgc2ltZF9mbG9hdDMgbm9ybWFsaXplZCA9IHNpbWRfbWFrZV9mbG9hdDMobm9ybWFsaXplZFgs
IG5vcm1hbGl6ZWRZLCAxKTsKKyAgICBub3JtYWxpemVkID0gbWF0cml4X211bHRpcGx5KHNlbGYu
cmVuZGVyZXIudHJhbnNmb3JtTWF0cml4LCBub3JtYWxpemVkKTsKKyAgICBzaW1kX2Zsb2F0M3gz
IGluaXRUcmFuc2Zvcm0gPSBzaW1kX21hdHJpeChzaW1kX21ha2VfZmxvYXQzKDEsIDAsIDApLCBz
aW1kX21ha2VfZmxvYXQzKDAsIDEsIDApLCBzaW1kX21ha2VfZmxvYXQzKC1ub3JtYWxpemVkLngs
IC1ub3JtYWxpemVkLnksIDEpKTsKKyAgICBzaW1kX2Zsb2F0M3gzIHNjYWxlTWF0cml4ID0gc2lt
ZF9tYXRyaXgoc2ltZF9tYWtlX2Zsb2F0MyhmYWN0b3IsIDAuZiwgMC5mKSwgc2ltZF9tYWtlX2Zs
b2F0MygwLmYsIGZhY3RvciwgMC5mKSwgc2ltZF9tYWtlX2Zsb2F0MygwLmYsIDAuZiwgMSkpOwor
ICAgIHNpbWRfZmxvYXQzeDMgYmFja1RyYW5zZm9ybSA9IHNpbWRfbWF0cml4KHNpbWRfbWFrZV9m
bG9hdDMoMSwgMCwgMCksIHNpbWRfbWFrZV9mbG9hdDMoMCwgMSwgMCksIHNpbWRfbWFrZV9mbG9h
dDMobm9ybWFsaXplZC54LCBub3JtYWxpemVkLnksIDEpKTsKKyAgICBzZWxmLnJlbmRlcmVyLnRy
YW5zZm9ybU1hdHJpeCA9IG1hdHJpeF9tdWx0aXBseShtYXRyaXhfbXVsdGlwbHkoYmFja1RyYW5z
Zm9ybSwgbWF0cml4X211bHRpcGx5KHNjYWxlTWF0cml4LCBpbml0VHJhbnNmb3JtKSksIHNlbGYu
cmVuZGVyZXIudHJhbnNmb3JtTWF0cml4KTsKKyAgICBzZWxmLm1hZ25pZnlHZXN0dXJlLm1hZ25p
ZmljYXRpb24gPSAwOworICAgIFtzZWxmLm1ldGFsVmlldyBzZXROZWVkc0Rpc3BsYXk6WUVTXTsK
K30KKworLSAoSUJBY3Rpb24pcm90YXRlOihpZClzZW5kZXIKK3sKKyAgICBmbG9hdCBhbmdsZSA9
IC1zZWxmLnJvdGF0aW9uR2VzdHVyZS5yb3RhdGlvbjsKKyAgICBOU1BvaW50IGxvY2F0aW9uID0g
W3NlbGYucm90YXRpb25HZXN0dXJlIGxvY2F0aW9uSW5WaWV3OnNlbGYubWV0YWxWaWV3XTsKKyAg
ICBmbG9hdCBub3JtYWxpemVkWCA9IGxvY2F0aW9uLnggLyBDR1JlY3RHZXRXaWR0aChzZWxmLm1l
dGFsVmlldy5mcmFtZSk7CisgICAgZmxvYXQgbm9ybWFsaXplZFkgPSBsb2NhdGlvbi55IC8gQ0dS
ZWN0R2V0SGVpZ2h0KHNlbGYubWV0YWxWaWV3LmZyYW1lKTsKKyAgICBzaW1kX2Zsb2F0MyBub3Jt
YWxpemVkID0gc2ltZF9tYWtlX2Zsb2F0Myhub3JtYWxpemVkWCwgbm9ybWFsaXplZFksIDEpOwor
ICAgIG5vcm1hbGl6ZWQgPSBtYXRyaXhfbXVsdGlwbHkoc2VsZi5yZW5kZXJlci50cmFuc2Zvcm1N
YXRyaXgsIG5vcm1hbGl6ZWQpOworCisgICAgc2ltZF9mbG9hdDN4MyBpbml0VHJhbnNmb3JtID0g
c2ltZF9tYXRyaXgoc2ltZF9tYWtlX2Zsb2F0MygxLCAwLCAwKSwgc2ltZF9tYWtlX2Zsb2F0Mygw
LCAxLCAwKSwgc2ltZF9tYWtlX2Zsb2F0Mygtbm9ybWFsaXplZC54LCAtbm9ybWFsaXplZC55LCAx
KSk7CisgICAgc2ltZF9mbG9hdDN4MyByb3RhdGlvbk1hdHJpeCA9IHNpbWRfbWF0cml4KHNpbWRf
bWFrZV9mbG9hdDMoY29zKGFuZ2xlKSwgc2luKGFuZ2xlKSwgMC5mKSwgc2ltZF9tYWtlX2Zsb2F0
Mygtc2luKGFuZ2xlKSwgY29zKGFuZ2xlKSwgMC5mKSwgc2ltZF9tYWtlX2Zsb2F0MygwLmYsIDAu
ZiwgMSkpOworICAgIHNpbWRfZmxvYXQzeDMgYmFja1RyYW5zZm9ybSA9IHNpbWRfbWF0cml4KHNp
bWRfbWFrZV9mbG9hdDMoMSwgMCwgMCksIHNpbWRfbWFrZV9mbG9hdDMoMCwgMSwgMCksIHNpbWRf
bWFrZV9mbG9hdDMobm9ybWFsaXplZC54LCBub3JtYWxpemVkLnksIDEpKTsKKyAgICBzZWxmLnJl
bmRlcmVyLnRyYW5zZm9ybU1hdHJpeCA9IG1hdHJpeF9tdWx0aXBseShtYXRyaXhfbXVsdGlwbHko
YmFja1RyYW5zZm9ybSwgbWF0cml4X211bHRpcGx5KHJvdGF0aW9uTWF0cml4LCBpbml0VHJhbnNm
b3JtKSksIHNlbGYucmVuZGVyZXIudHJhbnNmb3JtTWF0cml4KTsKKyAgICBzZWxmLnJvdGF0aW9u
R2VzdHVyZS5yb3RhdGlvbiA9IDA7CisgICAgW3NlbGYubWV0YWxWaWV3IHNldE5lZWRzRGlzcGxh
eTpZRVNdOworfQorCistICh2b2lkKWN1c3RvbU1ldGFsVmlldzooQ3VzdG9tTWV0YWxWaWV3ICop
bWV0YWxWaWV3IHNjcm9sbGVkRGVsdGFYOihDR0Zsb2F0KWRlbHRhWCBkZWx0YVk6KENHRmxvYXQp
ZGVsdGFZCit7CisgICAgZmxvYXQgd2lkdGggPSBzZWxmLm1ldGFsVmlldy5ib3VuZHMuc2l6ZS53
aWR0aDsKKyAgICBmbG9hdCBoZWlnaHQgPSBzZWxmLm1ldGFsVmlldy5ib3VuZHMuc2l6ZS5oZWln
aHQ7CisgICAgZmxvYXQgc2Nyb2xsVmVsb2NpdHkgPSA2OworICAgIGZsb2F0IHggPSAtZGVsdGFY
IC8gd2lkdGggKiBzY3JvbGxWZWxvY2l0eTsKKyAgICBmbG9hdCB5ID0gZGVsdGFZIC8gaGVpZ2h0
ICogc2Nyb2xsVmVsb2NpdHk7CisgICAgc2ltZF9mbG9hdDN4MyBtID0gc2ltZF9tYXRyaXgoc2lt
ZF9tYWtlX2Zsb2F0MygxLCAwLCAwKSwgc2ltZF9tYWtlX2Zsb2F0MygwLCAxLCAwKSwgc2ltZF9t
YWtlX2Zsb2F0Myh4LCB5LCAxKSk7CisgICAgc2VsZi5yZW5kZXJlci50cmFuc2Zvcm1NYXRyaXgg
PSBtYXRyaXhfbXVsdGlwbHkoc2VsZi5yZW5kZXJlci50cmFuc2Zvcm1NYXRyaXgsIG0pOworfQor
CitAZW5kCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9X
SExTTCBUZXN0cy9Db3JlL1dITFNMLmVudGl0bGVtZW50cyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvV0hMU0wuZW50aXRsZW1lbnRzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmYyZWYzYWUwMjY1YjQwYzQ3NWU4ZWY5MGUzYTMxMWMzMTc4NmM1OTQKLS0tIC9kZXYv
bnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0
cy9Db3JlL1dITFNMLmVudGl0bGVtZW50cwkKQEAgLTAsMCArMSwxMCBAQAorPD94bWwgdmVyc2lv
bj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9DVFlQRSBwbGlzdCBQVUJMSUMgIi0vL0Fw
cGxlLy9EVEQgUExJU1QgMS4wLy9FTiIgImh0dHA6Ly93d3cuYXBwbGUuY29tL0RURHMvUHJvcGVy
dHlMaXN0LTEuMC5kdGQiPgorPHBsaXN0IHZlcnNpb249IjEuMCI+Cis8ZGljdD4KKyAgICA8a2V5
PmNvbS5hcHBsZS5zZWN1cml0eS5hcHAtc2FuZGJveDwva2V5PgorICAgIDx0cnVlLz4KKyAgICA8
a2V5PmNvbS5hcHBsZS5zZWN1cml0eS5maWxlcy51c2VyLXNlbGVjdGVkLnJlYWQtb25seTwva2V5
PgorICAgIDx0cnVlLz4KKzwvZGljdD4KKzwvcGxpc3Q+CmRpZmYgLS1naXQgYS9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL19TaGFyZWRNZXRhbC50
eHQgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3Jl
L19TaGFyZWRNZXRhbC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmQ2NGU0MWRlNDJlZjU5MTFhNGRkYzIxNzk3
YTU0ZDZhZjA3ZDNlZAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL0NvcmUvX1NoYXJlZE1ldGFsLnR4dAkKQEAgLTAsMCAr
MSwxMiBAQAorc3RydWN0IFZlcnRleElucHV0IHsgZmxvYXQyIHBvc2l0aW9uIFtbYXR0cmlidXRl
KDApXV07IGZsb2F0MiB1diBbW2F0dHJpYnV0ZSgxKV1dOyB9Oworc3RydWN0IFZlcnRleE91dHB1
dCB7IGZsb2F0NCBwb3NpdGlvbiBbW3Bvc2l0aW9uXV07IH07CitzdHJ1Y3QgRnJhZ21lbnRPdXRw
dXRGbG9hdCB7IGZsb2F0IHJlc3VsdDsgfTsKK3N0cnVjdCBGcmFnbWVudE91dHB1dEludCB7IGlu
dCByZXN1bHQ7IH07CitzdHJ1Y3QgRnJhZ21lbnRPdXRwdXRVaW50IHsgdWludCByZXN1bHQ7IH07
CisKK3ZlcnRleCBWZXJ0ZXhPdXRwdXQgdmVydGV4U2hhZGVyKFZlcnRleElucHV0IHZlcnRleElu
cHV0IFtbc3RhZ2VfaW5dXSkKK3sKKyAgICBWZXJ0ZXhPdXRwdXQgcmVzdWx0OworICAgIHJlc3Vs
dC5wb3NpdGlvbiA9IGZsb2F0NCh2ZXJ0ZXhJbnB1dC5wb3NpdGlvbiwgMC4sIDEuKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9tYWluLm0gYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9Db3JlL21haW4ubQpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NGMzMzY1
ZWY1OTQzNzU0MTQ0MmY0ZjgxY2E4Y2YwMDVjZmU5ZTQ4Ci0tLSAvZGV2L251bGwKKysrIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvQ29yZS9tYWluLm0J
CkBAIC0wLDAgKzEsMzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
CisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaW1wb3J0IDxDb2NvYS9Db2NvYS5oPgorCitpbnQgbWFpbihpbnQgYXJnYywgY29u
c3QgY2hhciAqIGFyZ3ZbXSkKK3sKKyAgICByZXR1cm4gTlNBcHBsaWNhdGlvbk1haW4oYXJnYywg
YXJndik7Cit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRh
bC9XSExTTCBUZXN0cy9XSExTTCBUZXN0cy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvV0hMU0wgVGVzdHMu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZjg0N2FlOTY3YTZjZmVkMWM2
NTY2MGQ4Yzc3YTc1YTZjNThlNzgwCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVzdHMvV0hMU0wgVGVzdHMueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagkKQEAgLTAsMCArMSwxMjkwIEBACisvLyAhJCpVVEY4KiQhCit7CisJYXJj
aGl2ZVZlcnNpb24gPSAxOworCWNsYXNzZXMgPSB7CisJfTsKKwlvYmplY3RWZXJzaW9uID0gNTA7
CisJb2JqZWN0cyA9IHsKKworLyogQmVnaW4gUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8KKwkJRTkw
NkIwNDYyMTEzOUI3NzAwQUQxQzVFIC8qIEp1bGlhLndobHNsIGluIFJlc291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTA2QjA0NTIxMTM5Qjc3MDBBRDFDNUUgLyog
SnVsaWEud2hsc2wgKi87IH07CisJCUU5MjFENjM2MjEzOEMwMjYwMDc3NTA5OSAvKiBPcGVyYXRv
ckFuZGVySW5kZXhlci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTkyMUQ2MzIyMTM4QzAyNjAwNzc1MDk5IC8qIE9wZXJhdG9yQW5kZXJJbmRleGVy
LmpzICovOyB9OworCQlFOTIxRDYzNzIxMzhDMDI2MDA3NzUwOTkgLyogTWF0cml4VHlwZS5qcyBp
biBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyMUQ2MzMy
MTM4QzAyNjAwNzc1MDk5IC8qIE1hdHJpeFR5cGUuanMgKi87IH07CisJCUU5MjFENjM4MjEzOEMw
MjYwMDc3NTA5OSAvKiBCdWlsdGluTWF0cml4R2V0dGVyLmpzIGluIFJlc291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTIxRDYzNDIxMzhDMDI2MDA3NzUwOTkgLyog
QnVpbHRpbk1hdHJpeEdldHRlci5qcyAqLzsgfTsKKwkJRTkyMUQ2MzkyMTM4QzAyNjAwNzc1MDk5
IC8qIEJ1aWx0aW5NYXRyaXhTZXR0ZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEU5MjFENjM1MjEzOEMwMjYwMDc3NTA5OSAvKiBCdWlsdGluTWF0
cml4U2V0dGVyLmpzICovOyB9OworCQlFOTJEMTA4QTIwRjU2RjA2MDBENzc2QjIgLyogQ29tcGls
ZXIubSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQx
MDg5MjBGNTZGMDYwMEQ3NzZCMiAvKiBDb21waWxlci5tICovOyB9OworCQlFOTJEMTA4RDIwRjU2
RjQ1MDBENzc2QjIgLyogTWV0YWxLaXQuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwOEMyMEY1NkY0NTAwRDc3NkIyIC8qIE1l
dGFsS2l0LmZyYW1ld29yayAqLzsgfTsKKwkJRTkyRDEwOEYyMEY1NkY0RjAwRDc3NkIyIC8qIE1l
dGFsLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU5MkQxMDhFMjBGNTZGNEYwMEQ3NzZCMiAvKiBNZXRhbC5mcmFtZXdvcmsgKi87IH07
CisJCUU5MkQxMDkxMjBGNTZGNTcwMEQ3NzZCMiAvKiBKYXZhU2NyaXB0Q29yZS5mcmFtZXdvcmsg
aW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTA5
MDIwRjU2RjU3MDBENzc2QjIgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrICovOyB9OworCQlF
OTJEMTA5MzIwRjU3MzQ5MDBENzc2QjIgLyogRGVmYXVsdC53aGxzbCBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwOTIyMEY1NzM0OTAwRDc3NkIy
IC8qIERlZmF1bHQud2hsc2wgKi87IH07CisJCUU5MkQxMEFGMjBGNTdDOUYwMEQ3NzZCMiAvKiBP
bnNjcmVlblJlbmRlcmVyLm0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFOTJEMTBBRTIwRjU3QzlGMDBENzc2QjIgLyogT25zY3JlZW5SZW5kZXJlci5tICov
OyB9OworCQlFOTJEMTExNTIwRjZGRkI2MDBENzc2QjIgLyogUmVuZGVyZXIubSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMTE0MjBGNkZGQjYwMEQ3
NzZCMiAvKiBSZW5kZXJlci5tICovOyB9OworCQlFOTJEMTExNjIwRjcwNjBFMDBENzc2QjIgLyog
QWRkcmVzc1NwYWNlLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFOTU1NjlCQTIwRjU2Q0Q2MDBGNUNGMzQgLyogQWRkcmVzc1NwYWNlLmpzICovOyB9
OworCQlFOTJEMTExNzIwRjcwNjBFMDBENzc2QjIgLyogQWxsLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTU1NjlCQzIwRjU2Q0Q3MDBGNUNGMzQg
LyogQWxsLmpzICovOyB9OworCQlFOTJEMTExODIwRjcwNjBFMDBENzc2QjIgLyogQW5vbnltb3Vz
VmFyaWFibGUuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEU5NTU2OUJEMjBGNTZDRDcwMEY1Q0YzNCAvKiBBbm9ueW1vdXNWYXJpYWJsZS5qcyAqLzsg
fTsKKwkJRTkyRDExMTkyMEY3MDYwRTAwRDc3NkIyIC8qIEFycmF5UmVmVHlwZS5qcyBpbiBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk1NTY5QjUyMEY1NkNE
NjAwRjVDRjM0IC8qIEFycmF5UmVmVHlwZS5qcyAqLzsgfTsKKwkJRTkyRDExMUEyMEY3MDYwRTAw
RDc3NkIyIC8qIEFycmF5VHlwZS5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTk1NTY5QjQyMEY1NkNENjAwRjVDRjM0IC8qIEFycmF5VHlwZS5qcyAq
LzsgfTsKKwkJRTkyRDExMUIyMEY3MDYwRTAwRDc3NkIyIC8qIEFzc2lnbm1lbnQuanMgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUI5MjBGNTZD
RDYwMEY1Q0YzNCAvKiBBc3NpZ25tZW50LmpzICovOyB9OworCQlFOTJEMTExQzIwRjcwNjBFMDBE
Nzc2QjIgLyogQXV0b1dyYXBwZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEU5NTU2OUJFMjBGNTZDRDcwMEY1Q0YzNCAvKiBBdXRvV3JhcHBlci5q
cyAqLzsgfTsKKwkJRTkyRDExMUQyMEY3MDYwRTAwRDc3NkIyIC8qIEJsb2NrLmpzIGluIFJlc291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTRDMDZGQzIwRjU2Q0Ez
MDA2NzI5OTIgLyogQmxvY2suanMgKi87IH07CisJCUU5MkQxMTFFMjBGNzA2MEUwMEQ3NzZCMiAv
KiBCb29sTGl0ZXJhbC5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTk1NTY5QjEyMEY1NkNENjAwRjVDRjM0IC8qIEJvb2xMaXRlcmFsLmpzICovOyB9
OworCQlFOTJEMTExRjIwRjcwNjBFMDBENzc2QjIgLyogQnJlYWsuanMgaW4gUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUIwMjBGNTZDRDYwMEY1Q0Yz
NCAvKiBCcmVhay5qcyAqLzsgfTsKKwkJRTkyRDExMjAyMEY3MDYwRTAwRDc3NkIyIC8qIENhbGxF
eHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFOTU1NjlCRjIwRjU2Q0Q3MDBGNUNGMzQgLyogQ2FsbEV4cHJlc3Npb24uanMgKi87IH07
CisJCUU5MkQxMTIxMjBGNzA2MEUwMEQ3NzZCMiAvKiBDYWxsRnVuY3Rpb24uanMgaW4gUmVzb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUMwMjBGNTZDRDcw
MEY1Q0YzNCAvKiBDYWxsRnVuY3Rpb24uanMgKi87IH07CisJCUU5MkQxMTIyMjBGNzA2MEUwMEQ3
NzZCMiAvKiBDaGVjay5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTk1NTY5QjgyMEY1NkNENjAwRjVDRjM0IC8qIENoZWNrLmpzICovOyB9OworCQlF
OTJEMTEyMzIwRjcwNjBFMDBENzc2QjIgLyogQ2hlY2tlci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk1NTY5QzEyMEY1NkNENzAwRjVDRjM0IC8q
IENoZWNrZXIuanMgKi87IH07CisJCUU5MkQxMTI0MjBGNzA2MEUwMEQ3NzZCMiAvKiBDaGVja0xp
dGVyYWxUeXBlcy5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTk1NTY5QjYyMEY1NkNENjAwRjVDRjM0IC8qIENoZWNrTGl0ZXJhbFR5cGVzLmpzICov
OyB9OworCQlFOTJEMTEyNTIwRjcwNjBFMDBENzc2QjIgLyogQ2hlY2tMb29wcy5qcyBpbiBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk1NTY5QjMyMEY1NkNE
NjAwRjVDRjM0IC8qIENoZWNrTG9vcHMuanMgKi87IH07CisJCUU5MkQxMTI2MjBGNzA2MEUwMEQ3
NzZCMiAvKiBDaGVja1JlY3Vyc2lvbi5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTk0QzA2RkEyMEY1NkNBMzAwNjcyOTkyIC8qIENoZWNrUmVjdXJz
aW9uLmpzICovOyB9OworCQlFOTJEMTEyNzIwRjcwNjBFMDBENzc2QjIgLyogQ2hlY2tSZWN1cnNp
dmVUeXBlcy5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTk1NTY5QkIyMEY1NkNENjAwRjVDRjM0IC8qIENoZWNrUmVjdXJzaXZlVHlwZXMuanMgKi87
IH07CisJCUU5MkQxMTI4MjBGNzA2MEUwMEQ3NzZCMiAvKiBDaGVja1JldHVybnMuanMgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUIyMjBGNTZD
RDYwMEY1Q0YzNCAvKiBDaGVja1JldHVybnMuanMgKi87IH07CisJCUU5MkQxMTI5MjBGNzA2MEUw
MEQ3NzZCMiAvKiBDaGVja1VucmVhY2hhYmxlQ29kZS5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk1NTY5QjcyMEY1NkNENjAwRjVDRjM0IC8qIENo
ZWNrVW5yZWFjaGFibGVDb2RlLmpzICovOyB9OworCQlFOTJEMTEyQTIwRjcwNjBFMDBENzc2QjIg
LyogQ2hlY2tXcmFwcGVkLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFOTU1NjlENDIwRjU2Q0VEMDBGNUNGMzQgLyogQ2hlY2tXcmFwcGVkLmpzICov
OyB9OworCQlFOTJEMTEyQjIwRjcwNjBFMDBENzc2QjIgLyogQ2xvbmVQcm9ncmFtLmpzIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTU1NjlEQjIwRjU2
Q0VFMDBGNUNGMzQgLyogQ2xvbmVQcm9ncmFtLmpzICovOyB9OworCQlFOTJEMTEyQzIwRjcwNjBF
MDBENzc2QjIgLyogQ29tbWFFeHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTU1NjlEQzIwRjU2Q0VFMDBGNUNGMzQgLyogQ29tbWFF
eHByZXNzaW9uLmpzICovOyB9OworCQlFOTJEMTEyRTIwRjcwNjBFMDBENzc2QjIgLyogQ29uc3Rl
eHByRm9sZGVyLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFOTU1NjlENTIwRjU2Q0VEMDBGNUNGMzQgLyogQ29uc3RleHByRm9sZGVyLmpzICovOyB9
OworCQlFOTJEMTEzMDIwRjcwNjBFMDBENzc2QjIgLyogQ29udGludWUuanMgaW4gUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUQ3MjBGNTZDRUQwMEY1
Q0YzNCAvKiBDb250aW51ZS5qcyAqLzsgfTsKKwkJRTkyRDExMzEyMEY3MDYwRTAwRDc3NkIyIC8q
IENvbnZlcnRQdHJUb0FycmF5UmVmRXhwcmVzc2lvbi5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk1NTY5RDkyMEY1NkNFRDAwRjVDRjM0IC8qIENv
bnZlcnRQdHJUb0FycmF5UmVmRXhwcmVzc2lvbi5qcyAqLzsgfTsKKwkJRTkyRDExMzIyMEY3MDYw
RTAwRDc3NkIyIC8qIENyZWF0ZUxpdGVyYWwuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUQ4MjBGNTZDRUQwMEY1Q0YzNCAvKiBDcmVhdGVM
aXRlcmFsLmpzICovOyB9OworCQlFOTJEMTEzMzIwRjcwNjBFMDBENzc2QjIgLyogQ3JlYXRlTGl0
ZXJhbFR5cGUuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEU5NTU2OUQ2MjBGNTZDRUQwMEY1Q0YzNCAvKiBDcmVhdGVMaXRlcmFsVHlwZS5qcyAqLzsg
fTsKKwkJRTkyRDExMzQyMEY3MDYwRTAwRDc3NkIyIC8qIERlcmVmZXJlbmNlRXhwcmVzc2lvbi5q
cyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk0QzA2
RjkyMEY1NkNBMzAwNjcyOTkyIC8qIERlcmVmZXJlbmNlRXhwcmVzc2lvbi5qcyAqLzsgfTsKKwkJ
RTkyRDExMzUyMEY3MDYwRTAwRDc3NkIyIC8qIERvdEV4cHJlc3Npb24uanMgaW4gUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5QUQwNzRCMjBGNTZENUIwMDdG
MjQ2NiAvKiBEb3RFeHByZXNzaW9uLmpzICovOyB9OworCQlFOTJEMTEzODIwRjcwNjBFMDBENzc2
QjIgLyogRG9XaGlsZUxvb3AuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEU5QUQwNzQ2MjBGNTZENUEwMDdGMjQ2NiAvKiBEb1doaWxlTG9vcC5qcyAq
LzsgfTsKKwkJRTkyRDExMzkyMEY3MDYwRTAwRDc3NkIyIC8qIEVBcnJheVJlZi5qcyBpbiBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTlBRDA3NDkyMEY1NkQ1
QTAwN0YyNDY2IC8qIEVBcnJheVJlZi5qcyAqLzsgfTsKKwkJRTkyRDExM0EyMEY3MDYwRTAwRDc3
NkIyIC8qIEVCdWZmZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU5QUQwNzQ4MjBGNTZENUEwMDdGMjQ2NiAvKiBFQnVmZmVyLmpzICovOyB9Owor
CQlFOTJEMTEzQjIwRjcwNjBFMDBENzc2QjIgLyogRUJ1ZmZlckJ1aWxkZXIuanMgaW4gUmVzb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5QUQwNzRBMjBGNTZENUIw
MDdGMjQ2NiAvKiBFQnVmZmVyQnVpbGRlci5qcyAqLzsgfTsKKwkJRTkyRDExM0MyMEY3MDYwRTAw
RDc3NkIyIC8qIEVudW1MaXRlcmFsLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFOTRDMDZGRDIwRjU2Q0EzMDA2NzI5OTIgLyogRW51bUxpdGVyYWwu
anMgKi87IH07CisJCUU5MkQxMTNEMjBGNzA2MEUwMEQ3NzZCMiAvKiBFbnVtTWVtYmVyLmpzIGlu
IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOUFEMDc1NTIw
RjU2RDY5MDA3RjI0NjYgLyogRW51bU1lbWJlci5qcyAqLzsgfTsKKwkJRTkyRDExM0UyMEY3MDYw
RTAwRDc3NkIyIC8qIEVudW1UeXBlLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFOUFEMDc1QTIwRjU2RDY5MDA3RjI0NjYgLyogRW51bVR5cGUuanMg
Ki87IH07CisJCUU5MkQxMTNGMjBGNzA2MEUwMEQ3NzZCMiAvKiBFUHRyLmpzIGluIFJlc291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTU1NjlFNzIwRjU2RDA1MDBG
NUNGMzQgLyogRVB0ci5qcyAqLzsgfTsKKwkJRTkyRDExNDAyMEY3MDYwRTAwRDc3NkIyIC8qIEV2
YWx1YXRpb25Db21tb24uanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU5QUQwNzUzMjBGNTZENjkwMDdGMjQ2NiAvKiBFdmFsdWF0aW9uQ29tbW9uLmpz
ICovOyB9OworCQlFOTJEMTE0MTIwRjcwNjBFMDBENzc2QjIgLyogRXZhbHVhdG9yLmpzIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOUFEMDc1NzIwRjU2
RDY5MDA3RjI0NjYgLyogRXZhbHVhdG9yLmpzICovOyB9OworCQlFOTJEMTE0MjIwRjcwNjBFMDBE
Nzc2QjIgLyogRXhwcmVzc2lvbi5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTlBRDA3NTQyMEY1NkQ2OTAwN0YyNDY2IC8qIEV4cHJlc3Npb24uanMg
Ki87IH07CisJCUU5MkQxMTQzMjBGNzA2MEUwMEQ3NzZCMiAvKiBFeHByZXNzaW9uRmluZGVyLmpz
IGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOUFEMDc1
OTIwRjU2RDY5MDA3RjI0NjYgLyogRXhwcmVzc2lvbkZpbmRlci5qcyAqLzsgfTsKKwkJRTkyRDEx
NDQyMEY3MDYwRTAwRDc3NkIyIC8qIEV4dGVybmFsT3JpZ2luLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOUFEMDc1QjIwRjU2RDY5MDA3RjI0NjYg
LyogRXh0ZXJuYWxPcmlnaW4uanMgKi87IH07CisJCUU5MkQxMTQ1MjBGNzA2MEUwMEQ3NzZCMiAv
KiBGaWVsZC5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTlGQ0VCNUIyMEY1NkQ5MzAwOUIzNjI5IC8qIEZpZWxkLmpzICovOyB9OworCQlFOTJEMTE0
NjIwRjcwNjBFMDBENzc2QjIgLyogRmluZEhpZ2hab21iaWVzLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOUFEMDc1ODIwRjU2RDY5MDA3RjI0NjYg
LyogRmluZEhpZ2hab21iaWVzLmpzICovOyB9OworCQlFOTJEMTE0NzIwRjcwNjBFMDBENzc2QjIg
LyogRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5QUQwNzU2MjBGNTZENjkwMDdGMjQ2NiAvKiBG
bGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5qcyAqLzsgfTsKKwkJRTkyRDExNDkyMEY3MDYw
RTAwRDc3NkIyIC8qIEZsb2F0TGl0ZXJhbC5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTlBRDA3NUMyMEY1NkQ2OTAwN0YyNDY2IC8qIEZsb2F0TGl0
ZXJhbC5qcyAqLzsgfTsKKwkJRTkyRDExNEEyMEY3MDYwRTAwRDc3NkIyIC8qIEZsb2F0TGl0ZXJh
bFR5cGUuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEU5NTU2OUVBMjBGNTZEMDUwMEY1Q0YzNCAvKiBGbG9hdExpdGVyYWxUeXBlLmpzICovOyB9Owor
CQlFOTJEMTE0QjIwRjcwNjBFMDBENzc2QjIgLyogRm9sZENvbnN0ZXhwcnMuanMgaW4gUmVzb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUVCMjBGNTZEMDUw
MEY1Q0YzNCAvKiBGb2xkQ29uc3RleHBycy5qcyAqLzsgfTsKKwkJRTkyRDExNEMyMEY3MDYwRTAw
RDc3NkIyIC8qIEZvckxvb3AuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEU5RkNFQjVBMjBGNTZEOTMwMDlCMzYyOSAvKiBGb3JMb29wLmpzICovOyB9
OworCQlFOTJEMTE0RDIwRjcwNjBFMDBENzc2QjIgLyogRnVuYy5qcyBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTlGQ0VCNTUyMEY1NkQ5MjAwOUIzNjI5
IC8qIEZ1bmMuanMgKi87IH07CisJCUU5MkQxMTRFMjBGNzA2MEUwMEQ3NzZCMiAvKiBGdW5jRGVm
LmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTU1
NjlFODIwRjU2RDA1MDBGNUNGMzQgLyogRnVuY0RlZi5qcyAqLzsgfTsKKwkJRTkyRDExNTAyMEY3
MDYwRTAwRDc3NkIyIC8qIEZ1bmNQYXJhbWV0ZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NTU2OUU5MjBGNTZEMDUwMEY1Q0YzNCAvKiBGdW5j
UGFyYW1ldGVyLmpzICovOyB9OworCQlFOTJEMTE1MTIwRjcwNjBFMDBENzc2QjIgLyogRnVuY3Rp
b25MaWtlQmxvY2suanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU5NTU2OUU2MjBGNTZEMDUwMEY1Q0YzNCAvKiBGdW5jdGlvbkxpa2VCbG9jay5qcyAq
LzsgfTsKKwkJRTkyRDExNTIyMEY3MDYwRTAwRDc3NkIyIC8qIEhpZ2hab21iaWVGaW5kZXIuanMg
aW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5NEMwNkZC
MjBGNTZDQTMwMDY3Mjk5MiAvKiBIaWdoWm9tYmllRmluZGVyLmpzICovOyB9OworCQlFOTJEMTE1
MzIwRjcwNjBFMDBENzc2QjIgLyogSWRlbnRpdHlFeHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOUZDRUI1ODIwRjU2RDkzMDA5QjM2
MjkgLyogSWRlbnRpdHlFeHByZXNzaW9uLmpzICovOyB9OworCQlFOTJEMTE1NDIwRjcwNjBFMDBE
Nzc2QjIgLyogSWZTdGF0ZW1lbnQuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEU5RkNFQjU3MjBGNTZEOTMwMDlCMzYyOSAvKiBJZlN0YXRlbWVudC5q
cyAqLzsgfTsKKwkJRTkyRDExNTUyMEY3MDYwRTAwRDc3NkIyIC8qIEluZGV4RXhwcmVzc2lvbi5q
cyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTlGQ0VC
NjMyMEY1NkRBNDAwOUIzNjI5IC8qIEluZGV4RXhwcmVzc2lvbi5qcyAqLzsgfTsKKwkJRTkyRDEx
NTYyMEY3MDYwRTAwRDc3NkIyIC8qIEluZmVyVHlwZXNGb3JDYWxsLmpzIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOUZDRUI2NTIwRjU2REE1MDA5QjM2
MjkgLyogSW5mZXJUeXBlc0ZvckNhbGwuanMgKi87IH07CisJCUU5MkQxMTU3MjBGNzA2MEUwMEQ3
NzZCMiAvKiBJbmxpbmUuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU5RkNFQjY2MjBGNTZEQTUwMDlCMzYyOSAvKiBJbmxpbmUuanMgKi87IH07CisJ
CUU5MkQxMTU4MjBGNzA2MEUwMEQ3NzZCMiAvKiBJbmxpbmVyLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMEZFODIwRjU2REREMDBENzc2QjIg
LyogSW5saW5lci5qcyAqLzsgfTsKKwkJRTkyRDExNUEyMEY3MDYwRTAwRDc3NkIyIC8qIEludExp
dGVyYWwuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEU5MkQwRkU0MjBGNTZEREQwMEQ3NzZCMiAvKiBJbnRMaXRlcmFsLmpzICovOyB9OworCQlFOTJE
MTE1QjIwRjcwNjBFMDBENzc2QjIgLyogSW50TGl0ZXJhbFR5cGUuanMgaW4gUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQwRkU1MjBGNTZEREQwMEQ3NzZC
MiAvKiBJbnRMaXRlcmFsVHlwZS5qcyAqLzsgfTsKKwkJRTkyRDExNUMyMEY3MDYwRTAwRDc3NkIy
IC8qIEludHJpbnNpY3MuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU5MkQwRkU3MjBGNTZEREQwMEQ3NzZCMiAvKiBJbnRyaW5zaWNzLmpzICovOyB9
OworCQlFOTJEMTE1RDIwRjcwNjBFMDBENzc2QjIgLyogTGF0ZUNoZWNrZXIuanMgaW4gUmVzb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5RkNFQjY0MjBGNTZEQTUw
MDlCMzYyOSAvKiBMYXRlQ2hlY2tlci5qcyAqLzsgfTsKKwkJRTkyRDExNUUyMEY3MDYwRTAwRDc3
NkIyIC8qIExleGVyLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFOTJEMEZGMTIwRjU2REVDMDBENzc2QjIgLyogTGV4ZXIuanMgKi87IH07CisJCUU5
MkQxMTVGMjBGNzA2MEUwMEQ3NzZCMiAvKiBMZXhlclRva2VuLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMEZGMDIwRjU2REVCMDBENzc2QjIg
LyogTGV4ZXJUb2tlbi5qcyAqLzsgfTsKKwkJRTkyRDExNjAyMEY3MDYwRTAwRDc3NkIyIC8qIExp
dGVyYWxUeXBlQ2hlY2tlci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTkyRDBGRjIyMEY1NkRFQzAwRDc3NkIyIC8qIExpdGVyYWxUeXBlQ2hlY2tl
ci5qcyAqLzsgfTsKKwkJRTkyRDExNjEyMEY3MDYwRTAwRDc3NkIyIC8qIExvZ2ljYWxFeHByZXNz
aW9uLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
OTJEMEZFRTIwRjU2REVCMDBENzc2QjIgLyogTG9naWNhbEV4cHJlc3Npb24uanMgKi87IH07CisJ
CUU5MkQxMTYyMjBGNzA2MEUwMEQ3NzZCMiAvKiBMb2dpY2FsTm90LmpzIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMEZFRjIwRjU2REVCMDBENzc2
QjIgLyogTG9naWNhbE5vdC5qcyAqLzsgfTsKKwkJRTkyRDExNjMyMEY3MDYwRTAwRDc3NkIyIC8q
IExvb3BDaGVja2VyLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFOTJEMEZGQjIwRjU2REZCMDBENzc2QjIgLyogTG9vcENoZWNrZXIuanMgKi87IH07
CisJCUU5MkQxMTY0MjBGNzA2MEUwMEQ3NzZCMiAvKiBNYWtlQXJyYXlSZWZFeHByZXNzaW9uLmpz
IGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMEZG
QzIwRjU2REZCMDBENzc2QjIgLyogTWFrZUFycmF5UmVmRXhwcmVzc2lvbi5qcyAqLzsgfTsKKwkJ
RTkyRDExNjUyMEY3MDYwRTAwRDc3NkIyIC8qIE1ha2VQdHJFeHByZXNzaW9uLmpzIGluIFJlc291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMEZGOTIwRjU2REZB
MDBENzc2QjIgLyogTWFrZVB0ckV4cHJlc3Npb24uanMgKi87IH07CisJCUU5MkQxMTY2MjBGNzA2
MEUwMEQ3NzZCMiAvKiBOYW1lQ29udGV4dC5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDBGRjgyMEY1NkRGQTAwRDc3NkIyIC8qIE5hbWVDb250
ZXh0LmpzICovOyB9OworCQlFOTJEMTE2NzIwRjcwNjBFMDBENzc2QjIgLyogTmFtZUZpbmRlci5q
cyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDBG
RkEyMEY1NkRGQjAwRDc3NkIyIC8qIE5hbWVGaW5kZXIuanMgKi87IH07CisJCUU5MkQxMTY4MjBG
NzA2MEUwMEQ3NzZCMiAvKiBOYW1lUmVzb2x2ZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDAzMjBGNTZFMDkwMEQ3NzZCMiAvKiBOYW1l
UmVzb2x2ZXIuanMgKi87IH07CisJCUU5MkQxMTY5MjBGNzA2MEUwMEQ3NzZCMiAvKiBOYXRpdmVG
dW5jLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
OTJEMTAwNTIwRjU2RTA5MDBENzc2QjIgLyogTmF0aXZlRnVuYy5qcyAqLzsgfTsKKwkJRTkyRDEx
NkIyMEY3MDYwRTAwRDc3NkIyIC8qIE5hdGl2ZVR5cGUuanMgaW4gUmVzb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDA2MjBGNTZFMDkwMEQ3NzZCMiAvKiBO
YXRpdmVUeXBlLmpzICovOyB9OworCQlFOTJEMTE2RDIwRjcwNjBFMDBENzc2QjIgLyogTm9kZS5q
cyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEw
MEYyMEY1NkUxNTAwRDc3NkIyIC8qIE5vZGUuanMgKi87IH07CisJCUU5MkQxMTZFMjBGNzA2MEUw
MEQ3NzZCMiAvKiBOb3JtYWxVc2VQcm9wZXJ0eVJlc29sdmVyLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTAwRDIwRjU2RTE1MDBENzc2QjIg
LyogTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5qcyAqLzsgfTsKKwkJRTkyRDExNkYyMEY3MDYw
RTAwRDc3NkIyIC8qIE51bGxMaXRlcmFsLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTAwQzIwRjU2RTE1MDBENzc2QjIgLyogTnVsbExpdGVy
YWwuanMgKi87IH07CisJCUU5MkQxMTcwMjBGNzA2MEUwMEQ3NzZCMiAvKiBOdWxsVHlwZS5qcyBp
biBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwMTAy
MEY1NkUxNTAwRDc3NkIyIC8qIE51bGxUeXBlLmpzICovOyB9OworCQlFOTJEMTE3MTIwRjcwNjBF
MDBENzc2QjIgLyogT3JpZ2luS2luZC5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwMEUyMEY1NkUxNTAwRDc3NkIyIC8qIE9yaWdpbktpbmQu
anMgKi87IH07CisJCUU5MkQxMTcyMjBGNzA2MEUwMEQ3NzZCMiAvKiBPdmVybG9hZFJlc29sdXRp
b25GYWlsdXJlLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFOTJEMTAxOTIwRjU2RTIyMDBENzc2QjIgLyogT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVy
ZS5qcyAqLzsgfTsKKwkJRTkyRDExNzMyMEY3MDYwRTAwRDc3NkIyIC8qIFBhcnNlLmpzIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTAxNzIwRjU2
RTIyMDBENzc2QjIgLyogUGFyc2UuanMgKi87IH07CisJCUU5MkQxMTc0MjBGNzA2MEUwMEQ3NzZC
MiAvKiBQcmVwYXJlLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFOTJEMTAxODIwRjU2RTIyMDBENzc2QjIgLyogUHJlcGFyZS5qcyAqLzsgfTsKKwkJ
RTkyRDExNzUyMEY3MDYwRTAwRDc3NkIyIC8qIFByb2dyYW0uanMgaW4gUmVzb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDFBMjBGNTZFMjIwMEQ3NzZCMiAv
KiBQcm9ncmFtLmpzICovOyB9OworCQlFOTJEMTE3NjIwRjcwNjBFMDBENzc2QjIgLyogUHJvZ3Jh
bVdpdGhVbm5lY2Vzc2FyeVRoaW5nc1JlbW92ZWQuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDE2MjBGNTZFMjEwMEQ3NzZCMiAvKiBQcm9n
cmFtV2l0aFVubmVjZXNzYXJ5VGhpbmdzUmVtb3ZlZC5qcyAqLzsgfTsKKwkJRTkyRDExNzcyMEY3
MDYwRTAwRDc3NkIyIC8qIFByb3BlcnR5QWNjZXNzRXhwcmVzc2lvbi5qcyBpbiBSZXNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwMjMyMEY1NkUyRjAwRDc3
NkIyIC8qIFByb3BlcnR5QWNjZXNzRXhwcmVzc2lvbi5qcyAqLzsgfTsKKwkJRTkyRDExNzgyMEY3
MDYwRTAwRDc3NkIyIC8qIFByb3BlcnR5UmVzb2x2ZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDIwMjBGNTZFMkYwMEQ3NzZCMiAvKiBQ
cm9wZXJ0eVJlc29sdmVyLmpzICovOyB9OworCQlFOTJEMTE3RDIwRjcwNjBFMDBENzc2QjIgLyog
UHRyVHlwZS5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTkyRDEwMkIyMEY1NkUzRjAwRDc3NkIyIC8qIFB0clR5cGUuanMgKi87IH07CisJCUU5MkQx
MTdFMjBGNzA2MEUwMEQ3NzZCMiAvKiBSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTAyQTIwRjU2
RTNGMDBENzc2QjIgLyogUmVhZE1vZGlmeVdyaXRlRXhwcmVzc2lvbi5qcyAqLzsgfTsKKwkJRTky
RDExN0YyMEY3MDYwRTAwRDc3NkIyIC8qIFJlY3Vyc2lvbkNoZWNrZXIuanMgaW4gUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDJDMjBGNTZFM0YwMEQ3
NzZCMiAvKiBSZWN1cnNpb25DaGVja2VyLmpzICovOyB9OworCQlFOTJEMTE4MDIwRjcwNjBFMDBE
Nzc2QjIgLyogUmVjdXJzaXZlVHlwZUNoZWNrZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDJFMjBGNTZFNDAwMEQ3NzZCMiAvKiBSZWN1
cnNpdmVUeXBlQ2hlY2tlci5qcyAqLzsgfTsKKwkJRTkyRDExODEyMEY3MDYwRTAwRDc3NkIyIC8q
IFJlZmVyZW5jZVR5cGUuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU5MkQxMDM1MjBGNTZFNEYwMEQ3NzZCMiAvKiBSZWZlcmVuY2VUeXBlLmpzICov
OyB9OworCQlFOTJEMTE4MjIwRjcwNjBFMDBENzc2QjIgLyogUmVzb2x2ZU5hbWVzLmpzIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTAzNDIwRjU2
RTRGMDBENzc2QjIgLyogUmVzb2x2ZU5hbWVzLmpzICovOyB9OworCQlFOTJEMTE4MzIwRjcwNjBF
MDBENzc2QjIgLyogUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwMzgyMEY1NkU0RjAwRDc3NkIyIC8qIFJl
c29sdmVPdmVybG9hZEltcGwuanMgKi87IH07CisJCUU5MkQxMTg0MjBGNzA2MEUwMEQ3NzZCMiAv
KiBSZXNvbHZlUHJvcGVydGllcy5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTkyRDEwMzYyMEY1NkU0RjAwRDc3NkIyIC8qIFJlc29sdmVQcm9wZXJ0
aWVzLmpzICovOyB9OworCQlFOTJEMTE4NTIwRjcwNjBFMDBENzc2QjIgLyogUmVzb2x2ZVR5cGVE
ZWZzLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
OTJEMTAzNzIwRjU2RTRGMDBENzc2QjIgLyogUmVzb2x2ZVR5cGVEZWZzLmpzICovOyB9OworCQlF
OTJEMTE4NjIwRjcwNjBFMDBENzc2QjIgLyogUmV0dXJuLmpzIGluIFJlc291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTAzRTIwRjU2RTYxMDBENzc2QjIgLyog
UmV0dXJuLmpzICovOyB9OworCQlFOTJEMTE4NzIwRjcwNjBFMDBENzc2QjIgLyogUmV0dXJuQ2hl
Y2tlci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTkyRDEwNDAyMEY1NkU2MjAwRDc3NkIyIC8qIFJldHVybkNoZWNrZXIuanMgKi87IH07CisJCUU5
MkQxMTg4MjBGNzA2MEUwMEQ3NzZCMiAvKiBSZXR1cm5FeGNlcHRpb24uanMgaW4gUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDQyMjBGNTZFNjIwMEQ3
NzZCMiAvKiBSZXR1cm5FeGNlcHRpb24uanMgKi87IH07CisJCUU5MkQxMTg5MjBGNzA2MEUwMEQ3
NzZCMiAvKiBSZXdyaXRlci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTkyRDEwNDEyMEY1NkU2MjAwRDc3NkIyIC8qIFJld3JpdGVyLmpzICovOyB9
OworCQlFOTJEMTE4QTIwRjcwNjBFMDBENzc2QjIgLyogU3RhbmRhcmRMaWJyYXJ5LmpzIGluIFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTAzRjIwRjU2
RTYyMDBENzc2QjIgLyogU3RhbmRhcmRMaWJyYXJ5LmpzICovOyB9OworCQlFOTJEMTE4QjIwRjcw
NjBFMDBENzc2QjIgLyogU3RhdGVtZW50Q2xvbmVyLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTA0ODIwRjU2RTczMDBENzc2QjIgLyogU3Rh
dGVtZW50Q2xvbmVyLmpzICovOyB9OworCQlFOTJEMTE4QzIwRjcwNjBFMDBENzc2QjIgLyogU3Ry
dWN0TGF5b3V0QnVpbGRlci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTkyRDEwNDkyMEY1NkU3MzAwRDc3NkIyIC8qIFN0cnVjdExheW91dEJ1aWxk
ZXIuanMgKi87IH07CisJCUU5MkQxMThEMjBGNzA2MEUwMEQ3NzZCMiAvKiBTdHJ1Y3RUeXBlLmpz
IGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTA0
QTIwRjU2RTczMDBENzc2QjIgLyogU3RydWN0VHlwZS5qcyAqLzsgfTsKKwkJRTkyRDExOEYyMEY3
MDYwRTAwRDc3NkIyIC8qIFN3aXRjaENhc2UuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDRCMjBGNTZFNzMwMEQ3NzZCMiAvKiBTd2l0Y2hD
YXNlLmpzICovOyB9OworCQlFOTJEMTE5MDIwRjcwNjBFMDBENzc2QjIgLyogU3dpdGNoU3RhdGVt
ZW50LmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
OTJEMTA1MjIwRjU2RTg0MDBENzc2QjIgLyogU3dpdGNoU3RhdGVtZW50LmpzICovOyB9OworCQlF
OTJEMTE5MTIwRjcwNjBFMDBENzc2QjIgLyogU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMgaW4g
UmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDU0MjBG
NTZFODUwMEQ3NzZCMiAvKiBTeW50aGVzaXplRW51bUZ1bmN0aW9ucy5qcyAqLzsgfTsKKwkJRTky
RDExOTIyMEY3MDYwRTAwRDc3NkIyIC8qIFN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMuanMgaW4g
UmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDUzMjBG
NTZFODQwMEQ3NzZCMiAvKiBTeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzICovOyB9OworCQlF
OTJEMTE5MzIwRjcwNjBFMDBENzc2QjIgLyogVHJhcFN0YXRlbWVudC5qcyBpbiBSZXNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwNTYyMEY1NkU4NTAwRDc3
NkIyIC8qIFRyYXBTdGF0ZW1lbnQuanMgKi87IH07CisJCUU5MkQxMTk0MjBGNzA2MEUwMEQ3NzZC
MiAvKiBUeXBlLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFOTJEMTA1NTIwRjU2RTg1MDBENzc2QjIgLyogVHlwZS5qcyAqLzsgfTsKKwkJRTkyRDEx
OTUyMEY3MDYwRTAwRDc3NkIyIC8qIFR5cGVEZWYuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDVGMjBGNTZFOTUwMEQ3NzZCMiAvKiBUeXBl
RGVmLmpzICovOyB9OworCQlFOTJEMTE5NjIwRjcwNjBFMDBENzc2QjIgLyogVHlwZURlZlJlc29s
dmVyLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
OTJEMTA1RTIwRjU2RTk1MDBENzc2QjIgLyogVHlwZURlZlJlc29sdmVyLmpzICovOyB9OworCQlF
OTJEMTE5NzIwRjcwNjBFMDBENzc2QjIgLyogVHlwZWRWYWx1ZS5qcyBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwNjAyMEY1NkU5NTAwRDc3NkIy
IC8qIFR5cGVkVmFsdWUuanMgKi87IH07CisJCUU5MkQxMTlBMjBGNzA2MEUwMEQ3NzZCMiAvKiBU
eXBlUmVmLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFOTJEMTA2NjIwRjU2RUE0MDBENzc2QjIgLyogVHlwZVJlZi5qcyAqLzsgfTsKKwkJRTkyRDEx
OUQyMEY3MDYwRTAwRDc3NkIyIC8qIFVpbnRMaXRlcmFsLmpzIGluIFJlc291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTA2ODIwRjU2RUE0MDBENzc2QjIgLyog
VWludExpdGVyYWwuanMgKi87IH07CisJCUU5MkQxMTlFMjBGNzA2MEUwMEQ3NzZCMiAvKiBVaW50
TGl0ZXJhbFR5cGUuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU5MkQxMDY3MjBGNTZFQTQwMEQ3NzZCMiAvKiBVaW50TGl0ZXJhbFR5cGUuanMgKi87
IH07CisJCUU5MkQxMTlGMjBGNzA2MEUwMEQ3NzZCMiAvKiBVbmlmaWNhdGlvbkNvbnRleHQuanMg
aW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDcy
MjBGNTZFQkIwMEQ3NzZCMiAvKiBVbmlmaWNhdGlvbkNvbnRleHQuanMgKi87IH07CisJCUU5MkQx
MUEwMjBGNzA2MEUwMEQ3NzZCMiAvKiBVbnJlYWNoYWJsZUNvZGVDaGVja2VyLmpzIGluIFJlc291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTA3MzIwRjU2RUJD
MDBENzc2QjIgLyogVW5yZWFjaGFibGVDb2RlQ2hlY2tlci5qcyAqLzsgfTsKKwkJRTkyRDExQTEy
MEY3MDYwRTAwRDc3NkIyIC8qIFZhbHVlLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTA3NDIwRjU2RUJDMDBENzc2QjIgLyogVmFsdWUuanMg
Ki87IH07CisJCUU5MkQxMUEyMjBGNzA2MEUwMEQ3NzZCMiAvKiBWYXJpYWJsZURlY2wuanMgaW4g
UmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDcwMjBG
NTZFQkIwMEQ3NzZCMiAvKiBWYXJpYWJsZURlY2wuanMgKi87IH07CisJCUU5MkQxMUEzMjBGNzA2
MEUwMEQ3NzZCMiAvKiBWYXJpYWJsZVJlZi5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEwNzEyMEY1NkVCQjAwRDc3NkIyIC8qIFZhcmlhYmxl
UmVmLmpzICovOyB9OworCQlFOTJEMTFBNDIwRjcwNjBFMDBENzc2QjIgLyogVmlzaXRpbmdTZXQu
anMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQx
MDdDMjBGNTZFQ0YwMEQ3NzZCMiAvKiBWaXNpdGluZ1NldC5qcyAqLzsgfTsKKwkJRTkyRDExQTUy
MEY3MDYwRTAwRDc3NkIyIC8qIFZpc2l0b3IuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDdBMjBGNTZFQ0YwMEQ3NzZCMiAvKiBWaXNpdG9y
LmpzICovOyB9OworCQlFOTJEMTFBNjIwRjcwNjBFMDBENzc2QjIgLyogV2hpbGVMb29wLmpzIGlu
IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJEMTA3RDIw
RjU2RUNGMDBENzc2QjIgLyogV2hpbGVMb29wLmpzICovOyB9OworCQlFOTJEMTFBNzIwRjcwNjBF
MDBENzc2QjIgLyogV3JhcENoZWNrZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDdCMjBGNTZFQ0YwMEQ3NzZCMiAvKiBXcmFwQ2hlY2tl
ci5qcyAqLzsgfTsKKwkJRTkyRDExQTgyMEY3MDYwRTAwRDc3NkIyIC8qIFdTeW50YXhFcnJvci5q
cyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDEw
ODIyMEY1NkVERTAwRDc3NkIyIC8qIFdTeW50YXhFcnJvci5qcyAqLzsgfTsKKwkJRTkyRDExQTky
MEY3MDYwRTAwRDc3NkIyIC8qIFdUcmFwRXJyb3IuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkQxMDg0MjBGNTZFREUwMEQ3NzZCMiAvKiBXVHJh
cEVycm9yLmpzICovOyB9OworCQlFOTJEMTFBQTIwRjcwNjBFMDBENzc2QjIgLyogV1R5cGVFcnJv
ci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTky
RDEwODMyMEY1NkVERTAwRDc3NkIyIC8qIFdUeXBlRXJyb3IuanMgKi87IH07CisJCUU5MkQxMUFE
MjBGNzA4MTUwMEQ3NzZCMiAvKiBPZmZzY3JlZW5SZW5kZXJlci5tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRDExQUMyMEY3MDgxNTAwRDc3NkIyIC8q
IE9mZnNjcmVlblJlbmRlcmVyLm0gKi87IH07CisJCUU5MkQxMUJCMjBGN0Y2NzMwMEQ3NzZCMiAv
KiBDb21waWxlUmVzdWx0Lm0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFOTJEMTFCQTIwRjdGNjczMDBENzc2QjIgLyogQ29tcGlsZVJlc3VsdC5tICovOyB9
OworCQlFOTJFREZGQjIxMTU0NkE0MDA0MkY5NjAgLyogQ3VzdG9tTWV0YWxWaWV3Lm0gaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTJFREZGNjIxMTU0NkE0
MDA0MkY5NjAgLyogQ3VzdG9tTWV0YWxWaWV3Lm0gKi87IH07CisJCUU5MkVERkZDMjExNTQ2QTQw
MDQyRjk2MCAvKiBBcHBEZWxlZ2F0ZS5tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTkyRURGRjcyMTE1NDZBNDAwNDJGOTYwIC8qIEFwcERlbGVnYXRlLm0g
Ki87IH07CisJCUU5MkVERkZEMjExNTQ2QTQwMDQyRjk2MCAvKiBWaWV3Q29udHJvbGxlci5tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRURGRkEyMTE1
NDZBNDAwNDJGOTYwIC8qIFZpZXdDb250cm9sbGVyLm0gKi87IH07CisJCUU5MkVFMDAwMjExNTQ2
QUIwMDQyRjk2MCAvKiBNYWluLnN0b3J5Ym9hcmQgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5MkVERkZFMjExNTQ2QUIwMDQyRjk2MCAvKiBNYWluLnN0
b3J5Ym9hcmQgKi87IH07CisJCUU5MkVFMDA0MjExNTQ5QzUwMDQyRjk2MCAvKiBUZXN0Q2FsbEFy
Z3VtZW50Lm0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
OTJFRTAwMzIxMTU0OUM1MDA0MkY5NjAgLyogVGVzdENhbGxBcmd1bWVudC5tICovOyB9OworCQlF
OTJFRTAwNzIxMTU0QUM0MDA0MkY5NjAgLyogVGVzdEZhbWlseS5tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRUUwMDYyMTE1NEFDNDAwNDJGOTYwIC8q
IFRlc3RGYW1pbHkubSAqLzsgfTsKKwkJRTkyRUUwMEEyMTE1NEI1QTAwNDJGOTYwIC8qIFRlc3RE
ZXNjcmlwdGlvbi5tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTkyRUUwMDkyMTE1NEI1QTAwNDJGOTYwIC8qIFRlc3REZXNjcmlwdGlvbi5tICovOyB9Owor
CQlFOTJFRTAwQzIxMTU1NDk4MDA0MkY5NjAgLyogX1NoYXJlZE1ldGFsLnR4dCBpbiBSZXNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyRUUwMEIyMTE1NTQ5ODAw
NDJGOTYwIC8qIF9TaGFyZWRNZXRhbC50eHQgKi87IH07CisJCUU5MkVFMDBGMjExNTYzMzAwMDQy
Rjk2MCAvKiBUZXN0RmFtaWx5UnVubmVyLm0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFOTJFRTAwRTIxMTU2MzMwMDA0MkY5NjAgLyogVGVzdEZhbWlseVJ1
bm5lci5tICovOyB9OworCQlFOTQxQUNCRjIxMzRBNUJDMDAzOTJCQTkgLyogQ2hlY2tUeXBlc1dp
dGhBcmd1bWVudHMuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU5NDFBQ0FFMjEzNEE1QkEwMDM5MkJBOSAvKiBDaGVja1R5cGVzV2l0aEFyZ3VtZW50
cy5qcyAqLzsgfTsKKwkJRTk0MUFDQzAyMTM0QTVCQzAwMzkyQkE5IC8qIFN5bnRoZXNpemVDb3B5
Q29uc3RydWN0b3JPcGVyYXRvci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTk0MUFDQUYyMTM0QTVCQTAwMzkyQkE5IC8qIFN5bnRoZXNpemVDb3B5
Q29uc3RydWN0b3JPcGVyYXRvci5qcyAqLzsgfTsKKwkJRTk0MUFDQzQyMTM0QTVCQzAwMzkyQkE5
IC8qIFN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyBpbiBSZXNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk0MUFDQjMyMTM0QTVCQjAwMzky
QkE5IC8qIFN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyAqLzsgfTsKKwkJ
RTk0MUFDQzYyMTM0QTVCQzAwMzkyQkE5IC8qIFRlcm5hcnlFeHByZXNzaW9uLmpzIGluIFJlc291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTQxQUNCNTIxMzRBNUJC
MDAzOTJCQTkgLyogVGVybmFyeUV4cHJlc3Npb24uanMgKi87IH07CisJCUU5NDFBQ0M3MjEzNEE1
QkMwMDM5MkJBOSAvKiBPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTQxQUNCNjIxMzRBNUJCMDAzOTJCQTkg
LyogT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyAqLzsgfTsKKwkJRTk0MUFDQzgyMTM0QTVCQzAw
MzkyQkE5IC8qIFN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTQxQUNCNzIxMzRBNUJCMDAzOTJC
QTkgLyogU3ludGhlc2l6ZUFycmF5T3BlcmF0b3JMZW5ndGguanMgKi87IH07CisJCUU5NDFBQ0NB
MjEzNEE1QkMwMDM5MkJBOSAvKiBCdWlsdGluVmVjdG9yR2V0dGVyLmpzIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTQxQUNCOTIxMzRBNUJCMDAzOTJC
QTkgLyogQnVpbHRpblZlY3RvckdldHRlci5qcyAqLzsgfTsKKwkJRTk0MUFDQ0IyMTM0QTVCQzAw
MzkyQkE5IC8qIFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTQxQUNCQTIxMzRBNUJCMDAzOTJC
QTkgLyogVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMgKi87IH07CisJCUU5NDFBQ0ND
MjEzNEE1QkMwMDM5MkJBOSAvKiBWZWN0b3JUeXBlLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTQxQUNCQjIxMzRBNUJCMDAzOTJCQTkgLyogVmVj
dG9yVHlwZS5qcyAqLzsgfTsKKwkJRTk0MUFDQ0QyMTM0QTVCQzAwMzkyQkE5IC8qIEJ1aWx0aW5W
ZWN0b3JTZXR0ZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU5NDFBQ0JDMjEzNEE1QkIwMDM5MkJBOSAvKiBCdWlsdGluVmVjdG9yU2V0dGVyLmpz
ICovOyB9OworCQlFOTRDMDZDQTIwRjU2QTQyMDA2NzI5OTIgLyogQXNzZXRzLnhjYXNzZXRzIGlu
IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTRDMDZDOTIw
RjU2QTQyMDA2NzI5OTIgLyogQXNzZXRzLnhjYXNzZXRzICovOyB9OworCQlFOTRDMDZEMDIwRjU2
QTQyMDA2NzI5OTIgLyogbWFpbi5tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTk0QzA2Q0YyMEY1NkE0MjAwNjcyOTkyIC8qIG1haW4ubSAqLzsgfTsKKwkJ
RTk0QzA2REIyMEY1NkE0MjAwNjcyOTkyIC8qIFdITFNMX1RveVRlc3RzLm0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTRDMDZEQTIwRjU2QTQyMDA2NzI5
OTIgLyogV0hMU0xfVG95VGVzdHMubSAqLzsgfTsKKwkJRTk0RDEyNEYyMTE0QkQ3NjAwQjBGOTY3
IC8qIE1hbmRlbGJyb3Qud2hsc2wgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEU5NEQxMjRFMjExNEJENzYwMEIwRjk2NyAvKiBNYW5kZWxicm90LndobHNs
ICovOyB9OworCQlFOTREMTI3RjIxMTRDNkZGMDBCMEY5NjcgLyogVGVzdC5qcyBpbiBSZXNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk0RDEyN0UyMTE0QzZGRjAw
QjBGOTY3IC8qIFRlc3QuanMgKi87IH07CisJCUU5NzNFNUNFMjEzRjMzODUwMDVENzlGQyAvKiBN
U0xGdW5jdGlvbkZvcndhcmREZWNsYXJhdGlvbi5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk3M0U1QzcyMTNGMzM4NTAwNUQ3OUZDIC8qIE1TTEZ1
bmN0aW9uRm9yd2FyZERlY2xhcmF0aW9uLmpzICovOyB9OworCQlFOTczRTVDRjIxM0YzMzg1MDA1
RDc5RkMgLyogTVNMU3RhdGVtZW50RW1pdHRlci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk3M0U1QzgyMTNGMzM4NTAwNUQ3OUZDIC8qIE1TTFN0
YXRlbWVudEVtaXR0ZXIuanMgKi87IH07CisJCUU5NzNFNURFMjEzRjM0MUQwMDVENzlGQyAvKiBN
U0xGdW5jdGlvbkRlY2xhcmF0aW9uLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFOTI3ODlBQzIxM0YzMzY0MDAxRUE3M0UgLyogTVNMRnVuY3Rpb25E
ZWNsYXJhdGlvbi5qcyAqLzsgfTsKKwkJRTk3M0U1REYyMTNGMzQxRDAwNUQ3OUZDIC8qIE1TTEZ1
bmN0aW9uRGVmaW5pdGlvbi5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTkyNzg5QUIyMTNGMzM2NDAwMUVBNzNFIC8qIE1TTEZ1bmN0aW9uRGVmaW5p
dGlvbi5qcyAqLzsgfTsKKwkJRTk3M0U1RTMyMTNGMzQxRDAwNUQ3OUZDIC8qIFR5cGVPZi5qcyBp
biBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTkyNzg5QjAy
MTNGMzM2NDAwMUVBNzNFIC8qIFR5cGVPZi5qcyAqLzsgfTsKKwkJRTlCQzUwREEyMTU1QUQxRTAw
MDU5NEU4IC8qIEFsbG9jYXRlQXRFbnRyeVBvaW50cy5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTlCQzUwRDkyMTU1QUQxRTAwMDU5NEU4IC8qIEFs
bG9jYXRlQXRFbnRyeVBvaW50cy5qcyAqLzsgfTsKKwkJRTlEN0NCOTcyMTRCODI0MjAwRjFDOTE4
IC8qIFdobHNsVG9Nc2wuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU5RDdDQjk0MjE0QjgyNDIwMEYxQzkxOCAvKiBXaGxzbFRvTXNsLmpzICovOyB9
OworCQlFOUQ3Q0I5ODIxNEI4MjQyMDBGMUM5MTggLyogTVNMQmFja2VuZC5qcyBpbiBSZXNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTlEN0NCOTUyMTRCODI0MjAw
RjFDOTE4IC8qIE1TTEJhY2tlbmQuanMgKi87IH07CisJCUU5RDdDQjk5MjE0QjgyNDIwMEYxQzkx
OCAvKiBNU0xDb25zdGV4cHJFbWl0dGVyLmpzIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFOUQ3Q0I5NjIxNEI4MjQyMDBGMUM5MTggLyogTVNMQ29uc3Rl
eHByRW1pdHRlci5qcyAqLzsgfTsKKwkJRTlEN0NCQTAyMTRCODJCODAwRjFDOTE4IC8qIFRleHR1
cmUuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5
RDdDQjlBMjE0QjgyQjcwMEYxQzkxOCAvKiBUZXh0dXJlLmpzICovOyB9OworCQlFOUQ3Q0JBMTIx
NEI4MkI4MDBGMUM5MTggLyogTGF0ZUNoZWNrQW5kTGF5b3V0QnVmZmVycy5qcyBpbiBSZXNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTlEN0NCOUIyMTRCODJCNzAw
RjFDOTE4IC8qIExhdGVDaGVja0FuZExheW91dEJ1ZmZlcnMuanMgKi87IH07CisJCUU5RDdDQkEy
MjE0QjgyQjgwMEYxQzkxOCAvKiBDYXN0cy5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTlEN0NCOUMyMTRCODJCNzAwRjFDOTE4IC8qIENhc3RzLmpz
ICovOyB9OworCQlFOUQ3Q0JBMzIxNEI4MkI4MDBGMUM5MTggLyogU2FtcGxlci5qcyBpbiBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTlEN0NCOUQyMTRCODJC
ODAwRjFDOTE4IC8qIFNhbXBsZXIuanMgKi87IH07CisJCUU5RDdDQkE0MjE0QjgyQjgwMEYxQzkx
OCAvKiBUZXh0dXJlT3BlcmF0aW9ucy5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTlEN0NCOUUyMTRCODJCODAwRjFDOTE4IC8qIFRleHR1cmVPcGVy
YXRpb25zLmpzICovOyB9OworCQlFOUQ3Q0JBNTIxNEI4MkI4MDBGMUM5MTggLyogV0xleGljYWxF
cnJvci5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTlEN0NCOUYyMTRCODJCODAwRjFDOTE4IC8qIFdMZXhpY2FsRXJyb3IuanMgKi87IH07CisJCUU5
RDdDQkE2MjE0QjlFNUYwMEYxQzkxOCAvKiBNU0xDb2RlZ2VuQWxsLmpzIGluIFJlc291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTdFRDdFNTIxNEI4MjI5MDBBRDEx
NDAgLyogTVNMQ29kZWdlbkFsbC5qcyAqLzsgfTsKKwkJRTlEN0NCQTcyMTRCOUU1RjAwRjFDOTE4
IC8qIE1TTENvbXBpbGVSZXN1bHQuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEU5N0VEN0U4MjE0QjgyMjkwMEFEMTE0MCAvKiBNU0xDb21waWxlUmVz
dWx0LmpzICovOyB9OworCQlFOUQ3Q0JBODIxNEI5RTVGMDBGMUM5MTggLyogTVNMTmFtZU1hbmds
ZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU5
N0VEN0UxMjE0QjgyMjkwMEFEMTE0MCAvKiBNU0xOYW1lTWFuZ2xlci5qcyAqLzsgfTsKKwkJRTlE
N0NCQTkyMTRCOUU1RjAwRjFDOTE4IC8qIE1TTE5hdGl2ZUZ1bmN0aW9uQ2FsbC5qcyBpbiBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTk3RUQ3RTQyMTRCODIy
OTAwQUQxMTQwIC8qIE1TTE5hdGl2ZUZ1bmN0aW9uQ2FsbC5qcyAqLzsgfTsKKwkJRTlEN0NCQUEy
MTRCOUU1RjAwRjFDOTE4IC8qIE1TTFR5cGVBdHRyaWJ1dGVzLmpzIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFOTdFRDdFNzIxNEI4MjI5MDBBRDExNDAg
LyogTVNMVHlwZUF0dHJpYnV0ZXMuanMgKi87IH07CisJCUU5RDdDQkFCMjE0QjlFNUYwMEYxQzkx
OCAvKiBNU0xUeXBlQXR0cmlidXRlc01hcC5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTk3RUQ3RTIyMTRCODIyOTAwQUQxMTQwIC8qIE1TTFR5cGVB
dHRyaWJ1dGVzTWFwLmpzICovOyB9OworCQlFOUQ3Q0JBQzIxNEI5RTVGMDBGMUM5MTggLyogTVNM
VHlwZVVuaWZpZXIuanMgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU5N0VEN0U2MjE0QjgyMjkwMEFEMTE0MCAvKiBNU0xUeXBlVW5pZmllci5qcyAqLzsg
fTsKKy8qIEVuZCBQQlhCdWlsZEZpbGUgc2VjdGlvbiAqLworCisvKiBCZWdpbiBQQlhDb250YWlu
ZXJJdGVtUHJveHkgc2VjdGlvbiAqLworCQlFOTRDMDZENzIwRjU2QTQyMDA2NzI5OTIgLyogUEJY
Q29udGFpbmVySXRlbVByb3h5ICovID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5
OworCQkJY29udGFpbmVyUG9ydGFsID0gRTk0QzA2QjgyMEY1NkE0MDAwNjcyOTkyIC8qIFByb2pl
Y3Qgb2JqZWN0ICovOworCQkJcHJveHlUeXBlID0gMTsKKwkJCXJlbW90ZUdsb2JhbElEU3RyaW5n
ID0gRTk0QzA2QkYyMEY1NkE0MDAwNjcyOTkyOworCQkJcmVtb3RlSW5mbyA9ICJXSExTTCBUb3ki
OworCQl9OworLyogRW5kIFBCWENvbnRhaW5lckl0ZW1Qcm94eSBzZWN0aW9uICovCisKKy8qIEJl
Z2luIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAqLworCQlFOTA2QjA0NTIxMTM5Qjc3MDBBRDFD
NUUgLyogSnVsaWEud2hsc2wgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSnVsaWEud2hsc2w7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MjFENjMyMjEzOEMwMjYwMDc3NTA5OSAvKiBP
cGVyYXRvckFuZGVySW5kZXhlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
bmFtZSA9IE9wZXJhdG9yQW5kZXJJbmRleGVyLmpzOyBwYXRoID0gLi4vLi4vLi4vT3BlcmF0b3JB
bmRlckluZGV4ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MjFENjMzMjEz
OEMwMjYwMDc3NTA5OSAvKiBNYXRyaXhUeXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZh
c2NyaXB0OyBuYW1lID0gTWF0cml4VHlwZS5qczsgcGF0aCA9IC4uLy4uLy4uL01hdHJpeFR5cGUu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MjFENjM0MjEzOEMwMjYwMDc3NTA5
OSAvKiBCdWlsdGluTWF0cml4R2V0dGVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBuYW1lID0gQnVpbHRpbk1hdHJpeEdldHRlci5qczsgcGF0aCA9IC4uLy4uLy4uL0J1aWx0
aW5NYXRyaXhHZXR0ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MjFENjM1
MjEzOEMwMjYwMDc3NTA5OSAvKiBCdWlsdGluTWF0cml4U2V0dGVyLmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gQnVpbHRpbk1hdHJpeFNldHRlci5qczsgcGF0aCA9
IC4uLy4uLy4uL0J1aWx0aW5NYXRyaXhTZXR0ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5Mjc4OUFCMjEzRjMzNjQwMDFFQTczRSAvKiBNU0xGdW5jdGlvbkRlZmluaXRpb24u
anMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBNU0xGdW5jdGlvbkRlZmluaXRpb24uanM7IHBhdGgg
PSAuLi8uLi9NU0xGdW5jdGlvbkRlZmluaXRpb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5Mjc4OUFDMjEzRjMzNjQwMDFFQTczRSAvKiBNU0xGdW5jdGlvbkRlY2xhcmF0aW9u
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTVNMRnVuY3Rpb25EZWNsYXJhdGlvbi5qczsgcGF0
aCA9IC4uLy4uL01TTEZ1bmN0aW9uRGVjbGFyYXRpb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5Mjc4OUIwMjEzRjMzNjQwMDFFQTczRSAvKiBUeXBlT2YuanMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IG5hbWUgPSBUeXBlT2YuanM7IHBhdGggPSAuLi8uLi9UeXBlT2YuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkU0MjBGNTZEREQwMEQ3NzZCMiAvKiBJbnRMaXRl
cmFsLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gSW50TGl0ZXJh
bC5qczsgcGF0aCA9IC4uLy4uLy4uL0ludExpdGVyYWwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5MkQwRkU1MjBGNTZEREQwMEQ3NzZCMiAvKiBJbnRMaXRlcmFsVHlwZS5qcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEludExpdGVyYWxUeXBlLmpz
OyBwYXRoID0gLi4vLi4vLi4vSW50TGl0ZXJhbFR5cGUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5MkQwRkU3MjBGNTZEREQwMEQ3NzZCMiAvKiBJbnRyaW5zaWNzLmpzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gSW50cmluc2ljcy5qczsgcGF0aCA9
IC4uLy4uLy4uL0ludHJpbnNpY3MuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
MkQwRkU4MjBGNTZEREQwMEQ3NzZCMiAvKiBJbmxpbmVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5qYXZhc2NyaXB0OyBuYW1lID0gSW5saW5lci5qczsgcGF0aCA9IC4uLy4uLy4uL0lubGluZXIu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkVFMjBGNTZERUIwMEQ3NzZC
MiAvKiBMb2dpY2FsRXhwcmVzc2lvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlw
dDsgbmFtZSA9IExvZ2ljYWxFeHByZXNzaW9uLmpzOyBwYXRoID0gLi4vLi4vLi4vTG9naWNhbEV4
cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkVGMjBGNTZE
RUIwMEQ3NzZCMiAvKiBMb2dpY2FsTm90LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBuYW1lID0gTG9naWNhbE5vdC5qczsgcGF0aCA9IC4uLy4uLy4uL0xvZ2ljYWxOb3QuanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkYwMjBGNTZERUIwMEQ3NzZCMiAv
KiBMZXhlclRva2VuLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0g
TGV4ZXJUb2tlbi5qczsgcGF0aCA9IC4uLy4uLy4uL0xleGVyVG9rZW4uanM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkYxMjBGNTZERUMwMEQ3NzZCMiAvKiBMZXhlci5qcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IExleGVyLmpzOyBwYXRoID0g
Li4vLi4vLi4vTGV4ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkYy
MjBGNTZERUMwMEQ3NzZCMiAvKiBMaXRlcmFsVHlwZUNoZWNrZXIuanMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBMaXRlcmFsVHlwZUNoZWNrZXIuanM7IHBhdGggPSAu
Li8uLi8uLi9MaXRlcmFsVHlwZUNoZWNrZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5MkQwRkY4MjBGNTZERkEwMEQ3NzZCMiAvKiBOYW1lQ29udGV4dC5qcyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IE5hbWVDb250ZXh0LmpzOyBwYXRoID0gLi4v
Li4vLi4vTmFtZUNvbnRleHQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQw
RkY5MjBGNTZERkEwMEQ3NzZCMiAvKiBNYWtlUHRyRXhwcmVzc2lvbi5qcyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IE1ha2VQdHJFeHByZXNzaW9uLmpzOyBwYXRoID0g
Li4vLi4vLi4vTWFrZVB0ckV4cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5MkQwRkZBMjBGNTZERkIwMEQ3NzZCMiAvKiBOYW1lRmluZGVyLmpzICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTmFtZUZpbmRlci5qczsgcGF0aCA9IC4uLy4u
Ly4uL05hbWVGaW5kZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkZC
MjBGNTZERkIwMEQ3NzZCMiAvKiBMb29wQ2hlY2tlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
amF2YXNjcmlwdDsgbmFtZSA9IExvb3BDaGVja2VyLmpzOyBwYXRoID0gLi4vLi4vLi4vTG9vcENo
ZWNrZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQwRkZDMjBGNTZERkIw
MEQ3NzZCMiAvKiBNYWtlQXJyYXlSZWZFeHByZXNzaW9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5qYXZhc2NyaXB0OyBuYW1lID0gTWFrZUFycmF5UmVmRXhwcmVzc2lvbi5qczsgcGF0aCA9IC4u
Ly4uLy4uL01ha2VBcnJheVJlZkV4cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5MkQxMDAzMjBGNTZFMDkwMEQ3NzZCMiAvKiBOYW1lUmVzb2x2ZXIuanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBOYW1lUmVzb2x2ZXIuanM7IHBhdGgg
PSAuLi8uLi8uLi9OYW1lUmVzb2x2ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU5MkQxMDA1MjBGNTZFMDkwMEQ3NzZCMiAvKiBOYXRpdmVGdW5jLmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTmF0aXZlRnVuYy5qczsgcGF0aCA9IC4uLy4uLy4u
L05hdGl2ZUZ1bmMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDA2MjBG
NTZFMDkwMEQ3NzZCMiAvKiBOYXRpdmVUeXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZh
c2NyaXB0OyBuYW1lID0gTmF0aXZlVHlwZS5qczsgcGF0aCA9IC4uLy4uLy4uL05hdGl2ZVR5cGUu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDBDMjBGNTZFMTUwMEQ3NzZC
MiAvKiBOdWxsTGl0ZXJhbC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFt
ZSA9IE51bGxMaXRlcmFsLmpzOyBwYXRoID0gLi4vLi4vLi4vTnVsbExpdGVyYWwuanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDBEMjBGNTZFMTUwMEQ3NzZCMiAvKiBOb3Jt
YWxVc2VQcm9wZXJ0eVJlc29sdmVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBuYW1lID0gTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5qczsgcGF0aCA9IC4uLy4uLy4uL05v
cm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU5MkQxMDBFMjBGNTZFMTUwMEQ3NzZCMiAvKiBPcmlnaW5LaW5kLmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gT3JpZ2luS2luZC5qczsgcGF0aCA9IC4uLy4uLy4u
L09yaWdpbktpbmQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDBGMjBG
NTZFMTUwMEQ3NzZCMiAvKiBOb2RlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBuYW1lID0gTm9kZS5qczsgcGF0aCA9IC4uLy4uLy4uL05vZGUuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5MkQxMDEwMjBGNTZFMTUwMEQ3NzZCMiAvKiBOdWxsVHlwZS5qcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IE51bGxUeXBlLmpzOyBwYXRo
ID0gLi4vLi4vLi4vTnVsbFR5cGUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
MkQxMDE2MjBGNTZFMjEwMEQ3NzZCMiAvKiBQcm9ncmFtV2l0aFVubmVjZXNzYXJ5VGhpbmdzUmVt
b3ZlZC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFByb2dyYW1X
aXRoVW5uZWNlc3NhcnlUaGluZ3NSZW1vdmVkLmpzOyBwYXRoID0gLi4vLi4vLi4vUHJvZ3JhbVdp
dGhVbm5lY2Vzc2FyeVRoaW5nc1JlbW92ZWQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5MkQxMDE3MjBGNTZFMjIwMEQ3NzZCMiAvKiBQYXJzZS5qcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFBhcnNlLmpzOyBwYXRoID0gLi4vLi4vLi4vUGFyc2Uu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDE4MjBGNTZFMjIwMEQ3NzZC
MiAvKiBQcmVwYXJlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0g
UHJlcGFyZS5qczsgcGF0aCA9IC4uLy4uLy4uL1ByZXBhcmUuanM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU5MkQxMDE5MjBGNTZFMjIwMEQ3NzZCMiAvKiBPdmVybG9hZFJlc29sdXRp
b25GYWlsdXJlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gT3Zl
cmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qczsgcGF0aCA9IC4uLy4uLy4uL092ZXJsb2FkUmVzb2x1
dGlvbkZhaWx1cmUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDFBMjBG
NTZFMjIwMEQ3NzZCMiAvKiBQcm9ncmFtLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBuYW1lID0gUHJvZ3JhbS5qczsgcGF0aCA9IC4uLy4uLy4uL1Byb2dyYW0uanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDIwMjBGNTZFMkYwMEQ3NzZCMiAvKiBQcm9w
ZXJ0eVJlc29sdmVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0g
UHJvcGVydHlSZXNvbHZlci5qczsgcGF0aCA9IC4uLy4uLy4uL1Byb3BlcnR5UmVzb2x2ZXIuanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDIzMjBGNTZFMkYwMEQ3NzZCMiAv
KiBQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IG5hbWUgPSBQcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24uanM7IHBhdGggPSAuLi8uLi8u
Li9Qcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5MkQxMDJBMjBGNTZFM0YwMEQ3NzZCMiAvKiBSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9u
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gUmVhZE1vZGlmeVdy
aXRlRXhwcmVzc2lvbi5qczsgcGF0aCA9IC4uLy4uLy4uL1JlYWRNb2RpZnlXcml0ZUV4cHJlc3Np
b24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDJCMjBGNTZFM0YwMEQ3
NzZCMiAvKiBQdHJUeXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1l
ID0gUHRyVHlwZS5qczsgcGF0aCA9IC4uLy4uLy4uL1B0clR5cGUuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5MkQxMDJDMjBGNTZFM0YwMEQ3NzZCMiAvKiBSZWN1cnNpb25DaGVj
a2VyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gUmVjdXJzaW9u
Q2hlY2tlci5qczsgcGF0aCA9IC4uLy4uLy4uL1JlY3Vyc2lvbkNoZWNrZXIuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDJFMjBGNTZFNDAwMEQ3NzZCMiAvKiBSZWN1cnNp
dmVUeXBlQ2hlY2tlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9
IFJlY3Vyc2l2ZVR5cGVDaGVja2VyLmpzOyBwYXRoID0gLi4vLi4vLi4vUmVjdXJzaXZlVHlwZUNo
ZWNrZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDM0MjBGNTZFNEYw
MEQ3NzZCMiAvKiBSZXNvbHZlTmFtZXMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3Jp
cHQ7IG5hbWUgPSBSZXNvbHZlTmFtZXMuanM7IHBhdGggPSAuLi8uLi8uLi9SZXNvbHZlTmFtZXMu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDM1MjBGNTZFNEYwMEQ3NzZC
MiAvKiBSZWZlcmVuY2VUeXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBu
YW1lID0gUmVmZXJlbmNlVHlwZS5qczsgcGF0aCA9IC4uLy4uLy4uL1JlZmVyZW5jZVR5cGUuanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDM2MjBGNTZFNEYwMEQ3NzZCMiAv
KiBSZXNvbHZlUHJvcGVydGllcy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
bmFtZSA9IFJlc29sdmVQcm9wZXJ0aWVzLmpzOyBwYXRoID0gLi4vLi4vLi4vUmVzb2x2ZVByb3Bl
cnRpZXMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDM3MjBGNTZFNEYw
MEQ3NzZCMiAvKiBSZXNvbHZlVHlwZURlZnMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IG5hbWUgPSBSZXNvbHZlVHlwZURlZnMuanM7IHBhdGggPSAuLi8uLi8uLi9SZXNvbHZl
VHlwZURlZnMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDM4MjBGNTZF
NEYwMEQ3NzZCMiAvKiBSZXNvbHZlT3ZlcmxvYWRJbXBsLmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5qYXZhc2NyaXB0OyBuYW1lID0gUmVzb2x2ZU92ZXJsb2FkSW1wbC5qczsgcGF0aCA9IC4uLy4u
Ly4uL1Jlc29sdmVPdmVybG9hZEltcGwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU5MkQxMDNFMjBGNTZFNjEwMEQ3NzZCMiAvKiBSZXR1cm4uanMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBSZXR1cm4uanM7IHBhdGggPSAuLi8uLi8uLi9SZXR1cm4u
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDNGMjBGNTZFNjIwMEQ3NzZC
MiAvKiBTdGFuZGFyZExpYnJhcnkuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7
IG5hbWUgPSBTdGFuZGFyZExpYnJhcnkuanM7IHBhdGggPSAuLi8uLi8uLi9TdGFuZGFyZExpYnJh
cnkuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDQwMjBGNTZFNjIwMEQ3
NzZCMiAvKiBSZXR1cm5DaGVja2VyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBuYW1lID0gUmV0dXJuQ2hlY2tlci5qczsgcGF0aCA9IC4uLy4uLy4uL1JldHVybkNoZWNrZXIu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDQxMjBGNTZFNjIwMEQ3NzZC
MiAvKiBSZXdyaXRlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9
IFJld3JpdGVyLmpzOyBwYXRoID0gLi4vLi4vLi4vUmV3cml0ZXIuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5MkQxMDQyMjBGNTZFNjIwMEQ3NzZCMiAvKiBSZXR1cm5FeGNlcHRp
b24uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBSZXR1cm5FeGNl
cHRpb24uanM7IHBhdGggPSAuLi8uLi8uLi9SZXR1cm5FeGNlcHRpb24uanM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDQ4MjBGNTZFNzMwMEQ3NzZCMiAvKiBTdGF0ZW1lbnRD
bG9uZXIuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBTdGF0ZW1l
bnRDbG9uZXIuanM7IHBhdGggPSAuLi8uLi8uLi9TdGF0ZW1lbnRDbG9uZXIuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDQ5MjBGNTZFNzMwMEQ3NzZCMiAvKiBTdHJ1Y3RM
YXlvdXRCdWlsZGVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0g
U3RydWN0TGF5b3V0QnVpbGRlci5qczsgcGF0aCA9IC4uLy4uLy4uL1N0cnVjdExheW91dEJ1aWxk
ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDRBMjBGNTZFNzMwMEQ3
NzZCMiAvKiBTdHJ1Y3RUeXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBu
YW1lID0gU3RydWN0VHlwZS5qczsgcGF0aCA9IC4uLy4uLy4uL1N0cnVjdFR5cGUuanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDRCMjBGNTZFNzMwMEQ3NzZCMiAvKiBTd2l0
Y2hDYXNlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gU3dpdGNo
Q2FzZS5qczsgcGF0aCA9IC4uLy4uLy4uL1N3aXRjaENhc2UuanM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU5MkQxMDUyMjBGNTZFODQwMEQ3NzZCMiAvKiBTd2l0Y2hTdGF0ZW1lbnQu
anMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBTd2l0Y2hTdGF0ZW1l
bnQuanM7IHBhdGggPSAuLi8uLi8uLi9Td2l0Y2hTdGF0ZW1lbnQuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5MkQxMDUzMjBGNTZFODQwMEQ3NzZCMiAvKiBTeW50aGVzaXplU3Ry
dWN0QWNjZXNzb3JzLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0g
U3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qczsgcGF0aCA9IC4uLy4uLy4uL1N5bnRoZXNpemVT
dHJ1Y3RBY2Nlc3NvcnMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDU0
MjBGNTZFODUwMEQ3NzZCMiAvKiBTeW50aGVzaXplRW51bUZ1bmN0aW9ucy5qcyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFN5bnRoZXNpemVFbnVtRnVuY3Rpb25zLmpz
OyBwYXRoID0gLi4vLi4vLi4vU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDU1MjBGNTZFODUwMEQ3NzZCMiAvKiBUeXBlLmpzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gVHlwZS5qczsgcGF0aCA9IC4u
Ly4uLy4uL1R5cGUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDU2MjBG
NTZFODUwMEQ3NzZCMiAvKiBUcmFwU3RhdGVtZW50LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5q
YXZhc2NyaXB0OyBuYW1lID0gVHJhcFN0YXRlbWVudC5qczsgcGF0aCA9IC4uLy4uLy4uL1RyYXBT
dGF0ZW1lbnQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDVFMjBGNTZF
OTUwMEQ3NzZCMiAvKiBUeXBlRGVmUmVzb2x2ZXIuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmph
dmFzY3JpcHQ7IG5hbWUgPSBUeXBlRGVmUmVzb2x2ZXIuanM7IHBhdGggPSAuLi8uLi8uLi9UeXBl
RGVmUmVzb2x2ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDVGMjBG
NTZFOTUwMEQ3NzZCMiAvKiBUeXBlRGVmLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBuYW1lID0gVHlwZURlZi5qczsgcGF0aCA9IC4uLy4uLy4uL1R5cGVEZWYuanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDYwMjBGNTZFOTUwMEQ3NzZCMiAvKiBUeXBl
ZFZhbHVlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gVHlwZWRW
YWx1ZS5qczsgcGF0aCA9IC4uLy4uLy4uL1R5cGVkVmFsdWUuanM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU5MkQxMDY2MjBGNTZFQTQwMEQ3NzZCMiAvKiBUeXBlUmVmLmpzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gVHlwZVJlZi5qczsgcGF0aCA9IC4u
Ly4uLy4uL1R5cGVSZWYuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDY3
MjBGNTZFQTQwMEQ3NzZCMiAvKiBVaW50TGl0ZXJhbFR5cGUuanMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBVaW50TGl0ZXJhbFR5cGUuanM7IHBhdGggPSAuLi8uLi8u
Li9VaW50TGl0ZXJhbFR5cGUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQx
MDY4MjBGNTZFQTQwMEQ3NzZCMiAvKiBVaW50TGl0ZXJhbC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuamF2YXNjcmlwdDsgbmFtZSA9IFVpbnRMaXRlcmFsLmpzOyBwYXRoID0gLi4vLi4vLi4vVWlu
dExpdGVyYWwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDcwMjBGNTZF
QkIwMEQ3NzZCMiAvKiBWYXJpYWJsZURlY2wuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IG5hbWUgPSBWYXJpYWJsZURlY2wuanM7IHBhdGggPSAuLi8uLi8uLi9WYXJpYWJsZURl
Y2wuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDcxMjBGNTZFQkIwMEQ3
NzZCMiAvKiBWYXJpYWJsZVJlZi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
bmFtZSA9IFZhcmlhYmxlUmVmLmpzOyBwYXRoID0gLi4vLi4vLi4vVmFyaWFibGVSZWYuanM7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDcyMjBGNTZFQkIwMEQ3NzZCMiAvKiBV
bmlmaWNhdGlvbkNvbnRleHQuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5h
bWUgPSBVbmlmaWNhdGlvbkNvbnRleHQuanM7IHBhdGggPSAuLi8uLi8uLi9VbmlmaWNhdGlvbkNv
bnRleHQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDczMjBGNTZFQkMw
MEQ3NzZCMiAvKiBVbnJlYWNoYWJsZUNvZGVDaGVja2VyLmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5qYXZhc2NyaXB0OyBuYW1lID0gVW5yZWFjaGFibGVDb2RlQ2hlY2tlci5qczsgcGF0aCA9IC4u
Ly4uLy4uL1VucmVhY2hhYmxlQ29kZUNoZWNrZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5MkQxMDc0MjBGNTZFQkMwMEQ3NzZCMiAvKiBWYWx1ZS5qcyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFZhbHVlLmpzOyBwYXRoID0gLi4vLi4vLi4vVmFs
dWUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDdBMjBGNTZFQ0YwMEQ3
NzZCMiAvKiBWaXNpdG9yLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1l
ID0gVmlzaXRvci5qczsgcGF0aCA9IC4uLy4uLy4uL1Zpc2l0b3IuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5MkQxMDdCMjBGNTZFQ0YwMEQ3NzZCMiAvKiBXcmFwQ2hlY2tlci5q
cyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFdyYXBDaGVja2VyLmpz
OyBwYXRoID0gLi4vLi4vLi4vV3JhcENoZWNrZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5MkQxMDdDMjBGNTZFQ0YwMEQ3NzZCMiAvKiBWaXNpdGluZ1NldC5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFZpc2l0aW5nU2V0LmpzOyBwYXRoID0g
Li4vLi4vLi4vVmlzaXRpbmdTZXQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
MkQxMDdEMjBGNTZFQ0YwMEQ3NzZCMiAvKiBXaGlsZUxvb3AuanMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBXaGlsZUxvb3AuanM7IHBhdGggPSAuLi8uLi8uLi9XaGls
ZUxvb3AuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDgyMjBGNTZFREUw
MEQ3NzZCMiAvKiBXU3ludGF4RXJyb3IuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3Jp
cHQ7IG5hbWUgPSBXU3ludGF4RXJyb3IuanM7IHBhdGggPSAuLi8uLi8uLi9XU3ludGF4RXJyb3Iu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDgzMjBGNTZFREUwMEQ3NzZC
MiAvKiBXVHlwZUVycm9yLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1l
ID0gV1R5cGVFcnJvci5qczsgcGF0aCA9IC4uLy4uLy4uL1dUeXBlRXJyb3IuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMDg0MjBGNTZFREUwMEQ3NzZCMiAvKiBXVHJhcEVy
cm9yLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gV1RyYXBFcnJv
ci5qczsgcGF0aCA9IC4uLy4uLy4uL1dUcmFwRXJyb3IuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5MkQxMDg4MjBGNTZGMDYwMEQ3NzZCMiAvKiBDb21waWxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDb21waWxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTJEMTA4
OTIwRjU2RjA2MDBENzc2QjIgLyogQ29tcGlsZXIubSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5vYmpjOyBwYXRoID0gQ29tcGls
ZXIubTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTkyRDEwOEMyMEY1NkY0NTAwRDc3
NkIyIC8qIE1ldGFsS2l0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gTWV0YWxLaXQuZnJh
bWV3b3JrOyBwYXRoID0gU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9NZXRhbEtpdC5mcmFtZXdv
cms7IHNvdXJjZVRyZWUgPSBTREtST09UOyB9OworCQlFOTJEMTA4RTIwRjU2RjRGMDBENzc2QjIg
LyogTWV0YWwuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBNZXRhbC5mcmFtZXdvcms7IHBh
dGggPSBTeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL01ldGFsLmZyYW1ld29yazsgc291cmNlVHJl
ZSA9IFNES1JPT1Q7IH07CisJCUU5MkQxMDkwMjBGNTZGNTcwMEQ3NzZCMiAvKiBKYXZhU2NyaXB0
Q29yZS5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IEphdmFTY3JpcHRDb3JlLmZyYW1ld29y
azsgcGF0aCA9IFN5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvSmF2YVNjcmlwdENvcmUuZnJhbWV3
b3JrOyBzb3VyY2VUcmVlID0gU0RLUk9PVDsgfTsKKwkJRTkyRDEwOTIyMEY1NzM0OTAwRDc3NkIy
IC8qIERlZmF1bHQud2hsc2wgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGVmYXVsdC53aGxzbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTkyRDEwQUQyMEY1N0M5RjAwRDc3NkIyIC8qIE9uc2NyZWVuUmVuZGVyZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gT25zY3JlZW5SZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFOTJEMTBBRTIwRjU3QzlGMDBENzc2QjIgLyogT25zY3JlZW5SZW5kZXJlci5t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLm9iamM7IHBhdGggPSBPbnNjcmVlblJlbmRlcmVyLm07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU5MkQxMTEzMjBGNkZGQjYwMEQ3NzZCMiAvKiBSZW5kZXJlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTJE
MTExNDIwRjZGRkI2MDBENzc2QjIgLyogUmVuZGVyZXIubSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5vYmpjOyBwYXRoID0gUmVu
ZGVyZXIubTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTkyRDExQUIyMEY3MDgxNTAw
RDc3NkIyIC8qIE9mZnNjcmVlblJlbmRlcmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9mZnNjcmVlblJl
bmRlcmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMUFDMjBGNzA4MTUw
MEQ3NzZCMiAvKiBPZmZzY3JlZW5SZW5kZXJlci5tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLm9iamM7IHBhdGggPSBPZmZzY3Jl
ZW5SZW5kZXJlci5tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTJEMTFCOTIwRjdG
NjczMDBENzc2QjIgLyogQ29tcGlsZVJlc3VsdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb21waWxlUmVz
dWx0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkQxMUJBMjBGN0Y2NzMwMEQ3
NzZCMiAvKiBDb21waWxlUmVzdWx0Lm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMub2JqYzsgcGF0aCA9IENvbXBpbGVSZXN1bHQu
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTkyRURGRjUyMTE1NDZBNDAwNDJGOTYw
IC8qIEFwcERlbGVnYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcERl
bGVnYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkVERkY2MjExNTQ2QTQw
MDQyRjk2MCAvKiBDdXN0b21NZXRhbFZpZXcubSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5vYmpj
OyBwYXRoID0gQ3VzdG9tTWV0YWxWaWV3Lm07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU5MkVERkY3MjExNTQ2QTQwMDQyRjk2MCAvKiBBcHBEZWxlZ2F0ZS5tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLm9iamM7IHBhdGggPSBBcHBEZWxlZ2F0ZS5tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFOTJFREZGODIxMTU0NkE0MDA0MkY5NjAgLyogQ3VzdG9tTWV0YWxWaWV3Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1c3RvbU1ldGFsVmlldy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTJFREZGOTIxMTU0NkE0MDA0MkY5NjAgLyogVmll
d0NvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlld0NvbnRy
b2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTkyRURGRkEyMTE1NDZBNDAw
NDJGOTYwIC8qIFZpZXdDb250cm9sbGVyLm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMub2JqYzsg
cGF0aCA9IFZpZXdDb250cm9sbGVyLm07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
MkVERkZGMjExNTQ2QUIwMDQyRjk2MCAvKiBCYXNlICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZmlsZS5zdG9yeWJvYXJkOyBuYW1lID0gQmFzZTsgcGF0
aCA9IEJhc2UubHByb2ovTWFpbi5zdG9yeWJvYXJkOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFOTJFRTAwMjIxMTU0OUM1MDA0MkY5NjAgLyogVGVzdENhbGxBcmd1bWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBUZXN0Q2FsbEFyZ3VtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5MkVFMDAzMjExNTQ5QzUwMDQyRjk2MCAvKiBUZXN0Q2FsbEFyZ3VtZW50Lm0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
b2JqYzsgcGF0aCA9IFRlc3RDYWxsQXJndW1lbnQubTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTkyRUUwMDUyMTE1NEFDNDAwNDJGOTYwIC8qIFRlc3RGYW1pbHkuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gVGVzdEZhbWlseS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTJFRTAw
NjIxMTU0QUM0MDA0MkY5NjAgLyogVGVzdEZhbWlseS5tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLm9iamM7IHBhdGggPSBUZXN0
RmFtaWx5Lm07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkVFMDA4MjExNTRCNUEw
MDQyRjk2MCAvKiBUZXN0RGVzY3JpcHRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGVzdERlc2NyaXB0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkVFMDA5MjExNTRCNUEwMDQy
Rjk2MCAvKiBUZXN0RGVzY3JpcHRpb24ubSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5vYmpjOyBwYXRoID0gVGVzdERlc2NyaXB0
aW9uLm07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkVFMDBCMjExNTU0OTgwMDQy
Rjk2MCAvKiBfU2hhcmVkTWV0YWwudHh0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IF9TaGFyZWRNZXRhbC50eHQ7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5MkVFMDBEMjExNTYzMzAwMDQyRjk2MCAvKiBUZXN0RmFt
aWx5UnVubmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRlc3RGYW1pbHlSdW5uZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTkyRUUwMEUyMTE1NjMzMDAwNDJGOTYwIC8qIFRlc3RGYW1p
bHlSdW5uZXIubSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5vYmpjOyBwYXRoID0gVGVzdEZhbWlseVJ1bm5lci5tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFOTQxQUNBRTIxMzRBNUJBMDAzOTJCQTkgLyogQ2hlY2tU
eXBlc1dpdGhBcmd1bWVudHMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5h
bWUgPSBDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qczsgcGF0aCA9IC4uLy4uLy4uL0NoZWNrVHlw
ZXNXaXRoQXJndW1lbnRzLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTQxQUNB
RjIxMzRBNUJBMDAzOTJCQTkgLyogU3ludGhlc2l6ZUNvcHlDb25zdHJ1Y3Rvck9wZXJhdG9yLmpz
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gU3ludGhlc2l6ZUNvcHlD
b25zdHJ1Y3Rvck9wZXJhdG9yLmpzOyBwYXRoID0gLi4vLi4vLi4vU3ludGhlc2l6ZUNvcHlDb25z
dHJ1Y3Rvck9wZXJhdG9yLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTQxQUNC
MzIxMzRBNUJCMDAzOTJCQTkgLyogU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9y
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzOyBwYXRoID0gLi4vLi4vLi4vU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFOTQxQUNCNTIxMzRBNUJCMDAzOTJCQTkgLyogVGVybmFyeUV4cHJlc3Npb24uanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBUZXJuYXJ5RXhwcmVzc2lvbi5qczsg
cGF0aCA9IC4uLy4uLy4uL1Rlcm5hcnlFeHByZXNzaW9uLmpzOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFOTQxQUNCNjIxMzRBNUJCMDAzOTJCQTkgLyogT3BlcmF0b3JBcnJheVJlZkxl
bmd0aC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IE9wZXJhdG9y
QXJyYXlSZWZMZW5ndGguanM7IHBhdGggPSAuLi8uLi8uLi9PcGVyYXRvckFycmF5UmVmTGVuZ3Ro
LmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTQxQUNCNzIxMzRBNUJCMDAzOTJC
QTkgLyogU3ludGhlc2l6ZUFycmF5T3BlcmF0b3JMZW5ndGguanMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBTeW50aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aC5qczsg
cGF0aCA9IC4uLy4uLy4uL1N5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFOTQxQUNCOTIxMzRBNUJCMDAzOTJCQTkgLyogQnVpbHRp
blZlY3RvckdldHRlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9
IEJ1aWx0aW5WZWN0b3JHZXR0ZXIuanM7IHBhdGggPSAuLi8uLi8uLi9CdWlsdGluVmVjdG9yR2V0
dGVyLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTQxQUNCQTIxMzRBNUJCMDAz
OTJCQTkgLyogVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBUeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5q
czsgcGF0aCA9IC4uLy4uLy4uL1R5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTQxQUNCQjIxMzRBNUJCMDAzOTJCQTkgLyogVmVj
dG9yVHlwZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFZlY3Rv
clR5cGUuanM7IHBhdGggPSAuLi8uLi8uLi9WZWN0b3JUeXBlLmpzOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFOTQxQUNCQzIxMzRBNUJCMDAzOTJCQTkgLyogQnVpbHRpblZlY3RvclNl
dHRlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEJ1aWx0aW5W
ZWN0b3JTZXR0ZXIuanM7IHBhdGggPSAuLi8uLi8uLi9CdWlsdGluVmVjdG9yU2V0dGVyLmpzOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTRDMDZDMDIwRjU2QTQwMDA2NzI5OTIgLyog
V0hMU0wgVGVzdHMuYXBwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0Rmls
ZVR5cGUgPSB3cmFwcGVyLmFwcGxpY2F0aW9uOyBpbmNsdWRlSW5JbmRleCA9IDA7IHBhdGggPSAi
V0hMU0wgVGVzdHMuYXBwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
RTk0QzA2QzkyMEY1NkE0MjAwNjcyOTkyIC8qIEFzc2V0cy54Y2Fzc2V0cyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlci5hc3NldGNhdGFsb2c7
IHBhdGggPSBBc3NldHMueGNhc3NldHM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
NEMwNkNFMjBGNTZBNDIwMDY3Mjk5MiAvKiBJbmZvLnBsaXN0ICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5wbGlzdC54bWw7IHBhdGggPSBJbmZv
LnBsaXN0OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFOTRDMDZDRjIwRjU2QTQyMDA2
NzI5OTIgLyogbWFpbi5tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLm9iamM7IHBhdGggPSBtYWluLm07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5NEMwNkQxMjBGNTZBNDIwMDY3Mjk5MiAvKiBXSExTTC5lbnRpdGxl
bWVudHMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0LnBsaXN0LmVudGl0bGVtZW50czsgcGF0aCA9IFdITFNMLmVudGl0bGVtZW50czsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTk0QzA2RDYyMEY1NkE0MjAwNjcyOTkyIC8qIFdITFNM
IFRlc3RzVGVzdHMueGN0ZXN0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0
RmlsZVR5cGUgPSB3cmFwcGVyLmNmYnVuZGxlOyBpbmNsdWRlSW5JbmRleCA9IDA7IHBhdGggPSAi
V0hMU0wgVGVzdHNUZXN0cy54Y3Rlc3QiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlFOTRDMDZEQTIwRjU2QTQyMDA2NzI5OTIgLyogV0hMU0xfVG95VGVzdHMubSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5vYmpjOyBwYXRoID0gV0hMU0xfVG95VGVzdHMubTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTk0QzA2REMyMEY1NkE0MjAwNjcyOTkyIC8qIEluZm8ucGxpc3QgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnBsaXN0LnhtbDsgcGF0
aCA9IEluZm8ucGxpc3Q7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NEMwNkY5MjBG
NTZDQTMwMDY3Mjk5MiAvKiBEZXJlZmVyZW5jZUV4cHJlc3Npb24uanMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7
IG5hbWUgPSBEZXJlZmVyZW5jZUV4cHJlc3Npb24uanM7IHBhdGggPSAuLi8uLi8uLi9EZXJlZmVy
ZW5jZUV4cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NEMwNkZB
MjBGNTZDQTMwMDY3Mjk5MiAvKiBDaGVja1JlY3Vyc2lvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFt
ZSA9IENoZWNrUmVjdXJzaW9uLmpzOyBwYXRoID0gLi4vLi4vLi4vQ2hlY2tSZWN1cnNpb24uanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NEMwNkZCMjBGNTZDQTMwMDY3Mjk5MiAv
KiBIaWdoWm9tYmllRmluZGVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gSGlnaFpvbWJpZUZp
bmRlci5qczsgcGF0aCA9IC4uLy4uLy4uL0hpZ2hab21iaWVGaW5kZXIuanM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU5NEMwNkZDMjBGNTZDQTMwMDY3Mjk5MiAvKiBCbG9jay5qcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuamF2YXNjcmlwdDsgbmFtZSA9IEJsb2NrLmpzOyBwYXRoID0gLi4vLi4vLi4vQmxvY2suanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NEMwNkZEMjBGNTZDQTMwMDY3Mjk5MiAv
KiBFbnVtTGl0ZXJhbC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEVudW1MaXRlcmFsLmpzOyBw
YXRoID0gLi4vLi4vLi4vRW51bUxpdGVyYWwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5NEQxMjRFMjExNEJENzYwMEIwRjk2NyAvKiBNYW5kZWxicm90LndobHNsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IE1hbmRlbGJyb3Qud2hsc2w7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5NEQxMjdFMjExNEM2RkYwMEIwRjk2NyAvKiBUZXN0LmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gVGVzdC5qczsgcGF0aCA9IC4uLy4uLy4uL1Rlc3Qu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUIwMjBGNTZDRDYwMEY1Q0Yz
NCAvKiBCcmVhay5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEJy
ZWFrLmpzOyBwYXRoID0gLi4vLi4vLi4vQnJlYWsuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5NTU2OUIxMjBGNTZDRDYwMEY1Q0YzNCAvKiBCb29sTGl0ZXJhbC5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEJvb2xMaXRlcmFsLmpzOyBwYXRoID0g
Li4vLi4vLi4vQm9vbExpdGVyYWwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
NTU2OUIyMjBGNTZDRDYwMEY1Q0YzNCAvKiBDaGVja1JldHVybnMuanMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBDaGVja1JldHVybnMuanM7IHBhdGggPSAuLi8uLi8u
Li9DaGVja1JldHVybnMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUIz
MjBGNTZDRDYwMEY1Q0YzNCAvKiBDaGVja0xvb3BzLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5q
YXZhc2NyaXB0OyBuYW1lID0gQ2hlY2tMb29wcy5qczsgcGF0aCA9IC4uLy4uLy4uL0NoZWNrTG9v
cHMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUI0MjBGNTZDRDYwMEY1
Q0YzNCAvKiBBcnJheVR5cGUuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5h
bWUgPSBBcnJheVR5cGUuanM7IHBhdGggPSAuLi8uLi8uLi9BcnJheVR5cGUuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUI1MjBGNTZDRDYwMEY1Q0YzNCAvKiBBcnJheVJl
ZlR5cGUuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBBcnJheVJl
ZlR5cGUuanM7IHBhdGggPSAuLi8uLi8uLi9BcnJheVJlZlR5cGUuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5NTU2OUI2MjBGNTZDRDYwMEY1Q0YzNCAvKiBDaGVja0xpdGVyYWxU
eXBlcy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IENoZWNrTGl0
ZXJhbFR5cGVzLmpzOyBwYXRoID0gLi4vLi4vLi4vQ2hlY2tMaXRlcmFsVHlwZXMuanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUI3MjBGNTZDRDYwMEY1Q0YzNCAvKiBDaGVj
a1VucmVhY2hhYmxlQ29kZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFt
ZSA9IENoZWNrVW5yZWFjaGFibGVDb2RlLmpzOyBwYXRoID0gLi4vLi4vLi4vQ2hlY2tVbnJlYWNo
YWJsZUNvZGUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUI4MjBGNTZD
RDYwMEY1Q0YzNCAvKiBDaGVjay5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
bmFtZSA9IENoZWNrLmpzOyBwYXRoID0gLi4vLi4vLi4vQ2hlY2suanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5NTU2OUI5MjBGNTZDRDYwMEY1Q0YzNCAvKiBBc3NpZ25tZW50Lmpz
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gQXNzaWdubWVudC5qczsg
cGF0aCA9IC4uLy4uLy4uL0Fzc2lnbm1lbnQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5NTU2OUJBMjBGNTZDRDYwMEY1Q0YzNCAvKiBBZGRyZXNzU3BhY2UuanMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBBZGRyZXNzU3BhY2UuanM7IHBhdGggPSAu
Li8uLi8uLi9BZGRyZXNzU3BhY2UuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
NTU2OUJCMjBGNTZDRDYwMEY1Q0YzNCAvKiBDaGVja1JlY3Vyc2l2ZVR5cGVzLmpzICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gQ2hlY2tSZWN1cnNpdmVUeXBlcy5qczsg
cGF0aCA9IC4uLy4uLy4uL0NoZWNrUmVjdXJzaXZlVHlwZXMuanM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU5NTU2OUJDMjBGNTZDRDcwMEY1Q0YzNCAvKiBBbGwuanMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBBbGwuanM7IHBhdGggPSAuLi8uLi8uLi9B
bGwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUJEMjBGNTZDRDcwMEY1
Q0YzNCAvKiBBbm9ueW1vdXNWYXJpYWJsZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNj
cmlwdDsgbmFtZSA9IEFub255bW91c1ZhcmlhYmxlLmpzOyBwYXRoID0gLi4vLi4vLi4vQW5vbnlt
b3VzVmFyaWFibGUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUJFMjBG
NTZDRDcwMEY1Q0YzNCAvKiBBdXRvV3JhcHBlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2
YXNjcmlwdDsgbmFtZSA9IEF1dG9XcmFwcGVyLmpzOyBwYXRoID0gLi4vLi4vLi4vQXV0b1dyYXBw
ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUJGMjBGNTZDRDcwMEY1
Q0YzNCAvKiBDYWxsRXhwcmVzc2lvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlw
dDsgbmFtZSA9IENhbGxFeHByZXNzaW9uLmpzOyBwYXRoID0gLi4vLi4vLi4vQ2FsbEV4cHJlc3Np
b24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUMwMjBGNTZDRDcwMEY1
Q0YzNCAvKiBDYWxsRnVuY3Rpb24uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7
IG5hbWUgPSBDYWxsRnVuY3Rpb24uanM7IHBhdGggPSAuLi8uLi8uLi9DYWxsRnVuY3Rpb24uanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUMxMjBGNTZDRDcwMEY1Q0YzNCAv
KiBDaGVja2VyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gQ2hl
Y2tlci5qczsgcGF0aCA9IC4uLy4uLy4uL0NoZWNrZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5NTU2OUQ0MjBGNTZDRUQwMEY1Q0YzNCAvKiBDaGVja1dyYXBwZWQuanMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBDaGVja1dyYXBwZWQuanM7IHBh
dGggPSAuLi8uLi8uLi9DaGVja1dyYXBwZWQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5NTU2OUQ1MjBGNTZDRUQwMEY1Q0YzNCAvKiBDb25zdGV4cHJGb2xkZXIuanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBDb25zdGV4cHJGb2xkZXIuanM7IHBh
dGggPSAuLi8uLi8uLi9Db25zdGV4cHJGb2xkZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5NTU2OUQ2MjBGNTZDRUQwMEY1Q0YzNCAvKiBDcmVhdGVMaXRlcmFsVHlwZS5qcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IENyZWF0ZUxpdGVyYWxUeXBl
LmpzOyBwYXRoID0gLi4vLi4vLi4vQ3JlYXRlTGl0ZXJhbFR5cGUuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5NTU2OUQ3MjBGNTZDRUQwMEY1Q0YzNCAvKiBDb250aW51ZS5qcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IENvbnRpbnVlLmpzOyBwYXRo
ID0gLi4vLi4vLi4vQ29udGludWUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5
NTU2OUQ4MjBGNTZDRUQwMEY1Q0YzNCAvKiBDcmVhdGVMaXRlcmFsLmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gQ3JlYXRlTGl0ZXJhbC5qczsgcGF0aCA9IC4uLy4u
Ly4uL0NyZWF0ZUxpdGVyYWwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2
OUQ5MjBGNTZDRUQwMEY1Q0YzNCAvKiBDb252ZXJ0UHRyVG9BcnJheVJlZkV4cHJlc3Npb24uanMg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBDb252ZXJ0UHRyVG9BcnJh
eVJlZkV4cHJlc3Npb24uanM7IHBhdGggPSAuLi8uLi8uLi9Db252ZXJ0UHRyVG9BcnJheVJlZkV4
cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OURCMjBGNTZD
RUUwMEY1Q0YzNCAvKiBDbG9uZVByb2dyYW0uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IG5hbWUgPSBDbG9uZVByb2dyYW0uanM7IHBhdGggPSAuLi8uLi8uLi9DbG9uZVByb2dy
YW0uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OURDMjBGNTZDRUUwMEY1
Q0YzNCAvKiBDb21tYUV4cHJlc3Npb24uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3Jp
cHQ7IG5hbWUgPSBDb21tYUV4cHJlc3Npb24uanM7IHBhdGggPSAuLi8uLi8uLi9Db21tYUV4cHJl
c3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUU2MjBGNTZEMDUw
MEY1Q0YzNCAvKiBGdW5jdGlvbkxpa2VCbG9jay5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEZ1
bmN0aW9uTGlrZUJsb2NrLmpzOyBwYXRoID0gLi4vLi4vLi4vRnVuY3Rpb25MaWtlQmxvY2suanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUU3MjBGNTZEMDUwMEY1Q0YzNCAv
KiBFUHRyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRVB0ci5qczsgcGF0aCA9IC4uLy4uLy4u
L0VQdHIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUU4MjBGNTZEMDUw
MEY1Q0YzNCAvKiBGdW5jRGVmLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRnVuY0RlZi5qczsg
cGF0aCA9IC4uLy4uLy4uL0Z1bmNEZWYuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU5NTU2OUU5MjBGNTZEMDUwMEY1Q0YzNCAvKiBGdW5jUGFyYW1ldGVyLmpzICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBuYW1lID0gRnVuY1BhcmFtZXRlci5qczsgcGF0aCA9IC4uLy4uLy4uL0Z1bmNQYXJhbWV0
ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUVBMjBGNTZEMDUwMEY1
Q0YzNCAvKiBGbG9hdExpdGVyYWxUeXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRmxvYXRM
aXRlcmFsVHlwZS5qczsgcGF0aCA9IC4uLy4uLy4uL0Zsb2F0TGl0ZXJhbFR5cGUuanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NTU2OUVCMjBGNTZEMDUwMEY1Q0YzNCAvKiBGb2xk
Q29uc3RleHBycy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEZvbGRDb25zdGV4cHJzLmpzOyBw
YXRoID0gLi4vLi4vLi4vRm9sZENvbnN0ZXhwcnMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5NzNFNUM3MjEzRjMzODUwMDVENzlGQyAvKiBNU0xGdW5jdGlvbkZvcndhcmREZWNs
YXJhdGlvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IE1TTEZ1
bmN0aW9uRm9yd2FyZERlY2xhcmF0aW9uLmpzOyBwYXRoID0gLi4vLi4vTVNMRnVuY3Rpb25Gb3J3
YXJkRGVjbGFyYXRpb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5NzNFNUM4
MjEzRjMzODUwMDVENzlGQyAvKiBNU0xTdGF0ZW1lbnRFbWl0dGVyLmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTVNMU3RhdGVtZW50RW1pdHRlci5qczsgcGF0aCA9
IC4uLy4uL01TTFN0YXRlbWVudEVtaXR0ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5N0VEN0UxMjE0QjgyMjkwMEFEMTE0MCAvKiBNU0xOYW1lTWFuZ2xlci5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2
YXNjcmlwdDsgbmFtZSA9IE1TTE5hbWVNYW5nbGVyLmpzOyBwYXRoID0gLi4vLi4vTVNMTmFtZU1h
bmdsZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5N0VEN0UyMjE0QjgyMjkw
MEFEMTE0MCAvKiBNU0xUeXBlQXR0cmlidXRlc01hcC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9
IE1TTFR5cGVBdHRyaWJ1dGVzTWFwLmpzOyBwYXRoID0gLi4vLi4vTVNMVHlwZUF0dHJpYnV0ZXNN
YXAuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5N0VEN0U0MjE0QjgyMjkwMEFE
MTE0MCAvKiBNU0xOYXRpdmVGdW5jdGlvbkNhbGwuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBN
U0xOYXRpdmVGdW5jdGlvbkNhbGwuanM7IHBhdGggPSAuLi8uLi9NU0xOYXRpdmVGdW5jdGlvbkNh
bGwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5N0VEN0U1MjE0QjgyMjkwMEFE
MTE0MCAvKiBNU0xDb2RlZ2VuQWxsLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTVNMQ29kZWdl
bkFsbC5qczsgcGF0aCA9IC4uLy4uL01TTENvZGVnZW5BbGwuanM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU5N0VEN0U2MjE0QjgyMjkwMEFEMTE0MCAvKiBNU0xUeXBlVW5pZmllci5q
cyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IE1TTFR5cGVVbmlmaWVyLmpzOyBwYXRoID0gLi4vLi4v
TVNMVHlwZVVuaWZpZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5N0VEN0U3
MjE0QjgyMjkwMEFEMTE0MCAvKiBNU0xUeXBlQXR0cmlidXRlcy5qcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
bmFtZSA9IE1TTFR5cGVBdHRyaWJ1dGVzLmpzOyBwYXRoID0gLi4vLi4vTVNMVHlwZUF0dHJpYnV0
ZXMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5N0VEN0U4MjE0QjgyMjkwMEFE
MTE0MCAvKiBNU0xDb21waWxlUmVzdWx0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTVNMQ29t
cGlsZVJlc3VsdC5qczsgcGF0aCA9IC4uLy4uL01TTENvbXBpbGVSZXN1bHQuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzQ2MjBGNTZENUEwMDdGMjQ2NiAvKiBEb1doaWxl
TG9vcC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IERvV2hpbGVM
b29wLmpzOyBwYXRoID0gLi4vLi4vLi4vRG9XaGlsZUxvb3AuanM7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU5QUQwNzQ4MjBGNTZENUEwMDdGMjQ2NiAvKiBFQnVmZmVyLmpzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRUJ1ZmZlci5qczsgcGF0aCA9IC4u
Ly4uLy4uL0VCdWZmZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzQ5
MjBGNTZENUEwMDdGMjQ2NiAvKiBFQXJyYXlSZWYuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmph
dmFzY3JpcHQ7IG5hbWUgPSBFQXJyYXlSZWYuanM7IHBhdGggPSAuLi8uLi8uLi9FQXJyYXlSZWYu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzRBMjBGNTZENUIwMDdGMjQ2
NiAvKiBFQnVmZmVyQnVpbGRlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
bmFtZSA9IEVCdWZmZXJCdWlsZGVyLmpzOyBwYXRoID0gLi4vLi4vLi4vRUJ1ZmZlckJ1aWxkZXIu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzRCMjBGNTZENUIwMDdGMjQ2
NiAvKiBEb3RFeHByZXNzaW9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBu
YW1lID0gRG90RXhwcmVzc2lvbi5qczsgcGF0aCA9IC4uLy4uLy4uL0RvdEV4cHJlc3Npb24uanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzUzMjBGNTZENjkwMDdGMjQ2NiAv
KiBFdmFsdWF0aW9uQ29tbW9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRXZhbHVhdGlvbkNv
bW1vbi5qczsgcGF0aCA9IC4uLy4uLy4uL0V2YWx1YXRpb25Db21tb24uanM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzU0MjBGNTZENjkwMDdGMjQ2NiAvKiBFeHByZXNzaW9u
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRXhwcmVzc2lvbi5qczsgcGF0aCA9IC4uLy4uLy4u
L0V4cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzU1MjBG
NTZENjkwMDdGMjQ2NiAvKiBFbnVtTWVtYmVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRW51
bU1lbWJlci5qczsgcGF0aCA9IC4uLy4uLy4uL0VudW1NZW1iZXIuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5QUQwNzU2MjBGNTZENjkwMDdGMjQ2NiAvKiBGbGF0dGVuZWRTdHJ1
Y3RPZmZzZXRHYXRoZXJlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEZsYXR0ZW5lZFN0cnVj
dE9mZnNldEdhdGhlcmVyLmpzOyBwYXRoID0gLi4vLi4vLi4vRmxhdHRlbmVkU3RydWN0T2Zmc2V0
R2F0aGVyZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzU3MjBGNTZE
NjkwMDdGMjQ2NiAvKiBFdmFsdWF0b3IuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBFdmFsdWF0
b3IuanM7IHBhdGggPSAuLi8uLi8uLi9FdmFsdWF0b3IuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5QUQwNzU4MjBGNTZENjkwMDdGMjQ2NiAvKiBGaW5kSGlnaFpvbWJpZXMuanMg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBGaW5kSGlnaFpvbWJpZXMuanM7IHBhdGggPSAuLi8uLi8u
Li9GaW5kSGlnaFpvbWJpZXMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQw
NzU5MjBGNTZENjkwMDdGMjQ2NiAvKiBFeHByZXNzaW9uRmluZGVyLmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBuYW1lID0gRXhwcmVzc2lvbkZpbmRlci5qczsgcGF0aCA9IC4uLy4uLy4uL0V4cHJlc3Npb25G
aW5kZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzVBMjBGNTZENjkw
MDdGMjQ2NiAvKiBFbnVtVHlwZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEVudW1UeXBlLmpz
OyBwYXRoID0gLi4vLi4vLi4vRW51bVR5cGUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU5QUQwNzVCMjBGNTZENjkwMDdGMjQ2NiAvKiBFeHRlcm5hbE9yaWdpbi5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2
YXNjcmlwdDsgbmFtZSA9IEV4dGVybmFsT3JpZ2luLmpzOyBwYXRoID0gLi4vLi4vLi4vRXh0ZXJu
YWxPcmlnaW4uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5QUQwNzVDMjBGNTZE
NjkwMDdGMjQ2NiAvKiBGbG9hdExpdGVyYWwuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBGbG9h
dExpdGVyYWwuanM7IHBhdGggPSAuLi8uLi8uLi9GbG9hdExpdGVyYWwuanM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU5QkM1MEQ5MjE1NUFEMUUwMDA1OTRFOCAvKiBBbGxvY2F0ZUF0
RW50cnlQb2ludHMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBB
bGxvY2F0ZUF0RW50cnlQb2ludHMuanM7IHBhdGggPSAuLi8uLi8uLi9BbGxvY2F0ZUF0RW50cnlQ
b2ludHMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RDdDQjk0MjE0QjgyNDIw
MEYxQzkxOCAvKiBXaGxzbFRvTXNsLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBuYW1lID0gV2hsc2xUb01zbC5qczsgcGF0aCA9IC4uLy4uL1dobHNsVG9Nc2wuanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RDdDQjk1MjE0QjgyNDIwMEYxQzkxOCAvKiBNU0xC
YWNrZW5kLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTVNMQmFj
a2VuZC5qczsgcGF0aCA9IC4uLy4uL01TTEJhY2tlbmQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5RDdDQjk2MjE0QjgyNDIwMEYxQzkxOCAvKiBNU0xDb25zdGV4cHJFbWl0dGVy
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTVNMQ29uc3RleHBy
RW1pdHRlci5qczsgcGF0aCA9IC4uLy4uL01TTENvbnN0ZXhwckVtaXR0ZXIuanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RDdDQjlBMjE0QjgyQjcwMEYxQzkxOCAvKiBUZXh0dXJl
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gVGV4dHVyZS5qczsg
cGF0aCA9IC4uLy4uLy4uL1RleHR1cmUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU5RDdDQjlCMjE0QjgyQjcwMEYxQzkxOCAvKiBMYXRlQ2hlY2tBbmRMYXlvdXRCdWZmZXJzLmpz
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gTGF0ZUNoZWNrQW5kTGF5
b3V0QnVmZmVycy5qczsgcGF0aCA9IC4uLy4uLy4uL0xhdGVDaGVja0FuZExheW91dEJ1ZmZlcnMu
anM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RDdDQjlDMjE0QjgyQjcwMEYxQzkx
OCAvKiBDYXN0cy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IENh
c3RzLmpzOyBwYXRoID0gLi4vLi4vLi4vQ2FzdHMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU5RDdDQjlEMjE0QjgyQjgwMEYxQzkxOCAvKiBTYW1wbGVyLmpzICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gU2FtcGxlci5qczsgcGF0aCA9IC4uLy4uLy4u
L1NhbXBsZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RDdDQjlFMjE0Qjgy
QjgwMEYxQzkxOCAvKiBUZXh0dXJlT3BlcmF0aW9ucy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
amF2YXNjcmlwdDsgbmFtZSA9IFRleHR1cmVPcGVyYXRpb25zLmpzOyBwYXRoID0gLi4vLi4vLi4v
VGV4dHVyZU9wZXJhdGlvbnMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RDdD
QjlGMjE0QjgyQjgwMEYxQzkxOCAvKiBXTGV4aWNhbEVycm9yLmpzICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5qYXZhc2NyaXB0OyBuYW1lID0gV0xleGljYWxFcnJvci5qczsgcGF0aCA9IC4uLy4uLy4u
L1dMZXhpY2FsRXJyb3IuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RkNFQjU1
MjBGNTZEOTIwMDlCMzYyOSAvKiBGdW5jLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBuYW1lID0gRnVuYy5qczsgcGF0aCA9IC4uLy4uLy4uL0Z1bmMuanM7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU5RkNFQjU3MjBGNTZEOTMwMDlCMzYyOSAvKiBJZlN0YXRlbWVu
dC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IElmU3RhdGVtZW50
LmpzOyBwYXRoID0gLi4vLi4vLi4vSWZTdGF0ZW1lbnQuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU5RkNFQjU4MjBGNTZEOTMwMDlCMzYyOSAvKiBJZGVudGl0eUV4cHJlc3Npb24u
anMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBJZGVudGl0eUV4cHJl
c3Npb24uanM7IHBhdGggPSAuLi8uLi8uLi9JZGVudGl0eUV4cHJlc3Npb24uanM7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RkNFQjVBMjBGNTZEOTMwMDlCMzYyOSAvKiBGb3JMb29w
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gRm9yTG9vcC5qczsg
cGF0aCA9IC4uLy4uLy4uL0Zvckxvb3AuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU5RkNFQjVCMjBGNTZEOTMwMDlCMzYyOSAvKiBGaWVsZC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuamF2YXNjcmlwdDsgbmFtZSA9IEZpZWxkLmpzOyBwYXRoID0gLi4vLi4vLi4vRmllbGQuanM7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RkNFQjYzMjBGNTZEQTQwMDlCMzYyOSAv
KiBJbmRleEV4cHJlc3Npb24uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBJbmRleEV4cHJlc3Np
b24uanM7IHBhdGggPSAuLi8uLi8uLi9JbmRleEV4cHJlc3Npb24uanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU5RkNFQjY0MjBGNTZEQTUwMDlCMzYyOSAvKiBMYXRlQ2hlY2tlci5q
cyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IExhdGVDaGVja2VyLmpzOyBwYXRoID0gLi4vLi4vLi4v
TGF0ZUNoZWNrZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RkNFQjY1MjBG
NTZEQTUwMDlCMzYyOSAvKiBJbmZlclR5cGVzRm9yQ2FsbC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFt
ZSA9IEluZmVyVHlwZXNGb3JDYWxsLmpzOyBwYXRoID0gLi4vLi4vLi4vSW5mZXJUeXBlc0ZvckNh
bGwuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU5RkNFQjY2MjBGNTZEQTUwMDlC
MzYyOSAvKiBJbmxpbmUuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBJbmxpbmUuanM7IHBhdGgg
PSAuLi8uLi8uLi9JbmxpbmUuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisvKiBFbmQg
UEJYRmlsZVJlZmVyZW5jZSBzZWN0aW9uICovCisKKy8qIEJlZ2luIFBCWEZyYW1ld29ya3NCdWls
ZFBoYXNlIHNlY3Rpb24gKi8KKwkJRTk0QzA2QkQyMEY1NkE0MDAwNjcyOTkyIC8qIEZyYW1ld29y
a3MgKi8gPSB7CisJCQlpc2EgPSBQQlhGcmFtZXdvcmtzQnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0
aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9ICgKKwkJCQlFOTJEMTA5MTIwRjU2RjU3
MDBENzc2QjIgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCisJ
CQkJRTkyRDEwOEYyMEY1NkY0RjAwRDc3NkIyIC8qIE1ldGFsLmZyYW1ld29yayBpbiBGcmFtZXdv
cmtzICovLAorCQkJCUU5MkQxMDhEMjBGNTZGNDUwMEQ3NzZCMiAvKiBNZXRhbEtpdC5mcmFtZXdv
cmsgaW4gRnJhbWV3b3JrcyAqLywKKwkJCSk7CisJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rw
cm9jZXNzaW5nID0gMDsKKwkJfTsKKwkJRTk0QzA2RDMyMEY1NkE0MjAwNjcyOTkyIC8qIEZyYW1l
d29ya3MgKi8gPSB7CisJCQlpc2EgPSBQQlhGcmFtZXdvcmtzQnVpbGRQaGFzZTsKKwkJCWJ1aWxk
QWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9ICgKKwkJCSk7CisJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJfTsKKy8qIEVuZCBQQlhGcmFtZXdv
cmtzQnVpbGRQaGFzZSBzZWN0aW9uICovCisKKy8qIEJlZ2luIFBCWEdyb3VwIHNlY3Rpb24gKi8K
KwkJRTkwNkIwNEEyMTE0QkQxRDAwQUQxQzVFIC8qIERlbW8gc2hhZGVycyAqLyA9IHsKKwkJCWlz
YSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRTkyRDEwOTIyMEY1NzM0OTAwRDc3
NkIyIC8qIERlZmF1bHQud2hsc2wgKi8sCisJCQkJRTkwNkIwNDUyMTEzOUI3NzAwQUQxQzVFIC8q
IEp1bGlhLndobHNsICovLAorCQkJCUU5NEQxMjRFMjExNEJENzYwMEIwRjk2NyAvKiBNYW5kZWxi
cm90LndobHNsICovLAorCQkJKTsKKwkJCXBhdGggPSAiRGVtbyBzaGFkZXJzIjsKKwkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUU5MkQxMDhCMjBGNTZGNDQwMEQ3NzZCMiAvKiBG
cmFtZXdvcmtzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJ
CQlFOTJEMTA5MDIwRjU2RjU3MDBENzc2QjIgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrICov
LAorCQkJCUU5MkQxMDhFMjBGNTZGNEYwMEQ3NzZCMiAvKiBNZXRhbC5mcmFtZXdvcmsgKi8sCisJ
CQkJRTkyRDEwOEMyMEY1NkY0NTAwRDc3NkIyIC8qIE1ldGFsS2l0LmZyYW1ld29yayAqLywKKwkJ
CSk7CisJCQluYW1lID0gRnJhbWV3b3JrczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJ
CX07CisJCUU5MkQxMUFFMjBGNzBCQUUwMEQ3NzZCMiAvKiBSZW5kZXJlciAqLyA9IHsKKwkJCWlz
YSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRTkyRDExQUIyMEY3MDgxNTAwRDc3
NkIyIC8qIE9mZnNjcmVlblJlbmRlcmVyLmggKi8sCisJCQkJRTkyRDExQUMyMEY3MDgxNTAwRDc3
NkIyIC8qIE9mZnNjcmVlblJlbmRlcmVyLm0gKi8sCisJCQkJRTkyRDEwQUQyMEY1N0M5RjAwRDc3
NkIyIC8qIE9uc2NyZWVuUmVuZGVyZXIuaCAqLywKKwkJCQlFOTJEMTBBRTIwRjU3QzlGMDBENzc2
QjIgLyogT25zY3JlZW5SZW5kZXJlci5tICovLAorCQkJCUU5MkQxMTEzMjBGNkZGQjYwMEQ3NzZC
MiAvKiBSZW5kZXJlci5oICovLAorCQkJCUU5MkQxMTE0MjBGNkZGQjYwMEQ3NzZCMiAvKiBSZW5k
ZXJlci5tICovLAorCQkJKTsKKwkJCXBhdGggPSBSZW5kZXJlcjsKKwkJCXNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7CisJCX07CisJCUU5MkVERkY0MjExNTQ2OTEwMDQyRjk2MCAvKiBBcHAgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUU5MkVERkY1MjExNTQ2
QTQwMDQyRjk2MCAvKiBBcHBEZWxlZ2F0ZS5oICovLAorCQkJCUU5MkVERkY3MjExNTQ2QTQwMDQy
Rjk2MCAvKiBBcHBEZWxlZ2F0ZS5tICovLAorCQkJCUU5MkVERkY4MjExNTQ2QTQwMDQyRjk2MCAv
KiBDdXN0b21NZXRhbFZpZXcuaCAqLywKKwkJCQlFOTJFREZGNjIxMTU0NkE0MDA0MkY5NjAgLyog
Q3VzdG9tTWV0YWxWaWV3Lm0gKi8sCisJCQkJRTkyRURGRkUyMTE1NDZBQjAwNDJGOTYwIC8qIE1h
aW4uc3Rvcnlib2FyZCAqLywKKwkJCQlFOTJFREZGOTIxMTU0NkE0MDA0MkY5NjAgLyogVmlld0Nv
bnRyb2xsZXIuaCAqLywKKwkJCQlFOTJFREZGQTIxMTU0NkE0MDA0MkY5NjAgLyogVmlld0NvbnRy
b2xsZXIubSAqLywKKwkJCSk7CisJCQluYW1lID0gQXBwOworCQkJc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsKKwkJfTsKKwkJRTkyRUUwMDEyMTE1NDk5RTAwNDJGOTYwIC8qIFRlc3QgZXhlY3V0aW9u
ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlFOTJFRTAw
QjIxMTU1NDk4MDA0MkY5NjAgLyogX1NoYXJlZE1ldGFsLnR4dCAqLywKKwkJCQlFOTJFRTAwMjIx
MTU0OUM1MDA0MkY5NjAgLyogVGVzdENhbGxBcmd1bWVudC5oICovLAorCQkJCUU5MkVFMDAzMjEx
NTQ5QzUwMDQyRjk2MCAvKiBUZXN0Q2FsbEFyZ3VtZW50Lm0gKi8sCisJCQkJRTkyRUUwMDgyMTE1
NEI1QTAwNDJGOTYwIC8qIFRlc3REZXNjcmlwdGlvbi5oICovLAorCQkJCUU5MkVFMDA5MjExNTRC
NUEwMDQyRjk2MCAvKiBUZXN0RGVzY3JpcHRpb24ubSAqLywKKwkJCQlFOTJFRTAwNTIxMTU0QUM0
MDA0MkY5NjAgLyogVGVzdEZhbWlseS5oICovLAorCQkJCUU5MkVFMDA2MjExNTRBQzQwMDQyRjk2
MCAvKiBUZXN0RmFtaWx5Lm0gKi8sCisJCQkJRTkyRUUwMEQyMTE1NjMzMDAwNDJGOTYwIC8qIFRl
c3RGYW1pbHlSdW5uZXIuaCAqLywKKwkJCQlFOTJFRTAwRTIxMTU2MzMwMDA0MkY5NjAgLyogVGVz
dEZhbWlseVJ1bm5lci5tICovLAorCQkJKTsKKwkJCW5hbWUgPSAiVGVzdCBleGVjdXRpb24iOwor
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRTk0QzA2QjcyMEY1NkE0MDAwNjcy
OTkyID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlFOTRDMDZD
MjIwRjU2QTQwMDA2NzI5OTIgLyogQ29yZSAqLywKKwkJCQlFOTJEMTA4QjIwRjU2RjQ0MDBENzc2
QjIgLyogRnJhbWV3b3JrcyAqLywKKwkJCQlFOTRDMDZDMTIwRjU2QTQwMDA2NzI5OTIgLyogUHJv
ZHVjdHMgKi8sCisJCQkJRTk0QzA2RDkyMEY1NkE0MjAwNjcyOTkyIC8qIFdITFNMIFRlc3RzICov
LAorCQkJKTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUU5NEMwNkMxMjBG
NTZBNDAwMDY3Mjk5MiAvKiBQcm9kdWN0cyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJ
Y2hpbGRyZW4gPSAoCisJCQkJRTk0QzA2QzAyMEY1NkE0MDAwNjcyOTkyIC8qIFdITFNMIFRlc3Rz
LmFwcCAqLywKKwkJCQlFOTRDMDZENjIwRjU2QTQyMDA2NzI5OTIgLyogV0hMU0wgVGVzdHNUZXN0
cy54Y3Rlc3QgKi8sCisJCQkpOworCQkJbmFtZSA9IFByb2R1Y3RzOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRTk0QzA2QzIyMEY1NkE0MDAwNjcyOTkyIC8qIENvcmUgKi8g
PSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUU5MkVERkY0MjEx
NTQ2OTEwMDQyRjk2MCAvKiBBcHAgKi8sCisJCQkJRTkwNkIwNEEyMTE0QkQxRDAwQUQxQzVFIC8q
IERlbW8gc2hhZGVycyAqLywKKwkJCQlFOTJEMTFBRTIwRjcwQkFFMDBENzc2QjIgLyogUmVuZGVy
ZXIgKi8sCisJCQkJRTk0QzA2RjYyMEY1NkM0RjAwNjcyOTkyIC8qIFNjcmlwdHMgKi8sCisJCQkJ
RTkyRUUwMDEyMTE1NDk5RTAwNDJGOTYwIC8qIFRlc3QgZXhlY3V0aW9uICovLAorCQkJCUU5NEMw
NkM5MjBGNTZBNDIwMDY3Mjk5MiAvKiBBc3NldHMueGNhc3NldHMgKi8sCisJCQkJRTkyRDEwODgy
MEY1NkYwNjAwRDc3NkIyIC8qIENvbXBpbGVyLmggKi8sCisJCQkJRTkyRDEwODkyMEY1NkYwNjAw
RDc3NkIyIC8qIENvbXBpbGVyLm0gKi8sCisJCQkJRTkyRDExQjkyMEY3RjY3MzAwRDc3NkIyIC8q
IENvbXBpbGVSZXN1bHQuaCAqLywKKwkJCQlFOTJEMTFCQTIwRjdGNjczMDBENzc2QjIgLyogQ29t
cGlsZVJlc3VsdC5tICovLAorCQkJCUU5NEMwNkNFMjBGNTZBNDIwMDY3Mjk5MiAvKiBJbmZvLnBs
aXN0ICovLAorCQkJCUU5NEMwNkNGMjBGNTZBNDIwMDY3Mjk5MiAvKiBtYWluLm0gKi8sCisJCQkJ
RTk0QzA2RDEyMEY1NkE0MjAwNjcyOTkyIC8qIFdITFNMLmVudGl0bGVtZW50cyAqLywKKwkJCSk7
CisJCQlwYXRoID0gQ29yZTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUU5
NEMwNkQ5MjBGNTZBNDIwMDY3Mjk5MiAvKiBXSExTTCBUZXN0cyAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRTk0QzA2REMyMEY1NkE0MjAwNjcyOTkyIC8q
IEluZm8ucGxpc3QgKi8sCisJCQkJRTk0QzA2REEyMEY1NkE0MjAwNjcyOTkyIC8qIFdITFNMX1Rv
eVRlc3RzLm0gKi8sCisJCQkpOworCQkJbmFtZSA9ICJXSExTTCBUZXN0cyI7CisJCQlwYXRoID0g
IldITFNMIFRveVRlc3RzIjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUU5
NEMwNkY2MjBGNTZDNEYwMDY3Mjk5MiAvKiBTY3JpcHRzICovID0geworCQkJaXNhID0gUEJYR3Jv
dXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlFOTU1NjlCQTIwRjU2Q0Q2MDBGNUNGMzQgLyogQWRk
cmVzc1NwYWNlLmpzICovLAorCQkJCUU5NTU2OUJDMjBGNTZDRDcwMEY1Q0YzNCAvKiBBbGwuanMg
Ki8sCisJCQkJRTlCQzUwRDkyMTU1QUQxRTAwMDU5NEU4IC8qIEFsbG9jYXRlQXRFbnRyeVBvaW50
cy5qcyAqLywKKwkJCQlFOTU1NjlCRDIwRjU2Q0Q3MDBGNUNGMzQgLyogQW5vbnltb3VzVmFyaWFi
bGUuanMgKi8sCisJCQkJRTk1NTY5QjUyMEY1NkNENjAwRjVDRjM0IC8qIEFycmF5UmVmVHlwZS5q
cyAqLywKKwkJCQlFOTU1NjlCNDIwRjU2Q0Q2MDBGNUNGMzQgLyogQXJyYXlUeXBlLmpzICovLAor
CQkJCUU5NTU2OUI5MjBGNTZDRDYwMEY1Q0YzNCAvKiBBc3NpZ25tZW50LmpzICovLAorCQkJCUU5
NTU2OUJFMjBGNTZDRDcwMEY1Q0YzNCAvKiBBdXRvV3JhcHBlci5qcyAqLywKKwkJCQlFOTRDMDZG
QzIwRjU2Q0EzMDA2NzI5OTIgLyogQmxvY2suanMgKi8sCisJCQkJRTk1NTY5QjEyMEY1NkNENjAw
RjVDRjM0IC8qIEJvb2xMaXRlcmFsLmpzICovLAorCQkJCUU5NTU2OUIwMjBGNTZDRDYwMEY1Q0Yz
NCAvKiBCcmVhay5qcyAqLywKKwkJCQlFOTIxRDYzNDIxMzhDMDI2MDA3NzUwOTkgLyogQnVpbHRp
bk1hdHJpeEdldHRlci5qcyAqLywKKwkJCQlFOTIxRDYzNTIxMzhDMDI2MDA3NzUwOTkgLyogQnVp
bHRpbk1hdHJpeFNldHRlci5qcyAqLywKKwkJCQlFOTQxQUNCOTIxMzRBNUJCMDAzOTJCQTkgLyog
QnVpbHRpblZlY3RvckdldHRlci5qcyAqLywKKwkJCQlFOTQxQUNCQzIxMzRBNUJCMDAzOTJCQTkg
LyogQnVpbHRpblZlY3RvclNldHRlci5qcyAqLywKKwkJCQlFOTU1NjlCRjIwRjU2Q0Q3MDBGNUNG
MzQgLyogQ2FsbEV4cHJlc3Npb24uanMgKi8sCisJCQkJRTk1NTY5QzAyMEY1NkNENzAwRjVDRjM0
IC8qIENhbGxGdW5jdGlvbi5qcyAqLywKKwkJCQlFOUQ3Q0I5QzIxNEI4MkI3MDBGMUM5MTggLyog
Q2FzdHMuanMgKi8sCisJCQkJRTk1NTY5QjgyMEY1NkNENjAwRjVDRjM0IC8qIENoZWNrLmpzICov
LAorCQkJCUU5NTU2OUMxMjBGNTZDRDcwMEY1Q0YzNCAvKiBDaGVja2VyLmpzICovLAorCQkJCUU5
NTU2OUI2MjBGNTZDRDYwMEY1Q0YzNCAvKiBDaGVja0xpdGVyYWxUeXBlcy5qcyAqLywKKwkJCQlF
OTU1NjlCMzIwRjU2Q0Q2MDBGNUNGMzQgLyogQ2hlY2tMb29wcy5qcyAqLywKKwkJCQlFOTRDMDZG
QTIwRjU2Q0EzMDA2NzI5OTIgLyogQ2hlY2tSZWN1cnNpb24uanMgKi8sCisJCQkJRTk1NTY5QkIy
MEY1NkNENjAwRjVDRjM0IC8qIENoZWNrUmVjdXJzaXZlVHlwZXMuanMgKi8sCisJCQkJRTk1NTY5
QjIyMEY1NkNENjAwRjVDRjM0IC8qIENoZWNrUmV0dXJucy5qcyAqLywKKwkJCQlFOTQxQUNBRTIx
MzRBNUJBMDAzOTJCQTkgLyogQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMgKi8sCisJCQkJRTk1
NTY5QjcyMEY1NkNENjAwRjVDRjM0IC8qIENoZWNrVW5yZWFjaGFibGVDb2RlLmpzICovLAorCQkJ
CUU5NTU2OUQ0MjBGNTZDRUQwMEY1Q0YzNCAvKiBDaGVja1dyYXBwZWQuanMgKi8sCisJCQkJRTk1
NTY5REIyMEY1NkNFRTAwRjVDRjM0IC8qIENsb25lUHJvZ3JhbS5qcyAqLywKKwkJCQlFOTU1NjlE
QzIwRjU2Q0VFMDBGNUNGMzQgLyogQ29tbWFFeHByZXNzaW9uLmpzICovLAorCQkJCUU5NTU2OUQ1
MjBGNTZDRUQwMEY1Q0YzNCAvKiBDb25zdGV4cHJGb2xkZXIuanMgKi8sCisJCQkJRTk1NTY5RDcy
MEY1NkNFRDAwRjVDRjM0IC8qIENvbnRpbnVlLmpzICovLAorCQkJCUU5NTU2OUQ5MjBGNTZDRUQw
MEY1Q0YzNCAvKiBDb252ZXJ0UHRyVG9BcnJheVJlZkV4cHJlc3Npb24uanMgKi8sCisJCQkJRTk1
NTY5RDgyMEY1NkNFRDAwRjVDRjM0IC8qIENyZWF0ZUxpdGVyYWwuanMgKi8sCisJCQkJRTk1NTY5
RDYyMEY1NkNFRDAwRjVDRjM0IC8qIENyZWF0ZUxpdGVyYWxUeXBlLmpzICovLAorCQkJCUU5NEMw
NkY5MjBGNTZDQTMwMDY3Mjk5MiAvKiBEZXJlZmVyZW5jZUV4cHJlc3Npb24uanMgKi8sCisJCQkJ
RTlBRDA3NEIyMEY1NkQ1QjAwN0YyNDY2IC8qIERvdEV4cHJlc3Npb24uanMgKi8sCisJCQkJRTlB
RDA3NDYyMEY1NkQ1QTAwN0YyNDY2IC8qIERvV2hpbGVMb29wLmpzICovLAorCQkJCUU5QUQwNzQ5
MjBGNTZENUEwMDdGMjQ2NiAvKiBFQXJyYXlSZWYuanMgKi8sCisJCQkJRTlBRDA3NDgyMEY1NkQ1
QTAwN0YyNDY2IC8qIEVCdWZmZXIuanMgKi8sCisJCQkJRTlBRDA3NEEyMEY1NkQ1QjAwN0YyNDY2
IC8qIEVCdWZmZXJCdWlsZGVyLmpzICovLAorCQkJCUU5NEMwNkZEMjBGNTZDQTMwMDY3Mjk5MiAv
KiBFbnVtTGl0ZXJhbC5qcyAqLywKKwkJCQlFOUFEMDc1NTIwRjU2RDY5MDA3RjI0NjYgLyogRW51
bU1lbWJlci5qcyAqLywKKwkJCQlFOUFEMDc1QTIwRjU2RDY5MDA3RjI0NjYgLyogRW51bVR5cGUu
anMgKi8sCisJCQkJRTk1NTY5RTcyMEY1NkQwNTAwRjVDRjM0IC8qIEVQdHIuanMgKi8sCisJCQkJ
RTlBRDA3NTMyMEY1NkQ2OTAwN0YyNDY2IC8qIEV2YWx1YXRpb25Db21tb24uanMgKi8sCisJCQkJ
RTlBRDA3NTcyMEY1NkQ2OTAwN0YyNDY2IC8qIEV2YWx1YXRvci5qcyAqLywKKwkJCQlFOUFEMDc1
NDIwRjU2RDY5MDA3RjI0NjYgLyogRXhwcmVzc2lvbi5qcyAqLywKKwkJCQlFOUFEMDc1OTIwRjU2
RDY5MDA3RjI0NjYgLyogRXhwcmVzc2lvbkZpbmRlci5qcyAqLywKKwkJCQlFOUFEMDc1QjIwRjU2
RDY5MDA3RjI0NjYgLyogRXh0ZXJuYWxPcmlnaW4uanMgKi8sCisJCQkJRTlGQ0VCNUIyMEY1NkQ5
MzAwOUIzNjI5IC8qIEZpZWxkLmpzICovLAorCQkJCUU5QUQwNzU4MjBGNTZENjkwMDdGMjQ2NiAv
KiBGaW5kSGlnaFpvbWJpZXMuanMgKi8sCisJCQkJRTlBRDA3NTYyMEY1NkQ2OTAwN0YyNDY2IC8q
IEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzICovLAorCQkJCUU5QUQwNzVDMjBGNTZE
NjkwMDdGMjQ2NiAvKiBGbG9hdExpdGVyYWwuanMgKi8sCisJCQkJRTk1NTY5RUEyMEY1NkQwNTAw
RjVDRjM0IC8qIEZsb2F0TGl0ZXJhbFR5cGUuanMgKi8sCisJCQkJRTk1NTY5RUIyMEY1NkQwNTAw
RjVDRjM0IC8qIEZvbGRDb25zdGV4cHJzLmpzICovLAorCQkJCUU5RkNFQjVBMjBGNTZEOTMwMDlC
MzYyOSAvKiBGb3JMb29wLmpzICovLAorCQkJCUU5RkNFQjU1MjBGNTZEOTIwMDlCMzYyOSAvKiBG
dW5jLmpzICovLAorCQkJCUU5NTU2OUU4MjBGNTZEMDUwMEY1Q0YzNCAvKiBGdW5jRGVmLmpzICov
LAorCQkJCUU5NTU2OUU5MjBGNTZEMDUwMEY1Q0YzNCAvKiBGdW5jUGFyYW1ldGVyLmpzICovLAor
CQkJCUU5NTU2OUU2MjBGNTZEMDUwMEY1Q0YzNCAvKiBGdW5jdGlvbkxpa2VCbG9jay5qcyAqLywK
KwkJCQlFOTRDMDZGQjIwRjU2Q0EzMDA2NzI5OTIgLyogSGlnaFpvbWJpZUZpbmRlci5qcyAqLywK
KwkJCQlFOUZDRUI1ODIwRjU2RDkzMDA5QjM2MjkgLyogSWRlbnRpdHlFeHByZXNzaW9uLmpzICov
LAorCQkJCUU5RkNFQjU3MjBGNTZEOTMwMDlCMzYyOSAvKiBJZlN0YXRlbWVudC5qcyAqLywKKwkJ
CQlFOUZDRUI2MzIwRjU2REE0MDA5QjM2MjkgLyogSW5kZXhFeHByZXNzaW9uLmpzICovLAorCQkJ
CUU5RkNFQjY1MjBGNTZEQTUwMDlCMzYyOSAvKiBJbmZlclR5cGVzRm9yQ2FsbC5qcyAqLywKKwkJ
CQlFOUZDRUI2NjIwRjU2REE1MDA5QjM2MjkgLyogSW5saW5lLmpzICovLAorCQkJCUU5MkQwRkU4
MjBGNTZEREQwMEQ3NzZCMiAvKiBJbmxpbmVyLmpzICovLAorCQkJCUU5MkQwRkU0MjBGNTZEREQw
MEQ3NzZCMiAvKiBJbnRMaXRlcmFsLmpzICovLAorCQkJCUU5MkQwRkU1MjBGNTZEREQwMEQ3NzZC
MiAvKiBJbnRMaXRlcmFsVHlwZS5qcyAqLywKKwkJCQlFOTJEMEZFNzIwRjU2REREMDBENzc2QjIg
LyogSW50cmluc2ljcy5qcyAqLywKKwkJCQlFOUQ3Q0I5QjIxNEI4MkI3MDBGMUM5MTggLyogTGF0
ZUNoZWNrQW5kTGF5b3V0QnVmZmVycy5qcyAqLywKKwkJCQlFOUZDRUI2NDIwRjU2REE1MDA5QjM2
MjkgLyogTGF0ZUNoZWNrZXIuanMgKi8sCisJCQkJRTkyRDBGRjEyMEY1NkRFQzAwRDc3NkIyIC8q
IExleGVyLmpzICovLAorCQkJCUU5MkQwRkYwMjBGNTZERUIwMEQ3NzZCMiAvKiBMZXhlclRva2Vu
LmpzICovLAorCQkJCUU5MkQwRkYyMjBGNTZERUMwMEQ3NzZCMiAvKiBMaXRlcmFsVHlwZUNoZWNr
ZXIuanMgKi8sCisJCQkJRTkyRDBGRUUyMEY1NkRFQjAwRDc3NkIyIC8qIExvZ2ljYWxFeHByZXNz
aW9uLmpzICovLAorCQkJCUU5MkQwRkVGMjBGNTZERUIwMEQ3NzZCMiAvKiBMb2dpY2FsTm90Lmpz
ICovLAorCQkJCUU5MkQwRkZCMjBGNTZERkIwMEQ3NzZCMiAvKiBMb29wQ2hlY2tlci5qcyAqLywK
KwkJCQlFOTJEMEZGQzIwRjU2REZCMDBENzc2QjIgLyogTWFrZUFycmF5UmVmRXhwcmVzc2lvbi5q
cyAqLywKKwkJCQlFOTJEMEZGOTIwRjU2REZBMDBENzc2QjIgLyogTWFrZVB0ckV4cHJlc3Npb24u
anMgKi8sCisJCQkJRTkyMUQ2MzMyMTM4QzAyNjAwNzc1MDk5IC8qIE1hdHJpeFR5cGUuanMgKi8s
CisJCQkJRTlEN0NCOTUyMTRCODI0MjAwRjFDOTE4IC8qIE1TTEJhY2tlbmQuanMgKi8sCisJCQkJ
RTk3RUQ3RTUyMTRCODIyOTAwQUQxMTQwIC8qIE1TTENvZGVnZW5BbGwuanMgKi8sCisJCQkJRTk3
RUQ3RTgyMTRCODIyOTAwQUQxMTQwIC8qIE1TTENvbXBpbGVSZXN1bHQuanMgKi8sCisJCQkJRTlE
N0NCOTYyMTRCODI0MjAwRjFDOTE4IC8qIE1TTENvbnN0ZXhwckVtaXR0ZXIuanMgKi8sCisJCQkJ
RTkyNzg5QUMyMTNGMzM2NDAwMUVBNzNFIC8qIE1TTEZ1bmN0aW9uRGVjbGFyYXRpb24uanMgKi8s
CisJCQkJRTkyNzg5QUIyMTNGMzM2NDAwMUVBNzNFIC8qIE1TTEZ1bmN0aW9uRGVmaW5pdGlvbi5q
cyAqLywKKwkJCQlFOTczRTVDNzIxM0YzMzg1MDA1RDc5RkMgLyogTVNMRnVuY3Rpb25Gb3J3YXJk
RGVjbGFyYXRpb24uanMgKi8sCisJCQkJRTk3RUQ3RTEyMTRCODIyOTAwQUQxMTQwIC8qIE1TTE5h
bWVNYW5nbGVyLmpzICovLAorCQkJCUU5N0VEN0U0MjE0QjgyMjkwMEFEMTE0MCAvKiBNU0xOYXRp
dmVGdW5jdGlvbkNhbGwuanMgKi8sCisJCQkJRTk3M0U1QzgyMTNGMzM4NTAwNUQ3OUZDIC8qIE1T
TFN0YXRlbWVudEVtaXR0ZXIuanMgKi8sCisJCQkJRTk3RUQ3RTcyMTRCODIyOTAwQUQxMTQwIC8q
IE1TTFR5cGVBdHRyaWJ1dGVzLmpzICovLAorCQkJCUU5N0VEN0UyMjE0QjgyMjkwMEFEMTE0MCAv
KiBNU0xUeXBlQXR0cmlidXRlc01hcC5qcyAqLywKKwkJCQlFOTdFRDdFNjIxNEI4MjI5MDBBRDEx
NDAgLyogTVNMVHlwZVVuaWZpZXIuanMgKi8sCisJCQkJRTkyRDBGRjgyMEY1NkRGQTAwRDc3NkIy
IC8qIE5hbWVDb250ZXh0LmpzICovLAorCQkJCUU5MkQwRkZBMjBGNTZERkIwMEQ3NzZCMiAvKiBO
YW1lRmluZGVyLmpzICovLAorCQkJCUU5MkQxMDAzMjBGNTZFMDkwMEQ3NzZCMiAvKiBOYW1lUmVz
b2x2ZXIuanMgKi8sCisJCQkJRTkyRDEwMDUyMEY1NkUwOTAwRDc3NkIyIC8qIE5hdGl2ZUZ1bmMu
anMgKi8sCisJCQkJRTkyRDEwMDYyMEY1NkUwOTAwRDc3NkIyIC8qIE5hdGl2ZVR5cGUuanMgKi8s
CisJCQkJRTkyRDEwMEYyMEY1NkUxNTAwRDc3NkIyIC8qIE5vZGUuanMgKi8sCisJCQkJRTkyRDEw
MEQyMEY1NkUxNTAwRDc3NkIyIC8qIE5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMgKi8sCisJ
CQkJRTkyRDEwMEMyMEY1NkUxNTAwRDc3NkIyIC8qIE51bGxMaXRlcmFsLmpzICovLAorCQkJCUU5
MkQxMDEwMjBGNTZFMTUwMEQ3NzZCMiAvKiBOdWxsVHlwZS5qcyAqLywKKwkJCQlFOTIxRDYzMjIx
MzhDMDI2MDA3NzUwOTkgLyogT3BlcmF0b3JBbmRlckluZGV4ZXIuanMgKi8sCisJCQkJRTk0MUFD
QjYyMTM0QTVCQjAwMzkyQkE5IC8qIE9wZXJhdG9yQXJyYXlSZWZMZW5ndGguanMgKi8sCisJCQkJ
RTkyRDEwMEUyMEY1NkUxNTAwRDc3NkIyIC8qIE9yaWdpbktpbmQuanMgKi8sCisJCQkJRTkyRDEw
MTkyMEY1NkUyMjAwRDc3NkIyIC8qIE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMgKi8sCisJ
CQkJRTkyRDEwMTcyMEY1NkUyMjAwRDc3NkIyIC8qIFBhcnNlLmpzICovLAorCQkJCUU5MkQxMDE4
MjBGNTZFMjIwMEQ3NzZCMiAvKiBQcmVwYXJlLmpzICovLAorCQkJCUU5MkQxMDFBMjBGNTZFMjIw
MEQ3NzZCMiAvKiBQcm9ncmFtLmpzICovLAorCQkJCUU5MkQxMDE2MjBGNTZFMjEwMEQ3NzZCMiAv
KiBQcm9ncmFtV2l0aFVubmVjZXNzYXJ5VGhpbmdzUmVtb3ZlZC5qcyAqLywKKwkJCQlFOTJEMTAy
MzIwRjU2RTJGMDBENzc2QjIgLyogUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uLmpzICovLAorCQkJ
CUU5MkQxMDIwMjBGNTZFMkYwMEQ3NzZCMiAvKiBQcm9wZXJ0eVJlc29sdmVyLmpzICovLAorCQkJ
CUU5MkQxMDJCMjBGNTZFM0YwMEQ3NzZCMiAvKiBQdHJUeXBlLmpzICovLAorCQkJCUU5MkQxMDJB
MjBGNTZFM0YwMEQ3NzZCMiAvKiBSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzICovLAorCQkJ
CUU5MkQxMDJDMjBGNTZFM0YwMEQ3NzZCMiAvKiBSZWN1cnNpb25DaGVja2VyLmpzICovLAorCQkJ
CUU5MkQxMDJFMjBGNTZFNDAwMEQ3NzZCMiAvKiBSZWN1cnNpdmVUeXBlQ2hlY2tlci5qcyAqLywK
KwkJCQlFOTJEMTAzNTIwRjU2RTRGMDBENzc2QjIgLyogUmVmZXJlbmNlVHlwZS5qcyAqLywKKwkJ
CQlFOTJEMTAzNDIwRjU2RTRGMDBENzc2QjIgLyogUmVzb2x2ZU5hbWVzLmpzICovLAorCQkJCUU5
MkQxMDM4MjBGNTZFNEYwMEQ3NzZCMiAvKiBSZXNvbHZlT3ZlcmxvYWRJbXBsLmpzICovLAorCQkJ
CUU5MkQxMDM2MjBGNTZFNEYwMEQ3NzZCMiAvKiBSZXNvbHZlUHJvcGVydGllcy5qcyAqLywKKwkJ
CQlFOTJEMTAzNzIwRjU2RTRGMDBENzc2QjIgLyogUmVzb2x2ZVR5cGVEZWZzLmpzICovLAorCQkJ
CUU5MkQxMDNFMjBGNTZFNjEwMEQ3NzZCMiAvKiBSZXR1cm4uanMgKi8sCisJCQkJRTkyRDEwNDAy
MEY1NkU2MjAwRDc3NkIyIC8qIFJldHVybkNoZWNrZXIuanMgKi8sCisJCQkJRTkyRDEwNDIyMEY1
NkU2MjAwRDc3NkIyIC8qIFJldHVybkV4Y2VwdGlvbi5qcyAqLywKKwkJCQlFOTJEMTA0MTIwRjU2
RTYyMDBENzc2QjIgLyogUmV3cml0ZXIuanMgKi8sCisJCQkJRTlEN0NCOUQyMTRCODJCODAwRjFD
OTE4IC8qIFNhbXBsZXIuanMgKi8sCisJCQkJRTkyRDEwM0YyMEY1NkU2MjAwRDc3NkIyIC8qIFN0
YW5kYXJkTGlicmFyeS5qcyAqLywKKwkJCQlFOTJEMTA0ODIwRjU2RTczMDBENzc2QjIgLyogU3Rh
dGVtZW50Q2xvbmVyLmpzICovLAorCQkJCUU5MkQxMDQ5MjBGNTZFNzMwMEQ3NzZCMiAvKiBTdHJ1
Y3RMYXlvdXRCdWlsZGVyLmpzICovLAorCQkJCUU5MkQxMDRBMjBGNTZFNzMwMEQ3NzZCMiAvKiBT
dHJ1Y3RUeXBlLmpzICovLAorCQkJCUU5MkQxMDRCMjBGNTZFNzMwMEQ3NzZCMiAvKiBTd2l0Y2hD
YXNlLmpzICovLAorCQkJCUU5MkQxMDUyMjBGNTZFODQwMEQ3NzZCMiAvKiBTd2l0Y2hTdGF0ZW1l
bnQuanMgKi8sCisJCQkJRTk0MUFDQjcyMTM0QTVCQjAwMzkyQkE5IC8qIFN5bnRoZXNpemVBcnJh
eU9wZXJhdG9yTGVuZ3RoLmpzICovLAorCQkJCUU5NDFBQ0FGMjEzNEE1QkEwMDM5MkJBOSAvKiBT
eW50aGVzaXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IuanMgKi8sCisJCQkJRTk0MUFDQjMyMTM0
QTVCQjAwMzkyQkE5IC8qIFN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyAq
LywKKwkJCQlFOTJEMTA1NDIwRjU2RTg1MDBENzc2QjIgLyogU3ludGhlc2l6ZUVudW1GdW5jdGlv
bnMuanMgKi8sCisJCQkJRTkyRDEwNTMyMEY1NkU4NDAwRDc3NkIyIC8qIFN5bnRoZXNpemVTdHJ1
Y3RBY2Nlc3NvcnMuanMgKi8sCisJCQkJRTk0MUFDQjUyMTM0QTVCQjAwMzkyQkE5IC8qIFRlcm5h
cnlFeHByZXNzaW9uLmpzICovLAorCQkJCUU5NEQxMjdFMjExNEM2RkYwMEIwRjk2NyAvKiBUZXN0
LmpzICovLAorCQkJCUU5RDdDQjlBMjE0QjgyQjcwMEYxQzkxOCAvKiBUZXh0dXJlLmpzICovLAor
CQkJCUU5RDdDQjlFMjE0QjgyQjgwMEYxQzkxOCAvKiBUZXh0dXJlT3BlcmF0aW9ucy5qcyAqLywK
KwkJCQlFOTJEMTA1NjIwRjU2RTg1MDBENzc2QjIgLyogVHJhcFN0YXRlbWVudC5qcyAqLywKKwkJ
CQlFOTJEMTA1NTIwRjU2RTg1MDBENzc2QjIgLyogVHlwZS5qcyAqLywKKwkJCQlFOTJEMTA1RjIw
RjU2RTk1MDBENzc2QjIgLyogVHlwZURlZi5qcyAqLywKKwkJCQlFOTJEMTA1RTIwRjU2RTk1MDBE
Nzc2QjIgLyogVHlwZURlZlJlc29sdmVyLmpzICovLAorCQkJCUU5MkQxMDYwMjBGNTZFOTUwMEQ3
NzZCMiAvKiBUeXBlZFZhbHVlLmpzICovLAorCQkJCUU5Mjc4OUIwMjEzRjMzNjQwMDFFQTczRSAv
KiBUeXBlT2YuanMgKi8sCisJCQkJRTk0MUFDQkEyMTM0QTVCQjAwMzkyQkE5IC8qIFR5cGVPdmVy
bG9hZFJlc29sdXRpb25GYWlsdXJlLmpzICovLAorCQkJCUU5MkQxMDY2MjBGNTZFQTQwMEQ3NzZC
MiAvKiBUeXBlUmVmLmpzICovLAorCQkJCUU5MkQxMDY4MjBGNTZFQTQwMEQ3NzZCMiAvKiBVaW50
TGl0ZXJhbC5qcyAqLywKKwkJCQlFOTJEMTA2NzIwRjU2RUE0MDBENzc2QjIgLyogVWludExpdGVy
YWxUeXBlLmpzICovLAorCQkJCUU5MkQxMDcyMjBGNTZFQkIwMEQ3NzZCMiAvKiBVbmlmaWNhdGlv
bkNvbnRleHQuanMgKi8sCisJCQkJRTkyRDEwNzMyMEY1NkVCQzAwRDc3NkIyIC8qIFVucmVhY2hh
YmxlQ29kZUNoZWNrZXIuanMgKi8sCisJCQkJRTkyRDEwNzQyMEY1NkVCQzAwRDc3NkIyIC8qIFZh
bHVlLmpzICovLAorCQkJCUU5MkQxMDcwMjBGNTZFQkIwMEQ3NzZCMiAvKiBWYXJpYWJsZURlY2wu
anMgKi8sCisJCQkJRTkyRDEwNzEyMEY1NkVCQjAwRDc3NkIyIC8qIFZhcmlhYmxlUmVmLmpzICov
LAorCQkJCUU5NDFBQ0JCMjEzNEE1QkIwMDM5MkJBOSAvKiBWZWN0b3JUeXBlLmpzICovLAorCQkJ
CUU5MkQxMDdDMjBGNTZFQ0YwMEQ3NzZCMiAvKiBWaXNpdGluZ1NldC5qcyAqLywKKwkJCQlFOTJE
MTA3QTIwRjU2RUNGMDBENzc2QjIgLyogVmlzaXRvci5qcyAqLywKKwkJCQlFOTJEMTA3RDIwRjU2
RUNGMDBENzc2QjIgLyogV2hpbGVMb29wLmpzICovLAorCQkJCUU5RDdDQjk0MjE0QjgyNDIwMEYx
QzkxOCAvKiBXaGxzbFRvTXNsLmpzICovLAorCQkJCUU5RDdDQjlGMjE0QjgyQjgwMEYxQzkxOCAv
KiBXTGV4aWNhbEVycm9yLmpzICovLAorCQkJCUU5MkQxMDdCMjBGNTZFQ0YwMEQ3NzZCMiAvKiBX
cmFwQ2hlY2tlci5qcyAqLywKKwkJCQlFOTJEMTA4MjIwRjU2RURFMDBENzc2QjIgLyogV1N5bnRh
eEVycm9yLmpzICovLAorCQkJCUU5MkQxMDg0MjBGNTZFREUwMEQ3NzZCMiAvKiBXVHJhcEVycm9y
LmpzICovLAorCQkJCUU5MkQxMDgzMjBGNTZFREUwMEQ3NzZCMiAvKiBXVHlwZUVycm9yLmpzICov
LAorCQkJKTsKKwkJCW5hbWUgPSBTY3JpcHRzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsK
KwkJfTsKKy8qIEVuZCBQQlhHcm91cCBzZWN0aW9uICovCisKKy8qIEJlZ2luIFBCWE5hdGl2ZVRh
cmdldCBzZWN0aW9uICovCisJCUU5NEMwNkJGMjBGNTZBNDAwMDY3Mjk5MiAvKiBXSExTTCBUZXN0
cyAqLyA9IHsKKwkJCWlzYSA9IFBCWE5hdGl2ZVRhcmdldDsKKwkJCWJ1aWxkQ29uZmlndXJhdGlv
bkxpc3QgPSBFOTRDMDZFQTIwRjU2QTQyMDA2NzI5OTIgLyogQnVpbGQgY29uZmlndXJhdGlvbiBs
aXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgIldITFNMIFRlc3RzIiAqLzsKKwkJCWJ1aWxkUGhhc2Vz
ID0gKAorCQkJCUU5MjU2NTNDMjEyMzRBQTEwMDFBODlEOSAvKiBTaGVsbFNjcmlwdCAqLywKKwkJ
CQlFOTRDMDZCQzIwRjU2QTQwMDA2NzI5OTIgLyogU291cmNlcyAqLywKKwkJCQlFOTRDMDZCRDIw
RjU2QTQwMDA2NzI5OTIgLyogRnJhbWV3b3JrcyAqLywKKwkJCQlFOTRDMDZCRTIwRjU2QTQwMDA2
NzI5OTIgLyogUmVzb3VyY2VzICovLAorCQkJKTsKKwkJCWJ1aWxkUnVsZXMgPSAoCisJCQkpOwor
CQkJZGVwZW5kZW5jaWVzID0gKAorCQkJKTsKKwkJCW5hbWUgPSAiV0hMU0wgVGVzdHMiOworCQkJ
cHJvZHVjdE5hbWUgPSAiV0hMU0wgVG95IjsKKwkJCXByb2R1Y3RSZWZlcmVuY2UgPSBFOTRDMDZD
MDIwRjU2QTQwMDA2NzI5OTIgLyogV0hMU0wgVGVzdHMuYXBwICovOworCQkJcHJvZHVjdFR5cGUg
PSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5hcHBsaWNhdGlvbiI7CisJCX07CisJCUU5NEMwNkQ1
MjBGNTZBNDIwMDY3Mjk5MiAvKiBXSExTTCBUZXN0c1Rlc3RzICovID0geworCQkJaXNhID0gUEJY
TmF0aXZlVGFyZ2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IEU5NEMwNkVEMjBGNTZB
NDIwMDY3Mjk5MiAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdl
dCAiV0hMU0wgVGVzdHNUZXN0cyIgKi87CisJCQlidWlsZFBoYXNlcyA9ICgKKwkJCQlFOTRDMDZE
MjIwRjU2QTQyMDA2NzI5OTIgLyogU291cmNlcyAqLywKKwkJCQlFOTRDMDZEMzIwRjU2QTQyMDA2
NzI5OTIgLyogRnJhbWV3b3JrcyAqLywKKwkJCQlFOTRDMDZENDIwRjU2QTQyMDA2NzI5OTIgLyog
UmVzb3VyY2VzICovLAorCQkJKTsKKwkJCWJ1aWxkUnVsZXMgPSAoCisJCQkpOworCQkJZGVwZW5k
ZW5jaWVzID0gKAorCQkJCUU5NEMwNkQ4MjBGNTZBNDIwMDY3Mjk5MiAvKiBQQlhUYXJnZXREZXBl
bmRlbmN5ICovLAorCQkJKTsKKwkJCW5hbWUgPSAiV0hMU0wgVGVzdHNUZXN0cyI7CisJCQlwcm9k
dWN0TmFtZSA9ICJXSExTTCBUb3lUZXN0cyI7CisJCQlwcm9kdWN0UmVmZXJlbmNlID0gRTk0QzA2
RDYyMEY1NkE0MjAwNjcyOTkyIC8qIFdITFNMIFRlc3RzVGVzdHMueGN0ZXN0ICovOworCQkJcHJv
ZHVjdFR5cGUgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5idW5kbGUudW5pdC10ZXN0IjsKKwkJ
fTsKKy8qIEVuZCBQQlhOYXRpdmVUYXJnZXQgc2VjdGlvbiAqLworCisvKiBCZWdpbiBQQlhQcm9q
ZWN0IHNlY3Rpb24gKi8KKwkJRTk0QzA2QjgyMEY1NkE0MDAwNjcyOTkyIC8qIFByb2plY3Qgb2Jq
ZWN0ICovID0geworCQkJaXNhID0gUEJYUHJvamVjdDsKKwkJCWF0dHJpYnV0ZXMgPSB7CisJCQkJ
TGFzdFVwZ3JhZGVDaGVjayA9IDEwMDA7CisJCQkJT1JHQU5JWkFUSU9OTkFNRSA9ICJBcHBsZSwg
SW5jLiI7CisJCQkJVGFyZ2V0QXR0cmlidXRlcyA9IHsKKwkJCQkJRTk0QzA2QkYyMEY1NkE0MDAw
NjcyOTkyID0geworCQkJCQkJQ3JlYXRlZE9uVG9vbHNWZXJzaW9uID0gMTAuMDsKKwkJCQkJfTsK
KwkJCQkJRTk0QzA2RDUyMEY1NkE0MjAwNjcyOTkyID0geworCQkJCQkJQ3JlYXRlZE9uVG9vbHNW
ZXJzaW9uID0gMTAuMDsKKwkJCQkJCVRlc3RUYXJnZXRJRCA9IEU5NEMwNkJGMjBGNTZBNDAwMDY3
Mjk5MjsKKwkJCQkJfTsKKwkJCQl9OworCQkJfTsKKwkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3Qg
PSBFOTRDMDZCQjIwRjU2QTQwMDA2NzI5OTIgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZv
ciBQQlhQcm9qZWN0ICJXSExTTCBUZXN0cyIgKi87CisJCQljb21wYXRpYmlsaXR5VmVyc2lvbiA9
ICJYY29kZSA5LjMiOworCQkJZGV2ZWxvcG1lbnRSZWdpb24gPSBlbjsKKwkJCWhhc1NjYW5uZWRG
b3JFbmNvZGluZ3MgPSAwOworCQkJa25vd25SZWdpb25zID0gKAorCQkJCWVuLAorCQkJCUJhc2Us
CisJCQkpOworCQkJbWFpbkdyb3VwID0gRTk0QzA2QjcyMEY1NkE0MDAwNjcyOTkyOworCQkJcHJv
ZHVjdFJlZkdyb3VwID0gRTk0QzA2QzEyMEY1NkE0MDAwNjcyOTkyIC8qIFByb2R1Y3RzICovOwor
CQkJcHJvamVjdERpclBhdGggPSAiIjsKKwkJCXByb2plY3RSb290ID0gIiI7CisJCQl0YXJnZXRz
ID0gKAorCQkJCUU5NEMwNkJGMjBGNTZBNDAwMDY3Mjk5MiAvKiBXSExTTCBUZXN0cyAqLywKKwkJ
CQlFOTRDMDZENTIwRjU2QTQyMDA2NzI5OTIgLyogV0hMU0wgVGVzdHNUZXN0cyAqLywKKwkJCSk7
CisJCX07CisvKiBFbmQgUEJYUHJvamVjdCBzZWN0aW9uICovCisKKy8qIEJlZ2luIFBCWFJlc291
cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLworCQlFOTRDMDZCRTIwRjU2QTQwMDA2NzI5OTIgLyog
UmVzb3VyY2VzICovID0geworCQkJaXNhID0gUEJYUmVzb3VyY2VzQnVpbGRQaGFzZTsKKwkJCWJ1
aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9ICgKKwkJCQlFOTJFRTAwQzIx
MTU1NDk4MDA0MkY5NjAgLyogX1NoYXJlZE1ldGFsLnR4dCBpbiBSZXNvdXJjZXMgKi8sCisJCQkJ
RTkyRDExMTYyMEY3MDYwRTAwRDc3NkIyIC8qIEFkZHJlc3NTcGFjZS5qcyBpbiBSZXNvdXJjZXMg
Ki8sCisJCQkJRTkyRDExMTcyMEY3MDYwRTAwRDc3NkIyIC8qIEFsbC5qcyBpbiBSZXNvdXJjZXMg
Ki8sCisJCQkJRTlCQzUwREEyMTU1QUQxRTAwMDU5NEU4IC8qIEFsbG9jYXRlQXRFbnRyeVBvaW50
cy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExMTgyMEY3MDYwRTAwRDc3NkIyIC8qIEFu
b255bW91c1ZhcmlhYmxlLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTExOTIwRjcwNjBF
MDBENzc2QjIgLyogQXJyYXlSZWZUeXBlLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEx
QTIwRjcwNjBFMDBENzc2QjIgLyogQXJyYXlUeXBlLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlF
OTRDMDZDQTIwRjU2QTQyMDA2NzI5OTIgLyogQXNzZXRzLnhjYXNzZXRzIGluIFJlc291cmNlcyAq
LywKKwkJCQlFOTJEMTExQjIwRjcwNjBFMDBENzc2QjIgLyogQXNzaWdubWVudC5qcyBpbiBSZXNv
dXJjZXMgKi8sCisJCQkJRTkyRDExMUMyMEY3MDYwRTAwRDc3NkIyIC8qIEF1dG9XcmFwcGVyLmpz
IGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTExRDIwRjcwNjBFMDBENzc2QjIgLyogQmxvY2su
anMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTFFMjBGNzA2MEUwMEQ3NzZCMiAvKiBCb29s
TGl0ZXJhbC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExMUYyMEY3MDYwRTAwRDc3NkIy
IC8qIEJyZWFrLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTIxRDYzODIxMzhDMDI2MDA3NzUw
OTkgLyogQnVpbHRpbk1hdHJpeEdldHRlci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyMUQ2
MzkyMTM4QzAyNjAwNzc1MDk5IC8qIEJ1aWx0aW5NYXRyaXhTZXR0ZXIuanMgaW4gUmVzb3VyY2Vz
ICovLAorCQkJCUU5NDFBQ0NBMjEzNEE1QkMwMDM5MkJBOSAvKiBCdWlsdGluVmVjdG9yR2V0dGVy
LmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTQxQUNDRDIxMzRBNUJDMDAzOTJCQTkgLyogQnVp
bHRpblZlY3RvclNldHRlci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExMjAyMEY3MDYw
RTAwRDc3NkIyIC8qIENhbGxFeHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJE
MTEyMTIwRjcwNjBFMDBENzc2QjIgLyogQ2FsbEZ1bmN0aW9uLmpzIGluIFJlc291cmNlcyAqLywK
KwkJCQlFOUQ3Q0JBMjIxNEI4MkI4MDBGMUM5MTggLyogQ2FzdHMuanMgaW4gUmVzb3VyY2VzICov
LAorCQkJCUU5MkQxMTIyMjBGNzA2MEUwMEQ3NzZCMiAvKiBDaGVjay5qcyBpbiBSZXNvdXJjZXMg
Ki8sCisJCQkJRTkyRDExMjMyMEY3MDYwRTAwRDc3NkIyIC8qIENoZWNrZXIuanMgaW4gUmVzb3Vy
Y2VzICovLAorCQkJCUU5MkQxMTI0MjBGNzA2MEUwMEQ3NzZCMiAvKiBDaGVja0xpdGVyYWxUeXBl
cy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExMjUyMEY3MDYwRTAwRDc3NkIyIC8qIENo
ZWNrTG9vcHMuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTI2MjBGNzA2MEUwMEQ3NzZC
MiAvKiBDaGVja1JlY3Vyc2lvbi5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExMjcyMEY3
MDYwRTAwRDc3NkIyIC8qIENoZWNrUmVjdXJzaXZlVHlwZXMuanMgaW4gUmVzb3VyY2VzICovLAor
CQkJCUU5MkQxMTI4MjBGNzA2MEUwMEQ3NzZCMiAvKiBDaGVja1JldHVybnMuanMgaW4gUmVzb3Vy
Y2VzICovLAorCQkJCUU5NDFBQ0JGMjEzNEE1QkMwMDM5MkJBOSAvKiBDaGVja1R5cGVzV2l0aEFy
Z3VtZW50cy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExMjkyMEY3MDYwRTAwRDc3NkIy
IC8qIENoZWNrVW5yZWFjaGFibGVDb2RlLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEy
QTIwRjcwNjBFMDBENzc2QjIgLyogQ2hlY2tXcmFwcGVkLmpzIGluIFJlc291cmNlcyAqLywKKwkJ
CQlFOTJEMTEyQjIwRjcwNjBFMDBENzc2QjIgLyogQ2xvbmVQcm9ncmFtLmpzIGluIFJlc291cmNl
cyAqLywKKwkJCQlFOTJEMTEyQzIwRjcwNjBFMDBENzc2QjIgLyogQ29tbWFFeHByZXNzaW9uLmpz
IGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEyRTIwRjcwNjBFMDBENzc2QjIgLyogQ29uc3Rl
eHByRm9sZGVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEzMDIwRjcwNjBFMDBENzc2
QjIgLyogQ29udGludWUuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTMxMjBGNzA2MEUw
MEQ3NzZCMiAvKiBDb252ZXJ0UHRyVG9BcnJheVJlZkV4cHJlc3Npb24uanMgaW4gUmVzb3VyY2Vz
ICovLAorCQkJCUU5MkQxMTMyMjBGNzA2MEUwMEQ3NzZCMiAvKiBDcmVhdGVMaXRlcmFsLmpzIGlu
IFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEzMzIwRjcwNjBFMDBENzc2QjIgLyogQ3JlYXRlTGl0
ZXJhbFR5cGUuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMDkzMjBGNTczNDkwMEQ3NzZC
MiAvKiBEZWZhdWx0LndobHNsIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEzNDIwRjcwNjBF
MDBENzc2QjIgLyogRGVyZWZlcmVuY2VFeHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJ
CQlFOTJEMTEzNTIwRjcwNjBFMDBENzc2QjIgLyogRG90RXhwcmVzc2lvbi5qcyBpbiBSZXNvdXJj
ZXMgKi8sCisJCQkJRTkyRDExMzgyMEY3MDYwRTAwRDc3NkIyIC8qIERvV2hpbGVMb29wLmpzIGlu
IFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEzOTIwRjcwNjBFMDBENzc2QjIgLyogRUFycmF5UmVm
LmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEzQTIwRjcwNjBFMDBENzc2QjIgLyogRUJ1
ZmZlci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExM0IyMEY3MDYwRTAwRDc3NkIyIC8q
IEVCdWZmZXJCdWlsZGVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTEzQzIwRjcwNjBF
MDBENzc2QjIgLyogRW51bUxpdGVyYWwuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTNE
MjBGNzA2MEUwMEQ3NzZCMiAvKiBFbnVtTWVtYmVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlF
OTJEMTEzRTIwRjcwNjBFMDBENzc2QjIgLyogRW51bVR5cGUuanMgaW4gUmVzb3VyY2VzICovLAor
CQkJCUU5MkQxMTNGMjBGNzA2MEUwMEQ3NzZCMiAvKiBFUHRyLmpzIGluIFJlc291cmNlcyAqLywK
KwkJCQlFOTJEMTE0MDIwRjcwNjBFMDBENzc2QjIgLyogRXZhbHVhdGlvbkNvbW1vbi5qcyBpbiBS
ZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExNDEyMEY3MDYwRTAwRDc3NkIyIC8qIEV2YWx1YXRvci5q
cyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExNDIyMEY3MDYwRTAwRDc3NkIyIC8qIEV4cHJl
c3Npb24uanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTQzMjBGNzA2MEUwMEQ3NzZCMiAv
KiBFeHByZXNzaW9uRmluZGVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE0NDIwRjcw
NjBFMDBENzc2QjIgLyogRXh0ZXJuYWxPcmlnaW4uanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5
MkQxMTQ1MjBGNzA2MEUwMEQ3NzZCMiAvKiBGaWVsZC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJ
RTkyRDExNDYyMEY3MDYwRTAwRDc3NkIyIC8qIEZpbmRIaWdoWm9tYmllcy5qcyBpbiBSZXNvdXJj
ZXMgKi8sCisJCQkJRTkyRDExNDcyMEY3MDYwRTAwRDc3NkIyIC8qIEZsYXR0ZW5lZFN0cnVjdE9m
ZnNldEdhdGhlcmVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE0OTIwRjcwNjBFMDBE
Nzc2QjIgLyogRmxvYXRMaXRlcmFsLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE0QTIw
RjcwNjBFMDBENzc2QjIgLyogRmxvYXRMaXRlcmFsVHlwZS5qcyBpbiBSZXNvdXJjZXMgKi8sCisJ
CQkJRTkyRDExNEIyMEY3MDYwRTAwRDc3NkIyIC8qIEZvbGRDb25zdGV4cHJzLmpzIGluIFJlc291
cmNlcyAqLywKKwkJCQlFOTJEMTE0QzIwRjcwNjBFMDBENzc2QjIgLyogRm9yTG9vcC5qcyBpbiBS
ZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExNEQyMEY3MDYwRTAwRDc3NkIyIC8qIEZ1bmMuanMgaW4g
UmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTRFMjBGNzA2MEUwMEQ3NzZCMiAvKiBGdW5jRGVmLmpz
IGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE1MDIwRjcwNjBFMDBENzc2QjIgLyogRnVuY1Bh
cmFtZXRlci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExNTEyMEY3MDYwRTAwRDc3NkIy
IC8qIEZ1bmN0aW9uTGlrZUJsb2NrLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE1MjIw
RjcwNjBFMDBENzc2QjIgLyogSGlnaFpvbWJpZUZpbmRlci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJ
CQkJRTkyRDExNTMyMEY3MDYwRTAwRDc3NkIyIC8qIElkZW50aXR5RXhwcmVzc2lvbi5qcyBpbiBS
ZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExNTQyMEY3MDYwRTAwRDc3NkIyIC8qIElmU3RhdGVtZW50
LmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE1NTIwRjcwNjBFMDBENzc2QjIgLyogSW5k
ZXhFeHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE1NjIwRjcwNjBFMDBE
Nzc2QjIgLyogSW5mZXJUeXBlc0ZvckNhbGwuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQx
MTU3MjBGNzA2MEUwMEQ3NzZCMiAvKiBJbmxpbmUuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5
MkQxMTU4MjBGNzA2MEUwMEQ3NzZCMiAvKiBJbmxpbmVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJ
CQlFOTJEMTE1QTIwRjcwNjBFMDBENzc2QjIgLyogSW50TGl0ZXJhbC5qcyBpbiBSZXNvdXJjZXMg
Ki8sCisJCQkJRTkyRDExNUIyMEY3MDYwRTAwRDc3NkIyIC8qIEludExpdGVyYWxUeXBlLmpzIGlu
IFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE1QzIwRjcwNjBFMDBENzc2QjIgLyogSW50cmluc2lj
cy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkwNkIwNDYyMTEzOUI3NzAwQUQxQzVFIC8qIEp1
bGlhLndobHNsIGluIFJlc291cmNlcyAqLywKKwkJCQlFOUQ3Q0JBMTIxNEI4MkI4MDBGMUM5MTgg
LyogTGF0ZUNoZWNrQW5kTGF5b3V0QnVmZmVycy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTky
RDExNUQyMEY3MDYwRTAwRDc3NkIyIC8qIExhdGVDaGVja2VyLmpzIGluIFJlc291cmNlcyAqLywK
KwkJCQlFOTJEMTE1RTIwRjcwNjBFMDBENzc2QjIgLyogTGV4ZXIuanMgaW4gUmVzb3VyY2VzICov
LAorCQkJCUU5MkQxMTVGMjBGNzA2MEUwMEQ3NzZCMiAvKiBMZXhlclRva2VuLmpzIGluIFJlc291
cmNlcyAqLywKKwkJCQlFOTJEMTE2MDIwRjcwNjBFMDBENzc2QjIgLyogTGl0ZXJhbFR5cGVDaGVj
a2VyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE2MTIwRjcwNjBFMDBENzc2QjIgLyog
TG9naWNhbEV4cHJlc3Npb24uanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTYyMjBGNzA2
MEUwMEQ3NzZCMiAvKiBMb2dpY2FsTm90LmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE2
MzIwRjcwNjBFMDBENzc2QjIgLyogTG9vcENoZWNrZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJ
CUU5MkVFMDAwMjExNTQ2QUIwMDQyRjk2MCAvKiBNYWluLnN0b3J5Ym9hcmQgaW4gUmVzb3VyY2Vz
ICovLAorCQkJCUU5MkQxMTY0MjBGNzA2MEUwMEQ3NzZCMiAvKiBNYWtlQXJyYXlSZWZFeHByZXNz
aW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE2NTIwRjcwNjBFMDBENzc2QjIgLyog
TWFrZVB0ckV4cHJlc3Npb24uanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5NEQxMjRGMjExNEJE
NzYwMEIwRjk2NyAvKiBNYW5kZWxicm90LndobHNsIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTIx
RDYzNzIxMzhDMDI2MDA3NzUwOTkgLyogTWF0cml4VHlwZS5qcyBpbiBSZXNvdXJjZXMgKi8sCisJ
CQkJRTlEN0NCOTgyMTRCODI0MjAwRjFDOTE4IC8qIE1TTEJhY2tlbmQuanMgaW4gUmVzb3VyY2Vz
ICovLAorCQkJCUU5RDdDQkE2MjE0QjlFNUYwMEYxQzkxOCAvKiBNU0xDb2RlZ2VuQWxsLmpzIGlu
IFJlc291cmNlcyAqLywKKwkJCQlFOUQ3Q0JBNzIxNEI5RTVGMDBGMUM5MTggLyogTVNMQ29tcGls
ZVJlc3VsdC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTlEN0NCOTkyMTRCODI0MjAwRjFDOTE4
IC8qIE1TTENvbnN0ZXhwckVtaXR0ZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5NzNFNURF
MjEzRjM0MUQwMDVENzlGQyAvKiBNU0xGdW5jdGlvbkRlY2xhcmF0aW9uLmpzIGluIFJlc291cmNl
cyAqLywKKwkJCQlFOTczRTVERjIxM0YzNDFEMDA1RDc5RkMgLyogTVNMRnVuY3Rpb25EZWZpbml0
aW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTczRTVDRTIxM0YzMzg1MDA1RDc5RkMgLyog
TVNMRnVuY3Rpb25Gb3J3YXJkRGVjbGFyYXRpb24uanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5
RDdDQkE4MjE0QjlFNUYwMEYxQzkxOCAvKiBNU0xOYW1lTWFuZ2xlci5qcyBpbiBSZXNvdXJjZXMg
Ki8sCisJCQkJRTlEN0NCQTkyMTRCOUU1RjAwRjFDOTE4IC8qIE1TTE5hdGl2ZUZ1bmN0aW9uQ2Fs
bC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTk3M0U1Q0YyMTNGMzM4NTAwNUQ3OUZDIC8qIE1T
TFN0YXRlbWVudEVtaXR0ZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5RDdDQkFBMjE0QjlF
NUYwMEYxQzkxOCAvKiBNU0xUeXBlQXR0cmlidXRlcy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJ
RTlEN0NCQUIyMTRCOUU1RjAwRjFDOTE4IC8qIE1TTFR5cGVBdHRyaWJ1dGVzTWFwLmpzIGluIFJl
c291cmNlcyAqLywKKwkJCQlFOUQ3Q0JBQzIxNEI5RTVGMDBGMUM5MTggLyogTVNMVHlwZVVuaWZp
ZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTY2MjBGNzA2MEUwMEQ3NzZCMiAvKiBO
YW1lQ29udGV4dC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExNjcyMEY3MDYwRTAwRDc3
NkIyIC8qIE5hbWVGaW5kZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTY4MjBGNzA2
MEUwMEQ3NzZCMiAvKiBOYW1lUmVzb2x2ZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQx
MTY5MjBGNzA2MEUwMEQ3NzZCMiAvKiBOYXRpdmVGdW5jLmpzIGluIFJlc291cmNlcyAqLywKKwkJ
CQlFOTJEMTE2QjIwRjcwNjBFMDBENzc2QjIgLyogTmF0aXZlVHlwZS5qcyBpbiBSZXNvdXJjZXMg
Ki8sCisJCQkJRTkyRDExNkQyMEY3MDYwRTAwRDc3NkIyIC8qIE5vZGUuanMgaW4gUmVzb3VyY2Vz
ICovLAorCQkJCUU5MkQxMTZFMjBGNzA2MEUwMEQ3NzZCMiAvKiBOb3JtYWxVc2VQcm9wZXJ0eVJl
c29sdmVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE2RjIwRjcwNjBFMDBENzc2QjIg
LyogTnVsbExpdGVyYWwuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTcwMjBGNzA2MEUw
MEQ3NzZCMiAvKiBOdWxsVHlwZS5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyMUQ2MzYyMTM4
QzAyNjAwNzc1MDk5IC8qIE9wZXJhdG9yQW5kZXJJbmRleGVyLmpzIGluIFJlc291cmNlcyAqLywK
KwkJCQlFOTQxQUNDNzIxMzRBNUJDMDAzOTJCQTkgLyogT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5q
cyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExNzEyMEY3MDYwRTAwRDc3NkIyIC8qIE9yaWdp
bktpbmQuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTcyMjBGNzA2MEUwMEQ3NzZCMiAv
KiBPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJE
MTE3MzIwRjcwNjBFMDBENzc2QjIgLyogUGFyc2UuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5
MkQxMTc0MjBGNzA2MEUwMEQ3NzZCMiAvKiBQcmVwYXJlLmpzIGluIFJlc291cmNlcyAqLywKKwkJ
CQlFOTJEMTE3NTIwRjcwNjBFMDBENzc2QjIgLyogUHJvZ3JhbS5qcyBpbiBSZXNvdXJjZXMgKi8s
CisJCQkJRTkyRDExNzYyMEY3MDYwRTAwRDc3NkIyIC8qIFByb2dyYW1XaXRoVW5uZWNlc3NhcnlU
aGluZ3NSZW1vdmVkLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE3NzIwRjcwNjBFMDBE
Nzc2QjIgLyogUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJ
CQlFOTJEMTE3ODIwRjcwNjBFMDBENzc2QjIgLyogUHJvcGVydHlSZXNvbHZlci5qcyBpbiBSZXNv
dXJjZXMgKi8sCisJCQkJRTkyRDExN0QyMEY3MDYwRTAwRDc3NkIyIC8qIFB0clR5cGUuanMgaW4g
UmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTdFMjBGNzA2MEUwMEQ3NzZCMiAvKiBSZWFkTW9kaWZ5
V3JpdGVFeHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE3RjIwRjcwNjBF
MDBENzc2QjIgLyogUmVjdXJzaW9uQ2hlY2tlci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTky
RDExODAyMEY3MDYwRTAwRDc3NkIyIC8qIFJlY3Vyc2l2ZVR5cGVDaGVja2VyLmpzIGluIFJlc291
cmNlcyAqLywKKwkJCQlFOTJEMTE4MTIwRjcwNjBFMDBENzc2QjIgLyogUmVmZXJlbmNlVHlwZS5q
cyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExODIyMEY3MDYwRTAwRDc3NkIyIC8qIFJlc29s
dmVOYW1lcy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExODMyMEY3MDYwRTAwRDc3NkIy
IC8qIFJlc29sdmVPdmVybG9hZEltcGwuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTg0
MjBGNzA2MEUwMEQ3NzZCMiAvKiBSZXNvbHZlUHJvcGVydGllcy5qcyBpbiBSZXNvdXJjZXMgKi8s
CisJCQkJRTkyRDExODUyMEY3MDYwRTAwRDc3NkIyIC8qIFJlc29sdmVUeXBlRGVmcy5qcyBpbiBS
ZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExODYyMEY3MDYwRTAwRDc3NkIyIC8qIFJldHVybi5qcyBp
biBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExODcyMEY3MDYwRTAwRDc3NkIyIC8qIFJldHVybkNo
ZWNrZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTg4MjBGNzA2MEUwMEQ3NzZCMiAv
KiBSZXR1cm5FeGNlcHRpb24uanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTg5MjBGNzA2
MEUwMEQ3NzZCMiAvKiBSZXdyaXRlci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTlEN0NCQTMy
MTRCODJCODAwRjFDOTE4IC8qIFNhbXBsZXIuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQx
MThBMjBGNzA2MEUwMEQ3NzZCMiAvKiBTdGFuZGFyZExpYnJhcnkuanMgaW4gUmVzb3VyY2VzICov
LAorCQkJCUU5MkQxMThCMjBGNzA2MEUwMEQ3NzZCMiAvKiBTdGF0ZW1lbnRDbG9uZXIuanMgaW4g
UmVzb3VyY2VzICovLAorCQkJCUU5MkQxMThDMjBGNzA2MEUwMEQ3NzZCMiAvKiBTdHJ1Y3RMYXlv
dXRCdWlsZGVyLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTE4RDIwRjcwNjBFMDBENzc2
QjIgLyogU3RydWN0VHlwZS5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExOEYyMEY3MDYw
RTAwRDc3NkIyIC8qIFN3aXRjaENhc2UuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMTkw
MjBGNzA2MEUwMEQ3NzZCMiAvKiBTd2l0Y2hTdGF0ZW1lbnQuanMgaW4gUmVzb3VyY2VzICovLAor
CQkJCUU5NDFBQ0M4MjEzNEE1QkMwMDM5MkJBOSAvKiBTeW50aGVzaXplQXJyYXlPcGVyYXRvckxl
bmd0aC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTk0MUFDQzAyMTM0QTVCQzAwMzkyQkE5IC8q
IFN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJ
CQkJRTk0MUFDQzQyMTM0QTVCQzAwMzkyQkE5IC8qIFN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0
b3JPcGVyYXRvci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExOTEyMEY3MDYwRTAwRDc3
NkIyIC8qIFN5bnRoZXNpemVFbnVtRnVuY3Rpb25zLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlF
OTJEMTE5MjIwRjcwNjBFMDBENzc2QjIgLyogU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qcyBp
biBSZXNvdXJjZXMgKi8sCisJCQkJRTk0MUFDQzYyMTM0QTVCQzAwMzkyQkE5IC8qIFRlcm5hcnlF
eHByZXNzaW9uLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTREMTI3RjIxMTRDNkZGMDBCMEY5
NjcgLyogVGVzdC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTlEN0NCQTAyMTRCODJCODAwRjFD
OTE4IC8qIFRleHR1cmUuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5RDdDQkE0MjE0QjgyQjgw
MEYxQzkxOCAvKiBUZXh0dXJlT3BlcmF0aW9ucy5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTky
RDExOTMyMEY3MDYwRTAwRDc3NkIyIC8qIFRyYXBTdGF0ZW1lbnQuanMgaW4gUmVzb3VyY2VzICov
LAorCQkJCUU5MkQxMTk0MjBGNzA2MEUwMEQ3NzZCMiAvKiBUeXBlLmpzIGluIFJlc291cmNlcyAq
LywKKwkJCQlFOTJEMTE5NTIwRjcwNjBFMDBENzc2QjIgLyogVHlwZURlZi5qcyBpbiBSZXNvdXJj
ZXMgKi8sCisJCQkJRTkyRDExOTYyMEY3MDYwRTAwRDc3NkIyIC8qIFR5cGVEZWZSZXNvbHZlci5q
cyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExOTcyMEY3MDYwRTAwRDc3NkIyIC8qIFR5cGVk
VmFsdWUuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5NzNFNUUzMjEzRjM0MUQwMDVENzlGQyAv
KiBUeXBlT2YuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5NDFBQ0NCMjEzNEE1QkMwMDM5MkJB
OSAvKiBUeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyBpbiBSZXNvdXJjZXMgKi8sCisJ
CQkJRTkyRDExOUEyMEY3MDYwRTAwRDc3NkIyIC8qIFR5cGVSZWYuanMgaW4gUmVzb3VyY2VzICov
LAorCQkJCUU5MkQxMTlEMjBGNzA2MEUwMEQ3NzZCMiAvKiBVaW50TGl0ZXJhbC5qcyBpbiBSZXNv
dXJjZXMgKi8sCisJCQkJRTkyRDExOUUyMEY3MDYwRTAwRDc3NkIyIC8qIFVpbnRMaXRlcmFsVHlw
ZS5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExOUYyMEY3MDYwRTAwRDc3NkIyIC8qIFVu
aWZpY2F0aW9uQ29udGV4dC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExQTAyMEY3MDYw
RTAwRDc3NkIyIC8qIFVucmVhY2hhYmxlQ29kZUNoZWNrZXIuanMgaW4gUmVzb3VyY2VzICovLAor
CQkJCUU5MkQxMUExMjBGNzA2MEUwMEQ3NzZCMiAvKiBWYWx1ZS5qcyBpbiBSZXNvdXJjZXMgKi8s
CisJCQkJRTkyRDExQTIyMEY3MDYwRTAwRDc3NkIyIC8qIFZhcmlhYmxlRGVjbC5qcyBpbiBSZXNv
dXJjZXMgKi8sCisJCQkJRTkyRDExQTMyMEY3MDYwRTAwRDc3NkIyIC8qIFZhcmlhYmxlUmVmLmpz
IGluIFJlc291cmNlcyAqLywKKwkJCQlFOTQxQUNDQzIxMzRBNUJDMDAzOTJCQTkgLyogVmVjdG9y
VHlwZS5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExQTQyMEY3MDYwRTAwRDc3NkIyIC8q
IFZpc2l0aW5nU2V0LmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTFBNTIwRjcwNjBFMDBE
Nzc2QjIgLyogVmlzaXRvci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTkyRDExQTYyMEY3MDYw
RTAwRDc3NkIyIC8qIFdoaWxlTG9vcC5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJRTlEN0NCOTcy
MTRCODI0MjAwRjFDOTE4IC8qIFdobHNsVG9Nc2wuanMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5
RDdDQkE1MjE0QjgyQjgwMEYxQzkxOCAvKiBXTGV4aWNhbEVycm9yLmpzIGluIFJlc291cmNlcyAq
LywKKwkJCQlFOTJEMTFBNzIwRjcwNjBFMDBENzc2QjIgLyogV3JhcENoZWNrZXIuanMgaW4gUmVz
b3VyY2VzICovLAorCQkJCUU5MkQxMUE4MjBGNzA2MEUwMEQ3NzZCMiAvKiBXU3ludGF4RXJyb3Iu
anMgaW4gUmVzb3VyY2VzICovLAorCQkJCUU5MkQxMUE5MjBGNzA2MEUwMEQ3NzZCMiAvKiBXVHJh
cEVycm9yLmpzIGluIFJlc291cmNlcyAqLywKKwkJCQlFOTJEMTFBQTIwRjcwNjBFMDBENzc2QjIg
LyogV1R5cGVFcnJvci5qcyBpbiBSZXNvdXJjZXMgKi8sCisJCQkpOworCQkJcnVuT25seUZvckRl
cGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CisJCUU5NEMwNkQ0MjBGNTZBNDIwMDY3
Mjk5MiAvKiBSZXNvdXJjZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhSZXNvdXJjZXNCdWlsZFBoYXNl
OworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJKTsK
KwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOworCQl9OworLyogRW5k
IFBCWFJlc291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLworCisvKiBCZWdpbiBQQlhTaGVsbFNj
cmlwdEJ1aWxkUGhhc2Ugc2VjdGlvbiAqLworCQlFOTI1NjUzQzIxMjM0QUExMDAxQTg5RDkgLyog
U2hlbGxTY3JpcHQgKi8gPSB7CisJCQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7CisJ
CQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJ
aW5wdXRGaWxlTGlzdFBhdGhzID0gKAorCQkJKTsKKwkJCWlucHV0UGF0aHMgPSAoCisJCQkpOwor
CQkJb3V0cHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJCQlvdXRwdXRQYXRocyA9ICgKKwkJ
CSk7CisJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJCXNoZWxs
UGF0aCA9IC9iaW4vc2g7CisJCQlzaGVsbFNjcmlwdCA9ICIjIFR5cGUgYSBzY3JpcHQgb3IgZHJh
ZyBhIHNjcmlwdCBmaWxlIGZyb20geW91ciB3b3Jrc3BhY2UgdG8gaW5zZXJ0IGl0cyBwYXRoLlxu
Y2QgXCIkU1JDUk9PVC8uLlwiXG50c2NcbiI7CisJCX07CisvKiBFbmQgUEJYU2hlbGxTY3JpcHRC
dWlsZFBoYXNlIHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYU291cmNlc0J1aWxkUGhhc2Ugc2Vj
dGlvbiAqLworCQlFOTRDMDZCQzIwRjU2QTQwMDA2NzI5OTIgLyogU291cmNlcyAqLyA9IHsKKwkJ
CWlzYSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4
MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJCUU5MkVERkZDMjExNTQ2QTQwMDQyRjk2MCAvKiBBcHBE
ZWxlZ2F0ZS5tIGluIFNvdXJjZXMgKi8sCisJCQkJRTkyRDEwOEEyMEY1NkYwNjAwRDc3NkIyIC8q
IENvbXBpbGVyLm0gaW4gU291cmNlcyAqLywKKwkJCQlFOTJEMTFCQjIwRjdGNjczMDBENzc2QjIg
LyogQ29tcGlsZVJlc3VsdC5tIGluIFNvdXJjZXMgKi8sCisJCQkJRTkyRURGRkIyMTE1NDZBNDAw
NDJGOTYwIC8qIEN1c3RvbU1ldGFsVmlldy5tIGluIFNvdXJjZXMgKi8sCisJCQkJRTk0QzA2RDAy
MEY1NkE0MjAwNjcyOTkyIC8qIG1haW4ubSBpbiBTb3VyY2VzICovLAorCQkJCUU5MkQxMUFEMjBG
NzA4MTUwMEQ3NzZCMiAvKiBPZmZzY3JlZW5SZW5kZXJlci5tIGluIFNvdXJjZXMgKi8sCisJCQkJ
RTkyRDEwQUYyMEY1N0M5RjAwRDc3NkIyIC8qIE9uc2NyZWVuUmVuZGVyZXIubSBpbiBTb3VyY2Vz
ICovLAorCQkJCUU5MkQxMTE1MjBGNkZGQjYwMEQ3NzZCMiAvKiBSZW5kZXJlci5tIGluIFNvdXJj
ZXMgKi8sCisJCQkJRTkyRUUwMDQyMTE1NDlDNTAwNDJGOTYwIC8qIFRlc3RDYWxsQXJndW1lbnQu
bSBpbiBTb3VyY2VzICovLAorCQkJCUU5MkVFMDBBMjExNTRCNUEwMDQyRjk2MCAvKiBUZXN0RGVz
Y3JpcHRpb24ubSBpbiBTb3VyY2VzICovLAorCQkJCUU5MkVFMDA3MjExNTRBQzQwMDQyRjk2MCAv
KiBUZXN0RmFtaWx5Lm0gaW4gU291cmNlcyAqLywKKwkJCQlFOTJFRTAwRjIxMTU2MzMwMDA0MkY5
NjAgLyogVGVzdEZhbWlseVJ1bm5lci5tIGluIFNvdXJjZXMgKi8sCisJCQkJRTkyRURGRkQyMTE1
NDZBNDAwNDJGOTYwIC8qIFZpZXdDb250cm9sbGVyLm0gaW4gU291cmNlcyAqLywKKwkJCSk7CisJ
CQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJfTsKKwkJRTk0QzA2
RDIyMEY1NkE0MjAwNjcyOTkyIC8qIFNvdXJjZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhTb3VyY2Vz
QnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9
ICgKKwkJCQlFOTRDMDZEQjIwRjU2QTQyMDA2NzI5OTIgLyogV0hMU0xfVG95VGVzdHMubSBpbiBT
b3VyY2VzICovLAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3Npbmcg
PSAwOworCQl9OworLyogRW5kIFBCWFNvdXJjZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KKworLyog
QmVnaW4gUEJYVGFyZ2V0RGVwZW5kZW5jeSBzZWN0aW9uICovCisJCUU5NEMwNkQ4MjBGNTZBNDIw
MDY3Mjk5MiAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0geworCQkJaXNhID0gUEJYVGFyZ2V0
RGVwZW5kZW5jeTsKKwkJCXRhcmdldCA9IEU5NEMwNkJGMjBGNTZBNDAwMDY3Mjk5MiAvKiBXSExT
TCBUZXN0cyAqLzsKKwkJCXRhcmdldFByb3h5ID0gRTk0QzA2RDcyMEY1NkE0MjAwNjcyOTkyIC8q
IFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJfTsKKy8qIEVuZCBQQlhUYXJnZXREZXBlbmRl
bmN5IHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYVmFyaWFudEdyb3VwIHNlY3Rpb24gKi8KKwkJ
RTkyRURGRkUyMTE1NDZBQjAwNDJGOTYwIC8qIE1haW4uc3Rvcnlib2FyZCAqLyA9IHsKKwkJCWlz
YSA9IFBCWFZhcmlhbnRHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUU5MkVERkZGMjExNTQ2
QUIwMDQyRjk2MCAvKiBCYXNlICovLAorCQkJKTsKKwkJCW5hbWUgPSBNYWluLnN0b3J5Ym9hcmQ7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworLyogRW5kIFBCWFZhcmlhbnRHcm91
cCBzZWN0aW9uICovCisKKy8qIEJlZ2luIFhDQnVpbGRDb25maWd1cmF0aW9uIHNlY3Rpb24gKi8K
KwkJRTk0QzA2RTgyMEY1NkE0MjAwNjcyOTkyIC8qIERlYnVnICovID0geworCQkJaXNhID0gWENC
dWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRpbmdzID0geworCQkJCUFMV0FZU19TRUFS
Q0hfVVNFUl9QQVRIUyA9IE5POworCQkJCUNMQU5HX0FOQUxZWkVSX05PTk5VTEwgPSBZRVM7CisJ
CQkJQ0xBTkdfQU5BTFlaRVJfTlVNQkVSX09CSkVDVF9DT05WRVJTSU9OID0gWUVTX0FHR1JFU1NJ
VkU7CisJCQkJQ0xBTkdfQ1hYX0xBTkdVQUdFX1NUQU5EQVJEID0gImdudSsrMTQiOworCQkJCUNM
QU5HX0NYWF9MSUJSQVJZID0gImxpYmMrKyI7CisJCQkJQ0xBTkdfRU5BQkxFX01PRFVMRVMgPSBZ
RVM7CisJCQkJQ0xBTkdfRU5BQkxFX09CSkNfQVJDID0gWUVTOworCQkJCUNMQU5HX0VOQUJMRV9P
QkpDX1dFQUsgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9CTE9DS19DQVBUVVJFX0FVVE9SRUxFQVNJ
TkcgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9CT09MX0NPTlZFUlNJT04gPSBZRVM7CisJCQkJQ0xB
TkdfV0FSTl9DT01NQSA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX0NPTlNUQU5UX0NPTlZFUlNJT04g
PSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9ERVBSRUNBVEVEX09CSkNfSU1QTEVNRU5UQVRJT05TID0g
WUVTOworCQkJCUNMQU5HX1dBUk5fRElSRUNUX09CSkNfSVNBX1VTQUdFID0gWUVTX0VSUk9SOwor
CQkJCUNMQU5HX1dBUk5fRE9DVU1FTlRBVElPTl9DT01NRU5UUyA9IFlFUzsKKwkJCQlDTEFOR19X
QVJOX0VNUFRZX0JPRFkgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04gPSBZ
RVM7CisJCQkJQ0xBTkdfV0FSTl9JTkZJTklURV9SRUNVUlNJT04gPSBZRVM7CisJCQkJQ0xBTkdf
V0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX05PTl9MSVRFUkFMX05V
TExfQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX09CSkNfSU1QTElDSVRfUkVUQUlO
X1NFTEYgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9PQkpDX0xJVEVSQUxfQ09OVkVSU0lPTiA9IFlF
UzsKKwkJCQlDTEFOR19XQVJOX09CSkNfUk9PVF9DTEFTUyA9IFlFU19FUlJPUjsKKwkJCQlDTEFO
R19XQVJOX1JBTkdFX0xPT1BfQU5BTFlTSVMgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9TVFJJQ1Rf
UFJPVE9UWVBFUyA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX1NVU1BJQ0lPVVNfTU9WRSA9IFlFUzsK
KwkJCQlDTEFOR19XQVJOX1VOR1VBUkRFRF9BVkFJTEFCSUxJVFkgPSBZRVNfQUdHUkVTU0lWRTsK
KwkJCQlDTEFOR19XQVJOX1VOUkVBQ0hBQkxFX0NPREUgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9f
RFVQTElDQVRFX01FVEhPRF9NQVRDSCA9IFlFUzsKKwkJCQlDT0RFX1NJR05fSURFTlRJVFkgPSAi
TWFjIERldmVsb3BlciI7CisJCQkJQ09QWV9QSEFTRV9TVFJJUCA9IE5POworCQkJCURFQlVHX0lO
Rk9STUFUSU9OX0ZPUk1BVCA9IGR3YXJmOworCQkJCUVOQUJMRV9TVFJJQ1RfT0JKQ19NU0dTRU5E
ID0gWUVTOworCQkJCUVOQUJMRV9URVNUQUJJTElUWSA9IFlFUzsKKwkJCQlHQ0NfQ19MQU5HVUFH
RV9TVEFOREFSRCA9IGdudTExOworCQkJCUdDQ19EWU5BTUlDX05PX1BJQyA9IE5POworCQkJCUdD
Q19OT19DT01NT05fQkxPQ0tTID0gWUVTOworCQkJCUdDQ19PUFRJTUlaQVRJT05fTEVWRUwgPSAw
OworCQkJCUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAoCisJCQkJCSJERUJVRz0xIiwK
KwkJCQkJIiQoaW5oZXJpdGVkKSIsCisJCQkJKTsKKwkJCQlHQ0NfV0FSTl82NF9UT18zMl9CSVRf
Q09OVkVSU0lPTiA9IFlFUzsKKwkJCQlHQ0NfV0FSTl9BQk9VVF9SRVRVUk5fVFlQRSA9IFlFU19F
UlJPUjsKKwkJCQlHQ0NfV0FSTl9VTkRFQ0xBUkVEX1NFTEVDVE9SID0gWUVTOworCQkJCUdDQ19X
QVJOX1VOSU5JVElBTElaRURfQVVUT1MgPSBZRVNfQUdHUkVTU0lWRTsKKwkJCQlHQ0NfV0FSTl9V
TlVTRURfRlVOQ1RJT04gPSBZRVM7CisJCQkJR0NDX1dBUk5fVU5VU0VEX1ZBUklBQkxFID0gWUVT
OworCQkJCU1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCA9IDEwLjE0OworCQkJCU1UTF9FTkFCTEVf
REVCVUdfSU5GTyA9IElOQ0xVREVfU09VUkNFOworCQkJCU9OTFlfQUNUSVZFX0FSQ0ggPSBZRVM7
CisJCQkJU0RLUk9PVCA9IG1hY29zeDsKKwkJCX07CisJCQluYW1lID0gRGVidWc7CisJCX07CisJ
CUU5NEMwNkU5MjBGNTZBNDIwMDY3Mjk5MiAvKiBSZWxlYXNlICovID0geworCQkJaXNhID0gWENC
dWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRpbmdzID0geworCQkJCUFMV0FZU19TRUFS
Q0hfVVNFUl9QQVRIUyA9IE5POworCQkJCUNMQU5HX0FOQUxZWkVSX05PTk5VTEwgPSBZRVM7CisJ
CQkJQ0xBTkdfQU5BTFlaRVJfTlVNQkVSX09CSkVDVF9DT05WRVJTSU9OID0gWUVTX0FHR1JFU1NJ
VkU7CisJCQkJQ0xBTkdfQ1hYX0xBTkdVQUdFX1NUQU5EQVJEID0gImdudSsrMTQiOworCQkJCUNM
QU5HX0NYWF9MSUJSQVJZID0gImxpYmMrKyI7CisJCQkJQ0xBTkdfRU5BQkxFX01PRFVMRVMgPSBZ
RVM7CisJCQkJQ0xBTkdfRU5BQkxFX09CSkNfQVJDID0gWUVTOworCQkJCUNMQU5HX0VOQUJMRV9P
QkpDX1dFQUsgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9CTE9DS19DQVBUVVJFX0FVVE9SRUxFQVNJ
TkcgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9CT09MX0NPTlZFUlNJT04gPSBZRVM7CisJCQkJQ0xB
TkdfV0FSTl9DT01NQSA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX0NPTlNUQU5UX0NPTlZFUlNJT04g
PSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9ERVBSRUNBVEVEX09CSkNfSU1QTEVNRU5UQVRJT05TID0g
WUVTOworCQkJCUNMQU5HX1dBUk5fRElSRUNUX09CSkNfSVNBX1VTQUdFID0gWUVTX0VSUk9SOwor
CQkJCUNMQU5HX1dBUk5fRE9DVU1FTlRBVElPTl9DT01NRU5UUyA9IFlFUzsKKwkJCQlDTEFOR19X
QVJOX0VNUFRZX0JPRFkgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04gPSBZ
RVM7CisJCQkJQ0xBTkdfV0FSTl9JTkZJTklURV9SRUNVUlNJT04gPSBZRVM7CisJCQkJQ0xBTkdf
V0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX05PTl9MSVRFUkFMX05V
TExfQ09OVkVSU0lPTiA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX09CSkNfSU1QTElDSVRfUkVUQUlO
X1NFTEYgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9PQkpDX0xJVEVSQUxfQ09OVkVSU0lPTiA9IFlF
UzsKKwkJCQlDTEFOR19XQVJOX09CSkNfUk9PVF9DTEFTUyA9IFlFU19FUlJPUjsKKwkJCQlDTEFO
R19XQVJOX1JBTkdFX0xPT1BfQU5BTFlTSVMgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9TVFJJQ1Rf
UFJPVE9UWVBFUyA9IFlFUzsKKwkJCQlDTEFOR19XQVJOX1NVU1BJQ0lPVVNfTU9WRSA9IFlFUzsK
KwkJCQlDTEFOR19XQVJOX1VOR1VBUkRFRF9BVkFJTEFCSUxJVFkgPSBZRVNfQUdHUkVTU0lWRTsK
KwkJCQlDTEFOR19XQVJOX1VOUkVBQ0hBQkxFX0NPREUgPSBZRVM7CisJCQkJQ0xBTkdfV0FSTl9f
RFVQTElDQVRFX01FVEhPRF9NQVRDSCA9IFlFUzsKKwkJCQlDT0RFX1NJR05fSURFTlRJVFkgPSAi
TWFjIERldmVsb3BlciI7CisJCQkJQ09QWV9QSEFTRV9TVFJJUCA9IE5POworCQkJCURFQlVHX0lO
Rk9STUFUSU9OX0ZPUk1BVCA9ICJkd2FyZi13aXRoLWRzeW0iOworCQkJCUVOQUJMRV9OU19BU1NF
UlRJT05TID0gTk87CisJCQkJRU5BQkxFX1NUUklDVF9PQkpDX01TR1NFTkQgPSBZRVM7CisJCQkJ
R0NDX0NfTEFOR1VBR0VfU1RBTkRBUkQgPSBnbnUxMTsKKwkJCQlHQ0NfTk9fQ09NTU9OX0JMT0NL
UyA9IFlFUzsKKwkJCQlHQ0NfV0FSTl82NF9UT18zMl9CSVRfQ09OVkVSU0lPTiA9IFlFUzsKKwkJ
CQlHQ0NfV0FSTl9BQk9VVF9SRVRVUk5fVFlQRSA9IFlFU19FUlJPUjsKKwkJCQlHQ0NfV0FSTl9V
TkRFQ0xBUkVEX1NFTEVDVE9SID0gWUVTOworCQkJCUdDQ19XQVJOX1VOSU5JVElBTElaRURfQVVU
T1MgPSBZRVNfQUdHUkVTU0lWRTsKKwkJCQlHQ0NfV0FSTl9VTlVTRURfRlVOQ1RJT04gPSBZRVM7
CisJCQkJR0NDX1dBUk5fVU5VU0VEX1ZBUklBQkxFID0gWUVTOworCQkJCU1BQ09TWF9ERVBMT1lN
RU5UX1RBUkdFVCA9IDEwLjE0OworCQkJCU1UTF9FTkFCTEVfREVCVUdfSU5GTyA9IE5POworCQkJ
CVNES1JPT1QgPSBtYWNvc3g7CisJCQl9OworCQkJbmFtZSA9IFJlbGVhc2U7CisJCX07CisJCUU5
NEMwNkVCMjBGNTZBNDIwMDY3Mjk5MiAvKiBEZWJ1ZyAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRD
b25maWd1cmF0aW9uOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlBU1NFVENBVEFMT0dfQ09N
UElMRVJfQVBQSUNPTl9OQU1FID0gQXBwSWNvbjsKKwkJCQlDT0RFX1NJR05fRU5USVRMRU1FTlRT
ID0gQ29yZS9XSExTTC5lbnRpdGxlbWVudHM7CisJCQkJQ09ERV9TSUdOX0lERU5USVRZID0gIi0i
OworCQkJCUNPREVfU0lHTl9TVFlMRSA9IEF1dG9tYXRpYzsKKwkJCQlDT01CSU5FX0hJRFBJX0lN
QUdFUyA9IFlFUzsKKwkJCQlERVZFTE9QTUVOVF9URUFNID0gIiI7CisJCQkJSU5GT1BMSVNUX0ZJ
TEUgPSBDb3JlL0luZm8ucGxpc3Q7CisJCQkJTERfUlVOUEFUSF9TRUFSQ0hfUEFUSFMgPSAoCisJ
CQkJCSIkKGluaGVyaXRlZCkiLAorCQkJCQkiQGV4ZWN1dGFibGVfcGF0aC8uLi9GcmFtZXdvcmtz
IiwKKwkJCQkpOworCQkJCVBST0RVQ1RfQlVORExFX0lERU5USUZJRVIgPSAiY29tLmFwcGxlLldI
TFNMLVRveSI7CisJCQkJUFJPRFVDVF9OQU1FID0gIiQoVEFSR0VUX05BTUUpIjsKKwkJCX07CisJ
CQluYW1lID0gRGVidWc7CisJCX07CisJCUU5NEMwNkVDMjBGNTZBNDIwMDY3Mjk5MiAvKiBSZWxl
YXNlICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRp
bmdzID0geworCQkJCUFTU0VUQ0FUQUxPR19DT01QSUxFUl9BUFBJQ09OX05BTUUgPSBBcHBJY29u
OworCQkJCUNPREVfU0lHTl9FTlRJVExFTUVOVFMgPSBDb3JlL1dITFNMLmVudGl0bGVtZW50czsK
KwkJCQlDT0RFX1NJR05fSURFTlRJVFkgPSAiLSI7CisJCQkJQ09ERV9TSUdOX1NUWUxFID0gQXV0
b21hdGljOworCQkJCUNPTUJJTkVfSElEUElfSU1BR0VTID0gWUVTOworCQkJCURFVkVMT1BNRU5U
X1RFQU0gPSAiIjsKKwkJCQlJTkZPUExJU1RfRklMRSA9IENvcmUvSW5mby5wbGlzdDsKKwkJCQlM
RF9SVU5QQVRIX1NFQVJDSF9QQVRIUyA9ICgKKwkJCQkJIiQoaW5oZXJpdGVkKSIsCisJCQkJCSJA
ZXhlY3V0YWJsZV9wYXRoLy4uL0ZyYW1ld29ya3MiLAorCQkJCSk7CisJCQkJUFJPRFVDVF9CVU5E
TEVfSURFTlRJRklFUiA9ICJjb20uYXBwbGUuV0hMU0wtVG95IjsKKwkJCQlQUk9EVUNUX05BTUUg
PSAiJChUQVJHRVRfTkFNRSkiOworCQkJfTsKKwkJCW5hbWUgPSBSZWxlYXNlOworCQl9OworCQlF
OTRDMDZFRTIwRjU2QTQyMDA2NzI5OTIgLyogRGVidWcgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxk
Q29uZmlndXJhdGlvbjsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJQlVORExFX0xPQURFUiA9
ICIkKFRFU1RfSE9TVCkiOworCQkJCUNPREVfU0lHTl9JREVOVElUWSA9ICItIjsKKwkJCQlDT0RF
X1NJR05fU1RZTEUgPSBBdXRvbWF0aWM7CisJCQkJQ09NQklORV9ISURQSV9JTUFHRVMgPSBZRVM7
CisJCQkJREVWRUxPUE1FTlRfVEVBTSA9ICIiOworCQkJCUlORk9QTElTVF9GSUxFID0gIldITFNM
IFRveVRlc3RzL0luZm8ucGxpc3QiOworCQkJCUxEX1JVTlBBVEhfU0VBUkNIX1BBVEhTID0gKAor
CQkJCQkiJChpbmhlcml0ZWQpIiwKKwkJCQkJIkBleGVjdXRhYmxlX3BhdGgvLi4vRnJhbWV3b3Jr
cyIsCisJCQkJCSJAbG9hZGVyX3BhdGgvLi4vRnJhbWV3b3JrcyIsCisJCQkJKTsKKwkJCQlQUk9E
VUNUX0JVTkRMRV9JREVOVElGSUVSID0gImNvbS5hcHBsZS5XSExTTC1Ub3lUZXN0cyI7CisJCQkJ
UFJPRFVDVF9OQU1FID0gIiQoVEFSR0VUX05BTUUpIjsKKwkJCQlURVNUX0hPU1QgPSAiJChCVUlM
VF9QUk9EVUNUU19ESVIpL1dITFNMIFRlc3RzLmFwcC9Db250ZW50cy9NYWNPUy9XSExTTCBUZXN0
cyI7CisJCQl9OworCQkJbmFtZSA9IERlYnVnOworCQl9OworCQlFOTRDMDZFRjIwRjU2QTQyMDA2
NzI5OTIgLyogUmVsZWFzZSAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOwor
CQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlCVU5ETEVfTE9BREVSID0gIiQoVEVTVF9IT1NUKSI7
CisJCQkJQ09ERV9TSUdOX0lERU5USVRZID0gIi0iOworCQkJCUNPREVfU0lHTl9TVFlMRSA9IEF1
dG9tYXRpYzsKKwkJCQlDT01CSU5FX0hJRFBJX0lNQUdFUyA9IFlFUzsKKwkJCQlERVZFTE9QTUVO
VF9URUFNID0gIiI7CisJCQkJSU5GT1BMSVNUX0ZJTEUgPSAiV0hMU0wgVG95VGVzdHMvSW5mby5w
bGlzdCI7CisJCQkJTERfUlVOUEFUSF9TRUFSQ0hfUEFUSFMgPSAoCisJCQkJCSIkKGluaGVyaXRl
ZCkiLAorCQkJCQkiQGV4ZWN1dGFibGVfcGF0aC8uLi9GcmFtZXdvcmtzIiwKKwkJCQkJIkBsb2Fk
ZXJfcGF0aC8uLi9GcmFtZXdvcmtzIiwKKwkJCQkpOworCQkJCVBST0RVQ1RfQlVORExFX0lERU5U
SUZJRVIgPSAiY29tLmFwcGxlLldITFNMLVRveVRlc3RzIjsKKwkJCQlQUk9EVUNUX05BTUUgPSAi
JChUQVJHRVRfTkFNRSkiOworCQkJCVRFU1RfSE9TVCA9ICIkKEJVSUxUX1BST0RVQ1RTX0RJUikv
V0hMU0wgVGVzdHMuYXBwL0NvbnRlbnRzL01hY09TL1dITFNMIFRlc3RzIjsKKwkJCX07CisJCQlu
YW1lID0gUmVsZWFzZTsKKwkJfTsKKy8qIEVuZCBYQ0J1aWxkQ29uZmlndXJhdGlvbiBzZWN0aW9u
ICovCisKKy8qIEJlZ2luIFhDQ29uZmlndXJhdGlvbkxpc3Qgc2VjdGlvbiAqLworCQlFOTRDMDZC
QjIwRjU2QTQwMDA2NzI5OTIgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhQcm9q
ZWN0ICJXSExTTCBUZXN0cyIgKi8gPSB7CisJCQlpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0Owor
CQkJYnVpbGRDb25maWd1cmF0aW9ucyA9ICgKKwkJCQlFOTRDMDZFODIwRjU2QTQyMDA2NzI5OTIg
LyogRGVidWcgKi8sCisJCQkJRTk0QzA2RTkyMEY1NkE0MjAwNjcyOTkyIC8qIFJlbGVhc2UgKi8s
CisJCQkpOworCQkJZGVmYXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOworCQkJZGVmYXVs
dENvbmZpZ3VyYXRpb25OYW1lID0gUmVsZWFzZTsKKwkJfTsKKwkJRTk0QzA2RUEyMEY1NkE0MjAw
NjcyOTkyIC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYTmF0aXZlVGFyZ2V0ICJX
SExTTCBUZXN0cyIgKi8gPSB7CisJCQlpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0OworCQkJYnVp
bGRDb25maWd1cmF0aW9ucyA9ICgKKwkJCQlFOTRDMDZFQjIwRjU2QTQyMDA2NzI5OTIgLyogRGVi
dWcgKi8sCisJCQkJRTk0QzA2RUMyMEY1NkE0MjAwNjcyOTkyIC8qIFJlbGVhc2UgKi8sCisJCQkp
OworCQkJZGVmYXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOworCQkJZGVmYXVsdENvbmZp
Z3VyYXRpb25OYW1lID0gUmVsZWFzZTsKKwkJfTsKKwkJRTk0QzA2RUQyMEY1NkE0MjAwNjcyOTky
IC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYTmF0aXZlVGFyZ2V0ICJXSExTTCBU
ZXN0c1Rlc3RzIiAqLyA9IHsKKwkJCWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CisJCQlidWls
ZENvbmZpZ3VyYXRpb25zID0gKAorCQkJCUU5NEMwNkVFMjBGNTZBNDIwMDY3Mjk5MiAvKiBEZWJ1
ZyAqLywKKwkJCQlFOTRDMDZFRjIwRjU2QTQyMDA2NzI5OTIgLyogUmVsZWFzZSAqLywKKwkJCSk7
CisJCQlkZWZhdWx0Q29uZmlndXJhdGlvbklzVmlzaWJsZSA9IDA7CisJCQlkZWZhdWx0Q29uZmln
dXJhdGlvbk5hbWUgPSBSZWxlYXNlOworCQl9OworLyogRW5kIFhDQ29uZmlndXJhdGlvbkxpc3Qg
c2VjdGlvbiAqLworCX07CisJcm9vdE9iamVjdCA9IEU5NEMwNkI4MjBGNTZBNDAwMDY3Mjk5MiAv
KiBQcm9qZWN0IG9iamVjdCAqLzsKK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01ldGFsL1dITFNMIFRlc3RzL1dITFNMIFRveVRlc3RzL0luZm8ucGxpc3QgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9XSExTTCBUb3lU
ZXN0cy9JbmZvLnBsaXN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZjNDBhNmNkMGM0YWYyZjBkOTNiNjk3ZmJmYjA2
Njc5MzY4MWIwNDUKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9NZXRhbC9XSExTTCBUZXN0cy9XSExTTCBUb3lUZXN0cy9JbmZvLnBsaXN0CQpAQCAtMCww
ICsxLDIyIEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPCFET0NU
WVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3
dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCI+Cis8cGxpc3QgdmVyc2lvbj0i
MS4wIj4KKzxkaWN0PgorCTxrZXk+Q0ZCdW5kbGVEZXZlbG9wbWVudFJlZ2lvbjwva2V5PgorCTxz
dHJpbmc+JChERVZFTE9QTUVOVF9MQU5HVUFHRSk8L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlRXhl
Y3V0YWJsZTwva2V5PgorCTxzdHJpbmc+JChFWEVDVVRBQkxFX05BTUUpPC9zdHJpbmc+CisJPGtl
eT5DRkJ1bmRsZUlkZW50aWZpZXI8L2tleT4KKwk8c3RyaW5nPiQoUFJPRFVDVF9CVU5ETEVfSURF
TlRJRklFUik8L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlSW5mb0RpY3Rpb25hcnlWZXJzaW9uPC9r
ZXk+CisJPHN0cmluZz42LjA8L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlTmFtZTwva2V5PgorCTxz
dHJpbmc+JChQUk9EVUNUX05BTUUpPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVBhY2thZ2VUeXBl
PC9rZXk+CisJPHN0cmluZz5CTkRMPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVNob3J0VmVyc2lv
blN0cmluZzwva2V5PgorCTxzdHJpbmc+MS4wPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVZlcnNp
b248L2tleT4KKwk8c3RyaW5nPjE8L3N0cmluZz4KKzwvZGljdD4KKzwvcGxpc3Q+CmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9NZXRhbC9XSExTTCBUZXN0cy9XSExT
TCBUb3lUZXN0cy9XSExTTF9Ub3lUZXN0cy5tIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTWV0YWwvV0hMU0wgVGVzdHMvV0hMU0wgVG95VGVzdHMvV0hMU0xfVG95VGVzdHMubQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43NjcxMjM4ZGYzMjk0NDA5ODkxZGZjYjM5YTBhMTQ5YzVlYzM1YTcwCi0tLSAvZGV2
L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWV0YWwvV0hMU0wgVGVz
dHMvV0hMU0wgVG95VGVzdHMvV0hMU0xfVG95VGVzdHMubQkKQEAgLTAsMCArMSw4NSBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPFhDVGVz
dC9YQ1Rlc3QuaD4KKworI2ltcG9ydCAiVGVzdEZhbWlseS5oIgorI2ltcG9ydCAiVGVzdEZhbWls
eVJ1bm5lci5oIgorCisvLy8gVGhlIGFjdHVhbCBpbXBsZW1lbnRhdGlvbiBvZiB0ZXN0cyBpcyBp
biBUZXN0LmgvbQorQGludGVyZmFjZSBXSExTTFNoYWRlclRlc3QgOiBYQ1Rlc3RDYXNlCisKK0Bl
bmQKKworQGltcGxlbWVudGF0aW9uIFdITFNMU2hhZGVyVGVzdAorCisrIChXSExTTFNoYWRlclRl
c3QqKXRlc3RDYXNlSW5zdGFuY2VGcm9tSW1wbGVtZW50YXRpb246KFRlc3RGYW1pbHkqKXRlc3QK
K3sKKyAgICBOU01ldGhvZFNpZ25hdHVyZSAqdGVzdFNpZ25hdHVyZSA9IFtXSExTTFNoYWRlclRl
c3QgaW5zdGFuY2VNZXRob2RTaWduYXR1cmVGb3JTZWxlY3RvcjpAc2VsZWN0b3IodGVzdFNoYWRl
ckNvbXBpbGF0aW9uQW5kRXhlY3V0aW9uOildOworICAgIE5TSW52b2NhdGlvbiAqdGVzdEludm9j
YXRpb24gPSBbTlNJbnZvY2F0aW9uIGludm9jYXRpb25XaXRoTWV0aG9kU2lnbmF0dXJlOnRlc3RT
aWduYXR1cmVdOworICAgIHRlc3RJbnZvY2F0aW9uLnNlbGVjdG9yID0gQHNlbGVjdG9yKHRlc3RT
aGFkZXJDb21waWxhdGlvbkFuZEV4ZWN1dGlvbjopOworICAgIFt0ZXN0SW52b2NhdGlvbiBzZXRB
cmd1bWVudDomdGVzdCBhdEluZGV4OjJdOworICAgIFt0ZXN0SW52b2NhdGlvbiByZXRhaW5Bcmd1
bWVudHNdOworCisgICAgV0hMU0xTaGFkZXJUZXN0ICp0ZXN0Q2FzZSA9IFtbV0hMU0xTaGFkZXJU
ZXN0IGFsbG9jXSBpbml0V2l0aEludm9jYXRpb246dGVzdEludm9jYXRpb25dOworICAgIHJldHVy
biB0ZXN0Q2FzZTsKK30KKworLSAodm9pZCl0ZXN0U2hhZGVyQ29tcGlsYXRpb25BbmRFeGVjdXRp
b246KFRlc3RGYW1pbHkqKXRlc3QgeworICAgIFRlc3RGYW1pbHlSdW5uZXIqIHJ1bm5lciA9IFtb
VGVzdEZhbWlseVJ1bm5lciBhbGxvY10gaW5pdFdpdGhUZXN0RmFtaWx5OnRlc3RdOworICAgIEJP
T0wgcmVzdWx0ID0gW3J1bm5lciBleGVjdXRlQWxsVGVzdHNdOworICAgIGlmIChyZXN1bHQpCisg
ICAgICAgIE5TTG9nKEAiXHUyNzA1ICVAIiwgdGVzdC5uYW1lKTsKKyAgICBYQ1RBc3NlcnQocmVz
dWx0LCBAIiVAIiwgdGVzdC5uYW1lKTsKKyAgICBOU0xvZyhAIlRvdGFsIHRlc3QgY2FzZSBjb3Vu
dDogJWx1IiwgW1Rlc3RGYW1pbHlSdW5uZXIgZXhlY3V0aW9uQ291bnRdKTsKK30KKworQGVuZAor
CitAaW50ZXJmYWNlIFdITFNMX1RveVRlc3RzIDogWENUZXN0Q2FzZQorCitAZW5kCisKK0BpbXBs
ZW1lbnRhdGlvbiBXSExTTF9Ub3lUZXN0cworCisrIChYQ1Rlc3RTdWl0ZSopZGVmYXVsdFRlc3RT
dWl0ZQoreworICAgIFhDVGVzdFN1aXRlKiBzdWl0ZSA9IFtYQ1Rlc3RTdWl0ZSB0ZXN0U3VpdGVX
aXRoTmFtZTpAIldITFNMIHRlc3RzIl07CisgICAgTlNBcnJheTxUZXN0RmFtaWx5Kj4qIHRlc3RE
ZXNjcmlwdGlvbnMgPSBbVGVzdEZhbWlseSBhbGxUZXN0c107CisgICAgTlNSZWd1bGFyRXhwcmVz
c2lvbiogdGVzdEZpbHRlciA9IFtOU1JlZ3VsYXJFeHByZXNzaW9uIHJlZ3VsYXJFeHByZXNzaW9u
V2l0aFBhdHRlcm46QCIuKiIgb3B0aW9uczowIGVycm9yOm5pbF07CisgICAgTlNVSW50ZWdlciB0
ZXN0Q2FzZUNvdW50ID0gMDsKKyAgICBmb3IgKFRlc3RGYW1pbHkqIHRlc3QgaW4gdGVzdERlc2Ny
aXB0aW9ucykgeworICAgICAgICBpZiAoW3Rlc3RGaWx0ZXIgZmlyc3RNYXRjaEluU3RyaW5nOnRl
c3QubmFtZSBvcHRpb25zOjAgcmFuZ2U6TlNNYWtlUmFuZ2UoMCwgdGVzdC5uYW1lLmxlbmd0aCld
KSB7CisgICAgICAgICAgICBbc3VpdGUgYWRkVGVzdDpbV0hMU0xTaGFkZXJUZXN0IHRlc3RDYXNl
SW5zdGFuY2VGcm9tSW1wbGVtZW50YXRpb246dGVzdF1dOworICAgICAgICAgICAgdGVzdENhc2VD
b3VudCArPSB0ZXN0LnRvdGFsVGVzdENhc2VDb3VudDsKKyAgICAgICAgfQorICAgIH0KKworICAg
IE5TTG9nKEAiV2lsbCBleGVjdXRlICVsZCB0ZXN0cyAoJWxkIHRlc3QgY2FzZXMpIiwgc3VpdGUu
dGVzdHMuY291bnQsIHRlc3RDYXNlQ291bnQpOworCisgICAgcmV0dXJuIHN1aXRlOworfQorCitA
ZW5kCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcwppbmRleCBiZjlmNTVlMzE1Mzc4
NGI2ZDAwNzRiZTFiOWE5MTQ4YmEyZTQyNDllLi5kMGQ2ZDQzMTQwNjVjYjExZGE4MGEwZTZiMjJl
NzRhYWY2NGIwYTVmIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9U
ZXN0LmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMKQEAgLTI1
MDAsNyArMjUwMCw3IEBAIHRlc3RzLmxvdHNPZkxvY2FsVmFyaWFibGVzID0gZnVuY3Rpb24oKQog
ICAgIGxldCBzcmMgPSAidGVzdCBpbnQgc3VtKCkge1xuIjsKICAgICBzcmMgKz0gIiAgICBpbnQg
aSA9IDA7XG4iOwogICAgIGxldCB0YXJnZXQgPSAwOwotICAgIGNvbnN0IG51bVZhcnMgPSAxMDI0
OworICAgIGNvbnN0IG51bVZhcnMgPSA1MDsgLy8gVXNlZCB0byBiZSAxMDI0IGJ1dCB0aGlzIHdh
cyB0b28gc2xvdy4KICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bVZhcnM7IGkrKykgewogICAg
ICAgICBjb25zdCB2YWx1ZSA9IGkgKiAzOwogICAgICAgICBzcmMgKz0gYCAgIGkgPSAke2l9O1xu
YDsKQEAgLTgyNzQsNyArODI3NCw3IEBAIGZ1bmN0aW9uKiBkb1Rlc3QodGVzdEZpbHRlcikKICAg
ICBwcmludCgiVGhhdCB0b29rICIgKyAoYWZ0ZXIgLSBiZWZvcmUpICogMTAwMCArICIgbXMuIik7
CiB9CiAKLWlmICghdGhpcy53aW5kb3cpIHsKK2lmICghdGhpcy53aW5kb3cgJiYgIXRoaXMucnVu
bmluZ0luQ29jb2FIb3N0KSB7CiAgICAgRXJyb3Iuc3RhY2tUcmFjZUxpbWl0ID0gSW5maW5pdHk7
CiAgICAgZm9yIChsZXQgXyBvZiBkb1Rlc3QodGVzdEZpbHRlcikpIHsgfQogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>