<?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>35387</bug_id>
          
          <creation_ts>2010-02-25 09:04:25 -0800</creation_ts>
          <short_desc>[Qt] Sometimes QScriptValue::isObject returns an incorrect value</short_desc>
          <delta_ts>2010-03-03 21:02:17 -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>
          <dependson>34850</dependson>
          <blocked>31863</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>jedrzej.nowacki</cc>
    
    <cc>kent.hansen</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>193748</commentid>
    <comment_count>0</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-02-25 09:04:25 -0800</bug_when>
    <thetext>Example:

bool foo() 
{
    QScriptEngine engine;
    return engine.evaluate(&quot;1&quot;).isObject();
}

Function foo() returns true. It seems that isObject() function call automatically converts a primitive value to a corespondent object wrapper. Issue is visible only if the value is returned as result of evaluate call. This: 

bool foo() 
{
    return QScriptValue(1).isObject();
}

works correctly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193750</commentid>
    <comment_count>1</comment_count>
      <attachid>49493</attachid>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-02-25 09:08:31 -0800</bug_when>
    <thetext>Created attachment 49493
Fix v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193754</commentid>
    <comment_count>2</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-02-25 09:09:32 -0800</bug_when>
    <thetext>Proposed patch depends on 34850</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193762</commentid>
    <comment_count>3</comment_count>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-02-25 09:20:38 -0800</bug_when>
    <thetext>Looks good, except for the misspelling in the doc for refineJSValue (&quot;retruns&quot;), and I think it should say &quot;Refines the state of this ... and returns the new state&quot;. No reason to use different wording in the description when the function already has a descriptive name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193775</commentid>
    <comment_count>4</comment_count>
      <attachid>49500</attachid>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-02-25 09:46:20 -0800</bug_when>
    <thetext>Created attachment 49500
Fix v2

