<?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>34533</bug_id>
          
          <creation_ts>2010-02-03 08:49:06 -0800</creation_ts>
          <short_desc>[Qt] QScriptValue autotests</short_desc>
          <delta_ts>2010-02-04 05:51:06 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>31863</blocked>
    
    <blocked>34575</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jędrzej Nowacki">jedrzej.nowacki</reporter>
          <assigned_to name="Jędrzej Nowacki">jedrzej.nowacki</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hausmann</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>187390</commentid>
    <comment_count>0</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-02-03 08:49:06 -0800</bug_when>
    <thetext>QScriptValue autotest coverage is poor. We should have more test cases at least for the simplest operations like isXXX.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187394</commentid>
    <comment_count>1</comment_count>
      <attachid>48042</attachid>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-02-03 08:59:34 -0800</bug_when>
    <thetext>Created attachment 48042
Autotests v1

I suppose that style bot will warn about naming issues (an underscore inside methods names). I can change it, but I found that the naming style is coherent with Qt&apos;s autotest framework which use _data methods for a similar use case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187396</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-02-03 09:05:08 -0800</bug_when>
    <thetext>Attachment 48042 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
Last 3072 characters of output:
med. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:98:  isFunction_makeData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:99:  isFunction_test is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:101:  isNull_initData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:102:  isNull_makeData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:103:  isNull_test is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:105:  isObject_initData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:106:  isObject_makeData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:107:  isObject_test is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:109:  isString_initData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:110:  isString_makeData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:111:  isString_test is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:113:  isUndefined_initData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:114:  isUndefined_makeData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:115:  isUndefined_test is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:117:  isValid_initData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:118:  isValid_makeData is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h:119:  isValid_test is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Total errors found: 38


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187709</commentid>
    <comment_count>3</comment_count>
      <attachid>48042</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-02-04 02:54:17 -0800</bug_when>
    <thetext>Comment on attachment 48042
Autotests v1

&gt; +void tst_QScriptValue::initScriptValues()
&gt; +{
&gt; +    m_values.clear();
&gt; +    if (engine)
&gt; +        delete engine;

The if check is not necessary :)


Please also file bug reports against the style checker. Either we need to exclude the files from the style check or perhaps it can be fixed to ignore that particular rule in that file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187713</commentid>
    <comment_count>4</comment_count>
      <attachid>48042</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-04 03:15:40 -0800</bug_when>
    <thetext>Comment on attachment 48042
Autotests v1

Clearing flags on attachment: 48042

Committed r54340: &lt;http://trac.webkit.org/changeset/54340&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>187714</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-04 03:15:48 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>48042</attachid>
            <date>2010-02-03 08:59:34 -0800</date>
            <delta_ts>2010-02-04 03:15:40 -0800</delta_ts>
            <desc>Autotests v1</desc>
            <filename>tests.diff</filename>
            <type>text/plain</type>
            <size>33044</size>
            <attacher name="Jędrzej Nowacki">jedrzej.nowacki</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCBmNDI3ZGYwLi5lYmE0NDBjIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDcg
QEAKKzIwMTAtMDItMDMgIEplZHJ6ZWogTm93YWNraSAgPGplZHJ6ZWoubm93YWNraUBub2tpYS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5j
cmVhc2UgdGVzdCBjb3ZlcmFnZSBmb3IgdGhlIFFTY3JpcHRWYWx1ZS4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzQ1MzMKKworICAgICAgICAqIHF0
L3Rlc3RzL3FzY3JpcHR2YWx1ZS9xc2NyaXB0dmFsdWUucHJvOgorICAgICAgICAqIHF0L3Rlc3Rz
L3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmNwcDoKKyAgICAgICAgKHRzdF9RU2NyaXB0
VmFsdWU6OnRzdF9RU2NyaXB0VmFsdWUpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6fnRz
dF9RU2NyaXB0VmFsdWUpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6ZGF0YUhlbHBlcik6
CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjpuZXdSb3cpOgorICAgICAgICAodHN0X1FTY3Jp
cHRWYWx1ZTo6dGVzdEhlbHBlcik6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjpjdG9yKToK
KyAgICAgICAgKiBxdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZS5oOiBBZGRl
ZC4KKyAgICAgICAgKiBxdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZV9nZW5l
cmF0ZWQuY3BwOiBBZGRlZC4KKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmluaXRTY3JpcHRW
YWx1ZXMpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNWYWxpZF9pbml0RGF0YSk6Cisg
ICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc1ZhbGlkX21ha2VEYXRhKToKKyAgICAgICAgKHRz
dF9RU2NyaXB0VmFsdWU6OmlzVmFsaWRfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVl
Ojppc0Jvb2xfaW5pdERhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNCb29sX21h
a2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbF90ZXN0KToKKyAgICAg
ICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbGVhbl9pbml0RGF0YSk6CisgICAgICAgICh0c3Rf
UVNjcmlwdFZhbHVlOjppc0Jvb2xlYW5fbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRW
YWx1ZTo6aXNCb29sZWFuX3Rlc3QpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNGdW5j
dGlvbl9pbml0RGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc0Z1bmN0aW9uX21h
a2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzRnVuY3Rpb25fdGVzdCk6Cisg
ICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc051bGxfaW5pdERhdGEpOgorICAgICAgICAodHN0
X1FTY3JpcHRWYWx1ZTo6aXNOdWxsX21ha2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFs
dWU6OmlzTnVsbF90ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzU3RyaW5nX2lu
aXREYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzU3RyaW5nX21ha2VEYXRhKToK
KyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzU3RyaW5nX3Rlc3QpOgorICAgICAgICAodHN0
X1FTY3JpcHRWYWx1ZTo6aXNVbmRlZmluZWRfaW5pdERhdGEpOgorICAgICAgICAodHN0X1FTY3Jp
cHRWYWx1ZTo6aXNVbmRlZmluZWRfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6aXNVbmRlZmluZWRfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc09iamVj
dF9pbml0RGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc09iamVjdF9tYWtlRGF0
YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc09iamVjdF90ZXN0KToKKwogMjAxMC0w
MS0yOSAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CiAKICAgICAg
ICAgUnViYmVyLXN0YW1wZWQgYnkgTWFjaWVqIFN0YWNob3dpYWsuCmRpZmYgLS1naXQgYS9KYXZh
U2NyaXB0Q29yZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvcXNjcmlwdHZhbHVlLnBybyBiL0phdmFT
Y3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS9xc2NyaXB0dmFsdWUucHJvCmluZGV4IDFj
ZTViYzMuLmIxMjMzN2YgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3Jp
cHR2YWx1ZS9xc2NyaXB0dmFsdWUucHJvCisrKyBiL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3Fz
Y3JpcHR2YWx1ZS9xc2NyaXB0dmFsdWUucHJvCkBAIC0zLDUgKzMsOSBAQCBUQVJHRVQgPSB0c3Rf
cXNjcmlwdHZhbHVlCiBRVCArPSB0ZXN0bGliCiBpbmNsdWRlKC4uL3Rlc3RzLnByaSkKIAotU09V
UkNFUyArPSB0c3RfcXNjcmlwdHZhbHVlLmNwcAorU09VUkNFUyArPSBcCisgICAgdHN0X3FzY3Jp
cHR2YWx1ZS5jcHAgXAorICAgIHRzdF9xc2NyaXB0dmFsdWVfZ2VuZXJhdGVkLmNwcAogCitIRUFE
RVJTICs9IFwKKyAgICB0c3RfcXNjcmlwdHZhbHVlLmgKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRD
b3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmNwcCBiL0phdmFTY3Jp
cHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmNwcAppbmRleCAz
MzZhMWE2Li5iNDRjNWNhIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9xdC90ZXN0cy9xc2Ny
aXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZS5jcHAKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVz
dHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWUuY3BwCkBAIC0xNywzNSArMTcsNDMgQEAK
ICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KICovCiAKLSNpbmNsdWRlICJxc2NyaXB0
ZW5naW5lLmgiCi0jaW5jbHVkZSAicXNjcmlwdHZhbHVlLmgiCi0jaW5jbHVkZSA8UXRUZXN0L3F0
ZXN0Lmg+Ci0KLVFfREVDTEFSRV9NRVRBVFlQRShRU2NyaXB0VmFsdWUqKTsKLVFfREVDTEFSRV9N
RVRBVFlQRShRU2NyaXB0VmFsdWUpOwotCi1jbGFzcyB0c3RfUVNjcmlwdFZhbHVlIDogcHVibGlj
IFFPYmplY3QgewotICAgIFFfT0JKRUNUCi0KLXB1YmxpYzoKLSAgICB0c3RfUVNjcmlwdFZhbHVl
KCkge30KLSAgICB2aXJ0dWFsIH50c3RfUVNjcmlwdFZhbHVlKCkge30KLQotcHJpdmF0ZSBzbG90
czoKLSAgICB2b2lkIHRvU3RyaW5nX2RhdGEoKTsKLSAgICB2b2lkIHRvU3RyaW5nKCk7Ci0gICAg
dm9pZCBjb3B5Q29uc3RydWN0b3JfZGF0YSgpOwotICAgIHZvaWQgY29weUNvbnN0cnVjdG9yKCk7
Ci0gICAgdm9pZCBhc3NpZ25PcGVyYXRvcl9kYXRhKCk7Ci0gICAgdm9pZCBhc3NpZ25PcGVyYXRv
cigpOwotICAgIHZvaWQgZGF0YVNoYXJpbmcoKTsKLSAgICB2b2lkIGNvbnN0cnVjdG9yc19kYXRh
KCk7Ci0gICAgdm9pZCBjb25zdHJ1Y3RvcnMoKTsKLSAgICB2b2lkIGNhbGwoKTsKLQotICAgIC8v
IGNvcGllZCBmcm9tIFF0J3MgUXRTY3JpcHQuCi0gICAgdm9pZCBjdG9yKCk7Ci19OworI2luY2x1
ZGUgInRzdF9xc2NyaXB0dmFsdWUuaCIKKyNpbmNsdWRlIDxRdENvcmUvcW51bWVyaWMuaD4KKwor
dHN0X1FTY3JpcHRWYWx1ZTo6dHN0X1FTY3JpcHRWYWx1ZSgpCisgICAgOiBlbmdpbmUoMCkKK3sK
K30KKwordHN0X1FTY3JpcHRWYWx1ZTo6fnRzdF9RU2NyaXB0VmFsdWUoKQoreworICAgIGRlbGV0
ZSBlbmdpbmU7Cit9CisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6ZGF0YUhlbHBlcihJbml0RGF0
YUZ1bmN0aW9uIGluaXQsIERlZmluZURhdGFGdW5jdGlvbiBkZWZpbmUpCit7CisgICAgUVRlc3Q6
OmFkZENvbHVtbjxRU3RyaW5nPigiX19leHByZXNzaW9uX18iKTsKKyAgICAodGhpcy0+KmluaXQp
KCk7CisgICAgUUhhc2g8UVN0cmluZywgUVNjcmlwdFZhbHVlPjo6Y29uc3RfaXRlcmF0b3IgaXQ7
CisgICAgZm9yIChpdCA9IG1fdmFsdWVzLmNvbnN0QmVnaW4oKTsgaXQgIT0gbV92YWx1ZXMuY29u
c3RFbmQoKTsgKytpdCkgeworICAgICAgICBtX2N1cnJlbnRFeHByZXNzaW9uID0gaXQua2V5KCk7
CisgICAgICAgICh0aGlzLT4qZGVmaW5lKShpdC5rZXkoKS50b0xhdGluMSgpKTsKKyAgICB9Cisg
ICAgbV9jdXJyZW50RXhwcmVzc2lvbiA9IFFTdHJpbmcoKTsKK30KKworUVRlc3REYXRhJiB0c3Rf
UVNjcmlwdFZhbHVlOjpuZXdSb3coY29uc3QgY2hhciogdGFnKQoreworICAgIHJldHVybiBRVGVz
dDo6bmV3Um93KHRhZykgPDwgbV9jdXJyZW50RXhwcmVzc2lvbjsKK30KKwordm9pZCB0c3RfUVNj
cmlwdFZhbHVlOjp0ZXN0SGVscGVyKFRlc3RGdW5jdGlvbiBmdW4pCit7CisgICAgUUZFVENIKFFT
dHJpbmcsIF9fZXhwcmVzc2lvbl9fKTsKKyAgICBRU2NyaXB0VmFsdWUgdmFsdWUgPSBtX3ZhbHVl
cy52YWx1ZShfX2V4cHJlc3Npb25fXyk7CisgICAgKHRoaXMtPipmdW4pKF9fZXhwcmVzc2lvbl9f
LnRvTGF0aW4xKCksIHZhbHVlKTsKK30KKwogCiB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmN0b3Io
KQogewpAQCAtNTMsNyArNjEsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmN0b3IoKQogICAg
IHsKICAgICAgICAgUVNjcmlwdFZhbHVlIHY7CiAgICAgICAgIFFDT01QQVJFKHYuaXNWYWxpZCgp
LCBmYWxzZSk7Ci0gICAgICAgIFFDT01QQVJFKHYuZW5naW5lKCksIChRU2NyaXB0RW5naW5lICop
MCk7CisgICAgICAgIFFDT01QQVJFKHYuZW5naW5lKCksIChRU2NyaXB0RW5naW5lKikwKTsKICAg
ICB9CiAgICAgewogICAgICAgICBRU2NyaXB0VmFsdWUgdigmZW5nLCBRU2NyaXB0VmFsdWU6OlVu
ZGVmaW5lZFZhbHVlKTsKQEAgLTE2OCwxNCArMTc2LDE0IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1
ZTo6Y3RvcigpCiAgICAgICAgIFFDT01QQVJFKHYuaXNWYWxpZCgpLCB0cnVlKTsKICAgICAgICAg
UUNPTVBBUkUodi5pc1VuZGVmaW5lZCgpLCB0cnVlKTsKICAgICAgICAgUUNPTVBBUkUodi5pc09i
amVjdCgpLCBmYWxzZSk7Ci0gICAgICAgIFFDT01QQVJFKHYuZW5naW5lKCksIChRU2NyaXB0RW5n
aW5lICopMCk7CisgICAgICAgIFFDT01QQVJFKHYuZW5naW5lKCksIChRU2NyaXB0RW5naW5lKikw
KTsKICAgICB9CiAgICAgewogICAgICAgICBRU2NyaXB0VmFsdWUgdihRU2NyaXB0VmFsdWU6Ok51
bGxWYWx1ZSk7CiAgICAgICAgIFFDT01QQVJFKHYuaXNWYWxpZCgpLCB0cnVlKTsKICAgICAgICAg
UUNPTVBBUkUodi5pc051bGwoKSwgdHJ1ZSk7CiAgICAgICAgIFFDT01QQVJFKHYuaXNPYmplY3Qo
KSwgZmFsc2UpOwotICAgICAgICBRQ09NUEFSRSh2LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2luZSAq
KTApOworICAgICAgICBRQ09NUEFSRSh2LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2luZSopMCk7CiAg
ICAgfQogICAgIHsKICAgICAgICAgUVNjcmlwdFZhbHVlIHYoZmFsc2UpOwpAQCAtMTg0LDcgKzE5
Miw3IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6Y3RvcigpCiAgICAgICAgIFFDT01QQVJFKHYu
aXNCb29sKCksIHRydWUpOwogICAgICAgICBRQ09NUEFSRSh2LmlzT2JqZWN0KCksIGZhbHNlKTsK
ICAgICAgICAgUUNPTVBBUkUodi50b0Jvb2xlYW4oKSwgZmFsc2UpOwotICAgICAgICBRQ09NUEFS
RSh2LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2luZSAqKTApOworICAgICAgICBRQ09NUEFSRSh2LmVu
Z2luZSgpLCAoUVNjcmlwdEVuZ2luZSopMCk7CiAgICAgfQogICAgIHsKICAgICAgICAgUVNjcmlw
dFZhbHVlIHYoaW50KDEpKTsKQEAgLTE5Miw3ICsyMDAsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFs
dWU6OmN0b3IoKQogICAgICAgICBRQ09NUEFSRSh2LmlzTnVtYmVyKCksIHRydWUpOwogICAgICAg
ICBRQ09NUEFSRSh2LmlzT2JqZWN0KCksIGZhbHNlKTsKICAgICAgICAgUUNPTVBBUkUodi50b051
bWJlcigpLCAxLjApOwotICAgICAgICBRQ09NUEFSRSh2LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2lu
ZSAqKTApOworICAgICAgICBRQ09NUEFSRSh2LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2luZSopMCk7
CiAgICAgfQogICAgIHsKICAgICAgICAgUVNjcmlwdFZhbHVlIHYodWludCgxKSk7CkBAIC0yMDAs
NyArMjA4LDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjpjdG9yKCkKICAgICAgICAgUUNPTVBB
UkUodi5pc051bWJlcigpLCB0cnVlKTsKICAgICAgICAgUUNPTVBBUkUodi5pc09iamVjdCgpLCBm
YWxzZSk7CiAgICAgICAgIFFDT01QQVJFKHYudG9OdW1iZXIoKSwgMS4wKTsKLSAgICAgICAgUUNP
TVBBUkUodi5lbmdpbmUoKSwgKFFTY3JpcHRFbmdpbmUgKikwKTsKKyAgICAgICAgUUNPTVBBUkUo
di5lbmdpbmUoKSwgKFFTY3JpcHRFbmdpbmUqKTApOwogICAgIH0KICAgICB7CiAgICAgICAgIFFT
Y3JpcHRWYWx1ZSB2KDEuMCk7CkBAIC0yMDgsNyArMjE2LDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZh
bHVlOjpjdG9yKCkKICAgICAgICAgUUNPTVBBUkUodi5pc051bWJlcigpLCB0cnVlKTsKICAgICAg
ICAgUUNPTVBBUkUodi5pc09iamVjdCgpLCBmYWxzZSk7CiAgICAgICAgIFFDT01QQVJFKHYudG9O
dW1iZXIoKSwgMS4wKTsKLSAgICAgICAgUUNPTVBBUkUodi5lbmdpbmUoKSwgKFFTY3JpcHRFbmdp
bmUgKikwKTsKKyAgICAgICAgUUNPTVBBUkUodi5lbmdpbmUoKSwgKFFTY3JpcHRFbmdpbmUqKTAp
OwogICAgIH0KICAgICB7CiAgICAgICAgIFFTY3JpcHRWYWx1ZSB2KCJjaWFvIik7CkBAIC0yMTYs
NyArMjI0LDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjpjdG9yKCkKICAgICAgICAgUUNPTVBB
UkUodi5pc1N0cmluZygpLCB0cnVlKTsKICAgICAgICAgUUNPTVBBUkUodi5pc09iamVjdCgpLCBm
YWxzZSk7CiAgICAgICAgIFFDT01QQVJFKHYudG9TdHJpbmcoKSwgUUxhdGluMVN0cmluZygiY2lh
byIpKTsKLSAgICAgICAgUUNPTVBBUkUodi5lbmdpbmUoKSwgKFFTY3JpcHRFbmdpbmUgKikwKTsK
KyAgICAgICAgUUNPTVBBUkUodi5lbmdpbmUoKSwgKFFTY3JpcHRFbmdpbmUqKTApOwogICAgIH0K
ICAgICB7CiAgICAgICAgIFFTY3JpcHRWYWx1ZSB2KFFTdHJpbmcoImNpYW8iKSk7CkBAIC0yMjQs
MTkgKzIzMiwxOSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmN0b3IoKQogICAgICAgICBRQ09N
UEFSRSh2LmlzU3RyaW5nKCksIHRydWUpOwogICAgICAgICBRQ09NUEFSRSh2LmlzT2JqZWN0KCks
IGZhbHNlKTsKICAgICAgICAgUUNPTVBBUkUodi50b1N0cmluZygpLCBRTGF0aW4xU3RyaW5nKCJj
aWFvIikpOwotICAgICAgICBRQ09NUEFSRSh2LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2luZSAqKTAp
OworICAgICAgICBRQ09NUEFSRSh2LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2luZSopMCk7CiAgICAg
fQogICAgIC8vIGNvcHkgY29uc3RydWN0b3IsIG9wZXJhdG9yPQogICAgIHsKICAgICAgICAgUVNj
cmlwdFZhbHVlIHYoMS4wKTsKICAgICAgICAgUVNjcmlwdFZhbHVlIHYyKHYpOwogICAgICAgICBR
Q09NUEFSRSh2Mi5zdHJpY3RseUVxdWFscyh2KSwgdHJ1ZSk7Ci0gICAgICAgIFFDT01QQVJFKHYy
LmVuZ2luZSgpLCAoUVNjcmlwdEVuZ2luZSAqKTApOworICAgICAgICBRQ09NUEFSRSh2Mi5lbmdp
bmUoKSwgKFFTY3JpcHRFbmdpbmUqKTApOwogCiAgICAgICAgIFFTY3JpcHRWYWx1ZSB2Myh2KTsK
ICAgICAgICAgUUNPTVBBUkUodjMuc3RyaWN0bHlFcXVhbHModiksIHRydWUpOwogICAgICAgICBR
Q09NUEFSRSh2My5zdHJpY3RseUVxdWFscyh2MiksIHRydWUpOwotICAgICAgICBRQ09NUEFSRSh2
My5lbmdpbmUoKSwgKFFTY3JpcHRFbmdpbmUgKikwKTsKKyAgICAgICAgUUNPTVBBUkUodjMuZW5n
aW5lKCksIChRU2NyaXB0RW5naW5lKikwKTsKIAogICAgICAgICBRU2NyaXB0VmFsdWUgdjQoMi4w
KTsKICAgICAgICAgUUNPTVBBUkUodjQuc3RyaWN0bHlFcXVhbHModiksIGZhbHNlKTsKQEAgLTQy
Myw1ICs0MzEsNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmNhbGwoKQogICAgIFFWRVJJRlko
aW5jci5jYWxsKCkuaXNWYWxpZCgpKTsgLy8gRXhjZXB0aW9uLgogfQogCisKIFFURVNUX01BSU4o
dHN0X1FTY3JpcHRWYWx1ZSkKLSNpbmNsdWRlICJ0c3RfcXNjcmlwdHZhbHVlLm1vYyIKZGlmZiAt
LWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZh
bHVlLmggYi9KYXZhU2NyaXB0Q29yZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2
YWx1ZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlODFjNDkKLS0tIC9k
ZXYvbnVsbAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3Fz
Y3JpcHR2YWx1ZS5oCkBAIC0wLDAgKzEsMTMzIEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAx
MCBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKworICAgIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYworICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb247IGVpdGhlcgorICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
LiAgU2VlIHRoZSBHTlUKKyAgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1v
cmUgZGV0YWlscy4KKworICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl
IEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMg
bGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAg
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwg
RmlmdGggRmxvb3IsCisgICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaWZu
ZGVmIHRzdF9xc2NyaXB0dmFsdWVfaAorI2RlZmluZSB0c3RfcXNjcmlwdHZhbHVlX2gKKworI2lu
Y2x1ZGUgInFzY3JpcHRlbmdpbmUuaCIKKyNpbmNsdWRlICJxc2NyaXB0dmFsdWUuaCIKKyNpbmNs
dWRlIDxRdENvcmUvcW51bWVyaWMuaD4KKyNpbmNsdWRlIDxRdFRlc3QvcXRlc3QuaD4KKworUV9E
RUNMQVJFX01FVEFUWVBFKFFTY3JpcHRWYWx1ZSopOworUV9ERUNMQVJFX01FVEFUWVBFKFFTY3Jp
cHRWYWx1ZSk7CisKK2NsYXNzIHRzdF9RU2NyaXB0VmFsdWUgOiBwdWJsaWMgUU9iamVjdCB7Cisg
ICAgUV9PQkpFQ1QKKworcHVibGljOgorICAgIHRzdF9RU2NyaXB0VmFsdWUoKTsKKyAgICB2aXJ0
dWFsIH50c3RfUVNjcmlwdFZhbHVlKCk7CisKK3ByaXZhdGUgc2xvdHM6CisgICAgdm9pZCB0b1N0
cmluZ19kYXRhKCk7CisgICAgdm9pZCB0b1N0cmluZygpOworICAgIHZvaWQgY29weUNvbnN0cnVj
dG9yX2RhdGEoKTsKKyAgICB2b2lkIGNvcHlDb25zdHJ1Y3RvcigpOworICAgIHZvaWQgYXNzaWdu
T3BlcmF0b3JfZGF0YSgpOworICAgIHZvaWQgYXNzaWduT3BlcmF0b3IoKTsKKyAgICB2b2lkIGRh
dGFTaGFyaW5nKCk7CisgICAgdm9pZCBjb25zdHJ1Y3RvcnNfZGF0YSgpOworICAgIHZvaWQgY29u
c3RydWN0b3JzKCk7CisgICAgdm9pZCBjYWxsKCk7CisgICAgdm9pZCBjdG9yKCk7CisKKyAgICAv
LyBHZW5lcmF0ZWQgdGVzdCBmdW5jdGlvbnMuCisgICAgdm9pZCBpc0Jvb2xfZGF0YSgpOworICAg
IHZvaWQgaXNCb29sKCk7CisKKyAgICB2b2lkIGlzQm9vbGVhbl9kYXRhKCk7CisgICAgdm9pZCBp
c0Jvb2xlYW4oKTsKKworICAgIHZvaWQgaXNGdW5jdGlvbl9kYXRhKCk7CisgICAgdm9pZCBpc0Z1
bmN0aW9uKCk7CisKKyAgICB2b2lkIGlzTnVsbF9kYXRhKCk7CisgICAgdm9pZCBpc051bGwoKTsK
KworICAgIHZvaWQgaXNPYmplY3RfZGF0YSgpOworICAgIHZvaWQgaXNPYmplY3QoKTsKKworICAg
IHZvaWQgaXNTdHJpbmdfZGF0YSgpOworICAgIHZvaWQgaXNTdHJpbmcoKTsKKworICAgIHZvaWQg
aXNVbmRlZmluZWRfZGF0YSgpOworICAgIHZvaWQgaXNVbmRlZmluZWQoKTsKKworICAgIHZvaWQg
aXNWYWxpZF9kYXRhKCk7CisgICAgdm9pZCBpc1ZhbGlkKCk7CisKK3ByaXZhdGU6CisgICAgdHlw
ZWRlZiB2b2lkICh0c3RfUVNjcmlwdFZhbHVlOjoqSW5pdERhdGFGdW5jdGlvbikoKTsKKyAgICB0
eXBlZGVmIHZvaWQgKHRzdF9RU2NyaXB0VmFsdWU6OipEZWZpbmVEYXRhRnVuY3Rpb24pKGNvbnN0
IGNoYXIqKTsKKyAgICB2b2lkIGRhdGFIZWxwZXIoSW5pdERhdGFGdW5jdGlvbiBpbml0LCBEZWZp
bmVEYXRhRnVuY3Rpb24gZGVmaW5lKTsKKyAgICBRVGVzdERhdGEmIG5ld1Jvdyhjb25zdCBjaGFy
KiB0YWcpOworCisgICAgdHlwZWRlZiB2b2lkICh0c3RfUVNjcmlwdFZhbHVlOjoqVGVzdEZ1bmN0
aW9uKShjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVlJik7CisgICAgdm9pZCB0ZXN0SGVs
cGVyKFRlc3RGdW5jdGlvbiBmdW4pOworCisgICAgLy8gR2VuZXJhdGVkIGZ1bmN0aW9ucworCisg
ICAgdm9pZCBpbml0U2NyaXB0VmFsdWVzKCk7CisKKyAgICB2b2lkIGlzQm9vbF9pbml0RGF0YSgp
OworICAgIHZvaWQgaXNCb29sX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpOworICAgIHZvaWQg
aXNCb29sX3Rlc3QoY29uc3QgY2hhciogZXhwciwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSk7
CisKKyAgICB2b2lkIGlzQm9vbGVhbl9pbml0RGF0YSgpOworICAgIHZvaWQgaXNCb29sZWFuX21h
a2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpOworICAgIHZvaWQgaXNCb29sZWFuX3Rlc3QoY29uc3Qg
Y2hhciogZXhwciwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSk7CisKKyAgICB2b2lkIGlzRnVu
Y3Rpb25faW5pdERhdGEoKTsKKyAgICB2b2lkIGlzRnVuY3Rpb25fbWFrZURhdGEoY29uc3QgY2hh
ciogZXhwcik7CisgICAgdm9pZCBpc0Z1bmN0aW9uX3Rlc3QoY29uc3QgY2hhciogZXhwciwgY29u
c3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSk7CisKKyAgICB2b2lkIGlzTnVsbF9pbml0RGF0YSgpOwor
ICAgIHZvaWQgaXNOdWxsX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpOworICAgIHZvaWQgaXNO
dWxsX3Rlc3QoY29uc3QgY2hhciogZXhwciwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSk7CisK
KyAgICB2b2lkIGlzT2JqZWN0X2luaXREYXRhKCk7CisgICAgdm9pZCBpc09iamVjdF9tYWtlRGF0
YShjb25zdCBjaGFyKiBleHByKTsKKyAgICB2b2lkIGlzT2JqZWN0X3Rlc3QoY29uc3QgY2hhciog
ZXhwciwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSk7CisKKyAgICB2b2lkIGlzU3RyaW5nX2lu
aXREYXRhKCk7CisgICAgdm9pZCBpc1N0cmluZ19tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKTsK
KyAgICB2b2lkIGlzU3RyaW5nX3Rlc3QoY29uc3QgY2hhciogZXhwciwgY29uc3QgUVNjcmlwdFZh
bHVlJiB2YWx1ZSk7CisKKyAgICB2b2lkIGlzVW5kZWZpbmVkX2luaXREYXRhKCk7CisgICAgdm9p
ZCBpc1VuZGVmaW5lZF9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKTsKKyAgICB2b2lkIGlzVW5k
ZWZpbmVkX3Rlc3QoY29uc3QgY2hhciogZXhwciwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSk7
CisKKyAgICB2b2lkIGlzVmFsaWRfaW5pdERhdGEoKTsKKyAgICB2b2lkIGlzVmFsaWRfbWFrZURh
dGEoY29uc3QgY2hhciogZXhwcik7CisgICAgdm9pZCBpc1ZhbGlkX3Rlc3QoY29uc3QgY2hhciog
ZXhwciwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSk7CisKK3ByaXZhdGU6CisgICAgUVNjcmlw
dEVuZ2luZSogZW5naW5lOworICAgIFFIYXNoPFFTdHJpbmcsIFFTY3JpcHRWYWx1ZT4gbV92YWx1
ZXM7CisgICAgUVN0cmluZyBtX2N1cnJlbnRFeHByZXNzaW9uOworfTsKKworI2RlZmluZSBERUZJ
TkVfVEVTVF9GVU5DVElPTihuYW1lKSBcCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6Om5hbWUjI19k
YXRhKCkgeyBkYXRhSGVscGVyKCZ0c3RfUVNjcmlwdFZhbHVlOjpuYW1lIyNfaW5pdERhdGEsICZ0
c3RfUVNjcmlwdFZhbHVlOjpuYW1lIyNfbWFrZURhdGEpOyB9IFwKK3ZvaWQgdHN0X1FTY3JpcHRW
YWx1ZTo6bmFtZSgpIHsgdGVzdEhlbHBlcigmdHN0X1FTY3JpcHRWYWx1ZTo6bmFtZSMjX3Rlc3Qp
OyB9CisKKworCisjZW5kaWYgLy8gdHN0X3FzY3JpcHR2YWx1ZV9oCmRpZmYgLS1naXQgYS9KYXZh
U2NyaXB0Q29yZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZV9nZW5lcmF0
ZWQuY3BwIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0
dmFsdWVfZ2VuZXJhdGVkLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42
ZDhlZjQ4Ci0tLSAvZGV2L251bGwKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlw
dHZhbHVlL3RzdF9xc2NyaXB0dmFsdWVfZ2VuZXJhdGVkLmNwcApAQCAtMCwwICsxLDQ5NSBAQAor
LyoKKyAgICBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBz
dWJzaWRpYXJ5KC1pZXMpCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91
IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJt
cyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFzIHB1Ymxp
c2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2ZXJzaW9u
IDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u
CisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3
aWxsIGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl
biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICAgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICBZb3Ugc2hvdWxkIGhh
dmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlCisgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJ
Qi4gIElmIG5vdCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ
bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICAgIEJvc3RvbiwgTUEgMDIx
MTAtMTMwMSwgVVNBLgorKi8KKworI2luY2x1ZGUgInRzdF9xc2NyaXB0dmFsdWUuaCIKKworI2Rl
ZmluZSBERUZJTkVfVEVTVF9WQUxVRShleHByKSBtX3ZhbHVlcy5pbnNlcnQoUVN0cmluZzo6ZnJv
bUxhdGluMSgjZXhwciksIGV4cHIpCisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aW5pdFNjcmlw
dFZhbHVlcygpCit7CisgICAgbV92YWx1ZXMuY2xlYXIoKTsKKyAgICBpZiAoZW5naW5lKQorICAg
ICAgICBkZWxldGUgZW5naW5lOworICAgIGVuZ2luZSA9IG5ldyBRU2NyaXB0RW5naW5lOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxV
RShRU2NyaXB0VmFsdWUoUVNjcmlwdFZhbHVlOjpVbmRlZmluZWRWYWx1ZSkpOworICAgIERFRklO
RV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShRU2NyaXB0VmFsdWU6Ok51bGxWYWx1ZSkpOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSh0cnVlKSk7CisgICAgREVGSU5FX1RFU1Rf
VkFMVUUoUVNjcmlwdFZhbHVlKGZhbHNlKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlw
dFZhbHVlKGludCgxMjIpKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKHVp
bnQoMTI0KSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwKSk7CisgICAg
REVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAuMCkpOworICAgIERFRklORV9URVNUX1ZB
TFVFKFFTY3JpcHRWYWx1ZSgxMjMuMCkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRW
YWx1ZSg2LjM3ZS04KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKC02LjM3
ZS04KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDB4NDMyMTEyMzQpKTsK
KyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoMHgxMDAwMCkpOworICAgIERFRklO
RV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgweDEwMDAxKSk7CisgICAgREVGSU5FX1RFU1RfVkFM
VUUoUVNjcmlwdFZhbHVlKHFTTmFOKCkpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0
VmFsdWUocVFOYU4oKSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShxSW5m
KCkpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoLXFJbmYoKSkpOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgiTmFOIikpOworICAgIERFRklORV9URVNU
X1ZBTFVFKFFTY3JpcHRWYWx1ZSgiSW5maW5pdHkiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUo
UVNjcmlwdFZhbHVlKCItSW5maW5pdHkiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlw
dFZhbHVlKCJjaWFvIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShRU3Ry
aW5nOjpmcm9tTGF0aW4xKCJjaWFvIikpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0
VmFsdWUoUVN0cmluZygiIikpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUo
UVN0cmluZygpKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKFFTdHJpbmco
IjAiKSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShRU3RyaW5nKCIxMjMi
KSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShRU3RyaW5nKCIxMi40Iikp
KTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoMCwgUVNjcmlwdFZhbHVlOjpV
bmRlZmluZWRWYWx1ZSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCBR
U2NyaXB0VmFsdWU6Ok51bGxWYWx1ZSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRW
YWx1ZSgwLCB0cnVlKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsIGZh
bHNlKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsIGludCgxMjIpKSk7
CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsIHVpbnQoMTI0KSkpOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCAwKSk7CisgICAgREVGSU5FX1RFU1Rf
VkFMVUUoUVNjcmlwdFZhbHVlKDAsIDAuMCkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3Jp
cHRWYWx1ZSgwLCAxMjMuMCkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgw
LCA2LjM3ZS04KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsIC02LjM3
ZS04KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsIDB4NDMyMTEyMzQp
KTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoMCwgMHgxMDAwMCkpOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCAweDEwMDAxKSk7CisgICAgREVGSU5F
X1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsIHFTTmFOKCkpKTsKKyAgICBERUZJTkVfVEVTVF9W
QUxVRShRU2NyaXB0VmFsdWUoMCwgcVFOYU4oKSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFT
Y3JpcHRWYWx1ZSgwLCBxSW5mKCkpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFs
dWUoMCwgLXFJbmYoKSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCAi
TmFOIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCAiSW5maW5pdHki
KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsICItSW5maW5pdHkiKSk7
CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsICJjaWFvIikpOworICAgIERF
RklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCBRU3RyaW5nOjpmcm9tTGF0aW4xKCJjaWFv
IikpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoMCwgUVN0cmluZygiIikp
KTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoMCwgUVN0cmluZygpKSk7Cisg
ICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKDAsIFFTdHJpbmcoIjAiKSkpOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCBRU3RyaW5nKCIxMjMiKSkpOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZSgwLCBRU3RyaW5nKCIxMi4zIikpKTsKKyAg
ICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCBRU2NyaXB0VmFsdWU6OlVu
ZGVmaW5lZFZhbHVlKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2lu
ZSwgUVNjcmlwdFZhbHVlOjpOdWxsVmFsdWUpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2Ny
aXB0VmFsdWUoZW5naW5lLCB0cnVlKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZh
bHVlKGVuZ2luZSwgZmFsc2UpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUo
ZW5naW5lLCBpbnQoMTIyKSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShl
bmdpbmUsIHVpbnQoMTI0KSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShl
bmdpbmUsIDApKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCAw
LjApKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCAxMjMuMCkp
OworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShlbmdpbmUsIDYuMzdlLTgpKTsK
KyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCAtNi4zN2UtOCkpOwor
ICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShlbmdpbmUsIDB4NDMyMTEyMzQpKTsK
KyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCAweDEwMDAwKSk7Cisg
ICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2luZSwgMHgxMDAwMSkpOworICAg
IERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShlbmdpbmUsIHFTTmFOKCkpKTsKKyAgICBE
RUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCBxUU5hTigpKSk7CisgICAgREVG
SU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2luZSwgcUluZigpKSk7CisgICAgREVGSU5F
X1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2luZSwgLXFJbmYoKSkpOworICAgIERFRklORV9U
RVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShlbmdpbmUsICJOYU4iKSk7CisgICAgREVGSU5FX1RFU1Rf
VkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2luZSwgIkluZmluaXR5IikpOworICAgIERFRklORV9URVNU
X1ZBTFVFKFFTY3JpcHRWYWx1ZShlbmdpbmUsICItSW5maW5pdHkiKSk7CisgICAgREVGSU5FX1RF
U1RfVkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2luZSwgImNpYW8iKSk7CisgICAgREVGSU5FX1RFU1Rf
VkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZzo6ZnJvbUxhdGluMSgiY2lhbyIpKSk7
CisgICAgREVGSU5FX1RFU1RfVkFMVUUoUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZygiIikp
KTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKCkp
KTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKCIw
IikpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5n
KCIxMjMiKSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKFFTY3JpcHRWYWx1ZShlbmdpbmUsIFFT
dHJpbmcoIjEuMjMiKSkpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUo
IltdIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoInt9IikpOwor
ICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIk9iamVjdC5wcm90b3R5cGUi
KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiRGF0ZS5wcm90b3R5
cGUiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiQXJyYXkucHJv
dG90eXBlIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIkZ1bmN0
aW9uLnByb3RvdHlwZSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRl
KCJFcnJvci5wcm90b3R5cGUiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFs
dWF0ZSgiT2JqZWN0IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUo
IkFycmF5IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIk51bWJl
ciIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCJGdW5jdGlvbiIp
KTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCIoZnVuY3Rpb24oKSB7
IHJldHVybiAxOyB9KSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRl
KCIoZnVuY3Rpb24oKSB7IHJldHVybiAnY2lhbyc7IH0pIikpOworICAgIERFRklORV9URVNUX1ZB
TFVFKGVuZ2luZS0+ZXZhbHVhdGUoIihmdW5jdGlvbigpIHsgdGhyb3cgbmV3IEVycm9yKCdmb28n
KTsgfSkiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiL2Zvby8i
KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgibmV3IE9iamVjdCgp
IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIm5ldyBBcnJheSgp
IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIm5ldyBFcnJvcigp
IikpOworfQorCisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNWYWxpZF9pbml0RGF0YSgpCit7
CisgICAgUVRlc3Q6OmFkZENvbHVtbjxib29sPigiZXhwZWN0ZWQiKTsKKyAgICBpbml0U2NyaXB0
VmFsdWVzKCk7Cit9CisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNWYWxpZF9tYWtlRGF0YShj
b25zdCBjaGFyKiBleHByKQoreworICAgIHN0YXRpYyBRU2V0PFFTdHJpbmc+IGlzVmFsaWQ7Cisg
ICAgaWYgKGlzVmFsaWQuaXNFbXB0eSgpKSB7CisgICAgICAgIGlzVmFsaWQgPDwgIlFTY3JpcHRW
YWx1ZShRU2NyaXB0VmFsdWU6OlVuZGVmaW5lZFZhbHVlKSIKKyAgICAgICAgICAgICAgICA8PCAi
UVNjcmlwdFZhbHVlKFFTY3JpcHRWYWx1ZTo6TnVsbFZhbHVlKSIKKyAgICAgICAgICAgICAgICA8
PCAiUVNjcmlwdFZhbHVlKHRydWUpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUo
ZmFsc2UpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoaW50KDEyMikpIgorICAg
ICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUodWludCgxMjQpKSIKKyAgICAgICAgICAgICAg
ICA8PCAiUVNjcmlwdFZhbHVlKDApIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUo
MC4wKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDEyMy4wKSIKKyAgICAgICAg
ICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDYuMzdlLTgpIgorICAgICAgICAgICAgICAgIDw8ICJR
U2NyaXB0VmFsdWUoLTYuMzdlLTgpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUo
MHg0MzIxMTIzNCkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgweDEwMDAwKSIK
KyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDB4MTAwMDEpIgorICAgICAgICAgICAg
ICAgIDw8ICJRU2NyaXB0VmFsdWUocVNOYU4oKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3Jp
cHRWYWx1ZShxUU5hTigpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKHFJbmYo
KSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgtcUluZigpKSIKKyAgICAgICAg
ICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKFwiTmFOXCIpIgorICAgICAgICAgICAgICAgIDw8ICJR
U2NyaXB0VmFsdWUoXCJJbmZpbml0eVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZh
bHVlKFwiLUluZmluaXR5XCIpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoXCJj
aWFvXCIpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoUVN0cmluZzo6ZnJvbUxh
dGluMShcImNpYW9cIikpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoUVN0cmlu
ZyhcIlwiKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShRU3RyaW5nKCkpIgor
ICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoUVN0cmluZyhcIjBcIikpIgorICAgICAg
ICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoUVN0cmluZyhcIjEyM1wiKSkiCisgICAgICAgICAg
ICAgICAgPDwgIlFTY3JpcHRWYWx1ZShRU3RyaW5nKFwiMTIuNFwiKSkiCisgICAgICAgICAgICAg
ICAgPDwgIlFTY3JpcHRWYWx1ZSgwLCBRU2NyaXB0VmFsdWU6OlVuZGVmaW5lZFZhbHVlKSIKKyAg
ICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFFTY3JpcHRWYWx1ZTo6TnVsbFZhbHVl
KSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIHRydWUpIgorICAgICAgICAg
ICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgZmFsc2UpIgorICAgICAgICAgICAgICAgIDw8ICJR
U2NyaXB0VmFsdWUoMCwgaW50KDEyMikpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFs
dWUoMCwgdWludCgxMjQpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIDAp
IgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgMC4wKSIKKyAgICAgICAgICAg
ICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIDEyMy4wKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNj
cmlwdFZhbHVlKDAsIDYuMzdlLTgpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUo
MCwgLTYuMzdlLTgpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgMHg0MzIx
MTIzNCkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgwLCAweDEwMDAwKSIKKyAg
ICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIDB4MTAwMDEpIgorICAgICAgICAgICAg
ICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgcVNOYU4oKSkiCisgICAgICAgICAgICAgICAgPDwgIlFT
Y3JpcHRWYWx1ZSgwLCBxUU5hTigpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVl
KDAsIHFJbmYoKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgwLCAtcUluZigp
KSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFwiTmFOXCIpIgorICAgICAg
ICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgXCJJbmZpbml0eVwiKSIKKyAgICAgICAgICAg
ICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFwiLUluZmluaXR5XCIpIgorICAgICAgICAgICAgICAg
IDw8ICJRU2NyaXB0VmFsdWUoMCwgXCJjaWFvXCIpIgorICAgICAgICAgICAgICAgIDw8ICJRU2Ny
aXB0VmFsdWUoMCwgUVN0cmluZzo6ZnJvbUxhdGluMShcImNpYW9cIikpIgorICAgICAgICAgICAg
ICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgUVN0cmluZyhcIlwiKSkiCisgICAgICAgICAgICAgICAg
PDwgIlFTY3JpcHRWYWx1ZSgwLCBRU3RyaW5nKCkpIgorICAgICAgICAgICAgICAgIDw8ICJRU2Ny
aXB0VmFsdWUoMCwgUVN0cmluZyhcIjBcIikpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0
VmFsdWUoMCwgUVN0cmluZyhcIjEyM1wiKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRW
YWx1ZSgwLCBRU3RyaW5nKFwiMTIuM1wiKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRW
YWx1ZShlbmdpbmUsIFFTY3JpcHRWYWx1ZTo6VW5kZWZpbmVkVmFsdWUpIgorICAgICAgICAgICAg
ICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBRU2NyaXB0VmFsdWU6Ok51bGxWYWx1ZSkiCisg
ICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIHRydWUpIgorICAgICAgICAg
ICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBmYWxzZSkiCisgICAgICAgICAgICAgICAg
PDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIGludCgxMjIpKSIKKyAgICAgICAgICAgICAgICA8PCAi
UVNjcmlwdFZhbHVlKGVuZ2luZSwgdWludCgxMjQpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNj
cmlwdFZhbHVlKGVuZ2luZSwgMCkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShl
bmdpbmUsIDAuMCkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIDEy
My4wKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgNi4zN2UtOCki
CisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIC02LjM3ZS04KSIKKyAg
ICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgMHg0MzIxMTIzNCkiCisgICAg
ICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIDB4MTAwMDApIgorICAgICAgICAg
ICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCAweDEwMDAxKSIKKyAgICAgICAgICAgICAg
ICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgcVNOYU4oKSkiCisgICAgICAgICAgICAgICAgPDwg
IlFTY3JpcHRWYWx1ZShlbmdpbmUsIHFRTmFOKCkpIgorICAgICAgICAgICAgICAgIDw8ICJRU2Ny
aXB0VmFsdWUoZW5naW5lLCBxSW5mKCkpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFs
dWUoZW5naW5lLCAtcUluZigpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVu
Z2luZSwgXCJOYU5cIikiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUs
IFwiSW5maW5pdHlcIikiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUs
IFwiLUluZmluaXR5XCIpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5l
LCBcImNpYW9cIikiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFT
dHJpbmc6OmZyb21MYXRpbjEoXCJjaWFvXCIpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlw
dFZhbHVlKGVuZ2luZSwgUVN0cmluZyhcIlwiKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3Jp
cHRWYWx1ZShlbmdpbmUsIFFTdHJpbmcoKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRW
YWx1ZShlbmdpbmUsIFFTdHJpbmcoXCIwXCIpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlw
dFZhbHVlKGVuZ2luZSwgUVN0cmluZyhcIjEyM1wiKSkiCisgICAgICAgICAgICAgICAgPDwgIlFT
Y3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJpbmcoXCIxLjIzXCIpKSIKKyAgICAgICAgICAgICAgICA8
PCAiZW5naW5lLT5ldmFsdWF0ZShcIltdXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUt
PmV2YWx1YXRlKFwie31cIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUo
XCJPYmplY3QucHJvdG90eXBlXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1
YXRlKFwiRGF0ZS5wcm90b3R5cGVcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZh
bHVhdGUoXCJBcnJheS5wcm90b3R5cGVcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+
ZXZhbHVhdGUoXCJGdW5jdGlvbi5wcm90b3R5cGVcIikiCisgICAgICAgICAgICAgICAgPDwgImVu
Z2luZS0+ZXZhbHVhdGUoXCJFcnJvci5wcm90b3R5cGVcIikiCisgICAgICAgICAgICAgICAgPDwg
ImVuZ2luZS0+ZXZhbHVhdGUoXCJPYmplY3RcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJBcnJheVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFs
dWF0ZShcIk51bWJlclwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
IkZ1bmN0aW9uXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiKGZ1
bmN0aW9uKCkgeyByZXR1cm4gMTsgfSlcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+
ZXZhbHVhdGUoXCIoZnVuY3Rpb24oKSB7IHJldHVybiAnY2lhbyc7IH0pXCIpIgorICAgICAgICAg
ICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiKGZ1bmN0aW9uKCkgeyB0aHJvdyBuZXcgRXJy
b3IoJ2ZvbycpOyB9KVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
Ii9mb28vXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IE9i
amVjdCgpXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEFy
cmF5KClcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgRXJy
b3IoKVwiKSI7CisgICAgfQorICAgIG5ld1JvdyhleHByKSA8PCBpc1ZhbGlkLmNvbnRhaW5zKGV4
cHIpOworfQorCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzVmFsaWRfdGVzdChjb25zdCBjaGFy
KiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKK3sKKyAgICBRRkVUQ0goYm9vbCwgZXhwZWN0
ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLmlzVmFsaWQoKSwgZXhwZWN0ZWQpOworfQorCitERUZJ
TkVfVEVTVF9GVU5DVElPTihpc1ZhbGlkKQorCisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNC
b29sX2luaXREYXRhKCkKK3sKKyAgICBRVGVzdDo6YWRkQ29sdW1uPGJvb2w+KCJleHBlY3RlZCIp
OworICAgIGluaXRTY3JpcHRWYWx1ZXMoKTsKK30KKwordm9pZCB0c3RfUVNjcmlwdFZhbHVlOjpp
c0Jvb2xfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKK3sKKyAgICBzdGF0aWMgUVNldDxRU3Ry
aW5nPiBpc0Jvb2w7CisgICAgaWYgKGlzQm9vbC5pc0VtcHR5KCkpIHsKKyAgICAgICAgaXNCb29s
IDw8ICJRU2NyaXB0VmFsdWUodHJ1ZSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1
ZShmYWxzZSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgwLCB0cnVlKSIKKyAg
ICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIGZhbHNlKSIKKyAgICAgICAgICAgICAg
ICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgdHJ1ZSkiCisgICAgICAgICAgICAgICAgPDwgIlFT
Y3JpcHRWYWx1ZShlbmdpbmUsIGZhbHNlKSI7CisgICAgfQorICAgIG5ld1JvdyhleHByKSA8PCBp
c0Jvb2wuY29udGFpbnMoZXhwcik7Cit9CisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNCb29s
X3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCit7CisgICAgUUZF
VENIKGJvb2wsIGV4cGVjdGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS5pc0Jvb2woKSwgZXhwZWN0
ZWQpOworfQorCitERUZJTkVfVEVTVF9GVU5DVElPTihpc0Jvb2wpCisKKwordm9pZCB0c3RfUVNj
cmlwdFZhbHVlOjppc0Jvb2xlYW5faW5pdERhdGEoKQoreworICAgIFFUZXN0OjphZGRDb2x1bW48
Ym9vbD4oImV4cGVjdGVkIik7CisgICAgaW5pdFNjcmlwdFZhbHVlcygpOworfQorCit2b2lkIHRz
dF9RU2NyaXB0VmFsdWU6OmlzQm9vbGVhbl9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQorewor
ICAgIHN0YXRpYyBRU2V0PFFTdHJpbmc+IGlzQm9vbGVhbjsKKyAgICBpZiAoaXNCb29sZWFuLmlz
RW1wdHkoKSkgeworICAgICAgICBpc0Jvb2xlYW4gPDwgIlFTY3JpcHRWYWx1ZSh0cnVlKSIKKyAg
ICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGZhbHNlKSIKKyAgICAgICAgICAgICAgICA8
PCAiUVNjcmlwdFZhbHVlKDAsIHRydWUpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFs
dWUoMCwgZmFsc2UpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCB0
cnVlKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgZmFsc2UpIjsK
KyAgICB9CisgICAgbmV3Um93KGV4cHIpIDw8IGlzQm9vbGVhbi5jb250YWlucyhleHByKTsKK30K
Kwordm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc0Jvb2xlYW5fdGVzdChjb25zdCBjaGFyKiwgY29u
c3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKK3sKKyAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQpOwor
ICAgIFFDT01QQVJFKHZhbHVlLmlzQm9vbGVhbigpLCBleHBlY3RlZCk7Cit9CisKK0RFRklORV9U
RVNUX0ZVTkNUSU9OKGlzQm9vbGVhbikKKworCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzRnVu
Y3Rpb25faW5pdERhdGEoKQoreworICAgIFFUZXN0OjphZGRDb2x1bW48Ym9vbD4oImV4cGVjdGVk
Iik7CisgICAgaW5pdFNjcmlwdFZhbHVlcygpOworfQorCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6
OmlzRnVuY3Rpb25fbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKK3sKKyAgICBzdGF0aWMgUVNl
dDxRU3RyaW5nPiBpc0Z1bmN0aW9uOworICAgIGlmIChpc0Z1bmN0aW9uLmlzRW1wdHkoKSkgewor
ICAgICAgICBpc0Z1bmN0aW9uIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiRnVuY3Rpb24ucHJvdG90
eXBlXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiT2JqZWN0XCIp
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiQXJyYXlcIikiCisgICAg
ICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJOdW1iZXJcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJGdW5jdGlvblwiKSIKKyAgICAgICAgICAgICAg
ICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIihmdW5jdGlvbigpIHsgcmV0dXJuIDE7IH0pXCIpIgor
ICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiKGZ1bmN0aW9uKCkgeyByZXR1
cm4gJ2NpYW8nOyB9KVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
IihmdW5jdGlvbigpIHsgdGhyb3cgbmV3IEVycm9yKCdmb28nKTsgfSlcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIvZm9vL1wiKSI7CisgICAgfQorICAgIG5ld1Jv
dyhleHByKSA8PCBpc0Z1bmN0aW9uLmNvbnRhaW5zKGV4cHIpOworfQorCit2b2lkIHRzdF9RU2Ny
aXB0VmFsdWU6OmlzRnVuY3Rpb25fdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVl
JiB2YWx1ZSkKK3sKKyAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZh
bHVlLmlzRnVuY3Rpb24oKSwgZXhwZWN0ZWQpOworfQorCitERUZJTkVfVEVTVF9GVU5DVElPTihp
c0Z1bmN0aW9uKQorCisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNOdWxsX2luaXREYXRhKCkK
K3sKKyAgICBRVGVzdDo6YWRkQ29sdW1uPGJvb2w+KCJleHBlY3RlZCIpOworICAgIGluaXRTY3Jp
cHRWYWx1ZXMoKTsKK30KKwordm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc051bGxfbWFrZURhdGEo
Y29uc3QgY2hhciogZXhwcikKK3sKKyAgICBzdGF0aWMgUVNldDxRU3RyaW5nPiBpc051bGw7Cisg
ICAgaWYgKGlzTnVsbC5pc0VtcHR5KCkpIHsKKyAgICAgICAgaXNOdWxsIDw8ICJRU2NyaXB0VmFs
dWUoUVNjcmlwdFZhbHVlOjpOdWxsVmFsdWUpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0
VmFsdWUoMCwgUVNjcmlwdFZhbHVlOjpOdWxsVmFsdWUpIgorICAgICAgICAgICAgICAgIDw8ICJR
U2NyaXB0VmFsdWUoZW5naW5lLCBRU2NyaXB0VmFsdWU6Ok51bGxWYWx1ZSkiOworICAgIH0KKyAg
ICBuZXdSb3coZXhwcikgPDwgaXNOdWxsLmNvbnRhaW5zKGV4cHIpOworfQorCit2b2lkIHRzdF9R
U2NyaXB0VmFsdWU6OmlzTnVsbF90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUm
IHZhbHVlKQoreworICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFs
dWUuaXNOdWxsKCksIGV4cGVjdGVkKTsKK30KKworREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNOdWxs
KQorCisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNTdHJpbmdfaW5pdERhdGEoKQoreworICAg
IFFUZXN0OjphZGRDb2x1bW48Ym9vbD4oImV4cGVjdGVkIik7CisgICAgaW5pdFNjcmlwdFZhbHVl
cygpOworfQorCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzU3RyaW5nX21ha2VEYXRhKGNvbnN0
IGNoYXIqIGV4cHIpCit7CisgICAgc3RhdGljIFFTZXQ8UVN0cmluZz4gaXNTdHJpbmc7CisgICAg
aWYgKGlzU3RyaW5nLmlzRW1wdHkoKSkgeworICAgICAgICBpc1N0cmluZyA8PCAiUVNjcmlwdFZh
bHVlKFwiTmFOXCIpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoXCJJbmZpbml0
eVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKFwiLUluZmluaXR5XCIpIgor
ICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoXCJjaWFvXCIpIgorICAgICAgICAgICAg
ICAgIDw8ICJRU2NyaXB0VmFsdWUoUVN0cmluZzo6ZnJvbUxhdGluMShcImNpYW9cIikpIgorICAg
ICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoUVN0cmluZyhcIlwiKSkiCisgICAgICAgICAg
ICAgICAgPDwgIlFTY3JpcHRWYWx1ZShRU3RyaW5nKCkpIgorICAgICAgICAgICAgICAgIDw8ICJR
U2NyaXB0VmFsdWUoUVN0cmluZyhcIjBcIikpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0
VmFsdWUoUVN0cmluZyhcIjEyM1wiKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1
ZShRU3RyaW5nKFwiMTIuNFwiKSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgw
LCBcIk5hTlwiKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFwiSW5maW5p
dHlcIikiCisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgwLCBcIi1JbmZpbml0eVwi
KSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFwiY2lhb1wiKSIKKyAgICAg
ICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFFTdHJpbmc6OmZyb21MYXRpbjEoXCJjaWFv
XCIpKSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFFTdHJpbmcoXCJcIikp
IgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgUVN0cmluZygpKSIKKyAgICAg
ICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFFTdHJpbmcoXCIwXCIpKSIKKyAgICAgICAg
ICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFFTdHJpbmcoXCIxMjNcIikpIgorICAgICAgICAg
ICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgUVN0cmluZyhcIjEyLjNcIikpIgorICAgICAgICAg
ICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBcIk5hTlwiKSIKKyAgICAgICAgICAgICAg
ICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgXCJJbmZpbml0eVwiKSIKKyAgICAgICAgICAgICAg
ICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgXCItSW5maW5pdHlcIikiCisgICAgICAgICAgICAg
ICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFwiY2lhb1wiKSIKKyAgICAgICAgICAgICAgICA8
PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZzo6ZnJvbUxhdGluMShcImNpYW9cIikpIgor
ICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKFwiXCIpKSIK
KyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZygpKSIKKyAg
ICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZyhcIjBcIikpIgor
ICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKFwiMTIzXCIp
KSIKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZyhcIjEu
MjNcIikpIjsKKyAgICB9CisgICAgbmV3Um93KGV4cHIpIDw8IGlzU3RyaW5nLmNvbnRhaW5zKGV4
cHIpOworfQorCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzU3RyaW5nX3Rlc3QoY29uc3QgY2hh
ciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCit7CisgICAgUUZFVENIKGJvb2wsIGV4cGVj
dGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS5pc1N0cmluZygpLCBleHBlY3RlZCk7Cit9CisKK0RF
RklORV9URVNUX0ZVTkNUSU9OKGlzU3RyaW5nKQorCisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6
aXNVbmRlZmluZWRfaW5pdERhdGEoKQoreworICAgIFFUZXN0OjphZGRDb2x1bW48Ym9vbD4oImV4
cGVjdGVkIik7CisgICAgaW5pdFNjcmlwdFZhbHVlcygpOworfQorCit2b2lkIHRzdF9RU2NyaXB0
VmFsdWU6OmlzVW5kZWZpbmVkX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpCit7CisgICAgc3Rh
dGljIFFTZXQ8UVN0cmluZz4gaXNVbmRlZmluZWQ7CisgICAgaWYgKGlzVW5kZWZpbmVkLmlzRW1w
dHkoKSkgeworICAgICAgICBpc1VuZGVmaW5lZCA8PCAiUVNjcmlwdFZhbHVlKFFTY3JpcHRWYWx1
ZTo6VW5kZWZpbmVkVmFsdWUpIgorICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwg
UVNjcmlwdFZhbHVlOjpVbmRlZmluZWRWYWx1ZSkiCisgICAgICAgICAgICAgICAgPDwgIlFTY3Jp
cHRWYWx1ZShlbmdpbmUsIFFTY3JpcHRWYWx1ZTo6VW5kZWZpbmVkVmFsdWUpIgorICAgICAgICAg
ICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwie31cIikiOworICAgIH0KKyAgICBuZXdSb3co
ZXhwcikgPDwgaXNVbmRlZmluZWQuY29udGFpbnMoZXhwcik7Cit9CisKK3ZvaWQgdHN0X1FTY3Jp
cHRWYWx1ZTo6aXNVbmRlZmluZWRfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVl
JiB2YWx1ZSkKK3sKKyAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZh
bHVlLmlzVW5kZWZpbmVkKCksIGV4cGVjdGVkKTsKK30KKworREVGSU5FX1RFU1RfRlVOQ1RJT04o
aXNVbmRlZmluZWQpCisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNPYmplY3RfaW5pdERhdGEo
KQoreworICAgIFFUZXN0OjphZGRDb2x1bW48Ym9vbD4oImV4cGVjdGVkIik7CisgICAgaW5pdFNj
cmlwdFZhbHVlcygpOworfQorCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X21ha2VE
YXRhKGNvbnN0IGNoYXIqIGV4cHIpCit7CisgICAgc3RhdGljIFFTZXQ8UVN0cmluZz4gaXNPYmpl
Y3Q7CisgICAgaWYgKGlzT2JqZWN0LmlzRW1wdHkoKSkgeworICAgICAgICBpc09iamVjdCA8PCAi
ZW5naW5lLT5ldmFsdWF0ZShcIltdXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2
YWx1YXRlKFwiT2JqZWN0LnByb3RvdHlwZVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5l
LT5ldmFsdWF0ZShcIkRhdGUucHJvdG90eXBlXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdp
bmUtPmV2YWx1YXRlKFwiQXJyYXkucHJvdG90eXBlXCIpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwiRnVuY3Rpb24ucHJvdG90eXBlXCIpIgorICAgICAgICAgICAgICAg
IDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiRXJyb3IucHJvdG90eXBlXCIpIgorICAgICAgICAgICAg
ICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiT2JqZWN0XCIpIgorICAgICAgICAgICAgICAgIDw8
ICJlbmdpbmUtPmV2YWx1YXRlKFwiQXJyYXlcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJOdW1iZXJcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZh
bHVhdGUoXCJGdW5jdGlvblwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIihmdW5jdGlvbigpIHsgcmV0dXJuIDE7IH0pXCIpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwiKGZ1bmN0aW9uKCkgeyByZXR1cm4gJ2NpYW8nOyB9KVwiKSIKKyAg
ICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIihmdW5jdGlvbigpIHsgdGhyb3cg
bmV3IEVycm9yKCdmb28nKTsgfSlcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZh
bHVhdGUoXCIvZm9vL1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
Im5ldyBPYmplY3QoKVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
Im5ldyBBcnJheSgpXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwi
bmV3IEVycm9yKClcIikiOworICAgIH0KKyAgICBuZXdSb3coZXhwcikgPDwgaXNPYmplY3QuY29u
dGFpbnMoZXhwcik7Cit9CisKK3ZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNPYmplY3RfdGVzdChj
b25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKK3sKKyAgICBRRkVUQ0goYm9v
bCwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLmlzT2JqZWN0KCksIGV4cGVjdGVkKTsK
K30KKworREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNPYmplY3QpCisKKwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>