<?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>58509</bug_id>
          
          <creation_ts>2011-04-13 20:14:32 -0700</creation_ts>
          <short_desc>Add a sample test case for GTest framework</short_desc>
          <delta_ts>2011-04-15 12:07:48 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>58507</dependson>
          <blocked>21010</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Dmitry Lomov">dslomov</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dslomov</cc>
    
    <cc>eric</cc>
    
    <cc>levin</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>385470</commentid>
    <comment_count>0</comment_count>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-04-13 20:14:32 -0700</bug_when>
    <thetext>Add a sample test case and a runner for WebKit and GTest framework</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385480</commentid>
    <comment_count>1</comment_count>
      <attachid>89523</attachid>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-04-13 20:42:33 -0700</bug_when>
    <thetext>Created attachment 89523
Example test case for GTest in JavaScriptCore</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385995</commentid>
    <comment_count>2</comment_count>
      <attachid>89523</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2011-04-14 13:27:10 -0700</bug_when>
    <thetext>Comment on attachment 89523
Example test case for GTest in JavaScriptCore

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

Just a few suggestions.

&gt; Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:3435
&gt; +			buildSettings = {

Let&apos;s try to trim this down.

&gt; Source/JavaScriptCore/wtf/tests/RunAllWtfTests.cpp:35
&gt; +int main(int argc, char **argv) {

The { needs to be on the next line.

&gt; Source/JavaScriptCore/wtf/tests/RunAllWtfTests.cpp:36
&gt; +    std::cout &lt;&lt; &quot;Running main() from gtest_main.cc\n&quot;;

Avoid stream io for consistency for the rest of WebKit.

&gt; Source/JavaScriptCore/wtf/tests/StringTests.cpp:41
&gt; +TEST_F(CStringTest, TestLength) {

{ on next line.

&gt; Source/ThirdParty/gtest/xcode/gtest.xcodeproj/project.pbxproj:581
&gt; +			developmentRegion = English;

Remove this to keep us the same as upstream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386049</commentid>
    <comment_count>3</comment_count>
      <attachid>89654</attachid>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-04-14 14:41:07 -0700</bug_when>
    <thetext>Created attachment 89654
Example test case for GTest in JavaScriptCore

Code review feedback addressed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386057</commentid>
    <comment_count>4</comment_count>
      <attachid>89654</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2011-04-14 14:49:34 -0700</bug_when>
    <thetext>Comment on attachment 89654
Example test case for GTest in JavaScriptCore

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

Your change is inverted. Other than that and the minor issue below. It looks fine.

&gt; ChangeLog:194
&gt; +2011-03-28  Adam Barth  &lt;abarth@webkit.org&gt;

Get rid of this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386065</commentid>
    <comment_count>5</comment_count>
      <attachid>89660</attachid>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-04-14 14:54:00 -0700</bug_when>
    <thetext>Created attachment 89660
Example test case for GTest in JavaScriptCore

Reversed the diff direction + removed typo in ChangeLog - sorry about that!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386068</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-14 14:56:21 -0700</bug_when>
    <thetext>Attachment 89660 did not pass style-queue:

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

Source/JavaScriptCore/wtf/tests/RunAllWtfTests.cpp:31:  Found other header before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Source/JavaScriptCore/wtf/tests/RunAllWtfTests.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/wtf/tests/StringTests.cpp:32:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 3 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386077</commentid>
    <comment_count>7</comment_count>
      <attachid>89664</attachid>
    <who name="Dmitry Lomov">dslomov</who>
    <bug_when>2011-04-14 15:05:19 -0700</bug_when>
    <thetext>Created attachment 89664
Example test case for GTest in JavaScriptCore

Try n+1 - addressing style issues (check-webkit-style still complains about absence of a primary headers)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386082</commentid>
    <comment_count>8</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2011-04-14 15:08:40 -0700</bug_when>
    <thetext>Yea!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386088</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-14 15:11:09 -0700</bug_when>
    <thetext>Attachment 89664 did not pass style-queue:

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

Source/JavaScriptCore/wtf/tests/RunAllWtfTests.cpp:32:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Source/JavaScriptCore/wtf/tests/StringTests.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 2 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386617</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-15 07:51:41 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 89664:

http/tests/xmlhttprequest/cross-origin-no-authorization.html bug 33357 (author: ap@webkit.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386622</commentid>
    <comment_count>11</comment_count>
      <attachid>89664</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-15 07:55:35 -0700</bug_when>
    <thetext>Comment on attachment 89664
Example test case for GTest in JavaScriptCore

Clearing flags on attachment: 89664

Committed r83974: &lt;http://trac.webkit.org/changeset/83974&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386623</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-15 07:55:43 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386788</commentid>
    <comment_count>13</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2011-04-15 11:53:10 -0700</bug_when>
    <thetext>What is this and why do we need it?

This GTest stuff causes an error on systems that don&apos;t have $(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk. It should not have an SDK and use the current system.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386791</commentid>
    <comment_count>14</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-04-15 11:55:17 -0700</bug_when>
    <thetext>The desire for WebCore unit testing goes waay waay back.  See bug 21010.  That said, I know nothing about this current effort.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386805</commentid>
    <comment_count>15</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2011-04-15 12:07:48 -0700</bug_when>
    <thetext>Filed bug 58679</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89523</attachid>
            <date>2011-04-13 20:42:33 -0700</date>
            <delta_ts>2011-04-14 14:41:07 -0700</delta_ts>
            <desc>Example test case for GTest in JavaScriptCore</desc>
            <filename>adding-test-case.patch</filename>
            <type>text/plain</type>
            <size>21848</size>
            <attacher name="Dmitry Lomov">dslomov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDE4ZmE1NjUuLmI4ZTdiMjUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTA0LTEzICBEbWl0cnkgTG9tb3Yg
IDxkc2xvbW92QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIGEgc2FtcGxlIHRlc3QgY2FzZSBmb3IgR1Rlc3QgZnJhbWV3b3Jr
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODUwOQor
CisgICAgICAgIEFkZCBhbiBleGFtcGxlIG9mIEdUZXN0IHRlc3RjYXNlLCBjb21wbGV0ZSB3aXRo
IGEgcnVubmVyLCB0byBKYXZhU2NyaXB0Q29yZS4KKworICAgICAgICAqIEphdmFTY3JpcHRDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL3Rlc3RzL1J1bkFsbFd0
ZlRlc3RzLmNwcDogQWRkZWQuCisgICAgICAgIChtYWluKToKKyAgICAgICAgKiB3dGYvdGVzdHMv
U3RyaW5nVGVzdHMuY3BwOiBBZGRlZC4KKwogMjAxMS0wNC0xMiAgR2F2aW4gQmFycmFjbG91Z2gg
IDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1
bnQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDIxNzNlZmYuLjU3ZjFmYjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTQsNiArNTk0LDEwIEBACiAJCUU0OURD
MTZDMTJFRjI5NEUwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDlEQzE1MTEyRUYyNzIyMDAxODRB
MUYgLyogU291cmNlUHJvdmlkZXJDYWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCUU0OURDMTZEMTJFRjI5NTMwMDE4NEExRiAvKiBTb3VyY2VQ
cm92aWRlckNhY2hlSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTQ5REMxNDkxMkVGMjYxQTAwMTg0QTFGIC8qIFNvdXJjZVByb3ZpZGVyQ2FjaGVJ
dGVtLmggKi87IH07CiAJCUU0RDhDRUZCMTJGQzQzOTYwMEJDOUY1QSAvKiBCbG9vbUZpbHRlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTREOENFOUIx
MkZDNDJFMTAwQkM5RjVBIC8qIEJsb29tRmlsdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjMzRUUyRDgxMzU2NzlDQzAwRTA5RTY1IC8qIGxp
Ymd0ZXN0LmEgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBGMzNFRTBFNTEzNTY3OENBMDBFMDlFNjUgLyogbGliZ3Rlc3QuYSAqLzsgfTsKKwkJRjMzRUU0
RkExMzU2OTcyOTAwRTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEYzM0VFNEY5MTM1Njk3MjkwMEUwOUU2NSAvKiBT
dHJpbmdUZXN0cy5jcHAgKi87IH07CisJCUYzQkJBRUI1MTM1NjU3M0EwMENCRDQxNCAvKiBKYXZh
U2NyaXB0Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzJGNUJEOTA4MjJBMUM3MDA3MzY5NzUgLyogSmF2YVNjcmlwdENvcmUu
ZnJhbWV3b3JrICovOyB9OworCQlGM0JCQUYwRTEzNTY2NjJFMDBDQkQ0MTQgLyogUnVuQWxsV3Rm
VGVzdHMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RjNCQkFGMEQxMzU2NjYyRTAwQ0JENDE0IC8qIFJ1bkFsbFd0ZlRlc3RzLmNwcCAqLzsgfTsKIAkJ
RjNCRDMxRUQxMjY3MzU3NzAwNjU0NjdGIC8qIFRleHRQb3NpdGlvbi5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjNCRDMxRDAxMjY3MzAxODAwNjU0NjdG
IC8qIFRleHRQb3NpdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCUZEQTE1QzFFMTJCMDMwNUMwMDNBNTgzQSAvKiBDb21wbGV4LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGREExNUMxNjEyQjAzMDI4
MDAzQTU4M0EgLyogQ29tcGxleC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCUZFMUI0NDdBMEVDQ0Q3M0IwMDRGNEREMSAvKiBTdGRMaWJFeHRyYXMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMUI0NDc5
MEVDQ0Q3M0IwMDRGNEREMSAvKiBTdGRMaWJFeHRyYXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNjU2LDYgKzY2MCw1NSBAQAogCQkJcmVtb3Rl
R2xvYmFsSURTdHJpbmcgPSA5MzJGNUJEQTA4MjJBMUM3MDA3MzY5NzU7CiAJCQlyZW1vdGVJbmZv
ID0gImpzYyAoVXBncmFkZWQpIjsKIAkJfTsKKwkJRjMzRUUwRTIxMzU2NzhDQTAwRTA5RTY1IC8q
IFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Q
cm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBn
dGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURT
dHJpbmcgPSA0NTM5QzhGRjBFQzI3RjY0MDBBNzBGNEMgLyogZ3Rlc3QuZnJhbWV3b3JrICovOwor
CQkJcmVtb3RlSW5mbyA9ICJndGVzdC1mcmFtZXdvcmsiOworCQl9OworCQlGMzNFRTBFNDEzNTY3
OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geworCQkJaXNhID0gUEJY
Q29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9ydGFsID0gRjMzRUUwRDMxMzU2NzhD
QTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKKwkJCXByb3h5VHlwZSA9IDI7CisJCQly
ZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OEZBMTAxQTIwOUMwMDgzNjQyQSAvKiBsaWJndGVz
dC5hICovOworCQkJcmVtb3RlSW5mbyA9ICJndGVzdC1zdGF0aWMiOworCQl9OworCQlGMzNFRTBF
NjEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geworCQkJaXNh
ID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9ydGFsID0gRjMzRUUwRDMx
MzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKKwkJCXByb3h5VHlwZSA9IDI7
CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OTBCMTAxQTIxN0UwMDgzNjQyQSAvKiBs
aWJndGVzdF9tYWluLmEgKi87CisJCQlyZW1vdGVJbmZvID0gImd0ZXN0X21haW4tc3RhdGljIjsK
KwkJfTsKKwkJRjMzRUUwRTgxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94
eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBv
cnRhbCA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi87CisJ
CQlwcm94eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA0MDg5OUY0MzBGRkE3
MTg0MDAwQjI5QUUgLyogZ3Rlc3RfdW5pdHRlc3QtZnJhbWV3b3JrICovOworCQkJcmVtb3RlSW5m
byA9ICJndGVzdF91bml0dGVzdC1mcmFtZXdvcmsiOworCQl9OworCQlGMzNFRTBFQTEzNTY3OENB
MDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geworCQkJaXNhID0gUEJYQ29u
dGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9ydGFsID0gRjMzRUUwRDMxMzU2NzhDQTAw
RTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKKwkJCXByb3h5VHlwZSA9IDI7CisJCQlyZW1v
dGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OTg3MTAxQTM2ODUwMDgzNjQyQSAvKiBndGVzdF91bml0
dGVzdCAqLzsKKwkJCXJlbW90ZUluZm8gPSAiZ3Rlc3RfdW5pdHRlc3Qtc3RhdGljIjsKKwkJfTsK
KwkJRjMzRUUwRUMxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9
IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9
IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94
eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA0MDg5QTAxMzBGRkFDRUZDMDAw
QjI5QUUgLyogc2FtcGxlMV91bml0dGVzdC1mcmFtZXdvcmsgKi87CisJCQlyZW1vdGVJbmZvID0g
InNhbXBsZTFfdW5pdHRlc3QtZnJhbWV3b3JrIjsKKwkJfTsKKwkJRjMzRUUwRUUxMzU2NzhDQTAw
RTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRh
aW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUw
OUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAyOworCQkJcmVtb3Rl
R2xvYmFsSURTdHJpbmcgPSA0MEM4NDk5NzEwMUEzNkE2MDA4MzY0MkEgLyogc2FtcGxlMV91bml0
dGVzdC1zdGF0aWMgKi87CisJCQlyZW1vdGVJbmZvID0gInNhbXBsZTFfdW5pdHRlc3Qtc3RhdGlj
IjsKKwkJfTsKIC8qIEVuZCBQQlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLwogCiAvKiBC
ZWdpbiBQQlhDb3B5RmlsZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KQEAgLTEyNDUsNiArMTI5OCwx
MCBAQAogCQlFNDlEQzE1MTEyRUYyNzIyMDAxODRBMUYgLyogU291cmNlUHJvdmlkZXJDYWNoZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb3VyY2VQcm92aWRlckNhY2hlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUU0OURDMTU1MTJFRjI3NzIwMDE4NEExRiAv
KiBTb3VyY2VQcm92aWRlckNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNvdXJjZVByb3ZpZGVyQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlFNEQ4Q0U5QjEyRkM0MkUxMDBCQzlGNUEgLyogQmxvb21GaWx0ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvb21GaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9ICJ3cmFwcGVy
LnBiLXByb2plY3QiOyBuYW1lID0gZ3Rlc3QueGNvZGVwcm9qOyBwYXRoID0gLi4vVGhpcmRQYXJ0
eS9ndGVzdC94Y29kZS9ndGVzdC54Y29kZXByb2o7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsg
fTsKKwkJRjMzRUU0RjkxMzU2OTcyOTAwRTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFN0cmluZ1Rlc3RzLmNwcDsgcGF0aCA9IHRl
c3RzL1N0cmluZ1Rlc3RzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjNCQkFF
QUYxMzU2NTcyRjAwQ0JENDE0IC8qIHd0ZnRlc3RzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGV4cGxpY2l0RmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmV4ZWN1dGFibGUiOyBpbmNs
dWRlSW5JbmRleCA9IDA7IHBhdGggPSB3dGZ0ZXN0czsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJRjNCQkFGMEQxMzU2NjYyRTAwQ0JENDE0IC8qIFJ1bkFsbFd0ZlRlc3Rz
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFJ1bkFsbFd0ZlRlc3Rz
LmNwcDsgcGF0aCA9IHRlc3RzL1J1bkFsbFd0ZlRlc3RzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJRjNCRDMxRDAxMjY3MzAxODAwNjU0NjdGIC8qIFRleHRQb3NpdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBUZXh0UG9zaXRpb24uaDsgcGF0aCA9IHRl
eHQvVGV4dFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY1QkIyQkM1
MDMwRjc3MjEwMUZDRkUxRCAvKiBDb21wbGV0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbXBsZXRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9OwogCQlGNUMyOTBFNjAyODRGOThFMDE4NjM1Q0EgLyog
SmF2YVNjcmlwdENvcmVQcmVmaXguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSmF2YVNjcmlwdENvcmVQcmVmaXguaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9OwpAQCAtMTMyMiw2ICsxMzc5LDE1IEBACiAJCQkpOwog
CQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CisJCUYzQkJB
RUFEMTM1NjU3MkYwMENCRDQxNCAvKiBGcmFtZXdvcmtzICovID0geworCQkJaXNhID0gUEJYRnJh
bWV3b3Jrc0J1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJ
ZmlsZXMgPSAoCisJCQkJRjMzRUUyRDgxMzU2NzlDQzAwRTA5RTY1IC8qIGxpYmd0ZXN0LmEgaW4g
RnJhbWV3b3JrcyAqLywKKwkJCQlGM0JCQUVCNTEzNTY1NzNBMDBDQkQ0MTQgLyogSmF2YVNjcmlw
dENvcmUuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCisJCQkpOworCQkJcnVuT25seUZvckRl
cGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CiAvKiBFbmQgUEJYRnJhbWV3b3Jrc0J1
aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhHcm91cCBzZWN0aW9uICovCkBAIC0x
MzMyLDYgKzEzOTgsNyBAQAogCQkJCTkzMkY1QkUxMDgyMkExQzcwMDczNjk3NSAvKiBqc2MgKi8s
CiAJCQkJMTQxMjExMjAwQTQ4NzkzQzAwNDgwMjU1IC8qIG1pbmlkb20gKi8sCiAJCQkJMTRCRDU5
QkYwQTNFOEY5MDAwQkFGNTlDIC8qIHRlc3RhcGkgKi8sCisJCQkJRjNCQkFFQUYxMzU2NTcyRjAw
Q0JENDE0IC8qIHd0ZnRlc3RzICovLAogCQkJKTsKIAkJCW5hbWUgPSBQcm9kdWN0czsKIAkJCXNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC0xMzQ5LDYgKzE0MTYsNyBAQAogCQkwODY3RDY5MUZF
ODQwMjhGQzAyQUFDMDcgLyogSmF2YVNjcmlwdENvcmUgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91
cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCUYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVz
dC54Y29kZXByb2ogKi8sCiAJCQkJQTcxOEY4MjExMTc4RUI0QjAwMjQ2NUE3IC8qIGNyZWF0ZV9y
ZWdleF90YWJsZXMgKi8sCiAJCQkJOTM3QjYzQ0MwOUU3NjZEMjAwQTY3MUREIC8qIERlcml2ZWRT
b3VyY2VzLm1ha2UgKi8sCiAJCQkJRjY5MkE4NTQwMjU1NTk3RDAxRkY2MEY3IC8qIGNyZWF0ZV9o
YXNoX3RhYmxlICovLApAQCAtMTYwMCw2ICsxNjY4LDcgQEAKIAkJNjUxNjJFRjEwOEU2QTIxQzAw
NzU1NkNEIC8qIHd0ZiAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAo
CisJCQkJRjNCQkE4Q0ExMzU2NEVFRDAwQ0JENDE0IC8qIHRlc3RzICovLAogCQkJCUE3QzQwQzA3
MTMwQjA1N0QwMEQwMDJBMSAvKiBCbG9ja1N0YWNrLmggKi8sCiAJCQkJQTdDNDBDMDgxMzBCMDU3
RDAwRDAwMkExIC8qIFNlbnRpbmVsTGlua2VkTGlzdC5oICovLAogCQkJCUE3QzQwQzA5MTMwQjA1
N0QwMEQwMDJBMSAvKiBTaW5nbHlMaW5rZWRMaXN0LmggKi8sCkBAIC0yMTcyLDYgKzIyNDEsMjkg
QEAKIAkJCXBhdGggPSBpY3U7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwogCQl9OworCQlG
MzNFRTBENDEzNTY3OENBMDBFMDlFNjUgLyogUHJvZHVjdHMgKi8gPSB7CisJCQlpc2EgPSBQQlhH
cm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUYzM0VFMEUzMTM1Njc4Q0EwMEUwOUU2NSAvKiBn
dGVzdC5mcmFtZXdvcmsgKi8sCisJCQkJRjMzRUUwRTUxMzU2NzhDQTAwRTA5RTY1IC8qIGxpYmd0
ZXN0LmEgKi8sCisJCQkJRjMzRUUwRTcxMzU2NzhDQTAwRTA5RTY1IC8qIGxpYmd0ZXN0X21haW4u
YSAqLywKKwkJCQlGMzNFRTBFOTEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3RfdW5pdHRlc3QtZnJh
bWV3b3JrICovLAorCQkJCUYzM0VFMEVCMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdF91bml0dGVz
dCAqLywKKwkJCQlGMzNFRTBFRDEzNTY3OENBMDBFMDlFNjUgLyogc2FtcGxlMV91bml0dGVzdC1m
cmFtZXdvcmsgKi8sCisJCQkJRjMzRUUwRUYxMzU2NzhDQTAwRTA5RTY1IC8qIHNhbXBsZTFfdW5p
dHRlc3Qtc3RhdGljICovLAorCQkJKTsKKwkJCW5hbWUgPSBQcm9kdWN0czsKKwkJCXNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUYzQkJBOENBMTM1NjRFRUQwMENCRDQxNCAvKiB0ZXN0
cyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRjMzRUU0
RjkxMzU2OTcyOTAwRTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNwcCAqLywKKwkJCQlGM0JCQUYwRDEz
NTY2NjJFMDBDQkQ0MTQgLyogUnVuQWxsV3RmVGVzdHMuY3BwICovLAorCQkJKTsKKwkJCW5hbWUg
PSB0ZXN0czsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CiAvKiBFbmQgUEJYR3Jv
dXAgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhIZWFkZXJzQnVpbGRQaGFzZSBzZWN0aW9uICov
CkBAIC0yNjIyLDYgKzI3MTQsMjIgQEAKIAkJCXByb2R1Y3RSZWZlcmVuY2UgPSA5MzJGNUJFMTA4
MjJBMUM3MDA3MzY5NzUgLyoganNjICovOwogCQkJcHJvZHVjdFR5cGUgPSAiY29tLmFwcGxlLnBy
b2R1Y3QtdHlwZS50b29sIjsKIAkJfTsKKwkJRjNCQkFFQUUxMzU2NTcyRjAwQ0JENDE0IC8qIHd0
ZnRlc3RzICovID0geworCQkJaXNhID0gUEJYTmF0aXZlVGFyZ2V0OworCQkJYnVpbGRDb25maWd1
cmF0aW9uTGlzdCA9IEYzQkJBRUJCMTM1NjU3NEQwMENCRDQxNCAvKiBCdWlsZCBjb25maWd1cmF0
aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAid3RmdGVzdHMiICovOworCQkJYnVpbGRQaGFz
ZXMgPSAoCisJCQkJRjNCQkFFQUMxMzU2NTcyRjAwQ0JENDE0IC8qIFNvdXJjZXMgKi8sCisJCQkJ
RjNCQkFFQUQxMzU2NTcyRjAwQ0JENDE0IC8qIEZyYW1ld29ya3MgKi8sCisJCQkpOworCQkJYnVp
bGRSdWxlcyA9ICgKKwkJCSk7CisJCQlkZXBlbmRlbmNpZXMgPSAoCisJCQkpOworCQkJbmFtZSA9
IHd0ZnRlc3RzOworCQkJcHJvZHVjdE5hbWUgPSB3dGZ0ZXN0czsKKwkJCXByb2R1Y3RSZWZlcmVu
Y2UgPSBGM0JCQUVBRjEzNTY1NzJGMDBDQkQ0MTQgLyogd3RmdGVzdHMgKi87CisJCQlwcm9kdWN0
VHlwZSA9ICJjb20uYXBwbGUucHJvZHVjdC10eXBlLnRvb2wiOworCQl9OwogLyogRW5kIFBCWE5h
dGl2ZVRhcmdldCBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWFByb2plY3Qgc2VjdGlvbiAqLwpA
QCAtMjY0Myw2ICsyNzUxLDEyIEBACiAJCQltYWluR3JvdXAgPSAwODY3RDY5MUZFODQwMjhGQzAy
QUFDMDcgLyogSmF2YVNjcmlwdENvcmUgKi87CiAJCQlwcm9kdWN0UmVmR3JvdXAgPSAwMzQ3NjhE
RkZGMzhBNTA0MTFEQjlDOEIgLyogUHJvZHVjdHMgKi87CiAJCQlwcm9qZWN0RGlyUGF0aCA9ICIi
OworCQkJcHJvamVjdFJlZmVyZW5jZXMgPSAoCisJCQkJeworCQkJCQlQcm9kdWN0R3JvdXAgPSBG
MzNFRTBENDEzNTY3OENBMDBFMDlFNjUgLyogUHJvZHVjdHMgKi87CisJCQkJCVByb2plY3RSZWYg
PSBGMzNFRTBEMzEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3QueGNvZGVwcm9qICovOworCQkJCX0s
CisJCQkpOwogCQkJcHJvamVjdFJvb3QgPSAiIjsKIAkJCXRhcmdldHMgPSAoCiAJCQkJOTMyRjVC
RTMwODIyQTFDNzAwNzM2OTc1IC8qIEFsbCAqLywKQEAgLTI2NTEsMTAgKzI3NjUsNjMgQEAKIAkJ
CQkxNDEyMTExRjBBNDg3OTNDMDA0ODAyNTUgLyogbWluaWRvbSAqLywKIAkJCQkxNEJENTlCRTBB
M0U4RjkwMDBCQUY1OUMgLyogdGVzdGFwaSAqLywKIAkJCQk5MzJGNUJEQTA4MjJBMUM3MDA3MzY5
NzUgLyoganNjICovLAorCQkJCUYzQkJBRUFFMTM1NjU3MkYwMENCRDQxNCAvKiB3dGZ0ZXN0cyAq
LywKIAkJCSk7CiAJCX07CiAvKiBFbmQgUEJYUHJvamVjdCBzZWN0aW9uICovCiAKKy8qIEJlZ2lu
IFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8KKwkJRjMzRUUwRTMxMzU2NzhDQTAwRTA5RTY1
IC8qIGd0ZXN0LmZyYW1ld29yayAqLyA9IHsKKwkJCWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5Owor
CQkJZmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsKKwkJCXBhdGggPSBndGVzdC5mcmFtZXdv
cms7CisJCQlyZW1vdGVSZWYgPSBGMzNFRTBFMjEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFp
bmVySXRlbVByb3h5ICovOworCQkJc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJ
fTsKKwkJRjMzRUUwRTUxMzU2NzhDQTAwRTA5RTY1IC8qIGxpYmd0ZXN0LmEgKi8gPSB7CisJCQlp
c2EgPSBQQlhSZWZlcmVuY2VQcm94eTsKKwkJCWZpbGVUeXBlID0gYXJjaGl2ZS5hcjsKKwkJCXBh
dGggPSBsaWJndGVzdC5hOworCQkJcmVtb3RlUmVmID0gRjMzRUUwRTQxMzU2NzhDQTAwRTA5RTY1
IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7CisJCX07CisJCUYzM0VFMEU3MTM1Njc4Q0EwMEUwOUU2NSAvKiBsaWJndGVzdF9t
YWluLmEgKi8gPSB7CisJCQlpc2EgPSBQQlhSZWZlcmVuY2VQcm94eTsKKwkJCWZpbGVUeXBlID0g
YXJjaGl2ZS5hcjsKKwkJCXBhdGggPSBsaWJndGVzdF9tYWluLmE7CisJCQlyZW1vdGVSZWYgPSBG
MzNFRTBFNjEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOworCQkJ
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJfTsKKwkJRjMzRUUwRTkxMzU2NzhD
QTAwRTA5RTY1IC8qIGd0ZXN0X3VuaXR0ZXN0LWZyYW1ld29yayAqLyA9IHsKKwkJCWlzYSA9IFBC
WFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmV4ZWN1dGFi
bGUiOworCQkJcGF0aCA9ICJndGVzdF91bml0dGVzdC1mcmFtZXdvcmsiOworCQkJcmVtb3RlUmVm
ID0gRjMzRUUwRTgxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsK
KwkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7CisJCX07CisJCUYzM0VFMEVCMTM1
Njc4Q0EwMEUwOUU2NSAvKiBndGVzdF91bml0dGVzdCAqLyA9IHsKKwkJCWlzYSA9IFBCWFJlZmVy
ZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmV4ZWN1dGFibGUiOwor
CQkJcGF0aCA9IGd0ZXN0X3VuaXR0ZXN0OworCQkJcmVtb3RlUmVmID0gRjMzRUUwRUExMzU2NzhD
QTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJCXNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7CisJCX07CisJCUYzM0VFMEVEMTM1Njc4Q0EwMEUwOUU2NSAvKiBz
YW1wbGUxX3VuaXR0ZXN0LWZyYW1ld29yayAqLyA9IHsKKwkJCWlzYSA9IFBCWFJlZmVyZW5jZVBy
b3h5OworCQkJZmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmV4ZWN1dGFibGUiOworCQkJcGF0
aCA9ICJzYW1wbGUxX3VuaXR0ZXN0LWZyYW1ld29yayI7CisJCQlyZW1vdGVSZWYgPSBGMzNFRTBF
QzEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOworCQkJc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJfTsKKwkJRjMzRUUwRUYxMzU2NzhDQTAwRTA5
RTY1IC8qIHNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljICovID0geworCQkJaXNhID0gUEJYUmVmZXJl
bmNlUHJveHk7CisJCQlmaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZXhlY3V0YWJsZSI7CisJ
CQlwYXRoID0gInNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljIjsKKwkJCXJlbW90ZVJlZiA9IEYzM0VF
MEVFMTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87CisJCQlzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOworCQl9OworLyogRW5kIFBCWFJlZmVyZW5jZVBy
b3h5IHNlY3Rpb24gKi8KKwogLyogQmVnaW4gUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlIHNlY3Rp
b24gKi8KIAkJNUQyOUQ4QkUwRTk4NjBCNDAwQzNEMkQwIC8qIENoZWNrIEZvciBXZWFrIFZUYWJs
ZXMgYW5kIEV4dGVybmFscyAqLyA9IHsKIAkJCWlzYSA9IFBCWFNoZWxsU2NyaXB0QnVpbGRQaGFz
ZTsKQEAgLTI5OTMsNiArMzE2MCwxNSBAQAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50
UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OworCQlGM0JCQUVBQzEzNTY1NzJGMDBDQkQ0MTQgLyog
U291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOworCQkJYnVpbGRB
Y3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJCUYzQkJBRjBFMTM1NjY2
MkUwMENCRDQxNCAvKiBSdW5BbGxXdGZUZXN0cy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlGMzNF
RTRGQTEzNTY5NzI5MDBFMDlFNjUgLyogU3RyaW5nVGVzdHMuY3BwIGluIFNvdXJjZXMgKi8sCisJ
CQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CiAv
KiBFbmQgUEJYU291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhUYXJn
ZXREZXBlbmRlbmN5IHNlY3Rpb24gKi8KQEAgLTMyNTQsNiArMzQzMCwxMDggQEAKIAkJCX07CiAJ
CQluYW1lID0gUHJvZmlsaW5nOwogCQl9OworCQlGM0JCQUVCMTEzNTY1NzJGMDBDQkQ0MTQgLyog
RGVidWcgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJCWJ1aWxkU2V0
dGluZ3MgPSB7CisJCQkJQUxXQVlTX1NFQVJDSF9VU0VSX1BBVEhTID0gTk87CisJCQkJQ09QWV9Q
SEFTRV9TVFJJUCA9IE5POworCQkJCUdDQ19EWU5BTUlDX05PX1BJQyA9IE5POworCQkJCUdDQ19F
TkFCTEVfRklYX0FORF9DT05USU5VRSA9IFlFUzsKKwkJCQlHQ0NfTU9ERUxfVFVOSU5HID0gRzU7
CisJCQkJR0NDX09QVElNSVpBVElPTl9MRVZFTCA9IDA7CisJCQkJR0NDX1BSRVBST0NFU1NPUl9E
RUZJTklUSU9OUyA9ICgKKwkJCQkJIiQoR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUykiLAor
CQkJCQkiXCJHVEVTVF9IQVNfUlRUST0wXCIiLAorCQkJCSk7CisJCQkJSEVBREVSX1NFQVJDSF9Q
QVRIUyA9ICgKKwkJCQkJIiQoSEVBREVSX1NFQVJDSF9QQVRIUykiLAorCQkJCQkuLi9UaGlyZFBh
cnR5L2d0ZXN0L2luY2x1ZGUsCisJCQkJKTsKKwkJCQlJTlNUQUxMX1BBVEggPSAvdXNyL2xvY2Fs
L2JpbjsKKwkJCQlQUkVCSU5ESU5HID0gTk87CisJCQkJUFJPRFVDVF9OQU1FID0gd3RmdGVzdHM7
CisJCQkJV0FSTklOR19DRkxBR1MgPSAoCisJCQkJCSIkKFdBUk5JTkdfQ0ZMQUdTXyQoUkVBTF9Q
TEFURk9STV9OQU1FKSkiLAorCQkJCQkiLVduby11bmRlZiIsCisJCQkJKTsKKwkJCX07CisJCQlu
YW1lID0gRGVidWc7CisJCX07CisJCUYzQkJBRUIyMTM1NjU3MkYwMENCRDQxNCAvKiBSZWxlYXNl
ICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRpbmdz
ID0geworCQkJCUFMV0FZU19TRUFSQ0hfVVNFUl9QQVRIUyA9IE5POworCQkJCUNPUFlfUEhBU0Vf
U1RSSVAgPSBZRVM7CisJCQkJREVCVUdfSU5GT1JNQVRJT05fRk9STUFUID0gImR3YXJmLXdpdGgt
ZHN5bSI7CisJCQkJR0NDX0VOQUJMRV9GSVhfQU5EX0NPTlRJTlVFID0gTk87CisJCQkJR0NDX01P
REVMX1RVTklORyA9IEc1OworCQkJCUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAoCisJ
CQkJCSIkKEdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMpIiwKKwkJCQkJIlwiR1RFU1RfSEFT
X1JUVEk9MFwiIiwKKwkJCQkpOworCQkJCUhFQURFUl9TRUFSQ0hfUEFUSFMgPSAoCisJCQkJCSIk
KEhFQURFUl9TRUFSQ0hfUEFUSFMpIiwKKwkJCQkJLi4vVGhpcmRQYXJ0eS9ndGVzdC9pbmNsdWRl
LAorCQkJCSk7CisJCQkJSU5TVEFMTF9QQVRIID0gL3Vzci9sb2NhbC9iaW47CisJCQkJUFJFQklO
RElORyA9IE5POworCQkJCVBST0RVQ1RfTkFNRSA9IHd0ZnRlc3RzOworCQkJCVdBUk5JTkdfQ0ZM
QUdTID0gKAorCQkJCQkiJChXQVJOSU5HX0NGTEFHU18kKFJFQUxfUExBVEZPUk1fTkFNRSkpIiwK
KwkJCQkJIi1Xbm8tdW5kZWYiLAorCQkJCSk7CisJCQkJWkVST19MSU5LID0gTk87CisJCQl9Owor
CQkJbmFtZSA9IFJlbGVhc2U7CisJCX07CisJCUYzQkJBRUIzMTM1NjU3MkYwMENCRDQxNCAvKiBQ
cm9maWxpbmcgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJCWJ1aWxk
U2V0dGluZ3MgPSB7CisJCQkJQUxXQVlTX1NFQVJDSF9VU0VSX1BBVEhTID0gTk87CisJCQkJR0ND
X0VOQUJMRV9GSVhfQU5EX0NPTlRJTlVFID0gWUVTOworCQkJCUdDQ19NT0RFTF9UVU5JTkcgPSBH
NTsKKwkJCQlHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gKAorCQkJCQkiJChHQ0NfUFJF
UFJPQ0VTU09SX0RFRklOSVRJT05TKSIsCisJCQkJCSJcIkdURVNUX0hBU19SVFRJPTBcIiIsCisJ
CQkJKTsKKwkJCQlIRUFERVJfU0VBUkNIX1BBVEhTID0gKAorCQkJCQkiJChIRUFERVJfU0VBUkNI
X1BBVEhTKSIsCisJCQkJCS4uL1RoaXJkUGFydHkvZ3Rlc3QvaW5jbHVkZSwKKwkJCQkpOworCQkJ
CUlOU1RBTExfUEFUSCA9IC91c3IvbG9jYWwvYmluOworCQkJCVBSRUJJTkRJTkcgPSBOTzsKKwkJ
CQlQUk9EVUNUX05BTUUgPSB3dGZ0ZXN0czsKKwkJCQlXQVJOSU5HX0NGTEFHUyA9ICgKKwkJCQkJ
IiQoV0FSTklOR19DRkxBR1NfJChSRUFMX1BMQVRGT1JNX05BTUUpKSIsCisJCQkJCSItV25vLXVu
ZGVmIiwKKwkJCQkpOworCQkJfTsKKwkJCW5hbWUgPSBQcm9maWxpbmc7CisJCX07CisJCUYzQkJB
RUI0MTM1NjU3MkYwMENCRDQxNCAvKiBQcm9kdWN0aW9uICovID0geworCQkJaXNhID0gWENCdWls
ZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRpbmdzID0geworCQkJCUFMV0FZU19TRUFSQ0hf
VVNFUl9QQVRIUyA9IE5POworCQkJCUdDQ19FTkFCTEVfRklYX0FORF9DT05USU5VRSA9IFlFUzsK
KwkJCQlHQ0NfTU9ERUxfVFVOSU5HID0gRzU7CisJCQkJR0NDX1BSRVBST0NFU1NPUl9ERUZJTklU
SU9OUyA9ICgKKwkJCQkJIiQoR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUykiLAorCQkJCQki
XCJHVEVTVF9IQVNfUlRUST0wXCIiLAorCQkJCSk7CisJCQkJSEVBREVSX1NFQVJDSF9QQVRIUyA9
ICgKKwkJCQkJIiQoSEVBREVSX1NFQVJDSF9QQVRIUykiLAorCQkJCQkuLi9UaGlyZFBhcnR5L2d0
ZXN0L2luY2x1ZGUsCisJCQkJKTsKKwkJCQlJTlNUQUxMX1BBVEggPSAvdXNyL2xvY2FsL2JpbjsK
KwkJCQlQUkVCSU5ESU5HID0gTk87CisJCQkJUFJPRFVDVF9OQU1FID0gd3RmdGVzdHM7CisJCQkJ
V0FSTklOR19DRkxBR1MgPSAoCisJCQkJCSIkKFdBUk5JTkdfQ0ZMQUdTXyQoUkVBTF9QTEFURk9S
TV9OQU1FKSkiLAorCQkJCQkiLVduby11bmRlZiIsCisJCQkJKTsKKwkJCX07CisJCQluYW1lID0g
UHJvZHVjdGlvbjsKKwkJfTsKIC8qIEVuZCBYQ0J1aWxkQ29uZmlndXJhdGlvbiBzZWN0aW9uICov
CiAKIC8qIEJlZ2luIFhDQ29uZmlndXJhdGlvbkxpc3Qgc2VjdGlvbiAqLwpAQCAtMzMzNCw2ICsz
NjEyLDE3IEBACiAJCQlkZWZhdWx0Q29uZmlndXJhdGlvbklzVmlzaWJsZSA9IDA7CiAJCQlkZWZh
dWx0Q29uZmlndXJhdGlvbk5hbWUgPSBQcm9kdWN0aW9uOwogCQl9OworCQlGM0JCQUVCQjEzNTY1
NzREMDBDQkQ0MTQgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhOYXRpdmVUYXJn
ZXQgInd0ZnRlc3RzIiAqLyA9IHsKKwkJCWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CisJCQli
dWlsZENvbmZpZ3VyYXRpb25zID0gKAorCQkJCUYzQkJBRUIxMTM1NjU3MkYwMENCRDQxNCAvKiBE
ZWJ1ZyAqLywKKwkJCQlGM0JCQUVCMjEzNTY1NzJGMDBDQkQ0MTQgLyogUmVsZWFzZSAqLywKKwkJ
CQlGM0JCQUVCMzEzNTY1NzJGMDBDQkQ0MTQgLyogUHJvZmlsaW5nICovLAorCQkJCUYzQkJBRUI0
MTM1NjU3MkYwMENCRDQxNCAvKiBQcm9kdWN0aW9uICovLAorCQkJKTsKKwkJCWRlZmF1bHRDb25m
aWd1cmF0aW9uSXNWaXNpYmxlID0gMDsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9IFBy
b2R1Y3Rpb247CisJCX07CiAvKiBFbmQgWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovCiAJ
fTsKIAlyb290T2JqZWN0ID0gMDg2N0Q2OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2plY3Qgb2Jq
ZWN0ICovOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXN0cy9SdW5B
bGxXdGZUZXN0cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1J1bkFsbFd0
ZlRlc3RzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNWFiZTc1Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXN0cy9SdW5BbGxX
dGZUZXN0cy5jcHAKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBO
ZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxpb3N0cmVhbT4KKworI2luY2x1
ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikgewor
ICAgIHN0ZDo6Y291dCA8PCAiUnVubmluZyBtYWluKCkgZnJvbSBndGVzdF9tYWluLmNjXG4iOwor
ICAgIAorICAgIHRlc3Rpbmc6OkluaXRHb29nbGVUZXN0KCZhcmdjLCBhcmd2KTsKKyAgICByZXR1
cm4gUlVOX0FMTF9URVNUUygpOworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd3RmL3Rlc3RzL1N0cmluZ1Rlc3RzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYv
dGVzdHMvU3RyaW5nVGVzdHMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjAzY2NjMjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rl
c3RzL1N0cmluZ1Rlc3RzLmNwcApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAq
ICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisg
KiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
I2luY2x1ZGUgIkNTdHJpbmcuaCIKKworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKK25hbWVz
cGFjZSB7CisKK2NsYXNzIENTdHJpbmdUZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3QgeworfTsK
KyAgICAKK1RFU1RfRihDU3RyaW5nVGVzdCwgVGVzdExlbmd0aCkgeworICAgIENTdHJpbmcgc3Ry
KCIiKTsKKyAgICBFWFBFQ1RfRVEoMHUsIHN0ci5sZW5ndGgoKSk7Cit9Cit9CisKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2d0ZXN0L3hjb2RlL2d0ZXN0Lnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9ndGVzdC94Y29kZS9ndGVzdC54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDQyMzRlNzIuLmZkZDE4NWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2d0ZXN0L3hjb2RlL2d0ZXN0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvZ3Rlc3QveGNvZGUvZ3Rlc3QueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtNTc4LDYgKzU3OCw3IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0OwogCQkJ
YnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDRGQURDMjQ2MDhCNDE1NkQwMEFCRTU1RSAvKiBCdWls
ZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgImd0ZXN0IiAqLzsKIAkJCWNvbXBh
dGliaWxpdHlWZXJzaW9uID0gIlhjb2RlIDIuNCI7CisJCQlkZXZlbG9wbWVudFJlZ2lvbiA9IEVu
Z2xpc2g7CiAJCQloYXNTY2FubmVkRm9yRW5jb2RpbmdzID0gMTsKIAkJCWtub3duUmVnaW9ucyA9
ICgKIAkJCQlFbmdsaXNoLAo=
</data>
<flag name="review"
          id="82216"
          type_id="1"
          status="-"
          setter="levin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89654</attachid>
            <date>2011-04-14 14:41:07 -0700</date>
            <delta_ts>2011-04-14 14:54:00 -0700</delta_ts>
            <desc>Example test case for GTest in JavaScriptCore</desc>
            <filename>gtest-sample.patch</filename>
            <type>text/plain</type>
            <size>20705</size>
            <attacher name="Dmitry Lomov">dslomov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA4ZmM4NTU0Li40NzZiYTQ3
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xOTEsNyArMTkxLDcg
QEAKIAogICAgICAgICAqIC5naXRpZ25vcmU6CiAKLTAxMS0wMy0yOCAgQWRhbSBCYXJ0aCAgPGFi
YXJ0aEB3ZWJraXQub3JnPgorMjAxMS0wMy0yOCAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2VsbC4KIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKaW5kZXggYTI1Yzg5MS4uMWE3NDRiMCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCkBAIC0xLDE3ICsxLDMgQEAKLTIwMTEtMDQtMTQgIERtaXRyeSBMb21vdiAgPGRzbG9tb3ZA
Z29vZ2xlLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KLQotICAg
ICAgICBBZGQgYSBzYW1wbGUgdGVzdCBjYXNlIGZvciBHVGVzdCBmcmFtZXdvcmsKLSAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4NTA5Ci0KLSAgICAgICAg
QWRkIGFuIGV4YW1wbGUgb2YgR1Rlc3QgdGVzdGNhc2UsIGNvbXBsZXRlIHdpdGggYSBydW5uZXIs
IHRvIEphdmFTY3JpcHRDb3JlLgotCi0gICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKLSAgICAgICAgKiB3dGYvdGVzdHMvUnVuQWxsV3RmVGVzdHMuY3Bw
OiBBZGRlZC4KLSAgICAgICAgKG1haW4pOgotICAgICAgICAqIHd0Zi90ZXN0cy9TdHJpbmdUZXN0
cy5jcHA6IEFkZGVkLgotCiAyMDExLTA0LTE0ICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5j
b20+CiAKICAgICAgICAgVGVtcG9yYXJpbHkgcmVtb3ZlIGFzc2VydGlvbiB0aGF0J3MgZmlyaW5n
IGFsbCB0aGUgdGltZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2Ny
aXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzg2NmFkNC4u
MjE3M2VmZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0ph
dmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTU5NCwxMCArNTk0LDYg
QEAKIAkJRTQ5REMxNkMxMkVGMjk0RTAwMTg0QTFGIC8qIFNvdXJjZVByb3ZpZGVyQ2FjaGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0OURDMTUxMTJF
RjI3MjIwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTQ5REMxNkQxMkVGMjk1MzAwMTg0QTFG
IC8qIFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFNDlEQzE0OTEyRUYyNjFBMDAxODRBMUYgLyogU291cmNlUHJv
dmlkZXJDYWNoZUl0ZW0uaCAqLzsgfTsKIAkJRTREOENFRkIxMkZDNDM5NjAwQkM5RjVBIC8qIEJs
b29tRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFNEQ4Q0U5QjEyRkM0MkUxMDBCQzlGNUEgLyogQmxvb21GaWx0ZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlGMzNFRTJEODEzNTY3OUNDMDBF
MDlFNjUgLyogbGliZ3Rlc3QuYSBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEYzM0VFMEU1MTM1Njc4Q0EwMEUwOUU2NSAvKiBsaWJndGVzdC5hICovOyB9
OwotCQlGMzNFRTRGQTEzNTY5NzI5MDBFMDlFNjUgLyogU3RyaW5nVGVzdHMuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjMzRUU0RjkxMzU2OTcyOTAw
RTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNwcCAqLzsgfTsKLQkJRjNCQkFFQjUxMzU2NTczQTAwQ0JE
NDE0IC8qIEphdmFTY3JpcHRDb3JlLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMkY1QkQ5MDgyMkExQzcwMDczNjk3NSAvKiBKYXZh
U2NyaXB0Q29yZS5mcmFtZXdvcmsgKi87IH07Ci0JCUYzQkJBRjBFMTM1NjY2MkUwMENCRDQxNCAv
KiBSdW5BbGxXdGZUZXN0cy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGM0JCQUYwRDEzNTY2NjJFMDBDQkQ0MTQgLyogUnVuQWxsV3RmVGVzdHMuY3Bw
ICovOyB9OwogCQlGM0JEMzFFRDEyNjczNTc3MDA2NTQ2N0YgLyogVGV4dFBvc2l0aW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGM0JEMzFEMDEyNjcz
MDE4MDA2NTQ2N0YgLyogVGV4dFBvc2l0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkRBMTVDMUUxMkIwMzA1QzAwM0E1ODNBIC8qIENvbXBs
ZXguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTE1
QzE2MTJCMDMwMjgwMDNBNTgzQSAvKiBDb21wbGV4LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRkUxQjQ0N0EwRUNDRDczQjAwNEY0REQxIC8qIFN0
ZExpYkV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRkUxQjQ0NzkwRUNDRDczQjAwNEY0REQxIC8qIFN0ZExpYkV4dHJhcy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC02NjAsNTUgKzY1Niw2IEBA
CiAJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDkzMkY1QkRBMDgyMkExQzcwMDczNjk3NTsKIAkJ
CXJlbW90ZUluZm8gPSAianNjIChVcGdyYWRlZCkiOwogCQl9OwotCQlGMzNFRTBFMjEzNTY3OENB
MDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0gewotCQkJaXNhID0gUEJYQ29u
dGFpbmVySXRlbVByb3h5OwotCQkJY29udGFpbmVyUG9ydGFsID0gRjMzRUUwRDMxMzU2NzhDQTAw
RTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKLQkJCXByb3h5VHlwZSA9IDI7Ci0JCQlyZW1v
dGVHbG9iYWxJRFN0cmluZyA9IDQ1MzlDOEZGMEVDMjdGNjQwMEE3MEY0QyAvKiBndGVzdC5mcmFt
ZXdvcmsgKi87Ci0JCQlyZW1vdGVJbmZvID0gImd0ZXN0LWZyYW1ld29yayI7Ci0JCX07Ci0JCUYz
M0VFMEU0MTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi8gPSB7Ci0J
CQlpc2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7Ci0JCQljb250YWluZXJQb3J0YWwgPSBGMzNF
RTBEMzEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3QueGNvZGVwcm9qICovOwotCQkJcHJveHlUeXBl
ID0gMjsKLQkJCXJlbW90ZUdsb2JhbElEU3RyaW5nID0gNDBDODQ4RkExMDFBMjA5QzAwODM2NDJB
IC8qIGxpYmd0ZXN0LmEgKi87Ci0JCQlyZW1vdGVJbmZvID0gImd0ZXN0LXN0YXRpYyI7Ci0JCX07
Ci0JCUYzM0VFMEU2MTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi8g
PSB7Ci0JCQlpc2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7Ci0JCQljb250YWluZXJQb3J0YWwg
PSBGMzNFRTBEMzEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3QueGNvZGVwcm9qICovOwotCQkJcHJv
eHlUeXBlID0gMjsKLQkJCXJlbW90ZUdsb2JhbElEU3RyaW5nID0gNDBDODQ5MEIxMDFBMjE3RTAw
ODM2NDJBIC8qIGxpYmd0ZXN0X21haW4uYSAqLzsKLQkJCXJlbW90ZUluZm8gPSAiZ3Rlc3RfbWFp
bi1zdGF0aWMiOwotCQl9OwotCQlGMzNFRTBFODEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFp
bmVySXRlbVByb3h5ICovID0gewotCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OwotCQkJ
Y29udGFpbmVyUG9ydGFsID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2Rl
cHJvaiAqLzsKLQkJCXByb3h5VHlwZSA9IDI7Ci0JCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQw
ODk5RjQzMEZGQTcxODQwMDBCMjlBRSAvKiBndGVzdF91bml0dGVzdC1mcmFtZXdvcmsgKi87Ci0J
CQlyZW1vdGVJbmZvID0gImd0ZXN0X3VuaXR0ZXN0LWZyYW1ld29yayI7Ci0JCX07Ci0JCUYzM0VF
MEVBMTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi8gPSB7Ci0JCQlp
c2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7Ci0JCQljb250YWluZXJQb3J0YWwgPSBGMzNFRTBE
MzEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3QueGNvZGVwcm9qICovOwotCQkJcHJveHlUeXBlID0g
MjsKLQkJCXJlbW90ZUdsb2JhbElEU3RyaW5nID0gNDBDODQ5ODcxMDFBMzY4NTAwODM2NDJBIC8q
IGd0ZXN0X3VuaXR0ZXN0ICovOwotCQkJcmVtb3RlSW5mbyA9ICJndGVzdF91bml0dGVzdC1zdGF0
aWMiOwotCQl9OwotCQlGMzNFRTBFQzEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRl
bVByb3h5ICovID0gewotCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OwotCQkJY29udGFp
bmVyUG9ydGFsID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAq
LzsKLQkJCXByb3h5VHlwZSA9IDI7Ci0JCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwODlBMDEz
MEZGQUNFRkMwMDBCMjlBRSAvKiBzYW1wbGUxX3VuaXR0ZXN0LWZyYW1ld29yayAqLzsKLQkJCXJl
bW90ZUluZm8gPSAic2FtcGxlMV91bml0dGVzdC1mcmFtZXdvcmsiOwotCQl9OwotCQlGMzNFRTBF
RTEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0gewotCQkJaXNh
ID0gUEJYQ29udGFpbmVySXRlbVByb3h5OwotCQkJY29udGFpbmVyUG9ydGFsID0gRjMzRUUwRDMx
MzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKLQkJCXByb3h5VHlwZSA9IDI7
Ci0JCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OTk3MTAxQTM2QTYwMDgzNjQyQSAvKiBz
YW1wbGUxX3VuaXR0ZXN0LXN0YXRpYyAqLzsKLQkJCXJlbW90ZUluZm8gPSAic2FtcGxlMV91bml0
dGVzdC1zdGF0aWMiOwotCQl9OwogLyogRW5kIFBCWENvbnRhaW5lckl0ZW1Qcm94eSBzZWN0aW9u
ICovCiAKIC8qIEJlZ2luIFBCWENvcHlGaWxlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwpAQCAtMTI5
OCwxMCArMTI0NSw2IEBACiAJCUU0OURDMTUxMTJFRjI3MjIwMDE4NEExRiAvKiBTb3VyY2VQcm92
aWRlckNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNvdXJjZVByb3Zp
ZGVyQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTQ5REMxNTUxMkVGMjc3
MjAwMTg0QTFGIC8qIFNvdXJjZVByb3ZpZGVyQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU291cmNlUHJvdmlkZXJDYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUU0RDhDRTlCMTJGQzQyRTEwMEJDOUY1QSAvKiBCbG9vbUZpbHRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCbG9vbUZpbHRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQlGMzNFRTBEMzEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3Qu
eGNvZGVwcm9qICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gIndyYXBwZXIucGItcHJvamVjdCI7IG5hbWUgPSBndGVzdC54Y29kZXByb2o7IHBhdGggPSAu
Li9UaGlyZFBhcnR5L2d0ZXN0L3hjb2RlL2d0ZXN0Lnhjb2RlcHJvajsgc291cmNlVHJlZSA9IFNP
VVJDRV9ST09UOyB9OwotCQlGMzNFRTRGOTEzNTY5NzI5MDBFMDlFNjUgLyogU3RyaW5nVGVzdHMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU3RyaW5nVGVzdHMuY3Bw
OyBwYXRoID0gdGVzdHMvU3RyaW5nVGVzdHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQlGM0JCQUVBRjEzNTY1NzJGMDBDQkQ0MTQgLyogd3RmdGVzdHMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZXhlY3V0
YWJsZSI7IGluY2x1ZGVJbkluZGV4ID0gMDsgcGF0aCA9IHd0ZnRlc3RzOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OwotCQlGM0JCQUYwRDEzNTY2NjJFMDBDQkQ0MTQgLyogUnVu
QWxsV3RmVGVzdHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gUnVu
QWxsV3RmVGVzdHMuY3BwOyBwYXRoID0gdGVzdHMvUnVuQWxsV3RmVGVzdHMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGM0JEMzFEMDEyNjczMDE4MDA2NTQ2N0YgLyogVGV4dFBv
c2l0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFRleHRQb3NpdGlvbi5o
OyBwYXRoID0gdGV4dC9UZXh0UG9zaXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRjVCQjJCQzUwMzBGNzcyMTAxRkNGRTFEIC8qIENvbXBsZXRpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29tcGxldGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IH07CiAJCUY1QzI5MEU2MDI4NEY5OEUw
MTg2MzVDQSAvKiBKYXZhU2NyaXB0Q29yZVByZWZpeC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKYXZhU2NyaXB0Q29yZVByZWZpeC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IH07CkBAIC0xMzc5LDE1ICsxMzIyLDYg
QEAKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJ
fTsKLQkJRjNCQkFFQUQxMzU2NTcyRjAwQ0JENDE0IC8qIEZyYW1ld29ya3MgKi8gPSB7Ci0JCQlp
c2EgPSBQQlhGcmFtZXdvcmtzQnVpbGRQaGFzZTsKLQkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0
ODM2NDc7Ci0JCQlmaWxlcyA9ICgKLQkJCQlGMzNFRTJEODEzNTY3OUNDMDBFMDlFNjUgLyogbGli
Z3Rlc3QuYSBpbiBGcmFtZXdvcmtzICovLAotCQkJCUYzQkJBRUI1MTM1NjU3M0EwMENCRDQxNCAv
KiBKYXZhU2NyaXB0Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKLQkJCSk7Ci0JCQly
dW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKLQkJfTsKIC8qIEVuZCBQQlhG
cmFtZXdvcmtzQnVpbGRQaGFzZSBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWEdyb3VwIHNlY3Rp
b24gKi8KQEAgLTEzOTgsNyArMTMzMiw2IEBACiAJCQkJOTMyRjVCRTEwODIyQTFDNzAwNzM2OTc1
IC8qIGpzYyAqLywKIAkJCQkxNDEyMTEyMDBBNDg3OTNDMDA0ODAyNTUgLyogbWluaWRvbSAqLywK
IAkJCQkxNEJENTlCRjBBM0U4RjkwMDBCQUY1OUMgLyogdGVzdGFwaSAqLywKLQkJCQlGM0JCQUVB
RjEzNTY1NzJGMDBDQkQ0MTQgLyogd3RmdGVzdHMgKi8sCiAJCQkpOwogCQkJbmFtZSA9IFByb2R1
Y3RzOwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTE0MTYsNyArMTM0OSw2IEBACiAJ
CTA4NjdENjkxRkU4NDAyOEZDMDJBQUMwNyAvKiBKYXZhU2NyaXB0Q29yZSAqLyA9IHsKIAkJCWlz
YSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCi0JCQkJRjMzRUUwRDMxMzU2NzhDQTAwRTA5
RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLywKIAkJCQlBNzE4RjgyMTExNzhFQjRCMDAyNDY1QTcg
LyogY3JlYXRlX3JlZ2V4X3RhYmxlcyAqLywKIAkJCQk5MzdCNjNDQzA5RTc2NkQyMDBBNjcxREQg
LyogRGVyaXZlZFNvdXJjZXMubWFrZSAqLywKIAkJCQlGNjkyQTg1NDAyNTU1OTdEMDFGRjYwRjcg
LyogY3JlYXRlX2hhc2hfdGFibGUgKi8sCkBAIC0xNjY4LDcgKzE2MDAsNiBAQAogCQk2NTE2MkVG
MTA4RTZBMjFDMDA3NTU2Q0QgLyogd3RmICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQlj
aGlsZHJlbiA9ICgKLQkJCQlGM0JCQThDQTEzNTY0RUVEMDBDQkQ0MTQgLyogdGVzdHMgKi8sCiAJ
CQkJQTdDNDBDMDcxMzBCMDU3RDAwRDAwMkExIC8qIEJsb2NrU3RhY2suaCAqLywKIAkJCQlBN0M0
MEMwODEzMEIwNTdEMDBEMDAyQTEgLyogU2VudGluZWxMaW5rZWRMaXN0LmggKi8sCiAJCQkJQTdD
NDBDMDkxMzBCMDU3RDAwRDAwMkExIC8qIFNpbmdseUxpbmtlZExpc3QuaCAqLywKQEAgLTIyNDEs
MjkgKzIxNzIsNiBAQAogCQkJcGF0aCA9IGljdTsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CiAJCX07Ci0JCUYzM0VFMEQ0MTM1Njc4Q0EwMEUwOUU2NSAvKiBQcm9kdWN0cyAqLyA9IHsKLQkJ
CWlzYSA9IFBCWEdyb3VwOwotCQkJY2hpbGRyZW4gPSAoCi0JCQkJRjMzRUUwRTMxMzU2NzhDQTAw
RTA5RTY1IC8qIGd0ZXN0LmZyYW1ld29yayAqLywKLQkJCQlGMzNFRTBFNTEzNTY3OENBMDBFMDlF
NjUgLyogbGliZ3Rlc3QuYSAqLywKLQkJCQlGMzNFRTBFNzEzNTY3OENBMDBFMDlFNjUgLyogbGli
Z3Rlc3RfbWFpbi5hICovLAotCQkJCUYzM0VFMEU5MTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdF91
bml0dGVzdC1mcmFtZXdvcmsgKi8sCi0JCQkJRjMzRUUwRUIxMzU2NzhDQTAwRTA5RTY1IC8qIGd0
ZXN0X3VuaXR0ZXN0ICovLAotCQkJCUYzM0VFMEVEMTM1Njc4Q0EwMEUwOUU2NSAvKiBzYW1wbGUx
X3VuaXR0ZXN0LWZyYW1ld29yayAqLywKLQkJCQlGMzNFRTBFRjEzNTY3OENBMDBFMDlFNjUgLyog
c2FtcGxlMV91bml0dGVzdC1zdGF0aWMgKi8sCi0JCQkpOwotCQkJbmFtZSA9IFByb2R1Y3RzOwot
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKLQkJfTsKLQkJRjNCQkE4Q0ExMzU2NEVFRDAwQ0JE
NDE0IC8qIHRlc3RzICovID0gewotCQkJaXNhID0gUEJYR3JvdXA7Ci0JCQljaGlsZHJlbiA9ICgK
LQkJCQlGMzNFRTRGOTEzNTY5NzI5MDBFMDlFNjUgLyogU3RyaW5nVGVzdHMuY3BwICovLAotCQkJ
CUYzQkJBRjBEMTM1NjY2MkUwMENCRDQxNCAvKiBSdW5BbGxXdGZUZXN0cy5jcHAgKi8sCi0JCQkp
OwotCQkJbmFtZSA9IHRlc3RzOwotCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKLQkJfTsKIC8q
IEVuZCBQQlhHcm91cCBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWEhlYWRlcnNCdWlsZFBoYXNl
IHNlY3Rpb24gKi8KQEAgLTI3MTQsMjIgKzI2MjIsNiBAQAogCQkJcHJvZHVjdFJlZmVyZW5jZSA9
IDkzMkY1QkUxMDgyMkExQzcwMDczNjk3NSAvKiBqc2MgKi87CiAJCQlwcm9kdWN0VHlwZSA9ICJj
b20uYXBwbGUucHJvZHVjdC10eXBlLnRvb2wiOwogCQl9OwotCQlGM0JCQUVBRTEzNTY1NzJGMDBD
QkQ0MTQgLyogd3RmdGVzdHMgKi8gPSB7Ci0JCQlpc2EgPSBQQlhOYXRpdmVUYXJnZXQ7Ci0JCQli
dWlsZENvbmZpZ3VyYXRpb25MaXN0ID0gRjNCQkFFQkIxMzU2NTc0RDAwQ0JENDE0IC8qIEJ1aWxk
IGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYTmF0aXZlVGFyZ2V0ICJ3dGZ0ZXN0cyIgKi87Ci0J
CQlidWlsZFBoYXNlcyA9ICgKLQkJCQlGM0JCQUVBQzEzNTY1NzJGMDBDQkQ0MTQgLyogU291cmNl
cyAqLywKLQkJCQlGM0JCQUVBRDEzNTY1NzJGMDBDQkQ0MTQgLyogRnJhbWV3b3JrcyAqLywKLQkJ
CSk7Ci0JCQlidWlsZFJ1bGVzID0gKAotCQkJKTsKLQkJCWRlcGVuZGVuY2llcyA9ICgKLQkJCSk7
Ci0JCQluYW1lID0gd3RmdGVzdHM7Ci0JCQlwcm9kdWN0TmFtZSA9IHd0ZnRlc3RzOwotCQkJcHJv
ZHVjdFJlZmVyZW5jZSA9IEYzQkJBRUFGMTM1NjU3MkYwMENCRDQxNCAvKiB3dGZ0ZXN0cyAqLzsK
LQkJCXByb2R1Y3RUeXBlID0gImNvbS5hcHBsZS5wcm9kdWN0LXR5cGUudG9vbCI7Ci0JCX07CiAv
KiBFbmQgUEJYTmF0aXZlVGFyZ2V0IHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYUHJvamVjdCBz
ZWN0aW9uICovCkBAIC0yNzUxLDEyICsyNjQzLDYgQEAKIAkJCW1haW5Hcm91cCA9IDA4NjdENjkx
RkU4NDAyOEZDMDJBQUMwNyAvKiBKYXZhU2NyaXB0Q29yZSAqLzsKIAkJCXByb2R1Y3RSZWZHcm91
cCA9IDAzNDc2OERGRkYzOEE1MDQxMURCOUM4QiAvKiBQcm9kdWN0cyAqLzsKIAkJCXByb2plY3RE
aXJQYXRoID0gIiI7Ci0JCQlwcm9qZWN0UmVmZXJlbmNlcyA9ICgKLQkJCQl7Ci0JCQkJCVByb2R1
Y3RHcm91cCA9IEYzM0VFMEQ0MTM1Njc4Q0EwMEUwOUU2NSAvKiBQcm9kdWN0cyAqLzsKLQkJCQkJ
UHJvamVjdFJlZiA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2og
Ki87Ci0JCQkJfSwKLQkJCSk7CiAJCQlwcm9qZWN0Um9vdCA9ICIiOwogCQkJdGFyZ2V0cyA9ICgK
IAkJCQk5MzJGNUJFMzA4MjJBMUM3MDA3MzY5NzUgLyogQWxsICovLApAQCAtMjc2NSw2MyArMjY1
MSwxMCBAQAogCQkJCTE0MTIxMTFGMEE0ODc5M0MwMDQ4MDI1NSAvKiBtaW5pZG9tICovLAogCQkJ
CTE0QkQ1OUJFMEEzRThGOTAwMEJBRjU5QyAvKiB0ZXN0YXBpICovLAogCQkJCTkzMkY1QkRBMDgy
MkExQzcwMDczNjk3NSAvKiBqc2MgKi8sCi0JCQkJRjNCQkFFQUUxMzU2NTcyRjAwQ0JENDE0IC8q
IHd0ZnRlc3RzICovLAogCQkJKTsKIAkJfTsKIC8qIEVuZCBQQlhQcm9qZWN0IHNlY3Rpb24gKi8K
IAotLyogQmVnaW4gUEJYUmVmZXJlbmNlUHJveHkgc2VjdGlvbiAqLwotCQlGMzNFRTBFMzEzNTY3
OENBMDBFMDlFNjUgLyogZ3Rlc3QuZnJhbWV3b3JrICovID0gewotCQkJaXNhID0gUEJYUmVmZXJl
bmNlUHJveHk7Ci0JCQlmaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOwotCQkJcGF0aCA9IGd0
ZXN0LmZyYW1ld29yazsKLQkJCXJlbW90ZVJlZiA9IEYzM0VFMEUyMTM1Njc4Q0EwMEUwOUU2NSAv
KiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87Ci0JCQlzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOwotCQl9OwotCQlGMzNFRTBFNTEzNTY3OENBMDBFMDlFNjUgLyogbGliZ3Rlc3QuYSAq
LyA9IHsKLQkJCWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OwotCQkJZmlsZVR5cGUgPSBhcmNoaXZl
LmFyOwotCQkJcGF0aCA9IGxpYmd0ZXN0LmE7Ci0JCQlyZW1vdGVSZWYgPSBGMzNFRTBFNDEzNTY3
OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOwotCQkJc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsKLQkJfTsKLQkJRjMzRUUwRTcxMzU2NzhDQTAwRTA5RTY1IC8q
IGxpYmd0ZXN0X21haW4uYSAqLyA9IHsKLQkJCWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OwotCQkJ
ZmlsZVR5cGUgPSBhcmNoaXZlLmFyOwotCQkJcGF0aCA9IGxpYmd0ZXN0X21haW4uYTsKLQkJCXJl
bW90ZVJlZiA9IEYzM0VFMEU2MTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJdGVtUHJv
eHkgKi87Ci0JCQlzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOwotCQl9OwotCQlGMzNF
RTBFOTEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3RfdW5pdHRlc3QtZnJhbWV3b3JrICovID0gewot
CQkJaXNhID0gUEJYUmVmZXJlbmNlUHJveHk7Ci0JCQlmaWxlVHlwZSA9ICJjb21waWxlZC5tYWNo
LW8uZXhlY3V0YWJsZSI7Ci0JCQlwYXRoID0gImd0ZXN0X3VuaXR0ZXN0LWZyYW1ld29yayI7Ci0J
CQlyZW1vdGVSZWYgPSBGMzNFRTBFODEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRl
bVByb3h5ICovOwotCQkJc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKLQkJfTsKLQkJ
RjMzRUUwRUIxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0X3VuaXR0ZXN0ICovID0gewotCQkJaXNh
ID0gUEJYUmVmZXJlbmNlUHJveHk7Ci0JCQlmaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZXhl
Y3V0YWJsZSI7Ci0JCQlwYXRoID0gZ3Rlc3RfdW5pdHRlc3Q7Ci0JCQlyZW1vdGVSZWYgPSBGMzNF
RTBFQTEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOwotCQkJc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKLQkJfTsKLQkJRjMzRUUwRUQxMzU2NzhDQTAw
RTA5RTY1IC8qIHNhbXBsZTFfdW5pdHRlc3QtZnJhbWV3b3JrICovID0gewotCQkJaXNhID0gUEJY
UmVmZXJlbmNlUHJveHk7Ci0JCQlmaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZXhlY3V0YWJs
ZSI7Ci0JCQlwYXRoID0gInNhbXBsZTFfdW5pdHRlc3QtZnJhbWV3b3JrIjsKLQkJCXJlbW90ZVJl
ZiA9IEYzM0VFMEVDMTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87
Ci0JCQlzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOwotCQl9OwotCQlGMzNFRTBFRjEz
NTY3OENBMDBFMDlFNjUgLyogc2FtcGxlMV91bml0dGVzdC1zdGF0aWMgKi8gPSB7Ci0JCQlpc2Eg
PSBQQlhSZWZlcmVuY2VQcm94eTsKLQkJCWZpbGVUeXBlID0gImNvbXBpbGVkLm1hY2gtby5leGVj
dXRhYmxlIjsKLQkJCXBhdGggPSAic2FtcGxlMV91bml0dGVzdC1zdGF0aWMiOwotCQkJcmVtb3Rl
UmVmID0gRjMzRUUwRUUxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAq
LzsKLQkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7Ci0JCX07Ci0vKiBFbmQgUEJY
UmVmZXJlbmNlUHJveHkgc2VjdGlvbiAqLwotCiAvKiBCZWdpbiBQQlhTaGVsbFNjcmlwdEJ1aWxk
UGhhc2Ugc2VjdGlvbiAqLwogCQk1RDI5RDhCRTBFOTg2MEI0MDBDM0QyRDAgLyogQ2hlY2sgRm9y
IFdlYWsgVlRhYmxlcyBhbmQgRXh0ZXJuYWxzICovID0gewogCQkJaXNhID0gUEJYU2hlbGxTY3Jp
cHRCdWlsZFBoYXNlOwpAQCAtMzE2MCwxNSArMjk5Myw2IEBACiAJCQkpOwogCQkJcnVuT25seUZv
ckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07Ci0JCUYzQkJBRUFDMTM1NjU3MkYw
MENCRDQxNCAvKiBTb3VyY2VzICovID0gewotCQkJaXNhID0gUEJYU291cmNlc0J1aWxkUGhhc2U7
Ci0JCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OwotCQkJZmlsZXMgPSAoCi0JCQkJRjNC
QkFGMEUxMzU2NjYyRTAwQ0JENDE0IC8qIFJ1bkFsbFd0ZlRlc3RzLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCUYzM0VFNEZBMTM1Njk3MjkwMEUwOUU2NSAvKiBTdHJpbmdUZXN0cy5jcHAgaW4gU291
cmNlcyAqLywKLQkJCSk7Ci0JCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0g
MDsKLQkJfTsKIC8qIEVuZCBQQlhTb3VyY2VzQnVpbGRQaGFzZSBzZWN0aW9uICovCiAKIC8qIEJl
Z2luIFBCWFRhcmdldERlcGVuZGVuY3kgc2VjdGlvbiAqLwpAQCAtMzQzMCw4MiArMzI1NCw2IEBA
CiAJCQl9OwogCQkJbmFtZSA9IFByb2ZpbGluZzsKIAkJfTsKLQkJRjNCQkFFQjExMzU2NTcyRjAw
Q0JENDE0IC8qIERlYnVnICovID0gewotCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247Ci0J
CQlidWlsZFNldHRpbmdzID0gewotCQkJCUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAo
Ci0JCQkJCSIkKEdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMpIiwKLQkJCQkJIlwiR1RFU1Rf
SEFTX1JUVEk9MFwiIiwKLQkJCQkpOwotCQkJCUhFQURFUl9TRUFSQ0hfUEFUSFMgPSAoCi0JCQkJ
CSIkKEhFQURFUl9TRUFSQ0hfUEFUSFMpIiwKLQkJCQkJLi4vVGhpcmRQYXJ0eS9ndGVzdC9pbmNs
dWRlLAotCQkJCSk7Ci0JCQkJUFJPRFVDVF9OQU1FID0gd3RmdGVzdHM7Ci0JCQkJV0FSTklOR19D
RkxBR1MgPSAoCi0JCQkJCSIkKFdBUk5JTkdfQ0ZMQUdTXyQoUkVBTF9QTEFURk9STV9OQU1FKSki
LAotCQkJCQkiLVduby11bmRlZiIsCi0JCQkJKTsKLQkJCX07Ci0JCQluYW1lID0gRGVidWc7Ci0J
CX07Ci0JCUYzQkJBRUIyMTM1NjU3MkYwMENCRDQxNCAvKiBSZWxlYXNlICovID0gewotCQkJaXNh
ID0gWENCdWlsZENvbmZpZ3VyYXRpb247Ci0JCQlidWlsZFNldHRpbmdzID0gewotCQkJCUdDQ19Q
UkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAoCi0JCQkJCSIkKEdDQ19QUkVQUk9DRVNTT1JfREVG
SU5JVElPTlMpIiwKLQkJCQkJIlwiR1RFU1RfSEFTX1JUVEk9MFwiIiwKLQkJCQkpOwotCQkJCUhF
QURFUl9TRUFSQ0hfUEFUSFMgPSAoCi0JCQkJCSIkKEhFQURFUl9TRUFSQ0hfUEFUSFMpIiwKLQkJ
CQkJLi4vVGhpcmRQYXJ0eS9ndGVzdC9pbmNsdWRlLAotCQkJCSk7Ci0JCQkJUFJPRFVDVF9OQU1F
ID0gd3RmdGVzdHM7Ci0JCQkJV0FSTklOR19DRkxBR1MgPSAoCi0JCQkJCSIkKFdBUk5JTkdfQ0ZM
QUdTXyQoUkVBTF9QTEFURk9STV9OQU1FKSkiLAotCQkJCQkiLVduby11bmRlZiIsCi0JCQkJKTsK
LQkJCX07Ci0JCQluYW1lID0gUmVsZWFzZTsKLQkJfTsKLQkJRjNCQkFFQjMxMzU2NTcyRjAwQ0JE
NDE0IC8qIFByb2ZpbGluZyAqLyA9IHsKLQkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOwot
CQkJYnVpbGRTZXR0aW5ncyA9IHsKLQkJCQlHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0g
KAotCQkJCQkiJChHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TKSIsCi0JCQkJCSJcIkdURVNU
X0hBU19SVFRJPTBcIiIsCi0JCQkJKTsKLQkJCQlIRUFERVJfU0VBUkNIX1BBVEhTID0gKAotCQkJ
CQkiJChIRUFERVJfU0VBUkNIX1BBVEhTKSIsCi0JCQkJCS4uL1RoaXJkUGFydHkvZ3Rlc3QvaW5j
bHVkZSwKLQkJCQkpOwotCQkJCVBST0RVQ1RfTkFNRSA9IHd0ZnRlc3RzOwotCQkJCVdBUk5JTkdf
Q0ZMQUdTID0gKAotCQkJCQkiJChXQVJOSU5HX0NGTEFHU18kKFJFQUxfUExBVEZPUk1fTkFNRSkp
IiwKLQkJCQkJIi1Xbm8tdW5kZWYiLAotCQkJCSk7Ci0JCQl9OwotCQkJbmFtZSA9IFByb2ZpbGlu
ZzsKLQkJfTsKLQkJRjNCQkFFQjQxMzU2NTcyRjAwQ0JENDE0IC8qIFByb2R1Y3Rpb24gKi8gPSB7
Ci0JCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKLQkJCWJ1aWxkU2V0dGluZ3MgPSB7Ci0J
CQkJR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9ICgKLQkJCQkJIiQoR0NDX1BSRVBST0NF
U1NPUl9ERUZJTklUSU9OUykiLAotCQkJCQkiXCJHVEVTVF9IQVNfUlRUST0wXCIiLAotCQkJCSk7
Ci0JCQkJSEVBREVSX1NFQVJDSF9QQVRIUyA9ICgKLQkJCQkJIiQoSEVBREVSX1NFQVJDSF9QQVRI
UykiLAotCQkJCQkuLi9UaGlyZFBhcnR5L2d0ZXN0L2luY2x1ZGUsCi0JCQkJKTsKLQkJCQlQUk9E
VUNUX05BTUUgPSB3dGZ0ZXN0czsKLQkJCQlXQVJOSU5HX0NGTEFHUyA9ICgKLQkJCQkJIiQoV0FS
TklOR19DRkxBR1NfJChSRUFMX1BMQVRGT1JNX05BTUUpKSIsCi0JCQkJCSItV25vLXVuZGVmIiwK
LQkJCQkpOwotCQkJfTsKLQkJCW5hbWUgPSBQcm9kdWN0aW9uOwotCQl9OwogLyogRW5kIFhDQnVp
bGRDb25maWd1cmF0aW9uIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gWENDb25maWd1cmF0aW9uTGlz
dCBzZWN0aW9uICovCkBAIC0zNTg2LDE3ICszMzM0LDYgQEAKIAkJCWRlZmF1bHRDb25maWd1cmF0
aW9uSXNWaXNpYmxlID0gMDsKIAkJCWRlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9IFByb2R1Y3Rp
b247CiAJCX07Ci0JCUYzQkJBRUJCMTM1NjU3NEQwMENCRDQxNCAvKiBCdWlsZCBjb25maWd1cmF0
aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAid3RmdGVzdHMiICovID0gewotCQkJaXNhID0g
WENDb25maWd1cmF0aW9uTGlzdDsKLQkJCWJ1aWxkQ29uZmlndXJhdGlvbnMgPSAoCi0JCQkJRjNC
QkFFQjExMzU2NTcyRjAwQ0JENDE0IC8qIERlYnVnICovLAotCQkJCUYzQkJBRUIyMTM1NjU3MkYw
MENCRDQxNCAvKiBSZWxlYXNlICovLAotCQkJCUYzQkJBRUIzMTM1NjU3MkYwMENCRDQxNCAvKiBQ
cm9maWxpbmcgKi8sCi0JCQkJRjNCQkFFQjQxMzU2NTcyRjAwQ0JENDE0IC8qIFByb2R1Y3Rpb24g
Ki8sCi0JCQkpOwotCQkJZGVmYXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOwotCQkJZGVm
YXVsdENvbmZpZ3VyYXRpb25OYW1lID0gUHJvZHVjdGlvbjsKLQkJfTsKIC8qIEVuZCBYQ0NvbmZp
Z3VyYXRpb25MaXN0IHNlY3Rpb24gKi8KIAl9OwogCXJvb3RPYmplY3QgPSAwODY3RDY5MEZFODQw
MjhGQzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3QgKi87CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1J1bkFsbFd0ZlRlc3RzLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93dGYvdGVzdHMvUnVuQWxsV3RmVGVzdHMuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAyMzMwNDZmLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
dGYvdGVzdHMvUnVuQWxsV3RmVGVzdHMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDEgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoKLSAq
ICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
Ci0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJ
bmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICog
T1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0K
LSNpbmNsdWRlIDxzdGRpby5oPgotCi0jaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLQotaW50IG1h
aW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KSAKLXsKLSAgICBwcmludGYoIlJ1bm5pbmcgbWFpbigp
IGZyb20gZ3Rlc3RfbWFpbi5jY1xuIik7Ci0gICAgCi0gICAgdGVzdGluZzo6SW5pdEdvb2dsZVRl
c3QoJmFyZ2MsIGFyZ3YpOwotICAgIHJldHVybiBSVU5fQUxMX1RFU1RTKCk7Ci19CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1N0cmluZ1Rlc3RzLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGVzdHMvU3RyaW5nVGVzdHMuY3BwCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBjMDAwODk0Li4wMDAwMDAwCi0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93dGYvdGVzdHMvU3RyaW5nVGVzdHMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDYg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0Ogot
ICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0g
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJDU3RyaW5nLmgiCi0KLSNpbmNs
dWRlIDxndGVzdC9ndGVzdC5oPgotCi1uYW1lc3BhY2UgewotCi1jbGFzcyBDU3RyaW5nVGVzdCA6
IHB1YmxpYyB0ZXN0aW5nOjpUZXN0IHsKLX07Ci0KLVRFU1RfRihDU3RyaW5nVGVzdCwgVGVzdExl
bmd0aCkKLXsKLSAgICBDU3RyaW5nIHN0cigiIik7Ci0gICAgRVhQRUNUX0VRKDB1LCBzdHIubGVu
Z3RoKCkpOwotfQotfQo=
</data>
<flag name="review"
          id="82367"
          type_id="1"
          status="-"
          setter="levin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89660</attachid>
            <date>2011-04-14 14:54:00 -0700</date>
            <delta_ts>2011-04-14 15:05:19 -0700</delta_ts>
            <desc>Example test case for GTest in JavaScriptCore</desc>
            <filename>gtest-sample.patch</filename>
            <type>text/plain</type>
            <size>20422</size>
            <attacher name="Dmitry Lomov">dslomov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDFhNzQ0YjAuLmEyNWM4OTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTA0LTE0ICBEbWl0cnkgTG9tb3Yg
IDxkc2xvbW92QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIGEgc2FtcGxlIHRlc3QgY2FzZSBmb3IgR1Rlc3QgZnJhbWV3b3Jr
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODUwOQor
CisgICAgICAgIEFkZCBhbiBleGFtcGxlIG9mIEdUZXN0IHRlc3RjYXNlLCBjb21wbGV0ZSB3aXRo
IGEgcnVubmVyLCB0byBKYXZhU2NyaXB0Q29yZS4KKworICAgICAgICAqIEphdmFTY3JpcHRDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL3Rlc3RzL1J1bkFsbFd0
ZlRlc3RzLmNwcDogQWRkZWQuCisgICAgICAgIChtYWluKToKKyAgICAgICAgKiB3dGYvdGVzdHMv
U3RyaW5nVGVzdHMuY3BwOiBBZGRlZC4KKwogMjAxMS0wNC0xNCAgT2xpdmVyIEh1bnQgIDxvbGl2
ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFRlbXBvcmFyaWx5IHJlbW92ZSBhc3NlcnRpb24gdGhh
dCdzIGZpcmluZyBhbGwgdGhlIHRpbWUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDIxNzNlZmYuLjM4NjZhZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZh
U2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTQs
NiArNTk0LDEwIEBACiAJCUU0OURDMTZDMTJFRjI5NEUwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRl
ckNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
NDlEQzE1MTEyRUYyNzIyMDAxODRBMUYgLyogU291cmNlUHJvdmlkZXJDYWNoZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUU0OURDMTZEMTJFRjI5
NTMwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ5REMxNDkxMkVGMjYxQTAwMTg0QTFGIC8q
IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtLmggKi87IH07CiAJCUU0RDhDRUZCMTJGQzQzOTYwMEJD
OUY1QSAvKiBCbG9vbUZpbHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTREOENFOUIxMkZDNDJFMTAwQkM5RjVBIC8qIEJsb29tRmlsdGVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjMzRUUyRDgx
MzU2NzlDQzAwRTA5RTY1IC8qIGxpYmd0ZXN0LmEgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGMzNFRTBFNTEzNTY3OENBMDBFMDlFNjUgLyogbGliZ3Rl
c3QuYSAqLzsgfTsKKwkJRjMzRUU0RkExMzU2OTcyOTAwRTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEYzM0VFNEY5
MTM1Njk3MjkwMEUwOUU2NSAvKiBTdHJpbmdUZXN0cy5jcHAgKi87IH07CisJCUYzQkJBRUI1MTM1
NjU3M0EwMENCRDQxNCAvKiBKYXZhU2NyaXB0Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJGNUJEOTA4MjJBMUM3MDA3MzY5
NzUgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrICovOyB9OworCQlGM0JCQUYwRTEzNTY2NjJF
MDBDQkQ0MTQgLyogUnVuQWxsV3RmVGVzdHMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRjNCQkFGMEQxMzU2NjYyRTAwQ0JENDE0IC8qIFJ1bkFsbFd0
ZlRlc3RzLmNwcCAqLzsgfTsKIAkJRjNCRDMxRUQxMjY3MzU3NzAwNjU0NjdGIC8qIFRleHRQb3Np
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjNC
RDMxRDAxMjY3MzAxODAwNjU0NjdGIC8qIFRleHRQb3NpdGlvbi5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUZEQTE1QzFFMTJCMDMwNUMwMDNBNTgz
QSAvKiBDb21wbGV4LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGREExNUMxNjEyQjAzMDI4MDAzQTU4M0EgLyogQ29tcGxleC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUZFMUI0NDdBMEVDQ0Q3M0IwMDRG
NEREMSAvKiBTdGRMaWJFeHRyYXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEZFMUI0NDc5MEVDQ0Q3M0IwMDRGNEREMSAvKiBTdGRMaWJFeHRyYXMuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNjU2LDYg
KzY2MCw1NSBAQAogCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA5MzJGNUJEQTA4MjJBMUM3MDA3
MzY5NzU7CiAJCQlyZW1vdGVJbmZvID0gImpzYyAoVXBncmFkZWQpIjsKIAkJfTsKKwkJRjMzRUUw
RTIxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlz
YSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQz
MTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAy
OworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA0NTM5QzhGRjBFQzI3RjY0MDBBNzBGNEMgLyog
Z3Rlc3QuZnJhbWV3b3JrICovOworCQkJcmVtb3RlSW5mbyA9ICJndGVzdC1mcmFtZXdvcmsiOwor
CQl9OworCQlGMzNFRTBFNDEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5
ICovID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9y
dGFsID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKKwkJ
CXByb3h5VHlwZSA9IDI7CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OEZBMTAxQTIw
OUMwMDgzNjQyQSAvKiBsaWJndGVzdC5hICovOworCQkJcmVtb3RlSW5mbyA9ICJndGVzdC1zdGF0
aWMiOworCQl9OworCQlGMzNFRTBFNjEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRl
bVByb3h5ICovID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFp
bmVyUG9ydGFsID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAq
LzsKKwkJCXByb3h5VHlwZSA9IDI7CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OTBC
MTAxQTIxN0UwMDgzNjQyQSAvKiBsaWJndGVzdF9tYWluLmEgKi87CisJCQlyZW1vdGVJbmZvID0g
Imd0ZXN0X21haW4tc3RhdGljIjsKKwkJfTsKKwkJRjMzRUUwRTgxMzU2NzhDQTAwRTA5RTY1IC8q
IFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Q
cm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBn
dGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURT
dHJpbmcgPSA0MDg5OUY0MzBGRkE3MTg0MDAwQjI5QUUgLyogZ3Rlc3RfdW5pdHRlc3QtZnJhbWV3
b3JrICovOworCQkJcmVtb3RlSW5mbyA9ICJndGVzdF91bml0dGVzdC1mcmFtZXdvcmsiOworCQl9
OworCQlGMzNFRTBFQTEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICov
ID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9ydGFs
ID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKKwkJCXBy
b3h5VHlwZSA9IDI7CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OTg3MTAxQTM2ODUw
MDgzNjQyQSAvKiBndGVzdF91bml0dGVzdCAqLzsKKwkJCXJlbW90ZUluZm8gPSAiZ3Rlc3RfdW5p
dHRlc3Qtc3RhdGljIjsKKwkJfTsKKwkJRjMzRUUwRUMxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENv
bnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsK
KwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54
Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcg
PSA0MDg5QTAxMzBGRkFDRUZDMDAwQjI5QUUgLyogc2FtcGxlMV91bml0dGVzdC1mcmFtZXdvcmsg
Ki87CisJCQlyZW1vdGVJbmZvID0gInNhbXBsZTFfdW5pdHRlc3QtZnJhbWV3b3JrIjsKKwkJfTsK
KwkJRjMzRUUwRUUxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9
IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9
IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94
eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA0MEM4NDk5NzEwMUEzNkE2MDA4
MzY0MkEgLyogc2FtcGxlMV91bml0dGVzdC1zdGF0aWMgKi87CisJCQlyZW1vdGVJbmZvID0gInNh
bXBsZTFfdW5pdHRlc3Qtc3RhdGljIjsKKwkJfTsKIC8qIEVuZCBQQlhDb250YWluZXJJdGVtUHJv
eHkgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhDb3B5RmlsZXNCdWlsZFBoYXNlIHNlY3Rpb24g
Ki8KQEAgLTEyNDUsNiArMTI5OCwxMCBAQAogCQlFNDlEQzE1MTEyRUYyNzIyMDAxODRBMUYgLyog
U291cmNlUHJvdmlkZXJDYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
b3VyY2VQcm92aWRlckNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUU0OURD
MTU1MTJFRjI3NzIwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNvdXJjZVByb3ZpZGVyQ2FjaGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFNEQ4Q0U5QjEyRkM0MkUxMDBCQzlGNUEgLyogQmxv
b21GaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvb21GaWx0ZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1
IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9ICJ3cmFwcGVyLnBiLXByb2plY3QiOyBuYW1lID0gZ3Rlc3QueGNvZGVwcm9q
OyBwYXRoID0gLi4vVGhpcmRQYXJ0eS9ndGVzdC94Y29kZS9ndGVzdC54Y29kZXByb2o7IHNvdXJj
ZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJRjMzRUU0RjkxMzU2OTcyOTAwRTA5RTY1IC8qIFN0
cmluZ1Rlc3RzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFN0cmlu
Z1Rlc3RzLmNwcDsgcGF0aCA9IHRlc3RzL1N0cmluZ1Rlc3RzLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRjNCQkFFQUYxMzU2NTcyRjAwQ0JENDE0IC8qIHd0ZnRlc3RzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSAiY29tcGlsZWQubWFj
aC1vLmV4ZWN1dGFibGUiOyBpbmNsdWRlSW5JbmRleCA9IDA7IHBhdGggPSB3dGZ0ZXN0czsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJRjNCQkFGMEQxMzU2NjYyRTAwQ0JE
NDE0IC8qIFJ1bkFsbFd0ZlRlc3RzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFJ1bkFsbFd0ZlRlc3RzLmNwcDsgcGF0aCA9IHRlc3RzL1J1bkFsbFd0ZlRlc3RzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjNCRDMxRDAxMjY3MzAxODAwNjU0NjdG
IC8qIFRleHRQb3NpdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBUZXh0
UG9zaXRpb24uaDsgcGF0aCA9IHRleHQvVGV4dFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUY1QkIyQkM1MDMwRjc3MjEwMUZDRkUxRCAvKiBDb21wbGV0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRo
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbXBsZXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9OwogCQlGNUMyOTBF
NjAyODRGOThFMDE4NjM1Q0EgLyogSmF2YVNjcmlwdENvcmVQcmVmaXguaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSmF2YVNjcmlwdENvcmVQcmVm
aXguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9OwpAQCAtMTMyMiw2
ICsxMzc5LDE1IEBACiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2lu
ZyA9IDA7CiAJCX07CisJCUYzQkJBRUFEMTM1NjU3MkYwMENCRDQxNCAvKiBGcmFtZXdvcmtzICov
ID0geworCQkJaXNhID0gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1h
c2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkJRjMzRUUyRDgxMzU2NzlDQzAwRTA5
RTY1IC8qIGxpYmd0ZXN0LmEgaW4gRnJhbWV3b3JrcyAqLywKKwkJCQlGM0JCQUVCNTEzNTY1NzNB
MDBDQkQ0MTQgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCisJ
CQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CiAv
KiBFbmQgUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhH
cm91cCBzZWN0aW9uICovCkBAIC0xMzMyLDYgKzEzOTgsNyBAQAogCQkJCTkzMkY1QkUxMDgyMkEx
QzcwMDczNjk3NSAvKiBqc2MgKi8sCiAJCQkJMTQxMjExMjAwQTQ4NzkzQzAwNDgwMjU1IC8qIG1p
bmlkb20gKi8sCiAJCQkJMTRCRDU5QkYwQTNFOEY5MDAwQkFGNTlDIC8qIHRlc3RhcGkgKi8sCisJ
CQkJRjNCQkFFQUYxMzU2NTcyRjAwQ0JENDE0IC8qIHd0ZnRlc3RzICovLAogCQkJKTsKIAkJCW5h
bWUgPSBQcm9kdWN0czsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC0xMzQ5LDYgKzE0
MTYsNyBAQAogCQkwODY3RDY5MUZFODQwMjhGQzAyQUFDMDcgLyogSmF2YVNjcmlwdENvcmUgKi8g
PSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCUYzM0VFMEQzMTM1
Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi8sCiAJCQkJQTcxOEY4MjExMTc4RUI0
QjAwMjQ2NUE3IC8qIGNyZWF0ZV9yZWdleF90YWJsZXMgKi8sCiAJCQkJOTM3QjYzQ0MwOUU3NjZE
MjAwQTY3MUREIC8qIERlcml2ZWRTb3VyY2VzLm1ha2UgKi8sCiAJCQkJRjY5MkE4NTQwMjU1NTk3
RDAxRkY2MEY3IC8qIGNyZWF0ZV9oYXNoX3RhYmxlICovLApAQCAtMTYwMCw2ICsxNjY4LDcgQEAK
IAkJNjUxNjJFRjEwOEU2QTIxQzAwNzU1NkNEIC8qIHd0ZiAqLyA9IHsKIAkJCWlzYSA9IFBCWEdy
b3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJRjNCQkE4Q0ExMzU2NEVFRDAwQ0JENDE0IC8qIHRl
c3RzICovLAogCQkJCUE3QzQwQzA3MTMwQjA1N0QwMEQwMDJBMSAvKiBCbG9ja1N0YWNrLmggKi8s
CiAJCQkJQTdDNDBDMDgxMzBCMDU3RDAwRDAwMkExIC8qIFNlbnRpbmVsTGlua2VkTGlzdC5oICov
LAogCQkJCUE3QzQwQzA5MTMwQjA1N0QwMEQwMDJBMSAvKiBTaW5nbHlMaW5rZWRMaXN0LmggKi8s
CkBAIC0yMTcyLDYgKzIyNDEsMjkgQEAKIAkJCXBhdGggPSBpY3U7CiAJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOwogCQl9OworCQlGMzNFRTBENDEzNTY3OENBMDBFMDlFNjUgLyogUHJvZHVjdHMg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUYzM0VFMEUz
MTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC5mcmFtZXdvcmsgKi8sCisJCQkJRjMzRUUwRTUxMzU2
NzhDQTAwRTA5RTY1IC8qIGxpYmd0ZXN0LmEgKi8sCisJCQkJRjMzRUUwRTcxMzU2NzhDQTAwRTA5
RTY1IC8qIGxpYmd0ZXN0X21haW4uYSAqLywKKwkJCQlGMzNFRTBFOTEzNTY3OENBMDBFMDlFNjUg
LyogZ3Rlc3RfdW5pdHRlc3QtZnJhbWV3b3JrICovLAorCQkJCUYzM0VFMEVCMTM1Njc4Q0EwMEUw
OUU2NSAvKiBndGVzdF91bml0dGVzdCAqLywKKwkJCQlGMzNFRTBFRDEzNTY3OENBMDBFMDlFNjUg
Lyogc2FtcGxlMV91bml0dGVzdC1mcmFtZXdvcmsgKi8sCisJCQkJRjMzRUUwRUYxMzU2NzhDQTAw
RTA5RTY1IC8qIHNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljICovLAorCQkJKTsKKwkJCW5hbWUgPSBQ
cm9kdWN0czsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUYzQkJBOENBMTM1
NjRFRUQwMENCRDQxNCAvKiB0ZXN0cyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJRjMzRUU0RjkxMzU2OTcyOTAwRTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNw
cCAqLywKKwkJCQlGM0JCQUYwRDEzNTY2NjJFMDBDQkQ0MTQgLyogUnVuQWxsV3RmVGVzdHMuY3Bw
ICovLAorCQkJKTsKKwkJCW5hbWUgPSB0ZXN0czsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CisJCX07CiAvKiBFbmQgUEJYR3JvdXAgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhIZWFkZXJz
QnVpbGRQaGFzZSBzZWN0aW9uICovCkBAIC0yNjIyLDYgKzI3MTQsMjIgQEAKIAkJCXByb2R1Y3RS
ZWZlcmVuY2UgPSA5MzJGNUJFMTA4MjJBMUM3MDA3MzY5NzUgLyoganNjICovOwogCQkJcHJvZHVj
dFR5cGUgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS50b29sIjsKIAkJfTsKKwkJRjNCQkFFQUUx
MzU2NTcyRjAwQ0JENDE0IC8qIHd0ZnRlc3RzICovID0geworCQkJaXNhID0gUEJYTmF0aXZlVGFy
Z2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IEYzQkJBRUJCMTM1NjU3NEQwMENCRDQx
NCAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAid3RmdGVz
dHMiICovOworCQkJYnVpbGRQaGFzZXMgPSAoCisJCQkJRjNCQkFFQUMxMzU2NTcyRjAwQ0JENDE0
IC8qIFNvdXJjZXMgKi8sCisJCQkJRjNCQkFFQUQxMzU2NTcyRjAwQ0JENDE0IC8qIEZyYW1ld29y
a3MgKi8sCisJCQkpOworCQkJYnVpbGRSdWxlcyA9ICgKKwkJCSk7CisJCQlkZXBlbmRlbmNpZXMg
PSAoCisJCQkpOworCQkJbmFtZSA9IHd0ZnRlc3RzOworCQkJcHJvZHVjdE5hbWUgPSB3dGZ0ZXN0
czsKKwkJCXByb2R1Y3RSZWZlcmVuY2UgPSBGM0JCQUVBRjEzNTY1NzJGMDBDQkQ0MTQgLyogd3Rm
dGVzdHMgKi87CisJCQlwcm9kdWN0VHlwZSA9ICJjb20uYXBwbGUucHJvZHVjdC10eXBlLnRvb2wi
OworCQl9OwogLyogRW5kIFBCWE5hdGl2ZVRhcmdldCBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBC
WFByb2plY3Qgc2VjdGlvbiAqLwpAQCAtMjY0Myw2ICsyNzUxLDEyIEBACiAJCQltYWluR3JvdXAg
PSAwODY3RDY5MUZFODQwMjhGQzAyQUFDMDcgLyogSmF2YVNjcmlwdENvcmUgKi87CiAJCQlwcm9k
dWN0UmVmR3JvdXAgPSAwMzQ3NjhERkZGMzhBNTA0MTFEQjlDOEIgLyogUHJvZHVjdHMgKi87CiAJ
CQlwcm9qZWN0RGlyUGF0aCA9ICIiOworCQkJcHJvamVjdFJlZmVyZW5jZXMgPSAoCisJCQkJewor
CQkJCQlQcm9kdWN0R3JvdXAgPSBGMzNFRTBENDEzNTY3OENBMDBFMDlFNjUgLyogUHJvZHVjdHMg
Ki87CisJCQkJCVByb2plY3RSZWYgPSBGMzNFRTBEMzEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3Qu
eGNvZGVwcm9qICovOworCQkJCX0sCisJCQkpOwogCQkJcHJvamVjdFJvb3QgPSAiIjsKIAkJCXRh
cmdldHMgPSAoCiAJCQkJOTMyRjVCRTMwODIyQTFDNzAwNzM2OTc1IC8qIEFsbCAqLywKQEAgLTI2
NTEsMTAgKzI3NjUsNjMgQEAKIAkJCQkxNDEyMTExRjBBNDg3OTNDMDA0ODAyNTUgLyogbWluaWRv
bSAqLywKIAkJCQkxNEJENTlCRTBBM0U4RjkwMDBCQUY1OUMgLyogdGVzdGFwaSAqLywKIAkJCQk5
MzJGNUJEQTA4MjJBMUM3MDA3MzY5NzUgLyoganNjICovLAorCQkJCUYzQkJBRUFFMTM1NjU3MkYw
MENCRDQxNCAvKiB3dGZ0ZXN0cyAqLywKIAkJCSk7CiAJCX07CiAvKiBFbmQgUEJYUHJvamVjdCBz
ZWN0aW9uICovCiAKKy8qIEJlZ2luIFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8KKwkJRjMz
RUUwRTMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0LmZyYW1ld29yayAqLyA9IHsKKwkJCWlzYSA9
IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsKKwkJ
CXBhdGggPSBndGVzdC5mcmFtZXdvcms7CisJCQlyZW1vdGVSZWYgPSBGMzNFRTBFMjEzNTY3OENB
MDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOworCQkJc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsKKwkJfTsKKwkJRjMzRUUwRTUxMzU2NzhDQTAwRTA5RTY1IC8qIGxp
Ymd0ZXN0LmEgKi8gPSB7CisJCQlpc2EgPSBQQlhSZWZlcmVuY2VQcm94eTsKKwkJCWZpbGVUeXBl
ID0gYXJjaGl2ZS5hcjsKKwkJCXBhdGggPSBsaWJndGVzdC5hOworCQkJcmVtb3RlUmVmID0gRjMz
RUUwRTQxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJCXNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7CisJCX07CisJCUYzM0VFMEU3MTM1Njc4Q0Ew
MEUwOUU2NSAvKiBsaWJndGVzdF9tYWluLmEgKi8gPSB7CisJCQlpc2EgPSBQQlhSZWZlcmVuY2VQ
cm94eTsKKwkJCWZpbGVUeXBlID0gYXJjaGl2ZS5hcjsKKwkJCXBhdGggPSBsaWJndGVzdF9tYWlu
LmE7CisJCQlyZW1vdGVSZWYgPSBGMzNFRTBFNjEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFp
bmVySXRlbVByb3h5ICovOworCQkJc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJ
fTsKKwkJRjMzRUUwRTkxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0X3VuaXR0ZXN0LWZyYW1ld29y
ayAqLyA9IHsKKwkJCWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29t
cGlsZWQubWFjaC1vLmV4ZWN1dGFibGUiOworCQkJcGF0aCA9ICJndGVzdF91bml0dGVzdC1mcmFt
ZXdvcmsiOworCQkJcmVtb3RlUmVmID0gRjMzRUUwRTgxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENv
bnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
CisJCX07CisJCUYzM0VFMEVCMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdF91bml0dGVzdCAqLyA9
IHsKKwkJCWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29tcGlsZWQu
bWFjaC1vLmV4ZWN1dGFibGUiOworCQkJcGF0aCA9IGd0ZXN0X3VuaXR0ZXN0OworCQkJcmVtb3Rl
UmVmID0gRjMzRUUwRUExMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAq
LzsKKwkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7CisJCX07CisJCUYzM0VFMEVE
MTM1Njc4Q0EwMEUwOUU2NSAvKiBzYW1wbGUxX3VuaXR0ZXN0LWZyYW1ld29yayAqLyA9IHsKKwkJ
CWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1v
LmV4ZWN1dGFibGUiOworCQkJcGF0aCA9ICJzYW1wbGUxX3VuaXR0ZXN0LWZyYW1ld29yayI7CisJ
CQlyZW1vdGVSZWYgPSBGMzNFRTBFQzEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRl
bVByb3h5ICovOworCQkJc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJfTsKKwkJ
RjMzRUUwRUYxMzU2NzhDQTAwRTA5RTY1IC8qIHNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljICovID0g
eworCQkJaXNhID0gUEJYUmVmZXJlbmNlUHJveHk7CisJCQlmaWxlVHlwZSA9ICJjb21waWxlZC5t
YWNoLW8uZXhlY3V0YWJsZSI7CisJCQlwYXRoID0gInNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljIjsK
KwkJCXJlbW90ZVJlZiA9IEYzM0VFMEVFMTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJ
dGVtUHJveHkgKi87CisJCQlzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOworCQl9Owor
LyogRW5kIFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8KKwogLyogQmVnaW4gUEJYU2hlbGxT
Y3JpcHRCdWlsZFBoYXNlIHNlY3Rpb24gKi8KIAkJNUQyOUQ4QkUwRTk4NjBCNDAwQzNEMkQwIC8q
IENoZWNrIEZvciBXZWFrIFZUYWJsZXMgYW5kIEV4dGVybmFscyAqLyA9IHsKIAkJCWlzYSA9IFBC
WFNoZWxsU2NyaXB0QnVpbGRQaGFzZTsKQEAgLTI5OTMsNiArMzE2MCwxNSBAQAogCQkJKTsKIAkJ
CXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OworCQlGM0JCQUVB
QzEzNTY1NzJGMDBDQkQ0MTQgLyogU291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWFNvdXJjZXNC
dWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0g
KAorCQkJCUYzQkJBRjBFMTM1NjY2MkUwMENCRDQxNCAvKiBSdW5BbGxXdGZUZXN0cy5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlGMzNFRTRGQTEzNTY5NzI5MDBFMDlFNjUgLyogU3RyaW5nVGVzdHMu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJv
Y2Vzc2luZyA9IDA7CisJCX07CiAvKiBFbmQgUEJYU291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAq
LwogCiAvKiBCZWdpbiBQQlhUYXJnZXREZXBlbmRlbmN5IHNlY3Rpb24gKi8KQEAgLTMyNTQsNiAr
MzQzMCw4MiBAQAogCQkJfTsKIAkJCW5hbWUgPSBQcm9maWxpbmc7CiAJCX07CisJCUYzQkJBRUIx
MTM1NjU3MkYwMENCRDQxNCAvKiBEZWJ1ZyAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1
cmF0aW9uOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlHQ0NfUFJFUFJPQ0VTU09SX0RFRklO
SVRJT05TID0gKAorCQkJCQkiJChHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TKSIsCisJCQkJ
CSJcIkdURVNUX0hBU19SVFRJPTBcIiIsCisJCQkJKTsKKwkJCQlIRUFERVJfU0VBUkNIX1BBVEhT
ID0gKAorCQkJCQkiJChIRUFERVJfU0VBUkNIX1BBVEhTKSIsCisJCQkJCS4uL1RoaXJkUGFydHkv
Z3Rlc3QvaW5jbHVkZSwKKwkJCQkpOworCQkJCVBST0RVQ1RfTkFNRSA9IHd0ZnRlc3RzOworCQkJ
CVdBUk5JTkdfQ0ZMQUdTID0gKAorCQkJCQkiJChXQVJOSU5HX0NGTEFHU18kKFJFQUxfUExBVEZP
Uk1fTkFNRSkpIiwKKwkJCQkJIi1Xbm8tdW5kZWYiLAorCQkJCSk7CisJCQl9OworCQkJbmFtZSA9
IERlYnVnOworCQl9OworCQlGM0JCQUVCMjEzNTY1NzJGMDBDQkQ0MTQgLyogUmVsZWFzZSAqLyA9
IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOworCQkJYnVpbGRTZXR0aW5ncyA9IHsK
KwkJCQlHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gKAorCQkJCQkiJChHQ0NfUFJFUFJP
Q0VTU09SX0RFRklOSVRJT05TKSIsCisJCQkJCSJcIkdURVNUX0hBU19SVFRJPTBcIiIsCisJCQkJ
KTsKKwkJCQlIRUFERVJfU0VBUkNIX1BBVEhTID0gKAorCQkJCQkiJChIRUFERVJfU0VBUkNIX1BB
VEhTKSIsCisJCQkJCS4uL1RoaXJkUGFydHkvZ3Rlc3QvaW5jbHVkZSwKKwkJCQkpOworCQkJCVBS
T0RVQ1RfTkFNRSA9IHd0ZnRlc3RzOworCQkJCVdBUk5JTkdfQ0ZMQUdTID0gKAorCQkJCQkiJChX
QVJOSU5HX0NGTEFHU18kKFJFQUxfUExBVEZPUk1fTkFNRSkpIiwKKwkJCQkJIi1Xbm8tdW5kZWYi
LAorCQkJCSk7CisJCQl9OworCQkJbmFtZSA9IFJlbGVhc2U7CisJCX07CisJCUYzQkJBRUIzMTM1
NjU3MkYwMENCRDQxNCAvKiBQcm9maWxpbmcgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmln
dXJhdGlvbjsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJR0NDX1BSRVBST0NFU1NPUl9ERUZJ
TklUSU9OUyA9ICgKKwkJCQkJIiQoR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUykiLAorCQkJ
CQkiXCJHVEVTVF9IQVNfUlRUST0wXCIiLAorCQkJCSk7CisJCQkJSEVBREVSX1NFQVJDSF9QQVRI
UyA9ICgKKwkJCQkJIiQoSEVBREVSX1NFQVJDSF9QQVRIUykiLAorCQkJCQkuLi9UaGlyZFBhcnR5
L2d0ZXN0L2luY2x1ZGUsCisJCQkJKTsKKwkJCQlQUk9EVUNUX05BTUUgPSB3dGZ0ZXN0czsKKwkJ
CQlXQVJOSU5HX0NGTEFHUyA9ICgKKwkJCQkJIiQoV0FSTklOR19DRkxBR1NfJChSRUFMX1BMQVRG
T1JNX05BTUUpKSIsCisJCQkJCSItV25vLXVuZGVmIiwKKwkJCQkpOworCQkJfTsKKwkJCW5hbWUg
PSBQcm9maWxpbmc7CisJCX07CisJCUYzQkJBRUI0MTM1NjU3MkYwMENCRDQxNCAvKiBQcm9kdWN0
aW9uICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRp
bmdzID0geworCQkJCUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAoCisJCQkJCSIkKEdD
Q19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMpIiwKKwkJCQkJIlwiR1RFU1RfSEFTX1JUVEk9MFwi
IiwKKwkJCQkpOworCQkJCUhFQURFUl9TRUFSQ0hfUEFUSFMgPSAoCisJCQkJCSIkKEhFQURFUl9T
RUFSQ0hfUEFUSFMpIiwKKwkJCQkJLi4vVGhpcmRQYXJ0eS9ndGVzdC9pbmNsdWRlLAorCQkJCSk7
CisJCQkJUFJPRFVDVF9OQU1FID0gd3RmdGVzdHM7CisJCQkJV0FSTklOR19DRkxBR1MgPSAoCisJ
CQkJCSIkKFdBUk5JTkdfQ0ZMQUdTXyQoUkVBTF9QTEFURk9STV9OQU1FKSkiLAorCQkJCQkiLVdu
by11bmRlZiIsCisJCQkJKTsKKwkJCX07CisJCQluYW1lID0gUHJvZHVjdGlvbjsKKwkJfTsKIC8q
IEVuZCBYQ0J1aWxkQ29uZmlndXJhdGlvbiBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFhDQ29uZmln
dXJhdGlvbkxpc3Qgc2VjdGlvbiAqLwpAQCAtMzMzNCw2ICszNTg2LDE3IEBACiAJCQlkZWZhdWx0
Q29uZmlndXJhdGlvbklzVmlzaWJsZSA9IDA7CiAJCQlkZWZhdWx0Q29uZmlndXJhdGlvbk5hbWUg
PSBQcm9kdWN0aW9uOwogCQl9OworCQlGM0JCQUVCQjEzNTY1NzREMDBDQkQ0MTQgLyogQnVpbGQg
Y29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgInd0ZnRlc3RzIiAqLyA9IHsK
KwkJCWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CisJCQlidWlsZENvbmZpZ3VyYXRpb25zID0g
KAorCQkJCUYzQkJBRUIxMTM1NjU3MkYwMENCRDQxNCAvKiBEZWJ1ZyAqLywKKwkJCQlGM0JCQUVC
MjEzNTY1NzJGMDBDQkQ0MTQgLyogUmVsZWFzZSAqLywKKwkJCQlGM0JCQUVCMzEzNTY1NzJGMDBD
QkQ0MTQgLyogUHJvZmlsaW5nICovLAorCQkJCUYzQkJBRUI0MTM1NjU3MkYwMENCRDQxNCAvKiBQ
cm9kdWN0aW9uICovLAorCQkJKTsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uSXNWaXNpYmxlID0g
MDsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9IFByb2R1Y3Rpb247CisJCX07CiAvKiBF
bmQgWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovCiAJfTsKIAlyb290T2JqZWN0ID0gMDg2
N0Q2OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2plY3Qgb2JqZWN0ICovOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXN0cy9SdW5BbGxXdGZUZXN0cy5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1J1bkFsbFd0ZlRlc3RzLmNwcApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMzMwNDZmCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXN0cy9SdW5BbGxXdGZUZXN0cy5jcHAKQEAgLTAsMCAr
MSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKwor
aW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KSAKK3sKKyAgICBwcmludGYoIlJ1bm5pbmcg
bWFpbigpIGZyb20gZ3Rlc3RfbWFpbi5jY1xuIik7CisgICAgCisgICAgdGVzdGluZzo6SW5pdEdv
b2dsZVRlc3QoJmFyZ2MsIGFyZ3YpOworICAgIHJldHVybiBSVU5fQUxMX1RFU1RTKCk7Cit9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1N0cmluZ1Rlc3RzLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvdGVzdHMvU3RyaW5nVGVzdHMuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMwMDA4OTQKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1N0cmluZ1Rlc3RzLmNwcApAQCAtMCww
ICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6
CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIK
KyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2Yg
R29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkNTdHJpbmcuaCIKKworI2lu
Y2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKK25hbWVzcGFjZSB7CisKK2NsYXNzIENTdHJpbmdUZXN0
IDogcHVibGljIHRlc3Rpbmc6OlRlc3QgeworfTsKKworVEVTVF9GKENTdHJpbmdUZXN0LCBUZXN0
TGVuZ3RoKQoreworICAgIENTdHJpbmcgc3RyKCIiKTsKKyAgICBFWFBFQ1RfRVEoMHUsIHN0ci5s
ZW5ndGgoKSk7Cit9Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89664</attachid>
            <date>2011-04-14 15:05:19 -0700</date>
            <delta_ts>2011-04-15 07:55:35 -0700</delta_ts>
            <desc>Example test case for GTest in JavaScriptCore</desc>
            <filename>gtest-sample.patch</filename>
            <type>text/plain</type>
            <size>20441</size>
            <attacher name="Dmitry Lomov">dslomov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDFhNzQ0YjAuLmEyNWM4OTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDExLTA0LTE0ICBEbWl0cnkgTG9tb3Yg
IDxkc2xvbW92QGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIGEgc2FtcGxlIHRlc3QgY2FzZSBmb3IgR1Rlc3QgZnJhbWV3b3Jr
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODUwOQor
CisgICAgICAgIEFkZCBhbiBleGFtcGxlIG9mIEdUZXN0IHRlc3RjYXNlLCBjb21wbGV0ZSB3aXRo
IGEgcnVubmVyLCB0byBKYXZhU2NyaXB0Q29yZS4KKworICAgICAgICAqIEphdmFTY3JpcHRDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogd3RmL3Rlc3RzL1J1bkFsbFd0
ZlRlc3RzLmNwcDogQWRkZWQuCisgICAgICAgIChtYWluKToKKyAgICAgICAgKiB3dGYvdGVzdHMv
U3RyaW5nVGVzdHMuY3BwOiBBZGRlZC4KKwogMjAxMS0wNC0xNCAgT2xpdmVyIEh1bnQgIDxvbGl2
ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFRlbXBvcmFyaWx5IHJlbW92ZSBhc3NlcnRpb24gdGhh
dCdzIGZpcmluZyBhbGwgdGhlIHRpbWUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDIxNzNlZmYuLjM4NjZhZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZh
U2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01OTQs
NiArNTk0LDEwIEBACiAJCUU0OURDMTZDMTJFRjI5NEUwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRl
ckNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
NDlEQzE1MTEyRUYyNzIyMDAxODRBMUYgLyogU291cmNlUHJvdmlkZXJDYWNoZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUU0OURDMTZEMTJFRjI5
NTMwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ5REMxNDkxMkVGMjYxQTAwMTg0QTFGIC8q
IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtLmggKi87IH07CiAJCUU0RDhDRUZCMTJGQzQzOTYwMEJD
OUY1QSAvKiBCbG9vbUZpbHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTREOENFOUIxMkZDNDJFMTAwQkM5RjVBIC8qIEJsb29tRmlsdGVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjMzRUUyRDgx
MzU2NzlDQzAwRTA5RTY1IC8qIGxpYmd0ZXN0LmEgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGMzNFRTBFNTEzNTY3OENBMDBFMDlFNjUgLyogbGliZ3Rl
c3QuYSAqLzsgfTsKKwkJRjMzRUU0RkExMzU2OTcyOTAwRTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEYzM0VFNEY5
MTM1Njk3MjkwMEUwOUU2NSAvKiBTdHJpbmdUZXN0cy5jcHAgKi87IH07CisJCUYzQkJBRUI1MTM1
NjU3M0EwMENCRDQxNCAvKiBKYXZhU2NyaXB0Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJGNUJEOTA4MjJBMUM3MDA3MzY5
NzUgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrICovOyB9OworCQlGM0JCQUYwRTEzNTY2NjJF
MDBDQkQ0MTQgLyogUnVuQWxsV3RmVGVzdHMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRjNCQkFGMEQxMzU2NjYyRTAwQ0JENDE0IC8qIFJ1bkFsbFd0
ZlRlc3RzLmNwcCAqLzsgfTsKIAkJRjNCRDMxRUQxMjY3MzU3NzAwNjU0NjdGIC8qIFRleHRQb3Np
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjNC
RDMxRDAxMjY3MzAxODAwNjU0NjdGIC8qIFRleHRQb3NpdGlvbi5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUZEQTE1QzFFMTJCMDMwNUMwMDNBNTgz
QSAvKiBDb21wbGV4LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGREExNUMxNjEyQjAzMDI4MDAzQTU4M0EgLyogQ29tcGxleC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUZFMUI0NDdBMEVDQ0Q3M0IwMDRG
NEREMSAvKiBTdGRMaWJFeHRyYXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEZFMUI0NDc5MEVDQ0Q3M0IwMDRGNEREMSAvKiBTdGRMaWJFeHRyYXMuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNjU2LDYg
KzY2MCw1NSBAQAogCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA5MzJGNUJEQTA4MjJBMUM3MDA3
MzY5NzU7CiAJCQlyZW1vdGVJbmZvID0gImpzYyAoVXBncmFkZWQpIjsKIAkJfTsKKwkJRjMzRUUw
RTIxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlz
YSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQz
MTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAy
OworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA0NTM5QzhGRjBFQzI3RjY0MDBBNzBGNEMgLyog
Z3Rlc3QuZnJhbWV3b3JrICovOworCQkJcmVtb3RlSW5mbyA9ICJndGVzdC1mcmFtZXdvcmsiOwor
CQl9OworCQlGMzNFRTBFNDEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5
ICovID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9y
dGFsID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKKwkJ
CXByb3h5VHlwZSA9IDI7CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OEZBMTAxQTIw
OUMwMDgzNjQyQSAvKiBsaWJndGVzdC5hICovOworCQkJcmVtb3RlSW5mbyA9ICJndGVzdC1zdGF0
aWMiOworCQl9OworCQlGMzNFRTBFNjEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRl
bVByb3h5ICovID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFp
bmVyUG9ydGFsID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAq
LzsKKwkJCXByb3h5VHlwZSA9IDI7CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OTBC
MTAxQTIxN0UwMDgzNjQyQSAvKiBsaWJndGVzdF9tYWluLmEgKi87CisJCQlyZW1vdGVJbmZvID0g
Imd0ZXN0X21haW4tc3RhdGljIjsKKwkJfTsKKwkJRjMzRUUwRTgxMzU2NzhDQTAwRTA5RTY1IC8q
IFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Q
cm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBn
dGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURT
dHJpbmcgPSA0MDg5OUY0MzBGRkE3MTg0MDAwQjI5QUUgLyogZ3Rlc3RfdW5pdHRlc3QtZnJhbWV3
b3JrICovOworCQkJcmVtb3RlSW5mbyA9ICJndGVzdF91bml0dGVzdC1mcmFtZXdvcmsiOworCQl9
OworCQlGMzNFRTBFQTEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICov
ID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9ydGFs
ID0gRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLzsKKwkJCXBy
b3h5VHlwZSA9IDI7CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9IDQwQzg0OTg3MTAxQTM2ODUw
MDgzNjQyQSAvKiBndGVzdF91bml0dGVzdCAqLzsKKwkJCXJlbW90ZUluZm8gPSAiZ3Rlc3RfdW5p
dHRlc3Qtc3RhdGljIjsKKwkJfTsKKwkJRjMzRUUwRUMxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENv
bnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsK
KwkJCWNvbnRhaW5lclBvcnRhbCA9IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54
Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcg
PSA0MDg5QTAxMzBGRkFDRUZDMDAwQjI5QUUgLyogc2FtcGxlMV91bml0dGVzdC1mcmFtZXdvcmsg
Ki87CisJCQlyZW1vdGVJbmZvID0gInNhbXBsZTFfdW5pdHRlc3QtZnJhbWV3b3JrIjsKKwkJfTsK
KwkJRjMzRUUwRUUxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9
IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9
IEYzM0VFMEQzMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi87CisJCQlwcm94
eVR5cGUgPSAyOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA0MEM4NDk5NzEwMUEzNkE2MDA4
MzY0MkEgLyogc2FtcGxlMV91bml0dGVzdC1zdGF0aWMgKi87CisJCQlyZW1vdGVJbmZvID0gInNh
bXBsZTFfdW5pdHRlc3Qtc3RhdGljIjsKKwkJfTsKIC8qIEVuZCBQQlhDb250YWluZXJJdGVtUHJv
eHkgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhDb3B5RmlsZXNCdWlsZFBoYXNlIHNlY3Rpb24g
Ki8KQEAgLTEyNDUsNiArMTI5OCwxMCBAQAogCQlFNDlEQzE1MTEyRUYyNzIyMDAxODRBMUYgLyog
U291cmNlUHJvdmlkZXJDYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
b3VyY2VQcm92aWRlckNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUU0OURD
MTU1MTJFRjI3NzIwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNvdXJjZVByb3ZpZGVyQ2FjaGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFNEQ4Q0U5QjEyRkM0MkUxMDBCQzlGNUEgLyogQmxv
b21GaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvb21GaWx0ZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjMzRUUwRDMxMzU2NzhDQTAwRTA5RTY1
IC8qIGd0ZXN0Lnhjb2RlcHJvaiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9ICJ3cmFwcGVyLnBiLXByb2plY3QiOyBuYW1lID0gZ3Rlc3QueGNvZGVwcm9q
OyBwYXRoID0gLi4vVGhpcmRQYXJ0eS9ndGVzdC94Y29kZS9ndGVzdC54Y29kZXByb2o7IHNvdXJj
ZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJRjMzRUU0RjkxMzU2OTcyOTAwRTA5RTY1IC8qIFN0
cmluZ1Rlc3RzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFN0cmlu
Z1Rlc3RzLmNwcDsgcGF0aCA9IHRlc3RzL1N0cmluZ1Rlc3RzLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRjNCQkFFQUYxMzU2NTcyRjAwQ0JENDE0IC8qIHd0ZnRlc3RzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSAiY29tcGlsZWQubWFj
aC1vLmV4ZWN1dGFibGUiOyBpbmNsdWRlSW5JbmRleCA9IDA7IHBhdGggPSB3dGZ0ZXN0czsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJRjNCQkFGMEQxMzU2NjYyRTAwQ0JE
NDE0IC8qIFJ1bkFsbFd0ZlRlc3RzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFJ1bkFsbFd0ZlRlc3RzLmNwcDsgcGF0aCA9IHRlc3RzL1J1bkFsbFd0ZlRlc3RzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjNCRDMxRDAxMjY3MzAxODAwNjU0NjdG
IC8qIFRleHRQb3NpdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBUZXh0
UG9zaXRpb24uaDsgcGF0aCA9IHRleHQvVGV4dFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUY1QkIyQkM1MDMwRjc3MjEwMUZDRkUxRCAvKiBDb21wbGV0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRo
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbXBsZXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9OwogCQlGNUMyOTBF
NjAyODRGOThFMDE4NjM1Q0EgLyogSmF2YVNjcmlwdENvcmVQcmVmaXguaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSmF2YVNjcmlwdENvcmVQcmVm
aXguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9OwpAQCAtMTMyMiw2
ICsxMzc5LDE1IEBACiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2lu
ZyA9IDA7CiAJCX07CisJCUYzQkJBRUFEMTM1NjU3MkYwMENCRDQxNCAvKiBGcmFtZXdvcmtzICov
ID0geworCQkJaXNhID0gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1h
c2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkJRjMzRUUyRDgxMzU2NzlDQzAwRTA5
RTY1IC8qIGxpYmd0ZXN0LmEgaW4gRnJhbWV3b3JrcyAqLywKKwkJCQlGM0JCQUVCNTEzNTY1NzNB
MDBDQkQ0MTQgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCisJ
CQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CiAv
KiBFbmQgUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhH
cm91cCBzZWN0aW9uICovCkBAIC0xMzMyLDYgKzEzOTgsNyBAQAogCQkJCTkzMkY1QkUxMDgyMkEx
QzcwMDczNjk3NSAvKiBqc2MgKi8sCiAJCQkJMTQxMjExMjAwQTQ4NzkzQzAwNDgwMjU1IC8qIG1p
bmlkb20gKi8sCiAJCQkJMTRCRDU5QkYwQTNFOEY5MDAwQkFGNTlDIC8qIHRlc3RhcGkgKi8sCisJ
CQkJRjNCQkFFQUYxMzU2NTcyRjAwQ0JENDE0IC8qIHd0ZnRlc3RzICovLAogCQkJKTsKIAkJCW5h
bWUgPSBQcm9kdWN0czsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC0xMzQ5LDYgKzE0
MTYsNyBAQAogCQkwODY3RDY5MUZFODQwMjhGQzAyQUFDMDcgLyogSmF2YVNjcmlwdENvcmUgKi8g
PSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCUYzM0VFMEQzMTM1
Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC54Y29kZXByb2ogKi8sCiAJCQkJQTcxOEY4MjExMTc4RUI0
QjAwMjQ2NUE3IC8qIGNyZWF0ZV9yZWdleF90YWJsZXMgKi8sCiAJCQkJOTM3QjYzQ0MwOUU3NjZE
MjAwQTY3MUREIC8qIERlcml2ZWRTb3VyY2VzLm1ha2UgKi8sCiAJCQkJRjY5MkE4NTQwMjU1NTk3
RDAxRkY2MEY3IC8qIGNyZWF0ZV9oYXNoX3RhYmxlICovLApAQCAtMTYwMCw2ICsxNjY4LDcgQEAK
IAkJNjUxNjJFRjEwOEU2QTIxQzAwNzU1NkNEIC8qIHd0ZiAqLyA9IHsKIAkJCWlzYSA9IFBCWEdy
b3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJRjNCQkE4Q0ExMzU2NEVFRDAwQ0JENDE0IC8qIHRl
c3RzICovLAogCQkJCUE3QzQwQzA3MTMwQjA1N0QwMEQwMDJBMSAvKiBCbG9ja1N0YWNrLmggKi8s
CiAJCQkJQTdDNDBDMDgxMzBCMDU3RDAwRDAwMkExIC8qIFNlbnRpbmVsTGlua2VkTGlzdC5oICov
LAogCQkJCUE3QzQwQzA5MTMwQjA1N0QwMEQwMDJBMSAvKiBTaW5nbHlMaW5rZWRMaXN0LmggKi8s
CkBAIC0yMTcyLDYgKzIyNDEsMjkgQEAKIAkJCXBhdGggPSBpY3U7CiAJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOwogCQl9OworCQlGMzNFRTBENDEzNTY3OENBMDBFMDlFNjUgLyogUHJvZHVjdHMg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUYzM0VFMEUz
MTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdC5mcmFtZXdvcmsgKi8sCisJCQkJRjMzRUUwRTUxMzU2
NzhDQTAwRTA5RTY1IC8qIGxpYmd0ZXN0LmEgKi8sCisJCQkJRjMzRUUwRTcxMzU2NzhDQTAwRTA5
RTY1IC8qIGxpYmd0ZXN0X21haW4uYSAqLywKKwkJCQlGMzNFRTBFOTEzNTY3OENBMDBFMDlFNjUg
LyogZ3Rlc3RfdW5pdHRlc3QtZnJhbWV3b3JrICovLAorCQkJCUYzM0VFMEVCMTM1Njc4Q0EwMEUw
OUU2NSAvKiBndGVzdF91bml0dGVzdCAqLywKKwkJCQlGMzNFRTBFRDEzNTY3OENBMDBFMDlFNjUg
Lyogc2FtcGxlMV91bml0dGVzdC1mcmFtZXdvcmsgKi8sCisJCQkJRjMzRUUwRUYxMzU2NzhDQTAw
RTA5RTY1IC8qIHNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljICovLAorCQkJKTsKKwkJCW5hbWUgPSBQ
cm9kdWN0czsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUYzQkJBOENBMTM1
NjRFRUQwMENCRDQxNCAvKiB0ZXN0cyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJRjMzRUU0RjkxMzU2OTcyOTAwRTA5RTY1IC8qIFN0cmluZ1Rlc3RzLmNw
cCAqLywKKwkJCQlGM0JCQUYwRDEzNTY2NjJFMDBDQkQ0MTQgLyogUnVuQWxsV3RmVGVzdHMuY3Bw
ICovLAorCQkJKTsKKwkJCW5hbWUgPSB0ZXN0czsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CisJCX07CiAvKiBFbmQgUEJYR3JvdXAgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhIZWFkZXJz
QnVpbGRQaGFzZSBzZWN0aW9uICovCkBAIC0yNjIyLDYgKzI3MTQsMjIgQEAKIAkJCXByb2R1Y3RS
ZWZlcmVuY2UgPSA5MzJGNUJFMTA4MjJBMUM3MDA3MzY5NzUgLyoganNjICovOwogCQkJcHJvZHVj
dFR5cGUgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS50b29sIjsKIAkJfTsKKwkJRjNCQkFFQUUx
MzU2NTcyRjAwQ0JENDE0IC8qIHd0ZnRlc3RzICovID0geworCQkJaXNhID0gUEJYTmF0aXZlVGFy
Z2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IEYzQkJBRUJCMTM1NjU3NEQwMENCRDQx
NCAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAid3RmdGVz
dHMiICovOworCQkJYnVpbGRQaGFzZXMgPSAoCisJCQkJRjNCQkFFQUMxMzU2NTcyRjAwQ0JENDE0
IC8qIFNvdXJjZXMgKi8sCisJCQkJRjNCQkFFQUQxMzU2NTcyRjAwQ0JENDE0IC8qIEZyYW1ld29y
a3MgKi8sCisJCQkpOworCQkJYnVpbGRSdWxlcyA9ICgKKwkJCSk7CisJCQlkZXBlbmRlbmNpZXMg
PSAoCisJCQkpOworCQkJbmFtZSA9IHd0ZnRlc3RzOworCQkJcHJvZHVjdE5hbWUgPSB3dGZ0ZXN0
czsKKwkJCXByb2R1Y3RSZWZlcmVuY2UgPSBGM0JCQUVBRjEzNTY1NzJGMDBDQkQ0MTQgLyogd3Rm
dGVzdHMgKi87CisJCQlwcm9kdWN0VHlwZSA9ICJjb20uYXBwbGUucHJvZHVjdC10eXBlLnRvb2wi
OworCQl9OwogLyogRW5kIFBCWE5hdGl2ZVRhcmdldCBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBC
WFByb2plY3Qgc2VjdGlvbiAqLwpAQCAtMjY0Myw2ICsyNzUxLDEyIEBACiAJCQltYWluR3JvdXAg
PSAwODY3RDY5MUZFODQwMjhGQzAyQUFDMDcgLyogSmF2YVNjcmlwdENvcmUgKi87CiAJCQlwcm9k
dWN0UmVmR3JvdXAgPSAwMzQ3NjhERkZGMzhBNTA0MTFEQjlDOEIgLyogUHJvZHVjdHMgKi87CiAJ
CQlwcm9qZWN0RGlyUGF0aCA9ICIiOworCQkJcHJvamVjdFJlZmVyZW5jZXMgPSAoCisJCQkJewor
CQkJCQlQcm9kdWN0R3JvdXAgPSBGMzNFRTBENDEzNTY3OENBMDBFMDlFNjUgLyogUHJvZHVjdHMg
Ki87CisJCQkJCVByb2plY3RSZWYgPSBGMzNFRTBEMzEzNTY3OENBMDBFMDlFNjUgLyogZ3Rlc3Qu
eGNvZGVwcm9qICovOworCQkJCX0sCisJCQkpOwogCQkJcHJvamVjdFJvb3QgPSAiIjsKIAkJCXRh
cmdldHMgPSAoCiAJCQkJOTMyRjVCRTMwODIyQTFDNzAwNzM2OTc1IC8qIEFsbCAqLywKQEAgLTI2
NTEsMTAgKzI3NjUsNjMgQEAKIAkJCQkxNDEyMTExRjBBNDg3OTNDMDA0ODAyNTUgLyogbWluaWRv
bSAqLywKIAkJCQkxNEJENTlCRTBBM0U4RjkwMDBCQUY1OUMgLyogdGVzdGFwaSAqLywKIAkJCQk5
MzJGNUJEQTA4MjJBMUM3MDA3MzY5NzUgLyoganNjICovLAorCQkJCUYzQkJBRUFFMTM1NjU3MkYw
MENCRDQxNCAvKiB3dGZ0ZXN0cyAqLywKIAkJCSk7CiAJCX07CiAvKiBFbmQgUEJYUHJvamVjdCBz
ZWN0aW9uICovCiAKKy8qIEJlZ2luIFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8KKwkJRjMz
RUUwRTMxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0LmZyYW1ld29yayAqLyA9IHsKKwkJCWlzYSA9
IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsKKwkJ
CXBhdGggPSBndGVzdC5mcmFtZXdvcms7CisJCQlyZW1vdGVSZWYgPSBGMzNFRTBFMjEzNTY3OENB
MDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOworCQkJc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsKKwkJfTsKKwkJRjMzRUUwRTUxMzU2NzhDQTAwRTA5RTY1IC8qIGxp
Ymd0ZXN0LmEgKi8gPSB7CisJCQlpc2EgPSBQQlhSZWZlcmVuY2VQcm94eTsKKwkJCWZpbGVUeXBl
ID0gYXJjaGl2ZS5hcjsKKwkJCXBhdGggPSBsaWJndGVzdC5hOworCQkJcmVtb3RlUmVmID0gRjMz
RUUwRTQxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJCXNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7CisJCX07CisJCUYzM0VFMEU3MTM1Njc4Q0Ew
MEUwOUU2NSAvKiBsaWJndGVzdF9tYWluLmEgKi8gPSB7CisJCQlpc2EgPSBQQlhSZWZlcmVuY2VQ
cm94eTsKKwkJCWZpbGVUeXBlID0gYXJjaGl2ZS5hcjsKKwkJCXBhdGggPSBsaWJndGVzdF9tYWlu
LmE7CisJCQlyZW1vdGVSZWYgPSBGMzNFRTBFNjEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFp
bmVySXRlbVByb3h5ICovOworCQkJc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJ
fTsKKwkJRjMzRUUwRTkxMzU2NzhDQTAwRTA5RTY1IC8qIGd0ZXN0X3VuaXR0ZXN0LWZyYW1ld29y
ayAqLyA9IHsKKwkJCWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29t
cGlsZWQubWFjaC1vLmV4ZWN1dGFibGUiOworCQkJcGF0aCA9ICJndGVzdF91bml0dGVzdC1mcmFt
ZXdvcmsiOworCQkJcmVtb3RlUmVmID0gRjMzRUUwRTgxMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENv
bnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
CisJCX07CisJCUYzM0VFMEVCMTM1Njc4Q0EwMEUwOUU2NSAvKiBndGVzdF91bml0dGVzdCAqLyA9
IHsKKwkJCWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29tcGlsZWQu
bWFjaC1vLmV4ZWN1dGFibGUiOworCQkJcGF0aCA9IGd0ZXN0X3VuaXR0ZXN0OworCQkJcmVtb3Rl
UmVmID0gRjMzRUUwRUExMzU2NzhDQTAwRTA5RTY1IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAq
LzsKKwkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7CisJCX07CisJCUYzM0VFMEVE
MTM1Njc4Q0EwMEUwOUU2NSAvKiBzYW1wbGUxX3VuaXR0ZXN0LWZyYW1ld29yayAqLyA9IHsKKwkJ
CWlzYSA9IFBCWFJlZmVyZW5jZVByb3h5OworCQkJZmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1v
LmV4ZWN1dGFibGUiOworCQkJcGF0aCA9ICJzYW1wbGUxX3VuaXR0ZXN0LWZyYW1ld29yayI7CisJ
CQlyZW1vdGVSZWYgPSBGMzNFRTBFQzEzNTY3OENBMDBFMDlFNjUgLyogUEJYQ29udGFpbmVySXRl
bVByb3h5ICovOworCQkJc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJfTsKKwkJ
RjMzRUUwRUYxMzU2NzhDQTAwRTA5RTY1IC8qIHNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljICovID0g
eworCQkJaXNhID0gUEJYUmVmZXJlbmNlUHJveHk7CisJCQlmaWxlVHlwZSA9ICJjb21waWxlZC5t
YWNoLW8uZXhlY3V0YWJsZSI7CisJCQlwYXRoID0gInNhbXBsZTFfdW5pdHRlc3Qtc3RhdGljIjsK
KwkJCXJlbW90ZVJlZiA9IEYzM0VFMEVFMTM1Njc4Q0EwMEUwOUU2NSAvKiBQQlhDb250YWluZXJJ
dGVtUHJveHkgKi87CisJCQlzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOworCQl9Owor
LyogRW5kIFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8KKwogLyogQmVnaW4gUEJYU2hlbGxT
Y3JpcHRCdWlsZFBoYXNlIHNlY3Rpb24gKi8KIAkJNUQyOUQ4QkUwRTk4NjBCNDAwQzNEMkQwIC8q
IENoZWNrIEZvciBXZWFrIFZUYWJsZXMgYW5kIEV4dGVybmFscyAqLyA9IHsKIAkJCWlzYSA9IFBC
WFNoZWxsU2NyaXB0QnVpbGRQaGFzZTsKQEAgLTI5OTMsNiArMzE2MCwxNSBAQAogCQkJKTsKIAkJ
CXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OworCQlGM0JCQUVB
QzEzNTY1NzJGMDBDQkQ0MTQgLyogU291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWFNvdXJjZXNC
dWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0g
KAorCQkJCUYzQkJBRjBFMTM1NjY2MkUwMENCRDQxNCAvKiBSdW5BbGxXdGZUZXN0cy5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlGMzNFRTRGQTEzNTY5NzI5MDBFMDlFNjUgLyogU3RyaW5nVGVzdHMu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJv
Y2Vzc2luZyA9IDA7CisJCX07CiAvKiBFbmQgUEJYU291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAq
LwogCiAvKiBCZWdpbiBQQlhUYXJnZXREZXBlbmRlbmN5IHNlY3Rpb24gKi8KQEAgLTMyNTQsNiAr
MzQzMCw4MiBAQAogCQkJfTsKIAkJCW5hbWUgPSBQcm9maWxpbmc7CiAJCX07CisJCUYzQkJBRUIx
MTM1NjU3MkYwMENCRDQxNCAvKiBEZWJ1ZyAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1
cmF0aW9uOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlHQ0NfUFJFUFJPQ0VTU09SX0RFRklO
SVRJT05TID0gKAorCQkJCQkiJChHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TKSIsCisJCQkJ
CSJcIkdURVNUX0hBU19SVFRJPTBcIiIsCisJCQkJKTsKKwkJCQlIRUFERVJfU0VBUkNIX1BBVEhT
ID0gKAorCQkJCQkiJChIRUFERVJfU0VBUkNIX1BBVEhTKSIsCisJCQkJCS4uL1RoaXJkUGFydHkv
Z3Rlc3QvaW5jbHVkZSwKKwkJCQkpOworCQkJCVBST0RVQ1RfTkFNRSA9IHd0ZnRlc3RzOworCQkJ
CVdBUk5JTkdfQ0ZMQUdTID0gKAorCQkJCQkiJChXQVJOSU5HX0NGTEFHU18kKFJFQUxfUExBVEZP
Uk1fTkFNRSkpIiwKKwkJCQkJIi1Xbm8tdW5kZWYiLAorCQkJCSk7CisJCQl9OworCQkJbmFtZSA9
IERlYnVnOworCQl9OworCQlGM0JCQUVCMjEzNTY1NzJGMDBDQkQ0MTQgLyogUmVsZWFzZSAqLyA9
IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOworCQkJYnVpbGRTZXR0aW5ncyA9IHsK
KwkJCQlHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gKAorCQkJCQkiJChHQ0NfUFJFUFJP
Q0VTU09SX0RFRklOSVRJT05TKSIsCisJCQkJCSJcIkdURVNUX0hBU19SVFRJPTBcIiIsCisJCQkJ
KTsKKwkJCQlIRUFERVJfU0VBUkNIX1BBVEhTID0gKAorCQkJCQkiJChIRUFERVJfU0VBUkNIX1BB
VEhTKSIsCisJCQkJCS4uL1RoaXJkUGFydHkvZ3Rlc3QvaW5jbHVkZSwKKwkJCQkpOworCQkJCVBS
T0RVQ1RfTkFNRSA9IHd0ZnRlc3RzOworCQkJCVdBUk5JTkdfQ0ZMQUdTID0gKAorCQkJCQkiJChX
QVJOSU5HX0NGTEFHU18kKFJFQUxfUExBVEZPUk1fTkFNRSkpIiwKKwkJCQkJIi1Xbm8tdW5kZWYi
LAorCQkJCSk7CisJCQl9OworCQkJbmFtZSA9IFJlbGVhc2U7CisJCX07CisJCUYzQkJBRUIzMTM1
NjU3MkYwMENCRDQxNCAvKiBQcm9maWxpbmcgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmln
dXJhdGlvbjsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJR0NDX1BSRVBST0NFU1NPUl9ERUZJ
TklUSU9OUyA9ICgKKwkJCQkJIiQoR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUykiLAorCQkJ
CQkiXCJHVEVTVF9IQVNfUlRUST0wXCIiLAorCQkJCSk7CisJCQkJSEVBREVSX1NFQVJDSF9QQVRI
UyA9ICgKKwkJCQkJIiQoSEVBREVSX1NFQVJDSF9QQVRIUykiLAorCQkJCQkuLi9UaGlyZFBhcnR5
L2d0ZXN0L2luY2x1ZGUsCisJCQkJKTsKKwkJCQlQUk9EVUNUX05BTUUgPSB3dGZ0ZXN0czsKKwkJ
CQlXQVJOSU5HX0NGTEFHUyA9ICgKKwkJCQkJIiQoV0FSTklOR19DRkxBR1NfJChSRUFMX1BMQVRG
T1JNX05BTUUpKSIsCisJCQkJCSItV25vLXVuZGVmIiwKKwkJCQkpOworCQkJfTsKKwkJCW5hbWUg
PSBQcm9maWxpbmc7CisJCX07CisJCUYzQkJBRUI0MTM1NjU3MkYwMENCRDQxNCAvKiBQcm9kdWN0
aW9uICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRp
bmdzID0geworCQkJCUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAoCisJCQkJCSIkKEdD
Q19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMpIiwKKwkJCQkJIlwiR1RFU1RfSEFTX1JUVEk9MFwi
IiwKKwkJCQkpOworCQkJCUhFQURFUl9TRUFSQ0hfUEFUSFMgPSAoCisJCQkJCSIkKEhFQURFUl9T
RUFSQ0hfUEFUSFMpIiwKKwkJCQkJLi4vVGhpcmRQYXJ0eS9ndGVzdC9pbmNsdWRlLAorCQkJCSk7
CisJCQkJUFJPRFVDVF9OQU1FID0gd3RmdGVzdHM7CisJCQkJV0FSTklOR19DRkxBR1MgPSAoCisJ
CQkJCSIkKFdBUk5JTkdfQ0ZMQUdTXyQoUkVBTF9QTEFURk9STV9OQU1FKSkiLAorCQkJCQkiLVdu
by11bmRlZiIsCisJCQkJKTsKKwkJCX07CisJCQluYW1lID0gUHJvZHVjdGlvbjsKKwkJfTsKIC8q
IEVuZCBYQ0J1aWxkQ29uZmlndXJhdGlvbiBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFhDQ29uZmln
dXJhdGlvbkxpc3Qgc2VjdGlvbiAqLwpAQCAtMzMzNCw2ICszNTg2LDE3IEBACiAJCQlkZWZhdWx0
Q29uZmlndXJhdGlvbklzVmlzaWJsZSA9IDA7CiAJCQlkZWZhdWx0Q29uZmlndXJhdGlvbk5hbWUg
PSBQcm9kdWN0aW9uOwogCQl9OworCQlGM0JCQUVCQjEzNTY1NzREMDBDQkQ0MTQgLyogQnVpbGQg
Y29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgInd0ZnRlc3RzIiAqLyA9IHsK
KwkJCWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CisJCQlidWlsZENvbmZpZ3VyYXRpb25zID0g
KAorCQkJCUYzQkJBRUIxMTM1NjU3MkYwMENCRDQxNCAvKiBEZWJ1ZyAqLywKKwkJCQlGM0JCQUVC
MjEzNTY1NzJGMDBDQkQ0MTQgLyogUmVsZWFzZSAqLywKKwkJCQlGM0JCQUVCMzEzNTY1NzJGMDBD
QkQ0MTQgLyogUHJvZmlsaW5nICovLAorCQkJCUYzQkJBRUI0MTM1NjU3MkYwMENCRDQxNCAvKiBQ
cm9kdWN0aW9uICovLAorCQkJKTsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uSXNWaXNpYmxlID0g
MDsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9IFByb2R1Y3Rpb247CisJCX07CiAvKiBF
bmQgWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovCiAJfTsKIAlyb290T2JqZWN0ID0gMDg2
N0Q2OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2plY3Qgb2JqZWN0ICovOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXN0cy9SdW5BbGxXdGZUZXN0cy5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1J1bkFsbFd0ZlRlc3RzLmNwcApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MzdkOWFjCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXN0cy9SdW5BbGxXdGZUZXN0cy5jcHAKQEAgLTAsMCAr
MSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorI2lu
Y2x1ZGUgPHN0ZGlvLmg+CisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikgCit7Cisg
ICAgcHJpbnRmKCJSdW5uaW5nIG1haW4oKSBmcm9tIGd0ZXN0X21haW4uY2NcbiIpOworICAgIAor
ICAgIHRlc3Rpbmc6OkluaXRHb29nbGVUZXN0KCZhcmdjLCBhcmd2KTsKKyAgICByZXR1cm4gUlVO
X0FMTF9URVNUUygpOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90
ZXN0cy9TdHJpbmdUZXN0cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL3Rlc3RzL1N0
cmluZ1Rlc3RzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YmRhM2Qw
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi90ZXN0cy9TdHJp
bmdUZXN0cy5jcHAKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBO
ZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2luY2x1
ZGUgIkNTdHJpbmcuaCIKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCituYW1lc3BhY2Ugewor
CitjbGFzcyBDU3RyaW5nVGVzdCA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0IHsKK307CisKK1RFU1Rf
RihDU3RyaW5nVGVzdCwgVGVzdExlbmd0aCkKK3sKKyAgICBDU3RyaW5nIHN0cigiIik7CisgICAg
RVhQRUNUX0VRKDB1LCBzdHIubGVuZ3RoKCkpOworfQorfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>