<?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>10714</bug_id>
          
          <creation_ts>2006-09-03 13:29:41 -0700</creation_ts>
          <short_desc>ObjC autogeneration needs safe-guards against easily modifying the public API</short_desc>
          <delta_ts>2006-09-04 19:39:22 -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>WebKit API</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Timothy Hatcher">timothy</reporter>
          <assigned_to name="Timothy Hatcher">timothy</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>54727</commentid>
    <comment_count>0</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2006-09-03 13:29:41 -0700</bug_when>
    <thetext>The Exclude=ObjC attribute is used right now to preventing adding API that has not been approved. Ususally this happens by adding to a private header first, not just excluding it.

We need a way to prevent acedental additions to the public API, an opt-in process. Right now even Exclude=ObjC is faulty if someone forgets to add it when making changes to the IDL files.

I propose a file that contains the interfaces for all the public API. This can be cross referenced for changes and omisions when the auto-generation script makes the real interfaces. Only methods in the reference file will be public, everything else will be added to a private header. And Exclude=ObjC will only be used for the rare case when we don&apos;t want something exposed to ObjC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54728</commentid>
    <comment_count>1</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2006-09-03 13:30:17 -0700</bug_when>
    <thetext>I have a working patch for this that I am cleaning up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54803</commentid>
    <comment_count>2</comment_count>
      <attachid>10397</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2006-09-04 17:33:47 -0700</bug_when>
    <thetext>Created attachment 10397
Fixes this along with some other tweaks

- New PublicDOMInterfaces.h file is consulted when generating
  the ObjC DOM files. All public DOM class interfaces, properties
  and methods need to be in this file. Anything not in the file will
  be generated into the appropriate private header file. During
  generation if something changed or is missing in the public API
  a build error will occur. New interfaces added to the IDLs files
  will now not automatically be reflected in the public ObjC API.
  Methods commented out in PublicDOMInterfaces.h are pending public
  and will be uncommented once approved.

- Removed most of the Exclude=ObjC uses from the IDL files. This
  attribute was mostly used to prevent changes to the public headers.

- Make a new parameter name if the original conflicts with a property name.

- Simplified the generation code for dealing with exceptions.

- Moved file opens to WriteData. Files are unlinked before
  being opened to work around a Leopard file truncation bug.

- Fixed #imports for DOMImplementation to be DOMDOMImplementation.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54804</commentid>
    <comment_count>3</comment_count>
      <attachid>10397</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-09-04 18:37:13 -0700</bug_when>
    <thetext>Comment on attachment 10397
Fixes this along with some other tweaks

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54805</commentid>
    <comment_count>4</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2006-09-04 19:39:22 -0700</bug_when>
    <thetext>Landed in r16225.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>10397</attachid>
            <date>2006-09-04 17:33:47 -0700</date>
            <delta_ts>2006-09-04 18:37:13 -0700</delta_ts>
            <desc>Fixes this along with some other tweaks</desc>
            <filename>10714.patch</filename>
            <type>text/plain</type>
            <size>106787</size>
            <attacher name="Timothy Hatcher">timothy</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxNjIyNCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNTYgQEAKKzIwMDYtMDktMDQgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBw
bGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEJ1ZyAxMDcxNDogT2JqQyBhdXRvZ2VuZXJhdGlvbiBuZWVkcyBzYWZlLWd1YXJkcyBhZ2FpbnN0
IGVhc2lseSBtb2RpZnlpbmcgdGhlIHB1YmxpYyBBUEkKKyAgICAgICAgaHR0cDovL2J1Z3ppbGxh
Lm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDcxNAorICAgICAgICAKKyAgICAgICAg
LSBOZXcgUHVibGljRE9NSW50ZXJmYWNlcy5oIGZpbGUgaXMgY29uc3VsdGVkIHdoZW4gZ2VuZXJh
dGluZworICAgICAgICAgIHRoZSBPYmpDIERPTSBmaWxlcy4gQWxsIHB1YmxpYyBET00gY2xhc3Mg
aW50ZXJmYWNlcywgcHJvcGVydGllcworICAgICAgICAgIGFuZCBtZXRob2RzIG5lZWQgdG8gYmUg
aW4gdGhpcyBmaWxlLiBBbnl0aGluZyBub3QgaW4gdGhlIGZpbGUgd2lsbAorICAgICAgICAgIGJl
IGdlbmVyYXRlZCBpbnRvIHRoZSBhcHByb3ByaWF0ZSBwcml2YXRlIGhlYWRlciBmaWxlLiBEdXJp
bmcKKyAgICAgICAgICBnZW5lcmF0aW9uIGlmIHNvbWV0aGluZyBjaGFuZ2VkIG9yIGlzIG1pc3Np
bmcgaW4gdGhlIHB1YmxpYyBBUEkKKyAgICAgICAgICBhIGJ1aWxkIGVycm9yIHdpbGwgb2NjdXIu
IE5ldyBpbnRlcmZhY2VzIGFkZGVkIHRvIHRoZSBJRExzIGZpbGVzCisgICAgICAgICAgd2lsbCBu
b3cgbm90IGF1dG9tYXRpY2FsbHkgYmUgcmVmbGVjdGVkIGluIHRoZSBwdWJsaWMgT2JqQyBBUEku
CisKKyAgICAgICAgLSBSZW1vdmVkIG1vc3Qgb2YgdGhlIEV4Y2x1ZGU9T2JqQyB1c2VzIGZyb20g
dGhlIElETCBmaWxlcy4gVGhpcworICAgICAgICAgIGF0dHJpYnV0ZSB3YXMgbW9zdGx5IHVzZWQg
dG8gcHJldmVudCBjaGFuZ2VzIHRvIHRoZSBwdWJsaWMgaGVhZGVycy4KKworICAgICAgICAtIE1h
a2UgYSBuZXcgcGFyYW1ldGVyIG5hbWUgaWYgdGhlIG9yaWdpbmFsIGNvbmZsaWN0cyB3aXRoIGEg
cHJvcGVydHkgbmFtZS4KKworICAgICAgICAtIFNpbXBsaWZpZWQgdGhlIGdlbmVyYXRpb24gY29k
ZSBmb3IgZGVhbGluZyB3aXRoIGV4Y2VwdGlvbnMuCisKKyAgICAgICAgLSBNb3ZlZCBmaWxlIG9w
ZW5zIHRvIFdyaXRlRGF0YS4gRmlsZXMgYXJlIHVubGlua2VkIGJlZm9yZQorICAgICAgICAgIGJl
aW5nIG9wZW5lZCB0byB3b3JrIGFyb3VuZCBhIExlb3BhcmQgZmlsZSB0cnVuY2F0aW9uIGJ1Zy4K
KworICAgICAgICAtIEZpeGVkICNpbXBvcnRzIGZvciBET01JbXBsZW1lbnRhdGlvbiB0byBiZSBE
T01ET01JbXBsZW1lbnRhdGlvbi5oCisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3Mvb2JqYy9ET01DU1MuaDoKKyAgICAgICAg
KiBiaW5kaW5ncy9vYmpjL0RPTUNvcmUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9vYmpjL0RPTUV4
dGVuc2lvbnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9vYmpjL0RPTUhUTUxJbnRlcm5hbC5oOgor
ICAgICAgICAqIGJpbmRpbmdzL29iamMvRE9NUHJpdmF0ZS5oOgorICAgICAgICAqIGJpbmRpbmdz
L29iamMvUHVibGljRE9NSW50ZXJmYWNlcy5oOiBBZGRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5pZGw6
CisgICAgICAgICogZG9tL0VsZW1lbnQuaWRsOgorICAgICAgICAqIGRvbS9OYW1lZE5vZGVNYXAu
aWRsOgorICAgICAgICAqIGRvbS9Qcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaWRsOgorICAgICAgICAq
IGh0bWwvSFRNTEFuY2hvckVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRNTEFyZWFFbGVt
ZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxCb2R5RWxlbWVudC5pZGw6CisgICAgICAgICog
aHRtbC9IVE1MQnV0dG9uRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVt
ZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuaWRsOgorICAgICAgICAq
IGh0bWwvSFRNTExhYmVsRWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MTGVnZW5kRWxl
bWVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuaWRsOgorICAgICAgICAq
IGh0bWwvSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxQcmVF
bGVtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxTdHlsZUVsZW1lbnQuaWRsOgorICAgICAg
ICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5pZGw6CisKIDIwMDYtMDktMDQgIE5pa29sYXMg
WmltbWVybWFubiAgPHppbW1lcm1hbm5Aa2RlLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBU
aW0gSC4KSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShy
ZXZpc2lvbiAxNjIyMSkKKysrIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCSh3b3JraW5nIGNvcHkpCkBAIC0yMDcsNiArMjA3LDMwIEBACiAJCTFDRDQ0MThGMEE0Q0U3
NkYwMEEwMDdBQiAvKiBub3J0aFNvdXRoUmVzaXplQ3Vyc29yLnRpZmYgaW4gUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDRDQ0MThCMEE0Q0U3NkYwMEEwMDdB
QiAvKiBub3J0aFNvdXRoUmVzaXplQ3Vyc29yLnRpZmYgKi87IH07CiAJCTFDRDQ0MTkwMEE0Q0U3
NkYwMEEwMDdBQiAvKiBub3J0aFdlc3RTb3V0aEVhc3RSZXNpemVDdXJzb3IudGlmZiBpbiBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNENDQxOEMwQTRDRTc2
RjAwQTAwN0FCIC8qIG5vcnRoV2VzdFNvdXRoRWFzdFJlc2l6ZUN1cnNvci50aWZmICovOyB9Owog
CQkxQ0ZBRTMyMzBBNkQ2QTNGMDAzMjU5M0QgLyogbGlib2JqYy5keWxpYiBpbiBGcmFtZXdvcmtz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkFFMzIyMEE2RDZBM0YwMDMy
NTkzRCAvKiBsaWJvYmpjLmR5bGliICovOyB9OworCQkxQ0ZDRUU5NjBBQUNDNDAxMDAzNDg3NTAg
LyogRE9NSFRNTEJvZHlFbGVtZW50UHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0ZDRUU4RDBBQUNDM0NEMDAzNDg3NTAgLyogRE9NSFRN
TEJvZHlFbGVtZW50UHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUU5NzBBQUNDNDAxMDAzNDg3NTAg
LyogRE9NSFRNTEJ1dHRvbkVsZW1lbnRQcml2YXRlLmggaW4gQ29weUZpbGVzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkNFRThFMEFBQ0MzQ0QwMDM0ODc1MCAvKiBET01I
VE1MQnV0dG9uRWxlbWVudFByaXZhdGUuaCAqLzsgfTsKKwkJMUNGQ0VFOTgwQUFDQzQwMTAwMzQ4
NzUwIC8qIERPTUhUTUxJbWFnZUVsZW1lbnRQcml2YXRlLmggaW4gQ29weUZpbGVzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkNFRThGMEFBQ0MzQ0QwMDM0ODc1MCAvKiBE
T01IVE1MSW1hZ2VFbGVtZW50UHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUU5OTBBQUNDNDAxMDAz
NDg3NTAgLyogRE9NSFRNTExhYmVsRWxlbWVudFByaXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFOTAwQUFDQzNDRDAwMzQ4NzUwIC8q
IERPTUhUTUxMYWJlbEVsZW1lbnRQcml2YXRlLmggKi87IH07CisJCTFDRkNFRTlBMEFBQ0M0MDEw
MDM0ODc1MCAvKiBET01IVE1MTGVnZW5kRWxlbWVudFByaXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFOTEwQUFDQzNDRDAwMzQ4NzUw
IC8qIERPTUhUTUxMZWdlbmRFbGVtZW50UHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUU5QjBBQUND
NDAxMDAzNDg3NTAgLyogRE9NSFRNTExpbmtFbGVtZW50UHJpdmF0ZS5oIGluIENvcHlGaWxlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0ZDRUU5MjBBQUNDM0NEMDAzNDg3
NTAgLyogRE9NSFRNTExpbmtFbGVtZW50UHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUU5QzBBQUND
NDAxMDAzNDg3NTAgLyogRE9NSFRNTFNlbGVjdEVsZW1lbnRQcml2YXRlLmggaW4gQ29weUZpbGVz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkNFRTkzMEFBQ0MzQ0QwMDM0
ODc1MCAvKiBET01IVE1MU2VsZWN0RWxlbWVudFByaXZhdGUuaCAqLzsgfTsKKwkJMUNGQ0VFOUQw
QUFDQzQwMTAwMzQ4NzUwIC8qIERPTUhUTUxTdHlsZUVsZW1lbnRQcml2YXRlLmggaW4gQ29weUZp
bGVzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkNFRTk0MEFBQ0MzQ0Qw
MDM0ODc1MCAvKiBET01IVE1MU3R5bGVFbGVtZW50UHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUU5
RTBBQUNDNDAxMDAzNDg3NTAgLyogRE9NSFRNTFRleHRBcmVhRWxlbWVudFByaXZhdGUuaCBpbiBD
b3B5RmlsZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFOTUwQUFD
QzNDRDAwMzQ4NzUwIC8qIERPTUhUTUxUZXh0QXJlYUVsZW1lbnRQcml2YXRlLmggKi87IH07CisJ
CTFDRkNFRTlGMEFBQ0M0MDEwMDM0ODc1MCAvKiBET01IVE1MQW5jaG9yRWxlbWVudFByaXZhdGUu
aCBpbiBDb3B5RmlsZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VF
N0YwQUFDQzNCMzAwMzQ4NzUwIC8qIERPTUhUTUxBbmNob3JFbGVtZW50UHJpdmF0ZS5oICovOyB9
OworCQkxQ0ZDRUVBMDBBQUNDNDAxMDAzNDg3NTAgLyogRE9NSFRNTEFyZWFFbGVtZW50UHJpdmF0
ZS5oIGluIENvcHlGaWxlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0ZD
RUU4ODBBQUNDM0MwMDAzNDg3NTAgLyogRE9NSFRNTEFyZWFFbGVtZW50UHJpdmF0ZS5oICovOyB9
OworCQkxQ0ZDRUVBRDBBQUNDNDhDMDAzNDg3NTAgLyogRE9NQ2hhcmFjdGVyRGF0YVByaXZhdGUu
aCBpbiBDb3B5RmlsZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VF
QUMwQUFDQzQ4NDAwMzQ4NzUwIC8qIERPTUNoYXJhY3RlckRhdGFQcml2YXRlLmggKi87IH07CisJ
CTFDRkNFRUI0MEFBQ0M0QTkwMDM0ODc1MCAvKiBET01Eb2N1bWVudFByaXZhdGUuaCBpbiBDb3B5
RmlsZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFQjIwQUFDQzRB
MjAwMzQ4NzUwIC8qIERPTURvY3VtZW50UHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUVCNTBBQUND
NEE5MDAzNDg3NTAgLyogRE9NRWxlbWVudFByaXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFQjMwQUFDQzRBMjAwMzQ4NzUwIC8qIERP
TUVsZW1lbnRQcml2YXRlLmggKi87IH07CisJCTFDRkNFRUJCMEFBQ0M1MkIwMDM0ODc1MCAvKiBE
T01DU1NNZWRpYVJ1bGVQcml2YXRlLmggaW4gQ29weUZpbGVzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFDRkNFRUI4MEFBQ0M1MDUwMDM0ODc1MCAvKiBET01DU1NNZWRpYVJ1
bGVQcml2YXRlLmggKi87IH07CisJCTFDRkNFRUJDMEFBQ0M1MkIwMDM0ODc1MCAvKiBET01DU1NT
dHlsZURlY2xhcmF0aW9uUHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQ0ZDRUVCOTBBQUNDNTA1MDAzNDg3NTAgLyogRE9NQ1NTU3R5bGVE
ZWNsYXJhdGlvblByaXZhdGUuaCAqLzsgfTsKKwkJMUNGQ0VFQkQwQUFDQzUyQjAwMzQ4NzUwIC8q
IERPTUNTU1N0eWxlU2hlZXRQcml2YXRlLmggaW4gQ29weUZpbGVzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkNFRUJBMEFBQ0M1MDUwMDM0ODc1MCAvKiBET01DU1NTdHls
ZVNoZWV0UHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUVDNTBBQUNDNUNBMDAzNDg3NTAgLyogRE9N
RE9NSW1wbGVtZW50YXRpb25Qcml2YXRlLmggaW4gQ29weUZpbGVzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkNFRUM0MEFBQ0M1QkUwMDM0ODc1MCAvKiBET01ET01JbXBs
ZW1lbnRhdGlvblByaXZhdGUuaCAqLzsgfTsKKwkJMUNGQ0VFQ0IwQUFDQzYwMTAwMzQ4NzUwIC8q
IERPTVByb2Nlc3NpbmdJbnN0cnVjdGlvblByaXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFQ0EwQUFDQzVGNDAwMzQ4NzUwIC8qIERP
TVByb2Nlc3NpbmdJbnN0cnVjdGlvblByaXZhdGUuaCAqLzsgfTsKKwkJMUNGQ0VFRDUwQUFDQzY2
OTAwMzQ4NzUwIC8qIERPTUhUTUxPcHRpb25zQ29sbGVjdGlvblByaXZhdGUuaCBpbiBDb3B5Rmls
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFRDQwQUFDQzY1RDAw
MzQ4NzUwIC8qIERPTUhUTUxPcHRpb25zQ29sbGVjdGlvblByaXZhdGUuaCAqLzsgfTsKKwkJMUNG
Q0VFREYwQUFDQzZBMzAwMzQ4NzUwIC8qIERPTUhUTUxQcmVFbGVtZW50UHJpdmF0ZS5oIGluIENv
cHlGaWxlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0ZDRUVEQTBBQUND
NjgzMDAzNDg3NTAgLyogRE9NSFRNTFByZUVsZW1lbnRQcml2YXRlLmggKi87IH07CisJCTFDRkNF
RUUyMEFBQ0M2QzcwMDM0ODc1MCAvKiBET01OYW1lZE5vZGVNYXBQcml2YXRlLmggaW4gQ29weUZp
bGVzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDRkNFRUUxMEFBQ0M2QzAw
MDM0ODc1MCAvKiBET01OYW1lZE5vZGVNYXBQcml2YXRlLmggKi87IH07CisJCTFDRkNFRUYwMEFB
Q0M3MkIwMDM0ODc1MCAvKiBET01DU1NQcmltaXRpdmVWYWx1ZVByaXZhdGUuaCBpbiBDb3B5Rmls
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFRTcwQUFDQzcxMzAw
MzQ4NzUwIC8qIERPTUNTU1ByaW1pdGl2ZVZhbHVlUHJpdmF0ZS5oICovOyB9OworCQkxQ0ZDRUVG
QTBBQUNDN0E3MDAzNDg3NTAgLyogRE9NSFRNTElucHV0RWxlbWVudFByaXZhdGUuaCBpbiBDb3B5
RmlsZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNGQ0VFRjkwQUFDQzc5
MDAwMzQ4NzUwIC8qIERPTUhUTUxJbnB1dEVsZW1lbnRQcml2YXRlLmggKi87IH07CiAJCTQ0OEEy
OUJGMEE0NkQ5Q0IwMDMwNzU5RiAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbi5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ4QTI5QkQwQTQ2RDlDQjAw
MzA3NTlGIC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmggKi87IH07CiAJCTQ0OEEyOUMwMEE0
NkQ5Q0IwMDMwNzU5RiAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbi5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NDhBMjlCRTBBNDZEOUNCMDAzMDc1
OUYgLyogSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb24uY3BwICovOyB9OwogCQk0NDhBRDI3QzBBNDgx
MzdBMDAyM0QxNzkgLyogSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ4QUQyN0EwQTQ4MTM3OTAw
MjNEMTc5IC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLzsgfTsKQEAgLTE5
NTEsNiArMTk3NSwzMCBAQAogCQkJZHN0UGF0aCA9IFZlcnNpb25zL0EvUHJpdmF0ZUhlYWRlcnM7
CiAJCQlkc3RTdWJmb2xkZXJTcGVjID0gMTsKIAkJCWZpbGVzID0gKAorCQkJCTFDRkNFRUYwMEFB
Q0M3MkIwMDM0ODc1MCAvKiBET01DU1NQcmltaXRpdmVWYWx1ZVByaXZhdGUuaCBpbiBDb3B5Rmls
ZXMgKi8sCisJCQkJMUNGQ0VFRTIwQUFDQzZDNzAwMzQ4NzUwIC8qIERPTU5hbWVkTm9kZU1hcFBy
aXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8sCisJCQkJMUNGQ0VFREYwQUFDQzZBMzAwMzQ4NzUwIC8q
IERPTUhUTUxQcmVFbGVtZW50UHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLywKKwkJCQkxQ0ZDRUVE
NTBBQUNDNjY5MDAzNDg3NTAgLyogRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uUHJpdmF0ZS5oIGlu
IENvcHlGaWxlcyAqLywKKwkJCQkxQ0ZDRUVDQjBBQUNDNjAxMDAzNDg3NTAgLyogRE9NUHJvY2Vz
c2luZ0luc3RydWN0aW9uUHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLywKKwkJCQkxQ0ZDRUVCQjBB
QUNDNTJCMDAzNDg3NTAgLyogRE9NQ1NTTWVkaWFSdWxlUHJpdmF0ZS5oIGluIENvcHlGaWxlcyAq
LywKKwkJCQkxQ0ZDRUVCQzBBQUNDNTJCMDAzNDg3NTAgLyogRE9NQ1NTU3R5bGVEZWNsYXJhdGlv
blByaXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8sCisJCQkJMUNGQ0VFQkQwQUFDQzUyQjAwMzQ4NzUw
IC8qIERPTUNTU1N0eWxlU2hlZXRQcml2YXRlLmggaW4gQ29weUZpbGVzICovLAorCQkJCTFDRkNF
RUI0MEFBQ0M0QTkwMDM0ODc1MCAvKiBET01Eb2N1bWVudFByaXZhdGUuaCBpbiBDb3B5RmlsZXMg
Ki8sCisJCQkJMUNGQ0VFQjUwQUFDQzRBOTAwMzQ4NzUwIC8qIERPTUVsZW1lbnRQcml2YXRlLmgg
aW4gQ29weUZpbGVzICovLAorCQkJCTFDRkNFRUFEMEFBQ0M0OEMwMDM0ODc1MCAvKiBET01DaGFy
YWN0ZXJEYXRhUHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLywKKwkJCQkxQ0ZDRUU5NjBBQUNDNDAx
MDAzNDg3NTAgLyogRE9NSFRNTEJvZHlFbGVtZW50UHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLywK
KwkJCQkxQ0ZDRUU5NzBBQUNDNDAxMDAzNDg3NTAgLyogRE9NSFRNTEJ1dHRvbkVsZW1lbnRQcml2
YXRlLmggaW4gQ29weUZpbGVzICovLAorCQkJCTFDRkNFRUZBMEFBQ0M3QTcwMDM0ODc1MCAvKiBE
T01IVE1MSW5wdXRFbGVtZW50UHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLywKKwkJCQkxQ0ZDRUU5
ODBBQUNDNDAxMDAzNDg3NTAgLyogRE9NSFRNTEltYWdlRWxlbWVudFByaXZhdGUuaCBpbiBDb3B5
RmlsZXMgKi8sCisJCQkJMUNGQ0VFOTkwQUFDQzQwMTAwMzQ4NzUwIC8qIERPTUhUTUxMYWJlbEVs
ZW1lbnRQcml2YXRlLmggaW4gQ29weUZpbGVzICovLAorCQkJCTFDRkNFRTlBMEFBQ0M0MDEwMDM0
ODc1MCAvKiBET01IVE1MTGVnZW5kRWxlbWVudFByaXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8sCisJ
CQkJMUNGQ0VFOUIwQUFDQzQwMTAwMzQ4NzUwIC8qIERPTUhUTUxMaW5rRWxlbWVudFByaXZhdGUu
aCBpbiBDb3B5RmlsZXMgKi8sCisJCQkJMUNGQ0VFOUMwQUFDQzQwMTAwMzQ4NzUwIC8qIERPTUhU
TUxTZWxlY3RFbGVtZW50UHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLywKKwkJCQkxQ0ZDRUU5RDBB
QUNDNDAxMDAzNDg3NTAgLyogRE9NSFRNTFN0eWxlRWxlbWVudFByaXZhdGUuaCBpbiBDb3B5Rmls
ZXMgKi8sCisJCQkJMUNGQ0VFOUUwQUFDQzQwMTAwMzQ4NzUwIC8qIERPTUhUTUxUZXh0QXJlYUVs
ZW1lbnRQcml2YXRlLmggaW4gQ29weUZpbGVzICovLAorCQkJCTFDRkNFRTlGMEFBQ0M0MDEwMDM0
ODc1MCAvKiBET01IVE1MQW5jaG9yRWxlbWVudFByaXZhdGUuaCBpbiBDb3B5RmlsZXMgKi8sCisJ
CQkJMUNGQ0VFQTAwQUFDQzQwMTAwMzQ4NzUwIC8qIERPTUhUTUxBcmVhRWxlbWVudFByaXZhdGUu
aCBpbiBDb3B5RmlsZXMgKi8sCisJCQkJMUNGQ0VFQzUwQUFDQzVDQTAwMzQ4NzUwIC8qIERPTURP
TUltcGxlbWVudGF0aW9uUHJpdmF0ZS5oIGluIENvcHlGaWxlcyAqLywKIAkJCQk4NTA2NTc5RjBB
QUI0QThFMDAyRDE1QzAgLyogRE9NTWVkaWFMaXN0LmggaW4gQ29weUZpbGVzICovLAogCQkJCTg1
MDY1N0EwMEFBQjRBOEUwMDJEMTVDMCAvKiBET01TdHlsZVNoZWV0LmggaW4gQ29weUZpbGVzICov
LAogCQkJCTg1MDY1N0ExMEFBQjRBOEUwMDJEMTVDMCAvKiBET01TdHlsZVNoZWV0TGlzdC5oIGlu
IENvcHlGaWxlcyAqLywKQEAgLTIyNjAsMTEgKzIzMDgsMzYgQEAKIAkJMUNBRjM0N0UwQTZDNDA1
MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXZWJTY3JpcHRPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUNBRjM0N0YwQTZDNDA1MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdC5tbSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlNjcmlwdE9iamVjdC5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNBRjM0ODAwQTZDNDA1MjAwQUJFMDZFIC8qIFdlYlNj
cmlwdE9iamVjdFByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vi
U2NyaXB0T2JqZWN0UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0Qw
QjYyMDBBQUJEQjUwMDBEMEEzRkYgLyogUHVibGljRE9NSW50ZXJmYWNlcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBQdWJsaWNET01JbnRlcmZhY2VzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTFDRDQ0MTg5MEE0Q0U3NkYwMEEwMDdBQiAvKiBlYXN0V2VzdFJl
c2l6ZUN1cnNvci50aWZmICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gaW1hZ2UudGlmZjsgcGF0aCA9IGVhc3RXZXN0UmVzaXplQ3Vyc29yLnRpZmY7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFDRDQ0MThBMEE0Q0U3NkYwMEEwMDdBQiAvKiBu
b3J0aEVhc3RTb3V0aFdlc3RSZXNpemVDdXJzb3IudGlmZiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnRpZmY7IHBhdGggPSBub3J0aEVhc3RT
b3V0aFdlc3RSZXNpemVDdXJzb3IudGlmZjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUNENDQxOEIwQTRDRTc2RjAwQTAwN0FCIC8qIG5vcnRoU291dGhSZXNpemVDdXJzb3IudGlmZiAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnRp
ZmY7IHBhdGggPSBub3J0aFNvdXRoUmVzaXplQ3Vyc29yLnRpZmY7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTFDRDQ0MThDMEE0Q0U3NkYwMEEwMDdBQiAvKiBub3J0aFdlc3RTb3V0aEVh
c3RSZXNpemVDdXJzb3IudGlmZiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IGltYWdlLnRpZmY7IHBhdGggPSBub3J0aFdlc3RTb3V0aEVhc3RSZXNpemVD
dXJzb3IudGlmZjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUNGQUUzMjIwQTZENkEz
RjAwMzI1OTNEIC8qIGxpYm9iamMuZHlsaWIgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmR5bGliIjsgbmFtZSA9IGxpYm9i
amMuZHlsaWI7IHBhdGggPSAvdXNyL2xpYi9saWJvYmpjLmR5bGliOyBzb3VyY2VUcmVlID0gIjxh
YnNvbHV0ZT4iOyB9OworCQkxQ0ZDRUU3RjBBQUNDM0IzMDAzNDg3NTAgLyogRE9NSFRNTEFuY2hv
ckVsZW1lbnRQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTUhU
TUxBbmNob3JFbGVtZW50UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
Q0ZDRUU4ODBBQUNDM0MwMDAzNDg3NTAgLyogRE9NSFRNTEFyZWFFbGVtZW50UHJpdmF0ZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MQXJlYUVsZW1lbnRQcml2YXRl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDRkNFRThEMEFBQ0MzQ0QwMDM0ODc1
MCAvKiBET01IVE1MQm9keUVsZW1lbnRQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERPTUhUTUxCb2R5RWxlbWVudFByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUNGQ0VFOEUwQUFDQzNDRDAwMzQ4NzUwIC8qIERPTUhUTUxCdXR0b25FbGVt
ZW50UHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MQnV0
dG9uRWxlbWVudFByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNGQ0VF
OEYwQUFDQzNDRDAwMzQ4NzUwIC8qIERPTUhUTUxJbWFnZUVsZW1lbnRQcml2YXRlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTUhUTUxJbWFnZUVsZW1lbnRQcml2YXRlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDRkNFRTkwMEFBQ0MzQ0QwMDM0ODc1MCAv
KiBET01IVE1MTGFiZWxFbGVtZW50UHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBET01IVE1MTGFiZWxFbGVtZW50UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQ0ZDRUU5MTBBQUNDM0NEMDAzNDg3NTAgLyogRE9NSFRNTExlZ2VuZEVsZW1l
bnRQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTUhUTUxMZWdl
bmRFbGVtZW50UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0ZDRUU5
MjBBQUNDM0NEMDAzNDg3NTAgLyogRE9NSFRNTExpbmtFbGVtZW50UHJpdmF0ZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MTGlua0VsZW1lbnRQcml2YXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDRkNFRTkzMEFBQ0MzQ0QwMDM0ODc1MCAvKiBE
T01IVE1MU2VsZWN0RWxlbWVudFByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRE9NSFRNTFNlbGVjdEVsZW1lbnRQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTFDRkNFRTk0MEFBQ0MzQ0QwMDM0ODc1MCAvKiBET01IVE1MU3R5bGVFbGVtZW50
UHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MU3R5bGVF
bGVtZW50UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0ZDRUU5NTBB
QUNDM0NEMDAzNDg3NTAgLyogRE9NSFRNTFRleHRBcmVhRWxlbWVudFByaXZhdGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSFRNTFRleHRBcmVhRWxlbWVudFByaXZhdGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNGQ0VFQUMwQUFDQzQ4NDAwMzQ4NzUw
IC8qIERPTUNoYXJhY3RlckRhdGFQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERPTUNoYXJhY3RlckRhdGFQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFDRkNFRUIyMEFBQ0M0QTIwMDM0ODc1MCAvKiBET01Eb2N1bWVudFByaXZhdGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NRG9jdW1lbnRQcml2YXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDRkNFRUIzMEFBQ0M0QTIwMDM0ODc1MCAvKiBE
T01FbGVtZW50UHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01F
bGVtZW50UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0ZDRUVCODBB
QUNDNTA1MDAzNDg3NTAgLyogRE9NQ1NTTWVkaWFSdWxlUHJpdmF0ZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBET01DU1NNZWRpYVJ1bGVQcml2YXRlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDRkNFRUI5MEFBQ0M1MDUwMDM0ODc1MCAvKiBET01DU1NTdHls
ZURlY2xhcmF0aW9uUHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
T01DU1NTdHlsZURlY2xhcmF0aW9uUHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQ0ZDRUVCQTBBQUNDNTA1MDAzNDg3NTAgLyogRE9NQ1NTU3R5bGVTaGVldFByaXZhdGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQ1NTU3R5bGVTaGVldFByaXZh
dGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNGQ0VFQzQwQUFDQzVCRTAwMzQ4
NzUwIC8qIERPTURPTUltcGxlbWVudGF0aW9uUHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBET01ET01JbXBsZW1lbnRhdGlvblByaXZhdGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUNGQ0VFQ0EwQUFDQzVGNDAwMzQ4NzUwIC8qIERPTVByb2Nlc3Np
bmdJbnN0cnVjdGlvblByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RE9NUHJvY2Vzc2luZ0luc3RydWN0aW9uUHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQ0ZDRUVENDBBQUNDNjVEMDAzNDg3NTAgLyogRE9NSFRNTE9wdGlvbnNDb2xsZWN0
aW9uUHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MT3B0
aW9uc0NvbGxlY3Rpb25Qcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFD
RkNFRURBMEFBQ0M2ODMwMDM0ODc1MCAvKiBET01IVE1MUHJlRWxlbWVudFByaXZhdGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSFRNTFByZUVsZW1lbnRQcml2YXRlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDRkNFRUUxMEFBQ0M2QzAwMDM0ODc1MCAv
KiBET01OYW1lZE5vZGVNYXBQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTU5hbWVkTm9kZU1hcFByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUNGQ0VFRTcwQUFDQzcxMzAwMzQ4NzUwIC8qIERPTUNTU1ByaW1pdGl2ZVZhbHVlUHJpdmF0
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01DU1NQcmltaXRpdmVWYWx1
ZVByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNGQ0VFRjkwQUFDQzc5
MDAwMzQ4NzUwIC8qIERPTUhUTUxJbnB1dEVsZW1lbnRQcml2YXRlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IERPTUhUTUxJbnB1dEVsZW1lbnRQcml2YXRlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJEOTA2NjBCMDY2NUQ5MzcwMDZCNkYxQSAvKiBDbGlwYm9h
cmRNYWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
aW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ2xpcGJvYXJkTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsg
dXNlc1RhYnMgPSAwOyB9OwogCQkyRDkwNjYwQzA2NjVEOTM3MDA2QjZGMUEgLyogQ2xpcGJvYXJk
TWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBp
bmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gQ2xpcGJvYXJkTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0
aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKIAkJNDQ4QTI5QkQwQTQ2RDlDQjAwMzA3NTlGIC8qIEpT
SFRNTE9wdGlvbnNDb2xsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMjYwNSw3ICsyNjc4LDcgQEAKIAkJODU5QTlDNDQwQUE1RTNCRDAwQjY5NEIyIC8qIERPTUhU
TUxNZXRhRWxlbWVudC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBET01IVE1MTWV0YUVsZW1lbnQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg1
OUE5QzQ1MEFBNUUzQkQwMEI2OTRCMiAvKiBET01IVE1MU3R5bGVFbGVtZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01IVE1MU3R5bGVFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg1OUE5QzQ2MEFBNUUzQkQwMEI2OTRCMiAvKiBET01IVE1M
U3R5bGVFbGVtZW50Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IERPTUhUTUxTdHlsZUVsZW1lbnQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTg1
OUI3RkI5MEE4RDI4ODgwMEE1RjFFQSAvKiBDb2RlR2VuZXJhdG9yT2JqQy5wbSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0LnNjcmlwdC5wZXJsOyBuYW1lID0gQ29kZUdlbmVyYXRvck9iakMucG07IHBhdGggPSBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtOyBzb3VyY2VUcmVlID0gU09VUkNF
X1JPT1Q7IH07CisJCTg1OUI3RkI5MEE4RDI4ODgwMEE1RjFFQSAvKiBDb2RlR2VuZXJhdG9yT2Jq
Qy5wbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0LnNjcmlwdC5wZXJsOyBuYW1lID0gQ29kZUdlbmVyYXRvck9i
akMucG07IHBhdGggPSBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtOyBzb3Vy
Y2VUcmVlID0gU09VUkNFX1JPT1Q7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OwogCQk4
NUFDQTk4NDBBOUI1MjAzMDA2NzFFOTAgLyogRE9NQ2hhcmFjdGVyRGF0YS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQ2hhcmFjdGVyRGF0YS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk4NUFDQTk4NTBBOUI1MjAzMDA2NzFFOTAgLyogRE9NQ2hhcmFjdGVy
RGF0YS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBET01DaGFy
YWN0ZXJEYXRhLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NUFDQTk5QTBBOUI1
NzU5MDA2NzFFOTAgLyogRE9NVGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRE9NVGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDc4MSwzMCArNDg1
NCwzNiBAQAogCQkJCTg1RDM4OUIxMEE5OTFBN0YwMDI4MjE0NSAvKiBET01BdHRyLm1tICovLAog
CQkJCTg1MDg5Q0NGMEE5OEM0MjcwMEEyNzVBQSAvKiBET01DREFUQVNlY3Rpb24uaCAqLywKIAkJ
CQk4NTA4OUNEMDBBOThDNDI3MDBBMjc1QUEgLyogRE9NQ0RBVEFTZWN0aW9uLm1tICovLAorCQkJ
CTFDRkNFRUFDMEFBQ0M0ODQwMDM0ODc1MCAvKiBET01DaGFyYWN0ZXJEYXRhUHJpdmF0ZS5oICov
LAogCQkJCTg1QUNBOTg0MEE5QjUyMDMwMDY3MUU5MCAvKiBET01DaGFyYWN0ZXJEYXRhLmggKi8s
CiAJCQkJODVBQ0E5ODUwQTlCNTIwMzAwNjcxRTkwIC8qIERPTUNoYXJhY3RlckRhdGEubW0gKi8s
CiAJCQkJODUwODlDRDEwQTk4QzQyNzAwQTI3NUFBIC8qIERPTUNvbW1lbnQuaCAqLywKIAkJCQk4
NTA4OUNEMjBBOThDNDI3MDBBMjc1QUEgLyogRE9NQ29tbWVudC5tbSAqLywKLQkJCQk4NTE4RENF
NzBBOUNDODBDMDA5MUI3QTYgLyogRE9NRE9NSW1wbGVtZW50YXRpb24uaCAqLywKLQkJCQk4NTE4
RENFODBBOUNDODBEMDA5MUI3QTYgLyogRE9NRE9NSW1wbGVtZW50YXRpb24ubW0gKi8sCisJCQkJ
MUNGQ0VFQjIwQUFDQzRBMjAwMzQ4NzUwIC8qIERPTURvY3VtZW50UHJpdmF0ZS5oICovLAogCQkJ
CTg1QUNBQkFFMEE5Q0FGODAwMDY3MUU5MCAvKiBET01Eb2N1bWVudC5oICovLAogCQkJCTg1QUNB
QkFGMEE5Q0FGODAwMDY3MUU5MCAvKiBET01Eb2N1bWVudC5tbSAqLywKIAkJCQk4NTA4OUNEMzBB
OThDNDI4MDBBMjc1QUEgLyogRE9NRG9jdW1lbnRGcmFnbWVudC5oICovLAogCQkJCTg1MDg5Q0Q0
MEE5OEM0MjgwMEEyNzVBQSAvKiBET01Eb2N1bWVudEZyYWdtZW50Lm1tICovLAogCQkJCTg1Q0E5
NzVBMEE5NjJFNTQwMDY5MENDRiAvKiBET01Eb2N1bWVudFR5cGUuaCAqLywKIAkJCQk4NUNBOTc1
QjBBOTYyRTU0MDA2OTBDQ0YgLyogRE9NRG9jdW1lbnRUeXBlLm1tICovLAorCQkJCTFDRkNFRUM0
MEFBQ0M1QkUwMDM0ODc1MCAvKiBET01ET01JbXBsZW1lbnRhdGlvblByaXZhdGUuaCAqLywKKwkJ
CQk4NTE4RENFNzBBOUNDODBDMDA5MUI3QTYgLyogRE9NRE9NSW1wbGVtZW50YXRpb24uaCAqLywK
KwkJCQk4NTE4RENFODBBOUNDODBEMDA5MUI3QTYgLyogRE9NRE9NSW1wbGVtZW50YXRpb24ubW0g
Ki8sCisJCQkJMUNGQ0VFQjMwQUFDQzRBMjAwMzQ4NzUwIC8qIERPTUVsZW1lbnRQcml2YXRlLmgg
Ki8sCiAJCQkJODVBQ0E5QkUwQTlCNUZBNTAwNjcxRTkwIC8qIERPTUVsZW1lbnQuaCAqLywKIAkJ
CQk4NUFDQTlCRjBBOUI1RkE1MDA2NzFFOTAgLyogRE9NRWxlbWVudC5tbSAqLywKIAkJCQk4NUNB
OTZCNjBBOTYyMUE2MDA2OTBDQ0YgLyogRE9NRW50aXR5LmggKi8sCiAJCQkJODVDQTk2QjcwQTk2
MjFBNjAwNjkwQ0NGIC8qIERPTUVudGl0eS5tbSAqLywKIAkJCQk4NTA4OUNENTBBOThDNDI4MDBB
Mjc1QUEgLyogRE9NRW50aXR5UmVmZXJlbmNlLmggKi8sCiAJCQkJODUwODlDRDYwQTk4QzQyODAw
QTI3NUFBIC8qIERPTUVudGl0eVJlZmVyZW5jZS5tbSAqLywKKwkJCQkxQ0ZDRUVFMTBBQUNDNkMw
MDAzNDg3NTAgLyogRE9NTmFtZWROb2RlTWFwUHJpdmF0ZS5oICovLAogCQkJCTg1MThERDc2MEE5
Q0YzMUIwMDkxQjdBNiAvKiBET01OYW1lZE5vZGVNYXAuaCAqLywKIAkJCQk4NTE4REQ3NzBBOUNG
MzFCMDA5MUI3QTYgLyogRE9NTmFtZWROb2RlTWFwLm1tICovLAogCQkJCTg1QUNBQTg5MEE5Qjc1
OUMwMDY3MUU5MCAvKiBET01Ob2RlTGlzdC5oICovLAogCQkJCTg1QUNBQThBMEE5Qjc1OUMwMDY3
MUU5MCAvKiBET01Ob2RlTGlzdC5tbSAqLywKIAkJCQk4NUNBOTZFODBBOTYyNEU5MDA2OTBDQ0Yg
LyogRE9NTm90YXRpb24uaCAqLywKIAkJCQk4NUNBOTZFOTBBOTYyNEU5MDA2OTBDQ0YgLyogRE9N
Tm90YXRpb24ubW0gKi8sCisJCQkJMUNGQ0VFQ0EwQUFDQzVGNDAwMzQ4NzUwIC8qIERPTVByb2Nl
c3NpbmdJbnN0cnVjdGlvblByaXZhdGUuaCAqLywKIAkJCQk4NUY1NkE3ODBBOThDRTM3MDBBREI2
MEEgLyogRE9NUHJvY2Vzc2luZ0luc3RydWN0aW9uLmggKi8sCiAJCQkJODVGNTZBNzkwQTk4Q0Uz
NzAwQURCNjBBIC8qIERPTVByb2Nlc3NpbmdJbnN0cnVjdGlvbi5tbSAqLywKIAkJCQk4NUFDQTk5
QTBBOUI1NzU5MDA2NzFFOTAgLyogRE9NVGV4dC5oICovLApAQCAtNDgyMiwyMCArNDkwMSwyNCBA
QAogCQkJCTg1MDMyREM2MEFBOEM5QkUwMDdEM0I3RCAvKiBET01DU1NGb250RmFjZVJ1bGUubW0g
Ki8sCiAJCQkJODUwMzJEQzcwQUE4QzlCRTAwN0QzQjdEIC8qIERPTUNTU0ltcG9ydFJ1bGUuaCAq
LywKIAkJCQk4NTAzMkRDODBBQThDOUJFMDA3RDNCN0QgLyogRE9NQ1NTSW1wb3J0UnVsZS5tbSAq
LywKKwkJCQkxQ0ZDRUVCODBBQUNDNTA1MDAzNDg3NTAgLyogRE9NQ1NTTWVkaWFSdWxlUHJpdmF0
ZS5oICovLAogCQkJCTg1MDMyREM5MEFBOEM5QkUwMDdEM0I3RCAvKiBET01DU1NNZWRpYVJ1bGUu
aCAqLywKIAkJCQk4NTAzMkRDQTBBQThDOUJFMDA3RDNCN0QgLyogRE9NQ1NTTWVkaWFSdWxlLm1t
ICovLAogCQkJCTg1MDMyRENCMEFBOEM5QkUwMDdEM0I3RCAvKiBET01DU1NQYWdlUnVsZS5oICov
LAogCQkJCTg1MDMyRENDMEFBOEM5QkUwMDdEM0I3RCAvKiBET01DU1NQYWdlUnVsZS5tbSAqLywK
KwkJCQkxQ0ZDRUVFNzBBQUNDNzEzMDAzNDg3NTAgLyogRE9NQ1NTUHJpbWl0aXZlVmFsdWVQcml2
YXRlLmggKi8sCiAJCQkJODU4QzM4MkEwQUE4RTQwNTAwQjE4N0E0IC8qIERPTUNTU1ByaW1pdGl2
ZVZhbHVlLmggKi8sCiAJCQkJODU4QzM4MkIwQUE4RTQwNTAwQjE4N0E0IC8qIERPTUNTU1ByaW1p
dGl2ZVZhbHVlLm1tICovLAogCQkJCTg1MDMyRENEMEFBOEM5QkUwMDdEM0I3RCAvKiBET01DU1NS
dWxlLmggKi8sCiAJCQkJODUwMzJEQ0UwQUE4QzlCRTAwN0QzQjdEIC8qIERPTUNTU1J1bGUubW0g
Ki8sCiAJCQkJODUwMzJEQ0YwQUE4QzlCRTAwN0QzQjdEIC8qIERPTUNTU1J1bGVMaXN0LmggKi8s
CiAJCQkJODUwMzJERDAwQUE4QzlCRTAwN0QzQjdEIC8qIERPTUNTU1J1bGVMaXN0Lm1tICovLAor
CQkJCTFDRkNFRUI5MEFBQ0M1MDUwMDM0ODc1MCAvKiBET01DU1NTdHlsZURlY2xhcmF0aW9uUHJp
dmF0ZS5oICovLAogCQkJCTg1MDMyREQxMEFBOEM5QkUwMDdEM0I3RCAvKiBET01DU1NTdHlsZURl
Y2xhcmF0aW9uLmggKi8sCiAJCQkJODUwMzJERDIwQUE4QzlCRTAwN0QzQjdEIC8qIERPTUNTU1N0
eWxlRGVjbGFyYXRpb24ubW0gKi8sCiAJCQkJODUwMzJERDMwQUE4QzlCRTAwN0QzQjdEIC8qIERP
TUNTU1N0eWxlUnVsZS5oICovLAogCQkJCTg1MDMyREQ0MEFBOEM5QkUwMDdEM0I3RCAvKiBET01D
U1NTdHlsZVJ1bGUubW0gKi8sCisJCQkJMUNGQ0VFQkEwQUFDQzUwNTAwMzQ4NzUwIC8qIERPTUNT
U1N0eWxlU2hlZXRQcml2YXRlLmggKi8sCiAJCQkJODU4QzM5MjYwQUE4RkY5RDAwQjE4N0E0IC8q
IERPTUNTU1N0eWxlU2hlZXQuaCAqLywKIAkJCQk4NThDMzkyNzBBQThGRjlEMDBCMTg3QTQgLyog
RE9NQ1NTU3R5bGVTaGVldC5tbSAqLywKIAkJCQk4NThDMzgxQTBBQThFMjk2MDBCMTg3QTQgLyog
RE9NQ1NTVmFsdWUuaCAqLywKQEAgLTQ4NjgsOCArNDk1MSw4IEBACiAJCTg1QjIzMjI2MEE4QkYz
QTEwMEZERjQ3QiAvKiBEZXJpdmVkIFNvdXJjZXMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsK
IAkJCWNoaWxkcmVuID0gKAotCQkJCTg1MDY1NzA0MEFBQjQ3NkMwMDJEMTVDMCAvKiBTdHlsZVNo
ZWV0cyAqLywKIAkJCQk4NTk2N0Q5RjBBQThCQjU5MDA1RkVERUUgLyogQ29yZSAqLywKKwkJCQk4
NTA2NTcwNDBBQUI0NzZDMDAyRDE1QzAgLyogU3R5bGVTaGVldHMgKi8sCiAJCQkJODU5NjdEQ0Ew
QUE4QkYwRjAwNUZFREVFIC8qIENTUyAqLywKIAkJCQk4NUM1NkQwMzBBQThCQUE3MDBEOTU3NTUg
LyogSFRNTCAqLywKIAkJCSk7CkBAIC00ODgxLDcgKzQ5NjQsOSBAQAogCQkJaXNhID0gUEJYR3Jv
dXA7CiAJCQljaGlsZHJlbiA9ICgKIAkJCQk4NURGODEyMTBBQTc3ODcyMDA0ODZBRDcgLyogRE9N
SFRNTEFuY2hvckVsZW1lbnQuaCAqLywKKwkJCQkxQ0ZDRUU3RjBBQUNDM0IzMDAzNDg3NTAgLyog
RE9NSFRNTEFuY2hvckVsZW1lbnRQcml2YXRlLmggKi8sCiAJCQkJODVERjgxMjIwQUE3Nzg3MjAw
NDg2QUQ3IC8qIERPTUhUTUxBbmNob3JFbGVtZW50Lm1tICovLAorCQkJCTFDRkNFRTg4MEFBQ0Mz
QzAwMDM0ODc1MCAvKiBET01IVE1MQXJlYUVsZW1lbnRQcml2YXRlLmggKi8sCiAJCQkJODVFQ0JF
REQwQUE3NjI2ODAwNTQ0RjBCIC8qIERPTUhUTUxBcmVhRWxlbWVudC5oICovLAogCQkJCTg1RUNC
RURFMEFBNzYyNjgwMDU0NEYwQiAvKiBET01IVE1MQXJlYUVsZW1lbnQubW0gKi8sCiAJCQkJODUx
ODNCMzgwQUE2OTI2MTAwRjE5RkEzIC8qIERPTUhUTUxCUkVsZW1lbnQuaCAqLywKQEAgLTQ4OTAs
OCArNDk3NSwxMCBAQAogCQkJCTg1OUE5QzNFMEFBNUUzQkQwMEI2OTRCMiAvKiBET01IVE1MQmFz
ZUVsZW1lbnQubW0gKi8sCiAJCQkJODVFQ0JFREYwQUE3NjI2ODAwNTQ0RjBCIC8qIERPTUhUTUxC
YXNlRm9udEVsZW1lbnQuaCAqLywKIAkJCQk4NUVDQkVFMDBBQTc2MjY4MDA1NDRGMEIgLyogRE9N
SFRNTEJhc2VGb250RWxlbWVudC5tbSAqLywKKwkJCQkxQ0ZDRUU4RDBBQUNDM0NEMDAzNDg3NTAg
LyogRE9NSFRNTEJvZHlFbGVtZW50UHJpdmF0ZS5oICovLAogCQkJCTg1OUE5QzNGMEFBNUUzQkQw
MEI2OTRCMiAvKiBET01IVE1MQm9keUVsZW1lbnQuaCAqLywKIAkJCQk4NTlBOUM0MDBBQTVFM0JE
MDBCNjk0QjIgLyogRE9NSFRNTEJvZHlFbGVtZW50Lm1tICovLAorCQkJCTFDRkNFRThFMEFBQ0Mz
Q0QwMDM0ODc1MCAvKiBET01IVE1MQnV0dG9uRWxlbWVudFByaXZhdGUuaCAqLywKIAkJCQk4NUJB
NENENTBBQTY4NjFCMDA4ODA1MkQgLyogRE9NSFRNTEJ1dHRvbkVsZW1lbnQuaCAqLywKIAkJCQk4
NUJBNENENjBBQTY4NjFCMDA4ODA1MkQgLyogRE9NSFRNTEJ1dHRvbkVsZW1lbnQubW0gKi8sCiAJ
CQkJODVERjJGOEMwQUEzQzg4MTAwQUQ2NEM1IC8qIERPTUhUTUxDb2xsZWN0aW9uLmggKi8sCkBA
IC00OTI0LDE4ICs1MDExLDIzIEBACiAJCQkJODU5OTJFQjUwQUE1MDY5NTAwQUMwNzg1IC8qIERP
TUhUTUxIdG1sRWxlbWVudC5tbSAqLywKIAkJCQk4NURGODE5MTBBQTc3RTRCMDA0ODZBRDcgLyog
RE9NSFRNTElGcmFtZUVsZW1lbnQuaCAqLywKIAkJCQk4NURGODE5MjBBQTc3RTRCMDA0ODZBRDcg
LyogRE9NSFRNTElGcmFtZUVsZW1lbnQubW0gKi8sCisJCQkJMUNGQ0VFOEYwQUFDQzNDRDAwMzQ4
NzUwIC8qIERPTUhUTUxJbWFnZUVsZW1lbnRQcml2YXRlLmggKi8sCiAJCQkJODVERjgxMjMwQUE3
Nzg3MjAwNDg2QUQ3IC8qIERPTUhUTUxJbWFnZUVsZW1lbnQuaCAqLywKIAkJCQk4NURGODEyNDBB
QTc3ODcyMDA0ODZBRDcgLyogRE9NSFRNTEltYWdlRWxlbWVudC5tbSAqLywKKwkJCQkxQ0ZDRUVG
OTBBQUNDNzkwMDAzNDg3NTAgLyogRE9NSFRNTElucHV0RWxlbWVudFByaXZhdGUuaCAqLywKIAkJ
CQk4NUYzMkFFNDBBQTYzQjg3MDBGRjMxODQgLyogRE9NSFRNTElucHV0RWxlbWVudC5oICovLAog
CQkJCTg1RjMyQUU1MEFBNjNCODcwMEZGMzE4NCAvKiBET01IVE1MSW5wdXRFbGVtZW50Lm1tICov
LAogCQkJCTg1OUE5QzQxMEFBNUUzQkQwMEI2OTRCMiAvKiBET01IVE1MSXNJbmRleEVsZW1lbnQu
aCAqLywKIAkJCQk4NTlBOUM0MjBBQTVFM0JEMDBCNjk0QjIgLyogRE9NSFRNTElzSW5kZXhFbGVt
ZW50Lm1tICovLAogCQkJCTg1QkE0RDAzMEFBNjg4NjgwMDg4MDUyRCAvKiBET01IVE1MTElFbGVt
ZW50LmggKi8sCiAJCQkJODVCQTREMDQwQUE2ODg2ODAwODgwNTJEIC8qIERPTUhUTUxMSUVsZW1l
bnQubW0gKi8sCisJCQkJMUNGQ0VFOTAwQUFDQzNDRDAwMzQ4NzUwIC8qIERPTUhUTUxMYWJlbEVs
ZW1lbnRQcml2YXRlLmggKi8sCiAJCQkJODVCQTRDRDkwQUE2ODYxQjAwODgwNTJEIC8qIERPTUhU
TUxMYWJlbEVsZW1lbnQuaCAqLywKIAkJCQk4NUJBNENEQTBBQTY4NjFCMDA4ODA1MkQgLyogRE9N
SFRNTExhYmVsRWxlbWVudC5tbSAqLywKKwkJCQkxQ0ZDRUU5MTBBQUNDM0NEMDAzNDg3NTAgLyog
RE9NSFRNTExlZ2VuZEVsZW1lbnRQcml2YXRlLmggKi8sCiAJCQkJODVCQTRDREIwQUE2ODYxQjAw
ODgwNTJEIC8qIERPTUhUTUxMZWdlbmRFbGVtZW50LmggKi8sCiAJCQkJODVCQTRDREMwQUE2ODYx
QjAwODgwNTJEIC8qIERPTUhUTUxMZWdlbmRFbGVtZW50Lm1tICovLAorCQkJCTFDRkNFRTkyMEFB
Q0MzQ0QwMDM0ODc1MCAvKiBET01IVE1MTGlua0VsZW1lbnRQcml2YXRlLmggKi8sCiAJCQkJODU5
OTJFQjYwQUE1MDY5NTAwQUMwNzg1IC8qIERPTUhUTUxMaW5rRWxlbWVudC5oICovLAogCQkJCTg1
OTkyRUI3MEFBNTA2OTUwMEFDMDc4NSAvKiBET01IVE1MTGlua0VsZW1lbnQubW0gKi8sCiAJCQkJ
ODVFQ0JFRTUwQUE3NjI2ODAwNTQ0RjBCIC8qIERPTUhUTUxNYXBFbGVtZW50LmggKi8sCkBAIC00
OTUyLDIwICs1MDQ0LDI0IEBACiAJCQkJODVERjgxMjYwQUE3Nzg3MjAwNDg2QUQ3IC8qIERPTUhU
TUxPYmplY3RFbGVtZW50Lm1tICovLAogCQkJCTg1RjMyQUU2MEFBNjNCODcwMEZGMzE4NCAvKiBE
T01IVE1MT3B0R3JvdXBFbGVtZW50LmggKi8sCiAJCQkJODVGMzJBRTcwQUE2M0I4NzAwRkYzMTg0
IC8qIERPTUhUTUxPcHRHcm91cEVsZW1lbnQubW0gKi8sCisJCQkJMUNGQ0VFRDQwQUFDQzY1RDAw
MzQ4NzUwIC8qIERPTUhUTUxPcHRpb25zQ29sbGVjdGlvblByaXZhdGUuaCAqLywKIAkJCQk4NURG
MkY5OTBBQTNDQUU1MDBBRDY0QzUgLyogRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmggKi8sCiAJ
CQkJODVERjJGOUEwQUEzQ0FFNTAwQUQ2NEM1IC8qIERPTUhUTUxPcHRpb25zQ29sbGVjdGlvbi5t
bSAqLywKIAkJCQk4NTE4M0IzQzBBQTY5MjYxMDBGMTlGQTMgLyogRE9NSFRNTFBhcmFncmFwaEVs
ZW1lbnQuaCAqLywKIAkJCQk4NTE4M0IzRDBBQTY5MjYxMDBGMTlGQTMgLyogRE9NSFRNTFBhcmFn
cmFwaEVsZW1lbnQubW0gKi8sCiAJCQkJODVFQ0JFRTkwQUE3NjI2OTAwNTQ0RjBCIC8qIERPTUhU
TUxQYXJhbUVsZW1lbnQuaCAqLywKIAkJCQk4NUVDQkVFQTBBQTc2MjY5MDA1NDRGMEIgLyogRE9N
SFRNTFBhcmFtRWxlbWVudC5tbSAqLywKKwkJCQkxQ0ZDRUVEQTBBQUNDNjgzMDAzNDg3NTAgLyog
RE9NSFRNTFByZUVsZW1lbnRQcml2YXRlLmggKi8sCiAJCQkJODUxODNCM0UwQUE2OTI2MTAwRjE5
RkEzIC8qIERPTUhUTUxQcmVFbGVtZW50LmggKi8sCiAJCQkJODUxODNCM0YwQUE2OTI2MTAwRjE5
RkEzIC8qIERPTUhUTUxQcmVFbGVtZW50Lm1tICovLAogCQkJCTg1MTgzQjQwMEFBNjkyNjEwMEYx
OUZBMyAvKiBET01IVE1MUXVvdGVFbGVtZW50LmggKi8sCiAJCQkJODUxODNCNDEwQUE2OTI2MTAw
RjE5RkEzIC8qIERPTUhUTUxRdW90ZUVsZW1lbnQubW0gKi8sCiAJCQkJODVERjgxOTMwQUE3N0U0
QjAwNDg2QUQ3IC8qIERPTUhUTUxTY3JpcHRFbGVtZW50LmggKi8sCiAJCQkJODVERjgxOTQwQUE3
N0U0QjAwNDg2QUQ3IC8qIERPTUhUTUxTY3JpcHRFbGVtZW50Lm1tICovLAorCQkJCTFDRkNFRTkz
MEFBQ0MzQ0QwMDM0ODc1MCAvKiBET01IVE1MU2VsZWN0RWxlbWVudFByaXZhdGUuaCAqLywKIAkJ
CQk4NUYzMkFFODBBQTYzQjg3MDBGRjMxODQgLyogRE9NSFRNTFNlbGVjdEVsZW1lbnQuaCAqLywK
IAkJCQk4NUYzMkFFOTBBQTYzQjg3MDBGRjMxODQgLyogRE9NSFRNTFNlbGVjdEVsZW1lbnQubW0g
Ki8sCisJCQkJMUNGQ0VFOTQwQUFDQzNDRDAwMzQ4NzUwIC8qIERPTUhUTUxTdHlsZUVsZW1lbnRQ
cml2YXRlLmggKi8sCiAJCQkJODU5QTlDNDUwQUE1RTNCRDAwQjY5NEIyIC8qIERPTUhUTUxTdHls
ZUVsZW1lbnQuaCAqLywKIAkJCQk4NTlBOUM0NjBBQTVFM0JEMDBCNjk0QjIgLyogRE9NSFRNTFN0
eWxlRWxlbWVudC5tbSAqLywKIAkJCQk4NURGODIxMzBBQTc4NDlFMDA0ODZBRDcgLyogRE9NSFRN
TFRhYmxlQ2FwdGlvbkVsZW1lbnQuaCAqLywKQEAgLTQ5ODAsNiArNTA3Niw3IEBACiAJCQkJODVE
RjgyMUEwQUE3ODQ5RTAwNDg2QUQ3IC8qIERPTUhUTUxUYWJsZVJvd0VsZW1lbnQubW0gKi8sCiAJ
CQkJODVERjgyMUIwQUE3ODQ5RTAwNDg2QUQ3IC8qIERPTUhUTUxUYWJsZVNlY3Rpb25FbGVtZW50
LmggKi8sCiAJCQkJODVERjgyMUMwQUE3ODQ5RTAwNDg2QUQ3IC8qIERPTUhUTUxUYWJsZVNlY3Rp
b25FbGVtZW50Lm1tICovLAorCQkJCTFDRkNFRTk1MEFBQ0MzQ0QwMDM0ODc1MCAvKiBET01IVE1M
VGV4dEFyZWFFbGVtZW50UHJpdmF0ZS5oICovLAogCQkJCTg1RjMyQUVBMEFBNjNCODcwMEZGMzE4
NCAvKiBET01IVE1MVGV4dEFyZWFFbGVtZW50LmggKi8sCiAJCQkJODVGMzJBRUIwQUE2M0I4NzAw
RkYzMTg0IC8qIERPTUhUTUxUZXh0QXJlYUVsZW1lbnQubW0gKi8sCiAJCQkJODU5OTJFQjgwQUE1
MDY5NTAwQUMwNzg1IC8qIERPTUhUTUxUaXRsZUVsZW1lbnQuaCAqLywKQEAgLTYwMDAsNiArNjA5
Nyw3IEBACiAJCQkJODU4QzM5NTEwQUE5MDI0QzAwQjE4N0E0IC8qIENTUyAqLywKIAkJCQk4NTk5
MkZDMjBBQTVERDQ2MDBBQzA3ODUgLyogSFRNTCAqLywKIAkJCQk4NTlCN0ZCOTBBOEQyODg4MDBB
NUYxRUEgLyogQ29kZUdlbmVyYXRvck9iakMucG0gKi8sCisJCQkJMUNEMEI2MjAwQUFCREI1MDAw
RDBBM0ZGIC8qIFB1YmxpY0RPTUludGVyZmFjZXMuaCAqLywKIAkJCQlCQzFBMzc5NzA5N0M3MTVG
MDAxOUYzRDggLyogRE9NLmggKi8sCiAJCQkJQkMxQTM3OTgwOTdDNzE1RjAwMTlGM0Q4IC8qIERP
TS5tbSAqLywKIAkJCQlCQzFBMzc5OTA5N0M3MTVGMDAxOUYzRDggLyogRE9NQ29yZS5oICovLApA
QCAtNzYxMSw2ICs3NzA5LDcgQEAKIAkJMDg2N0Q2OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2pl
Y3Qgb2JqZWN0ICovID0gewogCQkJaXNhID0gUEJYUHJvamVjdDsKIAkJCWJ1aWxkQ29uZmlndXJh
dGlvbkxpc3QgPSAxNDlDMjg0MzA4OTAyQjExMDA4QTlFRkMgLyogQnVpbGQgY29uZmlndXJhdGlv
biBsaXN0IGZvciBQQlhQcm9qZWN0ICJXZWJDb3JlIiAqLzsKKwkJCWNvbXBhdGliaWxpdHlWZXJz
aW9uID0gIlhjb2RlIDIuNCI7CiAJCQloYXNTY2FubmVkRm9yRW5jb2RpbmdzID0gMTsKIAkJCWtu
b3duUmVnaW9ucyA9ICgKIAkJCQlFbmdsaXNoLApAQCAtNzYyNSw2ICs3NzI0LDcgQEAKIAkJCXBy
b2R1Y3RSZWZHcm91cCA9IDAzNDc2OERGRkYzOEE1MDQxMURCOUM4QiAvKiBQcm9kdWN0cyAqLzsK
IAkJCXByb2plY3REaXJQYXRoID0gIiI7CiAJCQlwcm9qZWN0Um9vdCA9ICIiOworCQkJc2hvdWxk
Q2hlY2tDb21wYXRpYmlsaXR5ID0gMTsKIAkJCXRhcmdldHMgPSAoCiAJCQkJOTNGMTk4QTUwODI0
NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmUgKi8sCiAJCQkJREQwNDFGQkUwOUQ5RERCRTAwMTBBRjJB
IC8qIERlcml2ZWQgU291cmNlcyAqLywKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01D
U1MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL29iamMvRE9NQ1NTLmgJKHJldmlz
aW9uIDE2MjIxKQorKysgV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNTUy5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yNSw3ICsyNSw2IEBACiAgKi8KIAogI2ltcG9ydCA8V2ViQ29yZS9ET01Db3JlLmg+
Ci0jaW1wb3J0IDxXZWJDb3JlL0RPTURPTUltcGxlbWVudGF0aW9uLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL0RPTURvY3VtZW50Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL0RPTUVsZW1lbnQuaD4KICNpbXBv
cnQgPFdlYkNvcmUvRE9NT2JqZWN0Lmg+CkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL29iamMvRE9N
Q29yZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01Db3JlLmgJKHJl
dmlzaW9uIDE2MjIxKQorKysgV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUNvcmUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjgsMTMgKzI4LDEzIEBACiAjaW1wb3J0IDxXZWJDb3JlL0RPTUNEQVRBU2Vj
dGlvbi5oPgogI2ltcG9ydCA8V2ViQ29yZS9ET01DaGFyYWN0ZXJEYXRhLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL0RPTUNvbW1lbnQuaD4KLSNpbXBvcnQgPFdlYkNvcmUvRE9NRE9NSW1wbGVtZW50YXRp
b24uaD4KICNpbXBvcnQgPFdlYkNvcmUvRE9NRG9jdW1lbnQuaD4KICNpbXBvcnQgPFdlYkNvcmUv
RE9NRG9jdW1lbnRGcmFnbWVudC5oPgogI2ltcG9ydCA8V2ViQ29yZS9ET01Eb2N1bWVudFR5cGUu
aD4KICNpbXBvcnQgPFdlYkNvcmUvRE9NRWxlbWVudC5oPgogI2ltcG9ydCA8V2ViQ29yZS9ET01F
bnRpdHkuaD4KICNpbXBvcnQgPFdlYkNvcmUvRE9NRW50aXR5UmVmZXJlbmNlLmg+CisjaW1wb3J0
IDxXZWJDb3JlL0RPTURPTUltcGxlbWVudGF0aW9uLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0RPTU5h
bWVkTm9kZU1hcC5oPgogI2ltcG9ydCA8V2ViQ29yZS9ET01Ob2RlLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL0RPTU5vZGVMaXN0Lmg+CkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL29iamMvRE9NRXh0ZW5z
aW9ucy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01FeHRlbnNpb25z
LmgJKHJldmlzaW9uIDE2MjIxKQorKysgV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUV4dGVuc2lv
bnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsNyArMjcsNiBAQAogI2ltcG9ydCA8V2ViQ29yZS9E
T01BdHRyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0RPTUNTUy5oPgogI2ltcG9ydCA8V2ViQ29yZS9E
T01DU1NTdHlsZURlY2xhcmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJDb3JlL0RPTURPTUltcGxlbWVu
dGF0aW9uLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0RPTURvY3VtZW50Lmg+CiAjaW1wb3J0IDxXZWJD
b3JlL0RPTUVsZW1lbnQuaD4KICNpbXBvcnQgPFdlYkNvcmUvRE9NSFRNTC5oPgpJbmRleDogV2Vi
Q29yZS9iaW5kaW5ncy9vYmpjL0RPTUhUTUxJbnRlcm5hbC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvYmluZGluZ3Mvb2JqYy9ET01IVE1MSW50ZXJuYWwuaAkocmV2aXNpb24gMTYyMjEpCisrKyBX
ZWJDb3JlL2JpbmRpbmdzL29iamMvRE9NSFRNTEludGVybmFsLmgJKHdvcmtpbmcgY29weSkKQEAg
LTQ3LDYgKzQ3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIEhUTUxJbWFnZUVs
ZW1lbnQ7CiAgICAgY2xhc3MgSFRNTElucHV0RWxlbWVudDsKICAgICBjbGFzcyBIVE1MT2JqZWN0
RWxlbWVudDsKKyAgICBjbGFzcyBIVE1MT3B0aW9uRWxlbWVudDsKICAgICBjbGFzcyBIVE1MT3B0
aW9uc0NvbGxlY3Rpb247CiAgICAgY2xhc3MgSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQ7CiAgICAg
Y2xhc3MgSFRNTFRhYmxlQ2VsbEVsZW1lbnQ7CkBAIC0xMDMsNiArMTA0LDEwIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIC0gKFdlYkNvcmU6OkhUTUxPYmplY3RFbGVtZW50ICopX0hUTUxPYmplY3RF
bGVtZW50OwogQGVuZAogCitAaW50ZXJmYWNlIERPTUhUTUxPcHRpb25FbGVtZW50IChXZWJDb3Jl
SW50ZXJuYWwpCistIChXZWJDb3JlOjpIVE1MT3B0aW9uRWxlbWVudCAqKV9vcHRpb25FbGVtZW50
OworQGVuZAorCiBAaW50ZXJmYWNlIERPTUhUTUxJbnB1dEVsZW1lbnQgKFdlYkNvcmVJbnRlcm5h
bCkKIC0gKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQgKilfSFRNTElucHV0RWxlbWVudDsKIEBl
bmQKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3Mvb2JqYy9ET01Qcml2YXRlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTVByaXZhdGUuaAkocmV2aXNpb24gMTYyMjEpCisr
KyBXZWJDb3JlL2JpbmRpbmdzL29iamMvRE9NUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0z
Niw2ICszNiwzMSBAQAogI2ltcG9ydCA8V2ViQ29yZS9ET01SR0JDb2xvci5oPgogI2ltcG9ydCA8
V2ViQ29yZS9ET01SYW5nZS5oPgogCisjaW1wb3J0IDxXZWJDb3JlL0RPTUNTU01lZGlhUnVsZVBy
aXZhdGUuaD4KKyNpbXBvcnQgPFdlYkNvcmUvRE9NQ1NTUHJpbWl0aXZlVmFsdWVQcml2YXRlLmg+
CisjaW1wb3J0IDxXZWJDb3JlL0RPTUNTU1N0eWxlRGVjbGFyYXRpb25Qcml2YXRlLmg+CisjaW1w
b3J0IDxXZWJDb3JlL0RPTUNTU1N0eWxlU2hlZXRQcml2YXRlLmg+CisjaW1wb3J0IDxXZWJDb3Jl
L0RPTUNoYXJhY3RlckRhdGFQcml2YXRlLmg+CisjaW1wb3J0IDxXZWJDb3JlL0RPTURvY3VtZW50
UHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9ET01FbGVtZW50UHJpdmF0ZS5oPgorI2ltcG9y
dCA8V2ViQ29yZS9ET01IVE1MQW5jaG9yRWxlbWVudFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYkNv
cmUvRE9NSFRNTEFyZWFFbGVtZW50UHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9ET01IVE1M
Qm9keUVsZW1lbnRQcml2YXRlLmg+CisjaW1wb3J0IDxXZWJDb3JlL0RPTUhUTUxCdXR0b25FbGVt
ZW50UHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9ET01IVE1MSW1hZ2VFbGVtZW50UHJpdmF0
ZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9ET01IVE1MSW5wdXRFbGVtZW50UHJpdmF0ZS5oPgorI2lt
cG9ydCA8V2ViQ29yZS9ET01IVE1MTGFiZWxFbGVtZW50UHJpdmF0ZS5oPgorI2ltcG9ydCA8V2Vi
Q29yZS9ET01IVE1MTGVnZW5kRWxlbWVudFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYkNvcmUvRE9N
SFRNTExpbmtFbGVtZW50UHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9ET01IVE1MT3B0aW9u
c0NvbGxlY3Rpb25Qcml2YXRlLmg+CisjaW1wb3J0IDxXZWJDb3JlL0RPTUhUTUxQcmVFbGVtZW50
UHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViQ29yZS9ET01IVE1MU2VsZWN0RWxlbWVudFByaXZhdGUu
aD4KKyNpbXBvcnQgPFdlYkNvcmUvRE9NSFRNTFN0eWxlRWxlbWVudFByaXZhdGUuaD4KKyNpbXBv
cnQgPFdlYkNvcmUvRE9NSFRNTFRleHRBcmVhRWxlbWVudFByaXZhdGUuaD4KKyNpbXBvcnQgPFdl
YkNvcmUvRE9NRE9NSW1wbGVtZW50YXRpb25Qcml2YXRlLmg+CisjaW1wb3J0IDxXZWJDb3JlL0RP
TU5hbWVkTm9kZU1hcFByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYkNvcmUvRE9NUHJvY2Vzc2luZ0lu
c3RydWN0aW9uUHJpdmF0ZS5oPgorCiBAaW50ZXJmYWNlIERPTVJhbmdlIChXZWJQcml2YXRlKQog
Ly8gdXNlcyBzYW1lIGFsZ29yaXRobSBhcyBpbm5lclRleHQKIC0gKE5TU3RyaW5nICopX3RleHQ7
CkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL29iamMvUHVibGljRE9NSW50ZXJmYWNlcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3Mvb2JqYy9QdWJsaWNET01JbnRlcmZhY2VzLmgJKHJl
dmlzaW9uIDApCisrKyBXZWJDb3JlL2JpbmRpbmdzL29iamMvUHVibGljRE9NSW50ZXJmYWNlcy5o
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDc2NiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDA0LTIw
MDYgQXBwbGUgQ29tcHV0ZXIsIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLworLy8gUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisvLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKy8vIGFyZSBtZXQ6CisvLyAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorLy8gICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorLy8gMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKy8vICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKy8vICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisv
LworLy8gVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBg
YEFTIElTJycgQU5EIEFOWQorLy8gRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKy8vIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorLy8gUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9S
CisvLyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKy8vIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKy8vIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorLy8gUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorLy8gT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisvLyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKy8vIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorCisvLyBUaGlz
IGZpbGUgaXMgdXNlZCBieSBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtIHRv
IGRldGVybWluZSBwdWJsaWMgQVBJLgorLy8gQWxsIHB1YmxpYyBET00gY2xhc3MgaW50ZXJmYWNl
cywgcHJvcGVydGllcyBhbmQgbWV0aG9kcyBuZWVkIHRvIGJlIGluIHRoaXMgZmlsZS4KKy8vIEFu
eXRoaW5nIG5vdCBpbiB0aGUgZmlsZSB3aWxsIGJlIGdlbmVyYXRlZCBpbnRvIHRoZSBhcHByb3By
aWF0ZSBwcml2YXRlIGhlYWRlciBmaWxlLgorCisjZXJyb3IgRG8gbm90IGluY2x1ZGUgdGhpcyBo
ZWFkZXIsIGluc3RlYWQgaW5jbHVkZSB0aGUgYXBwcm9wcmlhdGUgRE9NIGhlYWRlci4KKworQGlu
dGVyZmFjZSBET01BdHRyIDogRE9NTm9kZQorQHByb3BlcnR5KHJlYWRvbmx5KSBOU1N0cmluZyAq
bmFtZTsKK0Bwcm9wZXJ0eShyZWFkb25seSkgQk9PTCBzcGVjaWZpZWQ7CitAcHJvcGVydHkgTlNT
dHJpbmcgKnZhbHVlOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01FbGVtZW50ICpvd25lckVsZW1l
bnQ7CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUNTU1N0eWxlRGVjbGFyYXRpb24gKnN0eWxlOwor
QGVuZAorCitAaW50ZXJmYWNlIERPTUNEQVRBU2VjdGlvbiA6IERPTVRleHQKK0BlbmQKKworQGlu
dGVyZmFjZSBET01DaGFyYWN0ZXJEYXRhIDogRE9NTm9kZQorQHByb3BlcnR5IE5TU3RyaW5nICpk
YXRhOworQHByb3BlcnR5KHJlYWRvbmx5KSB1bnNpZ25lZCBsZW5ndGg7CistIChOU1N0cmluZyAq
KXN1YnN0cmluZ0RhdGE6KHVuc2lnbmVkKW9mZnNldCA6KHVuc2lnbmVkKWxlbmd0aDsKKy8vLSAo
TlNTdHJpbmcgKilzdWJzdHJpbmdEYXRhOih1bnNpZ25lZClvZmZzZXQgbGVuZ3RoOih1bnNpZ25l
ZClsZW5ndGg7CistICh2b2lkKWFwcGVuZERhdGE6KE5TU3RyaW5nICopZGF0YTsKKy0gKHZvaWQp
aW5zZXJ0RGF0YToodW5zaWduZWQpb2Zmc2V0IDooTlNTdHJpbmcgKilkYXRhOworLSAodm9pZClk
ZWxldGVEYXRhOih1bnNpZ25lZClvZmZzZXQgOih1bnNpZ25lZClsZW5ndGg7CistICh2b2lkKXJl
cGxhY2VEYXRhOih1bnNpZ25lZClvZmZzZXQgOih1bnNpZ25lZClsZW5ndGggOihOU1N0cmluZyAq
KWRhdGE7CisvLy0gKHZvaWQpaW5zZXJ0RGF0YToodW5zaWduZWQpb2Zmc2V0IGRhdGE6KE5TU3Ry
aW5nICopZGF0YTsKKy8vLSAodm9pZClkZWxldGVEYXRhOih1bnNpZ25lZClvZmZzZXQgbGVuZ3Ro
Oih1bnNpZ25lZClsZW5ndGg7CisvLy0gKHZvaWQpcmVwbGFjZURhdGE6KHVuc2lnbmVkKW9mZnNl
dCBsZW5ndGg6KHVuc2lnbmVkKWxlbmd0aCBkYXRhOihOU1N0cmluZyAqKWRhdGE7CitAZW5kCisK
K0BpbnRlcmZhY2UgRE9NQ29tbWVudCA6IERPTUNoYXJhY3RlckRhdGEKK0BlbmQKKworQGludGVy
ZmFjZSBET01JbXBsZW1lbnRhdGlvbiA6IERPTU9iamVjdAorLSAoQk9PTCloYXNGZWF0dXJlOihO
U1N0cmluZyAqKWZlYXR1cmUgOihOU1N0cmluZyAqKXZlcnNpb247CistIChET01Eb2N1bWVudFR5
cGUgKiljcmVhdGVEb2N1bWVudFR5cGU6KE5TU3RyaW5nICopcXVhbGlmaWVkTmFtZSA6KE5TU3Ry
aW5nICopcHVibGljSWQgOihOU1N0cmluZyAqKXN5c3RlbUlkOworLSAoRE9NRG9jdW1lbnQgKilj
cmVhdGVEb2N1bWVudDooTlNTdHJpbmcgKiluYW1lc3BhY2VVUkkgOihOU1N0cmluZyAqKXF1YWxp
ZmllZE5hbWUgOihET01Eb2N1bWVudFR5cGUgKilkb2N0eXBlOworLSAoRE9NQ1NTU3R5bGVTaGVl
dCAqKWNyZWF0ZUNTU1N0eWxlU2hlZXQ6KE5TU3RyaW5nICopdGl0bGUgOihOU1N0cmluZyAqKW1l
ZGlhOworLy8tIChCT09MKWhhc0ZlYXR1cmU6KE5TU3RyaW5nICopZmVhdHVyZSB2ZXJzaW9uOihO
U1N0cmluZyAqKXZlcnNpb247CisvLy0gKERPTURvY3VtZW50VHlwZSAqKWNyZWF0ZURvY3VtZW50
VHlwZTooTlNTdHJpbmcgKilxdWFsaWZpZWROYW1lIHB1YmxpY0lkOihOU1N0cmluZyAqKXB1Ymxp
Y0lkIHN5c3RlbUlkOihOU1N0cmluZyAqKXN5c3RlbUlkOworLy8tIChET01Eb2N1bWVudCAqKWNy
ZWF0ZURvY3VtZW50OihOU1N0cmluZyAqKW5hbWVzcGFjZVVSSSBxdWFsaWZpZWROYW1lOihOU1N0
cmluZyAqKXF1YWxpZmllZE5hbWUgZG9jdHlwZTooRE9NRG9jdW1lbnRUeXBlICopZG9jdHlwZTsK
Ky8vLSAoRE9NQ1NTU3R5bGVTaGVldCAqKWNyZWF0ZUNTU1N0eWxlU2hlZXQ6KE5TU3RyaW5nICop
dGl0bGUgbWVkaWE6KE5TU3RyaW5nICopbWVkaWE7CistIChET01IVE1MRG9jdW1lbnQgKiljcmVh
dGVIVE1MRG9jdW1lbnQ6KE5TU3RyaW5nICopdGl0bGU7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9N
RG9jdW1lbnQgOiBET01Ob2RlCitAcHJvcGVydHkocmVhZG9ubHkpIERPTURvY3VtZW50VHlwZSAq
ZG9jdHlwZTsKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9NSW1wbGVtZW50YXRpb24gKmltcGxlbWVu
dGF0aW9uOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01FbGVtZW50ICpkb2N1bWVudEVsZW1lbnQ7
CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUFic3RyYWN0VmlldyAqZGVmYXVsdFZpZXc7CitAcHJv
cGVydHkocmVhZG9ubHkpIERPTVN0eWxlU2hlZXRMaXN0ICpzdHlsZVNoZWV0czsKKy0gKERPTUVs
ZW1lbnQgKiljcmVhdGVFbGVtZW50OihOU1N0cmluZyAqKXRhZ05hbWU7CistIChET01Eb2N1bWVu
dEZyYWdtZW50ICopY3JlYXRlRG9jdW1lbnRGcmFnbWVudDsKKy0gKERPTVRleHQgKiljcmVhdGVU
ZXh0Tm9kZTooTlNTdHJpbmcgKilkYXRhOworLSAoRE9NQ29tbWVudCAqKWNyZWF0ZUNvbW1lbnQ6
KE5TU3RyaW5nICopZGF0YTsKKy0gKERPTUNEQVRBU2VjdGlvbiAqKWNyZWF0ZUNEQVRBU2VjdGlv
bjooTlNTdHJpbmcgKilkYXRhOworLSAoRE9NUHJvY2Vzc2luZ0luc3RydWN0aW9uICopY3JlYXRl
UHJvY2Vzc2luZ0luc3RydWN0aW9uOihOU1N0cmluZyAqKXRhcmdldCA6KE5TU3RyaW5nICopZGF0
YTsKKy8vLSAoRE9NUHJvY2Vzc2luZ0luc3RydWN0aW9uICopY3JlYXRlUHJvY2Vzc2luZ0luc3Ry
dWN0aW9uOihOU1N0cmluZyAqKXRhcmdldCBkYXRhOihOU1N0cmluZyAqKWRhdGE7CistIChET01B
dHRyICopY3JlYXRlQXR0cmlidXRlOihOU1N0cmluZyAqKW5hbWU7CistIChET01FbnRpdHlSZWZl
cmVuY2UgKiljcmVhdGVFbnRpdHlSZWZlcmVuY2U6KE5TU3RyaW5nICopbmFtZTsKKy0gKERPTU5v
ZGVMaXN0ICopZ2V0RWxlbWVudHNCeVRhZ05hbWU6KE5TU3RyaW5nICopdGFnbmFtZTsKKy0gKERP
TU5vZGUgKilpbXBvcnROb2RlOihET01Ob2RlICopaW1wb3J0ZWROb2RlIDooQk9PTClkZWVwOwor
LSAoRE9NRWxlbWVudCAqKWNyZWF0ZUVsZW1lbnROUzooTlNTdHJpbmcgKiluYW1lc3BhY2VVUkkg
OihOU1N0cmluZyAqKXF1YWxpZmllZE5hbWU7CistIChET01BdHRyICopY3JlYXRlQXR0cmlidXRl
TlM6KE5TU3RyaW5nICopbmFtZXNwYWNlVVJJIDooTlNTdHJpbmcgKilxdWFsaWZpZWROYW1lOwor
LSAoRE9NTm9kZUxpc3QgKilnZXRFbGVtZW50c0J5VGFnTmFtZU5TOihOU1N0cmluZyAqKW5hbWVz
cGFjZVVSSSA6KE5TU3RyaW5nICopbG9jYWxOYW1lOworLy8tIChET01Ob2RlICopaW1wb3J0Tm9k
ZTooRE9NTm9kZSAqKWltcG9ydGVkTm9kZSBkZWVwOihCT09MKWRlZXA7CisvLy0gKERPTUVsZW1l
bnQgKiljcmVhdGVFbGVtZW50TlM6KE5TU3RyaW5nICopbmFtZXNwYWNlVVJJIHF1YWxpZmllZE5h
bWU6KE5TU3RyaW5nICopcXVhbGlmaWVkTmFtZTsKKy8vLSAoRE9NQXR0ciAqKWNyZWF0ZUF0dHJp
YnV0ZU5TOihOU1N0cmluZyAqKW5hbWVzcGFjZVVSSSBxdWFsaWZpZWROYW1lOihOU1N0cmluZyAq
KXF1YWxpZmllZE5hbWU7CisvLy0gKERPTU5vZGVMaXN0ICopZ2V0RWxlbWVudHNCeVRhZ05hbWVO
UzooTlNTdHJpbmcgKiluYW1lc3BhY2VVUkkgbG9jYWxOYW1lOihOU1N0cmluZyAqKWxvY2FsTmFt
ZTsKKy0gKERPTUVsZW1lbnQgKilnZXRFbGVtZW50QnlJZDooTlNTdHJpbmcgKillbGVtZW50SWQ7
CistIChET01FdmVudCAqKWNyZWF0ZUV2ZW50OihOU1N0cmluZyAqKWV2ZW50VHlwZTsKKy0gKERP
TVJhbmdlICopY3JlYXRlUmFuZ2U7CistIChET01DU1NTdHlsZURlY2xhcmF0aW9uICopZ2V0T3Zl
cnJpZGVTdHlsZTooRE9NRWxlbWVudCAqKWVsZW1lbnQgOihOU1N0cmluZyAqKXBzZXVkb0VsZW1l
bnQ7CisvLy0gKERPTUNTU1N0eWxlRGVjbGFyYXRpb24gKilnZXRPdmVycmlkZVN0eWxlOihET01F
bGVtZW50ICopZWxlbWVudCBwc2V1ZG9FbGVtZW50OihOU1N0cmluZyAqKXBzZXVkb0VsZW1lbnQ7
CistIChET01Ob2RlICopYWRvcHROb2RlOihET01Ob2RlICopc291cmNlOworLSAoRE9NWFBhdGhF
eHByZXNzaW9uICopY3JlYXRlRXhwcmVzc2lvbjooTlNTdHJpbmcgKilleHByZXNzaW9uIDooaWQg
PERPTVhQYXRoTlNSZXNvbHZlcj4pcmVzb2x2ZXI7CisvLy0gKERPTVhQYXRoRXhwcmVzc2lvbiAq
KWNyZWF0ZUV4cHJlc3Npb246KE5TU3RyaW5nICopZXhwcmVzc2lvbiByZXNvbHZlcjooaWQgPERP
TVhQYXRoTlNSZXNvbHZlcj4pcmVzb2x2ZXI7CistIChpZCA8RE9NWFBhdGhOU1Jlc29sdmVyPilj
cmVhdGVOU1Jlc29sdmVyOihET01Ob2RlICopbm9kZVJlc29sdmVyOworLSAoRE9NWFBhdGhSZXN1
bHQgKilldmFsdWF0ZTooTlNTdHJpbmcgKilleHByZXNzaW9uIDooRE9NTm9kZSAqKWNvbnRleHRO
b2RlIDooaWQgPERPTVhQYXRoTlNSZXNvbHZlcj4pcmVzb2x2ZXIgOih1bnNpZ25lZCBzaG9ydCl0
eXBlIDooRE9NWFBhdGhSZXN1bHQgKilpblJlc3VsdDsKKy8vLSAoRE9NWFBhdGhSZXN1bHQgKill
dmFsdWF0ZTooTlNTdHJpbmcgKilleHByZXNzaW9uIGNvbnRleHROb2RlOihET01Ob2RlICopY29u
dGV4dE5vZGUgcmVzb2x2ZXI6KGlkIDxET01YUGF0aE5TUmVzb2x2ZXI+KXJlc29sdmVyIHR5cGU6
KHVuc2lnbmVkIHNob3J0KXR5cGUgaW5SZXN1bHQ6KERPTVhQYXRoUmVzdWx0ICopaW5SZXN1bHQ7
CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NRG9jdW1lbnRGcmFnbWVudCA6IERPTU5vZGUKK0BlbmQK
KworQGludGVyZmFjZSBET01Eb2N1bWVudFR5cGUgOiBET01Ob2RlCitAcHJvcGVydHkocmVhZG9u
bHkpIE5TU3RyaW5nICpuYW1lOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01OYW1lZE5vZGVNYXAg
KmVudGl0aWVzOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01OYW1lZE5vZGVNYXAgKm5vdGF0aW9u
czsKK0Bwcm9wZXJ0eShyZWFkb25seSkgTlNTdHJpbmcgKnB1YmxpY0lkOworQHByb3BlcnR5KHJl
YWRvbmx5KSBOU1N0cmluZyAqc3lzdGVtSWQ7CitAcHJvcGVydHkocmVhZG9ubHkpIE5TU3RyaW5n
ICppbnRlcm5hbFN1YnNldDsKK0BlbmQKKworQGludGVyZmFjZSBET01FbGVtZW50IDogRE9NTm9k
ZQorQHByb3BlcnR5KHJlYWRvbmx5KSBOU1N0cmluZyAqdGFnTmFtZTsKK0Bwcm9wZXJ0eShyZWFk
b25seSkgRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiAqc3R5bGU7CitAcHJvcGVydHkocmVhZG9ubHkp
IGludCBvZmZzZXRMZWZ0OworQHByb3BlcnR5KHJlYWRvbmx5KSBpbnQgb2Zmc2V0VG9wOworQHBy
b3BlcnR5KHJlYWRvbmx5KSBpbnQgb2Zmc2V0V2lkdGg7CitAcHJvcGVydHkocmVhZG9ubHkpIGlu
dCBvZmZzZXRIZWlnaHQ7CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUVsZW1lbnQgKm9mZnNldFBh
cmVudDsKK0Bwcm9wZXJ0eShyZWFkb25seSkgaW50IGNsaWVudFdpZHRoOworQHByb3BlcnR5KHJl
YWRvbmx5KSBpbnQgY2xpZW50SGVpZ2h0OworQHByb3BlcnR5IGludCBzY3JvbGxMZWZ0OworQHBy
b3BlcnR5IGludCBzY3JvbGxUb3A7CitAcHJvcGVydHkocmVhZG9ubHkpIGludCBzY3JvbGxXaWR0
aDsKK0Bwcm9wZXJ0eShyZWFkb25seSkgaW50IHNjcm9sbEhlaWdodDsKKy0gKE5TU3RyaW5nICop
Z2V0QXR0cmlidXRlOihOU1N0cmluZyAqKW5hbWU7CistICh2b2lkKXNldEF0dHJpYnV0ZTooTlNT
dHJpbmcgKiluYW1lIDooTlNTdHJpbmcgKil2YWx1ZTsKKy8vLSAodm9pZClzZXRBdHRyaWJ1dGU6
KE5TU3RyaW5nICopbmFtZSB2YWx1ZTooTlNTdHJpbmcgKil2YWx1ZTsKKy0gKHZvaWQpcmVtb3Zl
QXR0cmlidXRlOihOU1N0cmluZyAqKW5hbWU7CistIChET01BdHRyICopZ2V0QXR0cmlidXRlTm9k
ZTooTlNTdHJpbmcgKiluYW1lOworLSAoRE9NQXR0ciAqKXNldEF0dHJpYnV0ZU5vZGU6KERPTUF0
dHIgKiluZXdBdHRyOworLSAoRE9NQXR0ciAqKXJlbW92ZUF0dHJpYnV0ZU5vZGU6KERPTUF0dHIg
KilvbGRBdHRyOworLSAoRE9NTm9kZUxpc3QgKilnZXRFbGVtZW50c0J5VGFnTmFtZTooTlNTdHJp
bmcgKiluYW1lOworLSAoTlNTdHJpbmcgKilnZXRBdHRyaWJ1dGVOUzooTlNTdHJpbmcgKiluYW1l
c3BhY2VVUkkgOihOU1N0cmluZyAqKWxvY2FsTmFtZTsKKy0gKHZvaWQpc2V0QXR0cmlidXRlTlM6
KE5TU3RyaW5nICopbmFtZXNwYWNlVVJJIDooTlNTdHJpbmcgKilxdWFsaWZpZWROYW1lIDooTlNT
dHJpbmcgKil2YWx1ZTsKKy0gKHZvaWQpcmVtb3ZlQXR0cmlidXRlTlM6KE5TU3RyaW5nICopbmFt
ZXNwYWNlVVJJIDooTlNTdHJpbmcgKilsb2NhbE5hbWU7CistIChET01Ob2RlTGlzdCAqKWdldEVs
ZW1lbnRzQnlUYWdOYW1lTlM6KE5TU3RyaW5nICopbmFtZXNwYWNlVVJJIDooTlNTdHJpbmcgKils
b2NhbE5hbWU7CistIChET01BdHRyICopZ2V0QXR0cmlidXRlTm9kZU5TOihOU1N0cmluZyAqKW5h
bWVzcGFjZVVSSSA6KE5TU3RyaW5nICopbG9jYWxOYW1lOworLy8tIChOU1N0cmluZyAqKWdldEF0
dHJpYnV0ZU5TOihOU1N0cmluZyAqKW5hbWVzcGFjZVVSSSBsb2NhbE5hbWU6KE5TU3RyaW5nICop
bG9jYWxOYW1lOworLy8tICh2b2lkKXNldEF0dHJpYnV0ZU5TOihOU1N0cmluZyAqKW5hbWVzcGFj
ZVVSSSBxdWFsaWZpZWROYW1lOihOU1N0cmluZyAqKXF1YWxpZmllZE5hbWUgdmFsdWU6KE5TU3Ry
aW5nICopdmFsdWU7CisvLy0gKHZvaWQpcmVtb3ZlQXR0cmlidXRlTlM6KE5TU3RyaW5nICopbmFt
ZXNwYWNlVVJJIGxvY2FsTmFtZTooTlNTdHJpbmcgKilsb2NhbE5hbWU7CisvLy0gKERPTU5vZGVM
aXN0ICopZ2V0RWxlbWVudHNCeVRhZ05hbWVOUzooTlNTdHJpbmcgKiluYW1lc3BhY2VVUkkgbG9j
YWxOYW1lOihOU1N0cmluZyAqKWxvY2FsTmFtZTsKKy8vLSAoRE9NQXR0ciAqKWdldEF0dHJpYnV0
ZU5vZGVOUzooTlNTdHJpbmcgKiluYW1lc3BhY2VVUkkgbG9jYWxOYW1lOihOU1N0cmluZyAqKWxv
Y2FsTmFtZTsKKy0gKERPTUF0dHIgKilzZXRBdHRyaWJ1dGVOb2RlTlM6KERPTUF0dHIgKiluZXdB
dHRyOworLSAoQk9PTCloYXNBdHRyaWJ1dGU6KE5TU3RyaW5nICopbmFtZTsKKy0gKEJPT0wpaGFz
QXR0cmlidXRlTlM6KE5TU3RyaW5nICopbmFtZXNwYWNlVVJJIDooTlNTdHJpbmcgKilsb2NhbE5h
bWU7CisvLy0gKEJPT0wpaGFzQXR0cmlidXRlTlM6KE5TU3RyaW5nICopbmFtZXNwYWNlVVJJIGxv
Y2FsTmFtZTooTlNTdHJpbmcgKilsb2NhbE5hbWU7CistICh2b2lkKWZvY3VzOworLSAodm9pZCli
bHVyOworLSAodm9pZClzY3JvbGxJbnRvVmlldzooQk9PTClhbGlnbldpdGhUb3A7CistICh2b2lk
KXNjcm9sbEludG9WaWV3SWZOZWVkZWQ6KEJPT0wpY2VudGVySWZOZWVkZWQ7CitAZW5kCisKK0Bp
bnRlcmZhY2UgRE9NRW50aXR5IDogRE9NTm9kZQorQHByb3BlcnR5KHJlYWRvbmx5KSBOU1N0cmlu
ZyAqcHVibGljSWQ7CitAcHJvcGVydHkocmVhZG9ubHkpIE5TU3RyaW5nICpzeXN0ZW1JZDsKK0Bw
cm9wZXJ0eShyZWFkb25seSkgTlNTdHJpbmcgKm5vdGF0aW9uTmFtZTsKK0BlbmQKKworQGludGVy
ZmFjZSBET01FbnRpdHlSZWZlcmVuY2UgOiBET01Ob2RlCitAZW5kCisKK0BpbnRlcmZhY2UgRE9N
TmFtZWROb2RlTWFwIDogRE9NT2JqZWN0CitAcHJvcGVydHkocmVhZG9ubHkpIHVuc2lnbmVkIGxl
bmd0aDsKKy0gKERPTU5vZGUgKilnZXROYW1lZEl0ZW06KE5TU3RyaW5nICopbmFtZTsKKy0gKERP
TU5vZGUgKilzZXROYW1lZEl0ZW06KERPTU5vZGUgKilub2RlOworLSAoRE9NTm9kZSAqKXJlbW92
ZU5hbWVkSXRlbTooTlNTdHJpbmcgKiluYW1lOworLSAoRE9NTm9kZSAqKWl0ZW06KHVuc2lnbmVk
KWluZGV4OworLSAoRE9NTm9kZSAqKWdldE5hbWVkSXRlbU5TOihOU1N0cmluZyAqKW5hbWVzcGFj
ZVVSSSA6KE5TU3RyaW5nICopbG9jYWxOYW1lOworLy8tIChET01Ob2RlICopZ2V0TmFtZWRJdGVt
TlM6KE5TU3RyaW5nICopbmFtZXNwYWNlVVJJIGxvY2FsTmFtZTooTlNTdHJpbmcgKilsb2NhbE5h
bWU7CistIChET01Ob2RlICopc2V0TmFtZWRJdGVtTlM6KERPTU5vZGUgKilub2RlOworLSAoRE9N
Tm9kZSAqKXJlbW92ZU5hbWVkSXRlbU5TOihOU1N0cmluZyAqKW5hbWVzcGFjZVVSSSA6KE5TU3Ry
aW5nICopbG9jYWxOYW1lOworLy8tIChET01Ob2RlICopcmVtb3ZlTmFtZWRJdGVtTlM6KE5TU3Ry
aW5nICopbmFtZXNwYWNlVVJJIGxvY2FsTmFtZTooTlNTdHJpbmcgKilsb2NhbE5hbWU7CitAZW5k
CisKK0BpbnRlcmZhY2UgRE9NTm9kZUxpc3QgOiBET01PYmplY3QKK0Bwcm9wZXJ0eShyZWFkb25s
eSkgdW5zaWduZWQgbGVuZ3RoOworLSAoRE9NTm9kZSAqKWl0ZW06KHVuc2lnbmVkKWluZGV4Owor
QGVuZAorCitAaW50ZXJmYWNlIERPTU5vdGF0aW9uIDogRE9NTm9kZQorQHByb3BlcnR5KHJlYWRv
bmx5KSBOU1N0cmluZyAqcHVibGljSWQ7CitAcHJvcGVydHkocmVhZG9ubHkpIE5TU3RyaW5nICpz
eXN0ZW1JZDsKK0BlbmQKKworQGludGVyZmFjZSBET01Qcm9jZXNzaW5nSW5zdHJ1Y3Rpb24gOiBE
T01Ob2RlCitAcHJvcGVydHkocmVhZG9ubHkpIE5TU3RyaW5nICp0YXJnZXQ7CitAcHJvcGVydHkg
TlNTdHJpbmcgKmRhdGE7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NVGV4dCA6IERPTUNoYXJhY3Rl
ckRhdGEKKy0gKERPTVRleHQgKilzcGxpdFRleHQ6KHVuc2lnbmVkKW9mZnNldDsKK0BlbmQKKwor
QGludGVyZmFjZSBET01IVE1MQW5jaG9yRWxlbWVudCA6IERPTUhUTUxFbGVtZW50CitAcHJvcGVy
dHkgTlNTdHJpbmcgKmFjY2Vzc0tleTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqY2hhcnNldDsKK0Bw
cm9wZXJ0eSBOU1N0cmluZyAqY29vcmRzOworQHByb3BlcnR5IE5TU3RyaW5nICpocmVmOworQHBy
b3BlcnR5IE5TU3RyaW5nICpocmVmbGFuZzsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqbmFtZTsKK0Bw
cm9wZXJ0eSBOU1N0cmluZyAqcmVsOworQHByb3BlcnR5IE5TU3RyaW5nICpyZXY7CitAcHJvcGVy
dHkgTlNTdHJpbmcgKnNoYXBlOworQHByb3BlcnR5IGludCB0YWJJbmRleDsKK0Bwcm9wZXJ0eSBO
U1N0cmluZyAqdGFyZ2V0OworQHByb3BlcnR5IE5TU3RyaW5nICp0eXBlOworLSAodm9pZClibHVy
OworLSAodm9pZClmb2N1czsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MQXJlYUVsZW1lbnQg
OiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IE5TU3RyaW5nICphY2Nlc3NLZXk7CitAcHJvcGVy
dHkgTlNTdHJpbmcgKmFsdDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqY29vcmRzOworQHByb3BlcnR5
IE5TU3RyaW5nICpocmVmOworQHByb3BlcnR5IEJPT0wgbm9IcmVmOworQHByb3BlcnR5IE5TU3Ry
aW5nICpzaGFwZTsKK0Bwcm9wZXJ0eSBpbnQgdGFiSW5kZXg7CitAcHJvcGVydHkgTlNTdHJpbmcg
KnRhcmdldDsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MQlJFbGVtZW50IDogRE9NSFRNTEVs
ZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqY2xlYXI7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9N
SFRNTEJhc2VFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqaHJl
ZjsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdGFyZ2V0OworQGVuZAorCitAaW50ZXJmYWNlIERPTUhU
TUxCYXNlRm9udEVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IE5TU3RyaW5nICpj
b2xvcjsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqZmFjZTsKK0Bwcm9wZXJ0eSBpbnQgc2l6ZTsKK0Bl
bmQKKworQGludGVyZmFjZSBET01IVE1MQm9keUVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHBy
b3BlcnR5IE5TU3RyaW5nICphTGluazsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqYmFja2dyb3VuZDsK
K0Bwcm9wZXJ0eSBOU1N0cmluZyAqYmdDb2xvcjsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqbGluazsK
K0Bwcm9wZXJ0eSBOU1N0cmluZyAqdGV4dDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdkxpbms7CitA
ZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRNTEJ1dHRvbkVsZW1lbnQgOiBET01IVE1MRWxlbWVudAor
QHByb3BlcnR5KHJlYWRvbmx5KSBET01IVE1MRm9ybUVsZW1lbnQgKmZvcm07CitAcHJvcGVydHkg
TlNTdHJpbmcgKmFjY2Vzc0tleTsKK0Bwcm9wZXJ0eSBCT09MIGRpc2FibGVkOworQHByb3BlcnR5
IE5TU3RyaW5nICpuYW1lOworQHByb3BlcnR5IGludCB0YWJJbmRleDsKK0Bwcm9wZXJ0eShyZWFk
b25seSkgTlNTdHJpbmcgKnR5cGU7CitAcHJvcGVydHkgTlNTdHJpbmcgKnZhbHVlOworQGVuZAor
CitAaW50ZXJmYWNlIERPTUhUTUxDb2xsZWN0aW9uIDogRE9NT2JqZWN0CitAcHJvcGVydHkocmVh
ZG9ubHkpIHVuc2lnbmVkIGxlbmd0aDsKKy0gKERPTU5vZGUgKilpdGVtOih1bnNpZ25lZClpbmRl
eDsKKy0gKERPTU5vZGUgKiluYW1lZEl0ZW06KE5TU3RyaW5nICopbmFtZTsKK0BlbmQKKworQGlu
dGVyZmFjZSBET01IVE1MRExpc3RFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBC
T09MIGNvbXBhY3Q7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRNTERpcmVjdG9yeUVsZW1lbnQg
OiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IEJPT0wgY29tcGFjdDsKK0BlbmQKKworQGludGVy
ZmFjZSBET01IVE1MRGl2RWxlbWVudCA6IERPTUhUTUxFbGVtZW50CitAcHJvcGVydHkgTlNTdHJp
bmcgKmFsaWduOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxFbGVtZW50IDogRE9NRWxlbWVu
dAorQHByb3BlcnR5IE5TU3RyaW5nICp0aXRsZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqaWROYW1l
OworQHByb3BlcnR5IE5TU3RyaW5nICpsYW5nOworQHByb3BlcnR5IE5TU3RyaW5nICpkaXI7CitA
cHJvcGVydHkgTlNTdHJpbmcgKmNsYXNzTmFtZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqaW5uZXJI
VE1MOworQHByb3BlcnR5IE5TU3RyaW5nICppbm5lclRleHQ7CitAcHJvcGVydHkgTlNTdHJpbmcg
Km91dGVySFRNTDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqb3V0ZXJUZXh0OworQHByb3BlcnR5KHJl
YWRvbmx5KSBET01IVE1MQ29sbGVjdGlvbiAqY2hpbGRyZW47CitAcHJvcGVydHkgTlNTdHJpbmcg
KmNvbnRlbnRFZGl0YWJsZTsKK0Bwcm9wZXJ0eShyZWFkb25seSkgQk9PTCBpc0NvbnRlbnRFZGl0
YWJsZTsKK0Bwcm9wZXJ0eShyZWFkb25seSkgTlNTdHJpbmcgKnRpdGxlRGlzcGxheVN0cmluZzsK
K0BlbmQKKworQGludGVyZmFjZSBET01IVE1MRmllbGRTZXRFbGVtZW50IDogRE9NSFRNTEVsZW1l
bnQKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9NSFRNTEZvcm1FbGVtZW50ICpmb3JtOworQGVuZAor
CitAaW50ZXJmYWNlIERPTUhUTUxGb250RWxlbWVudCA6IERPTUhUTUxFbGVtZW50CitAcHJvcGVy
dHkgTlNTdHJpbmcgKmNvbG9yOworQHByb3BlcnR5IE5TU3RyaW5nICpmYWNlOworQHByb3BlcnR5
IE5TU3RyaW5nICpzaXplOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxGb3JtRWxlbWVudCA6
IERPTUhUTUxFbGVtZW50CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUhUTUxDb2xsZWN0aW9uICpl
bGVtZW50czsKK0Bwcm9wZXJ0eShyZWFkb25seSkgaW50IGxlbmd0aDsKK0Bwcm9wZXJ0eSBOU1N0
cmluZyAqbmFtZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqYWNjZXB0Q2hhcnNldDsKK0Bwcm9wZXJ0
eSBOU1N0cmluZyAqYWN0aW9uOworQHByb3BlcnR5IE5TU3RyaW5nICplbmN0eXBlOworQHByb3Bl
cnR5IE5TU3RyaW5nICptZXRob2Q7CitAcHJvcGVydHkgTlNTdHJpbmcgKnRhcmdldDsKKy0gKHZv
aWQpc3VibWl0OworLSAodm9pZClyZXNldDsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MRnJh
bWVFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqZnJhbWVCb3Jk
ZXI7CitAcHJvcGVydHkgTlNTdHJpbmcgKmxvbmdEZXNjOworQHByb3BlcnR5IE5TU3RyaW5nICpt
YXJnaW5IZWlnaHQ7CitAcHJvcGVydHkgTlNTdHJpbmcgKm1hcmdpbldpZHRoOworQHByb3BlcnR5
IE5TU3RyaW5nICpuYW1lOworQHByb3BlcnR5IEJPT0wgbm9SZXNpemU7CitAcHJvcGVydHkgTlNT
dHJpbmcgKnNjcm9sbGluZzsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqc3JjOworQHByb3BlcnR5KHJl
YWRvbmx5KSBET01Eb2N1bWVudCAqY29udGVudERvY3VtZW50OworQGVuZAorCitAaW50ZXJmYWNl
IERPTUhUTUxGcmFtZVNldEVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IE5TU3Ry
aW5nICpjb2xzOworQHByb3BlcnR5IE5TU3RyaW5nICpyb3dzOworQGVuZAorCitAaW50ZXJmYWNl
IERPTUhUTUxIUkVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IE5TU3RyaW5nICph
bGlnbjsKK0Bwcm9wZXJ0eSBCT09MIG5vU2hhZGU7CitAcHJvcGVydHkgTlNTdHJpbmcgKnNpemU7
CitAcHJvcGVydHkgTlNTdHJpbmcgKndpZHRoOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxI
ZWFkRWxlbWVudCA6IERPTUhUTUxFbGVtZW50CitAcHJvcGVydHkgTlNTdHJpbmcgKnByb2ZpbGU7
CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRNTEhlYWRpbmdFbGVtZW50IDogRE9NSFRNTEVsZW1l
bnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqYWxpZ247CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRN
TEh0bWxFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdmVyc2lv
bjsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MSUZyYW1lRWxlbWVudCA6IERPTUhUTUxFbGVt
ZW50CitAcHJvcGVydHkgTlNTdHJpbmcgKmFsaWduOworQHByb3BlcnR5IE5TU3RyaW5nICpmcmFt
ZUJvcmRlcjsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqaGVpZ2h0OworQHByb3BlcnR5IE5TU3RyaW5n
ICpsb25nRGVzYzsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqbWFyZ2luSGVpZ2h0OworQHByb3BlcnR5
IE5TU3RyaW5nICptYXJnaW5XaWR0aDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqbmFtZTsKK0Bwcm9w
ZXJ0eSBOU1N0cmluZyAqc2Nyb2xsaW5nOworQHByb3BlcnR5IE5TU3RyaW5nICpzcmM7CitAcHJv
cGVydHkgTlNTdHJpbmcgKndpZHRoOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01Eb2N1bWVudCAq
Y29udGVudERvY3VtZW50OworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxJbWFnZUVsZW1lbnQg
OiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IE5TU3RyaW5nICpuYW1lOworQHByb3BlcnR5IE5T
U3RyaW5nICphbGlnbjsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqYWx0OworQHByb3BlcnR5IE5TU3Ry
aW5nICpib3JkZXI7CitAcHJvcGVydHkgaW50IGhlaWdodDsKK0Bwcm9wZXJ0eSBpbnQgaHNwYWNl
OworQHByb3BlcnR5IEJPT0wgaXNNYXA7CitAcHJvcGVydHkgTlNTdHJpbmcgKmxvbmdEZXNjOwor
QHByb3BlcnR5IE5TU3RyaW5nICpzcmM7CitAcHJvcGVydHkgTlNTdHJpbmcgKnVzZU1hcDsKK0Bw
cm9wZXJ0eSBpbnQgdnNwYWNlOworQHByb3BlcnR5IGludCB3aWR0aDsKK0BlbmQKKworQGludGVy
ZmFjZSBET01IVE1MSW5wdXRFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0
cmluZyAqZGVmYXVsdFZhbHVlOworQHByb3BlcnR5IEJPT0wgZGVmYXVsdENoZWNrZWQ7CitAcHJv
cGVydHkocmVhZG9ubHkpIERPTUhUTUxGb3JtRWxlbWVudCAqZm9ybTsKK0Bwcm9wZXJ0eSBOU1N0
cmluZyAqYWNjZXB0OworQHByb3BlcnR5IE5TU3RyaW5nICphY2Nlc3NLZXk7CitAcHJvcGVydHkg
TlNTdHJpbmcgKmFsaWduOworQHByb3BlcnR5IE5TU3RyaW5nICphbHQ7CitAcHJvcGVydHkgQk9P
TCBjaGVja2VkOworQHByb3BlcnR5IEJPT0wgZGlzYWJsZWQ7CitAcHJvcGVydHkgaW50IG1heExl
bmd0aDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqbmFtZTsKK0Bwcm9wZXJ0eSBCT09MIHJlYWRPbmx5
OworQHByb3BlcnR5IHVuc2lnbmVkIHNpemU7CitAcHJvcGVydHkgTlNTdHJpbmcgKnNyYzsKK0Bw
cm9wZXJ0eSBpbnQgdGFiSW5kZXg7CitAcHJvcGVydHkgTlNTdHJpbmcgKnR5cGU7CitAcHJvcGVy
dHkgTlNTdHJpbmcgKnVzZU1hcDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdmFsdWU7CistICh2b2lk
KWJsdXI7CistICh2b2lkKWZvY3VzOworLSAodm9pZClzZWxlY3Q7CistICh2b2lkKWNsaWNrOwor
QGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxJc0luZGV4RWxlbWVudCA6IERPTUhUTUxJbnB1dEVs
ZW1lbnQKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9NSFRNTEZvcm1FbGVtZW50ICpmb3JtOworQHBy
b3BlcnR5IE5TU3RyaW5nICpwcm9tcHQ7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRNTExJRWxl
bWVudCA6IERPTUhUTUxFbGVtZW50CitAcHJvcGVydHkgTlNTdHJpbmcgKnR5cGU7CitAcHJvcGVy
dHkgaW50IHZhbHVlOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxMYWJlbEVsZW1lbnQgOiBE
T01IVE1MRWxlbWVudAorQHByb3BlcnR5KHJlYWRvbmx5KSBET01IVE1MRm9ybUVsZW1lbnQgKmZv
cm07CitAcHJvcGVydHkgTlNTdHJpbmcgKmFjY2Vzc0tleTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAq
aHRtbEZvcjsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MTGVnZW5kRWxlbWVudCA6IERPTUhU
TUxFbGVtZW50CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUhUTUxGb3JtRWxlbWVudCAqZm9ybTsK
K0Bwcm9wZXJ0eSBOU1N0cmluZyAqYWNjZXNzS2V5OworQHByb3BlcnR5IE5TU3RyaW5nICphbGln
bjsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MTGlua0VsZW1lbnQgOiBET01IVE1MRWxlbWVu
dAorQHByb3BlcnR5IEJPT0wgZGlzYWJsZWQ7CitAcHJvcGVydHkgTlNTdHJpbmcgKmNoYXJzZXQ7
CitAcHJvcGVydHkgTlNTdHJpbmcgKmhyZWY7CitAcHJvcGVydHkgTlNTdHJpbmcgKmhyZWZsYW5n
OworQHByb3BlcnR5IE5TU3RyaW5nICptZWRpYTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqcmVsOwor
QHByb3BlcnR5IE5TU3RyaW5nICpyZXY7CitAcHJvcGVydHkgTlNTdHJpbmcgKnRhcmdldDsKK0Bw
cm9wZXJ0eSBOU1N0cmluZyAqdHlwZTsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MTWFwRWxl
bWVudCA6IERPTUhUTUxFbGVtZW50CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUhUTUxDb2xsZWN0
aW9uICphcmVhczsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqbmFtZTsKK0BlbmQKKworQGludGVyZmFj
ZSBET01IVE1MTWVudUVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IEJPT0wgY29t
cGFjdDsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MTWV0YUVsZW1lbnQgOiBET01IVE1MRWxl
bWVudAorQHByb3BlcnR5IE5TU3RyaW5nICpjb250ZW50OworQHByb3BlcnR5IE5TU3RyaW5nICpo
dHRwRXF1aXY7CitAcHJvcGVydHkgTlNTdHJpbmcgKm5hbWU7CitAcHJvcGVydHkgTlNTdHJpbmcg
KnNjaGVtZTsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MTW9kRWxlbWVudCA6IERPTUhUTUxF
bGVtZW50CitAcHJvcGVydHkgTlNTdHJpbmcgKmNpdGU7CitAcHJvcGVydHkgTlNTdHJpbmcgKmRh
dGVUaW1lOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxPTGlzdEVsZW1lbnQgOiBET01IVE1M
RWxlbWVudAorQHByb3BlcnR5IEJPT0wgY29tcGFjdDsKK0Bwcm9wZXJ0eSBpbnQgc3RhcnQ7CitA
cHJvcGVydHkgTlNTdHJpbmcgKnR5cGU7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRNTE9iamVj
dEVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5KHJlYWRvbmx5KSBET01IVE1MRm9y
bUVsZW1lbnQgKmZvcm07CitAcHJvcGVydHkgTlNTdHJpbmcgKmNvZGU7CitAcHJvcGVydHkgTlNT
dHJpbmcgKmFsaWduOworQHByb3BlcnR5IE5TU3RyaW5nICphcmNoaXZlOworQHByb3BlcnR5IE5T
U3RyaW5nICpib3JkZXI7CitAcHJvcGVydHkgTlNTdHJpbmcgKmNvZGVCYXNlOworQHByb3BlcnR5
IE5TU3RyaW5nICpjb2RlVHlwZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqZGF0YTsKK0Bwcm9wZXJ0
eSBCT09MIGRlY2xhcmU7CitAcHJvcGVydHkgTlNTdHJpbmcgKmhlaWdodDsKK0Bwcm9wZXJ0eSBp
bnQgaHNwYWNlOworQHByb3BlcnR5IE5TU3RyaW5nICpuYW1lOworQHByb3BlcnR5IE5TU3RyaW5n
ICpzdGFuZGJ5OworQHByb3BlcnR5IGludCB0YWJJbmRleDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAq
dHlwZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdXNlTWFwOworQHByb3BlcnR5IGludCB2c3BhY2U7
CitAcHJvcGVydHkgTlNTdHJpbmcgKndpZHRoOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01Eb2N1
bWVudCAqY29udGVudERvY3VtZW50OworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxPcHRHcm91
cEVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IEJPT0wgZGlzYWJsZWQ7CitAcHJv
cGVydHkgTlNTdHJpbmcgKmxhYmVsOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxPcHRpb25z
Q29sbGVjdGlvbiA6IERPTU9iamVjdAorQHByb3BlcnR5IGludCBsZW5ndGg7CistIChET01Ob2Rl
ICopaXRlbToodW5zaWduZWQpaW5kZXg7CistIChET01Ob2RlICopbmFtZWRJdGVtOihOU1N0cmlu
ZyAqKW5hbWU7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRNTFBhcmFncmFwaEVsZW1lbnQgOiBE
T01IVE1MRWxlbWVudAorQHByb3BlcnR5IE5TU3RyaW5nICphbGlnbjsKK0BlbmQKKworQGludGVy
ZmFjZSBET01IVE1MUGFyYW1FbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0
cmluZyAqbmFtZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdHlwZTsKK0Bwcm9wZXJ0eSBOU1N0cmlu
ZyAqdmFsdWU7CitAcHJvcGVydHkgTlNTdHJpbmcgKnZhbHVlVHlwZTsKK0BlbmQKKworQGludGVy
ZmFjZSBET01IVE1MUHJlRWxlbWVudCA6IERPTUhUTUxFbGVtZW50CitAcHJvcGVydHkgaW50IHdp
ZHRoOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxRdW90ZUVsZW1lbnQgOiBET01IVE1MRWxl
bWVudAorQHByb3BlcnR5IE5TU3RyaW5nICpjaXRlOworQGVuZAorCitAaW50ZXJmYWNlIERPTUhU
TUxTY3JpcHRFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdGV4
dDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqaHRtbEZvcjsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqZXZl
bnQ7CitAcHJvcGVydHkgTlNTdHJpbmcgKmNoYXJzZXQ7CitAcHJvcGVydHkgQk9PTCBkZWZlcjsK
K0Bwcm9wZXJ0eSBOU1N0cmluZyAqc3JjOworQHByb3BlcnR5IE5TU3RyaW5nICp0eXBlOworQGVu
ZAorCitAaW50ZXJmYWNlIERPTUhUTUxTZWxlY3RFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bw
cm9wZXJ0eShyZWFkb25seSkgTlNTdHJpbmcgKnR5cGU7CitAcHJvcGVydHkgaW50IHNlbGVjdGVk
SW5kZXg7CitAcHJvcGVydHkgTlNTdHJpbmcgKnZhbHVlOworQHByb3BlcnR5KHJlYWRvbmx5KSBp
bnQgbGVuZ3RoOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01IVE1MRm9ybUVsZW1lbnQgKmZvcm07
CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUhUTUxPcHRpb25zQ29sbGVjdGlvbiAqb3B0aW9uczsK
K0Bwcm9wZXJ0eSBCT09MIGRpc2FibGVkOworQHByb3BlcnR5IEJPT0wgbXVsdGlwbGU7CitAcHJv
cGVydHkgTlNTdHJpbmcgKm5hbWU7CitAcHJvcGVydHkgaW50IHNpemU7CitAcHJvcGVydHkgaW50
IHRhYkluZGV4OworLSAodm9pZClhZGQ6KERPTUhUTUxFbGVtZW50ICopZWxlbWVudCA6KERPTUhU
TUxFbGVtZW50ICopYmVmb3JlOworLy8tICh2b2lkKWFkZDooRE9NSFRNTEVsZW1lbnQgKillbGVt
ZW50IGJlZm9yZTooRE9NSFRNTEVsZW1lbnQgKiliZWZvcmU7CistICh2b2lkKXJlbW92ZTooaW50
KWluZGV4OworLSAodm9pZClibHVyOworLSAodm9pZClmb2N1czsKK0BlbmQKKworQGludGVyZmFj
ZSBET01IVE1MU3R5bGVFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBCT09MIGRp
c2FibGVkOworQHByb3BlcnR5IE5TU3RyaW5nICptZWRpYTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAq
dHlwZTsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MVGFibGVDYXB0aW9uRWxlbWVudCA6IERP
TUhUTUxFbGVtZW50CitAcHJvcGVydHkgTlNTdHJpbmcgKmFsaWduOworQGVuZAorCitAaW50ZXJm
YWNlIERPTUhUTUxUYWJsZUNlbGxFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eShy
ZWFkb25seSkgaW50IGNlbGxJbmRleDsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqYWJicjsKK0Bwcm9w
ZXJ0eSBOU1N0cmluZyAqYWxpZ247CitAcHJvcGVydHkgTlNTdHJpbmcgKmF4aXM7CitAcHJvcGVy
dHkgTlNTdHJpbmcgKmJnQ29sb3I7CitAcHJvcGVydHkgTlNTdHJpbmcgKmNoOworQHByb3BlcnR5
IE5TU3RyaW5nICpjaE9mZjsKK0Bwcm9wZXJ0eSBpbnQgY29sU3BhbjsKK0Bwcm9wZXJ0eSBOU1N0
cmluZyAqaGVhZGVyczsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqaGVpZ2h0OworQHByb3BlcnR5IEJP
T0wgbm9XcmFwOworQHByb3BlcnR5IGludCByb3dTcGFuOworQHByb3BlcnR5IE5TU3RyaW5nICpz
Y29wZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqdkFsaWduOworQHByb3BlcnR5IE5TU3RyaW5nICp3
aWR0aDsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MVGFibGVDb2xFbGVtZW50IDogRE9NSFRN
TEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqYWxpZ247CitAcHJvcGVydHkgTlNTdHJpbmcg
KmNoOworQHByb3BlcnR5IE5TU3RyaW5nICpjaE9mZjsKK0Bwcm9wZXJ0eSBpbnQgc3BhbjsKK0Bw
cm9wZXJ0eSBOU1N0cmluZyAqdkFsaWduOworQHByb3BlcnR5IE5TU3RyaW5nICp3aWR0aDsKK0Bl
bmQKKworQGludGVyZmFjZSBET01IVE1MVGFibGVFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bw
cm9wZXJ0eSBET01IVE1MVGFibGVDYXB0aW9uRWxlbWVudCAqY2FwdGlvbjsKK0Bwcm9wZXJ0eSBE
T01IVE1MVGFibGVTZWN0aW9uRWxlbWVudCAqdEhlYWQ7CitAcHJvcGVydHkgRE9NSFRNTFRhYmxl
U2VjdGlvbkVsZW1lbnQgKnRGb290OworQHByb3BlcnR5KHJlYWRvbmx5KSBET01IVE1MQ29sbGVj
dGlvbiAqcm93czsKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9NSFRNTENvbGxlY3Rpb24gKnRCb2Rp
ZXM7CitAcHJvcGVydHkgTlNTdHJpbmcgKmFsaWduOworQHByb3BlcnR5IE5TU3RyaW5nICpiZ0Nv
bG9yOworQHByb3BlcnR5IE5TU3RyaW5nICpib3JkZXI7CitAcHJvcGVydHkgTlNTdHJpbmcgKmNl
bGxQYWRkaW5nOworQHByb3BlcnR5IE5TU3RyaW5nICpjZWxsU3BhY2luZzsKK0Bwcm9wZXJ0eSBO
U1N0cmluZyAqZnJhbWVCb3JkZXJzOworQHByb3BlcnR5IE5TU3RyaW5nICpydWxlczsKK0Bwcm9w
ZXJ0eSBOU1N0cmluZyAqc3VtbWFyeTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqd2lkdGg7CistIChE
T01IVE1MRWxlbWVudCAqKWNyZWF0ZVRIZWFkOworLSAodm9pZClkZWxldGVUSGVhZDsKKy0gKERP
TUhUTUxFbGVtZW50ICopY3JlYXRlVEZvb3Q7CistICh2b2lkKWRlbGV0ZVRGb290OworLSAoRE9N
SFRNTEVsZW1lbnQgKiljcmVhdGVDYXB0aW9uOworLSAodm9pZClkZWxldGVDYXB0aW9uOworLSAo
RE9NSFRNTEVsZW1lbnQgKilpbnNlcnRSb3c6KGludClpbmRleDsKKy0gKHZvaWQpZGVsZXRlUm93
OihpbnQpaW5kZXg7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NSFRNTFRhYmxlUm93RWxlbWVudCA6
IERPTUhUTUxFbGVtZW50CitAcHJvcGVydHkocmVhZG9ubHkpIGludCByb3dJbmRleDsKK0Bwcm9w
ZXJ0eShyZWFkb25seSkgaW50IHNlY3Rpb25Sb3dJbmRleDsKK0Bwcm9wZXJ0eShyZWFkb25seSkg
RE9NSFRNTENvbGxlY3Rpb24gKmNlbGxzOworQHByb3BlcnR5IE5TU3RyaW5nICphbGlnbjsKK0Bw
cm9wZXJ0eSBOU1N0cmluZyAqYmdDb2xvcjsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqY2g7CitAcHJv
cGVydHkgTlNTdHJpbmcgKmNoT2ZmOworQHByb3BlcnR5IE5TU3RyaW5nICp2QWxpZ247CistIChE
T01IVE1MRWxlbWVudCAqKWluc2VydENlbGw6KGludClpbmRleDsKKy0gKHZvaWQpZGVsZXRlQ2Vs
bDooaW50KWluZGV4OworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxUYWJsZVNlY3Rpb25FbGVt
ZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBOU1N0cmluZyAqYWxpZ247CitAcHJvcGVy
dHkgTlNTdHJpbmcgKmNoOworQHByb3BlcnR5IE5TU3RyaW5nICpjaE9mZjsKK0Bwcm9wZXJ0eSBO
U1N0cmluZyAqdkFsaWduOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01IVE1MQ29sbGVjdGlvbiAq
cm93czsKKy0gKERPTUhUTUxFbGVtZW50ICopaW5zZXJ0Um93OihpbnQpaW5kZXg7CistICh2b2lk
KWRlbGV0ZVJvdzooaW50KWluZGV4OworQGVuZAorCitAaW50ZXJmYWNlIERPTUhUTUxUZXh0QXJl
YUVsZW1lbnQgOiBET01IVE1MRWxlbWVudAorQHByb3BlcnR5IE5TU3RyaW5nICpkZWZhdWx0VmFs
dWU7CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUhUTUxGb3JtRWxlbWVudCAqZm9ybTsKK0Bwcm9w
ZXJ0eSBOU1N0cmluZyAqYWNjZXNzS2V5OworQHByb3BlcnR5IGludCBjb2xzOworQHByb3BlcnR5
IEJPT0wgZGlzYWJsZWQ7CitAcHJvcGVydHkgTlNTdHJpbmcgKm5hbWU7CitAcHJvcGVydHkgQk9P
TCByZWFkT25seTsKK0Bwcm9wZXJ0eSBpbnQgcm93czsKK0Bwcm9wZXJ0eSBpbnQgdGFiSW5kZXg7
CitAcHJvcGVydHkocmVhZG9ubHkpIE5TU3RyaW5nICp0eXBlOworQHByb3BlcnR5IE5TU3RyaW5n
ICp2YWx1ZTsKKy0gKHZvaWQpYmx1cjsKKy0gKHZvaWQpZm9jdXM7CistICh2b2lkKXNlbGVjdDsK
K0BlbmQKKworQGludGVyZmFjZSBET01IVE1MVGl0bGVFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQK
K0Bwcm9wZXJ0eSBOU1N0cmluZyAqdGV4dDsKK0BlbmQKKworQGludGVyZmFjZSBET01IVE1MVUxp
c3RFbGVtZW50IDogRE9NSFRNTEVsZW1lbnQKK0Bwcm9wZXJ0eSBCT09MIGNvbXBhY3Q7CitAcHJv
cGVydHkgTlNTdHJpbmcgKnR5cGU7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NQ1NTQ2hhcnNldFJ1
bGUgOiBET01DU1NSdWxlCitAcHJvcGVydHkocmVhZG9ubHkpIE5TU3RyaW5nICplbmNvZGluZzsK
K0BlbmQKKworQGludGVyZmFjZSBET01DU1NGb250RmFjZVJ1bGUgOiBET01DU1NSdWxlCitAcHJv
cGVydHkocmVhZG9ubHkpIERPTUNTU1N0eWxlRGVjbGFyYXRpb24gKnN0eWxlOworQGVuZAorCitA
aW50ZXJmYWNlIERPTUNTU0ltcG9ydFJ1bGUgOiBET01DU1NSdWxlCitAcHJvcGVydHkocmVhZG9u
bHkpIE5TU3RyaW5nICpocmVmOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01NZWRpYUxpc3QgKm1l
ZGlhOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01DU1NTdHlsZVNoZWV0ICpzdHlsZVNoZWV0Owor
QGVuZAorCitAaW50ZXJmYWNlIERPTUNTU01lZGlhUnVsZSA6IERPTUNTU1J1bGUKK0Bwcm9wZXJ0
eShyZWFkb25seSkgRE9NTWVkaWFMaXN0ICptZWRpYTsKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9N
Q1NTUnVsZUxpc3QgKmNzc1J1bGVzOworLSAodW5zaWduZWQpaW5zZXJ0UnVsZTooTlNTdHJpbmcg
KilydWxlIDoodW5zaWduZWQpaW5kZXg7CisvLy0gKHVuc2lnbmVkKWluc2VydFJ1bGU6KE5TU3Ry
aW5nICopcnVsZSBpbmRleDoodW5zaWduZWQpaW5kZXg7CistICh2b2lkKWRlbGV0ZVJ1bGU6KHVu
c2lnbmVkKWluZGV4OworQGVuZAorCitAaW50ZXJmYWNlIERPTUNTU1BhZ2VSdWxlIDogRE9NQ1NT
UnVsZQorQHByb3BlcnR5IE5TU3RyaW5nICpzZWxlY3RvclRleHQ7CitAcHJvcGVydHkocmVhZG9u
bHkpIERPTUNTU1N0eWxlRGVjbGFyYXRpb24gKnN0eWxlOworQGVuZAorCitAaW50ZXJmYWNlIERP
TUNTU1ByaW1pdGl2ZVZhbHVlIDogRE9NQ1NTVmFsdWUKK0Bwcm9wZXJ0eShyZWFkb25seSkgdW5z
aWduZWQgc2hvcnQgcHJpbWl0aXZlVHlwZTsKKy0gKHZvaWQpc2V0RmxvYXRWYWx1ZToodW5zaWdu
ZWQgc2hvcnQpdW5pdFR5cGUgOihmbG9hdClmbG9hdFZhbHVlOworLy8tICh2b2lkKXNldEZsb2F0
VmFsdWU6KHVuc2lnbmVkIHNob3J0KXVuaXRUeXBlIGZsb2F0VmFsdWU6KGZsb2F0KWZsb2F0VmFs
dWU7CistIChmbG9hdClnZXRGbG9hdFZhbHVlOih1bnNpZ25lZCBzaG9ydCl1bml0VHlwZTsKKy0g
KHZvaWQpc2V0U3RyaW5nVmFsdWU6KHVuc2lnbmVkIHNob3J0KXN0cmluZ1R5cGUgOihOU1N0cmlu
ZyAqKXN0cmluZ1ZhbHVlOworLy8tICh2b2lkKXNldFN0cmluZ1ZhbHVlOih1bnNpZ25lZCBzaG9y
dClzdHJpbmdUeXBlIHN0cmluZ1ZhbHVlOihOU1N0cmluZyAqKXN0cmluZ1ZhbHVlOworLSAoTlNT
dHJpbmcgKilnZXRTdHJpbmdWYWx1ZTsKKy0gKERPTUNvdW50ZXIgKilnZXRDb3VudGVyVmFsdWU7
CistIChET01SZWN0ICopZ2V0UmVjdFZhbHVlOworLSAoRE9NUkdCQ29sb3IgKilnZXRSR0JDb2xv
clZhbHVlOworQGVuZAorCitAaW50ZXJmYWNlIERPTUNTU1J1bGUgOiBET01PYmplY3QKK0Bwcm9w
ZXJ0eShyZWFkb25seSkgdW5zaWduZWQgc2hvcnQgdHlwZTsKK0Bwcm9wZXJ0eSBOU1N0cmluZyAq
Y3NzVGV4dDsKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9NQ1NTU3R5bGVTaGVldCAqcGFyZW50U3R5
bGVTaGVldDsKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9NQ1NTUnVsZSAqcGFyZW50UnVsZTsKK0Bl
bmQKKworQGludGVyZmFjZSBET01DU1NSdWxlTGlzdCA6IERPTU9iamVjdAorQHByb3BlcnR5KHJl
YWRvbmx5KSB1bnNpZ25lZCBsZW5ndGg7CistIChET01DU1NSdWxlICopaXRlbToodW5zaWduZWQp
aW5kZXg7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiA6IERPTU9i
amVjdAorQHByb3BlcnR5IE5TU3RyaW5nICpjc3NUZXh0OworQHByb3BlcnR5KHJlYWRvbmx5KSB1
bnNpZ25lZCBsZW5ndGg7CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUNTU1J1bGUgKnBhcmVudFJ1
bGU7CistIChOU1N0cmluZyAqKWdldFByb3BlcnR5VmFsdWU6KE5TU3RyaW5nICopcHJvcGVydHlO
YW1lOworLSAoRE9NQ1NTVmFsdWUgKilnZXRQcm9wZXJ0eUNTU1ZhbHVlOihOU1N0cmluZyAqKXBy
b3BlcnR5TmFtZTsKKy0gKE5TU3RyaW5nICopcmVtb3ZlUHJvcGVydHk6KE5TU3RyaW5nICopcHJv
cGVydHlOYW1lOworLSAoTlNTdHJpbmcgKilnZXRQcm9wZXJ0eVByaW9yaXR5OihOU1N0cmluZyAq
KXByb3BlcnR5TmFtZTsKKy0gKHZvaWQpc2V0UHJvcGVydHk6KE5TU3RyaW5nICopcHJvcGVydHlO
YW1lIDooTlNTdHJpbmcgKil2YWx1ZSA6KE5TU3RyaW5nICopcHJpb3JpdHk7CisvLy0gKHZvaWQp
c2V0UHJvcGVydHk6KE5TU3RyaW5nICopcHJvcGVydHlOYW1lIHZhbHVlOihOU1N0cmluZyAqKXZh
bHVlIHByaW9yaXR5OihOU1N0cmluZyAqKXByaW9yaXR5OworLSAoTlNTdHJpbmcgKilpdGVtOih1
bnNpZ25lZClpbmRleDsKK0BlbmQKKworQGludGVyZmFjZSBET01DU1NTdHlsZVJ1bGUgOiBET01D
U1NSdWxlCitAcHJvcGVydHkgTlNTdHJpbmcgKnNlbGVjdG9yVGV4dDsKK0Bwcm9wZXJ0eShyZWFk
b25seSkgRE9NQ1NTU3R5bGVEZWNsYXJhdGlvbiAqc3R5bGU7CitAZW5kCisKK0BpbnRlcmZhY2Ug
RE9NQ1NTU3R5bGVTaGVldCA6IERPTVN0eWxlU2hlZXQKK0Bwcm9wZXJ0eShyZWFkb25seSkgRE9N
Q1NTUnVsZSAqb3duZXJSdWxlOworQHByb3BlcnR5KHJlYWRvbmx5KSBET01DU1NSdWxlTGlzdCAq
Y3NzUnVsZXM7CistICh1bnNpZ25lZClpbnNlcnRSdWxlOihOU1N0cmluZyAqKXJ1bGUgOih1bnNp
Z25lZClpbmRleDsKKy8vLSAodW5zaWduZWQpaW5zZXJ0UnVsZTooTlNTdHJpbmcgKilydWxlIGlu
ZGV4Oih1bnNpZ25lZClpbmRleDsKKy0gKHZvaWQpZGVsZXRlUnVsZToodW5zaWduZWQpaW5kZXg7
CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NQ1NTVmFsdWUgOiBET01PYmplY3QKK0Bwcm9wZXJ0eSBO
U1N0cmluZyAqY3NzVGV4dDsKK0Bwcm9wZXJ0eShyZWFkb25seSkgdW5zaWduZWQgc2hvcnQgY3Nz
VmFsdWVUeXBlOworQGVuZAorCitAaW50ZXJmYWNlIERPTUNTU1ZhbHVlTGlzdCA6IERPTUNTU1Zh
bHVlCitAcHJvcGVydHkocmVhZG9ubHkpIHVuc2lnbmVkIGxlbmd0aDsKKy0gKERPTUNTU1ZhbHVl
ICopaXRlbToodW5zaWduZWQpaW5kZXg7CitAZW5kCisKK0BpbnRlcmZhY2UgRE9NQ1NTVW5rbm93
blJ1bGUgOiBET01DU1NSdWxlCitAZW5kCisKK0BpbnRlcmZhY2UgRE9NQ291bnRlciA6IERPTU9i
amVjdAorQHByb3BlcnR5KHJlYWRvbmx5KSBOU1N0cmluZyAqaWRlbnRpZmllcjsKK0Bwcm9wZXJ0
eShyZWFkb25seSkgTlNTdHJpbmcgKmxpc3RTdHlsZTsKK0Bwcm9wZXJ0eShyZWFkb25seSkgTlNT
dHJpbmcgKnNlcGFyYXRvcjsKK0BlbmQKKworQGludGVyZmFjZSBET01SZWN0IDogRE9NT2JqZWN0
CitAcHJvcGVydHkocmVhZG9ubHkpIERPTUNTU1ByaW1pdGl2ZVZhbHVlICp0b3A7CitAcHJvcGVy
dHkocmVhZG9ubHkpIERPTUNTU1ByaW1pdGl2ZVZhbHVlICpyaWdodDsKK0Bwcm9wZXJ0eShyZWFk
b25seSkgRE9NQ1NTUHJpbWl0aXZlVmFsdWUgKmJvdHRvbTsKK0Bwcm9wZXJ0eShyZWFkb25seSkg
RE9NQ1NTUHJpbWl0aXZlVmFsdWUgKmxlZnQ7CitAZW5kCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtCShyZXZpc2lvbiAxNjIyMSkKKysrIFdl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQkod29ya2luZyBjb3B5
KQpAQCAtMjgsNyArMjgsMTEgQEAgbXkgJG1vZHVsZSA9ICIiOwogbXkgJG91dHB1dERpciA9ICIi
OwogbXkgJWltcGxJbmNsdWRlcyA9ICgpOwogbXkgJWhlYWRlckZvcndhcmREZWNsYXJhdGlvbnMg
PSAoKTsKK215ICVwcml2YXRlSGVhZGVyRm9yd2FyZERlY2xhcmF0aW9ucyA9ICgpOwogbXkgJWhl
YWRlckZvcndhcmREZWNsYXJhdGlvbnNGb3JQcm90b2NvbHMgPSAoKTsKK215ICVwcml2YXRlSGVh
ZGVyRm9yd2FyZERlY2xhcmF0aW9uc0ZvclByb3RvY29scyA9ICgpOworbXkgJXB1YmxpY0ludGVy
ZmFjZXMgPSAoKTsKK215ICRuZXdQdWJsaWNDbGFzcyA9IDA7CiBteSAkYnVpbGRpbmdGb3JUaWdl
ck9yRWFybGllciA9IDEgaWYgJEVOVnsiTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIn0gYW5kICRF
TlZ7Ik1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCJ9IDw9IDEwLjQ7CiBteSAkYnVpbGRpbmdGb3JM
ZW9wYXJkT3JMYXRlciA9IDEgaWYgJEVOVnsiTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIn0gYW5k
ICRFTlZ7Ik1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCJ9ID49IDEwLjU7CiAKQEAgLTEwOCw5ICsx
MTIsNDEgQEAgc3ViIG5ldwogc3ViIGZpbmlzaAogewogICAgIG15ICRvYmplY3QgPSBzaGlmdDsK
K30KKworc3ViIFJlYWRQdWJsaWNJbnRlcmZhY2VzCit7CisgICAgbXkgJGNsYXNzID0gc2hpZnQ7
CisgICAgbXkgJHN1cGVyQ2xhc3MgPSBzaGlmdDsKKworICAgIG15ICRmb3VuZCA9IDA7CisgICAg
bXkgJGFjdHVhbFN1cGVyQ2xhc3M7CisgICAgJXB1YmxpY0ludGVyZmFjZXMgPSAoKTsKKworICAg
IG9wZW4gKFB1YmxpY0RPTUludGVyZmFjZXMsICJXZWJDb3JlL2JpbmRpbmdzL29iamMvUHVibGlj
RE9NSW50ZXJmYWNlcy5oIikgb3IgZGllICJDYW4ndCBvcGVuIGJpbmRpbmdzL29iamMvUHVibGlj
RE9NSW50ZXJmYWNlcy5oIjsKKworICAgIHdoaWxlICgkbGluZSA9IDxQdWJsaWNET01JbnRlcmZh
Y2VzPikgeworICAgICAgICBpZiAoJGxpbmUgPX4gL15ccz9cQGludGVyZmFjZSAkY2xhc3Nccz86
XHM/KFx3Kylccz8kLykgeworICAgICAgICAgICAgZGllICJlcnJvcjogUHVibGljIEFQSSBjaGFu
Z2UuIFN1cGVyY2xhc3MgZm9yIFwiJGNsYXNzXCIgZGlmZmVycyAoJDEgIT0gJHN1cGVyQ2xhc3Mp
IiBpZiAkc3VwZXJDbGFzcyBuZSAkMTsKKyAgICAgICAgICAgICRmb3VuZCA9IDE7CisgICAgICAg
ICAgICBuZXh0OworICAgICAgICB9CisKKyAgICAgICAgbmV4dCBpZiAkbGluZSA9fiAvXlxzPyR8
XlwvXC98XiMvOyAjIHNraXAgd2hpdGVzcGFjZSwgY29tbWVudHMgb3IgcHJlcHJvY2Vzc29yIGxp
bmVzCisgICAgICAgIGxhc3QgaWYgJGZvdW5kIGFuZCAkbGluZSA9fiAvXlxzP1xAZW5kXHM/JC87
CiAKLSAgICAjIENvbW1pdCBjaGFuZ2VzIQotICAgICRvYmplY3QtPldyaXRlRGF0YSgpOworICAg
ICAgICBpZiAoJGZvdW5kKSB7CisgICAgICAgICAgICAjIHRyaW0gd2hpdHNwYWNlCisgICAgICAg
ICAgICAkbGluZSA9fiBzL15ccysvLzsKKyAgICAgICAgICAgICRsaW5lID1+IHMvXHMrJC8vOwor
ICAgICAgICAgICAgJHB1YmxpY0ludGVyZmFjZXN7JGxpbmV9ID0gMTsKKyAgICAgICAgfQorICAg
IH0KKworICAgIGNsb3NlKFB1YmxpY0RPTUludGVyZmFjZXMpOworCisgICAgIyBJZiB0aGlzIGNs
YXNzIHdhcyBub3QgZm91bmQgaW4gUHVibGljRE9NSW50ZXJmYWNlcy5oIHRoZW4gaXQgc2hvdWxk
IGJlIGNvbnNpZGVyZWQgYXMgYW4gZW50aXJseSBuZXcgcHVibGljIGNsYXNzLgorICAgICRuZXdQ
dWJsaWNDbGFzcyA9ICEgJGZvdW5kOwogfQogCiAjIFBhcmFtczogJ2RvbUNsYXNzJyBzdHJ1Y3QK
QEAgLTEyMSwxOCArMTU3LDI0IEBAIHN1YiBHZW5lcmF0ZUludGVyZmFjZQogCiAgICAgJGNvZGVH
ZW5lcmF0b3ItPlJlbW92ZUV4Y2x1ZGVkQXR0cmlidXRlc0FuZEZ1bmN0aW9ucygkZGF0YU5vZGUs
ICJPYmpDIik7CiAKKyAgICBteSAkbmFtZSA9ICRkYXRhTm9kZS0+bmFtZTsKKyAgICBteSAkY2xh
c3NOYW1lID0gR2V0Q2xhc3NOYW1lKCRuYW1lKTsKKyAgICBteSAkcGFyZW50Q2xhc3NOYW1lID0g
IkRPTSIgLiBHZXRQYXJlbnRJbXBsQ2xhc3NOYW1lKCRkYXRhTm9kZSk7CisKKyAgICBSZWFkUHVi
bGljSW50ZXJmYWNlcygkY2xhc3NOYW1lLCAkcGFyZW50Q2xhc3NOYW1lKTsKKwogICAgICMgU3Rh
cnQgYWN0dWFsIGdlbmVyYXRpb24uLgotICAgICRvYmplY3QtPkdlbmVyYXRlSGVhZGVyKCRkYXRh
Tm9kZSk7CiAgICAgJG9iamVjdC0+R2VuZXJhdGVJbXBsZW1lbnRhdGlvbigkZGF0YU5vZGUpOwor
ICAgICRvYmplY3QtPkdlbmVyYXRlSGVhZGVyKCRkYXRhTm9kZSk7CiAKLSAgICBteSAkbmFtZSA9
ICRkYXRhTm9kZS0+bmFtZTsKLQotICAgICMgT3BlbiBmaWxlcyBmb3Igd3JpdGluZy4uLgotICAg
IG15ICRoZWFkZXJGaWxlTmFtZSA9ICIkb3V0cHV0RGlyL0RPTSRuYW1lLmgiOwotICAgIG15ICRp
bXBsRmlsZU5hbWUgPSAiJG91dHB1dERpci9ET00kbmFtZS5tbSI7CisgICAgIyBXcml0ZSBjaGFu
Z2VzLgorICAgICRvYmplY3QtPldyaXRlRGF0YSgiRE9NIiAuICRuYW1lKTsKIAotICAgIG9wZW4o
JElNUEwsICI+JGltcGxGaWxlTmFtZSIpIG9yIGRpZSAiQ291bGRuJ3Qgb3BlbiBmaWxlICRpbXBs
RmlsZU5hbWUiOwotICAgIG9wZW4oJEhFQURFUiwgIj4kaGVhZGVyRmlsZU5hbWUiKSBvciBkaWUg
IkNvdWxkbid0IG9wZW4gZmlsZSAkaGVhZGVyRmlsZU5hbWUiOworICAgICMgQ2hlY2sgZm9yIG1p
c3NpbmcgcHVibGljIEFQSQorICAgIGlmIChrZXlzICVwdWJsaWNJbnRlcmZhY2VzID4gMCkgewor
ICAgICAgICBteSAkbWlzc2luZyA9IGpvaW4oICJcbiIsIGtleXMgJXB1YmxpY0ludGVyZmFjZXMg
KTsKKyAgICAgICAgZGllICJlcnJvcjogUHVibGljIEFQSSBjaGFuZ2UuIFRoZXJlIGFyZSBtaXNz
aW5nIHB1YmxpYyBwcm9wZXJ0aWVzIGFuZC9vciBtZXRob2RzIGZyb20gdGhlIFwiJGNsYXNzTmFt
ZVwiIGNsYXNzLlxuJG1pc3NpbmdcbiI7CisgICAgfQogfQogCiAjIFBhcmFtczogJ2lkbERvY3Vt
ZW50JyBzdHJ1Y3QKQEAgLTE3Myw2ICsyMTUsMTMgQEAgc3ViIEdldENsYXNzTmFtZQogICAgIHJl
dHVybiAiRE9NIiAuICRuYW1lOwogfQogCitzdWIgR2V0Q2xhc3NIZWFkZXJOYW1lCit7CisgICAg
bXkgJG5hbWUgPSBzaGlmdDsKKyAgICAkbmFtZSA9ICJET00iIC4gJG5hbWUgaWYgJG5hbWUgZXEg
IkRPTUltcGxlbWVudGF0aW9uIjsKKyAgICByZXR1cm4gJG5hbWU7Cit9CisKIHN1YiBHZXRJbXBs
Q2xhc3NOYW1lCiB7CiAgICAgbXkgJG5hbWUgPSAkY29kZUdlbmVyYXRvci0+U3RyaXBNb2R1bGUo
c2hpZnQpOwpAQCAtMjg3LDI3ICszMzYsMjkgQEAgc3ViIEdldE9iakNUeXBlTWFrZXIKIHN1YiBB
ZGRGb3J3YXJkRGVjbGFyYXRpb25zRm9yVHlwZQogewogICAgIG15ICR0eXBlID0gJGNvZGVHZW5l
cmF0b3ItPlN0cmlwTW9kdWxlKHNoaWZ0KTsKLSAgICAKLSAgICBpZiAoJGNvZGVHZW5lcmF0b3It
PklzUHJpbWl0aXZlVHlwZSgkdHlwZSkgb3IgJHR5cGUgZXEgIkRPTVN0cmluZyIpIHsKLSAgICAg
ICAgcmV0dXJuOwotICAgIH0KKyAgICBteSAkcHVibGljID0gc2hpZnQ7CiAKLSAgICBpZiAoJHR5
cGUgZXEgIkRPTUltcGxlbWVudGF0aW9uIikgewotICAgICAgICAkaGVhZGVyRm9yd2FyZERlY2xh
cmF0aW9uc3siJHR5cGUifSA9IDE7Ci0gICAgICAgIHJldHVybjsKLSAgICB9CisgICAgcmV0dXJu
IGlmICRjb2RlR2VuZXJhdG9yLT5Jc1ByaW1pdGl2ZVR5cGUoJHR5cGUpIG9yICR0eXBlIGVxICJE
T01TdHJpbmciOwogCi0gICAgaWYgKCR0eXBlIGVxICJET01XaW5kb3ciKSB7Ci0gICAgICAgICRo
ZWFkZXJGb3J3YXJkRGVjbGFyYXRpb25zeyJET01BYnN0cmFjdFZpZXcifSA9IDE7CisgICAgaWYg
KCR0eXBlIGVxICJYUGF0aE5TUmVzb2x2ZXIiKSB7CisgICAgICAgICRoZWFkZXJGb3J3YXJkRGVj
bGFyYXRpb25zRm9yUHJvdG9jb2xzeyJET01YUGF0aE5TUmVzb2x2ZXIifSA9IDEgaWYgJHB1Ymxp
YzsKKyAgICAgICAgJHByaXZhdGVIZWFkZXJGb3J3YXJkRGVjbGFyYXRpb25zRm9yUHJvdG9jb2xz
eyJET01YUGF0aE5TUmVzb2x2ZXIifSA9IDEgaWYgISRwdWJsaWMgYW5kICEkaGVhZGVyRm9yd2Fy
ZERlY2xhcmF0aW9uc0ZvclByb3RvY29sc3siRE9NWFBhdGhOU1Jlc29sdmVyIn07CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoJHR5cGUgZXEgIlhQYXRoTlNSZXNvbHZlciIpIHsK
LSAgICAgICAgJGhlYWRlckZvcndhcmREZWNsYXJhdGlvbnNGb3JQcm90b2NvbHN7IkRPTVhQYXRo
TlNSZXNvbHZlciJ9ID0gMTsKLSAgICAgICAgcmV0dXJuOworICAgIGlmICgkdHlwZSBlcSAiRE9N
SW1wbGVtZW50YXRpb24iKSB7CisgICAgICAgICR0eXBlID0gIkRPTUltcGxlbWVudGF0aW9uIjsK
KyAgICB9IGVsc2lmICgkdHlwZSBlcSAiRE9NV2luZG93IikgeworICAgICAgICAkdHlwZSA9ICJE
T01BYnN0cmFjdFZpZXciOworICAgIH0gZWxzZSB7CisgICAgICAgICR0eXBlID0gIkRPTSIgLiAk
dHlwZTsKICAgICB9CiAKLSAgICAkaGVhZGVyRm9yd2FyZERlY2xhcmF0aW9uc3siRE9NJHR5cGUi
fSA9IDE7CisgICAgJGhlYWRlckZvcndhcmREZWNsYXJhdGlvbnN7JHR5cGV9ID0gMSBpZiAkcHVi
bGljOworCisgICAgIyBQcml2YXRlIGhlYWRlcnMgaW5jbHVkZSB0aGUgcHVibGljIGhlYWRlciwg
c28gb25seSBhZGQgYSBmb3J3YXJkIGRlY2xhcmF0aW9uIHRvIHRoZSBwcml2YXRlIGhlYWRlcgor
ICAgICMgaWYgdGhlIHB1YmxpYyBoZWFkZXIgZG9lcyBub3QgYWxyZWFkeSBoYXZlIHRoZSBzYW1l
IGZvcndhcmQgZGVjbGFyYXRpb24uCisgICAgJHByaXZhdGVIZWFkZXJGb3J3YXJkRGVjbGFyYXRp
b25zeyR0eXBlfSA9IDEgaWYgISRwdWJsaWMgYW5kICEkaGVhZGVyRm9yd2FyZERlY2xhcmF0aW9u
c3skdHlwZX07CiB9CiAKIHN1YiBBZGRJbmNsdWRlc0ZvclR5cGUKQEAgLTMyNyw2ICszNzgsNyBA
QCBzdWIgQWRkSW5jbHVkZXNGb3JUeXBlCiAgICAgICAgICRpbXBsSW5jbHVkZXN7IlJlY3RJbXBs
LmgifSA9IDE7CiAgICAgICAgIHJldHVybjsKICAgICB9CisKICAgICBpZiAoJHR5cGUgZXEgIlJH
QkNvbG9yIikgewogICAgICAgICAkaW1wbEluY2x1ZGVzeyJET01SR0JDb2xvci5oIn0gPSAxOwog
ICAgICAgICAkaW1wbEluY2x1ZGVzeyJDb2xvci5oIn0gPSAxOwpAQCAtMzYwLDYgKzQxMiw4IEBA
IHN1YiBBZGRJbmNsdWRlc0ZvclR5cGUKICAgICAjIFRlbXAgRE9NSW1wbGVtZW50YXRpb25Gcm9u
dC5oCiAgICAgaWYgKCR0eXBlIGVxICJET01JbXBsZW1lbnRhdGlvbiIpIHsKICAgICAgICAgJGlt
cGxJbmNsdWRlc3siRE9NSW1wbGVtZW50YXRpb25Gcm9udC5oIn0gPSAxOworICAgICAgICAkaW1w
bEluY2x1ZGVzeyJET00kdHlwZS5oIn0gPSAxOworICAgICAgICByZXR1cm47CiAgICAgfQogCiAg
ICAgIyBGSVhNRTogZm9yIHNvbWUgcmVhc29uIGl0IHdvbid0IGNvbXBpbGUgd2l0aG91dCBib3Ro
IENTU1N0eWxlRGVjbGFyYXRpb24uaApAQCAtMzY4LDcgKzQyMiw2IEBAIHN1YiBBZGRJbmNsdWRl
c0ZvclR5cGUKICAgICAgICAgJGltcGxJbmNsdWRlc3siQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRp
b24uaCJ9ID0gMTsKICAgICB9CiAKLQogICAgICMgQWRkIHR5cGUgc3BlY2lmaWMgaW50ZXJuYWwg
dHlwZXMuCiAgICAgJGltcGxJbmNsdWRlc3siRE9NSFRNTEludGVybmFsLmgifSA9IDEgaWYgJHR5
cGUgPX4gL15IVE1MLzsKIApAQCAtMzk3LDIzICs0NTAsMjMgQEAgc3ViIEdlbmVyYXRlSGVhZGVy
CiAgICAgQGhlYWRlckNvbnRlbnRIZWFkZXIgPSBzcGxpdCgiXHIiLCAkaGVhZGVyTGljZW5jZVRl
bXBsYXRlKTsKIAogICAgICMgLSBJTkNMVURFUyAtCi0gICAgcHVzaChAaGVhZGVyQ29udGVudEhl
YWRlciwgIlxuI2ltcG9ydCA8V2ViQ29yZS8kcGFyZW50Q2xhc3NOYW1lLmg+XG5cbiIpOworICAg
IG15ICRwYXJlbnRIZWFkZXJOYW1lID0gR2V0Q2xhc3NIZWFkZXJOYW1lKCRwYXJlbnRDbGFzc05h
bWUpOworICAgIHB1c2goQGhlYWRlckNvbnRlbnRIZWFkZXIsICJcbiNpbXBvcnQgPFdlYkNvcmUv
JHBhcmVudEhlYWRlck5hbWUuaD5cblxuIik7CiAKICAgICAjIC0gQWRkIGNvbnN0YW50cy4KICAg
ICBpZiAoJG51bUNvbnN0YW50cyA+IDApIHsKICAgICAgICAgbXkgQGhlYWRlckNvbnN0YW50cyA9
ICgpOwogICAgICAgICBmb3JlYWNoIG15ICRjb25zdGFudCAoQHskZGF0YU5vZGUtPmNvbnN0YW50
c30pIHsKLQogICAgICAgICAgICAgbXkgJGNvbnN0YW50TmFtZSA9ICRjb25zdGFudC0+bmFtZTsK
ICAgICAgICAgICAgIG15ICRjb25zdGFudFZhbHVlID0gJGNvbnN0YW50LT52YWx1ZTsKICAgICAg
ICAgICAgIG15ICRvdXRwdXQgPSAiICAgIERPTV8iIC4gJGNvbnN0YW50TmFtZSAuICIgPSAiIC4g
JGNvbnN0YW50VmFsdWU7Ci0gICAgICAgICAgICAKICAgICAgICAgICAgIHB1c2goQGhlYWRlckNv
bnN0YW50cywgJG91dHB1dCk7CiAgICAgICAgIH0KIAogICAgICAgICBteSAkY29tYmluZWRDb25z
dGFudHMgPSBqb2luKCIsXG4iLCBAaGVhZGVyQ29uc3RhbnRzKTsKIAogICAgICAgICAjIEZJWE1F
OiB0aGUgZm9ybWF0dGluZyBvZiB0aGUgZW51bXMgc2hvdWxkIGxpbmUgdXAgdGhlIGVxdWFsIHNp
Z25zLgorICAgICAgICAjIEZJWE1FOiBlbnVtcyBhcmUgdW5jb25kaXRpb25hbGx5IHBsYWNlZCBp
biB0aGUgcHVibGljIGhlYWRlci4KICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgImVudW0g
e1xuIik7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICRjb21iaW5lZENvbnN0YW50cyk7
CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICJcbn07XG5cbiIpOyAgICAgICAgCkBAIC00
MjIsMTYgKzQ3NSwxNCBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICAjIC0gQmVnaW4gQGludGVy
ZmFjZSAKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiXEBpbnRlcmZhY2UgJGNsYXNzTmFtZSA6
ICRwYXJlbnRDbGFzc05hbWVcbiIpOwogCisgICAgbXkgQGhlYWRlckF0dHJpYnV0ZXMgPSAoKTsK
KyAgICBteSBAcHJpdmF0ZUhlYWRlckF0dHJpYnV0ZXMgPSAoKTsKKwogICAgICMgLSBBZGQgYXR0
cmlidXRlIGdldHRlcnMvc2V0dGVycy4KICAgICBpZiAoJG51bUF0dHJpYnV0ZXMgPiAwKSB7Ci0g
ICAgICAgIG15IEBoZWFkZXJBdHRyaWJ1dGVzID0gKCk7Ci0KLSAgICAgICAgZm9yZWFjaCAoQHsk
ZGF0YU5vZGUtPmF0dHJpYnV0ZXN9KSB7Ci0gICAgICAgICAgICBteSAkYXR0cmlidXRlID0gJF87
Ci0KLSAgICAgICAgICAgIEFkZEZvcndhcmREZWNsYXJhdGlvbnNGb3JUeXBlKCRhdHRyaWJ1dGUt
PnNpZ25hdHVyZS0+dHlwZSk7Ci0KKyAgICAgICAgZm9yZWFjaCBteSAkYXR0cmlidXRlIChAeyRk
YXRhTm9kZS0+YXR0cmlidXRlc30pIHsKICAgICAgICAgICAgIG15ICRhdHRyaWJ1dGVOYW1lID0g
JGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lOworCiAgICAgICAgICAgICBpZiAoJGF0dHJpYnV0
ZU5hbWUgZXEgImlkIikgewogICAgICAgICAgICAgICAgICMgU3BlY2lhbCBjYXNlIGF0dHJpYnV0
ZSBpZCB0byBiZSBpZE5hbWUgdG8gYXZvaWQgT2JqLUMgbmFtZWluZyBjb25mbGljdC4KICAgICAg
ICAgICAgICAgICAkYXR0cmlidXRlTmFtZSAuPSAiTmFtZSI7CkBAIC00NDMsMTggKzQ5NCwyOCBA
QCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICAgICAgICAgIG15ICRhdHRyaWJ1dGVUeXBlID0gR2V0
T2JqQ1R5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKTsKICAgICAgICAgICAgIG15ICRh
dHRyaWJ1dGVJc1JlYWRvbmx5ID0gKCRhdHRyaWJ1dGUtPnR5cGUgPX4gL15yZWFkb25seS8pOwog
CisgICAgICAgICAgICBteSAkcHJvcGVydHkgPSAiXEBwcm9wZXJ0eSIgLiAoJGF0dHJpYnV0ZUlz
UmVhZG9ubHkgPyAiKHJlYWRvbmx5KSIgOiAiIikgLiAiICIgLiAkYXR0cmlidXRlVHlwZSAuICgk
YXR0cmlidXRlVHlwZSA9fiAvXCokLyA/ICIiIDogIiAiKSAuICRhdHRyaWJ1dGVOYW1lIC4gIjsi
OworCisgICAgICAgICAgICBteSAkcHVibGljID0gKCRwdWJsaWNJbnRlcmZhY2VzeyRwcm9wZXJ0
eX0gb3IgJG5ld1B1YmxpY0NsYXNzKTsKKyAgICAgICAgICAgIGRlbGV0ZSAkcHVibGljSW50ZXJm
YWNlc3skcHJvcGVydHl9OworCisgICAgICAgICAgICBBZGRGb3J3YXJkRGVjbGFyYXRpb25zRm9y
VHlwZSgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUsICRwdWJsaWMpOworCiAgICAgICAgICAg
ICBpZiAoJGJ1aWxkaW5nRm9yTGVvcGFyZE9yTGF0ZXIpIHsKLSAgICAgICAgICAgICAgICBteSAk
cHJvcGVydHkgPSAiXEBwcm9wZXJ0eSIgLiAoJGF0dHJpYnV0ZUlzUmVhZG9ubHkgPyAiKHJlYWRv
bmx5KSIgOiAiIikgLiAiICIgLiAkYXR0cmlidXRlVHlwZSAuICgkYXR0cmlidXRlVHlwZSA9fiAv
XCokLyA/ICIiIDogIiAiKSAuICRhdHRyaWJ1dGVOYW1lIC4gIjtcbiI7Ci0gICAgICAgICAgICAg
ICAgcHVzaChAaGVhZGVyQXR0cmlidXRlcywgJHByb3BlcnR5KTsKKyAgICAgICAgICAgICAgICAk
cHJvcGVydHkgLj0gIlxuIjsKKyAgICAgICAgICAgICAgICBwdXNoKEBoZWFkZXJBdHRyaWJ1dGVz
LCAkcHJvcGVydHkpIGlmICRwdWJsaWM7CisgICAgICAgICAgICAgICAgcHVzaChAcHJpdmF0ZUhl
YWRlckF0dHJpYnV0ZXMsICRwcm9wZXJ0eSkgdW5sZXNzICRwdWJsaWM7CiAgICAgICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgICAgICMgLSBHRVRURVIKICAgICAgICAgICAgICAgICBteSAk
Z2V0dGVyID0gIi0gKCIgLiAkYXR0cmlidXRlVHlwZSAuICIpIiAuICRhdHRyaWJ1dGVOYW1lIC4g
IjtcbiI7Ci0gICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQXR0cmlidXRlcywgJGdldHRlcik7
CisgICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQXR0cmlidXRlcywgJGdldHRlcikgaWYgJHB1
YmxpYzsKKyAgICAgICAgICAgICAgICBwdXNoKEBwcml2YXRlSGVhZGVyQXR0cmlidXRlcywgJGdl
dHRlcikgdW5sZXNzICRwdWJsaWM7CiAKICAgICAgICAgICAgICAgICAjIC0gU0VUVEVSCiAgICAg
ICAgICAgICAgICAgaWYgKCEkYXR0cmlidXRlSXNSZWFkb25seSkgewogICAgICAgICAgICAgICAg
ICAgICBteSAkc2V0dGVyID0gIi0gKHZvaWQpc2V0IiAuIHVjZmlyc3QoJGF0dHJpYnV0ZU5hbWUp
IC4gIjooIiAuICRhdHRyaWJ1dGVUeXBlIC4gIiluZXciIC4gdWNmaXJzdCgkYXR0cmlidXRlTmFt
ZSkgLiAiO1xuIjsKLSAgICAgICAgICAgICAgICAgICAgcHVzaChAaGVhZGVyQXR0cmlidXRlcywg
JHNldHRlcik7CisgICAgICAgICAgICAgICAgICAgIHB1c2goQGhlYWRlckF0dHJpYnV0ZXMsICRz
ZXR0ZXIpIGlmICRwdWJsaWM7CisgICAgICAgICAgICAgICAgICAgIHB1c2goQHByaXZhdGVIZWFk
ZXJBdHRyaWJ1dGVzLCAkc2V0dGVyKSB1bmxlc3MgJHB1YmxpYzsKICAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KQEAgLTQ2MiwyMCArNTIzLDE4IEBAIHN1YiBHZW5l
cmF0ZUhlYWRlcgogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCBAaGVhZGVyQXR0cmlidXRl
cykgaWYgQGhlYWRlckF0dHJpYnV0ZXMgPiAwOwogICAgIH0KIAorICAgIG15IEBoZWFkZXJGdW5j
dGlvbnMgPSAoKTsKKyAgICBteSBAcHJpdmF0ZUhlYWRlckZ1bmN0aW9ucyA9ICgpOwogICAgIG15
IEBkZXByZWNhdGVkSGVhZGVyRnVuY3Rpb25zID0gKCk7CiAKICAgICAjIC0gQWRkIGZ1bmN0aW9u
cy4KICAgICBpZiAoJG51bUZ1bmN0aW9ucyA+IDApIHsKLSAgICAgICAgbXkgQGhlYWRlckZ1bmN0
aW9ucyA9ICgpOwotCi0gICAgICAgIGZvcmVhY2ggKEB7JGRhdGFOb2RlLT5mdW5jdGlvbnN9KSB7
Ci0gICAgICAgICAgICBteSAkZnVuY3Rpb24gPSAkXzsKLQotICAgICAgICAgICAgQWRkRm9yd2Fy
ZERlY2xhcmF0aW9uc0ZvclR5cGUoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpOwotCisgICAg
ICAgIGZvcmVhY2ggbXkgJGZ1bmN0aW9uIChAeyRkYXRhTm9kZS0+ZnVuY3Rpb25zfSkgewogICAg
ICAgICAgICAgbXkgJGZ1bmN0aW9uTmFtZSA9ICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5uYW1lOwog
ICAgICAgICAgICAgbXkgJHJldHVyblR5cGUgPSBHZXRPYmpDVHlwZSgkZnVuY3Rpb24tPnNpZ25h
dHVyZS0+dHlwZSk7CisgICAgICAgICAgICBteSAkbmVlZHNEZXByZWNhdGVkVmVyc2lvbiA9IChA
eyRmdW5jdGlvbi0+cGFyYW1ldGVyc30gPiAxIGFuZCAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57Ik9sZFN0eWxlT2JqQyJ9KTsKICAgICAgICAgICAgIG15ICRudW1i
ZXJPZlBhcmFtZXRlcnMgPSBAeyRmdW5jdGlvbi0+cGFyYW1ldGVyc307CisgICAgICAgICAgICBt
eSAldHlwZXNUb0ZvcndhcmREZWNsYXJlID0gKCRmdW5jdGlvbi0+c2lnbmF0dXJlLT50eXBlID0+
IDEpOwogCiAgICAgICAgICAgICBteSAkcGFyYW1ldGVySW5kZXggPSAwOwogICAgICAgICAgICAg
bXkgJGZ1bmN0aW9uU2lnID0gIi0gKCRyZXR1cm5UeXBlKSRmdW5jdGlvbk5hbWUiOwpAQCAtNDgz
LDcgKzU0Miw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgICAgICAgICAgICAgIG15ICRwYXJh
bU5hbWUgPSAkcGFyYW0tPm5hbWU7CiAgICAgICAgICAgICAgICAgbXkgJHBhcmFtVHlwZSA9IEdl
dE9iakNUeXBlKCRwYXJhbS0+dHlwZSk7CiAKLSAgICAgICAgICAgICAgICBBZGRGb3J3YXJkRGVj
bGFyYXRpb25zRm9yVHlwZSgkcGFyYW0tPnR5cGUpOworICAgICAgICAgICAgICAgICR0eXBlc1Rv
Rm9yd2FyZERlY2xhcmV7JHBhcmFtLT50eXBlfSA9IDE7CiAKICAgICAgICAgICAgICAgICBpZiAo
JHBhcmFtZXRlckluZGV4ID49IDEpIHsKICAgICAgICAgICAgICAgICAgICAgbXkgJHBhcmFtUHJl
Zml4ID0gJHBhcmFtLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiT2JqQ1ByZWZpeCJ9OwpAQCAtNDk2
LDIxICs1NTUsMzggQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgICAgICAgICAgICAgJHBhcmFt
ZXRlckluZGV4Kys7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgICRmdW5jdGlvblNpZyAu
PSAiO1xuIjsKKyAgICAgICAgICAgICRmdW5jdGlvblNpZyAuPSAiOyI7CisKKyAgICAgICAgICAg
IG15ICRwdWJsaWMgPSAoJHB1YmxpY0ludGVyZmFjZXN7JGZ1bmN0aW9uU2lnfSBvciAkbmV3UHVi
bGljQ2xhc3MpOworICAgICAgICAgICAgZGVsZXRlICRwdWJsaWNJbnRlcmZhY2VzeyRmdW5jdGlv
blNpZ307CiAKLSAgICAgICAgICAgIHB1c2goQGhlYWRlckZ1bmN0aW9ucywgJGZ1bmN0aW9uU2ln
KTsKKyAgICAgICAgICAgICRmdW5jdGlvblNpZyAuPSAiXG4iOworCisgICAgICAgICAgICBmb3Jl
YWNoIG15ICR0eXBlIChrZXlzICV0eXBlc1RvRm9yd2FyZERlY2xhcmUpIHsKKyAgICAgICAgICAg
ICAgICAjIGFkZCBhbnkgZm9yd2FyZCBkZWNsYXJhdGlvbnMgdG8gdGhlIHB1YmxpYyBoZWFkZXIg
aWYgYSBkZXByZWNhdGVkIHZlcnNpb24gd2lsbCBiZSBnZW5lcmF0ZWQKKyAgICAgICAgICAgICAg
ICBBZGRGb3J3YXJkRGVjbGFyYXRpb25zRm9yVHlwZSgkdHlwZSwgMSkgaWYgJG5lZWRzRGVwcmVj
YXRlZFZlcnNpb247CisgICAgICAgICAgICAgICAgQWRkRm9yd2FyZERlY2xhcmF0aW9uc0ZvclR5
cGUoJHR5cGUsICRwdWJsaWMpIHVubGVzcyAkcHVibGljIGFuZCAkbmVlZHNEZXByZWNhdGVkVmVy
c2lvbjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgcHVzaChAaGVhZGVyRnVuY3Rpb25z
LCAkZnVuY3Rpb25TaWcpIGlmICRwdWJsaWM7CisgICAgICAgICAgICBwdXNoKEBwcml2YXRlSGVh
ZGVyRnVuY3Rpb25zLCAkZnVuY3Rpb25TaWcpIHVubGVzcyAkcHVibGljOwogCiAgICAgICAgICAg
ICAjIGdlbmVyYXRlIHRoZSBvbGQgc3R5bGUgbWV0aG9kIG5hbWVzIHdpdGggdW4tbmFtZWQgcGFy
YW1ldGVycywgdGhlc2UgbWV0aG9kcyBhcmUgZGVwcmVjYXRlZAotICAgICAgICAgICAgaWYgKEB7
JGZ1bmN0aW9uLT5wYXJhbWV0ZXJzfSA+IDEgYW5kICRmdW5jdGlvbi0+c2lnbmF0dXJlLT5leHRl
bmRlZEF0dHJpYnV0ZXMtPnsiT2xkU3R5bGVPYmpDIn0pIHsKKyAgICAgICAgICAgIGlmICgkbmVl
ZHNEZXByZWNhdGVkVmVyc2lvbikgewogICAgICAgICAgICAgICAgIG15ICRkZXByZWNhdGVkRnVu
Y3Rpb25TaWcgPSAkZnVuY3Rpb25TaWc7CiAgICAgICAgICAgICAgICAgJGRlcHJlY2F0ZWRGdW5j
dGlvblNpZyA9fiBzL1xzXHcrOi8gOi9nOyAjIHJlbW92ZSBwYXJhbWV0ZXIgbmFtZXMKKyAgICAg
ICAgICAgICAgICBteSAkZGVwcmVjYXRlZEZ1bmN0aW9uS2V5ID0gJGRlcHJlY2F0ZWRGdW5jdGlv
blNpZzsKKwogICAgICAgICAgICAgICAgICRkZXByZWNhdGVkRnVuY3Rpb25TaWcgPX4gcy87XG4k
LyBERVBSRUNBVEVEX0lOX01BQ19PU19YX1ZFUlNJT05fMTBfNV9BTkRfTEFURVI7XG4vIGlmICRi
dWlsZGluZ0Zvckxlb3BhcmRPckxhdGVyOwogICAgICAgICAgICAgICAgIHB1c2goQGRlcHJlY2F0
ZWRIZWFkZXJGdW5jdGlvbnMsICRkZXByZWNhdGVkRnVuY3Rpb25TaWcpOworCisgICAgICAgICAg
ICAgICAgJGRlcHJlY2F0ZWRGdW5jdGlvbktleSA9fiBzL1xuJC8vOyAjIHJlbW92ZSB0aGUgbmV3
bGluZQorICAgICAgICAgICAgICAgIGRlbGV0ZSAkcHVibGljSW50ZXJmYWNlc3skZGVwcmVjYXRl
ZEZ1bmN0aW9uS2V5fTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogCiAgICAgICAgIGlmIChA
aGVhZGVyRnVuY3Rpb25zID4gMCkgewotICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwg
IlxuIikgaWYgJGJ1aWxkaW5nRm9yTGVvcGFyZE9yTGF0ZXIgYW5kICRudW1BdHRyaWJ1dGVzID4g
MDsKKyAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICJcbiIpIGlmICRidWlsZGluZ0Zv
ckxlb3BhcmRPckxhdGVyIGFuZCBAaGVhZGVyQXR0cmlidXRlcyA+IDA7CiAgICAgICAgICAgICBw
dXNoKEBoZWFkZXJDb250ZW50LCBAaGVhZGVyRnVuY3Rpb25zKTsKICAgICAgICAgfQogICAgIH0K
QEAgLTUyNCw2ICs2MDAsMjEgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgICAgIHB1c2goQGhl
YWRlckNvbnRlbnQsIEBkZXByZWNhdGVkSGVhZGVyRnVuY3Rpb25zKTsKICAgICAgICAgcHVzaChA
aGVhZGVyQ29udGVudCwgIlxAZW5kXG4iKTsKICAgICB9CisKKyAgICBpZiAoQHByaXZhdGVIZWFk
ZXJBdHRyaWJ1dGVzID4gMCBvciBAcHJpdmF0ZUhlYWRlckZ1bmN0aW9ucyA+IDApIHsKKyAgICAg
ICAgIyAtIFByaXZhdGUgY2F0ZWdvcnkgQGludGVyZmFjZQorICAgICAgICBAcHJpdmF0ZUhlYWRl
ckNvbnRlbnRIZWFkZXIgPSBzcGxpdCgiXHIiLCAkaGVhZGVyTGljZW5jZVRlbXBsYXRlKTsKKwor
ICAgICAgICBteSAkY2xhc3NIZWFkZXJOYW1lID0gR2V0Q2xhc3NIZWFkZXJOYW1lKCRjbGFzc05h
bWUpOworICAgICAgICBwdXNoKEBwcml2YXRlSGVhZGVyQ29udGVudEhlYWRlciwgIlxuI2ltcG9y
dCA8V2ViQ29yZS8kY2xhc3NIZWFkZXJOYW1lLmg+XG5cbiIpOworCisgICAgICAgIEBwcml2YXRl
SGVhZGVyQ29udGVudCA9ICgpOworICAgICAgICBwdXNoKEBwcml2YXRlSGVhZGVyQ29udGVudCwg
IlxAaW50ZXJmYWNlICRjbGFzc05hbWUgKCIgLiAkY2xhc3NOYW1lIC4gIlByaXZhdGUpXG4iKTsK
KyAgICAgICAgcHVzaChAcHJpdmF0ZUhlYWRlckNvbnRlbnQsIEBwcml2YXRlSGVhZGVyQXR0cmli
dXRlcykgaWYgQHByaXZhdGVIZWFkZXJBdHRyaWJ1dGVzID4gMDsKKyAgICAgICAgcHVzaChAcHJp
dmF0ZUhlYWRlckNvbnRlbnQsICJcbiIpIGlmICRidWlsZGluZ0Zvckxlb3BhcmRPckxhdGVyIGFu
ZCBAcHJpdmF0ZUhlYWRlckF0dHJpYnV0ZXMgPiAwIGFuZCBAcHJpdmF0ZUhlYWRlckZ1bmN0aW9u
cyA+IDA7CisgICAgICAgIHB1c2goQHByaXZhdGVIZWFkZXJDb250ZW50LCBAcHJpdmF0ZUhlYWRl
ckZ1bmN0aW9ucykgaWYgQHByaXZhdGVIZWFkZXJGdW5jdGlvbnMgPiAwOworICAgICAgICBwdXNo
KEBwcml2YXRlSGVhZGVyQ29udGVudCwgIlxAZW5kXG4iKTsKKyAgICB9CiB9CiAKIHN1YiBHZW5l
cmF0ZUltcGxlbWVudGF0aW9uCkBAIC01NDUsMjkgKzYzNiwzMCBAQCBzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbgogCiAgICAgIyAtIElOQ0xVREVTIC0KICAgICBwdXNoKEBpbXBsQ29udGVudEhl
YWRlciwgIlxuI2ltcG9ydCBcImNvbmZpZy5oXCJcbiIpOwotICAgIHB1c2goQGltcGxDb250ZW50
SGVhZGVyLCAiI2ltcG9ydCBcIiRjbGFzc05hbWUuaFwiXG5cbiIpOworCisgICAgbXkgJGNsYXNz
SGVhZGVyTmFtZSA9IEdldENsYXNzSGVhZGVyTmFtZSgkY2xhc3NOYW1lKTsKKyAgICBwdXNoKEBp
bXBsQ29udGVudEhlYWRlciwgIiNpbXBvcnQgXCIkY2xhc3NIZWFkZXJOYW1lLmhcIlxuXG4iKTsK
IAogICAgIGlmICgkaGFzRnVuY3Rpb25zT3JBdHRyaWJ1dGVzKSB7Ci0gICAgICAgIHB1c2goQGlt
cGxDb250ZW50SGVhZGVyLCAiI2ltcG9ydCBcIkRPTUludGVybmFsLmhcIlxuIik7Ci0gICAgICAg
IHB1c2goQGltcGxDb250ZW50SGVhZGVyLCAiI2ltcG9ydCA8d3RmL0dldFB0ci5oPlxuIik7Cisg
ICAgICAgIHB1c2goQGltcGxDb250ZW50SGVhZGVyLCAiI2ltcG9ydCA8d3RmL0dldFB0ci5oPlxu
XG4iKTsKKworICAgICAgICAkaW1wbEluY2x1ZGVzeyIkaW1wbENsYXNzTmFtZS5oIn0gPSAxOwor
ICAgICAgICAkaW1wbEluY2x1ZGVzeyJET01JbnRlcm5hbC5oIn0gPSAxOwogCiAgICAgICAgICMg
aW5jbHVkZSBtb2R1bGUtZGVwZW5kZW50IGludGVybmFsIGludGVyZmFjZXMuCiAgICAgICAgIGlm
ICgkbW9kdWxlIGVxICJodG1sIikgewogICAgICAgICAgICAgIyBIVE1MIG1vZHVsZSBpbnRlcm5h
bCBpbnRlcmZhY2VzCi0gICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudEhlYWRlciwgIiNpbXBv
cnQgXCJET01IVE1MSW50ZXJuYWwuaFwiXG4iKTsKKyAgICAgICAgICAgICRpbXBsSW5jbHVkZXN7
IkRPTUhUTUxJbnRlcm5hbC5oIn0gPSAxOwogICAgICAgICB9IGVsc2lmICgkbW9kdWxlIGVxICJj
c3MiKSB7CiAgICAgICAgICAgICAjIENTUyBtb2R1bGUgaW50ZXJuYWwgaW50ZXJmYWNlcwotICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRIZWFkZXIsICIjaW1wb3J0IFwiRE9NQ1NTSW50ZXJu
YWwuaFwiXG4iKTsKKyAgICAgICAgICAgICRpbXBsSW5jbHVkZXN7IkRPTUNTU0ludGVybmFsLmgi
fSA9IDE7CiAgICAgICAgIH0gZWxzaWYgKCRtb2R1bGUgZXEgImV2ZW50cyIpIHsKLSAgICAgICAg
ICAgICMgQ1NTIG1vZHVsZSBpbnRlcm5hbCBpbnRlcmZhY2VzCi0gICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudEhlYWRlciwgIiNpbXBvcnQgXCJET01FdmVudHNJbnRlcm5hbC5oXCJcbiIpOwor
ICAgICAgICAgICAgIyBFdmVudHMgbW9kdWxlIGludGVybmFsIGludGVyZmFjZXMKKyAgICAgICAg
ICAgICRpbXBsSW5jbHVkZXN7IkRPTUV2ZW50c0ludGVybmFsLmgifSA9IDE7CiAgICAgICAgIH0g
ZWxzaWYgKCRtb2R1bGUgZXEgInhwYXRoIikgewotICAgICAgICAgICAgIyBDU1MgbW9kdWxlIGlu
dGVybmFsIGludGVyZmFjZXMKLSAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50SGVhZGVyLCAi
I2ltcG9ydCBcIkRPTVhQYXRoSW50ZXJuYWwuaFwiXG4iKTsKKyAgICAgICAgICAgICMgWFBhdGgg
bW9kdWxlIGludGVybmFsIGludGVyZmFjZXMKKyAgICAgICAgICAgICRpbXBsSW5jbHVkZXN7IkRP
TVhQYXRoSW50ZXJuYWwuaCJ9ID0gMTsKICAgICAgICAgfQotCi0gICAgICAgICMgaW5jbHVkZSBJ
bXBsZW1lbnRhdGlvbiBjbGFzcwotICAgICAgICBwdXNoKEBpbXBsQ29udGVudEhlYWRlciwgIiNp
bXBvcnQgXCIkaW1wbENsYXNzTmFtZS5oXCIgLy8gaW1wbGVtZW50YXRpb24gY2xhc3NcbiIpOwog
ICAgIH0KIAogICAgIEBpbXBsQ29udGVudCA9ICgpOwpAQCAtNTk3LDcgKzY4OSw2IEBAIHN1YiBH
ZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAg
ICAgICAgSU1QTC0+ZGVyZWYoKTtcbiIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIgICAgW3N1cGVyIGZpbmFsaXplXTtcbiIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICJ9XG5cbiIpOwotICAgICAgICAgICAgCiAgICAgICAgIH0gZWxzaWYgKCRpbnRlcmZhY2VO
YW1lIGVxICJDU1NTdHlsZVNoZWV0IikgewogICAgICAgICAgICAgIyBTcGVjaWFsIGNhc2UgZm9y
IENTU1N0eWxlU2hlZXQKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiI2RlZmluZSBJ
TVBMIHJlaW50ZXJwcmV0X2Nhc3Q8V2ViQ29yZTo6Q1NTU3R5bGVTaGVldCo+KF9pbnRlcm5hbClc
blxuIik7CkBAIC02MTUsMTEgKzcwNiwxMSBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgog
ICAgICAgICB9CiAgICAgfQogCisgICAgJWF0dHJpYnV0ZU5hbWVzID0gKCk7CisKICAgICAjIC0g
QXR0cmlidXRlcwogICAgIGlmICgkbnVtQXR0cmlidXRlcyA+IDApIHsKLSAgICAgICAgZm9yZWFj
aCAoQHskZGF0YU5vZGUtPmF0dHJpYnV0ZXN9KSB7Ci0gICAgICAgICAgICBteSAkYXR0cmlidXRl
ID0gJF87Ci0KKyAgICAgICAgZm9yZWFjaCBteSAkYXR0cmlidXRlIChAeyRkYXRhTm9kZS0+YXR0
cmlidXRlc30pIHsKICAgICAgICAgICAgIEFkZEluY2x1ZGVzRm9yVHlwZSgkYXR0cmlidXRlLT5z
aWduYXR1cmUtPnR5cGUpOwogCiAgICAgICAgICAgICBteSAkaWRsVHlwZSA9ICRjb2RlR2VuZXJh
dG9yLT5TdHJpcE1vZHVsZSgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUpOwpAQCAtNjM3LDYg
KzcyOCw4IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAgICAgJGlu
dGVyZmFjZU5hbWUgLj0gIkJvcmRlcnMiOwogICAgICAgICAgICAgfQogCisgICAgICAgICAgICAk
YXR0cmlidXRlTmFtZXN7JGludGVyZmFjZU5hbWV9ID0gMTsKKwogICAgICAgICAgICAgIyAtIEdF
VFRFUgogICAgICAgICAgICAgbXkgJGdldHRlclNpZyA9ICItICgkYXR0cmlidXRlVHlwZSkkaW50
ZXJmYWNlTmFtZVxuIjsKICAgICAgICAgICAgIG15ICRoYXNHZXR0ZXJFeGNlcHRpb24gPSBAeyRh
dHRyaWJ1dGUtPmdldHRlckV4Y2VwdGlvbnN9OwpAQCAtNzM3LDkgKzgzMCw3IEBAIHN1YiBHZW5l
cmF0ZUltcGxlbWVudGF0aW9uCiAKICAgICAjIC0gRnVuY3Rpb25zCiAgICAgaWYgKCRudW1GdW5j
dGlvbnMgPiAwKSB7Ci0gICAgICAgIGZvcmVhY2ggKEB7JGRhdGFOb2RlLT5mdW5jdGlvbnN9KSB7
Ci0gICAgICAgICAgICBteSAkZnVuY3Rpb24gPSAkXzsKLQorICAgICAgICBmb3JlYWNoIG15ICRm
dW5jdGlvbiAoQHskZGF0YU5vZGUtPmZ1bmN0aW9uc30pIHsKICAgICAgICAgICAgIEFkZEluY2x1
ZGVzRm9yVHlwZSgkZnVuY3Rpb24tPnNpZ25hdHVyZS0+dHlwZSk7CiAKICAgICAgICAgICAgIG15
ICRmdW5jdGlvbk5hbWUgPSAkZnVuY3Rpb24tPnNpZ25hdHVyZS0+bmFtZTsKQEAgLTc1MywxMSAr
ODQ0LDEzIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAKICAgICAgICAgICAgIG15ICRw
YXJhbWV0ZXJJbmRleCA9IDA7CiAgICAgICAgICAgICBteSAkZnVuY3Rpb25TaWcgPSAiLSAoJHJl
dHVyblR5cGUpJGZ1bmN0aW9uTmFtZSI7Ci0gICAgICAgICAgICBmb3JlYWNoIChAeyRmdW5jdGlv
bi0+cGFyYW1ldGVyc30pIHsKLSAgICAgICAgICAgICAgICBteSAkcGFyYW0gPSAkXzsKKyAgICAg
ICAgICAgIGZvcmVhY2ggbXkgJHBhcmFtIChAeyRmdW5jdGlvbi0+cGFyYW1ldGVyc30pIHsKICAg
ICAgICAgICAgICAgICBteSAkcGFyYW1OYW1lID0gJHBhcmFtLT5uYW1lOwogICAgICAgICAgICAg
ICAgIG15ICRwYXJhbVR5cGUgPSBHZXRPYmpDVHlwZSgkcGFyYW0tPnR5cGUpOwogCisgICAgICAg
ICAgICAgICAgIyBtYWtlIGEgbmV3IHBhcmFtZXRlciBuYW1lIGlmIHRoZSBvcmlnaW5hbCBjb25m
bGljdHMgd2l0aCBhIHByb3BlcnR5IG5hbWUKKyAgICAgICAgICAgICAgICAkcGFyYW1OYW1lID0g
ImluIiAuIHVjZmlyc3QoJHBhcmFtTmFtZSkgaWYgJGF0dHJpYnV0ZU5hbWVzeyRwYXJhbU5hbWV9
OworCiAgICAgICAgICAgICAgICAgQWRkSW5jbHVkZXNGb3JUeXBlKCRwYXJhbS0+dHlwZSk7CiAK
ICAgICAgICAgICAgICAgICAjIEZJWE1FOiBzaG91bGQgbW92ZSB0aGlzIG91dCBpbnRvIGl0J3Mg
b3duIGZ1Y3Rpb24gdG8gc2hhcmUgd2l0aApAQCAtNzc1LDYgKzg2OCw5IEBAIHN1YiBHZW5lcmF0
ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAgICAgfSBlbHNpZiAoJGlkbFR5cGUgZXEgIkhU
TUxFbGVtZW50IikgewogICAgICAgICAgICAgICAgICAgICBteSAkaW1wbEdldHRlciA9ICJbIiAu
ICRwYXJhbU5hbWUgLiAiIF9IVE1MRWxlbWVudF0iOwogICAgICAgICAgICAgICAgICAgICBwdXNo
KEBwYXJhbWV0ZXJOYW1lcywgJGltcGxHZXR0ZXIpOworICAgICAgICAgICAgICAgIH0gZWxzaWYg
KCRpZGxUeXBlIGVxICJIVE1MT3B0aW9uRWxlbWVudCIpIHsKKyAgICAgICAgICAgICAgICAgICAg
bXkgJGltcGxHZXR0ZXIgPSAiWyIgLiAkcGFyYW1OYW1lIC4gIiBfb3B0aW9uRWxlbWVudF0iOwor
ICAgICAgICAgICAgICAgICAgICBwdXNoKEBwYXJhbWV0ZXJOYW1lcywgJGltcGxHZXR0ZXIpOwog
ICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgIG15ICRpbXBsR2V0
dGVyID0gIlsiIC4gJHBhcmFtTmFtZSAuICIgXyIgLiBsY2ZpcnN0KCRpZGxUeXBlKSAuICJdIjsK
ICAgICAgICAgICAgICAgICAgICAgcHVzaChAcGFyYW1ldGVyTmFtZXMsICRpbXBsR2V0dGVyKTsK
QEAgLTc4Niw3ICs4ODIsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogCiAgICAgICAg
ICAgICAgICAgaWYgKCRwYXJhbWV0ZXJJbmRleCA+PSAxKSB7CiAgICAgICAgICAgICAgICAgICAg
IG15ICRwYXJhbVByZWZpeCA9ICRwYXJhbS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik9iakNQcmVm
aXgifTsKLSAgICAgICAgICAgICAgICAgICAgJHBhcmFtUHJlZml4ID0gJHBhcmFtTmFtZSB1bmxl
c3MgZGVmaW5lZCgkcGFyYW1QcmVmaXgpOworICAgICAgICAgICAgICAgICAgICAkcGFyYW1QcmVm
aXggPSAkcGFyYW0tPm5hbWUgdW5sZXNzIGRlZmluZWQoJHBhcmFtUHJlZml4KTsKICAgICAgICAg
ICAgICAgICAgICAgJGZ1bmN0aW9uU2lnIC49ICIgJHBhcmFtUHJlZml4IjsKICAgICAgICAgICAg
ICAgICB9CiAKQEAgLTgwNSwzOCArOTAxLDIwIEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9u
CiAgICAgICAgICAgICAgICAgcHVzaChAZnVuY3Rpb25Db250ZW50LCAiICAgIERPTU5hdGl2ZVhQ
YXRoTlNSZXNvbHZlciAqbmF0aXZlUmVzb2x2ZXIgPSAoRE9NTmF0aXZlWFBhdGhOU1Jlc29sdmVy
ICopJHBhcmFtTmFtZTtcblxuIik7CiAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgIHB1c2go
QHBhcmFtZXRlck5hbWVzLCAiZWMiKSBpZiAkcmFpc2VzRXhjZXB0aW9uczsKKworICAgICAgICAg
ICAgbXkgJGNvbnRlbnQgPSAiSU1QTC0+IiAuICRmdW5jdGlvbk5hbWUgLiAiKCIgLiBqb2luKCIs
ICIsIEBwYXJhbWV0ZXJOYW1lcykgLiAiKSI7CisKICAgICAgICAgICAgIGlmICgkcmV0dXJuVHlw
ZSBlcSAidm9pZCIpIHsKICAgICAgICAgICAgICAgICAjIFNwZWNpYWwgY2FzZSAndm9pZCcgcmV0
dXJuIHR5cGUuCi0gICAgICAgICAgICAgICAgbXkgJGZ1bmN0aW9uQ29udGVudEhlYWQgPSAiSU1Q
TC0+JGZ1bmN0aW9uTmFtZSgiOwotICAgICAgICAgICAgICAgIG15ICRmdW5jdGlvbkNvbnRlbnRU
YWlsID0gIik7IjsKLSAgICAgICAgICAgICAgICBteSAkY29udGVudCA9ICIiOwotCi0gICAgICAg
ICAgICAgICAgaWYgKCRoYXNQYXJhbWV0ZXJzKSB7Ci0gICAgICAgICAgICAgICAgICAgIG15ICRw
YXJhbXMgPSBqb2luKCIsICIsIEBwYXJhbWV0ZXJOYW1lcyk7Ci0gICAgICAgICAgICAgICAgICAg
IGlmICgkcmFpc2VzRXhjZXB0aW9ucykgewotICAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRl
bnQgPSAkZnVuY3Rpb25Db250ZW50SGVhZCAuICRwYXJhbXMgLiAiLCBlYyIgLiAkZnVuY3Rpb25D
b250ZW50VGFpbDsKLSAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICRjb250ZW50ID0gJGZ1bmN0aW9uQ29udGVudEhlYWQgLiAkcGFyYW1zIC4gJGZ1
bmN0aW9uQ29udGVudFRhaWw7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICBpZiAoJHJhaXNlc0V4Y2VwdGlvbnMpIHsK
LSAgICAgICAgICAgICAgICAgICAgICAgICRjb250ZW50ID0gJGZ1bmN0aW9uQ29udGVudEhlYWQg
LiAiZWMiIC4gJGZ1bmN0aW9uQ29udGVudFRhaWw7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxz
ZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAkY29udGVudCA9ICRmdW5jdGlvbkNvbnRlbnRI
ZWFkIC4gJGZ1bmN0aW9uQ29udGVudFRhaWw7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgICAgICB9Ci0KICAgICAgICAgICAgICAgICBpZiAoJHJhaXNlc0V4Y2VwdGlvbnMpIHsK
ICAgICAgICAgICAgICAgICAgICAgcHVzaChAZnVuY3Rpb25Db250ZW50LCAiICAgICRleGNlcHRp
b25Jbml0XG4iKTsKLSAgICAgICAgICAgICAgICAgICAgcHVzaChAZnVuY3Rpb25Db250ZW50LCAi
ICAgICRjb250ZW50XG4iKTsKKyAgICAgICAgICAgICAgICAgICAgcHVzaChAZnVuY3Rpb25Db250
ZW50LCAiICAgICRjb250ZW50O1xuIik7CiAgICAgICAgICAgICAgICAgICAgIHB1c2goQGZ1bmN0
aW9uQ29udGVudCwgIiAgICAkZXhjZXB0aW9uUmFpc2VPbkVycm9yXG4iKTsKICAgICAgICAgICAg
ICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICBwdXNoKEBmdW5jdGlvbkNvbnRlbnQs
ICIgICAgJGNvbnRlbnRcbiIpOworICAgICAgICAgICAgICAgICAgICBwdXNoKEBmdW5jdGlvbkNv
bnRlbnQsICIgICAgJGNvbnRlbnQ7XG4iKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgICAgIG15ICRmdW5jdGlvbkNvbnRlbnRIZWFkID0gIklN
UEwtPiIgLiAkZnVuY3Rpb25OYW1lIC4gIigiOwotICAgICAgICAgICAgICAgIG15ICRmdW5jdGlv
bkNvbnRlbnRUYWlsID0gIikiOwotCiAgICAgICAgICAgICAgICAgbXkgJHR5cGVNYWtlciA9IEdl
dE9iakNUeXBlTWFrZXIoJGZ1bmN0aW9uLT5zaWduYXR1cmUtPnR5cGUpOwogICAgICAgICAgICAg
ICAgIHVubGVzcyAoJHR5cGVNYWtlciBlcSAiIikgewogICAgICAgICAgICAgICAgICAgICBteSAk
cmV0dXJuVHlwZUNsYXNzID0gIiI7CkBAIC04NTEsMjggKzkyOSw5IEBAIHN1YiBHZW5lcmF0ZUlt
cGxlbWVudGF0aW9uCiAKICAgICAgICAgICAgICAgICAgICAgIyBTdXJyb3VuZCBnZXR0ZXIgd2l0
aCBUeXBlTWFrZXIKICAgICAgICAgICAgICAgICAgICAgaWYgKCRyZXR1cm5UeXBlQ2xhc3MgZXEg
IkRPTVJHQkNvbG9yIikgewotICAgICAgICAgICAgICAgICAgICAgICAgJGZ1bmN0aW9uQ29udGVu
dEhlYWQgPSAiWyRyZXR1cm5UeXBlQ2xhc3MgJHR5cGVNYWtlcjoiIC4gJGZ1bmN0aW9uQ29udGVu
dEhlYWQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICAkZnVuY3Rpb25Db250ZW50VGFpbCAuPSAi
XSI7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAkZnVuY3Rpb25Db250ZW50SGVhZCA9ICJbJHJldHVyblR5cGVDbGFzcyAkdHlwZU1ha2VyOldU
Rjo6Z2V0UHRyKCIgLiAkZnVuY3Rpb25Db250ZW50SGVhZDsKLSAgICAgICAgICAgICAgICAgICAg
ICAgICRmdW5jdGlvbkNvbnRlbnRUYWlsIC49ICIpXSI7Ci0gICAgICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICBteSAkY29udGVudCA9ICIiOwot
Ci0gICAgICAgICAgICAgICAgaWYgKCRoYXNQYXJhbWV0ZXJzKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIG15ICRwYXJhbXMgPSBqb2luKCIsICIgLCBAcGFyYW1ldGVyTmFtZXMpOwotICAgICAgICAg
ICAgICAgICAgICBpZiAoJHJhaXNlc0V4Y2VwdGlvbnMpIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgICRjb250ZW50ID0gJGZ1bmN0aW9uQ29udGVudEhlYWQgLiAkcGFyYW1zIC4gIiwgZWMiIC4g
JGZ1bmN0aW9uQ29udGVudFRhaWw7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAkY29udGVudCA9ICRmdW5jdGlvbkNvbnRlbnRIZWFkIC4gJHBh
cmFtcyAuICRmdW5jdGlvbkNvbnRlbnRUYWlsOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCRyYWlzZXNFeGNl
cHRpb25zKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAkY29udGVudCA9ICRmdW5jdGlvbkNv
bnRlbnRIZWFkIC4gImVjIiAuICRmdW5jdGlvbkNvbnRlbnRUYWlsOworICAgICAgICAgICAgICAg
ICAgICAgICAgJGNvbnRlbnQgPSAiWyRyZXR1cm5UeXBlQ2xhc3MgJHR5cGVNYWtlcjoiIC4gJGNv
bnRlbnQgLiAiXSI7CiAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAkY29udGVudCA9ICRmdW5jdGlvbkNvbnRlbnRIZWFkIC4gJGZ1bmN0aW9uQ29u
dGVudFRhaWw7CisgICAgICAgICAgICAgICAgICAgICAgICAkY29udGVudCA9ICJbJHJldHVyblR5
cGVDbGFzcyAkdHlwZU1ha2VyOldURjo6Z2V0UHRyKCIgLiAkY29udGVudCAuICIpXSI7CiAgICAg
ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CiAKQEAgLTkwNCw3ICs5NjMsNyBA
QCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAgICAgICAgIG15ICRkZXByZWNh
dGVkRnVuY3Rpb25TaWcgPSAkZnVuY3Rpb25TaWc7CiAgICAgICAgICAgICAgICAgJGRlcHJlY2F0
ZWRGdW5jdGlvblNpZyA9fiBzL1xzXHcrOi8gOi9nOyAjIHJlbW92ZSBwYXJhbWV0ZXIgbmFtZXMK
IAotICAgICAgICAgICAgICAgIHB1c2goQGRlcHJlY2F0ZWRGdW5jdGlvbnMsICJcbiRkZXByZWNh
dGVkRnVuY3Rpb25TaWdcbiIpOworICAgICAgICAgICAgICAgIHB1c2goQGRlcHJlY2F0ZWRGdW5j
dGlvbnMsICIkZGVwcmVjYXRlZEZ1bmN0aW9uU2lnXG4iKTsKICAgICAgICAgICAgICAgICBwdXNo
KEBkZXByZWNhdGVkRnVuY3Rpb25zLCAie1xuIik7CiAgICAgICAgICAgICAgICAgcHVzaChAZGVw
cmVjYXRlZEZ1bmN0aW9ucywgQGZ1bmN0aW9uQ29udGVudCk7CiAgICAgICAgICAgICAgICAgcHVz
aChAZGVwcmVjYXRlZEZ1bmN0aW9ucywgIn1cblxuIik7CkBAIC05MjAsNyArOTc5LDcgQEAgc3Vi
IEdlbmVyYXRlSW1wbGVtZW50YXRpb24KIAogICAgIGlmIChAZGVwcmVjYXRlZEZ1bmN0aW9ucyA+
IDApIHsKICAgICAgICAgIyAtIERlcHJlY2F0ZWQgY2F0ZWdvcnkgQGltcGxlbWVudGF0aW9uCi0g
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXG5cQGltcGxlbWVudGF0aW9uICRjbGFzc05hbWUg
KCIgLiAkY2xhc3NOYW1lIC4gIkRlcHJlY2F0ZWQpXG4iKTsKKyAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICJcblxAaW1wbGVtZW50YXRpb24gJGNsYXNzTmFtZSAoIiAuICRjbGFzc05hbWUgLiAi
RGVwcmVjYXRlZClcblxuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCBAZGVwcmVjYXRl
ZEZ1bmN0aW9ucyk7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiXEBlbmRcbiIpOwogICAg
IH0KQEAgLTkyOSw1MiArOTg4LDg4IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAjIElu
dGVybmFsIGhlbHBlcgogc3ViIFdyaXRlRGF0YQogewotICAgIGlmIChkZWZpbmVkKCRJTVBMKSkg
ewotICAgICAgICAjIFdyaXRlIGNvbnRlbnQgdG8gZmlsZS4KLSAgICAgICAgcHJpbnQgJElNUEwg
QGltcGxDb250ZW50SGVhZGVyOworICAgIG15ICRvYmplY3QgPSBzaGlmdDsKKyAgICBteSAkbmFt
ZSA9IHNoaWZ0OwogCi0gICAgICAgIG15ICRpbmNsdWRlQ291bnQgPSAwOwotICAgICAgICBmb3Jl
YWNoIG15ICRpbXBsSW5jbHVkZSAoc29ydCBrZXlzKCVpbXBsSW5jbHVkZXMpKSB7Ci0gICAgICAg
ICAgICBwcmludCAkSU1QTCAiI2ltcG9ydCBcIiRpbXBsSW5jbHVkZVwiXG4iOwotICAgICAgICAg
ICAgJGluY2x1ZGVDb3VudCsrOwotICAgICAgICB9CisgICAgIyBPcGVuIGZpbGVzIGZvciB3cml0
aW5nLi4uCisgICAgbXkgJGhlYWRlckZpbGVOYW1lID0gIiRvdXRwdXREaXIvIiAuICRuYW1lIC4g
Ii5oIjsKKyAgICBteSAkcHJpdmF0ZUhlYWRlckZpbGVOYW1lID0gIiRvdXRwdXREaXIvIiAuICRu
YW1lIC4gIlByaXZhdGUuaCI7CisgICAgbXkgJGltcGxGaWxlTmFtZSA9ICIkb3V0cHV0RGlyLyIg
LiAkbmFtZSAuICIubW0iOworCisgICAgIyBSZW1vdmUgb2xkIGZpbGVzLgorICAgIHVubGluaygk
aGVhZGVyRmlsZU5hbWUpOworICAgIHVubGluaygkcHJpdmF0ZUhlYWRlckZpbGVOYW1lKTsKKyAg
ICB1bmxpbmsoJGltcGxGaWxlTmFtZSk7CiAKLSAgICAgICAgcHJpbnQgJElNUEwgIlxuIiBpZiAk
aW5jbHVkZUNvdW50OworICAgICMgV3JpdGUgaW1wbGVtZW50YXRpb24gZmlsZS4KKyAgICBvcGVu
KCRJTVBMLCAiPiRpbXBsRmlsZU5hbWUiKSBvciBkaWUgIkNvdWxkbid0IG9wZW4gZmlsZSAkaW1w
bEZpbGVOYW1lIjsKKworICAgIHByaW50ICRJTVBMIEBpbXBsQ29udGVudEhlYWRlcjsKKworICAg
IGZvcmVhY2ggbXkgJGltcGxJbmNsdWRlIChzb3J0IGtleXMoJWltcGxJbmNsdWRlcykpIHsKKyAg
ICAgICAgcHJpbnQgJElNUEwgIiNpbXBvcnQgXCIkaW1wbEluY2x1ZGVcIlxuIjsKKyAgICB9CisK
KyAgICBwcmludCAkSU1QTCAiXG4iIGlmIGtleXMgJWltcGxJbmNsdWRlcyA+IDA7CisgICAgcHJp
bnQgJElNUEwgQGltcGxDb250ZW50OworCisgICAgY2xvc2UoJElNUEwpOworICAgIHVuZGVmKCRJ
TVBMKTsKKworICAgIEBpbXBsSGVhZGVyQ29udGVudCA9ICIiOworICAgIEBpbXBsQ29udGVudCA9
ICIiOyAgICAKKyAgICAlaW1wbEluY2x1ZGVzID0gKCk7CiAKLSAgICAgICAgcHJpbnQgJElNUEwg
QGltcGxDb250ZW50OwotICAgICAgICBjbG9zZSgkSU1QTCk7Ci0gICAgICAgIHVuZGVmKCRJTVBM
KTsKKyAgICAjIFdyaXRlIHB1YmxpYyBoZWFkZXIuCisgICAgb3BlbigkSEVBREVSLCAiPiRoZWFk
ZXJGaWxlTmFtZSIpIG9yIGRpZSAiQ291bGRuJ3Qgb3BlbiBmaWxlICRoZWFkZXJGaWxlTmFtZSI7
CisgICAgcHJpbnQgJEhFQURFUiBAaGVhZGVyQ29udGVudEhlYWRlcjsKKworICAgIG15ICRmb3J3
YXJkRGVjbGFyYXRpb25Db3VudCA9IDA7CisgICAgZm9yZWFjaCBteSAkZm9yd2FyZENsYXNzRGVj
bGFyYXRpb24gKHNvcnQga2V5cyglaGVhZGVyRm9yd2FyZERlY2xhcmF0aW9ucykpIHsKKyAgICAg
ICAgcHJpbnQgJEhFQURFUiAiXEBjbGFzcyAkZm9yd2FyZENsYXNzRGVjbGFyYXRpb247XG4iOwor
ICAgICAgICAkZm9yd2FyZERlY2xhcmF0aW9uQ291bnQrKzsKKyAgICB9CiAKLSAgICAgICAgQGlt
cGxIZWFkZXJDb250ZW50ID0gIiI7Ci0gICAgICAgIEBpbXBsQ29udGVudCA9ICIiOyAgICAKLSAg
ICAgICAgJWltcGxJbmNsdWRlcyA9ICgpOworICAgIGZvcmVhY2ggbXkgJGZvcndhcmRQcm90b2Nv
bERlY2xhcmF0aW9uIChzb3J0IGtleXMoJWhlYWRlckZvcndhcmREZWNsYXJhdGlvbnNGb3JQcm90
b2NvbHMpKSB7CisgICAgICAgIHByaW50ICRIRUFERVIgIlxAcHJvdG9jb2wgJGZvcndhcmRQcm90
b2NvbERlY2xhcmF0aW9uO1xuIjsKKyAgICAgICAgJGZvcndhcmREZWNsYXJhdGlvbkNvdW50Kys7
CiAgICAgfQogCi0gICAgaWYgKGRlZmluZWQoJEhFQURFUikpIHsKLSAgICAgICAgIyBXcml0ZSBj
b250ZW50IHRvIGZpbGUuCi0gICAgICAgIHByaW50ICRIRUFERVIgQGhlYWRlckNvbnRlbnRIZWFk
ZXI7CisgICAgcHJpbnQgJEhFQURFUiAiXG4iIGlmICRmb3J3YXJkRGVjbGFyYXRpb25Db3VudDsK
KyAgICBwcmludCAkSEVBREVSIEBoZWFkZXJDb250ZW50OworCisgICAgY2xvc2UoJEhFQURFUik7
CisgICAgdW5kZWYoJEhFQURFUik7CiAKLSAgICAgICAgbXkgJGZvcndhcmREZWNsYXJhdGlvbkNv
dW50ID0gMDsKLSAgICAgICAgZm9yZWFjaCBteSAkZm9yd2FyZENsYXNzRGVjbGFyYXRpb24gKHNv
cnQga2V5cyglaGVhZGVyRm9yd2FyZERlY2xhcmF0aW9ucykpIHsKLSAgICAgICAgICAgIHByaW50
ICRIRUFERVIgIlxAY2xhc3MgJGZvcndhcmRDbGFzc0RlY2xhcmF0aW9uO1xuIjsKKyAgICBAaGVh
ZGVyQ29udGVudEhlYWRlciA9ICIiOworICAgIEBoZWFkZXJDb250ZW50ID0gIiI7CisgICAgJWhl
YWRlckZvcndhcmREZWNsYXJhdGlvbnMgPSAoKTsKKyAgICAlaGVhZGVyRm9yd2FyZERlY2xhcmF0
aW9uc0ZvclByb3RvY29scyA9ICgpOworCisgICAgaWYgKEBwcml2YXRlSGVhZGVyQ29udGVudCA+
IDApIHsKKyAgICAgICAgb3BlbigkUFJJVkFURV9IRUFERVIsICI+JHByaXZhdGVIZWFkZXJGaWxl
TmFtZSIpIG9yIGRpZSAiQ291bGRuJ3Qgb3BlbiBmaWxlICRwcml2YXRlSGVhZGVyRmlsZU5hbWUi
OworICAgICAgICBwcmludCAkUFJJVkFURV9IRUFERVIgQHByaXZhdGVIZWFkZXJDb250ZW50SGVh
ZGVyOworCisgICAgICAgICRmb3J3YXJkRGVjbGFyYXRpb25Db3VudCA9IDA7CisgICAgICAgIGZv
cmVhY2ggbXkgJGZvcndhcmRDbGFzc0RlY2xhcmF0aW9uIChzb3J0IGtleXMoJXByaXZhdGVIZWFk
ZXJGb3J3YXJkRGVjbGFyYXRpb25zKSkgeworICAgICAgICAgICAgcHJpbnQgJFBSSVZBVEVfSEVB
REVSICJcQGNsYXNzICRmb3J3YXJkQ2xhc3NEZWNsYXJhdGlvbjtcbiI7CiAgICAgICAgICAgICAk
Zm9yd2FyZERlY2xhcmF0aW9uQ291bnQrKzsKICAgICAgICAgfQogCi0gICAgICAgIGZvcmVhY2gg
bXkgJGZvcndhcmRQcm90b2NvbERlY2xhcmF0aW9uIChzb3J0IGtleXMoJWhlYWRlckZvcndhcmRE
ZWNsYXJhdGlvbnNGb3JQcm90b2NvbHMpKSB7Ci0gICAgICAgICAgICBwcmludCAkSEVBREVSICJc
QHByb3RvY29sICRmb3J3YXJkUHJvdG9jb2xEZWNsYXJhdGlvbjtcbiI7CisgICAgICAgIGZvcmVh
Y2ggbXkgJGZvcndhcmRQcm90b2NvbERlY2xhcmF0aW9uIChzb3J0IGtleXMoJXByaXZhdGVIZWFk
ZXJGb3J3YXJkRGVjbGFyYXRpb25zRm9yUHJvdG9jb2xzKSkgeworICAgICAgICAgICAgcHJpbnQg
JFBSSVZBVEVfSEVBREVSICJcQHByb3RvY29sICRmb3J3YXJkUHJvdG9jb2xEZWNsYXJhdGlvbjtc
biI7CiAgICAgICAgICAgICAkZm9yd2FyZERlY2xhcmF0aW9uQ291bnQrKzsKICAgICAgICAgfQog
Ci0gICAgICAgIHByaW50ICRIRUFERVIgIlxuIiBpZiAkZm9yd2FyZERlY2xhcmF0aW9uQ291bnQ7
CisgICAgICAgIHByaW50ICRQUklWQVRFX0hFQURFUiAiXG4iIGlmICRmb3J3YXJkRGVjbGFyYXRp
b25Db3VudDsKKyAgICAgICAgcHJpbnQgJFBSSVZBVEVfSEVBREVSIEBwcml2YXRlSGVhZGVyQ29u
dGVudDsKKworICAgICAgICBjbG9zZSgkUFJJVkFURV9IRUFERVIpOworICAgICAgICB1bmRlZigk
UFJJVkFURV9IRUFERVIpOwogCi0gICAgICAgIHByaW50ICRIRUFERVIgQGhlYWRlckNvbnRlbnQ7
Ci0gICAgICAgIGNsb3NlKCRIRUFERVIpOwotICAgICAgICB1bmRlZigkSEVBREVSKTsKLQotICAg
ICAgICBAaGVhZGVyQ29udGVudEhlYWRlciA9ICIiOwotICAgICAgICBAaGVhZGVyQ29udGVudCA9
ICIiOwotICAgICAgICAlaGVhZGVyRm9yd2FyZERlY2xhcmF0aW9ucyA9ICgpOwotICAgICAgICAl
aGVhZGVyRm9yd2FyZERlY2xhcmF0aW9uc0ZvclByb3RvY29scyA9ICgpOworICAgICAgICBAcHJp
dmF0ZUhlYWRlckNvbnRlbnQgPSAiIjsKKyAgICAgICAgJXByaXZhdGVIZWFkZXJGb3J3YXJkRGVj
bGFyYXRpb25zID0gKCk7CisgICAgICAgICVwcml2YXRlSGVhZGVyRm9yd2FyZERlY2xhcmF0aW9u
c0ZvclByb3RvY29scyA9ICgpOwogICAgIH0KIH0KIApJbmRleDogV2ViQ29yZS9kb20vRG9jdW1l
bnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RvY3VtZW50LmlkbAkocmV2aXNpb24g
MTYyMjEpCisrKyBXZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTEx
MSw3ICsxMTEsNyBAQCBtb2R1bGUgY29yZSB7CiAKICAgICAgICAgLy8gRE9NIExldmVsIDMgQ29y
ZQogCi0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbQ29udmVydE51bGxTdHJpbmdUbz1OdWxs
LCBFeGNsdWRlPU9iakNdIERPTVN0cmluZyBpbnB1dEVuY29kaW5nOworICAgICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsU3RyaW5nVG89TnVsbF0gRE9NU3RyaW5nIGlucHV0RW5j
b2Rpbmc7CiAgICAgICAgIAogICAgICAgICBOb2RlIGFkb3B0Tm9kZShpbiBOb2RlIHNvdXJjZSkK
ICAgICAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKQEAgLTEzNCwzMSArMTM0LDMxIEBA
IG1vZHVsZSBjb3JlIHsKIAogICAgICAgICAvLyBDb21tb24gZXh0ZW5zaW9ucwogCi0gICAgICAg
IFtFeGNsdWRlPU9iakNdIGJvb2xlYW4gZXhlY0NvbW1hbmQoaW4gRE9NU3RyaW5nIGNvbW1hbmQs
IAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJvb2xlYW4g
dXNlckludGVyZmFjZSwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gRE9NU3RyaW5nIHZhbHVlKTsKKyAgICAgICAgYm9vbGVhbiBleGVjQ29tbWFuZChpbiBE
T01TdHJpbmcgY29tbWFuZCwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVh
biB1c2VySW50ZXJmYWNlLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJp
bmcgdmFsdWUpOwogCi0gICAgICAgIFtFeGNsdWRlPU9iakNdIGJvb2xlYW4gcXVlcnlDb21tYW5k
RW5hYmxlZChpbiBET01TdHJpbmcgY29tbWFuZCk7CisgICAgICAgIGJvb2xlYW4gcXVlcnlDb21t
YW5kRW5hYmxlZChpbiBET01TdHJpbmcgY29tbWFuZCk7CiAKLSAgICAgICAgW0V4Y2x1ZGU9T2Jq
Q10gYm9vbGVhbiBxdWVyeUNvbW1hbmRJbmRldGVybShpbiBET01TdHJpbmcgY29tbWFuZCk7Cisg
ICAgICAgIGJvb2xlYW4gcXVlcnlDb21tYW5kSW5kZXRlcm0oaW4gRE9NU3RyaW5nIGNvbW1hbmQp
OwogCi0gICAgICAgIFtFeGNsdWRlPU9iakNdIGJvb2xlYW4gcXVlcnlDb21tYW5kU3RhdGUoaW4g
RE9NU3RyaW5nIGNvbW1hbmQpOworICAgICAgICBib29sZWFuIHF1ZXJ5Q29tbWFuZFN0YXRlKGlu
IERPTVN0cmluZyBjb21tYW5kKTsKIAotICAgICAgICBbRXhjbHVkZT1PYmpDXSBib29sZWFuIHF1
ZXJ5Q29tbWFuZFN1cHBvcnRlZChpbiBET01TdHJpbmcgY29tbWFuZCk7CisgICAgICAgIGJvb2xl
YW4gcXVlcnlDb21tYW5kU3VwcG9ydGVkKGluIERPTVN0cmluZyBjb21tYW5kKTsKIAotICAgICAg
ICBbQ29udmVydE51bGxTdHJpbmdUbz1GYWxzZSwgRXhjbHVkZT1PYmpDXSBET01TdHJpbmcgcXVl
cnlDb21tYW5kVmFsdWUoaW4gRE9NU3RyaW5nIGNvbW1hbmQpOworICAgICAgICBbQ29udmVydE51
bGxTdHJpbmdUbz1GYWxzZV0gRE9NU3RyaW5nIHF1ZXJ5Q29tbWFuZFZhbHVlKGluIERPTVN0cmlu
ZyBjb21tYW5kKTsKIAogICAgICAgICAvLyBJRSBleHRlbnNpb25zCiAKICAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIFtFeGNsdWRlPU9iakNdIERPTVN0cmluZyBVUkw7CiAKLSAgICAgICAgYXR0
cmlidXRlIFtDb252ZXJ0TnVsbFN0cmluZ1RvPVVuZGVmaW5lZCwgRXhjbHVkZT1PYmpDXSBET01T
dHJpbmcgY2hhcnNldDsKKyAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFN0cmluZ1RvPVVu
ZGVmaW5lZF0gRE9NU3RyaW5nIGNoYXJzZXQ7CiAKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IFtDb252ZXJ0TnVsbFN0cmluZ1RvPVVuZGVmaW5lZCwgRXhjbHVkZT1PYmpDXSBET01TdHJpbmcg
ZGVmYXVsdENoYXJzZXQ7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbQ29udmVydE51bGxT
dHJpbmdUbz1VbmRlZmluZWRdIERPTVN0cmluZyBkZWZhdWx0Q2hhcnNldDsKIAotICAgICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsU3RyaW5nVG89VW5kZWZpbmVkLCBFeGNsdWRl
PU9iakNdIERPTVN0cmluZyByZWFkeVN0YXRlOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUg
W0NvbnZlcnROdWxsU3RyaW5nVG89VW5kZWZpbmVkXSBET01TdHJpbmcgcmVhZHlTdGF0ZTsKIAot
ICAgICAgICBbRXhjbHVkZT1PYmpDXSBFbGVtZW50IGVsZW1lbnRGcm9tUG9pbnQoaW4gbG9uZyB4
LCBpbiBsb25nIHkpOworICAgICAgICBFbGVtZW50IGVsZW1lbnRGcm9tUG9pbnQoaW4gbG9uZyB4
LCBpbiBsb25nIHkpOwogCiAgICAgICAgIC8vIE1vemlsbGEgZXh0ZW5zaW9ucwogCkBAIC0xNjYs
OSArMTY2LDkgQEAgbW9kdWxlIGNvcmUgewogCiAgICAgICAgIC8vIFdlYktpdCBleHRlbnNpb25z
CiAKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFN0cmluZ1RvPU51bGws
IEV4Y2x1ZGU9T2JqQ10gRE9NU3RyaW5nIHByZWZlcnJlZFN0eWxlc2hlZXRTZXQ7CisgICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBbQ29udmVydE51bGxTdHJpbmdUbz1OdWxsXSBET01TdHJpbmcg
cHJlZmVycmVkU3R5bGVzaGVldFNldDsKIAotICAgICAgICBhdHRyaWJ1dGUgW0NvbnZlcnROdWxs
U3RyaW5nVG89TnVsbCwgRXhjbHVkZT1PYmpDXSBET01TdHJpbmcgc2VsZWN0ZWRTdHlsZXNoZWV0
U2V0OworICAgICAgICBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsU3RyaW5nVG89TnVsbF0gRE9NU3Ry
aW5nIHNlbGVjdGVkU3R5bGVzaGVldFNldDsKIAogICAgIH07CiAKSW5kZXg6IFdlYkNvcmUvZG9t
L0VsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0VsZW1lbnQuaWRsCShyZXZp
c2lvbiAxNjIyMSkKKysrIFdlYkNvcmUvZG9tL0VsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBA
IC0xMDcsMTkgKzEwNywxOSBAQCBtb2R1bGUgY29yZSB7CiAKICAgICAgICAgLy8gSUUgZXh0ZW5z
aW9ucwogCi0gICAgICAgIFtFeGNsdWRlPU9iakNdIE5vZGUgaW5zZXJ0QWRqYWNlbnRFbGVtZW50
KGluIERPTVN0cmluZyBwb3NpdGlvbiwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGluIE5vZGUgZWxlbWVudCkKKyAgICAgICAgTm9kZSBpbnNlcnRB
ZGphY2VudEVsZW1lbnQoaW4gRE9NU3RyaW5nIHBvc2l0aW9uLCAKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW4gTm9kZSBlbGVtZW50KQogICAgICAgICAgICAgcmFpc2VzKERP
TUV4Y2VwdGlvbik7CiAKLSAgICAgICAgW0V4Y2x1ZGU9T2JqQ10gYm9vbGVhbiBjb250YWlucyhp
biBFbGVtZW50IGVsZW1lbnQpOworICAgICAgICBib29sZWFuIGNvbnRhaW5zKGluIEVsZW1lbnQg
ZWxlbWVudCk7CiAKICAgICAgICAgLy8gV2ViS2l0IGV4dGVuc2lvbnMKIAogICAgICAgICB2b2lk
IHNjcm9sbEludG9WaWV3SWZOZWVkZWQoaW4gW09wdGlvbmFsXSBib29sZWFuIGNlbnRlcklmTmVl
ZGVkKTsKIAotICAgICAgICBbRXhjbHVkZT1PYmpDXSB2b2lkIHNjcm9sbEJ5TGluZXMoaW4gbG9u
ZyBsaW5lcyk7CisgICAgICAgIHZvaWQgc2Nyb2xsQnlMaW5lcyhpbiBsb25nIGxpbmVzKTsKIAot
ICAgICAgICBbRXhjbHVkZT1PYmpDXSB2b2lkIHNjcm9sbEJ5UGFnZXMoaW4gbG9uZyBwYWdlcyk7
CisgICAgICAgIHZvaWQgc2Nyb2xsQnlQYWdlcyhpbiBsb25nIHBhZ2VzKTsKIAogICAgIH07CiAK
SW5kZXg6IFdlYkNvcmUvZG9tL05hbWVkTm9kZU1hcC5pZGwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9kb20vTmFtZWROb2RlTWFwLmlkbAkocmV2aXNpb24gMTYyMjEpCisrKyBXZWJDb3JlL2RvbS9O
YW1lZE5vZGVNYXAuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw3ICsyMyw3IEBAIG1vZHVsZSBj
b3JlIHsKIAogICAgICAgICBOb2RlIGdldE5hbWVkSXRlbShpbiBET01TdHJpbmcgbmFtZSk7CiAK
LSAgICAgICAgTm9kZSBzZXROYW1lZEl0ZW0oaW4gTm9kZSBhcmcpCisgICAgICAgIE5vZGUgc2V0
TmFtZWRJdGVtKGluIE5vZGUgbm9kZSkKICAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24p
OwogCiAgICAgICAgIE5vZGUgcmVtb3ZlTmFtZWRJdGVtKGluIERPTVN0cmluZyBuYW1lKQpAQCAt
NDEsNyArNDEsNyBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgICAgICAvLyBGSVhNRTogdGhlIGlt
cGxlbWVudGF0aW9uIGRvZXMgdGFrZSBhbiBleGNlcHRpb25jb2RlIHBhcmFtZXRlci4KICAgICAg
ICAgICAgIC8qcmFpc2VzKERPTUV4Y2VwdGlvbikqLzsKIAotICAgICAgICBOb2RlIHNldE5hbWVk
SXRlbU5TKGluIE5vZGUgYXJnKQorICAgICAgICBOb2RlIHNldE5hbWVkSXRlbU5TKGluIE5vZGUg
bm9kZSkKICAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwogCiAgICAgICAgIFtPbGRT
dHlsZU9iakNdIE5vZGUgcmVtb3ZlTmFtZWRJdGVtTlMoaW4gRE9NU3RyaW5nIG5hbWVzcGFjZVVS
SSwgCkluZGV4OiBXZWJDb3JlL2RvbS9Qcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaWRsCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvZG9tL1Byb2Nlc3NpbmdJbnN0cnVjdGlvbi5pZGwJKHJldmlzaW9uIDE2
MjIxKQorKysgV2ViQ29yZS9kb20vUHJvY2Vzc2luZ0luc3RydWN0aW9uLmlkbAkod29ya2luZyBj
b3B5KQpAQCAtMzAsNyArMzAsNyBAQCBtb2R1bGUgY29yZSB7CiAKICAgICAgICAgLy8gaW50ZXJm
YWNlIExpbmtTdHlsZSBmcm9tIERPTSBMZXZlbCAyIFN0eWxlIFNoZWV0cwogCi0gICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1PYmpDXSBTdHlsZVNoZWV0IHNoZWV0OworICAgICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgU3R5bGVTaGVldCBzaGVldDsKIAogICAgIH07CiAKSW5kZXg6
IFdlYkNvcmUvaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmlkbAkocmV2aXNpb24gMTYyMjEpCisrKyBXZWJDb3Jl
L2h0bWwvSFRNTEFuY2hvckVsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0zOCwxNCArMzgs
MTQgQEAgbW9kdWxlIGh0bWwgewogICAgICAgICB2b2lkIGZvY3VzKCk7CiAgICAgICAgIAogICAg
ICAgICAvLyBJRSBFeHRlbnNpb25zCi0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVk
ZT1PYmpDXSBET01TdHJpbmcgaGFzaDsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNs
dWRlPU9iakNdIERPTVN0cmluZyBob3N0OwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4
Y2x1ZGU9T2JqQ10gRE9NU3RyaW5nIGhvc3RuYW1lOwotICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgW0V4Y2x1ZGU9T2JqQ10gRE9NU3RyaW5nIHBhdGhuYW1lOwotICAgICAgICByZWFkb25seSBh
dHRyaWJ1dGUgW0V4Y2x1ZGU9T2JqQ10gRE9NU3RyaW5nIHBvcnQ7Ci0gICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBbRXhjbHVkZT1PYmpDXSBET01TdHJpbmcgcHJvdG9jb2w7Ci0gICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1PYmpDXSBET01TdHJpbmcgc2VhcmNoOwotICAgICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9T2JqQ10gRE9NU3RyaW5nIHRleHQ7CisgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaGFzaDsKKyAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZyBob3N0OworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIGhvc3RuYW1lOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHBh
dGhuYW1lOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHBvcnQ7CisgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgcHJvdG9jb2w7CisgICAgICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgc2VhcmNoOworICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIHRleHQ7CiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxB
cmVhRWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxBcmVhRWxlbWVu
dC5pZGwJKHJldmlzaW9uIDE2MjIxKQorKysgV2ViQ29yZS9odG1sL0hUTUxBcmVhRWxlbWVudC5p
ZGwJKHdvcmtpbmcgY29weSkKQEAgLTMxLDEzICszMSwxMyBAQCBtb2R1bGUgaHRtbCB7CiAgICAg
ICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgdGFyZ2V0OwogICAgICAgICAKICAgICAgICAgLy8gSUUg
RXh0ZW5zaW9ucwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9T2JqQ10gRE9N
U3RyaW5nIGhhc2g7Ci0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1PYmpDXSBE
T01TdHJpbmcgaG9zdDsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPU9iakNd
IERPTVN0cmluZyBob3N0bmFtZTsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRl
PU9iakNdIERPTVN0cmluZyBwYXRobmFtZTsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtF
eGNsdWRlPU9iakNdIERPTVN0cmluZyBwb3J0OwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUg
W0V4Y2x1ZGU9T2JqQ10gRE9NU3RyaW5nIHByb3RvY29sOwotICAgICAgICByZWFkb25seSBhdHRy
aWJ1dGUgW0V4Y2x1ZGU9T2JqQ10gRE9NU3RyaW5nIHNlYXJjaDsKKyAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZyBoYXNoOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIGhvc3Q7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgaG9zdG5h
bWU7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgcGF0aG5hbWU7CisgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgcG9ydDsKKyAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZyBwcm90b2NvbDsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTVN0cmluZyBzZWFyY2g7CiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxC
b2R5RWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxCb2R5RWxlbWVu
dC5pZGwJKHJldmlzaW9uIDE2MjIxKQorKysgV2ViQ29yZS9odG1sL0hUTUxCb2R5RWxlbWVudC5p
ZGwJKHdvcmtpbmcgY29weSkKQEAgLTI4LDkgKzI4LDkgQEAgbW9kdWxlIGh0bWwgewogICAgICAg
ICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZMaW5rOyAKICAgICAgICAgCiAgICAgICAgIC8vIElFIEV4
dGVuc2lvbnMKLSAgICAgICAgYXR0cmlidXRlIFtFeGNsdWRlPU9iakNdIGxvbmcgc2Nyb2xsTGVm
dDsKLSAgICAgICAgYXR0cmlidXRlIFtFeGNsdWRlPU9iakNdIGxvbmcgc2Nyb2xsVG9wOwotICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9T2JqQ10gbG9uZyBzY3JvbGxXaWR0aDsK
LSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPU9iakNdIGxvbmcgc2Nyb2xsSGVp
Z2h0OworICAgICAgICBhdHRyaWJ1dGUgbG9uZyBzY3JvbGxMZWZ0OworICAgICAgICBhdHRyaWJ1
dGUgbG9uZyBzY3JvbGxUb3A7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nIHNjcm9s
bFdpZHRoOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBzY3JvbGxIZWlnaHQ7CiAg
ICAgfTsKIH0KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxCdXR0b25FbGVtZW50LmlkbAkocmV2aXNpb24gMTYy
MjEpCisrKyBXZWJDb3JlL2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkp
CkBAIC0yOSw3ICsyOSw3IEBAIG1vZHVsZSBodG1sIHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmli
dXRlICBET01TdHJpbmcgICAgICAgICAgICB0eXBlOwogICAgICAgICAgICAgICAgICBhdHRyaWJ1
dGUgIERPTVN0cmluZyAgICAgICAgICAgIHZhbHVlOwogICAgICAgICAgICAgICAgICAKLSAgICAg
ICAgW0V4Y2x1ZGU9T2JqQ10gdm9pZCBjbGljaygpOworICAgICAgICB2b2lkIGNsaWNrKCk7CiAK
ICAgICB9OwogCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCShyZXZpc2lvbiAxNjIy
MSkKKysrIFdlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAkod29ya2luZyBjb3B5KQpA
QCAtMzQsOCArMzQsOCBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIGF0dHJpYnV0ZSBsb25nIHdp
ZHRoOwogICAgICAgICAKICAgICAgICAgLy8gRXh0ZW5zaW9ucwotICAgICAgICByZWFkb25seSBh
dHRyaWJ1dGUgW0V4Y2x1ZGU9T2JqQ10gYm9vbGVhbiBjb21wbGV0ZTsKLSAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIFtFeGNsdWRlPU9iakNdIGxvbmcgeDsKLSAgICAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIFtFeGNsdWRlPU9iakNdIGxvbmcgeTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IGJvb2xlYW4gY29tcGxldGU7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nIHg7Cisg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nIHk7CiAgICAgfTsKIH0KSW5kZXg6IFdlYkNv
cmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwv
SFRNTElucHV0RWxlbWVudC5pZGwJKHJldmlzaW9uIDE2MjIxKQorKysgV2ViQ29yZS9odG1sL0hU
TUxJbnB1dEVsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC00NSwxNCArNDUsMTQgQEAgbW9k
dWxlIGh0bWwgewogICAgICAgICB2b2lkICAgIHNlbGVjdCgpOwogICAgICAgICB2b2lkICAgIGNs
aWNrKCk7CiAgICAgICAgIAotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgW0V4Y2x1ZGU9T2Jq
Q10gYm9vbGVhbiBpbmRldGVybWluYXRlOyAvLyBXaW5JRSBleHRlbnNpb24KKyAgICAgICAgICAg
ICAgICAgYXR0cmlidXRlIGJvb2xlYW4gaW5kZXRlcm1pbmF0ZTsgLy8gV2luSUUgZXh0ZW5zaW9u
CiAgICAgICAgIAogICAgICAgICAvLyBXaW5JRSAmIEZpcmVGb3ggZXh0ZW5zaW9uOgogICAgICAg
ICAKICAgICAgICAgLy8gSGFuZGxlZCBieSBKU0hUTUxJbnB1dEVsZW1lbnRCYXNlIHRvIGFsbG93
IGhpZGluZyBiYXNlZCBvbiBpbnB1dCB0eXBlCi0gICAgICAgIC8vIGF0dHJpYnV0ZSBsb25nIHNl
bGVjdGlvblN0YXJ0OwotICAgICAgICAvLyBhdHRyaWJ1dGUgbG9uZyBzZWxlY3Rpb25FbmQ7Ci0g
ICAgICAgIC8vIHZvaWQgc2V0U2VsZWN0aW9uUmFuZ2UoaW4gbG9uZyBzdGFydCwgaW4gbG9uZyBl
bmQpOworICAgICAgICBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIGxvbmcgc2VsZWN0aW9uU3RhcnQ7
CisgICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gbG9uZyBzZWxlY3Rpb25FbmQ7CisgICAg
ICAgIFtFeGNsdWRlPUpTXSB2b2lkIHNldFNlbGVjdGlvblJhbmdlKGluIGxvbmcgc3RhcnQsIGlu
IGxvbmcgZW5kKTsKICAgICB9OwogCiB9CkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxl
bWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaWRs
CShyZXZpc2lvbiAxNjIyMSkKKysrIFdlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmlkbAko
d29ya2luZyBjb3B5KQpAQCAtMjQsNiArMjQsNiBAQCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIGF0
dHJpYnV0ZSBET01TdHJpbmcgYWNjZXNzS2V5OwogICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5n
IGh0bWxGb3I7CiAKLSAgICAgICAgW0V4Y2x1ZGU9T2JqQ10gdm9pZCBmb2N1cygpOworICAgICAg
ICB2b2lkIGZvY3VzKCk7CiAgICAgfTsKIH0KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MTGVnZW5k
RWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50
LmlkbAkocmV2aXNpb24gMTYyMjEpCisrKyBXZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQu
aWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw2ICsyNCw2IEBAIG1vZHVsZSBodG1sIHsKICAgICAg
ICAgYXR0cmlidXRlIERPTVN0cmluZyBhY2Nlc3NLZXk7CiAgICAgICAgIGF0dHJpYnV0ZSBET01T
dHJpbmcgYWxpZ247CiAKLSAgICAgICAgW0V4Y2x1ZGU9T2JqQ10gdm9pZCBmb2N1cygpOworICAg
ICAgICB2b2lkIGZvY3VzKCk7CiAgICAgfTsKIH0KSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MTGlu
a0VsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQu
aWRsCShyZXZpc2lvbiAxNjIyMSkKKysrIFdlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuaWRs
CSh3b3JraW5nIGNvcHkpCkBAIC0zMiw3ICszMiw3IEBAIG1vZHVsZSBodG1sIHsKICAgICAgICAg
YXR0cmlidXRlICBET01TdHJpbmcgICAgICAgICAgICB0eXBlOwogICAgICAgICAKICAgICAgICAg
Ly8gRE9NIExldmVsIDIgU3R5bGUKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRl
PU9iakNdIFN0eWxlU2hlZXQgICBzaGVldDsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFN0
eWxlU2hlZXQgICBzaGVldDsKICAgICB9OwogCiB9CkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTE9w
dGlvbnNDb2xsZWN0aW9uLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTE9wdGlv
bnNDb2xsZWN0aW9uLmlkbAkocmV2aXNpb24gMTYyMjEpCisrKyBXZWJDb3JlL2h0bWwvSFRNTE9w
dGlvbnNDb2xsZWN0aW9uLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMjMsMTEgKzIzLDExIEBAIG1v
ZHVsZSBodG1sIHsKICAgICAvLyBGSVhNRTogdGhlIHNwZWMgc2F5IHRoYXQgSFRNTE9wdGlvbnND
b2xsZWN0aW9uIHNob3VsZCBub3QgaGF2ZSBhIHBhcmVudCBjbGFzcwogCiAgICAgaW50ZXJmYWNl
IFtMZWdhY3lQYXJlbnQ9S0pTOjpKU0hUTUxDb2xsZWN0aW9uLCBIYXNDdXN0b21JbmRleFNldHRl
cl0gSFRNTE9wdGlvbnNDb2xsZWN0aW9uIDogSFRNTENvbGxlY3Rpb24gewotICAgICAgICAgICAg
ICAgICBhdHRyaWJ1dGUgW0V4Y2x1ZGU9T2JqQ10gbG9uZyBzZWxlY3RlZEluZGV4OworICAgICAg
ICAgICAgICAgICBhdHRyaWJ1dGUgbG9uZyBzZWxlY3RlZEluZGV4OwogICAgICAgICAgICAgICAg
ICBhdHRyaWJ1dGUgW0N1c3RvbV0gbG9uZyBsZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAg
IHNldHRlciByYWlzZXMgKERPTUV4Y2VwdGlvbik7CiAKLSAgICAgICAgW0V4Y2x1ZGU9T2JqQ10g
dm9pZCBhZGQoaW4gSFRNTE9wdGlvbkVsZW1lbnQgb3B0aW9uLCBpbiBbT3B0aW9uYWxdIHVuc2ln
bmVkIGxvbmcgaW5kZXgpCisgICAgICAgIHZvaWQgYWRkKGluIEhUTUxPcHRpb25FbGVtZW50IG9w
dGlvbiwgaW4gW09wdGlvbmFsXSB1bnNpZ25lZCBsb25nIGluZGV4KQogICAgICAgICAgICAgIHJh
aXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgICAgICAKICAgICAgICAgW0V4Y2x1ZGU9SlNd
IE5vZGUgaXRlbShpbiB1bnNpZ25lZCBsb25nIGluZGV4KTsKSW5kZXg6IFdlYkNvcmUvaHRtbC9I
VE1MUHJlRWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9odG1sL0hUTUxQcmVFbGVt
ZW50LmlkbAkocmV2aXNpb24gMTYyMjEpCisrKyBXZWJDb3JlL2h0bWwvSFRNTFByZUVsZW1lbnQu
aWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw3ICsyNiw3IEBAIG1vZHVsZSBodG1sIHsKICAgICAg
ICAgYXR0cmlidXRlIGxvbmcgd2lkdGg7CiAgICAgICAgIAogICAgICAgICAvLyBFeHRlbnNpb25z
Ci0gICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1PYmpDXSBib29sZWFuIHdyYXA7CisgICAgICAg
IGF0dHJpYnV0ZSBib29sZWFuIHdyYXA7CiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9odG1s
L0hUTUxTdHlsZUVsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MU3R5
bGVFbGVtZW50LmlkbAkocmV2aXNpb24gMTYyMjEpCisrKyBXZWJDb3JlL2h0bWwvSFRNTFN0eWxl
RWxlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI2LDcgKzI2LDcgQEAgbW9kdWxlIGh0bWwg
ewogICAgICAgICBhdHRyaWJ1dGUgIERPTVN0cmluZyAgICAgICAgICAgIHR5cGU7CiAgICAgICAg
IAogICAgICAgICAvLyBET00gTGV2ZWwgMiBTdHlsZQotICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgW0V4Y2x1ZGU9T2JqQ10gU3R5bGVTaGVldCBzaGVldDsKKyAgICAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIFN0eWxlU2hlZXQgc2hlZXQ7CiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9odG1s
L0hUTUxUZXh0QXJlYUVsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1M
VGV4dEFyZWFFbGVtZW50LmlkbAkocmV2aXNpb24gMTYyMjEpCisrKyBXZWJDb3JlL2h0bWwvSFRN
TFRleHRBcmVhRWxlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTM4LDkgKzM4LDkgQEAgbW9k
dWxlIGh0bWwgewogICAgICAgICB2b2lkICAgICBzZWxlY3QoKTsKIAogICAgICAgIC8vIFdpbklF
ICYgRmlyZUZveCBleHRlbnNpb246Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVk
ZT1PYmpDXSBsb25nIHNlbGVjdGlvblN0YXJ0OwotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUg
W0V4Y2x1ZGU9T2JqQ10gbG9uZyBzZWxlY3Rpb25FbmQ7Ci0gICAgICAgIFtFeGNsdWRlPU9iakNd
IHZvaWQgc2V0U2VsZWN0aW9uUmFuZ2UoaW4gbG9uZyBzdGFydCwgaW4gbG9uZyBlbmQpOworICAg
ICAgICAgICAgICAgICBhdHRyaWJ1dGUgbG9uZyBzZWxlY3Rpb25TdGFydDsKKyAgICAgICAgICAg
ICAgICAgYXR0cmlidXRlIGxvbmcgc2VsZWN0aW9uRW5kOworICAgICAgICB2b2lkIHNldFNlbGVj
dGlvblJhbmdlKGluIGxvbmcgc3RhcnQsIGluIGxvbmcgZW5kKTsKICAgICB9OwogCiB9CkluZGV4
OiBXZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9DaGFuZ2VMb2cJKHJldmlz
aW9uIDE2MjI0KQorKysgV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDE4IEBACisyMDA2LTA5LTA0ICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWcgMTA3
MTQ6IE9iakMgYXV0b2dlbmVyYXRpb24gbmVlZHMgc2FmZS1ndWFyZHMgYWdhaW5zdCBlYXNpbHkg
bW9kaWZ5aW5nIHRoZSBwdWJsaWMgQVBJCisgICAgICAgIGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFy
d2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3MTQKKworICAgICAgICAtIEFkZGVkIHRoZSBuZXcg
cHJpdmF0ZSBET00gaGVhZGVycy4KKyAgICAgICAgLSBGYWN0b3JlZCBvdXQgdGhlIGNvbW1vbiBj
b21tYW5kcyBpbnRvIHZhcmlhYmxlcy4KKyAgICAgICAgLSBNYWRlIFdlYkRhc2hib2FyZFJlZ2lv
bi5oIHByaXZhdGUgYWdhaW4uCisgICAgICAgIC0gUmVuYW1lIERPTURPTUltcGxlbWVudGF0aW9u
LmggdG8gRE9NSW1wbGVtZW50YXRpb24uaCB3aGVuIGZpbGVzCisgICAgICAgICAgYXJlIG1pZ3Jh
dGVkLiBBbHNvIGZpeGVzIHVwICNpbXBvcnRzLgorCisgICAgICAgICogTWlncmF0ZUhlYWRlcnMu
bWFrZToKKwogMjAwNi0wOS0wMyAgU2FtIFdlaW5pZyAgPHNhbS53ZWluaWdAZ21haWwuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIGFuZCBUaW0gSC4KSW5kZXg6IFdlYktpdC9NaWdy
YXRlSGVhZGVycy5tYWtlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9NaWdyYXRlSGVhZGVycy5tYWtl
CShyZXZpc2lvbiAxNjIyMSkKKysrIFdlYktpdC9NaWdyYXRlSGVhZGVycy5tYWtlCSh3b3JraW5n
IGNvcHkpCkBAIC0zNiwzOCArMzYsNTAgQEAgYWxsIDogXAogICAgIERPTUNTU0ZvbnRGYWNlUnVs
ZS5oIFwKICAgICBET01DU1NJbXBvcnRSdWxlLmggXAogICAgIERPTUNTU01lZGlhUnVsZS5oIFwK
KyAgICBET01DU1NNZWRpYVJ1bGVQcml2YXRlLmggXAogICAgIERPTUNTU1BhZ2VSdWxlLmggXAog
ICAgIERPTUNTU1ByaW1pdGl2ZVZhbHVlLmggXAorICAgIERPTUNTU1ByaW1pdGl2ZVZhbHVlUHJp
dmF0ZS5oIFwKICAgICBET01DU1NSdWxlLmggXAogICAgIERPTUNTU1J1bGVMaXN0LmggXAogICAg
IERPTUNTU1N0eWxlRGVjbGFyYXRpb24uaCBcCisgICAgRE9NQ1NTU3R5bGVEZWNsYXJhdGlvblBy
aXZhdGUuaCBcCiAgICAgRE9NQ1NTU3R5bGVSdWxlLmggXAogICAgIERPTUNTU1N0eWxlU2hlZXQu
aCBcCisgICAgRE9NQ1NTU3R5bGVTaGVldFByaXZhdGUuaCBcCiAgICAgRE9NQ1NTVW5rbm93blJ1
bGUuaCBcCiAgICAgRE9NQ1NTVmFsdWUuaCBcCiAgICAgRE9NQ1NTVmFsdWVMaXN0LmggXAogICAg
IERPTUNoYXJhY3RlckRhdGEuaCBcCisgICAgRE9NQ2hhcmFjdGVyRGF0YVByaXZhdGUuaCBcCiAg
ICAgRE9NQ29tbWVudC5oIFwKICAgICBET01Db3JlLmggXAogICAgIERPTUNvdW50ZXIuaCBcCiAg
ICAgRE9NRE9NSW1wbGVtZW50YXRpb24uaCBcCisgICAgRE9NRE9NSW1wbGVtZW50YXRpb25Qcml2
YXRlLmggXAogICAgIERPTURvY3VtZW50LmggXAogICAgIERPTURvY3VtZW50RnJhZ21lbnQuaCBc
CisgICAgRE9NRG9jdW1lbnRQcml2YXRlLmggXAogICAgIERPTURvY3VtZW50VHlwZS5oIFwKICAg
ICBET01FbGVtZW50LmggXAorICAgIERPTUVsZW1lbnRQcml2YXRlLmggXAogICAgIERPTUVudGl0
eS5oIFwKICAgICBET01FbnRpdHlSZWZlcmVuY2UuaCBcCiAgICAgRE9NRXZlbnRzLmggXAogICAg
IERPTUV4dGVuc2lvbnMuaCBcCiAgICAgRE9NSFRNTC5oIFwKICAgICBET01IVE1MQW5jaG9yRWxl
bWVudC5oIFwKKyAgICBET01IVE1MQW5jaG9yRWxlbWVudFByaXZhdGUuaCBcCiAgICAgRE9NSFRN
TEFwcGxldEVsZW1lbnQuaCBcCiAgICAgRE9NSFRNTEFyZWFFbGVtZW50LmggXAorICAgIERPTUhU
TUxBcmVhRWxlbWVudFByaXZhdGUuaCBcCiAgICAgRE9NSFRNTEJSRWxlbWVudC5oIFwKICAgICBE
T01IVE1MQmFzZUVsZW1lbnQuaCBcCiAgICAgRE9NSFRNTEJhc2VGb250RWxlbWVudC5oIFwKICAg
ICBET01IVE1MQm9keUVsZW1lbnQuaCBcCisgICAgRE9NSFRNTEJvZHlFbGVtZW50UHJpdmF0ZS5o
IFwKICAgICBET01IVE1MQnV0dG9uRWxlbWVudC5oIFwKKyAgICBET01IVE1MQnV0dG9uRWxlbWVu
dFByaXZhdGUuaCBcCiAgICAgRE9NSFRNTENvbGxlY3Rpb24uaCBcCiAgICAgRE9NSFRNTERMaXN0
RWxlbWVudC5oIFwKICAgICBET01IVE1MRGlyZWN0b3J5RWxlbWVudC5oIFwKQEAgLTg1LDEyICs5
NywxNyBAQCBhbGwgOiBcCiAgICAgRE9NSFRNTEh0bWxFbGVtZW50LmggXAogICAgIERPTUhUTUxJ
RnJhbWVFbGVtZW50LmggXAogICAgIERPTUhUTUxJbWFnZUVsZW1lbnQuaCBcCisgICAgRE9NSFRN
TEltYWdlRWxlbWVudFByaXZhdGUuaCBcCiAgICAgRE9NSFRNTElucHV0RWxlbWVudC5oIFwKKyAg
ICBET01IVE1MSW5wdXRFbGVtZW50UHJpdmF0ZS5oIFwKICAgICBET01IVE1MSXNJbmRleEVsZW1l
bnQuaCBcCiAgICAgRE9NSFRNTExJRWxlbWVudC5oIFwKICAgICBET01IVE1MTGFiZWxFbGVtZW50
LmggXAorICAgIERPTUhUTUxMYWJlbEVsZW1lbnRQcml2YXRlLmggXAogICAgIERPTUhUTUxMZWdl
bmRFbGVtZW50LmggXAorICAgIERPTUhUTUxMZWdlbmRFbGVtZW50UHJpdmF0ZS5oIFwKICAgICBE
T01IVE1MTGlua0VsZW1lbnQuaCBcCisgICAgRE9NSFRNTExpbmtFbGVtZW50UHJpdmF0ZS5oIFwK
ICAgICBET01IVE1MTWFwRWxlbWVudC5oIFwKICAgICBET01IVE1MTWVudUVsZW1lbnQuaCBcCiAg
ICAgRE9NSFRNTE1ldGFFbGVtZW50LmggXApAQCAtMTAwLDEzICsxMTcsMTcgQEAgYWxsIDogXAog
ICAgIERPTUhUTUxPcHRHcm91cEVsZW1lbnQuaCBcCiAgICAgRE9NSFRNTE9wdGlvbkVsZW1lbnQu
aCBcCiAgICAgRE9NSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmggXAorICAgIERPTUhUTUxPcHRpb25z
Q29sbGVjdGlvblByaXZhdGUuaCBcCiAgICAgRE9NSFRNTFBhcmFncmFwaEVsZW1lbnQuaCBcCiAg
ICAgRE9NSFRNTFBhcmFtRWxlbWVudC5oIFwKICAgICBET01IVE1MUHJlRWxlbWVudC5oIFwKKyAg
ICBET01IVE1MUHJlRWxlbWVudFByaXZhdGUuaCBcCiAgICAgRE9NSFRNTFF1b3RlRWxlbWVudC5o
IFwKICAgICBET01IVE1MU2NyaXB0RWxlbWVudC5oIFwKICAgICBET01IVE1MU2VsZWN0RWxlbWVu
dC5oIFwKKyAgICBET01IVE1MU2VsZWN0RWxlbWVudFByaXZhdGUuaCBcCiAgICAgRE9NSFRNTFN0
eWxlRWxlbWVudC5oIFwKKyAgICBET01IVE1MU3R5bGVFbGVtZW50UHJpdmF0ZS5oIFwKICAgICBE
T01IVE1MVGFibGVDYXB0aW9uRWxlbWVudC5oIFwKICAgICBET01IVE1MVGFibGVDZWxsRWxlbWVu
dC5oIFwKICAgICBET01IVE1MVGFibGVDb2xFbGVtZW50LmggXApAQCAtMTE0LDE3ICsxMzUsMjAg
QEAgYWxsIDogXAogICAgIERPTUhUTUxUYWJsZVJvd0VsZW1lbnQuaCBcCiAgICAgRE9NSFRNTFRh
YmxlU2VjdGlvbkVsZW1lbnQuaCBcCiAgICAgRE9NSFRNTFRleHRBcmVhRWxlbWVudC5oIFwKKyAg
ICBET01IVE1MVGV4dEFyZWFFbGVtZW50UHJpdmF0ZS5oIFwKICAgICBET01IVE1MVGl0bGVFbGVt
ZW50LmggXAogICAgIERPTUhUTUxVTGlzdEVsZW1lbnQuaCBcCiAgICAgRE9NTGlzdC5oIFwKICAg
ICBET01NZWRpYUxpc3QuaCBcCiAgICAgRE9NTmFtZWROb2RlTWFwLmggXAorICAgIERPTU5hbWVk
Tm9kZU1hcFByaXZhdGUuaCBcCiAgICAgRE9NTm9kZS5oIFwKICAgICBET01Ob2RlTGlzdC5oIFwK
ICAgICBET01Ob3RhdGlvbi5oIFwKICAgICBET01PYmplY3QuaCBcCiAgICAgRE9NUHJpdmF0ZS5o
IFwKICAgICBET01Qcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaCBcCisgICAgRE9NUHJvY2Vzc2luZ0lu
c3RydWN0aW9uUHJpdmF0ZS5oIFwKICAgICBET01SR0JDb2xvci5oIFwKICAgICBET01SYW5nZS5o
IFwKICAgICBET01SZWN0LmggXApAQCAtMTQxLDE3ICsxNjUsMzMgQEAgYWxsIDogXAogICAgIG5w
cnVudGltZS5oIFwKICMKIAotRE9NLmggOiAkKFdFQkNPUkVfUFJJVkFURV9IRUFERVJTX0RJUikv
RE9NLmgKLQlzZWQgLWUgcy9XZWJDb3JlL1dlYktpdC8gIiQ8IiA+ICIkKFRBUkdFVF9CVUlMRF9E
SVIpLyQoUFVCTElDX0hFQURFUlNfRk9MREVSX1BBVEgpLyRAIgorUkVQTEFDRV9DT01NQU5EUyA9
IC1lIHMvV2ViQ29yZS9XZWJLaXQvIC1lIHMvSmF2YVNjcmlwdENvcmUvV2ViS2l0LyAtZSBzL0RP
TURPTUltcGxlbWVudGF0aW9uL0RPTUltcGxlbWVudGF0aW9uLworUFJJVkFURV9IRUFERVJfTUlH
UkFURSA9IHNlZCAkKFJFUExBQ0VfQ09NTUFORFMpICIkPCIgPiAiJChUQVJHRVRfQlVJTERfRElS
KS8kKFBSSVZBVEVfSEVBREVSU19GT0xERVJfUEFUSCkvJEAiCitQVUJMSUNfSEVBREVSX01JR1JB
VEUgPSBzZWQgJChSRVBMQUNFX0NPTU1BTkRTKSAiJDwiID4gIiQoVEFSR0VUX0JVSUxEX0RJUikv
JChQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSCkvJEAiCisKK1dlYkRhc2hib2FyZFJlZ2lvbi5o
IDogJChXRUJDT1JFX1BSSVZBVEVfSEVBREVSU19ESVIpL1dlYkRhc2hib2FyZFJlZ2lvbi5oCisJ
JChQUklWQVRFX0hFQURFUl9NSUdSQVRFKQogCiBET01Qcml2YXRlLmggOiAkKFdFQkNPUkVfUFJJ
VkFURV9IRUFERVJTX0RJUikvRE9NUHJpdmF0ZS5oCi0Jc2VkIC1lIHMvV2ViQ29yZS9XZWJLaXQv
ICIkPCIgPiAiJChUQVJHRVRfQlVJTERfRElSKS8kKFBSSVZBVEVfSEVBREVSU19GT0xERVJfUEFU
SCkvJEAiCisJJChQUklWQVRFX0hFQURFUl9NSUdSQVRFKQorCitET01ET01JbXBsZW1lbnRhdGlv
blByaXZhdGUuaCA6ICQoV0VCQ09SRV9QUklWQVRFX0hFQURFUlNfRElSKS9ET01ET01JbXBsZW1l
bnRhdGlvblByaXZhdGUuaAorCXNlZCAkKFJFUExBQ0VfQ09NTUFORFMpICIkPCIgPiAiJChUQVJH
RVRfQlVJTERfRElSKS8kKFBSSVZBVEVfSEVBREVSU19GT0xERVJfUEFUSCkvRE9NSW1wbGVtZW50
YXRpb25Qcml2YXRlLmgiCisKK0RPTSVQcml2YXRlLmggOiAkKFdFQkNPUkVfUFJJVkFURV9IRUFE
RVJTX0RJUikvRE9NJVByaXZhdGUuaAorCSQoUFJJVkFURV9IRUFERVJfTUlHUkFURSkKKworRE9N
LmggOiAkKFdFQkNPUkVfUFJJVkFURV9IRUFERVJTX0RJUikvRE9NLmgKKwkkKFBVQkxJQ19IRUFE
RVJfTUlHUkFURSkKKworRE9NRE9NSW1wbGVtZW50YXRpb24uaCA6ICQoV0VCQ09SRV9QUklWQVRF
X0hFQURFUlNfRElSKS9ET01ET01JbXBsZW1lbnRhdGlvbi5oCisJc2VkICQoUkVQTEFDRV9DT01N
QU5EUykgIiQ8IiA+ICIkKFRBUkdFVF9CVUlMRF9ESVIpLyQoUFJJVkFURV9IRUFERVJTX0ZPTERF
Ul9QQVRIKS9ET01JbXBsZW1lbnRhdGlvbi5oIgogCiBET00lLmggOiAkKFdFQkNPUkVfUFJJVkFU
RV9IRUFERVJTX0RJUikvRE9NJS5oCi0Jc2VkIC1lIHMvV2ViQ29yZS9XZWJLaXQvICIkPCIgPiAi
JChUQVJHRVRfQlVJTERfRElSKS8kKFBVQkxJQ19IRUFERVJTX0ZPTERFUl9QQVRIKS8kQCIKKwkk
KFBVQkxJQ19IRUFERVJfTUlHUkFURSkKIAogV2ViJS5oIDogJChXRUJDT1JFX1BSSVZBVEVfSEVB
REVSU19ESVIpL1dlYiUuaAotCXNlZCAtZSBzL1dlYkNvcmUvV2ViS2l0LyAiJDwiID4gIiQoVEFS
R0VUX0JVSUxEX0RJUikvJChQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSCkvJEAiCisJJChQVUJM
SUNfSEVBREVSX01JR1JBVEUpCiAKIG5wJS5oIDogJChKQVZBU0NSSVBUQ09SRV9QUklWQVRFX0hF
QURFUlNfRElSKS9ucCUuaAotCXNlZCAtZSBzL0phdmFTY3JpcHRDb3JlL1dlYktpdC8gIiQ8IiA+
ICIkKFRBUkdFVF9CVUlMRF9ESVIpLyQoUFVCTElDX0hFQURFUlNfRk9MREVSX1BBVEgpLyRAIgor
CSQoUFVCTElDX0hFQURFUl9NSUdSQVRFKQo=
</data>
<flag name="review"
          id="3319"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>