(In reply to comment #3)
&gt; Looks good, except for the misspelling in the doc for refineJSValue
&gt; (&quot;retruns&quot;), and I think it should say &quot;Refines the state of this ... and
&gt; returns the new state&quot;. No reason to use different wording in the description
&gt; when the function already has a descriptive name.
Done.

As previous patch this one is dependent on bug 34850, that means it cant be applied right now. I have tried apply it on trunk;
~/dev/WebKit$ git apply -v /tmp/isObjectV2.diff
Checking patch JavaScriptCore/ChangeLog...
Checking patch JavaScriptCore/qt/api/qscriptvalue_p.h...
Checking patch JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue_generated.cpp...
error: while searching for:
{
    QFETCH(bool, expected);
    QCOMPARE(value.isObject(), expected);
}

DEFINE_TEST_FUNCTION(isObject)

void tst_QScriptValue::toString_initData()
{
    QTest::addColumn&lt;QString&gt;(&quot;expected&quot;);

error: patch failed: JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue_generated.cpp:552
error: JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue_generated.cpp: patch does not apply</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195535</commentid>
    <comment_count>5</comment_count>
      <attachid>49903</attachid>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-03-03 07:12:53 -0800</bug_when>
    <thetext>Created attachment 49903
Fix v3

Changes:
 - refineJSValue was renamed to refinedJSValue
 - fix typo in a comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195875</commentid>
    <comment_count>6</comment_count>
      <attachid>49903</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-03 21:02:13 -0800</bug_when>
    <thetext>Comment on attachment 49903
Fix v3

Clearing flags on attachment: 49903

Committed r55502: &lt;http://trac.webkit.org/changeset/55502&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195876</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-03 21:02:17 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49493</attachid>
            <date>2010-02-25 09:08:31 -0800</date>
            <delta_ts>2010-02-25 09:46:20 -0800</delta_ts>
            <desc>Fix v1</desc>
            <filename>isObjectV1.diff</filename>
            <type>text/plain</type>
            <size>38394</size>
            <attacher name="Jędrzej Nowacki">jedrzej.nowacki</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCA0YTEzNmRiLi42Y2IxNWFhIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjkg
QEAKKzIwMTAtMDItMjUgIEplZHJ6ZWogTm93YWNraSAgPGplZHJ6ZWoubm93YWNraUBub2tpYS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUVNj
cmlwdFZhbHVlOjppc09iamVjdCBmaXguCisKKyAgICAgICAgRml4IGJyb2tlbiBpbnRlcm5hbCBz
dGF0ZSBldmFsdWF0aW9uIGZyb20gSlNWYWx1ZSB0byBKU05hdGl2ZSAvIEpTT2JqZWN0LgorICAg
ICAgICBOZXcgZnVuY3Rpb24gd2FzIGludHJvZHVjZWQgd2hpY2ggc2hvdWxkIHRha2UgY2FyZSBh
Ym91dCBwcm9tb3RpbmcKKyAgICAgICAgSlNWYWx1ZSBzdGF0ZSBpbnNpZGUgUVNjcmlwdFZhbHVl
UHJpdmF0ZS4gSXQgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZCBvZiBhCisgICAgICAgIGRpcmVjdCBK
U0MgQyBBUEkgY2FsbC4KKworICAgICAgICBUaGUgYnVnIGV4cG9zZWQgYSB3ZWFrbmVzcyBpbiBh
dXRvdGVzdCBzdWl0ZSwgYXMgdGhlIFFTY3JpcHRWYWx1ZVByaXZhdGUKKyAgICAgICAgaXMgYmFz
ZWQgb24gc3RhdGUgbWFjaGluZSB3aXRoIGxhenkgc3RhdGUgZXZhbHVhdGlvbiwgdGhlcmUgaXMg
YSBwb3NzaWJpbGl0eQorICAgICAgICB0aGF0IHNlcmlhbCBzZXF1ZW5jaWFsIGNhbGxzIHRvIHRo
ZSBzYW1lIHB1YmxpYyBjb25zdCBmdW5jdGlvbiBjb3VsZCByZXR1cm4KKyAgICAgICAgZGlmZmVy
ZW50IHJlc3VsdHMuIFRoZSBwYXRjaCBmaXggdGhlIGlzc3VlLgorCisgICAgICAgIFtRdF0gU29t
ZXRpbWVzIFFTY3JpcHRWYWx1ZTo6aXNPYmplY3QgcmV0dXJucyBhbiBpbmNvcnJlY3QgdmFsdWUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1Mzg3CisK
KyAgICAgICAgKiBxdC9hcGkvcXNjcmlwdHZhbHVlX3AuaDoKKyAgICAgICAgKFFTY3JpcHRWYWx1
ZVByaXZhdGU6OmlzQm9vbCk6CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc051bWJl
cik6CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc051bGwpOgorICAgICAgICAoUVNj
cmlwdFZhbHVlUHJpdmF0ZTo6aXNTdHJpbmcpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0
ZTo6aXNVbmRlZmluZWQpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNFcnJvcik6
CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc09iamVjdCk6CisgICAgICAgIChRU2Ny
aXB0VmFsdWVQcml2YXRlOjppc0Z1bmN0aW9uKToKKyAgICAgICAgKFFTY3JpcHRWYWx1ZVByaXZh
dGU6OmNhbGwpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0ZTo6cmVmaW5lSlNWYWx1ZSk6
CisgICAgICAgICogcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWVfZ2VuZXJh
dGVkLmNwcDoKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmluaXRTY3JpcHRWYWx1ZXMpOgor
ICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNWYWxpZF9tYWtlRGF0YSk6CisgICAgICAgICh0
c3RfUVNjcmlwdFZhbHVlOjppc1ZhbGlkX3Rlc3QpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6aXNCb29sX21ha2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbF90
ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbGVhbl9tYWtlRGF0YSk6Cisg
ICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc0Jvb2xlYW5fdGVzdCk6CisgICAgICAgICh0c3Rf
UVNjcmlwdFZhbHVlOjppc051bWJlcl9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZh
bHVlOjppc051bWJlcl90ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzRnVuY3Rp
b25fdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc051bGxfbWFrZURhdGEpOgor
ICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNOdWxsX3Rlc3QpOgorICAgICAgICAodHN0X1FT
Y3JpcHRWYWx1ZTo6aXNTdHJpbmdfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6aXNTdHJpbmdfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVmaW5l
ZF9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVmaW5lZF90ZXN0
KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X21ha2VEYXRhKToKKyAgICAg
ICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X3Rlc3QpOgorICAgICAgICAodHN0X1FTY3Jp
cHRWYWx1ZTo6dG9TdHJpbmdfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6
dG9TdHJpbmdfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b051bWJlcl9tYWtl
RGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b051bWJlcl90ZXN0KToKKyAgICAg
ICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9vbF9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNj
cmlwdFZhbHVlOjp0b0Jvb2xfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b0Jv
b2xlYW5fbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9Cb29sZWFuX3Rl
c3QpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9JbnRlZ2VyX21ha2VEYXRhKToKKyAg
ICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvSW50ZWdlcl90ZXN0KToKKyAgICAgICAgKHRzdF9R
U2NyaXB0VmFsdWU6OnRvSW50MzJfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6dG9JbnQzMl90ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDMyX21h
a2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDMyX3Rlc3QpOgorICAg
ICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9VSW50MTZfbWFrZURhdGEpOgorICAgICAgICAodHN0
X1FTY3JpcHRWYWx1ZTo6dG9VSW50MTZfdGVzdCk6CisKIDIwMTAtMDItMjQgIE9saXZlciBIdW50
ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJl
bi4KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWVfcC5oIGIv
SmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgKaW5kZXggZjUyOGU1Yi4uOGYy
NDZkMCAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgK
KysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgKQEAgLTEzNiw2ICsx
MzYsNyBAQCBwcml2YXRlOgogICAgIGlubGluZSB2b2lkIHNldFZhbHVlKEpTVmFsdWVSZWYpOwog
CiAgICAgaW5saW5lIGJvb2wgaW5oZXJpdHMoY29uc3QgY2hhciopOworICAgIGlubGluZSBTdGF0
ZXMgcmVmaW5lSlNWYWx1ZSgpOwogCiAgICAgaW5saW5lIGJvb2wgaXNKU0Jhc2VkKCkgY29uc3Q7
CiAgICAgaW5saW5lIGJvb2wgaXNOdW1iZXJCYXNlZCgpIGNvbnN0OwpAQCAtMzI1LDcgKzMyNiw3
IEBAIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNCb29sKCkKICAgICBjYXNlIENCb29sOgog
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBjYXNlIEpTVmFsdWU6Ci0gICAgICAgIGlmIChpc09i
amVjdCgpKQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgpICE9IEpTTmF0aXZlKQogICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxsLXRocm91Z2guCiAgICAgY2FzZSBK
U05hdGl2ZToKQEAgLTM0MSw3ICszNDIsNyBAQCBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6Omlz
TnVtYmVyKCkKICAgICBjYXNlIENOdW1iZXI6CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIGNh
c2UgSlNWYWx1ZToKLSAgICAgICAgaWYgKGlzT2JqZWN0KCkpCisgICAgICAgIGlmIChyZWZpbmVK
U1ZhbHVlKCkgIT0gSlNOYXRpdmUpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAg
IC8vIEZhbGwtdGhyb3VnaC4KICAgICBjYXNlIEpTTmF0aXZlOgpAQCAtMzU3LDcgKzM1OCw3IEBA
IGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNOdWxsKCkKICAgICBjYXNlIENTcGVjaWFsOgog
ICAgICAgICByZXR1cm4gbV9udW1iZXIgPT0gc3RhdGljX2Nhc3Q8aW50PihRU2NyaXB0VmFsdWU6
Ok51bGxWYWx1ZSk7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBpZiAoaXNPYmplY3QoKSkK
KyAgICAgICAgaWYgKHJlZmluZUpTVmFsdWUoKSAhPSBKU05hdGl2ZSkKICAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICAgICAgLy8gRmFsbC10aHJvdWdoLgogICAgIGNhc2UgSlNOYXRpdmU6
CkBAIC0zNzMsNyArMzc0LDcgQEAgYm9vbCBRU2NyaXB0VmFsdWVQcml2YXRlOjppc1N0cmluZygp
CiAgICAgY2FzZSBDU3RyaW5nOgogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBjYXNlIEpTVmFs
dWU6Ci0gICAgICAgIGlmIChpc09iamVjdCgpKQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgp
ICE9IEpTTmF0aXZlKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxs
LXRocm91Z2guCiAgICAgY2FzZSBKU05hdGl2ZToKQEAgLTM4OSw3ICszOTAsNyBAQCBib29sIFFT
Y3JpcHRWYWx1ZVByaXZhdGU6OmlzVW5kZWZpbmVkKCkKICAgICBjYXNlIENTcGVjaWFsOgogICAg
ICAgICByZXR1cm4gbV9udW1iZXIgPT0gc3RhdGljX2Nhc3Q8aW50PihRU2NyaXB0VmFsdWU6OlVu
ZGVmaW5lZFZhbHVlKTsKICAgICBjYXNlIEpTVmFsdWU6Ci0gICAgICAgIGlmIChpc09iamVjdCgp
KQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgpICE9IEpTTmF0aXZlKQogICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxsLXRocm91Z2guCiAgICAgY2FzZSBKU05hdGl2
ZToKQEAgLTQwMyw3ICs0MDQsNyBAQCBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzRXJyb3Io
KQogewogICAgIHN3aXRjaCAobV9zdGF0ZSkgewogICAgIGNhc2UgSlNWYWx1ZToKLSAgICAgICAg
aWYgKCFpc09iamVjdCgpKQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgpICE9IEpTT2JqZWN0
KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxsLXRocm91Z2guCiAg
ICAgY2FzZSBKU09iamVjdDoKQEAgLTQxNiwxNCArNDE3LDExIEBAIGJvb2wgUVNjcmlwdFZhbHVl
UHJpdmF0ZTo6aXNFcnJvcigpCiBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzT2JqZWN0KCkK
IHsKICAgICBzd2l0Y2ggKG1fc3RhdGUpIHsKLSAgICBjYXNlIEpTT2JqZWN0OgotICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICBjYXNlIEpTVmFsdWU6Ci0gICAgICAgIG1fb2JqZWN0ID0gSlNWYWx1
ZVRvT2JqZWN0KGNvbnRleHQoKSwgdmFsdWUoKSwgLyogZXhjZXB0aW9uICovIDApOwotICAgICAg
ICBpZiAoIW1fb2JqZWN0KQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBtX3N0
YXRlID0gSlNPYmplY3Q7CisgICAgICAgIHJldHVybiByZWZpbmVKU1ZhbHVlKCkgPT0gSlNPYmpl
Y3Q7CisgICAgY2FzZSBKU09iamVjdDoKICAgICAgICAgcmV0dXJuIHRydWU7CisKICAgICBkZWZh
dWx0OgogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQpAQCAtNDMzLDEwICs0MzEsOCBAQCBi
b29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzRnVuY3Rpb24oKQogewogICAgIHN3aXRjaCAobV9z
dGF0ZSkgewogICAgIGNhc2UgSlNWYWx1ZToKLSAgICAgICAgbV9vYmplY3QgPSBKU1ZhbHVlVG9P
YmplY3QoY29udGV4dCgpLCB2YWx1ZSgpLCAvKiBleGNlcHRpb24gKi8gMCk7Ci0gICAgICAgIGlm
ICghbV9vYmplY3QpCisgICAgICAgIGlmIChyZWZpbmVKU1ZhbHVlKCkgIT0gSlNPYmplY3QpCiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIG1fc3RhdGUgPSBKU09iamVjdDsKICAg
ICAgICAgLy8gRmFsbC10aHJvdWdoLgogICAgIGNhc2UgSlNPYmplY3Q6CiAgICAgICAgIHJldHVy
biBKU09iamVjdElzRnVuY3Rpb24oY29udGV4dCgpLCBvYmplY3QoKSk7CkBAIC02NDAsMTIgKzYz
Niw4IEBAIFFTY3JpcHRWYWx1ZVByaXZhdGUqIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmNhbGwoY29u
c3QgUVNjcmlwdFZhbHVlUHJpdmF0ZSosIGNvbnN0CiB7CiAgICAgc3dpdGNoIChtX3N0YXRlKSB7
CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBtX29iamVjdCA9IEpTVmFsdWVUb09iamVjdChj
b250ZXh0KCksIHZhbHVlKCksIC8qIGV4Y2VwdGlvbiAqLyAwKTsKLSAgICAgICAgaWYgKCFvYmpl
Y3QoKSkgewotICAgICAgICAgICAgbV9zdGF0ZSA9IEpTVmFsdWU7CisgICAgICAgIGlmIChyZWZp
bmVKU1ZhbHVlKCkgIT0gSlNPYmplY3QpCiAgICAgICAgICAgICByZXR1cm4gbmV3IFFTY3JpcHRW
YWx1ZVByaXZhdGU7Ci0gICAgICAgIH0KLSAgICAgICAgbV9zdGF0ZSA9IEpTT2JqZWN0OwogICAg
ICAgICAvLyBGYWxsLXRocm91Z2guCiAgICAgY2FzZSBKU09iamVjdDoKICAgICAgICAgewpAQCAt
NzI1LDYgKzcxNywyNSBAQCBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmluaGVyaXRzKGNvbnN0
IGNoYXIqIG5hbWUpCiAKIC8qIQogICBcaW50ZXJuYWwKKyAgRXZhbHVhdGVzIHRoaXMgUVNjcmlw
dFZhbHVlIGludGVybmFsIHN0YXRlIHRvIEpTTmF0aXZlIG9yIEpTT2JqZWN0LgorICBSZXRydW5z
IGFjdHVhbCBzdGF0ZS4KKyovCitRU2NyaXB0VmFsdWVQcml2YXRlOjpTdGF0ZXMgUVNjcmlwdFZh
bHVlUHJpdmF0ZTo6cmVmaW5lSlNWYWx1ZSgpCit7CisgICAgUV9BU1NFUlQobV9zdGF0ZSA9PSBK
U1ZhbHVlKTsKKyAgICBpZiAoIUpTVmFsdWVJc09iamVjdChjb250ZXh0KCksIHZhbHVlKCkpKSB7
CisgICAgICAgIG1fc3RhdGUgPSBKU05hdGl2ZTsKKyAgICB9IGVsc2UgeworICAgICAgICBtX3N0
YXRlID0gSlNPYmplY3Q7CisgICAgICAgIC8vIFdlIGFyZSBzdXJlIHRoYXQgdmFsdWUgaXMgYW4g
SlNPYmplY3QsIHNvIHdlIGNhbiBjb25zdF9jYXN0IHNhZmVseSB3aXRob3V0CisgICAgICAgIC8v
IGNhbGxpbmcgSlNDIEMgQVBJIChKU1ZhbHVlVG9PYmplY3QoY29udGV4dCgpLCB2YWx1ZSgpLCAv
KiBleGNlcHRpb25zICovIDApKS4KKyAgICAgICAgbV9vYmplY3QgPSBjb25zdF9jYXN0PEpTT2Jq
ZWN0UmVmPihtX3ZhbHVlKTsKKyAgICB9CisgICAgcmV0dXJuIG1fc3RhdGU7Cit9CisKKy8qIQor
ICBcaW50ZXJuYWwKICAgUmV0dXJucyB0cnVlIGlmIFFTViBoYXZlIGFuIGVuZ2luZSBhc3NvY2lh
dGVkLgogKi8KIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNKU0Jhc2VkKCkgY29uc3QgeyBy
ZXR1cm4gbV9zdGF0ZSA+PSBKU1ZhbHVlOyB9CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9x
dC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZV9nZW5lcmF0ZWQuY3BwIGIvSmF2
YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWVfZ2VuZXJh
dGVkLmNwcAppbmRleCBiNjZjYWMyLi45NzBjOTYwIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZV9nZW5lcmF0ZWQuY3BwCisr
KyBiL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVl
X2dlbmVyYXRlZC5jcHAKQEAgLTEzMCw2ICsxMzAsMzUgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVl
Ojppbml0U2NyaXB0VmFsdWVzKCkKICAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1
YXRlKCJuZXcgT2JqZWN0KCkiKSk7CiAgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFs
dWF0ZSgibmV3IEFycmF5KCkiKSk7CiAgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFs
dWF0ZSgibmV3IEVycm9yKCkiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFs
dWF0ZSgiYSA9IG5ldyBPYmplY3QoKTsgYS5mb28gPSAyMjsgYS5mb28iKSk7CisgICAgREVGSU5F
X1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiVW5kZWZpbmVkIikpOworICAgIERFRklORV9U
RVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIk51bGwiKSk7CisgICAgREVGSU5FX1RFU1RfVkFM
VUUoZW5naW5lLT5ldmFsdWF0ZSgiVHJ1ZSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdp
bmUtPmV2YWx1YXRlKCJGYWxzZSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2
YWx1YXRlKCJ1bmRlZmluZWQiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFs
dWF0ZSgibnVsbCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCJ0
cnVlIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoImZhbHNlIikp
OworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIjEyMiIpKTsKKyAgICBE
RUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCIxMjQiKSk7CisgICAgREVGSU5FX1RF
U1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiMCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShl
bmdpbmUtPmV2YWx1YXRlKCIwLjAiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5l
dmFsdWF0ZSgiMTIzLjAiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0
ZSgiNi4zN2UtOCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCIt
Ni4zN2UtOCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCIweDQz
MjExMjM0IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIjB4MTAw
MDAiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiMHgxMDAwMSIp
KTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCJOYU4iKSk7CisgICAg
REVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiSW5maW5pdHkiKSk7CisgICAgREVG
SU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiLUluZmluaXR5IikpOworICAgIERFRklO
RV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIidjaWFvJyIpKTsKKyAgICBERUZJTkVfVEVT
VF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCInJyIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShl
bmdpbmUtPmV2YWx1YXRlKCInMCciKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5l
dmFsdWF0ZSgiJzEyMyciKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0
ZSgiJzEyLjQnIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+bnVsbFZhbHVlKCkp
OworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+dW5kZWZpbmVkVmFsdWUoKSk7CiB9CiAK
IApAQCAtMjQ0LDcgKzI3MywzNiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzVmFsaWRfbWFr
ZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFs
dWF0ZShcIi9mb28vXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwi
bmV3IE9iamVjdCgpXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwi
bmV3IEFycmF5KClcIikiCi0gICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJu
ZXcgRXJyb3IoKVwiKSI7CisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJu
ZXcgRXJyb3IoKVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcImEg
PSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIgorICAgICAgICAgICAgICAgIDw8
ICJlbmdpbmUtPmV2YWx1YXRlKFwiVW5kZWZpbmVkXCIpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwiTnVsbFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcIlRydWVcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUo
XCJGYWxzZVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcInVuZGVm
aW5lZFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIm51bGxcIiki
CisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJ0cnVlXCIpIgorICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiCisgICAgICAgICAgICAg
ICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiCisgICAgICAgICAgICAgICAgPDwgImVu
Z2luZS0+ZXZhbHVhdGUoXCIxMjRcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZh
bHVhdGUoXCIwXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMC4w
XCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiCisg
ICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCI2LjM3ZS04XCIpIgorICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdlLThcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIweDQzMjExMjM0XCIpIgorICAgICAgICAgICAg
ICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIKKyAgICAgICAgICAgICAgICA8
PCAiZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDFcIikiCisgICAgICAgICAgICAgICAgPDwgImVu
Z2luZS0+ZXZhbHVhdGUoXCJOYU5cIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZh
bHVhdGUoXCJJbmZpbml0eVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIi1JbmZpbml0eVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
IidjaWFvJ1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIicnXCIp
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIgorICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiCisgICAgICAgICAgICAg
ICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiCisgICAgICAgICAgICAgICAgPDwg
ImVuZ2luZS0+bnVsbFZhbHVlKCkiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+dW5kZWZp
bmVkVmFsdWUoKSI7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCBpc1ZhbGlkLmNvbnRhaW5z
KGV4cHIpOwogfQpAQCAtMjUzLDYgKzMxMSw3IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNW
YWxpZF90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAg
IFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFsdWUuaXNWYWxpZCgpLCBl
eHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUuaXNWYWxpZCgpLCBleHBlY3RlZCk7CiB9CiAK
IERFRklORV9URVNUX0ZVTkNUSU9OKGlzVmFsaWQpCkBAIC0yNzMsNyArMzMyLDkgQEAgdm9pZCB0
c3RfUVNjcmlwdFZhbHVlOjppc0Jvb2xfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAg
ICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIHRydWUpIgogICAgICAgICAgICAgICAgIDw8
ICJRU2NyaXB0VmFsdWUoMCwgZmFsc2UpIgogICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFs
dWUoZW5naW5lLCB0cnVlKSIKLSAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2lu
ZSwgZmFsc2UpIjsKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgZmFs
c2UpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIKKyAg
ICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIjsKICAgICB9CiAg
ICAgbmV3Um93KGV4cHIpIDw8IGlzQm9vbC5jb250YWlucyhleHByKTsKIH0KQEAgLTI4Miw2ICsz
NDMsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbF90ZXN0KGNvbnN0IGNoYXIqLCBj
b25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7
CiAgICAgUUNPTVBBUkUodmFsdWUuaXNCb29sKCksIGV4cGVjdGVkKTsKKyAgICBRQ09NUEFSRSh2
YWx1ZS5pc0Jvb2woKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTihpc0Jv
b2wpCkBAIC0zMDIsNyArMzY0LDkgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc0Jvb2xlYW5f
bWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZh
bHVlKDAsIHRydWUpIgogICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgZmFsc2Up
IgogICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCB0cnVlKSIKLSAgICAg
ICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgZmFsc2UpIjsKKyAgICAgICAgICAg
ICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgZmFsc2UpIgorICAgICAgICAgICAgICAgIDw8
ICJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5l
LT5ldmFsdWF0ZShcImZhbHNlXCIpIjsKICAgICB9CiAgICAgbmV3Um93KGV4cHIpIDw8IGlzQm9v
bGVhbi5jb250YWlucyhleHByKTsKIH0KQEAgLTMxMSwxMCArMzc1LDEyIEBAIHZvaWQgdHN0X1FT
Y3JpcHRWYWx1ZTo6aXNCb29sZWFuX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1
ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2wsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2
YWx1ZS5pc0Jvb2xlYW4oKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLmlzQm9vbGVh
bigpLCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKGlzQm9vbGVhbikKIAor
CiB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzTnVtYmVyX2luaXREYXRhKCkKIHsKICAgICBRVGVz
dDo6YWRkQ29sdW1uPGJvb2w+KCJleHBlY3RlZCIpOwpAQCAtMzY2LDcgKzQzMiwyMSBAQCB2b2lk
IHRzdF9RU2NyaXB0VmFsdWU6OmlzTnVtYmVyX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpCiAg
ICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIHFTTmFOKCkpIgogICAgICAg
ICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBxUU5hTigpKSIKICAgICAgICAgICAg
ICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgcUluZigpKSIKLSAgICAgICAgICAgICAgICA8
PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgLXFJbmYoKSkiOworICAgICAgICAgICAgICAgIDw8ICJR
U2NyaXB0VmFsdWUoZW5naW5lLCAtcUluZigpKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5l
LT5ldmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIgorICAg
ICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMTIyXCIpIgorICAgICAgICAgICAg
ICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFs
dWF0ZShcIjAuMFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIjEy
My4wXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiNi4zN2UtOFwi
KSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIi02LjM3ZS04XCIpIgor
ICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIKKyAg
ICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDBcIikiCisgICAgICAg
ICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIgorICAgICAgICAgICAg
ICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2lu
ZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIikiOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwg
aXNOdW1iZXIuY29udGFpbnMoZXhwcik7CiB9CkBAIC0zNzUsNiArNDU1LDcgQEAgdm9pZCB0c3Rf
UVNjcmlwdFZhbHVlOjppc051bWJlcl90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFs
dWUmIHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUo
dmFsdWUuaXNOdW1iZXIoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLmlzTnVtYmVy
KCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNOdW1iZXIpCkBAIC00
MDcsNiArNDg4LDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc0Z1bmN0aW9uX3Rlc3QoY29u
c3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2ws
IGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS5pc0Z1bmN0aW9uKCksIGV4cGVjdGVkKTsK
KyAgICBRQ09NUEFSRSh2YWx1ZS5pc0Z1bmN0aW9uKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5F
X1RFU1RfRlVOQ1RJT04oaXNGdW5jdGlvbikKQEAgLTQyNCw3ICs1MDYsOSBAQCB2b2lkIHRzdF9R
U2NyaXB0VmFsdWU6OmlzTnVsbF9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgIGlmIChp
c051bGwuaXNFbXB0eSgpKSB7CiAgICAgICAgIGlzTnVsbCA8PCAiUVNjcmlwdFZhbHVlKFFTY3Jp
cHRWYWx1ZTo6TnVsbFZhbHVlKSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAs
IFFTY3JpcHRWYWx1ZTo6TnVsbFZhbHVlKSIKLSAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZh
bHVlKGVuZ2luZSwgUVNjcmlwdFZhbHVlOjpOdWxsVmFsdWUpIjsKKyAgICAgICAgICAgICAgICA8
PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVNjcmlwdFZhbHVlOjpOdWxsVmFsdWUpIgorICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIKKyAgICAgICAgICAgICAg
ICA8PCAiZW5naW5lLT5udWxsVmFsdWUoKSI7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCBp
c051bGwuY29udGFpbnMoZXhwcik7CiB9CkBAIC00MzMsNiArNTE3LDcgQEAgdm9pZCB0c3RfUVNj
cmlwdFZhbHVlOjppc051bGxfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2
YWx1ZSkKIHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQpOwogICAgIFFDT01QQVJFKHZhbHVl
LmlzTnVsbCgpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUuaXNOdWxsKCksIGV4cGVj
dGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNOdWxsKQpAQCAtNDc3LDcgKzU2Miwx
MiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzU3RyaW5nX21ha2VEYXRhKGNvbnN0IGNoYXIq
IGV4cHIpCiAgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJpbmco
KSkiCiAgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJpbmcoXCIw
XCIpKSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZyhc
IjEyM1wiKSkiCi0gICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJp
bmcoXCIxLjIzXCIpKSI7CisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUs
IFFTdHJpbmcoXCIxLjIzXCIpKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIidjaWFvJ1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIicn
XCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIgorICAg
ICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiOwogICAgIH0KICAgICBuZXdS
b3coZXhwcikgPDwgaXNTdHJpbmcuY29udGFpbnMoZXhwcik7CiB9CkBAIC00ODYsNiArNTc2LDcg
QEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc1N0cmluZ190ZXN0KGNvbnN0IGNoYXIqLCBjb25z
dCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAg
ICAgUUNPTVBBUkUodmFsdWUuaXNTdHJpbmcoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZh
bHVlLmlzU3RyaW5nKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNT
dHJpbmcpCkBAIC01MDQsNyArNTk1LDkgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVm
aW5lZF9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICBpc1VuZGVmaW5lZCA8PCAi
UVNjcmlwdFZhbHVlKFFTY3JpcHRWYWx1ZTo6VW5kZWZpbmVkVmFsdWUpIgogICAgICAgICAgICAg
ICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgUVNjcmlwdFZhbHVlOjpVbmRlZmluZWRWYWx1ZSkiCiAg
ICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTY3JpcHRWYWx1ZTo6VW5k
ZWZpbmVkVmFsdWUpIgotICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwie31c
IikiOworICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwie31cIikiCisgICAg
ICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRlZmluZWRcIikiCisgICAgICAg
ICAgICAgICAgPDwgImVuZ2luZS0+dW5kZWZpbmVkVmFsdWUoKSI7CiAgICAgfQogICAgIG5ld1Jv
dyhleHByKSA8PCBpc1VuZGVmaW5lZC5jb250YWlucyhleHByKTsKIH0KQEAgLTUxMywxMCArNjA2
LDE1IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNVbmRlZmluZWRfdGVzdChjb25zdCBjaGFy
KiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKIHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0
ZWQpOwogICAgIFFDT01QQVJFKHZhbHVlLmlzVW5kZWZpbmVkKCksIGV4cGVjdGVkKTsKKyAgICBR
Q09NUEFSRSh2YWx1ZS5pc1VuZGVmaW5lZCgpLCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNU
X0ZVTkNUSU9OKGlzVW5kZWZpbmVkKQogCisKKworCisKIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6
aXNPYmplY3RfaW5pdERhdGEoKQogewogICAgIFFUZXN0OjphZGRDb2x1bW48Ym9vbD4oImV4cGVj
dGVkIik7CkBAIC01NDMsNyArNjQxLDExIEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNPYmpl
Y3RfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgICAgICAgICA8PCAiZW5naW5l
LT5ldmFsdWF0ZShcIi9mb28vXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1
YXRlKFwibmV3IE9iamVjdCgpXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1
YXRlKFwibmV3IEFycmF5KClcIikiCi0gICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVh
dGUoXCJuZXcgRXJyb3IoKVwiKSI7CisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVh
dGUoXCJuZXcgRXJyb3IoKVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIlVuZGVmaW5lZFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
Ik51bGxcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJUcnVlXCIp
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiRmFsc2VcIikiOwogICAg
IH0KICAgICBuZXdSb3coZXhwcikgPDwgaXNPYmplY3QuY29udGFpbnMoZXhwcik7CiB9CkBAIC01
NTIsMTAgKzY1NCwxMiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X3Rlc3QoY29u
c3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2ws
IGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS5pc09iamVjdCgpLCBleHBlY3RlZCk7Cisg
ICAgUUNPTVBBUkUodmFsdWUuaXNPYmplY3QoKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVT
VF9GVU5DVElPTihpc09iamVjdCkKIAorCiB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvU3RyaW5n
X2luaXREYXRhKCkKIHsKICAgICBRVGVzdDo6YWRkQ29sdW1uPFFTdHJpbmc+KCJleHBlY3RlZCIp
OwpAQCAtNjY5LDYgKzc3MywzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvU3RyaW5nX21h
a2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpCiAgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIm5ldyBPYmplY3QoKVwiKSIsICJbb2JqZWN0IE9iamVjdF0iKTsKICAgICAg
ICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEFycmF5KClcIikiLCAi
Iik7CiAgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBFcnJv
cigpXCIpIiwgIkVycm9yOiBVbmtub3duIGVycm9yIik7CisgICAgICAgIHRvU3RyaW5nLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9v
XCIpIiwgIjIyIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IlVuZGVmaW5lZFwiKSIsICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogVW5k
ZWZpbmVkIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk51
bGxcIikiLCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IE51bGwiKTsKKyAg
ICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIsICJSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogVHJ1ZSIpOworICAgICAgICB0b1N0cmlu
Zy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJGYWxzZVwiKSIsICJSZWZlcmVuY2VFcnJvcjog
Q2FuJ3QgZmluZCB2YXJpYWJsZTogRmFsc2UiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgInVuZGVmaW5lZCIpOworICAgICAgICB0
b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIiwgIm51bGwiKTsKKyAg
ICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsICJ0cnVl
Iik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImZhbHNlXCIp
IiwgImZhbHNlIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IjEyMlwiKSIsICIxMjIiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiMTI0XCIpIiwgIjEyNCIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCIwXCIpIiwgIjAiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiMC4wXCIpIiwgIjAiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiLCAiMTIzIik7CisgICAgICAgIHRvU3RyaW5nLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcIjYuMzdlLThcIikiLCAiNi4zN2UtOCIpOworICAgICAgICB0
b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIsICItNi4zN2Ut
OCIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDQzMjEx
MjM0XCIpIiwgIjExMjYyNDA4MjAiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsICI2NTUzNiIpOworICAgICAgICB0b1N0cmluZy5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgIjY1NTM3Iik7CisgICAgICAgIHRv
U3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk5hTlwiKSIsICJOYU4iKTsKKyAgICAg
ICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCAiSW5m
aW5pdHkiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLUlu
ZmluaXR5XCIpIiwgIi1JbmZpbml0eSIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiLCAiY2lhbyIpOworICAgICAgICB0b1N0cmluZy5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsICIiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIiwgIjAiKTsKKyAgICAgICAgdG9TdHJpbmcu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiLCAiMTIzIik7CisgICAgICAgIHRv
U3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIsICIxMi40Iik7Cisg
ICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUoKSIsICJudWxsIik7Cisg
ICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT51bmRlZmluZWRWYWx1ZSgpIiwgInVuZGVm
aW5lZCIpOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgdG9TdHJpbmcudmFsdWUoZXhwcik7
CiB9CkBAIC02NzcsMTAgKzgxMCwxMiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvU3RyaW5n
X3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZF
VENIKFFTdHJpbmcsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS50b1N0cmluZygpLCBl
eHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9TdHJpbmcoKSwgZXhwZWN0ZWQpOwogfQog
CiBERUZJTkVfVEVTVF9GVU5DVElPTih0b1N0cmluZykKIAorCiB2b2lkIHRzdF9RU2NyaXB0VmFs
dWU6OnRvTnVtYmVyX2luaXREYXRhKCkKIHsKICAgICBRVGVzdDo6YWRkQ29sdW1uPHFzcmVhbD4o
ImV4cGVjdGVkIik7CkBAIC03OTQsNiArOTI5LDM1IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6
dG9OdW1iZXJfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgdG9OdW1iZXIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IE9iamVjdCgpXCIpIiwgcVFOYU4oKSk7CiAgICAg
ICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBBcnJheSgpXCIpIiwg
MCk7CiAgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBFcnJv
cigpXCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIiwgMjIpOworICAg
ICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCBx
UU5hTigpKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTnVs
bFwiKSIsIHFRTmFOKCkpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCJUcnVlXCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIkZhbHNlXCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVtYmVyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcInVuZGVmaW5lZFwiKSIsIHFRTmFOKCkpOworICAgICAgICB0
b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIiwgMCk7CisgICAgICAg
IHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiLCAxKTsKKyAgICAg
ICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiLCAwKTsKKyAg
ICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIyXCIpIiwgMTIyKTsK
KyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIiwgMTI0
KTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIsIDAp
OworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwLjBcIikiLCAw
KTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIiki
LCAxMjMpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCI2LjM3
ZS04XCIpIiwgNi4zNjk5OTk5OTk5OTk5OTllLTA4KTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdlLThcIikiLCAtNi4zNjk5OTk5OTk5OTk5OTllLTA4
KTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIz
NFwiKSIsIDExMjYyNDA4MjApOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCIweDEwMDAwXCIpIiwgNjU1MzYpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgNjU1MzcpOworICAgICAgICB0b051bWJlci5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5cIikiLCBxUU5hTigpKTsKKyAgICAgICAgdG9O
dW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCBxSW5mKCkpOwor
ICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIiki
LCBxSW5mKCkpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIn
Y2lhbydcIikiLCBxUU5hTigpKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiJydcIikiLCAwKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiJzAnXCIpIiwgMCk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIicxMjMnXCIpIiwgMTIzKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiJzEyLjQnXCIpIiwgMTIuNCk7CisgICAgICAgIHRvTnVtYmVyLmluc2Vy
dCgiZW5naW5lLT5udWxsVmFsdWUoKSIsIDApOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVu
Z2luZS0+dW5kZWZpbmVkVmFsdWUoKSIsIHFRTmFOKCkpOwogICAgIH0KICAgICBuZXdSb3coZXhw
cikgPDwgdG9OdW1iZXIudmFsdWUoZXhwcik7CiB9CkBAIC04MDcsOSArOTcxLDExIEBAIHZvaWQg
dHN0X1FTY3JpcHRWYWx1ZTo6dG9OdW1iZXJfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlw
dFZhbHVlJiB2YWx1ZSkKICAgICB9CiAgICAgaWYgKHFJc0luZihleHBlY3RlZCkpIHsKICAgICAg
ICAgUVZFUklGWShxSXNJbmYodmFsdWUudG9OdW1iZXIoKSkpOworICAgICAgICBRVkVSSUZZKHFJ
c0luZih2YWx1ZS50b051bWJlcigpKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAgICAgUUNP
TVBBUkUodmFsdWUudG9OdW1iZXIoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLnRv
TnVtYmVyKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04odG9OdW1iZXIp
CkBAIC05MjgsNiArMTA5NCwzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9vbF9tYWtl
RGF0YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwibmV3IE9iamVjdCgpXCIpIiwgdHJ1ZSk7CiAgICAgICAgIHRvQm9vbC5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXkoKVwiKSIsIHRydWUpOwogICAgICAgICB0b0Jv
b2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCB0cnVlKTsKKyAg
ICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7
IGEuZm9vID0gMjI7IGEuZm9vXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29s
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCB0cnVlKTsKKyAgICAgICAgdG9C
b29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkZhbHNlXCIpIiwgdHJ1ZSk7CisgICAgICAg
IHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRlZmluZWRcIikiLCBmYWxzZSk7
CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIiwgZmFs
c2UpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIs
IHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2Vc
IikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIx
MjJcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IjEyNFwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwiMFwiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIjAuMFwiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIjEyMy4wXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCI2LjM3ZS04XCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIHRydWUpOworICAgICAgICB0
b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIHRydWUpOworICAg
ICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMVwiKSIsIHRydWUp
OworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIpIiwgZmFs
c2UpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlc
IikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIi1J
bmZpbml0eVwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiJ2NpYW8nXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCInJ1wiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIicwJ1wiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiJzEyMydcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5z
ZXJ0KCJlbmdpbmUtPm51bGxWYWx1ZSgpIiwgZmFsc2UpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0
KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiLCBmYWxzZSk7CiAgICAgfQogICAgIG5ld1Jvdyhl
eHByKSA8PCB0b0Jvb2wudmFsdWUoZXhwcik7CiB9CkBAIC05MzYsNiArMTEzMSw3IEBAIHZvaWQg
dHN0X1FTY3JpcHRWYWx1ZTo6dG9Cb29sX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRW
YWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2wsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFS
RSh2YWx1ZS50b0Jvb2woKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLnRvQm9vbCgp
LCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKHRvQm9vbCkKQEAgLTEwNTQs
NiArMTI1MCwzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9vbGVhbl9tYWtlRGF0YShj
b25zdCBjaGFyKiBleHByKQogICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwibmV3IE9iamVjdCgpXCIpIiwgdHJ1ZSk7CiAgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXkoKVwiKSIsIHRydWUpOwogICAgICAgICB0b0Jv
b2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCB0cnVlKTsK
KyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImEgPSBuZXcgT2Jq
ZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCB0cnVlKTsKKyAgICAgICAg
dG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIikiLCB0cnVlKTsKKyAg
ICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCB0cnVl
KTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkZhbHNlXCIp
IiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ1
bmRlZmluZWRcIikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCJudWxsXCIpIiwgZmFsc2UpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9v
bGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiLCB0cnVlKTsKKyAgICAgICAg
dG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyNFwiKSIsIHRydWUpOworICAg
ICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIsIGZhbHNlKTsK
KyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjAuMFwiKSIsIGZh
bHNlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4w
XCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCI2LjM3ZS04XCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIHRydWUpOworICAgICAgICB0b0Jv
b2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIHRydWUpOworICAg
ICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMVwiKSIsIHRy
dWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIp
IiwgZmFsc2UpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwi
SW5maW5pdHlcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIi1JbmZpbml0eVwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiJ2NpYW8nXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVh
bi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9C
b29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicwJ1wiKSIsIHRydWUpOworICAgICAg
ICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiLCB0cnVlKTsK
KyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIs
IHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPm51bGxWYWx1ZSgpIiwg
ZmFsc2UpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVl
KCkiLCBmYWxzZSk7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCB0b0Jvb2xlYW4udmFsdWUo
ZXhwcik7CiB9CkBAIC0xMDYyLDYgKzEyODcsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRv
Qm9vbGVhbl90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewog
ICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFsdWUudG9Cb29sZWFu
KCksIGV4cGVjdGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS50b0Jvb2xlYW4oKSwgZXhwZWN0ZWQp
OwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTih0b0Jvb2xlYW4pCkBAIC0xMTgwLDYgKzE0MDYs
MzUgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b0ludGVnZXJfbWFrZURhdGEoY29uc3QgY2hh
ciogZXhwcikKICAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5l
dyBPYmplY3QoKVwiKSIsIDApOwogICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwibmV3IEFycmF5KClcIikiLCAwKTsKICAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBFcnJvcigpXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdl
ci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9IDIy
OyBhLmZvb1wiKSIsIDIyKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIlVuZGVmaW5lZFwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiTnVsbFwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiRmFsc2VcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcInVuZGVmaW5lZFwiKSIsIDApOworICAgICAgICB0b0lu
dGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIDApOworICAgICAgICB0
b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIDEpOworICAgICAg
ICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiLCAwKTsKKyAg
ICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMlwiKSIsIDEyMik7
CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjRcIikiLCAx
MjQpOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIs
IDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIp
IiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjMu
MFwiKSIsIDEyMyk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCI2LjM3ZS04XCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCItNi4zN2UtOFwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIDExMjYyNDA4MjApOworICAgICAgICB0b0lu
dGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIDY1NTM2KTsKKyAg
ICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDFcIikiLCA2
NTUzNyk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5c
IikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIklu
ZmluaXR5XCIpIiwgcUluZigpKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIi1JbmZpbml0eVwiKSIsIHFJbmYoKSk7CisgICAgICAgIHRvSW50ZWdlci5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2Vy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicnXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdl
ci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMCdcIikiLCAwKTsKKyAgICAgICAgdG9JbnRl
Z2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMjMnXCIpIiwgMTIzKTsKKyAgICAgICAg
dG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIsIDEyKTsKKyAg
ICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUoKSIsIDApOworICAgICAg
ICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiLCAwKTsKICAgICB9
CiAgICAgbmV3Um93KGV4cHIpIDw8IHRvSW50ZWdlci52YWx1ZShleHByKTsKIH0KQEAgLTExODks
OSArMTQ0NCwxMSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvSW50ZWdlcl90ZXN0KGNvbnN0
IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogICAgIFFGRVRDSChxc3JlYWwsIGV4
cGVjdGVkKTsKICAgICBpZiAocUlzSW5mKGV4cGVjdGVkKSkgewogICAgICAgICBRVkVSSUZZKHFJ
c0luZih2YWx1ZS50b0ludGVnZXIoKSkpOworICAgICAgICBRVkVSSUZZKHFJc0luZih2YWx1ZS50
b0ludGVnZXIoKSkpOwogICAgICAgICByZXR1cm47CiAgICAgfQogICAgIFFDT01QQVJFKHZhbHVl
LnRvSW50ZWdlcigpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9JbnRlZ2VyKCks
IGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04odG9JbnRlZ2VyKQpAQCAtMTMx
MCw2ICsxNTY3LDM1IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6dG9JbnQzMl9tYWtlRGF0YShj
b25zdCBjaGFyKiBleHByKQogICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIm5ldyBPYmplY3QoKVwiKSIsIDApOwogICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIm5ldyBBcnJheSgpXCIpIiwgMCk7CiAgICAgICAgIHRvSW50MzIuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCAwKTsKKyAgICAgICAgdG9JbnQz
Mi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9IDIy
OyBhLmZvb1wiKSIsIDIyKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCJVbmRlZmluZWRcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCJOdWxsXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiVHJ1ZVwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIkZhbHNlXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiLCAxKTsKKyAgICAgICAgdG9JbnQzMi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSIsIDApOworICAgICAgICB0b0ludDMyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMlwiKSIsIDEyMik7CisgICAgICAgIHRvSW50MzIu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIiwgMTI0KTsKKyAgICAgICAgdG9JbnQz
Mi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiLCAxMjMpOworICAgICAgICB0b0lu
dDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjYuMzdlLThcIikiLCAwKTsKKyAgICAgICAg
dG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIsIDApOworICAg
ICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4NDMyMTEyMzRcIikiLCAx
MTI2MjQwODIwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIw
eDEwMDAwXCIpIiwgNjU1MzYpOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIjB4MTAwMDFcIikiLCA2NTUzNyk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiTmFOXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiLCAwKTsKKyAgICAgICAgdG9JbnQz
Mi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsIDApOworICAgICAgICB0b0ludDMy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicwJ1wiKSIsIDApOworICAgICAgICB0b0ludDMy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMjMnXCIpIiwgMTIzKTsKKyAgICAgICAgdG9J
bnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiLCAxMik7CisgICAgICAg
IHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPm51bGxWYWx1ZSgpIiwgMCk7CisgICAgICAgIHRvSW50
MzIuaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiLCAwKTsKICAgICB9CiAgICAgbmV3
Um93KGV4cHIpIDw8IHRvSW50MzIudmFsdWUoZXhwcik7CiB9CkBAIC0xMzE4LDYgKzE2MDQsNyBA
QCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvSW50MzJfdGVzdChjb25zdCBjaGFyKiwgY29uc3Qg
UVNjcmlwdFZhbHVlJiB2YWx1ZSkKIHsKICAgICBRRkVUQ0gocWludDMyLCBleHBlY3RlZCk7CiAg
ICAgUUNPTVBBUkUodmFsdWUudG9JbnQzMigpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFs
dWUudG9JbnQzMigpLCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKHRvSW50
MzIpCkBAIC0xNDM2LDYgKzE3MjMsMzUgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1VJbnQz
Ml9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJuZXcgT2JqZWN0KClcIikiLCAwKTsKICAgICAgICAgdG9VSW50MzIu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEFycmF5KClcIikiLCAwKTsKICAgICAgICAg
dG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCAwKTsK
KyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiYSA9IG5ldyBPYmpl
Y3QoKTsgYS5mb28gPSAyMjsgYS5mb29cIikiLCAyMik7CisgICAgICAgIHRvVUludDMyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcIlVuZGVmaW5lZFwiKSIsIDApOworICAgICAgICB0b1VJbnQz
Mi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOdWxsXCIpIiwgMCk7CisgICAgICAgIHRvVUlu
dDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCAwKTsKKyAgICAgICAgdG9V
SW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiRmFsc2VcIikiLCAwKTsKKyAgICAgICAg
dG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgMCk7Cisg
ICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm51bGxcIikiLCAwKTsK
KyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIDEp
OworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSIs
IDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIiki
LCAxMjIpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjRc
IikiLCAxMjQpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIw
XCIpIiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjAu
MFwiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIx
MjMuMFwiKSIsIDEyMyk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIjYuMzdlLThcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiLTYuMzdlLThcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIDExMjYyNDA4MjApOworICAgICAgICB0b1VJ
bnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAwXCIpIiwgNjU1MzYpOworICAg
ICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgNjU1
MzcpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5cIiki
LCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5p
dHlcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwi
LUluZmluaXR5XCIpIiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIidjaWFvJ1wiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCInJ1wiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCInMCdcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiJzEyMydcIikiLCAxMjMpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiLCAxMik7CisgICAgICAgIHRvVUludDMyLmluc2Vy
dCgiZW5naW5lLT5udWxsVmFsdWUoKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVu
Z2luZS0+dW5kZWZpbmVkVmFsdWUoKSIsIDApOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwg
dG9VSW50MzIudmFsdWUoZXhwcik7CiB9CkBAIC0xNDQ0LDYgKzE3NjAsNyBAQCB2b2lkIHRzdF9R
U2NyaXB0VmFsdWU6OnRvVUludDMyX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1
ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKHF1aW50MzIsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFS
RSh2YWx1ZS50b1VJbnQzMigpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9VSW50
MzIoKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTih0b1VJbnQzMikKQEAg
LTE1NjIsNiArMTg3OSwzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDE2X21ha2VE
YXRhKGNvbnN0IGNoYXIqIGV4cHIpCiAgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIm5ldyBPYmplY3QoKVwiKSIsIDApOwogICAgICAgICB0b1VJbnQxNi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXkoKVwiKSIsIDApOwogICAgICAgICB0b1VJbnQx
Ni5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgRXJyb3IoKVwiKSIsIDApOworICAgICAg
ICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBh
LmZvbyA9IDIyOyBhLmZvb1wiKSIsIDIyKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiVW5kZWZpbmVkXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJGYWxzZVwiKSIsIDApOworICAgICAgICB0b1VJbnQx
Ni5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRlZmluZWRcIikiLCAwKTsKKyAgICAgICAg
dG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIDApOworICAgICAg
ICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ0cnVlXCIpIiwgMSk7CisgICAg
ICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIiwgMCk7Cisg
ICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMlwiKSIsIDEyMik7
CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyNFwiKSIsIDEy
NCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjBcIikiLCAw
KTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIpIiwg
MCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4wXCIp
IiwgMTIzKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiNi4z
N2UtOFwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCItNi4zN2UtOFwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCIweDQzMjExMjM0XCIpIiwgNDY2MCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDBcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMVwiKSIsIDEpOworICAgICAgICB0b1VJbnQx
Ni5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5cIikiLCAwKTsKKyAgICAgICAgdG9VSW50
MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCAwKTsKKyAgICAgICAg
dG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLUluZmluaXR5XCIpIiwgMCk7Cisg
ICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIidjaWFvJ1wiKSIsIDAp
OworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsIDAp
OworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMCdcIikiLCAw
KTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIiki
LCAxMjMpOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIu
NCdcIikiLCAxMik7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUo
KSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+dW5kZWZpbmVkVmFsdWUo
KSIsIDApOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgdG9VSW50MTYudmFsdWUoZXhwcik7
CiB9CkBAIC0xNTcwLDYgKzE5MTYsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDE2
X3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZF
VENIKHF1aW50MTYsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS50b1VJbnQxNigpLCBl
eHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9VSW50MTYoKSwgZXhwZWN0ZWQpOwogfQog
CiBERUZJTkVfVEVTVF9GVU5DVElPTih0b1VJbnQxNikK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49500</attachid>
            <date>2010-02-25 09:46:20 -0800</date>
            <delta_ts>2010-03-03 07:12:53 -0800</delta_ts>
            <desc>Fix v2</desc>
            <filename>isObjectV2.diff</filename>
            <type>text/plain</type>
            <size>38371</size>
            <attacher name="Jędrzej Nowacki">jedrzej.nowacki</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCA0YTEzNmRiLi42Y2IxNWFhIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjkg
QEAKKzIwMTAtMDItMjUgIEplZHJ6ZWogTm93YWNraSAgPGplZHJ6ZWoubm93YWNraUBub2tpYS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUVNj
cmlwdFZhbHVlOjppc09iamVjdCBmaXguCisKKyAgICAgICAgRml4IGJyb2tlbiBpbnRlcm5hbCBz
dGF0ZSBldmFsdWF0aW9uIGZyb20gSlNWYWx1ZSB0byBKU05hdGl2ZSAvIEpTT2JqZWN0LgorICAg
ICAgICBOZXcgZnVuY3Rpb24gd2FzIGludHJvZHVjZWQgd2hpY2ggc2hvdWxkIHRha2UgY2FyZSBh
Ym91dCBwcm9tb3RpbmcKKyAgICAgICAgSlNWYWx1ZSBzdGF0ZSBpbnNpZGUgUVNjcmlwdFZhbHVl
UHJpdmF0ZS4gSXQgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZCBvZiBhCisgICAgICAgIGRpcmVjdCBK
U0MgQyBBUEkgY2FsbC4KKworICAgICAgICBUaGUgYnVnIGV4cG9zZWQgYSB3ZWFrbmVzcyBpbiBh
dXRvdGVzdCBzdWl0ZSwgYXMgdGhlIFFTY3JpcHRWYWx1ZVByaXZhdGUKKyAgICAgICAgaXMgYmFz
ZWQgb24gc3RhdGUgbWFjaGluZSB3aXRoIGxhenkgc3RhdGUgZXZhbHVhdGlvbiwgdGhlcmUgaXMg
YSBwb3NzaWJpbGl0eQorICAgICAgICB0aGF0IHNlcmlhbCBzZXF1ZW5jaWFsIGNhbGxzIHRvIHRo
ZSBzYW1lIHB1YmxpYyBjb25zdCBmdW5jdGlvbiBjb3VsZCByZXR1cm4KKyAgICAgICAgZGlmZmVy
ZW50IHJlc3VsdHMuIFRoZSBwYXRjaCBmaXggdGhlIGlzc3VlLgorCisgICAgICAgIFtRdF0gU29t
ZXRpbWVzIFFTY3JpcHRWYWx1ZTo6aXNPYmplY3QgcmV0dXJucyBhbiBpbmNvcnJlY3QgdmFsdWUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1Mzg3CisK
KyAgICAgICAgKiBxdC9hcGkvcXNjcmlwdHZhbHVlX3AuaDoKKyAgICAgICAgKFFTY3JpcHRWYWx1
ZVByaXZhdGU6OmlzQm9vbCk6CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc051bWJl
cik6CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc051bGwpOgorICAgICAgICAoUVNj
cmlwdFZhbHVlUHJpdmF0ZTo6aXNTdHJpbmcpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0
ZTo6aXNVbmRlZmluZWQpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNFcnJvcik6
CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc09iamVjdCk6CisgICAgICAgIChRU2Ny
aXB0VmFsdWVQcml2YXRlOjppc0Z1bmN0aW9uKToKKyAgICAgICAgKFFTY3JpcHRWYWx1ZVByaXZh
dGU6OmNhbGwpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0ZTo6cmVmaW5lSlNWYWx1ZSk6
CisgICAgICAgICogcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWVfZ2VuZXJh
dGVkLmNwcDoKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmluaXRTY3JpcHRWYWx1ZXMpOgor
ICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNWYWxpZF9tYWtlRGF0YSk6CisgICAgICAgICh0
c3RfUVNjcmlwdFZhbHVlOjppc1ZhbGlkX3Rlc3QpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6aXNCb29sX21ha2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbF90
ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbGVhbl9tYWtlRGF0YSk6Cisg
ICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc0Jvb2xlYW5fdGVzdCk6CisgICAgICAgICh0c3Rf
UVNjcmlwdFZhbHVlOjppc051bWJlcl9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZh
bHVlOjppc051bWJlcl90ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzRnVuY3Rp
b25fdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc051bGxfbWFrZURhdGEpOgor
ICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNOdWxsX3Rlc3QpOgorICAgICAgICAodHN0X1FT
Y3JpcHRWYWx1ZTo6aXNTdHJpbmdfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6aXNTdHJpbmdfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVmaW5l
ZF9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVmaW5lZF90ZXN0
KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X21ha2VEYXRhKToKKyAgICAg
ICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X3Rlc3QpOgorICAgICAgICAodHN0X1FTY3Jp
cHRWYWx1ZTo6dG9TdHJpbmdfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6
dG9TdHJpbmdfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b051bWJlcl9tYWtl
RGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b051bWJlcl90ZXN0KToKKyAgICAg
ICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9vbF9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNj
cmlwdFZhbHVlOjp0b0Jvb2xfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b0Jv
b2xlYW5fbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9Cb29sZWFuX3Rl
c3QpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9JbnRlZ2VyX21ha2VEYXRhKToKKyAg
ICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvSW50ZWdlcl90ZXN0KToKKyAgICAgICAgKHRzdF9R
U2NyaXB0VmFsdWU6OnRvSW50MzJfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6dG9JbnQzMl90ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDMyX21h
a2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDMyX3Rlc3QpOgorICAg
ICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9VSW50MTZfbWFrZURhdGEpOgorICAgICAgICAodHN0
X1FTY3JpcHRWYWx1ZTo6dG9VSW50MTZfdGVzdCk6CisKIDIwMTAtMDItMjQgIE9saXZlciBIdW50
ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJl
bi4KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWVfcC5oIGIv
SmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgKaW5kZXggZjUyOGU1Yi4uMjA1
YTllMCAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgK
KysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgKQEAgLTEzNiw2ICsx
MzYsNyBAQCBwcml2YXRlOgogICAgIGlubGluZSB2b2lkIHNldFZhbHVlKEpTVmFsdWVSZWYpOwog
CiAgICAgaW5saW5lIGJvb2wgaW5oZXJpdHMoY29uc3QgY2hhciopOworICAgIGlubGluZSBTdGF0
ZXMgcmVmaW5lSlNWYWx1ZSgpOwogCiAgICAgaW5saW5lIGJvb2wgaXNKU0Jhc2VkKCkgY29uc3Q7
CiAgICAgaW5saW5lIGJvb2wgaXNOdW1iZXJCYXNlZCgpIGNvbnN0OwpAQCAtMzI1LDcgKzMyNiw3
IEBAIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNCb29sKCkKICAgICBjYXNlIENCb29sOgog
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBjYXNlIEpTVmFsdWU6Ci0gICAgICAgIGlmIChpc09i
amVjdCgpKQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgpICE9IEpTTmF0aXZlKQogICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxsLXRocm91Z2guCiAgICAgY2FzZSBK
U05hdGl2ZToKQEAgLTM0MSw3ICszNDIsNyBAQCBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6Omlz
TnVtYmVyKCkKICAgICBjYXNlIENOdW1iZXI6CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIGNh
c2UgSlNWYWx1ZToKLSAgICAgICAgaWYgKGlzT2JqZWN0KCkpCisgICAgICAgIGlmIChyZWZpbmVK
U1ZhbHVlKCkgIT0gSlNOYXRpdmUpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAg
IC8vIEZhbGwtdGhyb3VnaC4KICAgICBjYXNlIEpTTmF0aXZlOgpAQCAtMzU3LDcgKzM1OCw3IEBA
IGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNOdWxsKCkKICAgICBjYXNlIENTcGVjaWFsOgog
ICAgICAgICByZXR1cm4gbV9udW1iZXIgPT0gc3RhdGljX2Nhc3Q8aW50PihRU2NyaXB0VmFsdWU6
Ok51bGxWYWx1ZSk7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBpZiAoaXNPYmplY3QoKSkK
KyAgICAgICAgaWYgKHJlZmluZUpTVmFsdWUoKSAhPSBKU05hdGl2ZSkKICAgICAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICAgICAgLy8gRmFsbC10aHJvdWdoLgogICAgIGNhc2UgSlNOYXRpdmU6
CkBAIC0zNzMsNyArMzc0LDcgQEAgYm9vbCBRU2NyaXB0VmFsdWVQcml2YXRlOjppc1N0cmluZygp
CiAgICAgY2FzZSBDU3RyaW5nOgogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBjYXNlIEpTVmFs
dWU6Ci0gICAgICAgIGlmIChpc09iamVjdCgpKQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgp
ICE9IEpTTmF0aXZlKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxs
LXRocm91Z2guCiAgICAgY2FzZSBKU05hdGl2ZToKQEAgLTM4OSw3ICszOTAsNyBAQCBib29sIFFT
Y3JpcHRWYWx1ZVByaXZhdGU6OmlzVW5kZWZpbmVkKCkKICAgICBjYXNlIENTcGVjaWFsOgogICAg
ICAgICByZXR1cm4gbV9udW1iZXIgPT0gc3RhdGljX2Nhc3Q8aW50PihRU2NyaXB0VmFsdWU6OlVu
ZGVmaW5lZFZhbHVlKTsKICAgICBjYXNlIEpTVmFsdWU6Ci0gICAgICAgIGlmIChpc09iamVjdCgp
KQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgpICE9IEpTTmF0aXZlKQogICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxsLXRocm91Z2guCiAgICAgY2FzZSBKU05hdGl2
ZToKQEAgLTQwMyw3ICs0MDQsNyBAQCBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzRXJyb3Io
KQogewogICAgIHN3aXRjaCAobV9zdGF0ZSkgewogICAgIGNhc2UgSlNWYWx1ZToKLSAgICAgICAg
aWYgKCFpc09iamVjdCgpKQorICAgICAgICBpZiAocmVmaW5lSlNWYWx1ZSgpICE9IEpTT2JqZWN0
KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxsLXRocm91Z2guCiAg
ICAgY2FzZSBKU09iamVjdDoKQEAgLTQxNiwxNCArNDE3LDExIEBAIGJvb2wgUVNjcmlwdFZhbHVl
UHJpdmF0ZTo6aXNFcnJvcigpCiBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzT2JqZWN0KCkK
IHsKICAgICBzd2l0Y2ggKG1fc3RhdGUpIHsKLSAgICBjYXNlIEpTT2JqZWN0OgotICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICBjYXNlIEpTVmFsdWU6Ci0gICAgICAgIG1fb2JqZWN0ID0gSlNWYWx1
ZVRvT2JqZWN0KGNvbnRleHQoKSwgdmFsdWUoKSwgLyogZXhjZXB0aW9uICovIDApOwotICAgICAg
ICBpZiAoIW1fb2JqZWN0KQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICBtX3N0
YXRlID0gSlNPYmplY3Q7CisgICAgICAgIHJldHVybiByZWZpbmVKU1ZhbHVlKCkgPT0gSlNPYmpl
Y3Q7CisgICAgY2FzZSBKU09iamVjdDoKICAgICAgICAgcmV0dXJuIHRydWU7CisKICAgICBkZWZh
dWx0OgogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQpAQCAtNDMzLDEwICs0MzEsOCBAQCBi
b29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzRnVuY3Rpb24oKQogewogICAgIHN3aXRjaCAobV9z
dGF0ZSkgewogICAgIGNhc2UgSlNWYWx1ZToKLSAgICAgICAgbV9vYmplY3QgPSBKU1ZhbHVlVG9P
YmplY3QoY29udGV4dCgpLCB2YWx1ZSgpLCAvKiBleGNlcHRpb24gKi8gMCk7Ci0gICAgICAgIGlm
ICghbV9vYmplY3QpCisgICAgICAgIGlmIChyZWZpbmVKU1ZhbHVlKCkgIT0gSlNPYmplY3QpCiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIG1fc3RhdGUgPSBKU09iamVjdDsKICAg
ICAgICAgLy8gRmFsbC10aHJvdWdoLgogICAgIGNhc2UgSlNPYmplY3Q6CiAgICAgICAgIHJldHVy
biBKU09iamVjdElzRnVuY3Rpb24oY29udGV4dCgpLCBvYmplY3QoKSk7CkBAIC02NDAsMTIgKzYz
Niw4IEBAIFFTY3JpcHRWYWx1ZVByaXZhdGUqIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmNhbGwoY29u
c3QgUVNjcmlwdFZhbHVlUHJpdmF0ZSosIGNvbnN0CiB7CiAgICAgc3dpdGNoIChtX3N0YXRlKSB7
CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBtX29iamVjdCA9IEpTVmFsdWVUb09iamVjdChj
b250ZXh0KCksIHZhbHVlKCksIC8qIGV4Y2VwdGlvbiAqLyAwKTsKLSAgICAgICAgaWYgKCFvYmpl
Y3QoKSkgewotICAgICAgICAgICAgbV9zdGF0ZSA9IEpTVmFsdWU7CisgICAgICAgIGlmIChyZWZp
bmVKU1ZhbHVlKCkgIT0gSlNPYmplY3QpCiAgICAgICAgICAgICByZXR1cm4gbmV3IFFTY3JpcHRW
YWx1ZVByaXZhdGU7Ci0gICAgICAgIH0KLSAgICAgICAgbV9zdGF0ZSA9IEpTT2JqZWN0OwogICAg
ICAgICAvLyBGYWxsLXRocm91Z2guCiAgICAgY2FzZSBKU09iamVjdDoKICAgICAgICAgewpAQCAt
NzI1LDYgKzcxNywyNCBAQCBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmluaGVyaXRzKGNvbnN0
IGNoYXIqIG5hbWUpCiAKIC8qIQogICBcaW50ZXJuYWwKKyAgUmVmaW5lcyB0aGUgc3RhdGUgb2Yg
dGhpcyBRU2NpcnB0VmFsdWVQcml2YXRlLiBSZXR1cm5zIHRoZSBuZXcgc3RhdGUuCisqLworUVNj
cmlwdFZhbHVlUHJpdmF0ZTo6U3RhdGVzIFFTY3JpcHRWYWx1ZVByaXZhdGU6OnJlZmluZUpTVmFs
dWUoKQoreworICAgIFFfQVNTRVJUKG1fc3RhdGUgPT0gSlNWYWx1ZSk7CisgICAgaWYgKCFKU1Zh
bHVlSXNPYmplY3QoY29udGV4dCgpLCB2YWx1ZSgpKSkgeworICAgICAgICBtX3N0YXRlID0gSlNO
YXRpdmU7CisgICAgfSBlbHNlIHsKKyAgICAgICAgbV9zdGF0ZSA9IEpTT2JqZWN0OworICAgICAg
ICAvLyBXZSBhcmUgc3VyZSB0aGF0IHZhbHVlIGlzIGFuIEpTT2JqZWN0LCBzbyB3ZSBjYW4gY29u
c3RfY2FzdCBzYWZlbHkgd2l0aG91dAorICAgICAgICAvLyBjYWxsaW5nIEpTQyBDIEFQSSAoSlNW
YWx1ZVRvT2JqZWN0KGNvbnRleHQoKSwgdmFsdWUoKSwgLyogZXhjZXB0aW9ucyAqLyAwKSkuCisg
ICAgICAgIG1fb2JqZWN0ID0gY29uc3RfY2FzdDxKU09iamVjdFJlZj4obV92YWx1ZSk7CisgICAg
fQorICAgIHJldHVybiBtX3N0YXRlOworfQorCisvKiEKKyAgXGludGVybmFsCiAgIFJldHVybnMg
dHJ1ZSBpZiBRU1YgaGF2ZSBhbiBlbmdpbmUgYXNzb2NpYXRlZC4KICovCiBib29sIFFTY3JpcHRW
YWx1ZVByaXZhdGU6OmlzSlNCYXNlZCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGUgPj0gSlNWYWx1
ZTsgfQpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3Rz
dF9xc2NyaXB0dmFsdWVfZ2VuZXJhdGVkLmNwcCBiL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3Fz
Y3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlX2dlbmVyYXRlZC5jcHAKaW5kZXggYjY2Y2FjMi4u
OTcwYzk2MCAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVl
L3RzdF9xc2NyaXB0dmFsdWVfZ2VuZXJhdGVkLmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC90
ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZV9nZW5lcmF0ZWQuY3BwCkBAIC0xMzAs
NiArMTMwLDM1IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aW5pdFNjcmlwdFZhbHVlcygpCiAg
ICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgibmV3IE9iamVjdCgpIikpOwog
ICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIm5ldyBBcnJheSgpIikpOwog
ICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIm5ldyBFcnJvcigpIikpOwor
ICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoImEgPSBuZXcgT2JqZWN0KCk7
IGEuZm9vID0gMjI7IGEuZm9vIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZh
bHVhdGUoIlVuZGVmaW5lZCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1
YXRlKCJOdWxsIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIlRy
dWUiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiRmFsc2UiKSk7
CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgidW5kZWZpbmVkIikpOwor
ICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIm51bGwiKSk7CisgICAgREVG
SU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgidHJ1ZSIpKTsKKyAgICBERUZJTkVfVEVT
VF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCJmYWxzZSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxV
RShlbmdpbmUtPmV2YWx1YXRlKCIxMjIiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5l
LT5ldmFsdWF0ZSgiMTI0IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVh
dGUoIjAiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiMC4wIikp
OworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIjEyMy4wIikpOworICAg
IERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIjYuMzdlLTgiKSk7CisgICAgREVG
SU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiLTYuMzdlLTgiKSk7CisgICAgREVGSU5F
X1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiMHg0MzIxMTIzNCIpKTsKKyAgICBERUZJTkVf
VEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCIweDEwMDAwIikpOworICAgIERFRklORV9URVNU
X1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIjB4MTAwMDEiKSk7CisgICAgREVGSU5FX1RFU1RfVkFM
VUUoZW5naW5lLT5ldmFsdWF0ZSgiTmFOIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2lu
ZS0+ZXZhbHVhdGUoIkluZmluaXR5IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+
ZXZhbHVhdGUoIi1JbmZpbml0eSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2
YWx1YXRlKCInY2lhbyciKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0
ZSgiJyciKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiJzAnIikp
OworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIicxMjMnIikpOworICAg
IERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIicxMi40JyIpKTsKKyAgICBERUZJ
TkVfVEVTVF9WQUxVRShlbmdpbmUtPm51bGxWYWx1ZSgpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxV
RShlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkpOwogfQogCiAKQEAgLTI0NCw3ICsyNzMsMzYgQEAg
dm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc1ZhbGlkX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIp
CiAgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIvZm9vL1wiKSIKICAgICAg
ICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBPYmplY3QoKVwiKSIKICAgICAg
ICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBBcnJheSgpXCIpIgotICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiOworICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiCisgICAgICAg
ICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9
IDIyOyBhLmZvb1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIlVu
ZGVmaW5lZFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxc
IikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJUcnVlXCIpIgorICAg
ICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiRmFsc2VcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRlZmluZWRcIikiCisgICAgICAgICAgICAg
ICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcImZhbHNlXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRl
KFwiMTIyXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIp
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIKKyAgICAgICAg
ICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIjAuMFwiKSIKKyAgICAgICAgICAgICAgICA8
PCAiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4wXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdp
bmUtPmV2YWx1YXRlKFwiNi4zN2UtOFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcIi02LjM3ZS04XCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1
YXRlKFwiMHg0MzIxMTIzNFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIjB4MTAwMDBcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIw
eDEwMDAxXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIp
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiCisg
ICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIikiCisgICAg
ICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIKKyAgICAgICAgICAgICAgICA8PCAi
ZW5naW5lLT5ldmFsdWF0ZShcIicwJ1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcIicxMjMnXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRl
KFwiJzEyLjQnXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPm51bGxWYWx1ZSgpIgor
ICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiOwogICAgIH0KICAg
ICBuZXdSb3coZXhwcikgPDwgaXNWYWxpZC5jb250YWlucyhleHByKTsKIH0KQEAgLTI1Myw2ICsz
MTEsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzVmFsaWRfdGVzdChjb25zdCBjaGFyKiwg
Y29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKIHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQp
OwogICAgIFFDT01QQVJFKHZhbHVlLmlzVmFsaWQoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJF
KHZhbHVlLmlzVmFsaWQoKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTihp
c1ZhbGlkKQpAQCAtMjczLDcgKzMzMiw5IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNCb29s
X21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpCiAgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRW
YWx1ZSgwLCB0cnVlKSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIGZhbHNl
KSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgdHJ1ZSkiCi0gICAg
ICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIGZhbHNlKSI7CisgICAgICAgICAg
ICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIGZhbHNlKSIKKyAgICAgICAgICAgICAgICA8
PCAiZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSI7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCBpc0Jv
b2wuY29udGFpbnMoZXhwcik7CiB9CkBAIC0yODIsNiArMzQzLDcgQEAgdm9pZCB0c3RfUVNjcmlw
dFZhbHVlOjppc0Jvb2xfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1
ZSkKIHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQpOwogICAgIFFDT01QQVJFKHZhbHVlLmlz
Qm9vbCgpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUuaXNCb29sKCksIGV4cGVjdGVk
KTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNCb29sKQpAQCAtMzAyLDcgKzM2NCw5IEBA
IHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNCb29sZWFuX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4
cHIpCiAgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgwLCB0cnVlKSIKICAgICAgICAg
ICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIGZhbHNlKSIKICAgICAgICAgICAgICAgICA8PCAi
UVNjcmlwdFZhbHVlKGVuZ2luZSwgdHJ1ZSkiCi0gICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRW
YWx1ZShlbmdpbmUsIGZhbHNlKSI7CisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShl
bmdpbmUsIGZhbHNlKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcInRy
dWVcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSI7
CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCBpc0Jvb2xlYW4uY29udGFpbnMoZXhwcik7CiB9
CkBAIC0zMTEsMTAgKzM3NSwxMiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbGVhbl90
ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRD
SChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFsdWUuaXNCb29sZWFuKCksIGV4cGVj
dGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS5pc0Jvb2xlYW4oKSwgZXhwZWN0ZWQpOwogfQogCiBE
RUZJTkVfVEVTVF9GVU5DVElPTihpc0Jvb2xlYW4pCiAKKwogdm9pZCB0c3RfUVNjcmlwdFZhbHVl
Ojppc051bWJlcl9pbml0RGF0YSgpCiB7CiAgICAgUVRlc3Q6OmFkZENvbHVtbjxib29sPigiZXhw
ZWN0ZWQiKTsKQEAgLTM2Niw3ICs0MzIsMjEgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc051
bWJlcl9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICAgICAgICAgIDw8ICJRU2Ny
aXB0VmFsdWUoZW5naW5lLCBxU05hTigpKSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZh
bHVlKGVuZ2luZSwgcVFOYU4oKSkiCiAgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShl
bmdpbmUsIHFJbmYoKSkiCi0gICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUs
IC1xSW5mKCkpIjsKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgLXFJ
bmYoKSkiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9i
amVjdCgpOyBhLmZvbyA9IDIyOyBhLmZvb1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5l
LT5ldmFsdWF0ZShcIjEyMlwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIjEyNFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIjBcIiki
CisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIwLjBcIikiCisgICAgICAg
ICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjMuMFwiKSIKKyAgICAgICAgICAgICAg
ICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIjYuMzdlLThcIikiCisgICAgICAgICAgICAgICAgPDwg
ImVuZ2luZS0+ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5n
aW5lLT5ldmFsdWF0ZShcIjB4NDMyMTEyMzRcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2lu
ZS0+ZXZhbHVhdGUoXCIweDEwMDAwXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2
YWx1YXRlKFwiMHgxMDAwMVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIk5hTlwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIkluZmlu
aXR5XCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiLUluZmluaXR5
XCIpIjsKICAgICB9CiAgICAgbmV3Um93KGV4cHIpIDw8IGlzTnVtYmVyLmNvbnRhaW5zKGV4cHIp
OwogfQpAQCAtMzc1LDYgKzQ1NSw3IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNOdW1iZXJf
dGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKIHsKICAgICBRRkVU
Q0goYm9vbCwgZXhwZWN0ZWQpOwogICAgIFFDT01QQVJFKHZhbHVlLmlzTnVtYmVyKCksIGV4cGVj
dGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS5pc051bWJlcigpLCBleHBlY3RlZCk7CiB9CiAKIERF
RklORV9URVNUX0ZVTkNUSU9OKGlzTnVtYmVyKQpAQCAtNDA3LDYgKzQ4OCw3IEBAIHZvaWQgdHN0
X1FTY3JpcHRWYWx1ZTo6aXNGdW5jdGlvbl90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0
VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBB
UkUodmFsdWUuaXNGdW5jdGlvbigpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUuaXNG
dW5jdGlvbigpLCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKGlzRnVuY3Rp
b24pCkBAIC00MjQsNyArNTA2LDkgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc051bGxfbWFr
ZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICBpZiAoaXNOdWxsLmlzRW1wdHkoKSkgewogICAg
ICAgICBpc051bGwgPDwgIlFTY3JpcHRWYWx1ZShRU2NyaXB0VmFsdWU6Ok51bGxWYWx1ZSkiCiAg
ICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZSgwLCBRU2NyaXB0VmFsdWU6Ok51bGxWYWx1
ZSkiCi0gICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTY3JpcHRWYWx1
ZTo6TnVsbFZhbHVlKSI7CisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUs
IFFTY3JpcHRWYWx1ZTo6TnVsbFZhbHVlKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcIm51bGxcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+bnVsbFZhbHVl
KCkiOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgaXNOdWxsLmNvbnRhaW5zKGV4cHIpOwog
fQpAQCAtNDMzLDYgKzUxNyw3IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNOdWxsX3Rlc3Qo
Y29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJv
b2wsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS5pc051bGwoKSwgZXhwZWN0ZWQpOwor
ICAgIFFDT01QQVJFKHZhbHVlLmlzTnVsbCgpLCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNU
X0ZVTkNUSU9OKGlzTnVsbCkKQEAgLTQ3Nyw3ICs1NjIsMTIgQEAgdm9pZCB0c3RfUVNjcmlwdFZh
bHVlOjppc1N0cmluZ19tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICAgICAgICAg
IDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKCkpIgogICAgICAgICAgICAgICAgIDw8
ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKFwiMFwiKSkiCiAgICAgICAgICAgICAgICAg
PDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJpbmcoXCIxMjNcIikpIgotICAgICAgICAgICAg
ICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKFwiMS4yM1wiKSkiOworICAgICAg
ICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBRU3RyaW5nKFwiMS4yM1wiKSkiCisg
ICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiCisgICAgICAg
ICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIKKyAgICAgICAgICAgICAgICA8
PCAiZW5naW5lLT5ldmFsdWF0ZShcIicwJ1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5l
LT5ldmFsdWF0ZShcIicxMjMnXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1
YXRlKFwiJzEyLjQnXCIpIjsKICAgICB9CiAgICAgbmV3Um93KGV4cHIpIDw8IGlzU3RyaW5nLmNv
bnRhaW5zKGV4cHIpOwogfQpAQCAtNDg2LDYgKzU3Niw3IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1
ZTo6aXNTdHJpbmdfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkK
IHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQpOwogICAgIFFDT01QQVJFKHZhbHVlLmlzU3Ry
aW5nKCksIGV4cGVjdGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS5pc1N0cmluZygpLCBleHBlY3Rl
ZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKGlzU3RyaW5nKQpAQCAtNTA0LDcgKzU5NSw5
IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNVbmRlZmluZWRfbWFrZURhdGEoY29uc3QgY2hh
ciogZXhwcikKICAgICAgICAgaXNVbmRlZmluZWQgPDwgIlFTY3JpcHRWYWx1ZShRU2NyaXB0VmFs
dWU6OlVuZGVmaW5lZFZhbHVlKSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAs
IFFTY3JpcHRWYWx1ZTo6VW5kZWZpbmVkVmFsdWUpIgogICAgICAgICAgICAgICAgIDw8ICJRU2Ny
aXB0VmFsdWUoZW5naW5lLCBRU2NyaXB0VmFsdWU6OlVuZGVmaW5lZFZhbHVlKSIKLSAgICAgICAg
ICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcInt9XCIpIjsKKyAgICAgICAgICAgICAgICA8
PCAiZW5naW5lLT5ldmFsdWF0ZShcInt9XCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUt
PmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPnVu
ZGVmaW5lZFZhbHVlKCkiOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgaXNVbmRlZmluZWQu
Y29udGFpbnMoZXhwcik7CiB9CkBAIC01MTMsMTAgKzYwNiwxNSBAQCB2b2lkIHRzdF9RU2NyaXB0
VmFsdWU6OmlzVW5kZWZpbmVkX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYg
dmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2wsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1
ZS5pc1VuZGVmaW5lZCgpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUuaXNVbmRlZmlu
ZWQoKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTihpc1VuZGVmaW5lZCkK
IAorCisKKworCiB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X2luaXREYXRhKCkKIHsK
ICAgICBRVGVzdDo6YWRkQ29sdW1uPGJvb2w+KCJleHBlY3RlZCIpOwpAQCAtNTQzLDcgKzY0MSwx
MSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X21ha2VEYXRhKGNvbnN0IGNoYXIq
IGV4cHIpCiAgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIvZm9vL1wiKSIK
ICAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBPYmplY3QoKVwiKSIK
ICAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBBcnJheSgpXCIpIgot
ICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiOwor
ICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiCisg
ICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiCisgICAg
ICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJOdWxsXCIpIgorICAgICAgICAgICAg
ICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIKKyAgICAgICAgICAgICAgICA8PCAi
ZW5naW5lLT5ldmFsdWF0ZShcIkZhbHNlXCIpIjsKICAgICB9CiAgICAgbmV3Um93KGV4cHIpIDw8
IGlzT2JqZWN0LmNvbnRhaW5zKGV4cHIpOwogfQpAQCAtNTUyLDEwICs2NTQsMTIgQEAgdm9pZCB0
c3RfUVNjcmlwdFZhbHVlOjppc09iamVjdF90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0
VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBB
UkUodmFsdWUuaXNPYmplY3QoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLmlzT2Jq
ZWN0KCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNPYmplY3QpCiAK
Kwogdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1N0cmluZ19pbml0RGF0YSgpCiB7CiAgICAgUVRl
c3Q6OmFkZENvbHVtbjxRU3RyaW5nPigiZXhwZWN0ZWQiKTsKQEAgLTY2OSw2ICs3NzMsMzUgQEAg
dm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1N0cmluZ19tYWtlRGF0YShjb25zdCBjaGFyKiBleHBy
KQogICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgT2JqZWN0
KClcIikiLCAiW29iamVjdCBPYmplY3RdIik7CiAgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcIm5ldyBBcnJheSgpXCIpIiwgIiIpOwogICAgICAgICB0b1N0cmluZy5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgRXJyb3IoKVwiKSIsICJFcnJvcjogVW5rbm93
biBlcnJvciIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJh
ID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9IDIyOyBhLmZvb1wiKSIsICIyMiIpOworICAgICAgICB0
b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCAiUmVmZXJl
bmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IFVuZGVmaW5lZCIpOworICAgICAgICB0b1N0
cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOdWxsXCIpIiwgIlJlZmVyZW5jZUVycm9y
OiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBOdWxsIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQg
dmFyaWFibGU6IFRydWUiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiRmFsc2VcIikiLCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IEZh
bHNlIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcInVuZGVm
aW5lZFwiKSIsICJ1bmRlZmluZWQiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwibnVsbFwiKSIsICJudWxsIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiLCAidHJ1ZSIpOworICAgICAgICB0b1N0cmluZy5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSIsICJmYWxzZSIpOworICAgICAgICB0
b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiLCAiMTIyIik7CisgICAg
ICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyNFwiKSIsICIxMjQiKTsK
KyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIsICIwIik7
CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjAuMFwiKSIsICIw
Iik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4wXCIp
IiwgIjEyMyIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCI2
LjM3ZS04XCIpIiwgIjYuMzdlLTgiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiLTYuMzdlLThcIikiLCAiLTYuMzdlLTgiKTsKKyAgICAgICAgdG9TdHJpbmcu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsICIxMTI2MjQwODIwIik7
CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDBcIiki
LCAiNjU1MzYiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwi
MHgxMDAwMVwiKSIsICI2NTUzNyIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCJOYU5cIikiLCAiTmFOIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcIkluZmluaXR5XCIpIiwgIkluZmluaXR5Iik7CisgICAgICAgIHRvU3Ry
aW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIi1JbmZpbml0eVwiKSIsICItSW5maW5pdHki
KTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJ2NpYW8nXCIp
IiwgImNpYW8iKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwi
JydcIikiLCAiIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IicwJ1wiKSIsICIwIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIicxMjMnXCIpIiwgIjEyMyIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCInMTIuNCdcIikiLCAiMTIuNCIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQo
ImVuZ2luZS0+bnVsbFZhbHVlKCkiLCAibnVsbCIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQo
ImVuZ2luZS0+dW5kZWZpbmVkVmFsdWUoKSIsICJ1bmRlZmluZWQiKTsKICAgICB9CiAgICAgbmV3
Um93KGV4cHIpIDw8IHRvU3RyaW5nLnZhbHVlKGV4cHIpOwogfQpAQCAtNjc3LDEwICs4MTAsMTIg
QEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1N0cmluZ190ZXN0KGNvbnN0IGNoYXIqLCBjb25z
dCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChRU3RyaW5nLCBleHBlY3RlZCk7
CiAgICAgUUNPTVBBUkUodmFsdWUudG9TdHJpbmcoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJF
KHZhbHVlLnRvU3RyaW5nKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04o
dG9TdHJpbmcpCiAKKwogdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b051bWJlcl9pbml0RGF0YSgp
CiB7CiAgICAgUVRlc3Q6OmFkZENvbHVtbjxxc3JlYWw+KCJleHBlY3RlZCIpOwpAQCAtNzk0LDYg
KzkyOSwzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvTnVtYmVyX21ha2VEYXRhKGNvbnN0
IGNoYXIqIGV4cHIpCiAgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
Im5ldyBPYmplY3QoKVwiKSIsIHFRTmFOKCkpOwogICAgICAgICB0b051bWJlci5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXkoKVwiKSIsIDApOwogICAgICAgICB0b051bWJlci5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgRXJyb3IoKVwiKSIsIHFRTmFOKCkpOworICAg
ICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgp
OyBhLmZvbyA9IDIyOyBhLmZvb1wiKSIsIDIyKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwiVW5kZWZpbmVkXCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVt
YmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIikiLCBxUU5hTigpKTsKKyAgICAg
ICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIsIHFRTmFOKCkp
OworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJGYWxzZVwiKSIs
IHFRTmFOKCkpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ1
bmRlZmluZWRcIikiLCBxUU5hTigpKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwibnVsbFwiKSIsIDApOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJ0cnVlXCIpIiwgMSk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIiwgMCk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIjEyMlwiKSIsIDEyMik7CisgICAgICAgIHRvTnVtYmVyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyNFwiKSIsIDEyNCk7CisgICAgICAgIHRvTnVtYmVyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjBcIikiLCAwKTsKKyAgICAgICAgdG9OdW1iZXIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIpIiwgMCk7CisgICAgICAgIHRvTnVtYmVyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4wXCIpIiwgMTIzKTsKKyAgICAgICAgdG9OdW1i
ZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiNi4zN2UtOFwiKSIsIDYuMzY5OTk5OTk5OTk5
OTk5ZS0wOCk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIi02
LjM3ZS04XCIpIiwgLTYuMzY5OTk5OTk5OTk5OTk5ZS0wOCk7CisgICAgICAgIHRvTnVtYmVyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4NDMyMTEyMzRcIikiLCAxMTI2MjQwODIwKTsKKyAg
ICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIDY1
NTM2KTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAw
MVwiKSIsIDY1NTM3KTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwiTmFOXCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIkluZmluaXR5XCIpIiwgcUluZigpKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiLUluZmluaXR5XCIpIiwgcUluZigpKTsKKyAgICAgICAgdG9O
dW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJ2NpYW8nXCIpIiwgcVFOYU4oKSk7Cisg
ICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicnXCIpIiwgMCk7Cisg
ICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicwJ1wiKSIsIDApOwor
ICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIzJ1wiKSIsIDEy
Myk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wi
KSIsIDEyLjQpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+bnVsbFZhbHVlKCki
LCAwKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCki
LCBxUU5hTigpKTsKICAgICB9CiAgICAgbmV3Um93KGV4cHIpIDw8IHRvTnVtYmVyLnZhbHVlKGV4
cHIpOwogfQpAQCAtODA3LDkgKzk3MSwxMSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvTnVt
YmVyX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiAgICAgfQog
ICAgIGlmIChxSXNJbmYoZXhwZWN0ZWQpKSB7CiAgICAgICAgIFFWRVJJRlkocUlzSW5mKHZhbHVl
LnRvTnVtYmVyKCkpKTsKKyAgICAgICAgUVZFUklGWShxSXNJbmYodmFsdWUudG9OdW1iZXIoKSkp
OwogICAgICAgICByZXR1cm47CiAgICAgfQogICAgIFFDT01QQVJFKHZhbHVlLnRvTnVtYmVyKCks
IGV4cGVjdGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS50b051bWJlcigpLCBleHBlY3RlZCk7CiB9
CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKHRvTnVtYmVyKQpAQCAtOTI4LDYgKzEwOTQsMzUgQEAg
dm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b0Jvb2xfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikK
ICAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBPYmplY3QoKVwi
KSIsIHRydWUpOwogICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3
IEFycmF5KClcIikiLCB0cnVlKTsKICAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIm5ldyBFcnJvcigpXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9IDIyOyBhLmZvb1wiKSIs
IHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiVW5kZWZp
bmVkXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCJOdWxsXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCJUcnVlXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCJGYWxzZVwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgZmFsc2UpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29s
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIiwgZmFsc2UpOworICAgICAgICB0
b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIyXCIpIiwgdHJ1ZSk7CisgICAgICAg
IHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjRcIikiLCB0cnVlKTsKKyAgICAg
ICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjBcIikiLCBmYWxzZSk7CisgICAg
ICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwLjBcIikiLCBmYWxzZSk7Cisg
ICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjMuMFwiKSIsIHRydWUp
OworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiNi4zN2UtOFwiKSIs
IHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdl
LThcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IjB4NDMyMTEyMzRcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIjB4MTAwMDBcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcIjB4MTAwMDFcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcIk5hTlwiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkluZmluaXR5XCIpIiwgdHJ1ZSk7CisgICAgICAgIHRv
Qm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIikiLCB0cnVlKTsKKyAg
ICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIidjaWFvJ1wiKSIsIHRydWUp
OworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJydcIikiLCBmYWxz
ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMCdcIikiLCB0
cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMjMnXCIp
IiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIu
NCdcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUo
KSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT51bmRlZmluZWRWYWx1
ZSgpIiwgZmFsc2UpOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgdG9Cb29sLnZhbHVlKGV4
cHIpOwogfQpAQCAtOTM2LDYgKzExMzEsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9v
bF90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFG
RVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFsdWUudG9Cb29sKCksIGV4cGVj
dGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS50b0Jvb2woKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJ
TkVfVEVTVF9GVU5DVElPTih0b0Jvb2wpCkBAIC0xMDU0LDYgKzEyNTAsMzUgQEAgdm9pZCB0c3Rf
UVNjcmlwdFZhbHVlOjp0b0Jvb2xlYW5fbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAg
ICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBPYmplY3QoKVwiKSIs
IHRydWUpOwogICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3
IEFycmF5KClcIikiLCB0cnVlKTsKICAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIm5ldyBFcnJvcigpXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9IDIyOyBhLmZv
b1wiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwiVW5kZWZpbmVkXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJOdWxsXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCJUcnVlXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJGYWxzZVwiKSIsIHRydWUpOworICAgICAgICB0b0Jv
b2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgZmFsc2UpOwor
ICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIGZh
bHNlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcInRydWVc
IikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
ImZhbHNlXCIpIiwgZmFsc2UpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiMTIyXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCIxMjRcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIjBcIikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwLjBcIikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9vbGVh
bi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjMuMFwiKSIsIHRydWUpOworICAgICAgICB0
b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiNi4zN2UtOFwiKSIsIHRydWUpOwor
ICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdlLThcIiki
LCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4
NDMyMTEyMzRcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIjB4MTAwMDBcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDFcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFu
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk5hTlwiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9C
b29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkluZmluaXR5XCIpIiwgdHJ1ZSk7Cisg
ICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIiki
LCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIidj
aWFvJ1wiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiJydcIikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCInMCdcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcIicxMjMnXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29s
ZWFuLmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUoKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29s
ZWFuLmluc2VydCgiZW5naW5lLT51bmRlZmluZWRWYWx1ZSgpIiwgZmFsc2UpOwogICAgIH0KICAg
ICBuZXdSb3coZXhwcikgPDwgdG9Cb29sZWFuLnZhbHVlKGV4cHIpOwogfQpAQCAtMTA2Miw2ICsx
Mjg3LDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b0Jvb2xlYW5fdGVzdChjb25zdCBjaGFy
KiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKIHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0
ZWQpOwogICAgIFFDT01QQVJFKHZhbHVlLnRvQm9vbGVhbigpLCBleHBlY3RlZCk7CisgICAgUUNP
TVBBUkUodmFsdWUudG9Cb29sZWFuKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVO
Q1RJT04odG9Cb29sZWFuKQpAQCAtMTE4MCw2ICsxNDA2LDM1IEBAIHZvaWQgdHN0X1FTY3JpcHRW
YWx1ZTo6dG9JbnRlZ2VyX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpCiAgICAgICAgIHRvSW50
ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgT2JqZWN0KClcIikiLCAwKTsKICAg
ICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBBcnJheSgpXCIp
IiwgMCk7CiAgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcg
RXJyb3IoKVwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiYSA9IG5ldyBPYmplY3QoKTsgYS5mb28gPSAyMjsgYS5mb29cIikiLCAyMik7CisgICAg
ICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCAw
KTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIiki
LCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVc
IikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkZh
bHNlXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCJ1bmRlZmluZWRcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIm51bGxcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcInRydWVcIikiLCAxKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiLCAxMjIpOworICAgICAgICB0b0ludGVnZXIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIiwgMTI0KTsKKyAgICAgICAgdG9JbnRlZ2Vy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjBcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2Vy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjAuMFwiKSIsIDApOworICAgICAgICB0b0ludGVn
ZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiLCAxMjMpOworICAgICAgICB0
b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiNi4zN2UtOFwiKSIsIDApOworICAg
ICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdlLThcIikiLCAw
KTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4NDMyMTEy
MzRcIikiLCAxMTI2MjQwODIwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIjB4MTAwMDBcIikiLCA2NTUzNik7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgNjU1MzcpOworICAgICAgICB0b0ludGVn
ZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIpIiwgMCk7CisgICAgICAgIHRvSW50
ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJJbmZpbml0eVwiKSIsIHFJbmYoKSk7Cisg
ICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIiki
LCBxSW5mKCkpOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwi
J2NpYW8nXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCInJ1wiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiJzAnXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCInMTIzJ1wiKSIsIDEyMyk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiLCAxMik7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQo
ImVuZ2luZS0+bnVsbFZhbHVlKCkiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5n
aW5lLT51bmRlZmluZWRWYWx1ZSgpIiwgMCk7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCB0
b0ludGVnZXIudmFsdWUoZXhwcik7CiB9CkBAIC0xMTg5LDkgKzE0NDQsMTEgQEAgdm9pZCB0c3Rf
UVNjcmlwdFZhbHVlOjp0b0ludGVnZXJfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZh
bHVlJiB2YWx1ZSkKICAgICBRRkVUQ0gocXNyZWFsLCBleHBlY3RlZCk7CiAgICAgaWYgKHFJc0lu
ZihleHBlY3RlZCkpIHsKICAgICAgICAgUVZFUklGWShxSXNJbmYodmFsdWUudG9JbnRlZ2VyKCkp
KTsKKyAgICAgICAgUVZFUklGWShxSXNJbmYodmFsdWUudG9JbnRlZ2VyKCkpKTsKICAgICAgICAg
cmV0dXJuOwogICAgIH0KICAgICBRQ09NUEFSRSh2YWx1ZS50b0ludGVnZXIoKSwgZXhwZWN0ZWQp
OworICAgIFFDT01QQVJFKHZhbHVlLnRvSW50ZWdlcigpLCBleHBlY3RlZCk7CiB9CiAKIERFRklO
RV9URVNUX0ZVTkNUSU9OKHRvSW50ZWdlcikKQEAgLTEzMTAsNiArMTU2NywzNSBAQCB2b2lkIHRz
dF9RU2NyaXB0VmFsdWU6OnRvSW50MzJfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAg
ICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgT2JqZWN0KClcIikiLCAw
KTsKICAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXko
KVwiKSIsIDApOwogICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5l
dyBFcnJvcigpXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiYSA9IG5ldyBPYmplY3QoKTsgYS5mb28gPSAyMjsgYS5mb29cIikiLCAyMik7CisgICAg
ICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiVW5kZWZpbmVkXCIpIiwgMCk7
CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTnVsbFwiKSIsIDAp
OworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCAw
KTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJGYWxzZVwiKSIs
IDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcInVuZGVmaW5l
ZFwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm51
bGxcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ0
cnVlXCIpIiwgMSk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwi
ZmFsc2VcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCIxMjJcIikiLCAxMjIpOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIjEyNFwiKSIsIDEyNCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiMFwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIjAuMFwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIjEyMy4wXCIpIiwgMTIzKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCI2LjM3ZS04XCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiLTYuMzdlLThcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCIweDQzMjExMjM0XCIpIiwgMTEyNjI0MDgyMCk7CisgICAgICAgIHRv
SW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIDY1NTM2KTsKKyAg
ICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgNjU1
MzcpOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk5hTlwiKSIs
IDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkluZmluaXR5
XCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLUlu
ZmluaXR5XCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwiJ2NpYW8nXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiJydcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCInMCdcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCInMTIzJ1wiKSIsIDEyMyk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiJzEyLjQnXCIpIiwgMTIpOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5l
LT5udWxsVmFsdWUoKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT51bmRl
ZmluZWRWYWx1ZSgpIiwgMCk7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCB0b0ludDMyLnZh
bHVlKGV4cHIpOwogfQpAQCAtMTMxOCw2ICsxNjA0LDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVl
Ojp0b0ludDMyX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7
CiAgICAgUUZFVENIKHFpbnQzMiwgZXhwZWN0ZWQpOwogICAgIFFDT01QQVJFKHZhbHVlLnRvSW50
MzIoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLnRvSW50MzIoKSwgZXhwZWN0ZWQp
OwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTih0b0ludDMyKQpAQCAtMTQzNiw2ICsxNzIzLDM1
IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6dG9VSW50MzJfbWFrZURhdGEoY29uc3QgY2hhciog
ZXhwcikKICAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IE9i
amVjdCgpXCIpIiwgMCk7CiAgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIm5ldyBBcnJheSgpXCIpIiwgMCk7CiAgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIm5ldyBFcnJvcigpXCIpIiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9v
XCIpIiwgMjIpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJV
bmRlZmluZWRcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiTnVsbFwiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCJUcnVlXCIpIiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIkZhbHNlXCIpIiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcInVuZGVmaW5lZFwiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiLCAxKTsKKyAgICAgICAgdG9VSW50MzIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIyXCIpIiwgMTIyKTsKKyAgICAgICAgdG9VSW50
MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIiwgMTI0KTsKKyAgICAgICAgdG9V
SW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIsIDApOworICAgICAgICB0b1VJ
bnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwLjBcIikiLCAwKTsKKyAgICAgICAgdG9V
SW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiLCAxMjMpOworICAgICAg
ICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCI2LjM3ZS04XCIpIiwgMCk7Cisg
ICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIi02LjM3ZS04XCIpIiwg
MCk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4NDMyMTEy
MzRcIikiLCAxMTI2MjQwODIwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiMHgxMDAwMFwiKSIsIDY1NTM2KTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMVwiKSIsIDY1NTM3KTsKKyAgICAgICAgdG9VSW50MzIu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIpIiwgMCk7CisgICAgICAgIHRvVUludDMy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkluZmluaXR5XCIpIiwgMCk7CisgICAgICAgIHRv
VUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIi1JbmZpbml0eVwiKSIsIDApOworICAg
ICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiLCAwKTsK
KyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJydcIikiLCAwKTsK
KyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIiwgMCk7
CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMjMnXCIpIiwg
MTIzKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyLjQn
XCIpIiwgMTIpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+bnVsbFZhbHVlKCki
LCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCki
LCAwKTsKICAgICB9CiAgICAgbmV3Um93KGV4cHIpIDw8IHRvVUludDMyLnZhbHVlKGV4cHIpOwog
fQpAQCAtMTQ0NCw2ICsxNzYwLDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1VJbnQzMl90
ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRD
SChxdWludDMyLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFsdWUudG9VSW50MzIoKSwgZXhw
ZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLnRvVUludDMyKCksIGV4cGVjdGVkKTsKIH0KIAog
REVGSU5FX1RFU1RfRlVOQ1RJT04odG9VSW50MzIpCkBAIC0xNTYyLDYgKzE4NzksMzUgQEAgdm9p
ZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1VJbnQxNl9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQog
ICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgT2JqZWN0KClc
IikiLCAwKTsKICAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3
IEFycmF5KClcIikiLCAwKTsKICAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwibmV3IEVycm9yKClcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiYSA9IG5ldyBPYmplY3QoKTsgYS5mb28gPSAyMjsgYS5mb29cIikiLCAy
Mik7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlVuZGVmaW5l
ZFwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJO
dWxsXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IlRydWVcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwiRmFsc2VcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwidW5kZWZpbmVkXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIm51bGxcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIDEpOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiLCAxMjIpOworICAgICAgICB0b1VJbnQxNi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjRcIikiLCAxMjQpOworICAgICAgICB0b1VJbnQxNi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjAuMFwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjMuMFwiKSIsIDEyMyk7CisgICAgICAgIHRvVUlu
dDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjYuMzdlLThcIikiLCAwKTsKKyAgICAgICAg
dG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdlLThcIikiLCAwKTsKKyAg
ICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIs
IDQ2NjApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEw
MDAwXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IjB4MTAwMDFcIikiLCAxKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiTmFOXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIkluZmluaXR5XCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5l
LT5ldmFsdWF0ZShcIi1JbmZpbml0eVwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJydcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMjMnXCIpIiwgMTIzKTsKKyAgICAgICAgdG9VSW50
MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyLjQnXCIpIiwgMTIpOworICAgICAgICB0
b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+bnVsbFZhbHVlKCkiLCAwKTsKKyAgICAgICAgdG9VSW50
MTYuaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiLCAwKTsKICAgICB9CiAgICAgbmV3
Um93KGV4cHIpIDw8IHRvVUludDE2LnZhbHVlKGV4cHIpOwogfQpAQCAtMTU3MCw2ICsxOTE2LDcg
QEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1VJbnQxNl90ZXN0KGNvbnN0IGNoYXIqLCBjb25z
dCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChxdWludDE2LCBleHBlY3RlZCk7
CiAgICAgUUNPTVBBUkUodmFsdWUudG9VSW50MTYoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJF
KHZhbHVlLnRvVUludDE2KCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04o
dG9VSW50MTYpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49903</attachid>
            <date>2010-03-03 07:12:53 -0800</date>
            <delta_ts>2010-03-03 21:02:13 -0800</delta_ts>
            <desc>Fix v3</desc>
            <filename>isObjectV3.diff</filename>
            <type>text/plain</type>
            <size>38391</size>
            <attacher name="Jędrzej Nowacki">jedrzej.nowacki</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCA2ZmMzZTA3Li5jYzQ5ZTEyIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjkg
QEAKKzIwMTAtMDItMjUgIEplZHJ6ZWogTm93YWNraSAgPGplZHJ6ZWoubm93YWNraUBub2tpYS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUVNj
cmlwdFZhbHVlOjppc09iamVjdCBmaXguCisKKyAgICAgICAgRml4IGJyb2tlbiBpbnRlcm5hbCBz
dGF0ZSBldmFsdWF0aW9uIGZyb20gSlNWYWx1ZSB0byBKU05hdGl2ZSAvIEpTT2JqZWN0LgorICAg
ICAgICBOZXcgZnVuY3Rpb24gd2FzIGludHJvZHVjZWQgd2hpY2ggc2hvdWxkIHRha2UgY2FyZSBh
Ym91dCBwcm9tb3RpbmcKKyAgICAgICAgSlNWYWx1ZSBzdGF0ZSBpbnNpZGUgUVNjcmlwdFZhbHVl
UHJpdmF0ZS4gSXQgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZCBvZiBhCisgICAgICAgIGRpcmVjdCBK
U0MgQyBBUEkgY2FsbC4KKworICAgICAgICBUaGUgYnVnIGV4cG9zZWQgYSB3ZWFrbmVzcyBpbiBh
dXRvdGVzdCBzdWl0ZSwgYXMgdGhlIFFTY3JpcHRWYWx1ZVByaXZhdGUKKyAgICAgICAgaXMgYmFz
ZWQgb24gc3RhdGUgbWFjaGluZSB3aXRoIGxhenkgc3RhdGUgZXZhbHVhdGlvbiwgdGhlcmUgaXMg
YSBwb3NzaWJpbGl0eQorICAgICAgICB0aGF0IHNlcmlhbCBzZXF1ZW5jaWFsIGNhbGxzIHRvIHRo
ZSBzYW1lIHB1YmxpYyBjb25zdCBmdW5jdGlvbiBjb3VsZCByZXR1cm4KKyAgICAgICAgZGlmZmVy
ZW50IHJlc3VsdHMuIFRoZSBwYXRjaCBmaXggdGhlIGlzc3VlLgorCisgICAgICAgIFtRdF0gU29t
ZXRpbWVzIFFTY3JpcHRWYWx1ZTo6aXNPYmplY3QgcmV0dXJucyBhbiBpbmNvcnJlY3QgdmFsdWUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1Mzg3CisK
KyAgICAgICAgKiBxdC9hcGkvcXNjcmlwdHZhbHVlX3AuaDoKKyAgICAgICAgKFFTY3JpcHRWYWx1
ZVByaXZhdGU6OmlzQm9vbCk6CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc051bWJl
cik6CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc051bGwpOgorICAgICAgICAoUVNj
cmlwdFZhbHVlUHJpdmF0ZTo6aXNTdHJpbmcpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0
ZTo6aXNVbmRlZmluZWQpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNFcnJvcik6
CisgICAgICAgIChRU2NyaXB0VmFsdWVQcml2YXRlOjppc09iamVjdCk6CisgICAgICAgIChRU2Ny
aXB0VmFsdWVQcml2YXRlOjppc0Z1bmN0aW9uKToKKyAgICAgICAgKFFTY3JpcHRWYWx1ZVByaXZh
dGU6OmNhbGwpOgorICAgICAgICAoUVNjcmlwdFZhbHVlUHJpdmF0ZTo6cmVmaW5lSlNWYWx1ZSk6
CisgICAgICAgICogcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWVfZ2VuZXJh
dGVkLmNwcDoKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmluaXRTY3JpcHRWYWx1ZXMpOgor
ICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNWYWxpZF9tYWtlRGF0YSk6CisgICAgICAgICh0
c3RfUVNjcmlwdFZhbHVlOjppc1ZhbGlkX3Rlc3QpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6aXNCb29sX21ha2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbF90
ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbGVhbl9tYWtlRGF0YSk6Cisg
ICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc0Jvb2xlYW5fdGVzdCk6CisgICAgICAgICh0c3Rf
UVNjcmlwdFZhbHVlOjppc051bWJlcl9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZh
bHVlOjppc051bWJlcl90ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzRnVuY3Rp
b25fdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc051bGxfbWFrZURhdGEpOgor
ICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6aXNOdWxsX3Rlc3QpOgorICAgICAgICAodHN0X1FT
Y3JpcHRWYWx1ZTo6aXNTdHJpbmdfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6aXNTdHJpbmdfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVmaW5l
ZF9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVmaW5lZF90ZXN0
KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X21ha2VEYXRhKToKKyAgICAg
ICAgKHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X3Rlc3QpOgorICAgICAgICAodHN0X1FTY3Jp
cHRWYWx1ZTo6dG9TdHJpbmdfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6
dG9TdHJpbmdfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b051bWJlcl9tYWtl
RGF0YSk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b051bWJlcl90ZXN0KToKKyAgICAg
ICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9vbF9tYWtlRGF0YSk6CisgICAgICAgICh0c3RfUVNj
cmlwdFZhbHVlOjp0b0Jvb2xfdGVzdCk6CisgICAgICAgICh0c3RfUVNjcmlwdFZhbHVlOjp0b0Jv
b2xlYW5fbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9Cb29sZWFuX3Rl
c3QpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9JbnRlZ2VyX21ha2VEYXRhKToKKyAg
ICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvSW50ZWdlcl90ZXN0KToKKyAgICAgICAgKHRzdF9R
U2NyaXB0VmFsdWU6OnRvSW50MzJfbWFrZURhdGEpOgorICAgICAgICAodHN0X1FTY3JpcHRWYWx1
ZTo6dG9JbnQzMl90ZXN0KToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDMyX21h
a2VEYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDMyX3Rlc3QpOgorICAg
ICAgICAodHN0X1FTY3JpcHRWYWx1ZTo6dG9VSW50MTZfbWFrZURhdGEpOgorICAgICAgICAodHN0
X1FTY3JpcHRWYWx1ZTo6dG9VSW50MTZfdGVzdCk6CisKIDIwMTAtMDMtMDIgIEZyaWRyaWNoIFN0
cmJhICA8ZnJpZHJpY2guc3RyYmFAYmx1ZXdpbi5jaD4KIAogICAgICAgICBSZXZpZXdlZCBieSBP
bGl2ZXIgSHVudC4KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFs
dWVfcC5oIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgKaW5kZXggZjUy
OGU1Yi4uMTgyZjYwMyAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2
YWx1ZV9wLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZV9wLmgKQEAg
LTEzNiw2ICsxMzYsNyBAQCBwcml2YXRlOgogICAgIGlubGluZSB2b2lkIHNldFZhbHVlKEpTVmFs
dWVSZWYpOwogCiAgICAgaW5saW5lIGJvb2wgaW5oZXJpdHMoY29uc3QgY2hhciopOworICAgIGlu
bGluZSBTdGF0ZXMgcmVmaW5lZEpTVmFsdWUoKTsKIAogICAgIGlubGluZSBib29sIGlzSlNCYXNl
ZCgpIGNvbnN0OwogICAgIGlubGluZSBib29sIGlzTnVtYmVyQmFzZWQoKSBjb25zdDsKQEAgLTMy
NSw3ICszMjYsNyBAQCBib29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzQm9vbCgpCiAgICAgY2Fz
ZSBDQm9vbDoKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAg
ICBpZiAoaXNPYmplY3QoKSkKKyAgICAgICAgaWYgKHJlZmluZWRKU1ZhbHVlKCkgIT0gSlNOYXRp
dmUpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIC8vIEZhbGwtdGhyb3VnaC4K
ICAgICBjYXNlIEpTTmF0aXZlOgpAQCAtMzQxLDcgKzM0Miw3IEBAIGJvb2wgUVNjcmlwdFZhbHVl
UHJpdmF0ZTo6aXNOdW1iZXIoKQogICAgIGNhc2UgQ051bWJlcjoKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBpZiAoaXNPYmplY3QoKSkKKyAgICAgICAg
aWYgKHJlZmluZWRKU1ZhbHVlKCkgIT0gSlNOYXRpdmUpCiAgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgICAgIC8vIEZhbGwtdGhyb3VnaC4KICAgICBjYXNlIEpTTmF0aXZlOgpAQCAtMzU3
LDcgKzM1OCw3IEBAIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNOdWxsKCkKICAgICBjYXNl
IENTcGVjaWFsOgogICAgICAgICByZXR1cm4gbV9udW1iZXIgPT0gc3RhdGljX2Nhc3Q8aW50PihR
U2NyaXB0VmFsdWU6Ok51bGxWYWx1ZSk7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBpZiAo
aXNPYmplY3QoKSkKKyAgICAgICAgaWYgKHJlZmluZWRKU1ZhbHVlKCkgIT0gSlNOYXRpdmUpCiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIC8vIEZhbGwtdGhyb3VnaC4KICAgICBj
YXNlIEpTTmF0aXZlOgpAQCAtMzczLDcgKzM3NCw3IEBAIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0
ZTo6aXNTdHJpbmcoKQogICAgIGNhc2UgQ1N0cmluZzoKICAgICAgICAgcmV0dXJuIHRydWU7CiAg
ICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBpZiAoaXNPYmplY3QoKSkKKyAgICAgICAgaWYgKHJl
ZmluZWRKU1ZhbHVlKCkgIT0gSlNOYXRpdmUpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgICAgIC8vIEZhbGwtdGhyb3VnaC4KICAgICBjYXNlIEpTTmF0aXZlOgpAQCAtMzg5LDcgKzM5
MCw3IEBAIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNVbmRlZmluZWQoKQogICAgIGNhc2Ug
Q1NwZWNpYWw6CiAgICAgICAgIHJldHVybiBtX251bWJlciA9PSBzdGF0aWNfY2FzdDxpbnQ+KFFT
Y3JpcHRWYWx1ZTo6VW5kZWZpbmVkVmFsdWUpOwogICAgIGNhc2UgSlNWYWx1ZToKLSAgICAgICAg
aWYgKGlzT2JqZWN0KCkpCisgICAgICAgIGlmIChyZWZpbmVkSlNWYWx1ZSgpICE9IEpTTmF0aXZl
KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAvLyBGYWxsLXRocm91Z2guCiAg
ICAgY2FzZSBKU05hdGl2ZToKQEAgLTQwMyw3ICs0MDQsNyBAQCBib29sIFFTY3JpcHRWYWx1ZVBy
aXZhdGU6OmlzRXJyb3IoKQogewogICAgIHN3aXRjaCAobV9zdGF0ZSkgewogICAgIGNhc2UgSlNW
YWx1ZToKLSAgICAgICAgaWYgKCFpc09iamVjdCgpKQorICAgICAgICBpZiAocmVmaW5lZEpTVmFs
dWUoKSAhPSBKU09iamVjdCkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgLy8g
RmFsbC10aHJvdWdoLgogICAgIGNhc2UgSlNPYmplY3Q6CkBAIC00MTYsMTQgKzQxNywxMSBAQCBi
b29sIFFTY3JpcHRWYWx1ZVByaXZhdGU6OmlzRXJyb3IoKQogYm9vbCBRU2NyaXB0VmFsdWVQcml2
YXRlOjppc09iamVjdCgpCiB7CiAgICAgc3dpdGNoIChtX3N0YXRlKSB7Ci0gICAgY2FzZSBKU09i
amVjdDoKLSAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBt
X29iamVjdCA9IEpTVmFsdWVUb09iamVjdChjb250ZXh0KCksIHZhbHVlKCksIC8qIGV4Y2VwdGlv
biAqLyAwKTsKLSAgICAgICAgaWYgKCFtX29iamVjdCkKLSAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICAgICAgbV9zdGF0ZSA9IEpTT2JqZWN0OworICAgICAgICByZXR1cm4gcmVmaW5lZEpT
VmFsdWUoKSA9PSBKU09iamVjdDsKKyAgICBjYXNlIEpTT2JqZWN0OgogICAgICAgICByZXR1cm4g
dHJ1ZTsKKwogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CkBAIC00
MzMsMTAgKzQzMSw4IEBAIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNGdW5jdGlvbigpCiB7
CiAgICAgc3dpdGNoIChtX3N0YXRlKSB7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBtX29i
amVjdCA9IEpTVmFsdWVUb09iamVjdChjb250ZXh0KCksIHZhbHVlKCksIC8qIGV4Y2VwdGlvbiAq
LyAwKTsKLSAgICAgICAgaWYgKCFtX29iamVjdCkKKyAgICAgICAgaWYgKHJlZmluZWRKU1ZhbHVl
KCkgIT0gSlNPYmplY3QpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIG1fc3Rh
dGUgPSBKU09iamVjdDsKICAgICAgICAgLy8gRmFsbC10aHJvdWdoLgogICAgIGNhc2UgSlNPYmpl
Y3Q6CiAgICAgICAgIHJldHVybiBKU09iamVjdElzRnVuY3Rpb24oY29udGV4dCgpLCBvYmplY3Qo
KSk7CkBAIC02NDAsMTIgKzYzNiw4IEBAIFFTY3JpcHRWYWx1ZVByaXZhdGUqIFFTY3JpcHRWYWx1
ZVByaXZhdGU6OmNhbGwoY29uc3QgUVNjcmlwdFZhbHVlUHJpdmF0ZSosIGNvbnN0CiB7CiAgICAg
c3dpdGNoIChtX3N0YXRlKSB7CiAgICAgY2FzZSBKU1ZhbHVlOgotICAgICAgICBtX29iamVjdCA9
IEpTVmFsdWVUb09iamVjdChjb250ZXh0KCksIHZhbHVlKCksIC8qIGV4Y2VwdGlvbiAqLyAwKTsK
LSAgICAgICAgaWYgKCFvYmplY3QoKSkgewotICAgICAgICAgICAgbV9zdGF0ZSA9IEpTVmFsdWU7
CisgICAgICAgIGlmIChyZWZpbmVkSlNWYWx1ZSgpICE9IEpTT2JqZWN0KQogICAgICAgICAgICAg
cmV0dXJuIG5ldyBRU2NyaXB0VmFsdWVQcml2YXRlOwotICAgICAgICB9Ci0gICAgICAgIG1fc3Rh
dGUgPSBKU09iamVjdDsKICAgICAgICAgLy8gRmFsbC10aHJvdWdoLgogICAgIGNhc2UgSlNPYmpl
Y3Q6CiAgICAgICAgIHsKQEAgLTcyNSw2ICs3MTcsMjQgQEAgYm9vbCBRU2NyaXB0VmFsdWVQcml2
YXRlOjppbmhlcml0cyhjb25zdCBjaGFyKiBuYW1lKQogCiAvKiEKICAgXGludGVybmFsCisgIFJl
ZmluZXMgdGhlIHN0YXRlIG9mIHRoaXMgUVNjcmlwdFZhbHVlUHJpdmF0ZS4gUmV0dXJucyB0aGUg
bmV3IHN0YXRlLgorKi8KK1FTY3JpcHRWYWx1ZVByaXZhdGU6OlN0YXRlcyBRU2NyaXB0VmFsdWVQ
cml2YXRlOjpyZWZpbmVkSlNWYWx1ZSgpCit7CisgICAgUV9BU1NFUlQobV9zdGF0ZSA9PSBKU1Zh
bHVlKTsKKyAgICBpZiAoIUpTVmFsdWVJc09iamVjdChjb250ZXh0KCksIHZhbHVlKCkpKSB7Cisg
ICAgICAgIG1fc3RhdGUgPSBKU05hdGl2ZTsKKyAgICB9IGVsc2UgeworICAgICAgICBtX3N0YXRl
ID0gSlNPYmplY3Q7CisgICAgICAgIC8vIFdlIGFyZSBzdXJlIHRoYXQgdmFsdWUgaXMgYW4gSlNP
YmplY3QsIHNvIHdlIGNhbiBjb25zdF9jYXN0IHNhZmVseSB3aXRob3V0CisgICAgICAgIC8vIGNh
bGxpbmcgSlNDIEMgQVBJIChKU1ZhbHVlVG9PYmplY3QoY29udGV4dCgpLCB2YWx1ZSgpLCAvKiBl
eGNlcHRpb25zICovIDApKS4KKyAgICAgICAgbV9vYmplY3QgPSBjb25zdF9jYXN0PEpTT2JqZWN0
UmVmPihtX3ZhbHVlKTsKKyAgICB9CisgICAgcmV0dXJuIG1fc3RhdGU7Cit9CisKKy8qIQorICBc
aW50ZXJuYWwKICAgUmV0dXJucyB0cnVlIGlmIFFTViBoYXZlIGFuIGVuZ2luZSBhc3NvY2lhdGVk
LgogKi8KIGJvb2wgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6aXNKU0Jhc2VkKCkgY29uc3QgeyByZXR1
cm4gbV9zdGF0ZSA+PSBKU1ZhbHVlOyB9CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC90
ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZV9nZW5lcmF0ZWQuY3BwIGIvSmF2YVNj
cmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWVfZ2VuZXJhdGVk
LmNwcAppbmRleCBiNjZjYWMyLi45NzBjOTYwIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9x
dC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZV9nZW5lcmF0ZWQuY3BwCisrKyBi
L0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlX2dl
bmVyYXRlZC5jcHAKQEAgLTEzMCw2ICsxMzAsMzUgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjpp
bml0U2NyaXB0VmFsdWVzKCkKICAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRl
KCJuZXcgT2JqZWN0KCkiKSk7CiAgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0
ZSgibmV3IEFycmF5KCkiKSk7CiAgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0
ZSgibmV3IEVycm9yKCkiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0
ZSgiYSA9IG5ldyBPYmplY3QoKTsgYS5mb28gPSAyMjsgYS5mb28iKSk7CisgICAgREVGSU5FX1RF
U1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiVW5kZWZpbmVkIikpOworICAgIERFRklORV9URVNU
X1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIk51bGwiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUo
ZW5naW5lLT5ldmFsdWF0ZSgiVHJ1ZSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUt
PmV2YWx1YXRlKCJGYWxzZSIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1
YXRlKCJ1bmRlZmluZWQiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0
ZSgibnVsbCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCJ0cnVl
IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoImZhbHNlIikpOwor
ICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIjEyMiIpKTsKKyAgICBERUZJ
TkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCIxMjQiKSk7CisgICAgREVGSU5FX1RFU1Rf
VkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiMCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdp
bmUtPmV2YWx1YXRlKCIwLjAiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFs
dWF0ZSgiMTIzLjAiKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgi
Ni4zN2UtOCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCItNi4z
N2UtOCIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCIweDQzMjEx
MjM0IikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIjB4MTAwMDAi
KSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiMHgxMDAwMSIpKTsK
KyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdpbmUtPmV2YWx1YXRlKCJOYU4iKSk7CisgICAgREVG
SU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiSW5maW5pdHkiKSk7CisgICAgREVGSU5F
X1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgiLUluZmluaXR5IikpOworICAgIERFRklORV9U
RVNUX1ZBTFVFKGVuZ2luZS0+ZXZhbHVhdGUoIidjaWFvJyIpKTsKKyAgICBERUZJTkVfVEVTVF9W
QUxVRShlbmdpbmUtPmV2YWx1YXRlKCInJyIpKTsKKyAgICBERUZJTkVfVEVTVF9WQUxVRShlbmdp
bmUtPmV2YWx1YXRlKCInMCciKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFs
dWF0ZSgiJzEyMyciKSk7CisgICAgREVGSU5FX1RFU1RfVkFMVUUoZW5naW5lLT5ldmFsdWF0ZSgi
JzEyLjQnIikpOworICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+bnVsbFZhbHVlKCkpOwor
ICAgIERFRklORV9URVNUX1ZBTFVFKGVuZ2luZS0+dW5kZWZpbmVkVmFsdWUoKSk7CiB9CiAKIApA
QCAtMjQ0LDcgKzI3MywzNiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzVmFsaWRfbWFrZURh
dGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIi9mb28vXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3
IE9iamVjdCgpXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibmV3
IEFycmF5KClcIikiCi0gICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcg
RXJyb3IoKVwiKSI7CisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcg
RXJyb3IoKVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcImEgPSBu
ZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwiVW5kZWZpbmVkXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdp
bmUtPmV2YWx1YXRlKFwiTnVsbFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFs
dWF0ZShcIlRydWVcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJG
YWxzZVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcInVuZGVmaW5l
ZFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIm51bGxcIikiCisg
ICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJ0cnVlXCIpIgorICAgICAgICAg
ICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiCisgICAgICAgICAgICAgICAg
PDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2lu
ZS0+ZXZhbHVhdGUoXCIxMjRcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVh
dGUoXCIwXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIp
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiCisgICAg
ICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCI2LjM3ZS04XCIpIgorICAgICAgICAg
ICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdlLThcIikiCisgICAgICAgICAgICAg
ICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIweDQzMjExMjM0XCIpIgorICAgICAgICAgICAgICAg
IDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIKKyAgICAgICAgICAgICAgICA8PCAi
ZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDFcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJOYU5cIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVh
dGUoXCJJbmZpbml0eVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
Ii1JbmZpbml0eVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIidj
aWFvJ1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIicnXCIpIgor
ICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIgorICAgICAgICAg
ICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiCisgICAgICAgICAgICAgICAg
PDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiCisgICAgICAgICAgICAgICAgPDwgImVu
Z2luZS0+bnVsbFZhbHVlKCkiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+dW5kZWZpbmVk
VmFsdWUoKSI7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCBpc1ZhbGlkLmNvbnRhaW5zKGV4
cHIpOwogfQpAQCAtMjUzLDYgKzMxMSw3IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNWYWxp
ZF90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFG
RVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFsdWUuaXNWYWxpZCgpLCBleHBl
Y3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUuaXNWYWxpZCgpLCBleHBlY3RlZCk7CiB9CiAKIERF
RklORV9URVNUX0ZVTkNUSU9OKGlzVmFsaWQpCkBAIC0yNzMsNyArMzMyLDkgQEAgdm9pZCB0c3Rf
UVNjcmlwdFZhbHVlOjppc0Jvb2xfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAg
ICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIHRydWUpIgogICAgICAgICAgICAgICAgIDw8ICJR
U2NyaXB0VmFsdWUoMCwgZmFsc2UpIgogICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUo
ZW5naW5lLCB0cnVlKSIKLSAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwg
ZmFsc2UpIjsKKyAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgZmFsc2Up
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIKKyAgICAg
ICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIjsKICAgICB9CiAgICAg
bmV3Um93KGV4cHIpIDw8IGlzQm9vbC5jb250YWlucyhleHByKTsKIH0KQEAgLTI4Miw2ICszNDMs
NyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzQm9vbF90ZXN0KGNvbnN0IGNoYXIqLCBjb25z
dCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAg
ICAgUUNPTVBBUkUodmFsdWUuaXNCb29sKCksIGV4cGVjdGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1
ZS5pc0Jvb2woKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTihpc0Jvb2wp
CkBAIC0zMDIsNyArMzY0LDkgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc0Jvb2xlYW5fbWFr
ZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVl
KDAsIHRydWUpIgogICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoMCwgZmFsc2UpIgog
ICAgICAgICAgICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCB0cnVlKSIKLSAgICAgICAg
ICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgZmFsc2UpIjsKKyAgICAgICAgICAgICAg
ICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgZmFsc2UpIgorICAgICAgICAgICAgICAgIDw8ICJl
bmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcImZhbHNlXCIpIjsKICAgICB9CiAgICAgbmV3Um93KGV4cHIpIDw8IGlzQm9vbGVh
bi5jb250YWlucyhleHByKTsKIH0KQEAgLTMxMSwxMCArMzc1LDEyIEBAIHZvaWQgdHN0X1FTY3Jp
cHRWYWx1ZTo6aXNCb29sZWFuX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYg
dmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2wsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1
ZS5pc0Jvb2xlYW4oKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLmlzQm9vbGVhbigp
LCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKGlzQm9vbGVhbikKIAorCiB2
b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzTnVtYmVyX2luaXREYXRhKCkKIHsKICAgICBRVGVzdDo6
YWRkQ29sdW1uPGJvb2w+KCJleHBlY3RlZCIpOwpAQCAtMzY2LDcgKzQzMiwyMSBAQCB2b2lkIHRz
dF9RU2NyaXB0VmFsdWU6OmlzTnVtYmVyX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4cHIpCiAgICAg
ICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIHFTTmFOKCkpIgogICAgICAgICAg
ICAgICAgIDw8ICJRU2NyaXB0VmFsdWUoZW5naW5lLCBxUU5hTigpKSIKICAgICAgICAgICAgICAg
ICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgcUluZigpKSIKLSAgICAgICAgICAgICAgICA8PCAi
UVNjcmlwdFZhbHVlKGVuZ2luZSwgLXFJbmYoKSkiOworICAgICAgICAgICAgICAgIDw8ICJRU2Ny
aXB0VmFsdWUoZW5naW5lLCAtcUluZigpKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIgorICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMTIyXCIpIgorICAgICAgICAgICAgICAg
IDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdp
bmUtPmV2YWx1YXRlKFwiMFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0
ZShcIjAuMFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4w
XCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiNi4zN2UtOFwiKSIK
KyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIi02LjM3ZS04XCIpIgorICAg
ICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIKKyAgICAg
ICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDBcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIgorICAgICAgICAgICAgICAg
IDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIpIgorICAgICAgICAgICAgICAgIDw8ICJlbmdp
bmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+
ZXZhbHVhdGUoXCItSW5maW5pdHlcIikiOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgaXNO
dW1iZXIuY29udGFpbnMoZXhwcik7CiB9CkBAIC0zNzUsNiArNDU1LDcgQEAgdm9pZCB0c3RfUVNj
cmlwdFZhbHVlOjppc051bWJlcl90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUm
IHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFs
dWUuaXNOdW1iZXIoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLmlzTnVtYmVyKCks
IGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNOdW1iZXIpCkBAIC00MDcs
NiArNDg4LDcgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc0Z1bmN0aW9uX3Rlc3QoY29uc3Qg
Y2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2wsIGV4
cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS5pc0Z1bmN0aW9uKCksIGV4cGVjdGVkKTsKKyAg
ICBRQ09NUEFSRSh2YWx1ZS5pc0Z1bmN0aW9uKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RF
U1RfRlVOQ1RJT04oaXNGdW5jdGlvbikKQEAgLTQyNCw3ICs1MDYsOSBAQCB2b2lkIHRzdF9RU2Ny
aXB0VmFsdWU6OmlzTnVsbF9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgIGlmIChpc051
bGwuaXNFbXB0eSgpKSB7CiAgICAgICAgIGlzTnVsbCA8PCAiUVNjcmlwdFZhbHVlKFFTY3JpcHRW
YWx1ZTo6TnVsbFZhbHVlKSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKDAsIFFT
Y3JpcHRWYWx1ZTo6TnVsbFZhbHVlKSIKLSAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVl
KGVuZ2luZSwgUVNjcmlwdFZhbHVlOjpOdWxsVmFsdWUpIjsKKyAgICAgICAgICAgICAgICA8PCAi
UVNjcmlwdFZhbHVlKGVuZ2luZSwgUVNjcmlwdFZhbHVlOjpOdWxsVmFsdWUpIgorICAgICAgICAg
ICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIKKyAgICAgICAgICAgICAgICA8
PCAiZW5naW5lLT5udWxsVmFsdWUoKSI7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCBpc051
bGwuY29udGFpbnMoZXhwcik7CiB9CkBAIC00MzMsNiArNTE3LDcgQEAgdm9pZCB0c3RfUVNjcmlw
dFZhbHVlOjppc051bGxfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1
ZSkKIHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQpOwogICAgIFFDT01QQVJFKHZhbHVlLmlz
TnVsbCgpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUuaXNOdWxsKCksIGV4cGVjdGVk
KTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNOdWxsKQpAQCAtNDc3LDcgKzU2MiwxMiBA
QCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzU3RyaW5nX21ha2VEYXRhKGNvbnN0IGNoYXIqIGV4
cHIpCiAgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJpbmcoKSki
CiAgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJpbmcoXCIwXCIp
KSIKICAgICAgICAgICAgICAgICA8PCAiUVNjcmlwdFZhbHVlKGVuZ2luZSwgUVN0cmluZyhcIjEy
M1wiKSkiCi0gICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTdHJpbmco
XCIxLjIzXCIpKSI7CisgICAgICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFT
dHJpbmcoXCIxLjIzXCIpKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
IidjaWFvJ1wiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIicnXCIp
IgorICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIgorICAgICAg
ICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiCisgICAgICAgICAgICAg
ICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiOwogICAgIH0KICAgICBuZXdSb3co
ZXhwcikgPDwgaXNTdHJpbmcuY29udGFpbnMoZXhwcik7CiB9CkBAIC00ODYsNiArNTc2LDcgQEAg
dm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc1N0cmluZ190ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBR
U2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAgIFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAg
UUNPTVBBUkUodmFsdWUuaXNTdHJpbmcoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVl
LmlzU3RyaW5nKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04oaXNTdHJp
bmcpCkBAIC01MDQsNyArNTk1LDkgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjppc1VuZGVmaW5l
ZF9tYWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICBpc1VuZGVmaW5lZCA8PCAiUVNj
cmlwdFZhbHVlKFFTY3JpcHRWYWx1ZTo6VW5kZWZpbmVkVmFsdWUpIgogICAgICAgICAgICAgICAg
IDw8ICJRU2NyaXB0VmFsdWUoMCwgUVNjcmlwdFZhbHVlOjpVbmRlZmluZWRWYWx1ZSkiCiAgICAg
ICAgICAgICAgICAgPDwgIlFTY3JpcHRWYWx1ZShlbmdpbmUsIFFTY3JpcHRWYWx1ZTo6VW5kZWZp
bmVkVmFsdWUpIgotICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwie31cIiki
OworICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwie31cIikiCisgICAgICAg
ICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRlZmluZWRcIikiCisgICAgICAgICAg
ICAgICAgPDwgImVuZ2luZS0+dW5kZWZpbmVkVmFsdWUoKSI7CiAgICAgfQogICAgIG5ld1Jvdyhl
eHByKSA8PCBpc1VuZGVmaW5lZC5jb250YWlucyhleHByKTsKIH0KQEAgLTUxMywxMCArNjA2LDE1
IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNVbmRlZmluZWRfdGVzdChjb25zdCBjaGFyKiwg
Y29uc3QgUVNjcmlwdFZhbHVlJiB2YWx1ZSkKIHsKICAgICBRRkVUQ0goYm9vbCwgZXhwZWN0ZWQp
OwogICAgIFFDT01QQVJFKHZhbHVlLmlzVW5kZWZpbmVkKCksIGV4cGVjdGVkKTsKKyAgICBRQ09N
UEFSRSh2YWx1ZS5pc1VuZGVmaW5lZCgpLCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZV
TkNUSU9OKGlzVW5kZWZpbmVkKQogCisKKworCisKIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNP
YmplY3RfaW5pdERhdGEoKQogewogICAgIFFUZXN0OjphZGRDb2x1bW48Ym9vbD4oImV4cGVjdGVk
Iik7CkBAIC01NDMsNyArNjQxLDExIEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6aXNPYmplY3Rf
bWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5l
dmFsdWF0ZShcIi9mb28vXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRl
KFwibmV3IE9iamVjdCgpXCIpIgogICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRl
KFwibmV3IEFycmF5KClcIikiCi0gICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUo
XCJuZXcgRXJyb3IoKVwiKSI7CisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUo
XCJuZXcgRXJyb3IoKVwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShc
IlVuZGVmaW5lZFwiKSIKKyAgICAgICAgICAgICAgICA8PCAiZW5naW5lLT5ldmFsdWF0ZShcIk51
bGxcIikiCisgICAgICAgICAgICAgICAgPDwgImVuZ2luZS0+ZXZhbHVhdGUoXCJUcnVlXCIpIgor
ICAgICAgICAgICAgICAgIDw8ICJlbmdpbmUtPmV2YWx1YXRlKFwiRmFsc2VcIikiOwogICAgIH0K
ICAgICBuZXdSb3coZXhwcikgPDwgaXNPYmplY3QuY29udGFpbnMoZXhwcik7CiB9CkBAIC01NTIs
MTAgKzY1NCwxMiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OmlzT2JqZWN0X3Rlc3QoY29uc3Qg
Y2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2wsIGV4
cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS5pc09iamVjdCgpLCBleHBlY3RlZCk7CisgICAg
UUNPTVBBUkUodmFsdWUuaXNPYmplY3QoKSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVTVF9G
VU5DVElPTihpc09iamVjdCkKIAorCiB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvU3RyaW5nX2lu
aXREYXRhKCkKIHsKICAgICBRVGVzdDo6YWRkQ29sdW1uPFFTdHJpbmc+KCJleHBlY3RlZCIpOwpA
QCAtNjY5LDYgKzc3MywzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvU3RyaW5nX21ha2VE
YXRhKGNvbnN0IGNoYXIqIGV4cHIpCiAgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIm5ldyBPYmplY3QoKVwiKSIsICJbb2JqZWN0IE9iamVjdF0iKTsKICAgICAgICAg
dG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEFycmF5KClcIikiLCAiIik7
CiAgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBFcnJvcigp
XCIpIiwgIkVycm9yOiBVbmtub3duIGVycm9yIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIp
IiwgIjIyIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlVu
ZGVmaW5lZFwiKSIsICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogVW5kZWZp
bmVkIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxc
IikiLCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IE51bGwiKTsKKyAgICAg
ICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIsICJSZWZlcmVu
Y2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogVHJ1ZSIpOworICAgICAgICB0b1N0cmluZy5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJGYWxzZVwiKSIsICJSZWZlcmVuY2VFcnJvcjogQ2Fu
J3QgZmluZCB2YXJpYWJsZTogRmFsc2UiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgInVuZGVmaW5lZCIpOworICAgICAgICB0b1N0
cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIiwgIm51bGwiKTsKKyAgICAg
ICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsICJ0cnVlIik7
CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIiwg
ImZhbHNlIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEy
MlwiKSIsICIxMjIiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwiMTI0XCIpIiwgIjEyNCIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCIwXCIpIiwgIjAiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiMC4wXCIpIiwgIjAiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiMTIzLjBcIikiLCAiMTIzIik7CisgICAgICAgIHRvU3RyaW5nLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIjYuMzdlLThcIikiLCAiNi4zN2UtOCIpOworICAgICAgICB0b1N0
cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIsICItNi4zN2UtOCIp
OworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDQzMjExMjM0
XCIpIiwgIjExMjYyNDA4MjAiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiMHgxMDAwMFwiKSIsICI2NTUzNiIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgIjY1NTM3Iik7CisgICAgICAgIHRvU3Ry
aW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk5hTlwiKSIsICJOYU4iKTsKKyAgICAgICAg
dG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCAiSW5maW5p
dHkiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLUluZmlu
aXR5XCIpIiwgIi1JbmZpbml0eSIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQoImVuZ2luZS0+
ZXZhbHVhdGUoXCInY2lhbydcIikiLCAiY2lhbyIpOworICAgICAgICB0b1N0cmluZy5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsICIiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzAnXCIpIiwgIjAiKTsKKyAgICAgICAgdG9TdHJpbmcuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiLCAiMTIzIik7CisgICAgICAgIHRvU3Ry
aW5nLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIsICIxMi40Iik7CisgICAg
ICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUoKSIsICJudWxsIik7CisgICAg
ICAgIHRvU3RyaW5nLmluc2VydCgiZW5naW5lLT51bmRlZmluZWRWYWx1ZSgpIiwgInVuZGVmaW5l
ZCIpOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgdG9TdHJpbmcudmFsdWUoZXhwcik7CiB9
CkBAIC02NzcsMTAgKzgxMCwxMiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvU3RyaW5nX3Rl
c3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENI
KFFTdHJpbmcsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS50b1N0cmluZygpLCBleHBl
Y3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9TdHJpbmcoKSwgZXhwZWN0ZWQpOwogfQogCiBE
RUZJTkVfVEVTVF9GVU5DVElPTih0b1N0cmluZykKIAorCiB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6
OnRvTnVtYmVyX2luaXREYXRhKCkKIHsKICAgICBRVGVzdDo6YWRkQ29sdW1uPHFzcmVhbD4oImV4
cGVjdGVkIik7CkBAIC03OTQsNiArOTI5LDM1IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6dG9O
dW1iZXJfbWFrZURhdGEoY29uc3QgY2hhciogZXhwcikKICAgICAgICAgdG9OdW1iZXIuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IE9iamVjdCgpXCIpIiwgcVFOYU4oKSk7CiAgICAgICAg
IHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBBcnJheSgpXCIpIiwgMCk7
CiAgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBFcnJvcigp
XCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIiwgMjIpOworICAgICAg
ICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCBxUU5h
TigpKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTnVsbFwi
KSIsIHFRTmFOKCkpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCJUcnVlXCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIkZhbHNlXCIpIiwgcVFOYU4oKSk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcInVuZGVmaW5lZFwiKSIsIHFRTmFOKCkpOworICAgICAgICB0b051
bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIiwgMCk7CisgICAgICAgIHRv
TnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiLCAxKTsKKyAgICAgICAg
dG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiLCAwKTsKKyAgICAg
ICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIyXCIpIiwgMTIyKTsKKyAg
ICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIiwgMTI0KTsK
KyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIsIDApOwor
ICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwLjBcIikiLCAwKTsK
KyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiLCAx
MjMpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCI2LjM3ZS04
XCIpIiwgNi4zNjk5OTk5OTk5OTk5OTllLTA4KTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwiLTYuMzdlLThcIikiLCAtNi4zNjk5OTk5OTk5OTk5OTllLTA4KTsK
KyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwi
KSIsIDExMjYyNDA4MjApOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCIweDEwMDAwXCIpIiwgNjU1MzYpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgNjU1MzcpOworICAgICAgICB0b051bWJlci5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5cIikiLCBxUU5hTigpKTsKKyAgICAgICAgdG9OdW1i
ZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCBxSW5mKCkpOworICAg
ICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIikiLCBx
SW5mKCkpOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lh
bydcIikiLCBxUU5hTigpKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiJydcIikiLCAwKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiJzAnXCIpIiwgMCk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIicxMjMnXCIpIiwgMTIzKTsKKyAgICAgICAgdG9OdW1iZXIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiJzEyLjQnXCIpIiwgMTIuNCk7CisgICAgICAgIHRvTnVtYmVyLmluc2VydCgi
ZW5naW5lLT5udWxsVmFsdWUoKSIsIDApOworICAgICAgICB0b051bWJlci5pbnNlcnQoImVuZ2lu
ZS0+dW5kZWZpbmVkVmFsdWUoKSIsIHFRTmFOKCkpOwogICAgIH0KICAgICBuZXdSb3coZXhwcikg
PDwgdG9OdW1iZXIudmFsdWUoZXhwcik7CiB9CkBAIC04MDcsOSArOTcxLDExIEBAIHZvaWQgdHN0
X1FTY3JpcHRWYWx1ZTo6dG9OdW1iZXJfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNjcmlwdFZh
bHVlJiB2YWx1ZSkKICAgICB9CiAgICAgaWYgKHFJc0luZihleHBlY3RlZCkpIHsKICAgICAgICAg
UVZFUklGWShxSXNJbmYodmFsdWUudG9OdW1iZXIoKSkpOworICAgICAgICBRVkVSSUZZKHFJc0lu
Zih2YWx1ZS50b051bWJlcigpKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAgICAgUUNPTVBB
UkUodmFsdWUudG9OdW1iZXIoKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLnRvTnVt
YmVyKCksIGV4cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04odG9OdW1iZXIpCkBA
IC05MjgsNiArMTA5NCwzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9vbF9tYWtlRGF0
YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwibmV3IE9iamVjdCgpXCIpIiwgdHJ1ZSk7CiAgICAgICAgIHRvQm9vbC5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXkoKVwiKSIsIHRydWUpOwogICAgICAgICB0b0Jvb2wu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCB0cnVlKTsKKyAgICAg
ICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0KCk7IGEu
Zm9vID0gMjI7IGEuZm9vXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29s
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkZhbHNlXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRv
Qm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRlZmluZWRcIikiLCBmYWxzZSk7Cisg
ICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJudWxsXCIpIiwgZmFsc2Up
OworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIHRy
dWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIiki
LCBmYWxzZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJc
IikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEy
NFwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwi
MFwiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IjAuMFwiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIjEyMy4wXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCI2LjM3ZS04XCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIHRydWUpOworICAgICAgICB0b0Jv
b2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIHRydWUpOworICAgICAg
ICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMVwiKSIsIHRydWUpOwor
ICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIpIiwgZmFsc2Up
OworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIiki
LCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIi1JbmZp
bml0eVwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwiJ2NpYW8nXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbC5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCInJ1wiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIicwJ1wiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiJzEyMydcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0
KCJlbmdpbmUtPm51bGxWYWx1ZSgpIiwgZmFsc2UpOworICAgICAgICB0b0Jvb2wuaW5zZXJ0KCJl
bmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiLCBmYWxzZSk7CiAgICAgfQogICAgIG5ld1JvdyhleHBy
KSA8PCB0b0Jvb2wudmFsdWUoZXhwcik7CiB9CkBAIC05MzYsNiArMTEzMSw3IEBAIHZvaWQgdHN0
X1FTY3JpcHRWYWx1ZTo6dG9Cb29sX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1
ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENIKGJvb2wsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2
YWx1ZS50b0Jvb2woKSwgZXhwZWN0ZWQpOworICAgIFFDT01QQVJFKHZhbHVlLnRvQm9vbCgpLCBl
eHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKHRvQm9vbCkKQEAgLTEwNTQsNiAr
MTI1MCwzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9vbGVhbl9tYWtlRGF0YShjb25z
dCBjaGFyKiBleHByKQogICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRl
KFwibmV3IE9iamVjdCgpXCIpIiwgdHJ1ZSk7CiAgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXkoKVwiKSIsIHRydWUpOwogICAgICAgICB0b0Jvb2xl
YW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCB0cnVlKTsKKyAg
ICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImEgPSBuZXcgT2JqZWN0
KCk7IGEuZm9vID0gMjI7IGEuZm9vXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJVbmRlZmluZWRcIikiLCB0cnVlKTsKKyAgICAgICAgdG9C
b29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIikiLCB0cnVlKTsKKyAgICAg
ICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCB0cnVlKTsK
KyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkZhbHNlXCIpIiwg
dHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRl
ZmluZWRcIikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCJudWxsXCIpIiwgZmFsc2UpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiLCBmYWxzZSk7CisgICAgICAgIHRvQm9vbGVh
bi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiLCB0cnVlKTsKKyAgICAgICAgdG9C
b29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyNFwiKSIsIHRydWUpOworICAgICAg
ICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIsIGZhbHNlKTsKKyAg
ICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjAuMFwiKSIsIGZhbHNl
KTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4wXCIp
IiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCI2
LjM3ZS04XCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCItNi4zN2UtOFwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xl
YW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIHRydWUpOworICAgICAg
ICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMVwiKSIsIHRydWUp
OworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiTmFOXCIpIiwg
ZmFsc2UpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5m
aW5pdHlcIikiLCB0cnVlKTsKKyAgICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIi1JbmZpbml0eVwiKSIsIHRydWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwiJ2NpYW8nXCIpIiwgdHJ1ZSk7CisgICAgICAgIHRvQm9vbGVhbi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsIGZhbHNlKTsKKyAgICAgICAgdG9Cb29s
ZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicwJ1wiKSIsIHRydWUpOworICAgICAgICB0
b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiLCB0cnVlKTsKKyAg
ICAgICAgdG9Cb29sZWFuLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIsIHRy
dWUpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPm51bGxWYWx1ZSgpIiwgZmFs
c2UpOworICAgICAgICB0b0Jvb2xlYW4uaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCki
LCBmYWxzZSk7CiAgICAgfQogICAgIG5ld1JvdyhleHByKSA8PCB0b0Jvb2xlYW4udmFsdWUoZXhw
cik7CiB9CkBAIC0xMDYyLDYgKzEyODcsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvQm9v
bGVhbl90ZXN0KGNvbnN0IGNoYXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogewogICAg
IFFGRVRDSChib29sLCBleHBlY3RlZCk7CiAgICAgUUNPTVBBUkUodmFsdWUudG9Cb29sZWFuKCks
IGV4cGVjdGVkKTsKKyAgICBRQ09NUEFSRSh2YWx1ZS50b0Jvb2xlYW4oKSwgZXhwZWN0ZWQpOwog
fQogCiBERUZJTkVfVEVTVF9GVU5DVElPTih0b0Jvb2xlYW4pCkBAIC0xMTgwLDYgKzE0MDYsMzUg
QEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b0ludGVnZXJfbWFrZURhdGEoY29uc3QgY2hhciog
ZXhwcikKICAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm5ldyBP
YmplY3QoKVwiKSIsIDApOwogICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwibmV3IEFycmF5KClcIikiLCAwKTsKICAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcIm5ldyBFcnJvcigpXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9IDIyOyBh
LmZvb1wiKSIsIDIyKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIlVuZGVmaW5lZFwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiTnVsbFwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdp
bmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwiRmFsc2VcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcInVuZGVmaW5lZFwiKSIsIDApOworICAgICAgICB0b0ludGVn
ZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIDApOworICAgICAgICB0b0lu
dGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIDEpOworICAgICAgICB0
b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiZmFsc2VcIikiLCAwKTsKKyAgICAg
ICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMlwiKSIsIDEyMik7Cisg
ICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjRcIikiLCAxMjQp
OworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMFwiKSIsIDAp
OworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIpIiwg
MCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjMuMFwi
KSIsIDEyMyk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCI2
LjM3ZS04XCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCItNi4zN2UtOFwiKSIsIDApOworICAgICAgICB0b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIDExMjYyNDA4MjApOworICAgICAgICB0b0ludGVn
ZXIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMFwiKSIsIDY1NTM2KTsKKyAgICAg
ICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4MTAwMDFcIikiLCA2NTUz
Nyk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5cIiki
LCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIkluZmlu
aXR5XCIpIiwgcUluZigpKTsKKyAgICAgICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIi1JbmZpbml0eVwiKSIsIHFJbmYoKSk7CisgICAgICAgIHRvSW50ZWdlci5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2VyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicnXCIpIiwgMCk7CisgICAgICAgIHRvSW50ZWdlci5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMCdcIikiLCAwKTsKKyAgICAgICAgdG9JbnRlZ2Vy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMjMnXCIpIiwgMTIzKTsKKyAgICAgICAgdG9J
bnRlZ2VyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMi40J1wiKSIsIDEyKTsKKyAgICAg
ICAgdG9JbnRlZ2VyLmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUoKSIsIDApOworICAgICAgICB0
b0ludGVnZXIuaW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiLCAwKTsKICAgICB9CiAg
ICAgbmV3Um93KGV4cHIpIDw8IHRvSW50ZWdlci52YWx1ZShleHByKTsKIH0KQEAgLTExODksOSAr
MTQ0NCwxMSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvSW50ZWdlcl90ZXN0KGNvbnN0IGNo
YXIqLCBjb25zdCBRU2NyaXB0VmFsdWUmIHZhbHVlKQogICAgIFFGRVRDSChxc3JlYWwsIGV4cGVj
dGVkKTsKICAgICBpZiAocUlzSW5mKGV4cGVjdGVkKSkgewogICAgICAgICBRVkVSSUZZKHFJc0lu
Zih2YWx1ZS50b0ludGVnZXIoKSkpOworICAgICAgICBRVkVSSUZZKHFJc0luZih2YWx1ZS50b0lu
dGVnZXIoKSkpOwogICAgICAgICByZXR1cm47CiAgICAgfQogICAgIFFDT01QQVJFKHZhbHVlLnRv
SW50ZWdlcigpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9JbnRlZ2VyKCksIGV4
cGVjdGVkKTsKIH0KIAogREVGSU5FX1RFU1RfRlVOQ1RJT04odG9JbnRlZ2VyKQpAQCAtMTMxMCw2
ICsxNTY3LDM1IEBAIHZvaWQgdHN0X1FTY3JpcHRWYWx1ZTo6dG9JbnQzMl9tYWtlRGF0YShjb25z
dCBjaGFyKiBleHByKQogICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
Im5ldyBPYmplY3QoKVwiKSIsIDApOwogICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIm5ldyBBcnJheSgpXCIpIiwgMCk7CiAgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZvbyA9IDIyOyBh
LmZvb1wiKSIsIDIyKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUo
XCJVbmRlZmluZWRcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCJOdWxsXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiVHJ1ZVwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5l
dmFsdWF0ZShcIkZhbHNlXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJl
bmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcInRydWVcIikiLCAxKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQo
ImVuZ2luZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSIsIDApOworICAgICAgICB0b0ludDMyLmluc2Vy
dCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMlwiKSIsIDEyMik7CisgICAgICAgIHRvSW50MzIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTI0XCIpIiwgMTI0KTsKKyAgICAgICAgdG9JbnQzMi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMTIzLjBcIikiLCAxMjMpOworICAgICAgICB0b0ludDMy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjYuMzdlLThcIikiLCAwKTsKKyAgICAgICAgdG9J
bnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCItNi4zN2UtOFwiKSIsIDApOworICAgICAg
ICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjB4NDMyMTEyMzRcIikiLCAxMTI2
MjQwODIwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEw
MDAwXCIpIiwgNjU1MzYpOworICAgICAgICB0b0ludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIjB4MTAwMDFcIikiLCA2NTUzNyk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiTmFOXCIpIiwgMCk7CisgICAgICAgIHRvSW50MzIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCItSW5maW5pdHlcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInY2lhbydcIikiLCAwKTsKKyAgICAgICAgdG9JbnQzMi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsIDApOworICAgICAgICB0b0ludDMyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicwJ1wiKSIsIDApOworICAgICAgICB0b0ludDMyLmlu
c2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIicxMjMnXCIpIiwgMTIzKTsKKyAgICAgICAgdG9JbnQz
Mi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiLCAxMik7CisgICAgICAgIHRv
SW50MzIuaW5zZXJ0KCJlbmdpbmUtPm51bGxWYWx1ZSgpIiwgMCk7CisgICAgICAgIHRvSW50MzIu
aW5zZXJ0KCJlbmdpbmUtPnVuZGVmaW5lZFZhbHVlKCkiLCAwKTsKICAgICB9CiAgICAgbmV3Um93
KGV4cHIpIDw8IHRvSW50MzIudmFsdWUoZXhwcik7CiB9CkBAIC0xMzE4LDYgKzE2MDQsNyBAQCB2
b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvSW50MzJfdGVzdChjb25zdCBjaGFyKiwgY29uc3QgUVNj
cmlwdFZhbHVlJiB2YWx1ZSkKIHsKICAgICBRRkVUQ0gocWludDMyLCBleHBlY3RlZCk7CiAgICAg
UUNPTVBBUkUodmFsdWUudG9JbnQzMigpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUu
dG9JbnQzMigpLCBleHBlY3RlZCk7CiB9CiAKIERFRklORV9URVNUX0ZVTkNUSU9OKHRvSW50MzIp
CkBAIC0xNDM2LDYgKzE3MjMsMzUgQEAgdm9pZCB0c3RfUVNjcmlwdFZhbHVlOjp0b1VJbnQzMl9t
YWtlRGF0YShjb25zdCBjaGFyKiBleHByKQogICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCJuZXcgT2JqZWN0KClcIikiLCAwKTsKICAgICAgICAgdG9VSW50MzIuaW5z
ZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEFycmF5KClcIikiLCAwKTsKICAgICAgICAgdG9V
SW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibmV3IEVycm9yKClcIikiLCAwKTsKKyAg
ICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiYSA9IG5ldyBPYmplY3Qo
KTsgYS5mb28gPSAyMjsgYS5mb29cIikiLCAyMik7CisgICAgICAgIHRvVUludDMyLmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIlVuZGVmaW5lZFwiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOdWxsXCIpIiwgMCk7CisgICAgICAgIHRvVUludDMy
Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIlRydWVcIikiLCAwKTsKKyAgICAgICAgdG9VSW50
MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiRmFsc2VcIikiLCAwKTsKKyAgICAgICAgdG9V
SW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidW5kZWZpbmVkXCIpIiwgMCk7CisgICAg
ICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIm51bGxcIikiLCAwKTsKKyAg
ICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwidHJ1ZVwiKSIsIDEpOwor
ICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJmYWxzZVwiKSIsIDAp
OworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjJcIikiLCAx
MjIpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjRcIiki
LCAxMjQpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIwXCIp
IiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjAuMFwi
KSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIxMjMu
MFwiKSIsIDEyMyk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShc
IjYuMzdlLThcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1
YXRlKFwiLTYuMzdlLThcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiMHg0MzIxMTIzNFwiKSIsIDExMjYyNDA4MjApOworICAgICAgICB0b1VJbnQz
Mi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAwXCIpIiwgNjU1MzYpOworICAgICAg
ICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIweDEwMDAxXCIpIiwgNjU1Mzcp
OworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5cIikiLCAw
KTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlc
IikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLUlu
ZmluaXR5XCIpIiwgMCk7CisgICAgICAgIHRvVUludDMyLmluc2VydCgiZW5naW5lLT5ldmFsdWF0
ZShcIidjaWFvJ1wiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCInJ1wiKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2luZS0+ZXZh
bHVhdGUoXCInMCdcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MzIuaW5zZXJ0KCJlbmdpbmUtPmV2
YWx1YXRlKFwiJzEyMydcIikiLCAxMjMpOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2lu
ZS0+ZXZhbHVhdGUoXCInMTIuNCdcIikiLCAxMik7CisgICAgICAgIHRvVUludDMyLmluc2VydCgi
ZW5naW5lLT5udWxsVmFsdWUoKSIsIDApOworICAgICAgICB0b1VJbnQzMi5pbnNlcnQoImVuZ2lu
ZS0+dW5kZWZpbmVkVmFsdWUoKSIsIDApOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgdG9V
SW50MzIudmFsdWUoZXhwcik7CiB9CkBAIC0xNDQ0LDYgKzE3NjAsNyBAQCB2b2lkIHRzdF9RU2Ny
aXB0VmFsdWU6OnRvVUludDMyX3Rlc3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYg
dmFsdWUpCiB7CiAgICAgUUZFVENIKHF1aW50MzIsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2
YWx1ZS50b1VJbnQzMigpLCBleHBlY3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9VSW50MzIo
KSwgZXhwZWN0ZWQpOwogfQogCiBERUZJTkVfVEVTVF9GVU5DVElPTih0b1VJbnQzMikKQEAgLTE1
NjIsNiArMTg3OSwzNSBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDE2X21ha2VEYXRh
KGNvbnN0IGNoYXIqIGV4cHIpCiAgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFs
dWF0ZShcIm5ldyBPYmplY3QoKVwiKSIsIDApOwogICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVu
Z2luZS0+ZXZhbHVhdGUoXCJuZXcgQXJyYXkoKVwiKSIsIDApOwogICAgICAgICB0b1VJbnQxNi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJuZXcgRXJyb3IoKVwiKSIsIDApOworICAgICAgICB0
b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJhID0gbmV3IE9iamVjdCgpOyBhLmZv
byA9IDIyOyBhLmZvb1wiKSIsIDIyKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUt
PmV2YWx1YXRlKFwiVW5kZWZpbmVkXCIpIiwgMCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgi
ZW5naW5lLT5ldmFsdWF0ZShcIk51bGxcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiVHJ1ZVwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNl
cnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJGYWxzZVwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ1bmRlZmluZWRcIikiLCAwKTsKKyAgICAgICAgdG9V
SW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwibnVsbFwiKSIsIDApOworICAgICAgICB0
b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJ0cnVlXCIpIiwgMSk7CisgICAgICAg
IHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcImZhbHNlXCIpIiwgMCk7CisgICAg
ICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMlwiKSIsIDEyMik7Cisg
ICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyNFwiKSIsIDEyNCk7
CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjBcIikiLCAwKTsK
KyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiMC4wXCIpIiwgMCk7
CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIjEyMy4wXCIpIiwg
MTIzKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiNi4zN2Ut
OFwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCIt
Ni4zN2UtOFwiKSIsIDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVh
dGUoXCIweDQzMjExMjM0XCIpIiwgNDY2MCk7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5n
aW5lLT5ldmFsdWF0ZShcIjB4MTAwMDBcIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYuaW5zZXJ0
KCJlbmdpbmUtPmV2YWx1YXRlKFwiMHgxMDAwMVwiKSIsIDEpOworICAgICAgICB0b1VJbnQxNi5p
bnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCJOYU5cIikiLCAwKTsKKyAgICAgICAgdG9VSW50MTYu
aW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiSW5maW5pdHlcIikiLCAwKTsKKyAgICAgICAgdG9V
SW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiLUluZmluaXR5XCIpIiwgMCk7CisgICAg
ICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5ldmFsdWF0ZShcIidjaWFvJ1wiKSIsIDApOwor
ICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInJ1wiKSIsIDApOwor
ICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMCdcIikiLCAwKTsK
KyAgICAgICAgdG9VSW50MTYuaW5zZXJ0KCJlbmdpbmUtPmV2YWx1YXRlKFwiJzEyMydcIikiLCAx
MjMpOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+ZXZhbHVhdGUoXCInMTIuNCdc
IikiLCAxMik7CisgICAgICAgIHRvVUludDE2Lmluc2VydCgiZW5naW5lLT5udWxsVmFsdWUoKSIs
IDApOworICAgICAgICB0b1VJbnQxNi5pbnNlcnQoImVuZ2luZS0+dW5kZWZpbmVkVmFsdWUoKSIs
IDApOwogICAgIH0KICAgICBuZXdSb3coZXhwcikgPDwgdG9VSW50MTYudmFsdWUoZXhwcik7CiB9
CkBAIC0xNTcwLDYgKzE5MTYsNyBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnRvVUludDE2X3Rl
c3QoY29uc3QgY2hhciosIGNvbnN0IFFTY3JpcHRWYWx1ZSYgdmFsdWUpCiB7CiAgICAgUUZFVENI
KHF1aW50MTYsIGV4cGVjdGVkKTsKICAgICBRQ09NUEFSRSh2YWx1ZS50b1VJbnQxNigpLCBleHBl
Y3RlZCk7CisgICAgUUNPTVBBUkUodmFsdWUudG9VSW50MTYoKSwgZXhwZWN0ZWQpOwogfQogCiBE
RUZJTkVfVEVTVF9GVU5DVElPTih0b1VJbnQxNikK
</data>

          </attachment>
      

    </bug>

</bugzilla>