<?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>97221</bug_id>
          
          <creation_ts>2012-09-20 08:20:32 -0700</creation_ts>
          <short_desc>Refactored the interpreter and JIT so they don&apos;t dictate closure layout</short_desc>
          <delta_ts>2012-09-20 12:51:25 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          <cc>barraclough</cc>
    
    <cc>fpizlo</cc>
    
    <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>724541</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-09-20 08:20:32 -0700</bug_when>
    <thetext>Refactored the interpreter and JIT so they don&apos;t dictate closure layout</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724654</commentid>
    <comment_count>1</comment_count>
      <attachid>164946</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-09-20 10:59:46 -0700</bug_when>
    <thetext>Created attachment 164946
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724669</commentid>
    <comment_count>2</comment_count>
      <attachid>164946</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-09-20 11:09:01 -0700</bug_when>
    <thetext>Comment on attachment 164946
Patch

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

&gt; Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:4223
&gt; +            size_t baseOffset =
&gt; +                (node.codeOrigin.inlineCallFrame
&gt; +                  ? node.codeOrigin.inlineCallFrame-&gt;stackOffset
&gt; +                  : 0) * sizeof(Register);

i think i&apos;d prefer a plain if() here.

baseOffset = 0;
if (inlineFrame) baseOffset = thingy * sizeof(Register)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724689</commentid>
    <comment_count>3</comment_count>
      <attachid>164953</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-09-20 11:20:02 -0700</bug_when>
    <thetext>Created attachment 164953
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724692</commentid>
    <comment_count>4</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-09-20 11:20:46 -0700</bug_when>
    <thetext>&gt; i think i&apos;d prefer a plain if() here.

&quot;* sizeof(Register)&quot; is not optional, so I couldn&apos;t do exactly what you suggested, but I think you&apos;ll like what I came up with.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724704</commentid>
    <comment_count>5</comment_count>
      <attachid>164953</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-09-20 11:32:25 -0700</bug_when>
    <thetext>Comment on attachment 164953
Patch

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

This seems okay to me, the only concern is the baseOffset stuff.  I&apos;ll r+ as it is, but personally i think i&apos;d prefer it if you factored out CodeOrigin::baseOffset()

&gt; Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:4221
&gt; +            size_t baseOffset = node.codeOrigin.inlineCallFrame ? node.codeOrigin.inlineCallFrame-&gt;stackOffset : 0;
&gt; +            baseOffset *= sizeof(Register);

This is nicer, but i still think the purely if based one works nicer (actual code now rather than bus typing logic):
size_t baseOffset = 0;
if (InlineCallFrame* inlineCallFrame = node.codeOrigin.inlineCallFrame)
    baseOffset = inlineCallFrame-&gt;stackOffset * sizeof(Register)

how does that feel?  I&apos;m okay with your code as it stands, but personally i&apos;d prefer the if() approach

&gt; Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:4239
&gt; +        size_t baseOffset = node.codeOrigin.inlineCallFrame ? node.codeOrigin.inlineCallFrame-&gt;stackOffset : 0;
&gt; +        baseOffset = (baseOffset + CallFrame::argumentOffsetIncludingThis(0)) * sizeof(Register);

Ditto here -- although the repeated logic here makes me wonder if we actually want a baseOffset() function on CodeOrigin, then all this code would be:

size_t baseOffset = (code.codeOrigin.baseOffset() + thingyIfNecessary) * sizeof(Register)

how does that sound?

It would also encapsulate that production of baseOffset, so that if we decided to change the logic in future we would need to go around hunting all these sites down.

&gt; Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:4301
&gt; +            size_t baseOffset = node.codeOrigin.inlineCallFrame ? node.codeOrigin.inlineCallFrame-&gt;stackOffset : 0;
&gt; +            baseOffset *= sizeof(Register);

Yeah, all this duplicated code makes me think a CodeOrigin::baseOffset() function is the best approach.  Thoughts?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724705</commentid>
    <comment_count>6</comment_count>
      <attachid>164953</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-09-20 11:32:40 -0700</bug_when>
    <thetext>Comment on attachment 164953
Patch

(- != + )</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724764</commentid>
    <comment_count>7</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-09-20 12:51:25 -0700</bug_when>
    <thetext>Committed r129156: &lt;http://trac.webkit.org/changeset/129156&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>164946</attachid>
            <date>2012-09-20 10:59:46 -0700</date>
            <delta_ts>2012-09-20 11:20:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97221-20120920105912.patch</filename>
            <type>text/plain</type>
            <size>37356</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTI5MTM2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYxIEBA
CisyMDEyLTA5LTIwICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CisKKyAgICAg
ICAgUmVmYWN0b3JlZCB0aGUgaW50ZXJwcmV0ZXIgYW5kIEpJVCBzbyB0aGV5IGRvbid0IGRpY3Rh
dGUgY2xvc3VyZSBsYXlvdXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTk3MjIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQ2FwdHVyZSBtYXkgY2hhbmdlIHRoZSBsb2NhdGlvbiBvZiBhbiBhcmd1bWVudCBm
b3Igc3BhY2UgZWZmaWNpZW5jeS4gVGhpcworICAgICAgICBwYXRjaCByZW1vdmVzIHN0YXRpYyBh
c3N1bXB0aW9ucyBhYm91dCBhcmd1bWVudCBsb2NhdGlvbiBmcm9tIHRoZSBpbnRlcnByZXRlcgor
ICAgICAgICBhbmQgSklULgorCisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmg6CisgICAg
ICAgIChKU0M6OkNvZGVCbG9jazo6YXJndW1lbnRJbmRleEFmdGVyQ2FwdHVyZSk6CisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6YXJndW1lbnRBZnRlckNhcHR1cmUpOiBGYWN0b3JlZCBvdXQgYSBo
ZWxwZXIgZnVuY3Rpb24KKyAgICAgICAgc28gdGhlIGNvbXBpbGVyIGNvdWxkIHNoYXJlIHRoaXMg
bG9naWMuCisKKyAgICAgICAgKiBieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2VuLmNwcDoKKyAgICAg
ICAgKEpTQzo6QnJhY2tldEFjY2Vzc29yTm9kZTo6ZW1pdEJ5dGVjb2RlKTogRG9uJ3QgZW1pdCBv
cHRpbWl6ZWQgYnJhY2tldAorICAgICAgICBhY2Nlc3Mgb24gYXJndW1lbnRzIGlmIGEgcGFyYW1l
dGVyIGhhcyBiZWVuIGNhcHR1cmVkIGJ5IG5hbWUuIFRoaXMgY2FzZSBpcworICAgICAgICByYXJl
IGFuZCwgd2hlcmUgSSd2ZSBzZWVuIGl0IGluIHRoZSB3aWxkLCB0aGUgb3B0aW1pemF0aW9uIG1v
c3RseSBmYWlsZWQKKyAgICAgICAgYW55d2F5IGR1ZSB0byBhcmd1bWVudHMgZXNjYXBlLCBzbyBJ
IGRpZG4ndCBmZWVsIGxpa2Ugd3JpdGluZyBhbmQgdGVzdGluZworICAgICAgICBmaXZlIGNvcGll
cyBvZiB0aGUgY29kZSB0aGF0IHdvdWxkIGhhbmRsZSBpdCBpbiB0aGUgYmFzZWxpbmUgZW5naW5l
cy4KKworICAgICAgICBUaGUgREZHIGNhbiBzdGlsbCBzeW50aGVzaXplIHRoaXMgb3B0aW1pemF0
aW9uIGV2ZW4gaWYgd2UgZG9uJ3QgZW1pdCB0aGUKKyAgICAgICAgb3B0aW1pemVkIGJ5dGVjb2Rl
IGZvciBpdC4KKworICAgICAgICAqIGRmZy9ERkdBcmd1bWVudHNTaW1wbGlmaWNhdGlvblBoYXNl
LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpBcmd1bWVudHNTaW1wbGlmaWNhdGlvblBoYXNlOjpy
dW4pOgorICAgICAgICAqIGRmZy9ERkdBc3NlbWJseUhlbHBlcnMuaDoKKyAgICAgICAgKEpTQzo6
REZHOjpBc3NlbWJseUhlbHBlcnM6OnN5bWJvbFRhYmxlRm9yKToKKyAgICAgICAgKEFzc2VtYmx5
SGVscGVycyk6IFVzZSB0aGUgcmlnaHQgaGVscGVyIGZ1bmN0aW9uIHRvIGFjY291bnQgZm9yIHRo
ZSBmYWN0CisgICAgICAgIHRoYXQgYSBwYXJhbWV0ZXIgbWF5IGhhdmUgYmVlbiBjYXB0dXJlZCBi
eSBuYW1lIGFuZCBtb3ZlZC4KKworICAgICAgICAqIGRmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHA6
CisgICAgICAgIChKU0M6OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2spOiBBU1NFUlQg
dGhhdCB3ZSBoYXZlbid0IGlubGluZWQKKyAgICAgICAgYSAuYXBwbHkgb24gY2FwdHVyZWQgYXJn
dW1lbnRzLiBPbmNlIHdlIGRvIHN0YXJ0IGlubGluaW5nIHN1Y2ggdGhpbmdzLAorICAgICAgICB3
ZSdsbCBuZWVkIHRvIGRvIGEgbGl0dGxlIGJpdCBvZiBtYXRoIGhlcmUgdG8gZ2V0IHRoZW0gcmln
aHQuCisKKyAgICAgICAgKiBkZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHA6CisgICAgICAg
IChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUpOgorICAgICAgICAqIGRmZy9ERkdT
cGVjdWxhdGl2ZUpJVDY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6
Y29tcGlsZSk6IEFkZGVkIHN1cHBvcnQgZm9yIGJyYWNrZXQgYWNjZXNzIG9uCisgICAgICAgIGFu
IGFyZ3VtZW50cyBvYmplY3Qgd2hlcmUgYXJndW1lbnRzIGhhdmUgYWxzbyBiZWVuIGNhcHR1cmVk
IGJ5IG5hbWUuIFdlCisgICAgICAgIGxvYWQgdGhlIHRydWUgaW5kZXggb2YgdGhlIGFyZ3VtZW50
IGZyb20gYSBzaWRlIHZlY3Rvci4gQXJndW1lbnRzIGVsaXNpb24KKyAgICAgICAgaXMgdmVyeSBw
b3dlcmZ1bCBpbiB0aGUgREZHLCBzbyBJIHdhbnRlZCB0byBrZWVwIGl0IHdvcmtpbmcsIGV2ZW4g
aW4gdGhpcworICAgICAgICByYXJlIGNhc2UuCisKKyAgICAgICAgKiBpbnRlcnByZXRlci9JbnRl
cnByZXRlci5jcHA6CisgICAgICAgIChKU0M6OmxvYWRWYXJhcmdzKTogVXNlIHRoZSByaWdodCBo
ZWxwZXIgZnVuY3Rpb24gdG8gYWNjb3VudCBmb3IgdGhlIGZhY3QKKyAgICAgICAgdGhhdCBhIHBh
cmFtZXRlciBtYXkgaGF2ZSBiZWVuIGNhcHR1cmVkIGJ5IG5hbWUgYW5kIG1vdmVkLgorCisgICAg
ICAgICogaml0L0pJVENhbGwuY3BwOgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVMb2FkVmFy
YXJncyk6CisgICAgICAgICogaml0L0pJVENhbGwzMl82NC5jcHA6CisgICAgICAgIChKU0M6OkpJ
VDo6Y29tcGlsZUxvYWRWYXJhcmdzKTogRG9uJ3QgdXNlIHRoZSBpbmxpbmUgY29weSBsb29wIGlm
IHNvbWUKKyAgICAgICAgb2Ygb3VyIGFyZ3VtZW50cyBoYXZlIG1vdmVkLCBzaW5jZSBpdCB3b3Vs
ZCBjb3B5IHN0YWxlIHZhbHVlcy4gKFdlIHN0aWxsCisgICAgICAgIG9wdGltaXplIHRoZSBhY3R1
YWwgY2FsbCwgYW5kIGVsaWRlIHRoZSBhcmd1bWVudHMgb2JqZWN0LikKKwogMjAxMi0wOS0yMCAg
R2Fib3IgUmFwY3NhbnlpICA8cmdhYm9yQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1F0XSByMTI5
MDQ1IGJyb2tlIHRoZSBBUk0gYnVpbGQKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9Db2RlQmxvY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvQ29kZUJsb2NrLmgJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suaAkod29ya2luZyBjb3B5KQpAQCAtNDMyLDYgKzQzMiw4
IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgICAgIHVuc2lnbmVkIGluc3RydWN0aW9uQ291bnQo
KSB7IHJldHVybiBtX2luc3RydWN0aW9ucy5zaXplKCk7IH0KIAorICAgICAgICBpbnQgYXJndW1l
bnRJbmRleEFmdGVyQ2FwdHVyZShzaXplX3QgYXJndW1lbnQpOworCiAjaWYgRU5BQkxFKEpJVCkK
ICAgICAgICAgdm9pZCBzZXRKSVRDb2RlKGNvbnN0IEpJVENvZGUmIGNvZGUsIE1hY3JvQXNzZW1i
bGVyQ29kZVB0ciBjb2RlV2l0aEFyaXR5Q2hlY2spCiAgICAgICAgIHsKQEAgLTE1MjAsNiArMTUy
MiwxOCBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgcmV0dXJuIGJhc2VsaW5lQ29kZUJsb2Nr
OwogICAgIH0KICAgICAKKyAgICBpbmxpbmUgaW50IENvZGVCbG9jazo6YXJndW1lbnRJbmRleEFm
dGVyQ2FwdHVyZShzaXplX3QgYXJndW1lbnQpCisgICAgeworICAgICAgICBpZiAoYXJndW1lbnQg
Pj0gc3RhdGljX2Nhc3Q8c2l6ZV90PihzeW1ib2xUYWJsZSgpLT5wYXJhbWV0ZXJDb3VudCgpKSkK
KyAgICAgICAgICAgIHJldHVybiBDYWxsRnJhbWU6OmFyZ3VtZW50T2Zmc2V0KGFyZ3VtZW50KTsK
KworICAgICAgICBjb25zdCBTbG93QXJndW1lbnQqIHNsb3dBcmd1bWVudHMgPSBzeW1ib2xUYWJs
ZSgpLT5zbG93QXJndW1lbnRzKCk7CisgICAgICAgIGlmICghc2xvd0FyZ3VtZW50cyB8fCBzbG93
QXJndW1lbnRzW2FyZ3VtZW50XS5zdGF0dXMgPT0gU2xvd0FyZ3VtZW50OjpOb3JtYWwpCisgICAg
ICAgICAgICByZXR1cm4gQ2FsbEZyYW1lOjphcmd1bWVudE9mZnNldChhcmd1bWVudCk7CisKKyAg
ICAgICAgQVNTRVJUKHNsb3dBcmd1bWVudHNbYXJndW1lbnRdLnN0YXR1cyA9PSBTbG93QXJndW1l
bnQ6OkNhcHR1cmVkKTsKKyAgICAgICAgcmV0dXJuIHNsb3dBcmd1bWVudHNbYXJndW1lbnRdLmlu
ZGV4SWZDYXB0dXJlZDsKKyAgICB9CiAKICAgICBpbmxpbmUgUmVnaXN0ZXImIEV4ZWNTdGF0ZTo6
cihpbnQgaW5kZXgpCiAgICAgewpAQCAtMTU1MiwxNSArMTU2Niw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogICAgICAgICBpZiAoIWNvZGVCbG9jaygpKQogICAgICAgICAgICAgcmV0dXJuIHRoaXNbYXJn
dW1lbnRPZmZzZXQoYXJndW1lbnQpXS5qc1ZhbHVlKCk7CiAKLSAgICAgICAgaWYgKGFyZ3VtZW50
ID49IHN0YXRpY19jYXN0PHNpemVfdD4oY29kZUJsb2NrKCktPnN5bWJvbFRhYmxlKCktPnBhcmFt
ZXRlckNvdW50KCkpKQotICAgICAgICAgICAgcmV0dXJuIHRoaXNbYXJndW1lbnRPZmZzZXQoYXJn
dW1lbnQpXS5qc1ZhbHVlKCk7Ci0KLSAgICAgICAgY29uc3QgU2xvd0FyZ3VtZW50KiBzbG93QXJn
dW1lbnRzID0gY29kZUJsb2NrKCktPnN5bWJvbFRhYmxlKCktPnNsb3dBcmd1bWVudHMoKTsKLSAg
ICAgICAgaWYgKCFzbG93QXJndW1lbnRzIHx8IHNsb3dBcmd1bWVudHNbYXJndW1lbnRdLnN0YXR1
cyA9PSBTbG93QXJndW1lbnQ6Ok5vcm1hbCkKLSAgICAgICAgICAgIHJldHVybiB0aGlzW2FyZ3Vt
ZW50T2Zmc2V0KGFyZ3VtZW50KV0uanNWYWx1ZSgpOwotCi0gICAgICAgIEFTU0VSVChzbG93QXJn
dW1lbnRzW2FyZ3VtZW50XS5zdGF0dXMgPT0gU2xvd0FyZ3VtZW50OjpDYXB0dXJlZCk7Ci0gICAg
ICAgIHJldHVybiB0aGlzW3Nsb3dBcmd1bWVudHNbYXJndW1lbnRdLmluZGV4SWZDYXB0dXJlZF0u
anNWYWx1ZSgpOworICAgICAgICByZXR1cm4gdGhpc1tjb2RlQmxvY2soKS0+YXJndW1lbnRJbmRl
eEFmdGVyQ2FwdHVyZShhcmd1bWVudCldLmpzVmFsdWUoKTsKICAgICB9CiAKICNpZiBFTkFCTEUo
REZHX0pJVCkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvTm9kZXND
b2RlZ2VuLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBp
bGVyL05vZGVzQ29kZWdlbi5jcHAJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2VuLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzIwLDcgKzMyMCw5IEBAIFJlZ2lzdGVySUQqIFByb3BlcnR5TGlzdE5vZGU6OmVtaXRCeXRlY28K
IAogUmVnaXN0ZXJJRCogQnJhY2tldEFjY2Vzc29yTm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVjb2Rl
R2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKIHsKLSAgICBpZiAobV9iYXNl
LT5pc1Jlc29sdmVOb2RlKCkgJiYgZ2VuZXJhdG9yLndpbGxSZXNvbHZlVG9Bcmd1bWVudHMoc3Rh
dGljX2Nhc3Q8UmVzb2x2ZU5vZGUqPihtX2Jhc2UpLT5pZGVudGlmaWVyKCkpKSB7CisgICAgaWYg
KG1fYmFzZS0+aXNSZXNvbHZlTm9kZSgpIAorICAgICAgICAmJiBnZW5lcmF0b3Iud2lsbFJlc29s
dmVUb0FyZ3VtZW50cyhzdGF0aWNfY2FzdDxSZXNvbHZlTm9kZSo+KG1fYmFzZSktPmlkZW50aWZp
ZXIoKSkKKyAgICAgICAgJiYgIWdlbmVyYXRvci5zeW1ib2xUYWJsZSgpLnNsb3dBcmd1bWVudHMo
KSkgewogICAgICAgICBSZWdpc3RlcklEKiBwcm9wZXJ0eSA9IGdlbmVyYXRvci5lbWl0Tm9kZSht
X3N1YnNjcmlwdCk7CiAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhwcmVzc2lvbkluZm8oZGl2b3Qo
KSwgc3RhcnRPZmZzZXQoKSwgZW5kT2Zmc2V0KCkpOyAgICAKICAgICAgICAgcmV0dXJuIGdlbmVy
YXRvci5lbWl0R2V0QXJndW1lbnRCeVZhbChnZW5lcmF0b3IuZmluYWxEZXN0aW5hdGlvbihkc3Qp
LCBnZW5lcmF0b3IudW5jaGVja2VkUmVnaXN0ZXJGb3JBcmd1bWVudHMoKSwgcHJvcGVydHkpOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcmd1bWVudHNTaW1wbGlmaWNhdGlv
blBoYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fy
Z3VtZW50c1NpbXBsaWZpY2F0aW9uUGhhc2UuY3BwCShyZXZpc2lvbiAxMjkwOTApCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0FyZ3VtZW50c1NpbXBsaWZpY2F0aW9uUGhhc2UuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC01ODQsOCArNTg0LDggQEAgcHVibGljOgogICAgICAgICAgICAg
ICAgICAgICBub2RlLmNvbnZlcnRUb0dldExvY2FsVW5saW5rZWQoCiAgICAgICAgICAgICAgICAg
ICAgICAgICBzdGF0aWNfY2FzdDxWaXJ0dWFsUmVnaXN0ZXI+KAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0ICsK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmd1bWVudFRvT3BlcmFuZChpbmRleCArIDEp
KSk7Ci0gICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1f
Z3JhcGguYmFzZWxpbmVDb2RlQmxvY2tGb3Iobm9kZS5jb2RlT3JpZ2luKS0+YXJndW1lbnRJbmRl
eEFmdGVyQ2FwdHVyZShpbmRleCkpKTsKKwogICAgICAgICAgICAgICAgICAgICBOb2RlSW5kZXgg
Y2hlY2tOb2RlSW5kZXggPSBtX2dyYXBoLnNpemUoKTsKICAgICAgICAgICAgICAgICAgICAgbV9n
cmFwaC5hcHBlbmQoY2hlY2spOwogICAgICAgICAgICAgICAgICAgICBpbnNlcnRpb25TZXQuYXBw
ZW5kKGluZGV4SW5CbG9jaywgY2hlY2tOb2RlSW5kZXgpOwpJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdBc3NlbWJseUhlbHBlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR0Fzc2VtYmx5SGVscGVycy5oCShyZXZpc2lvbiAxMjkwOTApCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fzc2VtYmx5SGVscGVycy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0zNDMsNiArMzQzLDExIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFyZ3Vt
ZW50c1JlZ2lzdGVyRm9yKGNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lKTsKICAgICB9CiAgICAg
CisgICAgU2hhcmVkU3ltYm9sVGFibGUqIHN5bWJvbFRhYmxlRm9yKGNvbnN0IENvZGVPcmlnaW4m
IGNvZGVPcmlnaW4pCisgICAgeworICAgICAgICByZXR1cm4gYmFzZWxpbmVDb2RlQmxvY2tGb3Io
Y29kZU9yaWdpbiktPnN5bWJvbFRhYmxlKCk7CisgICAgfQorCiAgICAgVmVjdG9yPEJ5dGVjb2Rl
QW5kTWFjaGluZU9mZnNldD4mIGRlY29kZWRDb2RlTWFwRm9yKENvZGVCbG9jayopOwogICAgIAog
ICAgIHN0YXRpYyBjb25zdCBkb3VibGUgdHdvVG9UaGUzMjsKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCShyZXZpc2lvbiAxMjkwOTAp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjcxNCw2ICsyNzE0LDcgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFy
c2VCbG9jayh1bnNpZ25lZAogICAgICAgICBjYXNlIG9wX2NhbGxfdmFyYXJnczogewogICAgICAg
ICAgICAgQVNTRVJUKG1faW5saW5lU3RhY2tUb3AtPm1faW5saW5lQ2FsbEZyYW1lKTsKICAgICAg
ICAgICAgIEFTU0VSVChjdXJyZW50SW5zdHJ1Y3Rpb25bM10udS5vcGVyYW5kID09IG1faW5saW5l
U3RhY2tUb3AtPm1fY29kZUJsb2NrLT5hcmd1bWVudHNSZWdpc3RlcigpKTsKKyAgICAgICAgICAg
IEFTU0VSVCghbV9pbmxpbmVTdGFja1RvcC0+bV9jb2RlQmxvY2stPnN5bWJvbFRhYmxlKCktPnNs
b3dBcmd1bWVudHMoKSk7CiAgICAgICAgICAgICAvLyBJdCB3b3VsZCBiZSBjb29sIHRvIGZ1bm5l
bCB0aGlzIGludG8gaGFuZGxlQ2FsbCgpIHNvIHRoYXQgaXQgY2FuIGhhbmRsZQogICAgICAgICAg
ICAgLy8gaW5saW5pbmcuIEJ1dCBjdXJyZW50bHkgdGhhdCB3b24ndCBiZSBwcm9maXRhYmxlIGFu
eXdheSwgc2luY2Ugbm9uZSBvZiB0aGUKICAgICAgICAgICAgIC8vIHVzZXMgb2YgY2FsbF92YXJh
cmdzIHdpbGwgYmUgaW5saW5lYWJsZS4gU28gd2Ugc2V0IHRoaXMgdXAgbWFudWFsbHkgYW5kCklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUMzJfNjQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVK
SVQzMl82NC5jcHAJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQyMDIsNiAr
NDIwMiwzOSBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAg
ICAgICAgICAgICAgICAgIEpJVENvbXBpbGVyOjpwYXlsb2FkRm9yKFJlZ2lzdGVyRmlsZTo6QXJn
dW1lbnRDb3VudCkpKTsKICAgICAgICAgfQogICAgICAgICAKKyAgICAgICAgSklUQ29tcGlsZXI6
Okp1bXBMaXN0IHNsb3dBcmd1bWVudDsKKyAgICAgICAgSklUQ29tcGlsZXI6Okp1bXBMaXN0IHNs
b3dBcmd1bWVudE91dE9mQm91bmRzOworICAgICAgICBpZiAoY29uc3QgU2xvd0FyZ3VtZW50KiBz
bG93QXJndW1lbnRzID0gbV9qaXQuc3ltYm9sVGFibGVGb3Iobm9kZS5jb2RlT3JpZ2luKS0+c2xv
d0FyZ3VtZW50cygpKSB7CisgICAgICAgICAgICBzbG93QXJndW1lbnRPdXRPZkJvdW5kcy5hcHBl
bmQoCisgICAgICAgICAgICAgICAgbV9qaXQuYnJhbmNoMzIoCisgICAgICAgICAgICAgICAgICAg
IEpJVENvbXBpbGVyOjpBYm92ZU9yRXF1YWwsIGluZGV4R1BSLAorICAgICAgICAgICAgICAgICAg
ICBJbW0zMihtX2ppdC5zeW1ib2xUYWJsZUZvcihub2RlLmNvZGVPcmlnaW4pLT5wYXJhbWV0ZXJD
b3VudCgpKSkpOworCisgICAgICAgICAgICBDT01QSUxFX0FTU0VSVChzaXplb2YoU2xvd0FyZ3Vt
ZW50KSA9PSA4LCBTbG93QXJndW1lbnRfc2l6ZV9pc19laWdodF9ieXRlcyk7CisgICAgICAgICAg
ICBtX2ppdC5tb3ZlKEltbVB0cihzbG93QXJndW1lbnRzKSwgcmVzdWx0UGF5bG9hZEdQUik7Cisg
ICAgICAgICAgICBtX2ppdC5sb2FkMzIoCisgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6OkJh
c2VJbmRleCgKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0UGF5bG9hZEdQUiwgaW5kZXhHUFIs
IEpJVENvbXBpbGVyOjpUaW1lc0VpZ2h0LCAKKyAgICAgICAgICAgICAgICAgICAgT0JKRUNUX09G
RlNFVE9GKFNsb3dBcmd1bWVudCwgaW5kZXhJZkNhcHR1cmVkKSksIAorICAgICAgICAgICAgICAg
IHJlc3VsdFBheWxvYWRHUFIpOworICAgICAgICAgICAgc2l6ZV90IGJhc2VPZmZzZXQgPQorICAg
ICAgICAgICAgICAgIChub2RlLmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lCisgICAgICAgICAg
ICAgICAgICA/IG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0Cisg
ICAgICAgICAgICAgICAgICA6IDApICogc2l6ZW9mKFJlZ2lzdGVyKTsKKyAgICAgICAgICAgIG1f
aml0LmxvYWQzMigKKyAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6QmFzZUluZGV4KAorICAg
ICAgICAgICAgICAgICAgICBHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgcmVzdWx0UGF5bG9h
ZEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQsCisgICAgICAgICAgICAgICAgICAgIGJhc2VP
ZmZzZXQgKyBPQkpFQ1RfT0ZGU0VUT0YoRW5jb2RlZFZhbHVlRGVzY3JpcHRvciwgYXNCaXRzLnRh
ZykpLAorICAgICAgICAgICAgICAgIHJlc3VsdFRhZ0dQUik7CisgICAgICAgICAgICBtX2ppdC5s
b2FkMzIoCisgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6OkJhc2VJbmRleCgKKyAgICAgICAg
ICAgICAgICAgICAgR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIsIHJlc3VsdFBheWxvYWRHUFIs
IEpJVENvbXBpbGVyOjpUaW1lc0VpZ2h0LAorICAgICAgICAgICAgICAgICAgICBiYXNlT2Zmc2V0
ICsgT0JKRUNUX09GRlNFVE9GKEVuY29kZWRWYWx1ZURlc2NyaXB0b3IsIGFzQml0cy5wYXlsb2Fk
KSksCisgICAgICAgICAgICAgICAgcmVzdWx0UGF5bG9hZEdQUik7CisgICAgICAgICAgICBzbG93
QXJndW1lbnQuYXBwZW5kKG1faml0Lmp1bXAoKSk7CisgICAgICAgIH0KKyAgICAgICAgc2xvd0Fy
Z3VtZW50T3V0T2ZCb3VuZHMubGluaygmbV9qaXQpOworCiAgICAgICAgIG1faml0Lm5lZzMyKHJl
c3VsdFBheWxvYWRHUFIpOwogICAgICAgICAKICAgICAgICAgc2l6ZV90IGJhc2VPZmZzZXQgPQpA
QCAtNDIxOSw2ICs0MjUyLDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBu
b2RlKQogICAgICAgICAgICAgICAgIGJhc2VPZmZzZXQgKyBPQkpFQ1RfT0ZGU0VUT0YoRW5jb2Rl
ZFZhbHVlRGVzY3JpcHRvciwgYXNCaXRzLnBheWxvYWQpKSwKICAgICAgICAgICAgIHJlc3VsdFBh
eWxvYWRHUFIpOwogICAgICAgICAgICAgCisgICAgICAgIHNsb3dBcmd1bWVudC5saW5rKCZtX2pp
dCk7CiAgICAgICAgIGpzVmFsdWVSZXN1bHQocmVzdWx0VGFnR1BSLCByZXN1bHRQYXlsb2FkR1BS
LCBtX2NvbXBpbGVJbmRleCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KQEAgLTQyNTIsNiArNDI4
NiwzOSBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAgICAg
ICAgICAgICAgICAgIEpJVENvbXBpbGVyOjpwYXlsb2FkRm9yKFJlZ2lzdGVyRmlsZTo6QXJndW1l
bnRDb3VudCkpKTsKICAgICAgICAgfQogICAgICAgICAKKyAgICAgICAgSklUQ29tcGlsZXI6Okp1
bXBMaXN0IHNsb3dBcmd1bWVudDsKKyAgICAgICAgSklUQ29tcGlsZXI6Okp1bXBMaXN0IHNsb3dB
cmd1bWVudE91dE9mQm91bmRzOworICAgICAgICBpZiAoY29uc3QgU2xvd0FyZ3VtZW50KiBzbG93
QXJndW1lbnRzID0gbV9qaXQuc3ltYm9sVGFibGVGb3Iobm9kZS5jb2RlT3JpZ2luKS0+c2xvd0Fy
Z3VtZW50cygpKSB7CisgICAgICAgICAgICBzbG93QXJndW1lbnRPdXRPZkJvdW5kcy5hcHBlbmQo
CisgICAgICAgICAgICAgICAgbV9qaXQuYnJhbmNoMzIoCisgICAgICAgICAgICAgICAgICAgIEpJ
VENvbXBpbGVyOjpBYm92ZU9yRXF1YWwsIGluZGV4R1BSLAorICAgICAgICAgICAgICAgICAgICBJ
bW0zMihtX2ppdC5zeW1ib2xUYWJsZUZvcihub2RlLmNvZGVPcmlnaW4pLT5wYXJhbWV0ZXJDb3Vu
dCgpKSkpOworCisgICAgICAgICAgICBDT01QSUxFX0FTU0VSVChzaXplb2YoU2xvd0FyZ3VtZW50
KSA9PSA4LCBTbG93QXJndW1lbnRfc2l6ZV9pc19laWdodF9ieXRlcyk7CisgICAgICAgICAgICBt
X2ppdC5tb3ZlKEltbVB0cihzbG93QXJndW1lbnRzKSwgcmVzdWx0UGF5bG9hZEdQUik7CisgICAg
ICAgICAgICBtX2ppdC5sb2FkMzIoCisgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6OkJhc2VJ
bmRleCgKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0UGF5bG9hZEdQUiwgaW5kZXhHUFIsIEpJ
VENvbXBpbGVyOjpUaW1lc0VpZ2h0LCAKKyAgICAgICAgICAgICAgICAgICAgT0JKRUNUX09GRlNF
VE9GKFNsb3dBcmd1bWVudCwgaW5kZXhJZkNhcHR1cmVkKSksIAorICAgICAgICAgICAgICAgIHJl
c3VsdFBheWxvYWRHUFIpOworICAgICAgICAgICAgc2l6ZV90IGJhc2VPZmZzZXQgPQorICAgICAg
ICAgICAgICAgIChub2RlLmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lCisgICAgICAgICAgICAg
ICAgICA/IG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0CisgICAg
ICAgICAgICAgICAgICA6IDApICogc2l6ZW9mKFJlZ2lzdGVyKTsKKyAgICAgICAgICAgIG1faml0
LmxvYWQzMigKKyAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6QmFzZUluZGV4KAorICAgICAg
ICAgICAgICAgICAgICBHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgcmVzdWx0UGF5bG9hZEdQ
UiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQsCisgICAgICAgICAgICAgICAgICAgIGJhc2VPZmZz
ZXQgKyBPQkpFQ1RfT0ZGU0VUT0YoRW5jb2RlZFZhbHVlRGVzY3JpcHRvciwgYXNCaXRzLnRhZykp
LAorICAgICAgICAgICAgICAgIHJlc3VsdFRhZ0dQUik7CisgICAgICAgICAgICBtX2ppdC5sb2Fk
MzIoCisgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6OkJhc2VJbmRleCgKKyAgICAgICAgICAg
ICAgICAgICAgR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIsIHJlc3VsdFBheWxvYWRHUFIsIEpJ
VENvbXBpbGVyOjpUaW1lc0VpZ2h0LAorICAgICAgICAgICAgICAgICAgICBiYXNlT2Zmc2V0ICsg
T0JKRUNUX09GRlNFVE9GKEVuY29kZWRWYWx1ZURlc2NyaXB0b3IsIGFzQml0cy5wYXlsb2FkKSks
CisgICAgICAgICAgICAgICAgcmVzdWx0UGF5bG9hZEdQUik7CisgICAgICAgICAgICBzbG93QXJn
dW1lbnQuYXBwZW5kKG1faml0Lmp1bXAoKSk7CisgICAgICAgIH0KKyAgICAgICAgc2xvd0FyZ3Vt
ZW50T3V0T2ZCb3VuZHMubGluaygmbV9qaXQpOworCiAgICAgICAgIG1faml0Lm5lZzMyKHJlc3Vs
dFBheWxvYWRHUFIpOwogICAgICAgICAKICAgICAgICAgc2l6ZV90IGJhc2VPZmZzZXQgPQpAQCAt
NDI4NCw2ICs0MzUxLDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2Rl
KQogICAgICAgICAgICAgICAgICAgICBtX2ppdC5hcmd1bWVudHNSZWdpc3RlckZvcihub2RlLmNv
ZGVPcmlnaW4pLCBpbmRleEdQUikpOwogICAgICAgICB9CiAgICAgICAgIAorICAgICAgICBzbG93
QXJndW1lbnQubGluaygmbV9qaXQpOwogICAgICAgICBqc1ZhbHVlUmVzdWx0KHJlc3VsdFRhZ0dQ
UiwgcmVzdWx0UGF5bG9hZEdQUiwgbV9jb21waWxlSW5kZXgpOwogICAgICAgICBicmVhazsKICAg
ICB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRp
dmVKSVQ2NC5jcHAJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQxMjIsNyArNDEy
Miw3IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSYgbm9kZSkKICAgICAgICAg
R1BSVGVtcG9yYXJ5IHJlc3VsdCh0aGlzKTsKICAgICAgICAgR1BSUmVnIGluZGV4R1BSID0gaW5k
ZXguZ3ByKCk7CiAgICAgICAgIEdQUlJlZyByZXN1bHRHUFIgPSByZXN1bHQuZ3ByKCk7Ci0gICAg
ICAgIAorCiAgICAgICAgIGlmICghaXNFbXB0eVNwZWN1bGF0aW9uKAogICAgICAgICAgICAgICAg
IG1fc3RhdGUudmFyaWFibGVzKCkub3BlcmFuZCgKICAgICAgICAgICAgICAgICAgICAgbV9qaXQu
Z3JhcGgoKS5hcmd1bWVudHNSZWdpc3RlckZvcihub2RlLmNvZGVPcmlnaW4pKS5tX3R5cGUpKSB7
CkBAIC00MTUwLDcgKzQxNTAsMzQgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2Rl
JiBub2RlKQogICAgICAgICAgICAgICAgICAgICByZXN1bHRHUFIsCiAgICAgICAgICAgICAgICAg
ICAgIEpJVENvbXBpbGVyOjpwYXlsb2FkRm9yKFJlZ2lzdGVyRmlsZTo6QXJndW1lbnRDb3VudCkp
KTsKICAgICAgICAgfQotICAgICAgICAgICAgCisKKyAgICAgICAgSklUQ29tcGlsZXI6Okp1bXBM
aXN0IHNsb3dBcmd1bWVudDsKKyAgICAgICAgSklUQ29tcGlsZXI6Okp1bXBMaXN0IHNsb3dBcmd1
bWVudE91dE9mQm91bmRzOworICAgICAgICBpZiAoY29uc3QgU2xvd0FyZ3VtZW50KiBzbG93QXJn
dW1lbnRzID0gbV9qaXQuc3ltYm9sVGFibGVGb3Iobm9kZS5jb2RlT3JpZ2luKS0+c2xvd0FyZ3Vt
ZW50cygpKSB7CisgICAgICAgICAgICBzbG93QXJndW1lbnRPdXRPZkJvdW5kcy5hcHBlbmQoCisg
ICAgICAgICAgICAgICAgbV9qaXQuYnJhbmNoMzIoCisgICAgICAgICAgICAgICAgICAgIEpJVENv
bXBpbGVyOjpBYm92ZU9yRXF1YWwsIGluZGV4R1BSLAorICAgICAgICAgICAgICAgICAgICBJbW0z
MihtX2ppdC5zeW1ib2xUYWJsZUZvcihub2RlLmNvZGVPcmlnaW4pLT5wYXJhbWV0ZXJDb3VudCgp
KSkpOworCisgICAgICAgICAgICBDT01QSUxFX0FTU0VSVChzaXplb2YoU2xvd0FyZ3VtZW50KSA9
PSA4LCBTbG93QXJndW1lbnRfc2l6ZV9pc19laWdodF9ieXRlcyk7CisgICAgICAgICAgICBtX2pp
dC5tb3ZlKEltbVB0cihzbG93QXJndW1lbnRzKSwgcmVzdWx0R1BSKTsKKyAgICAgICAgICAgIG1f
aml0LmxvYWQzMigKKyAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6QmFzZUluZGV4KAorICAg
ICAgICAgICAgICAgICAgICByZXN1bHRHUFIsIGluZGV4R1BSLCBKSVRDb21waWxlcjo6VGltZXNF
aWdodCwgCisgICAgICAgICAgICAgICAgICAgIE9CSkVDVF9PRkZTRVRPRihTbG93QXJndW1lbnQs
IGluZGV4SWZDYXB0dXJlZCkpLCAKKyAgICAgICAgICAgICAgICByZXN1bHRHUFIpOworICAgICAg
ICAgICAgbV9qaXQuc2lnbkV4dGVuZDMyVG9QdHIocmVzdWx0R1BSLCByZXN1bHRHUFIpOworICAg
ICAgICAgICAgbV9qaXQubG9hZFB0cigKKyAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6QmFz
ZUluZGV4KAorICAgICAgICAgICAgICAgICAgICBHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3Rlciwg
cmVzdWx0R1BSLCBKSVRDb21waWxlcjo6VGltZXNFaWdodCwKKyAgICAgICAgICAgICAgICAgICAg
KG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUKKyAgICAgICAgICAgICAgICAgICAgICA/
IG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0CisgICAgICAgICAg
ICAgICAgICAgICAgOiAwKSAqIHNpemVvZihSZWdpc3RlcikpLAorICAgICAgICAgICAgICAgIHJl
c3VsdEdQUik7CisgICAgICAgICAgICBzbG93QXJndW1lbnQuYXBwZW5kKG1faml0Lmp1bXAoKSk7
CisgICAgICAgIH0KKyAgICAgICAgc2xvd0FyZ3VtZW50T3V0T2ZCb3VuZHMubGluaygmbV9qaXQp
OworCiAgICAgICAgIG1faml0Lm5lZzMyKHJlc3VsdEdQUik7CiAgICAgICAgIG1faml0LnNpZ25F
eHRlbmQzMlRvUHRyKHJlc3VsdEdQUiwgcmVzdWx0R1BSKTsKICAgICAgICAgICAgIApAQCAtNDE2
Miw2ICs0MTg5LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2RlKQog
ICAgICAgICAgICAgICAgICAgOiAwKSArIENhbGxGcmFtZTo6YXJndW1lbnRPZmZzZXRJbmNsdWRp
bmdUaGlzKDApKSAqIHNpemVvZihSZWdpc3RlcikpLAogICAgICAgICAgICAgcmVzdWx0R1BSKTsK
IAorICAgICAgICBzbG93QXJndW1lbnQubGluaygmbV9qaXQpOwogICAgICAgICBqc1ZhbHVlUmVz
dWx0KHJlc3VsdEdQUiwgbV9jb21waWxlSW5kZXgpOwogICAgICAgICBicmVhazsKICAgICB9CkBA
IC00MTk0LDYgKzQyMjIsMzMgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBu
b2RlKQogICAgICAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6cGF5bG9hZEZvcihSZWdpc3Rl
ckZpbGU6OkFyZ3VtZW50Q291bnQpKSk7CiAgICAgICAgIH0KICAgICAgICAgCisgICAgICAgIEpJ
VENvbXBpbGVyOjpKdW1wTGlzdCBzbG93QXJndW1lbnQ7CisgICAgICAgIEpJVENvbXBpbGVyOjpK
dW1wTGlzdCBzbG93QXJndW1lbnRPdXRPZkJvdW5kczsKKyAgICAgICAgaWYgKGNvbnN0IFNsb3dB
cmd1bWVudCogc2xvd0FyZ3VtZW50cyA9IG1faml0LnN5bWJvbFRhYmxlRm9yKG5vZGUuY29kZU9y
aWdpbiktPnNsb3dBcmd1bWVudHMoKSkgeworICAgICAgICAgICAgc2xvd0FyZ3VtZW50T3V0T2ZC
b3VuZHMuYXBwZW5kKAorICAgICAgICAgICAgICAgIG1faml0LmJyYW5jaDMyKAorICAgICAgICAg
ICAgICAgICAgICBKSVRDb21waWxlcjo6QWJvdmVPckVxdWFsLCBpbmRleEdQUiwKKyAgICAgICAg
ICAgICAgICAgICAgSW1tMzIobV9qaXQuc3ltYm9sVGFibGVGb3Iobm9kZS5jb2RlT3JpZ2luKS0+
cGFyYW1ldGVyQ291bnQoKSkpKTsKKworICAgICAgICAgICAgQ09NUElMRV9BU1NFUlQoc2l6ZW9m
KFNsb3dBcmd1bWVudCkgPT0gOCwgU2xvd0FyZ3VtZW50X3NpemVfaXNfZWlnaHRfYnl0ZXMpOwor
ICAgICAgICAgICAgbV9qaXQubW92ZShJbW1QdHIoc2xvd0FyZ3VtZW50cyksIHJlc3VsdEdQUik7
CisgICAgICAgICAgICBtX2ppdC5sb2FkMzIoCisgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6
OkJhc2VJbmRleCgKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0R1BSLCBpbmRleEdQUiwgSklU
Q29tcGlsZXI6OlRpbWVzRWlnaHQsIAorICAgICAgICAgICAgICAgICAgICBPQkpFQ1RfT0ZGU0VU
T0YoU2xvd0FyZ3VtZW50LCBpbmRleElmQ2FwdHVyZWQpKSwgCisgICAgICAgICAgICAgICAgcmVz
dWx0R1BSKTsKKyAgICAgICAgICAgIG1faml0LnNpZ25FeHRlbmQzMlRvUHRyKHJlc3VsdEdQUiwg
cmVzdWx0R1BSKTsKKyAgICAgICAgICAgIG1faml0LmxvYWRQdHIoCisgICAgICAgICAgICAgICAg
SklUQ29tcGlsZXI6OkJhc2VJbmRleCgKKyAgICAgICAgICAgICAgICAgICAgR1BSSW5mbzo6Y2Fs
bEZyYW1lUmVnaXN0ZXIsIHJlc3VsdEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQsCisgICAg
ICAgICAgICAgICAgICAgIChub2RlLmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lCisgICAgICAg
ICAgICAgICAgICAgICAgPyBub2RlLmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lLT5zdGFja09m
ZnNldAorICAgICAgICAgICAgICAgICAgICAgIDogMCkgKiBzaXplb2YoUmVnaXN0ZXIpKSwKKyAg
ICAgICAgICAgICAgICByZXN1bHRHUFIpOworICAgICAgICAgICAgc2xvd0FyZ3VtZW50LmFwcGVu
ZChtX2ppdC5qdW1wKCkpOworICAgICAgICB9CisgICAgICAgIHNsb3dBcmd1bWVudE91dE9mQm91
bmRzLmxpbmsoJm1faml0KTsKKwogICAgICAgICBtX2ppdC5uZWczMihyZXN1bHRHUFIpOwogICAg
ICAgICBtX2ppdC5zaWduRXh0ZW5kMzJUb1B0cihyZXN1bHRHUFIsIHJlc3VsdEdQUik7CiAgICAg
ICAgIApAQCAtNDIyMCw2ICs0Mjc1LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShO
b2RlJiBub2RlKQogICAgICAgICAgICAgICAgICAgICBpbmRleEdQUikpOwogICAgICAgICB9CiAg
ICAgICAgIAorICAgICAgICBzbG93QXJndW1lbnQubGluaygmbV9qaXQpOwogICAgICAgICBqc1Zh
bHVlUmVzdWx0KHJlc3VsdEdQUiwgbV9jb21waWxlSW5kZXgpOwogICAgICAgICBicmVhazsKICAg
ICB9CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJwcmV0ZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9JbnRl
cnByZXRlci5jcHAJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnRlcnByZXRlci9JbnRlcnByZXRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIwMiw3ICsyMDIs
NyBAQCBDYWxsRnJhbWUqIGxvYWRWYXJhcmdzKENhbGxGcmFtZSogY2FsbEZyCiAgICAgICAgIG5l
d0NhbGxGcmFtZS0+c2V0QXJndW1lbnRDb3VudEluY2x1ZGluZ1RoaXMoYXJndW1lbnRDb3VudElu
Y2x1ZGluZ1RoaXMpOwogICAgICAgICBuZXdDYWxsRnJhbWUtPnNldFRoaXNWYWx1ZSh0aGlzVmFs
dWUpOwogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGNhbGxGcmFtZS0+YXJndW1lbnRD
b3VudCgpOyArK2kpCi0gICAgICAgICAgICBuZXdDYWxsRnJhbWUtPnNldEFyZ3VtZW50KGksIGNh
bGxGcmFtZS0+YXJndW1lbnQoaSkpOworICAgICAgICAgICAgbmV3Q2FsbEZyYW1lLT5zZXRBcmd1
bWVudChpLCBjYWxsRnJhbWUtPmFyZ3VtZW50QWZ0ZXJDYXB0dXJlKGkpKTsKICAgICAgICAgcmV0
dXJuIG5ld0NhbGxGcmFtZTsKICAgICB9CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9q
aXQvSklUQ2FsbDMyXzY0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L0pJVENhbGwzMl82NC5jcHAJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUQ2FsbDMyXzY0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQxLDcgKzE0
MSwxMSBAQCB2b2lkIEpJVDo6Y29tcGlsZUxvYWRWYXJhcmdzKEluc3RydWN0aW9uCiAKICAgICBK
dW1wTGlzdCBzbG93Q2FzZTsKICAgICBKdW1wTGlzdCBlbmQ7Ci0gICAgaWYgKG1fY29kZUJsb2Nr
LT51c2VzQXJndW1lbnRzKCkgJiYgYXJndW1lbnRzID09IG1fY29kZUJsb2NrLT5hcmd1bWVudHNS
ZWdpc3RlcigpKSB7CisgICAgYm9vbCBjYW5PcHRpbWl6ZSA9IG1fY29kZUJsb2NrLT51c2VzQXJn
dW1lbnRzKCkKKyAgICAgICAgJiYgYXJndW1lbnRzID09IG1fY29kZUJsb2NrLT5hcmd1bWVudHNS
ZWdpc3RlcigpCisgICAgICAgICYmICFtX2NvZGVCbG9jay0+c3ltYm9sVGFibGUoKS0+c2xvd0Fy
Z3VtZW50cygpOworCisgICAgaWYgKGNhbk9wdGltaXplKSB7CiAgICAgICAgIGVtaXRMb2FkVGFn
KGFyZ3VtZW50cywgcmVnVDEpOwogICAgICAgICBzbG93Q2FzZS5hcHBlbmQoYnJhbmNoMzIoTm90
RXF1YWwsIHJlZ1QxLCBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6RW1wdHlWYWx1ZVRhZykpKTsKIApA
QCAtMTgwLDcgKzE4NCw3IEBAIHZvaWQgSklUOjpjb21waWxlTG9hZFZhcmFyZ3MoSW5zdHJ1Y3Rp
b24KICAgICAgICAgZW5kLmFwcGVuZChqdW1wKCkpOwogICAgIH0KIAotICAgIGlmIChtX2NvZGVC
bG9jay0+dXNlc0FyZ3VtZW50cygpICYmIGFyZ3VtZW50cyA9PSBtX2NvZGVCbG9jay0+YXJndW1l
bnRzUmVnaXN0ZXIoKSkKKyAgICBpZiAoY2FuT3B0aW1pemUpCiAgICAgICAgIHNsb3dDYXNlLmxp
bmsodGhpcyk7CiAKICAgICBKSVRTdHViQ2FsbCBzdHViQ2FsbCh0aGlzLCBjdGlfb3BfbG9hZF92
YXJhcmdzKTsKQEAgLTE4OSw3ICsxOTMsNyBAQCB2b2lkIEpJVDo6Y29tcGlsZUxvYWRWYXJhcmdz
KEluc3RydWN0aW9uCiAgICAgc3R1YkNhbGwuYWRkQXJndW1lbnQoSW1tMzIoZmlyc3RGcmVlUmVn
aXN0ZXIpKTsKICAgICBzdHViQ2FsbC5jYWxsKHJlZ1QzKTsKIAotICAgIGlmIChtX2NvZGVCbG9j
ay0+dXNlc0FyZ3VtZW50cygpICYmIGFyZ3VtZW50cyA9PSBtX2NvZGVCbG9jay0+YXJndW1lbnRz
UmVnaXN0ZXIoKSkKKyAgICBpZiAoY2FuT3B0aW1pemUpCiAgICAgICAgIGVuZC5saW5rKHRoaXMp
OwogfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENhbGwuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQ2FsbC5jcHAJKHJldmlzaW9u
IDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQ2FsbC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTY2LDcgKzY2LDExIEBAIHZvaWQgSklUOjpjb21waWxlTG9hZFZhcmFyZ3Mo
SW5zdHJ1Y3Rpb24KIAogICAgIEp1bXBMaXN0IHNsb3dDYXNlOwogICAgIEp1bXBMaXN0IGVuZDsK
LSAgICBpZiAobV9jb2RlQmxvY2stPnVzZXNBcmd1bWVudHMoKSAmJiBhcmd1bWVudHMgPT0gbV9j
b2RlQmxvY2stPmFyZ3VtZW50c1JlZ2lzdGVyKCkpIHsKKyAgICBib29sIGNhbk9wdGltaXplID0g
bV9jb2RlQmxvY2stPnVzZXNBcmd1bWVudHMoKQorICAgICAgICAmJiBhcmd1bWVudHMgPT0gbV9j
b2RlQmxvY2stPmFyZ3VtZW50c1JlZ2lzdGVyKCkKKyAgICAgICAgJiYgIW1fY29kZUJsb2NrLT5z
eW1ib2xUYWJsZSgpLT5zbG93QXJndW1lbnRzKCk7CisKKyAgICBpZiAoY2FuT3B0aW1pemUpIHsK
ICAgICAgICAgZW1pdEdldFZpcnR1YWxSZWdpc3Rlcihhcmd1bWVudHMsIHJlZ1QwKTsKICAgICAg
ICAgc2xvd0Nhc2UuYXBwZW5kKGJyYW5jaFB0cihOb3RFcXVhbCwgcmVnVDAsIFRydXN0ZWRJbW1Q
dHIoSlNWYWx1ZTo6ZW5jb2RlKEpTVmFsdWUoKSkpKSk7CiAKQEAgLTEwMyw3ICsxMDcsNyBAQCB2
b2lkIEpJVDo6Y29tcGlsZUxvYWRWYXJhcmdzKEluc3RydWN0aW9uCiAgICAgICAgIGVuZC5hcHBl
bmQoanVtcCgpKTsKICAgICB9CiAKLSAgICBpZiAobV9jb2RlQmxvY2stPnVzZXNBcmd1bWVudHMo
KSAmJiBhcmd1bWVudHMgPT0gbV9jb2RlQmxvY2stPmFyZ3VtZW50c1JlZ2lzdGVyKCkpCisgICAg
aWYgKGNhbk9wdGltaXplKQogICAgICAgICBzbG93Q2FzZS5saW5rKHRoaXMpOwogCiAgICAgSklU
U3R1YkNhbGwgc3R1YkNhbGwodGhpcywgY3RpX29wX2xvYWRfdmFyYXJncyk7CkBAIC0xMTIsNyAr
MTE2LDcgQEAgdm9pZCBKSVQ6OmNvbXBpbGVMb2FkVmFyYXJncyhJbnN0cnVjdGlvbgogICAgIHN0
dWJDYWxsLmFkZEFyZ3VtZW50KEltbTMyKGZpcnN0RnJlZVJlZ2lzdGVyKSk7CiAgICAgc3R1YkNh
bGwuY2FsbChyZWdUMSk7CiAKLSAgICBpZiAobV9jb2RlQmxvY2stPnVzZXNBcmd1bWVudHMoKSAm
JiBhcmd1bWVudHMgPT0gbV9jb2RlQmxvY2stPmFyZ3VtZW50c1JlZ2lzdGVyKCkpCisgICAgaWYg
KGNhbk9wdGltaXplKQogICAgICAgICBlbmQubGluayh0aGlzKTsKIH0KIApJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gMTI5MTM2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTItMDktMjAgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxl
LmNvbT4KKworICAgICAgICBSZWZhY3RvcmVkIHRoZSBpbnRlcnByZXRlciBhbmQgSklUIHNvIHRo
ZXkgZG9uJ3QgZGljdGF0ZSBjbG9zdXJlIGxheW91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTcyMjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvanMvZGZnLWFyZ3VtZW50cy1hbGlhcy1hY3Rp
dmF0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9qcy9kZmctYXJndW1l
bnRzLWFsaWFzLWFjdGl2YXRpb24uaHRtbDogQWRkZWQuCisKIDIwMTItMDktMjAgIENzYWJhIE9z
enRyb2dvbsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbUXRdIFVucmV2aWV3ZWQg
Z2FyZGVuaW5nLiBVbnNraXAgZmFzdC9leGNsdXNpb25zIHRlc3RzLCBiZWNhdXNlIHRoZXkgcGFz
cyBub3cuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL2RmZy1hcmd1bWVudHMtYWxpYXMtYWN0
aXZhdGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9qcy9k
ZmctYXJndW1lbnRzLWFsaWFzLWFjdGl2YXRpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9qcy9kZmctYXJndW1lbnRzLWFsaWFzLWFjdGl2YXRpb24tZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQwMyBAQAorVGhpcyB0ZXN0cyB2ZXJp
ZmllcyBhY2Nlc3MgdG8gY2FwdHVyZWQgYXJndW1lbnRzIHZpYSBhbiBvcHRpbWl6ZWQtYXdheSBh
cmd1bWVudHMgb2JqZWN0Lg0KKw0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYo
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGYoMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5k
IGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkg
c2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0K
K1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxk
IGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6
IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEg
YW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwg
MSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlz
Lg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hv
dWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BB
U1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJl
IDEgYW5kIGlzLg0KK1BBU1M6IGcoMCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KK1BBU1M6IGco
MCwgMSkgc2hvdWxkIGJlIDEgYW5kIGlzLg0KKw0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMv
ZGZnLWFyZ3VtZW50cy1hbGlhcy1hY3RpdmF0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9qcy9kZmctYXJndW1lbnRzLWFsaWFzLWFjdGl2YXRpb24uaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvanMvZGZnLWFyZ3VtZW50cy1hbGlhcy1hY3RpdmF0
aW9uLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzkgQEAKKzxwPlRoaXMgdGVzdHMgdmVy
aWZpZXMgYWNjZXNzIHRvIGNhcHR1cmVkIGFyZ3VtZW50cyB2aWEgYW4gb3B0aW1pemVkLWF3YXkg
YXJndW1lbnRzIG9iamVjdC4KKzwvcD4KKzxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgorCis8c2Ny
aXB0PgorZnVuY3Rpb24gbG9nKHMpCit7CisJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNv
bGUiKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzICsgIlxyXG4iKSk7Cit9
CisKK2Z1bmN0aW9uIHNob3VsZEJlKGEsIGFEZXNjcmlwdGlvbiwgYikKK3sKKwlpZiAoYSA9PSBi
KSB7CisJCWxvZygiUEFTUzogIiArIGFEZXNjcmlwdGlvbiArICIgc2hvdWxkIGJlICIgKyBiICsg
IiBhbmQgaXMuIik7CisJCXJldHVybjsKKwl9CisJbG9nKCJGQUlMOiAiICsgYURlc2NyaXB0aW9u
ICsgIiBzaG91bGQgYmUgIiArIGIgKyAiIGJ1dCBpbnN0ZWFkIGlzICIgKyBhICsgIi4iKTsKK30K
KworaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisJdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Cit9
CisKKy8vIEluLWJvdW5kcyBvZiBkZWNsYXJlZCBhbmQgcGFzc2VkIGFyZ3VtZW50cy4KK2Z1bmN0
aW9uIGYoeCkgeworICAgIHJldHVybiBhcmd1bWVudHNbMF0gfHwgZnVuY3Rpb24oKSB7IHJldHVy
biB4OyB9OworfQorCisvLyBPdXQtb2YtYm91bmRzIG9mIGRlY2xhcmVkIGFyZ3VtZW50cywgaW4t
Ym91bmRzIG9mIHBhc3NlZCBhcmd1bWVudHMuCitmdW5jdGlvbiBnKHgpIHsKKyAgICByZXR1cm4g
YXJndW1lbnRzWzFdIHx8IGZ1bmN0aW9uKCkgeyByZXR1cm4geDsgfTsKK30KKworZm9yICh2YXIg
aSA9IDA7IGkgPCAyMDA7ICsraSkKKyAgICBzaG91bGRCZShmKDEpLCAiZigxKSIsIDEpOworCitm
b3IgKHZhciBpID0gMDsgaSA8IDIwMDsgKytpKQorICAgIHNob3VsZEJlKGcoMCwgMSksICJnKDAs
IDEpIiwgMSk7Cis8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>164953</attachid>
            <date>2012-09-20 11:20:02 -0700</date>
            <delta_ts>2012-09-20 11:32:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97221-20120920111928.patch</filename>
            <type>text/plain</type>
            <size>39650</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTI5MTM2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYxIEBA
CisyMDEyLTA5LTIwICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CisKKyAgICAg
ICAgUmVmYWN0b3JlZCB0aGUgaW50ZXJwcmV0ZXIgYW5kIEpJVCBzbyB0aGV5IGRvbid0IGRpY3Rh
dGUgY2xvc3VyZSBsYXlvdXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTk3MjIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQ2FwdHVyZSBtYXkgY2hhbmdlIHRoZSBsb2NhdGlvbiBvZiBhbiBhcmd1bWVudCBm
b3Igc3BhY2UgZWZmaWNpZW5jeS4gVGhpcworICAgICAgICBwYXRjaCByZW1vdmVzIHN0YXRpYyBh
c3N1bXB0aW9ucyBhYm91dCBhcmd1bWVudCBsb2NhdGlvbiBmcm9tIHRoZSBpbnRlcnByZXRlcgor
ICAgICAgICBhbmQgSklULgorCisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmg6CisgICAg
ICAgIChKU0M6OkNvZGVCbG9jazo6YXJndW1lbnRJbmRleEFmdGVyQ2FwdHVyZSk6CisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6YXJndW1lbnRBZnRlckNhcHR1cmUpOiBGYWN0b3JlZCBvdXQgYSBo
ZWxwZXIgZnVuY3Rpb24KKyAgICAgICAgc28gdGhlIGNvbXBpbGVyIGNvdWxkIHNoYXJlIHRoaXMg
bG9naWMuCisKKyAgICAgICAgKiBieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2VuLmNwcDoKKyAgICAg
ICAgKEpTQzo6QnJhY2tldEFjY2Vzc29yTm9kZTo6ZW1pdEJ5dGVjb2RlKTogRG9uJ3QgZW1pdCBv
cHRpbWl6ZWQgYnJhY2tldAorICAgICAgICBhY2Nlc3Mgb24gYXJndW1lbnRzIGlmIGEgcGFyYW1l
dGVyIGhhcyBiZWVuIGNhcHR1cmVkIGJ5IG5hbWUuIFRoaXMgY2FzZSBpcworICAgICAgICByYXJl
IGFuZCwgd2hlcmUgSSd2ZSBzZWVuIGl0IGluIHRoZSB3aWxkLCB0aGUgb3B0aW1pemF0aW9uIG1v
c3RseSBmYWlsZWQKKyAgICAgICAgYW55d2F5IGR1ZSB0byBhcmd1bWVudHMgZXNjYXBlLCBzbyBJ
IGRpZG4ndCBmZWVsIGxpa2Ugd3JpdGluZyBhbmQgdGVzdGluZworICAgICAgICBmaXZlIGNvcGll
cyBvZiB0aGUgY29kZSB0aGF0IHdvdWxkIGhhbmRsZSBpdCBpbiB0aGUgYmFzZWxpbmUgZW5naW5l
cy4KKworICAgICAgICBUaGUgREZHIGNhbiBzdGlsbCBzeW50aGVzaXplIHRoaXMgb3B0aW1pemF0
aW9uIGV2ZW4gaWYgd2UgZG9uJ3QgZW1pdCB0aGUKKyAgICAgICAgb3B0aW1pemVkIGJ5dGVjb2Rl
IGZvciBpdC4KKworICAgICAgICAqIGRmZy9ERkdBcmd1bWVudHNTaW1wbGlmaWNhdGlvblBoYXNl
LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpBcmd1bWVudHNTaW1wbGlmaWNhdGlvblBoYXNlOjpy
dW4pOgorICAgICAgICAqIGRmZy9ERkdBc3NlbWJseUhlbHBlcnMuaDoKKyAgICAgICAgKEpTQzo6
REZHOjpBc3NlbWJseUhlbHBlcnM6OnN5bWJvbFRhYmxlRm9yKToKKyAgICAgICAgKEFzc2VtYmx5
SGVscGVycyk6IFVzZSB0aGUgcmlnaHQgaGVscGVyIGZ1bmN0aW9uIHRvIGFjY291bnQgZm9yIHRo
ZSBmYWN0CisgICAgICAgIHRoYXQgYSBwYXJhbWV0ZXIgbWF5IGhhdmUgYmVlbiBjYXB0dXJlZCBi
eSBuYW1lIGFuZCBtb3ZlZC4KKworICAgICAgICAqIGRmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHA6
CisgICAgICAgIChKU0M6OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2spOiBBU1NFUlQg
dGhhdCB3ZSBoYXZlbid0IGlubGluZWQKKyAgICAgICAgYSAuYXBwbHkgb24gY2FwdHVyZWQgYXJn
dW1lbnRzLiBPbmNlIHdlIGRvIHN0YXJ0IGlubGluaW5nIHN1Y2ggdGhpbmdzLAorICAgICAgICB3
ZSdsbCBuZWVkIHRvIGRvIGEgbGl0dGxlIGJpdCBvZiBtYXRoIGhlcmUgdG8gZ2V0IHRoZW0gcmln
aHQuCisKKyAgICAgICAgKiBkZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHA6CisgICAgICAg
IChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUpOgorICAgICAgICAqIGRmZy9ERkdT
cGVjdWxhdGl2ZUpJVDY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6
Y29tcGlsZSk6IEFkZGVkIHN1cHBvcnQgZm9yIGJyYWNrZXQgYWNjZXNzIG9uCisgICAgICAgIGFu
IGFyZ3VtZW50cyBvYmplY3Qgd2hlcmUgYXJndW1lbnRzIGhhdmUgYWxzbyBiZWVuIGNhcHR1cmVk
IGJ5IG5hbWUuIFdlCisgICAgICAgIGxvYWQgdGhlIHRydWUgaW5kZXggb2YgdGhlIGFyZ3VtZW50
IGZyb20gYSBzaWRlIHZlY3Rvci4gQXJndW1lbnRzIGVsaXNpb24KKyAgICAgICAgaXMgdmVyeSBw
b3dlcmZ1bCBpbiB0aGUgREZHLCBzbyBJIHdhbnRlZCB0byBrZWVwIGl0IHdvcmtpbmcsIGV2ZW4g
aW4gdGhpcworICAgICAgICByYXJlIGNhc2UuCisKKyAgICAgICAgKiBpbnRlcnByZXRlci9JbnRl
cnByZXRlci5jcHA6CisgICAgICAgIChKU0M6OmxvYWRWYXJhcmdzKTogVXNlIHRoZSByaWdodCBo
ZWxwZXIgZnVuY3Rpb24gdG8gYWNjb3VudCBmb3IgdGhlIGZhY3QKKyAgICAgICAgdGhhdCBhIHBh
cmFtZXRlciBtYXkgaGF2ZSBiZWVuIGNhcHR1cmVkIGJ5IG5hbWUgYW5kIG1vdmVkLgorCisgICAg
ICAgICogaml0L0pJVENhbGwuY3BwOgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVMb2FkVmFy
YXJncyk6CisgICAgICAgICogaml0L0pJVENhbGwzMl82NC5jcHA6CisgICAgICAgIChKU0M6OkpJ
VDo6Y29tcGlsZUxvYWRWYXJhcmdzKTogRG9uJ3QgdXNlIHRoZSBpbmxpbmUgY29weSBsb29wIGlm
IHNvbWUKKyAgICAgICAgb2Ygb3VyIGFyZ3VtZW50cyBoYXZlIG1vdmVkLCBzaW5jZSBpdCB3b3Vs
ZCBjb3B5IHN0YWxlIHZhbHVlcy4gKFdlIHN0aWxsCisgICAgICAgIG9wdGltaXplIHRoZSBhY3R1
YWwgY2FsbCwgYW5kIGVsaWRlIHRoZSBhcmd1bWVudHMgb2JqZWN0LikKKwogMjAxMi0wOS0yMCAg
R2Fib3IgUmFwY3NhbnlpICA8cmdhYm9yQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1F0XSByMTI5
MDQ1IGJyb2tlIHRoZSBBUk0gYnVpbGQKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9Db2RlQmxvY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvQ29kZUJsb2NrLmgJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suaAkod29ya2luZyBjb3B5KQpAQCAtNDMyLDYgKzQzMiw4
IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgICAgIHVuc2lnbmVkIGluc3RydWN0aW9uQ291bnQo
KSB7IHJldHVybiBtX2luc3RydWN0aW9ucy5zaXplKCk7IH0KIAorICAgICAgICBpbnQgYXJndW1l
bnRJbmRleEFmdGVyQ2FwdHVyZShzaXplX3QgYXJndW1lbnQpOworCiAjaWYgRU5BQkxFKEpJVCkK
ICAgICAgICAgdm9pZCBzZXRKSVRDb2RlKGNvbnN0IEpJVENvZGUmIGNvZGUsIE1hY3JvQXNzZW1i
bGVyQ29kZVB0ciBjb2RlV2l0aEFyaXR5Q2hlY2spCiAgICAgICAgIHsKQEAgLTE1MjAsNiArMTUy
MiwxOCBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgcmV0dXJuIGJhc2VsaW5lQ29kZUJsb2Nr
OwogICAgIH0KICAgICAKKyAgICBpbmxpbmUgaW50IENvZGVCbG9jazo6YXJndW1lbnRJbmRleEFm
dGVyQ2FwdHVyZShzaXplX3QgYXJndW1lbnQpCisgICAgeworICAgICAgICBpZiAoYXJndW1lbnQg
Pj0gc3RhdGljX2Nhc3Q8c2l6ZV90PihzeW1ib2xUYWJsZSgpLT5wYXJhbWV0ZXJDb3VudCgpKSkK
KyAgICAgICAgICAgIHJldHVybiBDYWxsRnJhbWU6OmFyZ3VtZW50T2Zmc2V0KGFyZ3VtZW50KTsK
KworICAgICAgICBjb25zdCBTbG93QXJndW1lbnQqIHNsb3dBcmd1bWVudHMgPSBzeW1ib2xUYWJs
ZSgpLT5zbG93QXJndW1lbnRzKCk7CisgICAgICAgIGlmICghc2xvd0FyZ3VtZW50cyB8fCBzbG93
QXJndW1lbnRzW2FyZ3VtZW50XS5zdGF0dXMgPT0gU2xvd0FyZ3VtZW50OjpOb3JtYWwpCisgICAg
ICAgICAgICByZXR1cm4gQ2FsbEZyYW1lOjphcmd1bWVudE9mZnNldChhcmd1bWVudCk7CisKKyAg
ICAgICAgQVNTRVJUKHNsb3dBcmd1bWVudHNbYXJndW1lbnRdLnN0YXR1cyA9PSBTbG93QXJndW1l
bnQ6OkNhcHR1cmVkKTsKKyAgICAgICAgcmV0dXJuIHNsb3dBcmd1bWVudHNbYXJndW1lbnRdLmlu
ZGV4SWZDYXB0dXJlZDsKKyAgICB9CiAKICAgICBpbmxpbmUgUmVnaXN0ZXImIEV4ZWNTdGF0ZTo6
cihpbnQgaW5kZXgpCiAgICAgewpAQCAtMTU1MiwxNSArMTU2Niw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogICAgICAgICBpZiAoIWNvZGVCbG9jaygpKQogICAgICAgICAgICAgcmV0dXJuIHRoaXNbYXJn
dW1lbnRPZmZzZXQoYXJndW1lbnQpXS5qc1ZhbHVlKCk7CiAKLSAgICAgICAgaWYgKGFyZ3VtZW50
ID49IHN0YXRpY19jYXN0PHNpemVfdD4oY29kZUJsb2NrKCktPnN5bWJvbFRhYmxlKCktPnBhcmFt
ZXRlckNvdW50KCkpKQotICAgICAgICAgICAgcmV0dXJuIHRoaXNbYXJndW1lbnRPZmZzZXQoYXJn
dW1lbnQpXS5qc1ZhbHVlKCk7Ci0KLSAgICAgICAgY29uc3QgU2xvd0FyZ3VtZW50KiBzbG93QXJn
dW1lbnRzID0gY29kZUJsb2NrKCktPnN5bWJvbFRhYmxlKCktPnNsb3dBcmd1bWVudHMoKTsKLSAg
ICAgICAgaWYgKCFzbG93QXJndW1lbnRzIHx8IHNsb3dBcmd1bWVudHNbYXJndW1lbnRdLnN0YXR1
cyA9PSBTbG93QXJndW1lbnQ6Ok5vcm1hbCkKLSAgICAgICAgICAgIHJldHVybiB0aGlzW2FyZ3Vt
ZW50T2Zmc2V0KGFyZ3VtZW50KV0uanNWYWx1ZSgpOwotCi0gICAgICAgIEFTU0VSVChzbG93QXJn
dW1lbnRzW2FyZ3VtZW50XS5zdGF0dXMgPT0gU2xvd0FyZ3VtZW50OjpDYXB0dXJlZCk7Ci0gICAg
ICAgIHJldHVybiB0aGlzW3Nsb3dBcmd1bWVudHNbYXJndW1lbnRdLmluZGV4SWZDYXB0dXJlZF0u
anNWYWx1ZSgpOworICAgICAgICByZXR1cm4gdGhpc1tjb2RlQmxvY2soKS0+YXJndW1lbnRJbmRl
eEFmdGVyQ2FwdHVyZShhcmd1bWVudCldLmpzVmFsdWUoKTsKICAgICB9CiAKICNpZiBFTkFCTEUo
REZHX0pJVCkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvTm9kZXND
b2RlZ2VuLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBp
bGVyL05vZGVzQ29kZWdlbi5jcHAJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2VuLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzIwLDcgKzMyMCw5IEBAIFJlZ2lzdGVySUQqIFByb3BlcnR5TGlzdE5vZGU6OmVtaXRCeXRlY28K
IAogUmVnaXN0ZXJJRCogQnJhY2tldEFjY2Vzc29yTm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVjb2Rl
R2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKIHsKLSAgICBpZiAobV9iYXNl
LT5pc1Jlc29sdmVOb2RlKCkgJiYgZ2VuZXJhdG9yLndpbGxSZXNvbHZlVG9Bcmd1bWVudHMoc3Rh
dGljX2Nhc3Q8UmVzb2x2ZU5vZGUqPihtX2Jhc2UpLT5pZGVudGlmaWVyKCkpKSB7CisgICAgaWYg
KG1fYmFzZS0+aXNSZXNvbHZlTm9kZSgpIAorICAgICAgICAmJiBnZW5lcmF0b3Iud2lsbFJlc29s
dmVUb0FyZ3VtZW50cyhzdGF0aWNfY2FzdDxSZXNvbHZlTm9kZSo+KG1fYmFzZSktPmlkZW50aWZp
ZXIoKSkKKyAgICAgICAgJiYgIWdlbmVyYXRvci5zeW1ib2xUYWJsZSgpLnNsb3dBcmd1bWVudHMo
KSkgewogICAgICAgICBSZWdpc3RlcklEKiBwcm9wZXJ0eSA9IGdlbmVyYXRvci5lbWl0Tm9kZSht
X3N1YnNjcmlwdCk7CiAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhwcmVzc2lvbkluZm8oZGl2b3Qo
KSwgc3RhcnRPZmZzZXQoKSwgZW5kT2Zmc2V0KCkpOyAgICAKICAgICAgICAgcmV0dXJuIGdlbmVy
YXRvci5lbWl0R2V0QXJndW1lbnRCeVZhbChnZW5lcmF0b3IuZmluYWxEZXN0aW5hdGlvbihkc3Qp
LCBnZW5lcmF0b3IudW5jaGVja2VkUmVnaXN0ZXJGb3JBcmd1bWVudHMoKSwgcHJvcGVydHkpOwpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcmd1bWVudHNTaW1wbGlmaWNhdGlv
blBoYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fy
Z3VtZW50c1NpbXBsaWZpY2F0aW9uUGhhc2UuY3BwCShyZXZpc2lvbiAxMjkwOTApCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0FyZ3VtZW50c1NpbXBsaWZpY2F0aW9uUGhhc2UuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC01ODQsOCArNTg0LDggQEAgcHVibGljOgogICAgICAgICAgICAg
ICAgICAgICBub2RlLmNvbnZlcnRUb0dldExvY2FsVW5saW5rZWQoCiAgICAgICAgICAgICAgICAg
ICAgICAgICBzdGF0aWNfY2FzdDxWaXJ0dWFsUmVnaXN0ZXI+KAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0ICsK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmd1bWVudFRvT3BlcmFuZChpbmRleCArIDEp
KSk7Ci0gICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1f
Z3JhcGguYmFzZWxpbmVDb2RlQmxvY2tGb3Iobm9kZS5jb2RlT3JpZ2luKS0+YXJndW1lbnRJbmRl
eEFmdGVyQ2FwdHVyZShpbmRleCkpKTsKKwogICAgICAgICAgICAgICAgICAgICBOb2RlSW5kZXgg
Y2hlY2tOb2RlSW5kZXggPSBtX2dyYXBoLnNpemUoKTsKICAgICAgICAgICAgICAgICAgICAgbV9n
cmFwaC5hcHBlbmQoY2hlY2spOwogICAgICAgICAgICAgICAgICAgICBpbnNlcnRpb25TZXQuYXBw
ZW5kKGluZGV4SW5CbG9jaywgY2hlY2tOb2RlSW5kZXgpOwpJbmRleDogU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdBc3NlbWJseUhlbHBlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR0Fzc2VtYmx5SGVscGVycy5oCShyZXZpc2lvbiAxMjkwOTApCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fzc2VtYmx5SGVscGVycy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0zNDMsNiArMzQzLDExIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFyZ3Vt
ZW50c1JlZ2lzdGVyRm9yKGNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lKTsKICAgICB9CiAgICAg
CisgICAgU2hhcmVkU3ltYm9sVGFibGUqIHN5bWJvbFRhYmxlRm9yKGNvbnN0IENvZGVPcmlnaW4m
IGNvZGVPcmlnaW4pCisgICAgeworICAgICAgICByZXR1cm4gYmFzZWxpbmVDb2RlQmxvY2tGb3Io
Y29kZU9yaWdpbiktPnN5bWJvbFRhYmxlKCk7CisgICAgfQorCiAgICAgVmVjdG9yPEJ5dGVjb2Rl
QW5kTWFjaGluZU9mZnNldD4mIGRlY29kZWRDb2RlTWFwRm9yKENvZGVCbG9jayopOwogICAgIAog
ICAgIHN0YXRpYyBjb25zdCBkb3VibGUgdHdvVG9UaGUzMjsKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCShyZXZpc2lvbiAxMjkwOTAp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjcxNCw2ICsyNzE0LDcgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFy
c2VCbG9jayh1bnNpZ25lZAogICAgICAgICBjYXNlIG9wX2NhbGxfdmFyYXJnczogewogICAgICAg
ICAgICAgQVNTRVJUKG1faW5saW5lU3RhY2tUb3AtPm1faW5saW5lQ2FsbEZyYW1lKTsKICAgICAg
ICAgICAgIEFTU0VSVChjdXJyZW50SW5zdHJ1Y3Rpb25bM10udS5vcGVyYW5kID09IG1faW5saW5l
U3RhY2tUb3AtPm1fY29kZUJsb2NrLT5hcmd1bWVudHNSZWdpc3RlcigpKTsKKyAgICAgICAgICAg
IEFTU0VSVCghbV9pbmxpbmVTdGFja1RvcC0+bV9jb2RlQmxvY2stPnN5bWJvbFRhYmxlKCktPnNs
b3dBcmd1bWVudHMoKSk7CiAgICAgICAgICAgICAvLyBJdCB3b3VsZCBiZSBjb29sIHRvIGZ1bm5l
bCB0aGlzIGludG8gaGFuZGxlQ2FsbCgpIHNvIHRoYXQgaXQgY2FuIGhhbmRsZQogICAgICAgICAg
ICAgLy8gaW5saW5pbmcuIEJ1dCBjdXJyZW50bHkgdGhhdCB3b24ndCBiZSBwcm9maXRhYmxlIGFu
eXdheSwgc2luY2Ugbm9uZSBvZiB0aGUKICAgICAgICAgICAgIC8vIHVzZXMgb2YgY2FsbF92YXJh
cmdzIHdpbGwgYmUgaW5saW5lYWJsZS4gU28gd2Ugc2V0IHRoaXMgdXAgbWFudWFsbHkgYW5kCklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUMzJfNjQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVK
SVQzMl82NC5jcHAJKHJldmlzaW9uIDEyOTA5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQyMDIsMTIg
KzQyMDIsNDEgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2RlKQogICAg
ICAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6cGF5bG9hZEZvcihSZWdpc3RlckZpbGU6OkFy
Z3VtZW50Q291bnQpKSk7CiAgICAgICAgIH0KICAgICAgICAgCisgICAgICAgIEpJVENvbXBpbGVy
OjpKdW1wTGlzdCBzbG93QXJndW1lbnQ7CisgICAgICAgIEpJVENvbXBpbGVyOjpKdW1wTGlzdCBz
bG93QXJndW1lbnRPdXRPZkJvdW5kczsKKyAgICAgICAgaWYgKGNvbnN0IFNsb3dBcmd1bWVudCog
c2xvd0FyZ3VtZW50cyA9IG1faml0LnN5bWJvbFRhYmxlRm9yKG5vZGUuY29kZU9yaWdpbiktPnNs
b3dBcmd1bWVudHMoKSkgeworICAgICAgICAgICAgc2xvd0FyZ3VtZW50T3V0T2ZCb3VuZHMuYXBw
ZW5kKAorICAgICAgICAgICAgICAgIG1faml0LmJyYW5jaDMyKAorICAgICAgICAgICAgICAgICAg
ICBKSVRDb21waWxlcjo6QWJvdmVPckVxdWFsLCBpbmRleEdQUiwKKyAgICAgICAgICAgICAgICAg
ICAgSW1tMzIobV9qaXQuc3ltYm9sVGFibGVGb3Iobm9kZS5jb2RlT3JpZ2luKS0+cGFyYW1ldGVy
Q291bnQoKSkpKTsKKworICAgICAgICAgICAgQ09NUElMRV9BU1NFUlQoc2l6ZW9mKFNsb3dBcmd1
bWVudCkgPT0gOCwgU2xvd0FyZ3VtZW50X3NpemVfaXNfZWlnaHRfYnl0ZXMpOworICAgICAgICAg
ICAgbV9qaXQubW92ZShJbW1QdHIoc2xvd0FyZ3VtZW50cyksIHJlc3VsdFBheWxvYWRHUFIpOwor
ICAgICAgICAgICAgbV9qaXQubG9hZDMyKAorICAgICAgICAgICAgICAgIEpJVENvbXBpbGVyOjpC
YXNlSW5kZXgoCisgICAgICAgICAgICAgICAgICAgIHJlc3VsdFBheWxvYWRHUFIsIGluZGV4R1BS
LCBKSVRDb21waWxlcjo6VGltZXNFaWdodCwgCisgICAgICAgICAgICAgICAgICAgIE9CSkVDVF9P
RkZTRVRPRihTbG93QXJndW1lbnQsIGluZGV4SWZDYXB0dXJlZCkpLCAKKyAgICAgICAgICAgICAg
ICByZXN1bHRQYXlsb2FkR1BSKTsKKyAgICAgICAgICAgIHNpemVfdCBiYXNlT2Zmc2V0ID0gbm9k
ZS5jb2RlT3JpZ2luLmlubGluZUNhbGxGcmFtZSA/IG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxs
RnJhbWUtPnN0YWNrT2Zmc2V0IDogMDsKKyAgICAgICAgICAgIGJhc2VPZmZzZXQgKj0gc2l6ZW9m
KFJlZ2lzdGVyKTsKKyAgICAgICAgICAgIG1faml0LmxvYWQzMigKKyAgICAgICAgICAgICAgICBK
SVRDb21waWxlcjo6QmFzZUluZGV4KAorICAgICAgICAgICAgICAgICAgICBHUFJJbmZvOjpjYWxs
RnJhbWVSZWdpc3RlciwgcmVzdWx0UGF5bG9hZEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQs
CisgICAgICAgICAgICAgICAgICAgIGJhc2VPZmZzZXQgKyBPQkpFQ1RfT0ZGU0VUT0YoRW5jb2Rl
ZFZhbHVlRGVzY3JpcHRvciwgYXNCaXRzLnRhZykpLAorICAgICAgICAgICAgICAgIHJlc3VsdFRh
Z0dQUik7CisgICAgICAgICAgICBtX2ppdC5sb2FkMzIoCisgICAgICAgICAgICAgICAgSklUQ29t
cGlsZXI6OkJhc2VJbmRleCgKKyAgICAgICAgICAgICAgICAgICAgR1BSSW5mbzo6Y2FsbEZyYW1l
UmVnaXN0ZXIsIHJlc3VsdFBheWxvYWRHUFIsIEpJVENvbXBpbGVyOjpUaW1lc0VpZ2h0LAorICAg
ICAgICAgICAgICAgICAgICBiYXNlT2Zmc2V0ICsgT0JKRUNUX09GRlNFVE9GKEVuY29kZWRWYWx1
ZURlc2NyaXB0b3IsIGFzQml0cy5wYXlsb2FkKSksCisgICAgICAgICAgICAgICAgcmVzdWx0UGF5
bG9hZEdQUik7CisgICAgICAgICAgICBzbG93QXJndW1lbnQuYXBwZW5kKG1faml0Lmp1bXAoKSk7
CisgICAgICAgIH0KKyAgICAgICAgc2xvd0FyZ3VtZW50T3V0T2ZCb3VuZHMubGluaygmbV9qaXQp
OworCiAgICAgICAgIG1faml0Lm5lZzMyKHJlc3VsdFBheWxvYWRHUFIpOwogICAgICAgICAKLSAg
ICAgICAgc2l6ZV90IGJhc2VPZmZzZXQgPQotICAgICAgICAgICAgKChub2RlLmNvZGVPcmlnaW4u
aW5saW5lQ2FsbEZyYW1lCi0gICAgICAgICAgICAgID8gbm9kZS5jb2RlT3JpZ2luLmlubGluZUNh
bGxGcmFtZS0+c3RhY2tPZmZzZXQKLSAgICAgICAgICAgICAgOiAwKSArIENhbGxGcmFtZTo6YXJn
dW1lbnRPZmZzZXRJbmNsdWRpbmdUaGlzKDApKSAqIHNpemVvZihSZWdpc3Rlcik7CisgICAgICAg
IHNpemVfdCBiYXNlT2Zmc2V0ID0gbm9kZS5jb2RlT3JpZ2luLmlubGluZUNhbGxGcmFtZSA/IG5v
ZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0IDogMDsKKyAgICAgICAg
YmFzZU9mZnNldCA9IChiYXNlT2Zmc2V0ICsgQ2FsbEZyYW1lOjphcmd1bWVudE9mZnNldEluY2x1
ZGluZ1RoaXMoMCkpICogc2l6ZW9mKFJlZ2lzdGVyKTsKICAgICAgICAgbV9qaXQubG9hZDMyKAog
ICAgICAgICAgICAgSklUQ29tcGlsZXI6OkJhc2VJbmRleCgKICAgICAgICAgICAgICAgICBHUFJJ
bmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgcmVzdWx0UGF5bG9hZEdQUiwgSklUQ29tcGlsZXI6OlRp
bWVzRWlnaHQsCkBAIC00MjE5LDYgKzQyNDgsNyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21w
aWxlKE5vZGUmIG5vZGUpCiAgICAgICAgICAgICAgICAgYmFzZU9mZnNldCArIE9CSkVDVF9PRkZT
RVRPRihFbmNvZGVkVmFsdWVEZXNjcmlwdG9yLCBhc0JpdHMucGF5bG9hZCkpLAogICAgICAgICAg
ICAgcmVzdWx0UGF5bG9hZEdQUik7CiAgICAgICAgICAgICAKKyAgICAgICAgc2xvd0FyZ3VtZW50
LmxpbmsoJm1faml0KTsKICAgICAgICAganNWYWx1ZVJlc3VsdChyZXN1bHRUYWdHUFIsIHJlc3Vs
dFBheWxvYWRHUFIsIG1fY29tcGlsZUluZGV4KTsKICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAt
NDI1MiwxMiArNDI4Miw0MSBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUmIG5v
ZGUpCiAgICAgICAgICAgICAgICAgICAgIEpJVENvbXBpbGVyOjpwYXlsb2FkRm9yKFJlZ2lzdGVy
RmlsZTo6QXJndW1lbnRDb3VudCkpKTsKICAgICAgICAgfQogICAgICAgICAKKyAgICAgICAgSklU
Q29tcGlsZXI6Okp1bXBMaXN0IHNsb3dBcmd1bWVudDsKKyAgICAgICAgSklUQ29tcGlsZXI6Okp1
bXBMaXN0IHNsb3dBcmd1bWVudE91dE9mQm91bmRzOworICAgICAgICBpZiAoY29uc3QgU2xvd0Fy
Z3VtZW50KiBzbG93QXJndW1lbnRzID0gbV9qaXQuc3ltYm9sVGFibGVGb3Iobm9kZS5jb2RlT3Jp
Z2luKS0+c2xvd0FyZ3VtZW50cygpKSB7CisgICAgICAgICAgICBzbG93QXJndW1lbnRPdXRPZkJv
dW5kcy5hcHBlbmQoCisgICAgICAgICAgICAgICAgbV9qaXQuYnJhbmNoMzIoCisgICAgICAgICAg
ICAgICAgICAgIEpJVENvbXBpbGVyOjpBYm92ZU9yRXF1YWwsIGluZGV4R1BSLAorICAgICAgICAg
ICAgICAgICAgICBJbW0zMihtX2ppdC5zeW1ib2xUYWJsZUZvcihub2RlLmNvZGVPcmlnaW4pLT5w
YXJhbWV0ZXJDb3VudCgpKSkpOworCisgICAgICAgICAgICBDT01QSUxFX0FTU0VSVChzaXplb2Yo
U2xvd0FyZ3VtZW50KSA9PSA4LCBTbG93QXJndW1lbnRfc2l6ZV9pc19laWdodF9ieXRlcyk7Cisg
ICAgICAgICAgICBtX2ppdC5tb3ZlKEltbVB0cihzbG93QXJndW1lbnRzKSwgcmVzdWx0UGF5bG9h
ZEdQUik7CisgICAgICAgICAgICBtX2ppdC5sb2FkMzIoCisgICAgICAgICAgICAgICAgSklUQ29t
cGlsZXI6OkJhc2VJbmRleCgKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0UGF5bG9hZEdQUiwg
aW5kZXhHUFIsIEpJVENvbXBpbGVyOjpUaW1lc0VpZ2h0LCAKKyAgICAgICAgICAgICAgICAgICAg
T0JKRUNUX09GRlNFVE9GKFNsb3dBcmd1bWVudCwgaW5kZXhJZkNhcHR1cmVkKSksIAorICAgICAg
ICAgICAgICAgIHJlc3VsdFBheWxvYWRHUFIpOworICAgICAgICAgICAgc2l6ZV90IGJhc2VPZmZz
ZXQgPSBub2RlLmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lID8gbm9kZS5jb2RlT3JpZ2luLmlu
bGluZUNhbGxGcmFtZS0+c3RhY2tPZmZzZXQgOiAwOworICAgICAgICAgICAgYmFzZU9mZnNldCAq
PSBzaXplb2YoUmVnaXN0ZXIpOworICAgICAgICAgICAgbV9qaXQubG9hZDMyKAorICAgICAgICAg
ICAgICAgIEpJVENvbXBpbGVyOjpCYXNlSW5kZXgoCisgICAgICAgICAgICAgICAgICAgIEdQUklu
Zm86OmNhbGxGcmFtZVJlZ2lzdGVyLCByZXN1bHRQYXlsb2FkR1BSLCBKSVRDb21waWxlcjo6VGlt
ZXNFaWdodCwKKyAgICAgICAgICAgICAgICAgICAgYmFzZU9mZnNldCArIE9CSkVDVF9PRkZTRVRP
RihFbmNvZGVkVmFsdWVEZXNjcmlwdG9yLCBhc0JpdHMudGFnKSksCisgICAgICAgICAgICAgICAg
cmVzdWx0VGFnR1BSKTsKKyAgICAgICAgICAgIG1faml0LmxvYWQzMigKKyAgICAgICAgICAgICAg
ICBKSVRDb21waWxlcjo6QmFzZUluZGV4KAorICAgICAgICAgICAgICAgICAgICBHUFJJbmZvOjpj
YWxsRnJhbWVSZWdpc3RlciwgcmVzdWx0UGF5bG9hZEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWln
aHQsCisgICAgICAgICAgICAgICAgICAgIGJhc2VPZmZzZXQgKyBPQkpFQ1RfT0ZGU0VUT0YoRW5j
b2RlZFZhbHVlRGVzY3JpcHRvciwgYXNCaXRzLnBheWxvYWQpKSwKKyAgICAgICAgICAgICAgICBy
ZXN1bHRQYXlsb2FkR1BSKTsKKyAgICAgICAgICAgIHNsb3dBcmd1bWVudC5hcHBlbmQobV9qaXQu
anVtcCgpKTsKKyAgICAgICAgfQorICAgICAgICBzbG93QXJndW1lbnRPdXRPZkJvdW5kcy5saW5r
KCZtX2ppdCk7CisKICAgICAgICAgbV9qaXQubmVnMzIocmVzdWx0UGF5bG9hZEdQUik7CiAgICAg
ICAgIAotICAgICAgICBzaXplX3QgYmFzZU9mZnNldCA9Ci0gICAgICAgICAgICAoKG5vZGUuY29k
ZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUKLSAgICAgICAgICAgICAgPyBub2RlLmNvZGVPcmlnaW4u
aW5saW5lQ2FsbEZyYW1lLT5zdGFja09mZnNldAotICAgICAgICAgICAgICA6IDApICsgQ2FsbEZy
YW1lOjphcmd1bWVudE9mZnNldEluY2x1ZGluZ1RoaXMoMCkpICogc2l6ZW9mKFJlZ2lzdGVyKTsK
KyAgICAgICAgc2l6ZV90IGJhc2VPZmZzZXQgPSBub2RlLmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZy
YW1lID8gbm9kZS5jb2RlT3JpZ2luLmlubGluZUNhbGxGcmFtZS0+c3RhY2tPZmZzZXQgOiAwOwor
ICAgICAgICBiYXNlT2Zmc2V0ID0gKGJhc2VPZmZzZXQgKyBDYWxsRnJhbWU6OmFyZ3VtZW50T2Zm
c2V0SW5jbHVkaW5nVGhpcygwKSkgKiBzaXplb2YoUmVnaXN0ZXIpOwogICAgICAgICBtX2ppdC5s
b2FkMzIoCiAgICAgICAgICAgICBKSVRDb21waWxlcjo6QmFzZUluZGV4KAogICAgICAgICAgICAg
ICAgIEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyLCByZXN1bHRQYXlsb2FkR1BSLCBKSVRDb21w
aWxlcjo6VGltZXNFaWdodCwKQEAgLTQyODQsNiArNDM0Myw3IEBAIHZvaWQgU3BlY3VsYXRpdmVK
SVQ6OmNvbXBpbGUoTm9kZSYgbm9kZSkKICAgICAgICAgICAgICAgICAgICAgbV9qaXQuYXJndW1l
bnRzUmVnaXN0ZXJGb3Iobm9kZS5jb2RlT3JpZ2luKSwgaW5kZXhHUFIpKTsKICAgICAgICAgfQog
ICAgICAgICAKKyAgICAgICAgc2xvd0FyZ3VtZW50LmxpbmsoJm1faml0KTsKICAgICAgICAganNW
YWx1ZVJlc3VsdChyZXN1bHRUYWdHUFIsIHJlc3VsdFBheWxvYWRHUFIsIG1fY29tcGlsZUluZGV4
KTsKICAgICAgICAgYnJlYWs7CiAgICAgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCShyZXZpc2lvbiAxMjkwOTApCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC00MTIyLDcgKzQxMjIsNyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxl
KE5vZGUmIG5vZGUpCiAgICAgICAgIEdQUlRlbXBvcmFyeSByZXN1bHQodGhpcyk7CiAgICAgICAg
IEdQUlJlZyBpbmRleEdQUiA9IGluZGV4LmdwcigpOwogICAgICAgICBHUFJSZWcgcmVzdWx0R1BS
ID0gcmVzdWx0LmdwcigpOwotICAgICAgICAKKwogICAgICAgICBpZiAoIWlzRW1wdHlTcGVjdWxh
dGlvbigKICAgICAgICAgICAgICAgICBtX3N0YXRlLnZhcmlhYmxlcygpLm9wZXJhbmQoCiAgICAg
ICAgICAgICAgICAgICAgIG1faml0LmdyYXBoKCkuYXJndW1lbnRzUmVnaXN0ZXJGb3Iobm9kZS5j
b2RlT3JpZ2luKSkubV90eXBlKSkgewpAQCAtNDE1MCwxOCArNDE1MCw0NCBAQCB2b2lkIFNwZWN1
bGF0aXZlSklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAgICAgICAgICAgICAgICAgIHJlc3Vs
dEdQUiwKICAgICAgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6OnBheWxvYWRGb3IoUmVnaXN0
ZXJGaWxlOjpBcmd1bWVudENvdW50KSkpOwogICAgICAgICB9Ci0gICAgICAgICAgICAKKworICAg
ICAgICBKSVRDb21waWxlcjo6SnVtcExpc3Qgc2xvd0FyZ3VtZW50OworICAgICAgICBKSVRDb21w
aWxlcjo6SnVtcExpc3Qgc2xvd0FyZ3VtZW50T3V0T2ZCb3VuZHM7CisgICAgICAgIGlmIChjb25z
dCBTbG93QXJndW1lbnQqIHNsb3dBcmd1bWVudHMgPSBtX2ppdC5zeW1ib2xUYWJsZUZvcihub2Rl
LmNvZGVPcmlnaW4pLT5zbG93QXJndW1lbnRzKCkpIHsKKyAgICAgICAgICAgIHNsb3dBcmd1bWVu
dE91dE9mQm91bmRzLmFwcGVuZCgKKyAgICAgICAgICAgICAgICBtX2ppdC5icmFuY2gzMigKKyAg
ICAgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6OkFib3ZlT3JFcXVhbCwgaW5kZXhHUFIsCisg
ICAgICAgICAgICAgICAgICAgIEltbTMyKG1faml0LnN5bWJvbFRhYmxlRm9yKG5vZGUuY29kZU9y
aWdpbiktPnBhcmFtZXRlckNvdW50KCkpKSk7CisKKyAgICAgICAgICAgIENPTVBJTEVfQVNTRVJU
KHNpemVvZihTbG93QXJndW1lbnQpID09IDgsIFNsb3dBcmd1bWVudF9zaXplX2lzX2VpZ2h0X2J5
dGVzKTsKKyAgICAgICAgICAgIG1faml0Lm1vdmUoSW1tUHRyKHNsb3dBcmd1bWVudHMpLCByZXN1
bHRHUFIpOworICAgICAgICAgICAgbV9qaXQubG9hZDMyKAorICAgICAgICAgICAgICAgIEpJVENv
bXBpbGVyOjpCYXNlSW5kZXgoCisgICAgICAgICAgICAgICAgICAgIHJlc3VsdEdQUiwgaW5kZXhH
UFIsIEpJVENvbXBpbGVyOjpUaW1lc0VpZ2h0LCAKKyAgICAgICAgICAgICAgICAgICAgT0JKRUNU
X09GRlNFVE9GKFNsb3dBcmd1bWVudCwgaW5kZXhJZkNhcHR1cmVkKSksIAorICAgICAgICAgICAg
ICAgIHJlc3VsdEdQUik7CisgICAgICAgICAgICBtX2ppdC5zaWduRXh0ZW5kMzJUb1B0cihyZXN1
bHRHUFIsIHJlc3VsdEdQUik7CisgICAgICAgICAgICBzaXplX3QgYmFzZU9mZnNldCA9IG5vZGUu
Y29kZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUgPyBub2RlLmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZy
YW1lLT5zdGFja09mZnNldCA6IDA7CisgICAgICAgICAgICBiYXNlT2Zmc2V0ICo9IHNpemVvZihS
ZWdpc3Rlcik7CisgICAgICAgICAgICBtX2ppdC5sb2FkUHRyKAorICAgICAgICAgICAgICAgIEpJ
VENvbXBpbGVyOjpCYXNlSW5kZXgoCisgICAgICAgICAgICAgICAgICAgIEdQUkluZm86OmNhbGxG
cmFtZVJlZ2lzdGVyLCByZXN1bHRHUFIsIEpJVENvbXBpbGVyOjpUaW1lc0VpZ2h0LCBiYXNlT2Zm
c2V0KSwKKyAgICAgICAgICAgICAgICByZXN1bHRHUFIpOworICAgICAgICAgICAgc2xvd0FyZ3Vt
ZW50LmFwcGVuZChtX2ppdC5qdW1wKCkpOworICAgICAgICB9CisgICAgICAgIHNsb3dBcmd1bWVu
dE91dE9mQm91bmRzLmxpbmsoJm1faml0KTsKKwogICAgICAgICBtX2ppdC5uZWczMihyZXN1bHRH
UFIpOwogICAgICAgICBtX2ppdC5zaWduRXh0ZW5kMzJUb1B0cihyZXN1bHRHUFIsIHJlc3VsdEdQ
Uik7CiAgICAgICAgICAgICAKKyAgICAgICAgc2l6ZV90IGJhc2VPZmZzZXQgPSBub2RlLmNvZGVP
cmlnaW4uaW5saW5lQ2FsbEZyYW1lID8gbm9kZS5jb2RlT3JpZ2luLmlubGluZUNhbGxGcmFtZS0+
c3RhY2tPZmZzZXQgOiAwOworICAgICAgICBiYXNlT2Zmc2V0ID0gKGJhc2VPZmZzZXQgKyBDYWxs
RnJhbWU6OmFyZ3VtZW50T2Zmc2V0SW5jbHVkaW5nVGhpcygwKSkgKiBzaXplb2YoUmVnaXN0ZXIp
OwogICAgICAgICBtX2ppdC5sb2FkUHRyKAogICAgICAgICAgICAgSklUQ29tcGlsZXI6OkJhc2VJ
bmRleCgKLSAgICAgICAgICAgICAgICBHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgcmVzdWx0
R1BSLCBKSVRDb21waWxlcjo6VGltZXNFaWdodCwKLSAgICAgICAgICAgICAgICAoKG5vZGUuY29k
ZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUKLSAgICAgICAgICAgICAgICAgID8gbm9kZS5jb2RlT3Jp
Z2luLmlubGluZUNhbGxGcmFtZS0+c3RhY2tPZmZzZXQKLSAgICAgICAgICAgICAgICAgIDogMCkg
KyBDYWxsRnJhbWU6OmFyZ3VtZW50T2Zmc2V0SW5jbHVkaW5nVGhpcygwKSkgKiBzaXplb2YoUmVn
aXN0ZXIpKSwKKyAgICAgICAgICAgICAgICBHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgcmVz
dWx0R1BSLCBKSVRDb21waWxlcjo6VGltZXNFaWdodCwgYmFzZU9mZnNldCksCiAgICAgICAgICAg
ICByZXN1bHRHUFIpOwogCisgICAgICAgIHNsb3dBcmd1bWVudC5saW5rKCZtX2ppdCk7CiAgICAg
ICAgIGpzVmFsdWVSZXN1bHQocmVzdWx0R1BSLCBtX2NvbXBpbGVJbmRleCk7CiAgICAgICAgIGJy
ZWFrOwogICAgIH0KQEAgLTQxOTQsMTUgKzQyMjAsNDAgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6
Y29tcGlsZShOb2RlJiBub2RlKQogICAgICAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6cGF5
bG9hZEZvcihSZWdpc3RlckZpbGU6OkFyZ3VtZW50Q291bnQpKSk7CiAgICAgICAgIH0KICAgICAg
ICAgCisgICAgICAgIEpJVENvbXBpbGVyOjpKdW1wTGlzdCBzbG93QXJndW1lbnQ7CisgICAgICAg
IEpJVENvbXBpbGVyOjpKdW1wTGlzdCBzbG93QXJndW1lbnRPdXRPZkJvdW5kczsKKyAgICAgICAg
aWYgKGNvbnN0IFNsb3dBcmd1bWVudCogc2xvd0FyZ3VtZW50cyA9IG1faml0LnN5bWJvbFRhYmxl
Rm9yKG5vZGUuY29kZU9yaWdpbiktPnNsb3dBcmd1bWVudHMoKSkgeworICAgICAgICAgICAgc2xv
d0FyZ3VtZW50T3V0T2ZCb3VuZHMuYXBwZW5kKAorICAgICAgICAgICAgICAgIG1faml0LmJyYW5j
aDMyKAorICAgICAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6QWJvdmVPckVxdWFsLCBpbmRl
eEdQUiwKKyAgICAgICAgICAgICAgICAgICAgSW1tMzIobV9qaXQuc3ltYm9sVGFibGVGb3Iobm9k
ZS5jb2RlT3JpZ2luKS0+cGFyYW1ldGVyQ291bnQoKSkpKTsKKworICAgICAgICAgICAgQ09NUElM
RV9BU1NFUlQoc2l6ZW9mKFNsb3dBcmd1bWVudCkgPT0gOCwgU2xvd0FyZ3VtZW50X3NpemVfaXNf
ZWlnaHRfYnl0ZXMpOworICAgICAgICAgICAgbV9qaXQubW92ZShJbW1QdHIoc2xvd0FyZ3VtZW50
cyksIHJlc3VsdEdQUik7CisgICAgICAgICAgICBtX2ppdC5sb2FkMzIoCisgICAgICAgICAgICAg
ICAgSklUQ29tcGlsZXI6OkJhc2VJbmRleCgKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0R1BS
LCBpbmRleEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQsIAorICAgICAgICAgICAgICAgICAg
ICBPQkpFQ1RfT0ZGU0VUT0YoU2xvd0FyZ3VtZW50LCBpbmRleElmQ2FwdHVyZWQpKSwgCisgICAg
ICAgICAgICAgICAgcmVzdWx0R1BSKTsKKyAgICAgICAgICAgIG1faml0LnNpZ25FeHRlbmQzMlRv
UHRyKHJlc3VsdEdQUiwgcmVzdWx0R1BSKTsKKyAgICAgICAgICAgIHNpemVfdCBiYXNlT2Zmc2V0
ID0gbm9kZS5jb2RlT3JpZ2luLmlubGluZUNhbGxGcmFtZSA/IG5vZGUuY29kZU9yaWdpbi5pbmxp
bmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0IDogMDsKKyAgICAgICAgICAgIGJhc2VPZmZzZXQgKj0g
c2l6ZW9mKFJlZ2lzdGVyKTsKKyAgICAgICAgICAgIG1faml0LmxvYWRQdHIoCisgICAgICAgICAg
ICAgICAgSklUQ29tcGlsZXI6OkJhc2VJbmRleCgKKyAgICAgICAgICAgICAgICAgICAgR1BSSW5m
bzo6Y2FsbEZyYW1lUmVnaXN0ZXIsIHJlc3VsdEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQs
IGJhc2VPZmZzZXQpLAorICAgICAgICAgICAgICAgIHJlc3VsdEdQUik7CisgICAgICAgICAgICBz
bG93QXJndW1lbnQuYXBwZW5kKG1faml0Lmp1bXAoKSk7CisgICAgICAgIH0KKyAgICAgICAgc2xv
d0FyZ3VtZW50T3V0T2ZCb3VuZHMubGluaygmbV9qaXQpOworCiAgICAgICAgIG1faml0Lm5lZzMy
KHJlc3VsdEdQUik7CiAgICAgICAgIG1faml0LnNpZ25FeHRlbmQzMlRvUHRyKHJlc3VsdEdQUiwg
cmVzdWx0R1BSKTsKICAgICAgICAgCisgICAgICAgIHNpemVfdCBiYXNlT2Zmc2V0ID0gbm9kZS5j
b2RlT3JpZ2luLmlubGluZUNhbGxGcmFtZSA/IG5vZGUuY29kZU9yaWdpbi5pbmxpbmVDYWxsRnJh
bWUtPnN0YWNrT2Zmc2V0IDogMDsKKyAgICAgICAgYmFzZU9mZnNldCA9IChiYXNlT2Zmc2V0ICsg
Q2FsbEZyYW1lOjphcmd1bWVudE9mZnNldEluY2x1ZGluZ1RoaXMoMCkpICogc2l6ZW9mKFJlZ2lz
dGVyKTsKICAgICAgICAgbV9qaXQubG9hZFB0cigKICAgICAgICAgICAgIEpJVENvbXBpbGVyOjpC
YXNlSW5kZXgoCi0gICAgICAgICAgICAgICAgR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIsIHJl
c3VsdEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQsCi0gICAgICAgICAgICAgICAgKChub2Rl
LmNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lCi0gICAgICAgICAgICAgICAgICA/IG5vZGUuY29k
ZU9yaWdpbi5pbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0Ci0gICAgICAgICAgICAgICAgICA6
IDApICsgQ2FsbEZyYW1lOjphcmd1bWVudE9mZnNldEluY2x1ZGluZ1RoaXMoMCkpICogc2l6ZW9m
KFJlZ2lzdGVyKSksCisgICAgICAgICAgICAgICAgR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIs
IHJlc3VsdEdQUiwgSklUQ29tcGlsZXI6OlRpbWVzRWlnaHQsIGJhc2VPZmZzZXQpLAogICAgICAg
ICAgICAgcmVzdWx0R1BSKTsKICAgICAgICAgCiAgICAgICAgIGlmIChub2RlLmNvZGVPcmlnaW4u
aW5saW5lQ2FsbEZyYW1lKSB7CkBAIC00MjIwLDYgKzQyNzEsNyBAQCB2b2lkIFNwZWN1bGF0aXZl
SklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAgICAgICAgICAgICAgICAgIGluZGV4R1BSKSk7
CiAgICAgICAgIH0KICAgICAgICAgCisgICAgICAgIHNsb3dBcmd1bWVudC5saW5rKCZtX2ppdCk7
CiAgICAgICAgIGpzVmFsdWVSZXN1bHQocmVzdWx0R1BSLCBtX2NvbXBpbGVJbmRleCk7CiAgICAg
ICAgIGJyZWFrOwogICAgIH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRl
ci9JbnRlcnByZXRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
dGVycHJldGVyL0ludGVycHJldGVyLmNwcAkocmV2aXNpb24gMTI5MDkwKQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjAyLDcgKzIwMiw3IEBAIENhbGxGcmFtZSogbG9hZFZhcmFyZ3MoQ2FsbEZyYW1lKiBjYWxs
RnIKICAgICAgICAgbmV3Q2FsbEZyYW1lLT5zZXRBcmd1bWVudENvdW50SW5jbHVkaW5nVGhpcyhh
cmd1bWVudENvdW50SW5jbHVkaW5nVGhpcyk7CiAgICAgICAgIG5ld0NhbGxGcmFtZS0+c2V0VGhp
c1ZhbHVlKHRoaXNWYWx1ZSk7CiAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgY2FsbEZy
YW1lLT5hcmd1bWVudENvdW50KCk7ICsraSkKLSAgICAgICAgICAgIG5ld0NhbGxGcmFtZS0+c2V0
QXJndW1lbnQoaSwgY2FsbEZyYW1lLT5hcmd1bWVudChpKSk7CisgICAgICAgICAgICBuZXdDYWxs
RnJhbWUtPnNldEFyZ3VtZW50KGksIGNhbGxGcmFtZS0+YXJndW1lbnRBZnRlckNhcHR1cmUoaSkp
OwogICAgICAgICByZXR1cm4gbmV3Q2FsbEZyYW1lOwogICAgIH0KIApJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRDYWxsMzJfNjQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklUQ2FsbDMyXzY0LmNwcAkocmV2aXNpb24gMTI5MDkwKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDYWxsMzJfNjQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xNDEsNyArMTQxLDExIEBAIHZvaWQgSklUOjpjb21waWxlTG9hZFZhcmFyZ3MoSW5zdHJ1
Y3Rpb24KIAogICAgIEp1bXBMaXN0IHNsb3dDYXNlOwogICAgIEp1bXBMaXN0IGVuZDsKLSAgICBp
ZiAobV9jb2RlQmxvY2stPnVzZXNBcmd1bWVudHMoKSAmJiBhcmd1bWVudHMgPT0gbV9jb2RlQmxv
Y2stPmFyZ3VtZW50c1JlZ2lzdGVyKCkpIHsKKyAgICBib29sIGNhbk9wdGltaXplID0gbV9jb2Rl
QmxvY2stPnVzZXNBcmd1bWVudHMoKQorICAgICAgICAmJiBhcmd1bWVudHMgPT0gbV9jb2RlQmxv
Y2stPmFyZ3VtZW50c1JlZ2lzdGVyKCkKKyAgICAgICAgJiYgIW1fY29kZUJsb2NrLT5zeW1ib2xU
YWJsZSgpLT5zbG93QXJndW1lbnRzKCk7CisKKyAgICBpZiAoY2FuT3B0aW1pemUpIHsKICAgICAg
ICAgZW1pdExvYWRUYWcoYXJndW1lbnRzLCByZWdUMSk7CiAgICAgICAgIHNsb3dDYXNlLmFwcGVu
ZChicmFuY2gzMihOb3RFcXVhbCwgcmVnVDEsIFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpFbXB0eVZh
bHVlVGFnKSkpOwogCkBAIC0xODAsNyArMTg0LDcgQEAgdm9pZCBKSVQ6OmNvbXBpbGVMb2FkVmFy
YXJncyhJbnN0cnVjdGlvbgogICAgICAgICBlbmQuYXBwZW5kKGp1bXAoKSk7CiAgICAgfQogCi0g
ICAgaWYgKG1fY29kZUJsb2NrLT51c2VzQXJndW1lbnRzKCkgJiYgYXJndW1lbnRzID09IG1fY29k
ZUJsb2NrLT5hcmd1bWVudHNSZWdpc3RlcigpKQorICAgIGlmIChjYW5PcHRpbWl6ZSkKICAgICAg
ICAgc2xvd0Nhc2UubGluayh0aGlzKTsKIAogICAgIEpJVFN0dWJDYWxsIHN0dWJDYWxsKHRoaXMs
IGN0aV9vcF9sb2FkX3ZhcmFyZ3MpOwpAQCAtMTg5LDcgKzE5Myw3IEBAIHZvaWQgSklUOjpjb21w
aWxlTG9hZFZhcmFyZ3MoSW5zdHJ1Y3Rpb24KICAgICBzdHViQ2FsbC5hZGRBcmd1bWVudChJbW0z
MihmaXJzdEZyZWVSZWdpc3RlcikpOwogICAgIHN0dWJDYWxsLmNhbGwocmVnVDMpOwogCi0gICAg
aWYgKG1fY29kZUJsb2NrLT51c2VzQXJndW1lbnRzKCkgJiYgYXJndW1lbnRzID09IG1fY29kZUJs
b2NrLT5hcmd1bWVudHNSZWdpc3RlcigpKQorICAgIGlmIChjYW5PcHRpbWl6ZSkKICAgICAgICAg
ZW5kLmxpbmsodGhpcyk7CiB9CiAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
Q2FsbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDYWxs
LmNwcAkocmV2aXNpb24gMTI5MDkwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRD
YWxsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjYsNyArNjYsMTEgQEAgdm9pZCBKSVQ6OmNvbXBp
bGVMb2FkVmFyYXJncyhJbnN0cnVjdGlvbgogCiAgICAgSnVtcExpc3Qgc2xvd0Nhc2U7CiAgICAg
SnVtcExpc3QgZW5kOwotICAgIGlmIChtX2NvZGVCbG9jay0+dXNlc0FyZ3VtZW50cygpICYmIGFy
Z3VtZW50cyA9PSBtX2NvZGVCbG9jay0+YXJndW1lbnRzUmVnaXN0ZXIoKSkgeworICAgIGJvb2wg
Y2FuT3B0aW1pemUgPSBtX2NvZGVCbG9jay0+dXNlc0FyZ3VtZW50cygpCisgICAgICAgICYmIGFy
Z3VtZW50cyA9PSBtX2NvZGVCbG9jay0+YXJndW1lbnRzUmVnaXN0ZXIoKQorICAgICAgICAmJiAh
bV9jb2RlQmxvY2stPnN5bWJvbFRhYmxlKCktPnNsb3dBcmd1bWVudHMoKTsKKworICAgIGlmIChj
YW5PcHRpbWl6ZSkgewogICAgICAgICBlbWl0R2V0VmlydHVhbFJlZ2lzdGVyKGFyZ3VtZW50cywg
cmVnVDApOwogICAgICAgICBzbG93Q2FzZS5hcHBlbmQoYnJhbmNoUHRyKE5vdEVxdWFsLCByZWdU
MCwgVHJ1c3RlZEltbVB0cihKU1ZhbHVlOjplbmNvZGUoSlNWYWx1ZSgpKSkpKTsKIApAQCAtMTAz
LDcgKzEwNyw3IEBAIHZvaWQgSklUOjpjb21waWxlTG9hZFZhcmFyZ3MoSW5zdHJ1Y3Rpb24KICAg
ICAgICAgZW5kLmFwcGVuZChqdW1wKCkpOwogICAgIH0KIAotICAgIGlmIChtX2NvZGVCbG9jay0+
dXNlc0FyZ3VtZW50cygpICYmIGFyZ3VtZW50cyA9PSBtX2NvZGVCbG9jay0+YXJndW1lbnRzUmVn
aXN0ZXIoKSkKKyAgICBpZiAoY2FuT3B0aW1pemUpCiAgICAgICAgIHNsb3dDYXNlLmxpbmsodGhp
cyk7CiAKICAgICBKSVRTdHViQ2FsbCBzdHViQ2FsbCh0aGlzLCBjdGlfb3BfbG9hZF92YXJhcmdz
KTsKQEAgLTExMiw3ICsxMTYsNyBAQCB2b2lkIEpJVDo6Y29tcGlsZUxvYWRWYXJhcmdzKEluc3Ry
dWN0aW9uCiAgICAgc3R1YkNhbGwuYWRkQXJndW1lbnQoSW1tMzIoZmlyc3RGcmVlUmVnaXN0ZXIp
KTsKICAgICBzdHViQ2FsbC5jYWxsKHJlZ1QxKTsKIAotICAgIGlmIChtX2NvZGVCbG9jay0+dXNl
c0FyZ3VtZW50cygpICYmIGFyZ3VtZW50cyA9PSBtX2NvZGVCbG9jay0+YXJndW1lbnRzUmVnaXN0
ZXIoKSkKKyAgICBpZiAoY2FuT3B0aW1pemUpCiAgICAgICAgIGVuZC5saW5rKHRoaXMpOwogfQog
CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCShyZXZpc2lvbiAxMjkxMzYpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0wOS0yMCAgR2VvZmZyZXkgR2FyZW4g
IDxnZ2FyZW5AYXBwbGUuY29tPgorCisgICAgICAgIFJlZmFjdG9yZWQgdGhlIGludGVycHJldGVy
IGFuZCBKSVQgc28gdGhleSBkb24ndCBkaWN0YXRlIGNsb3N1cmUgbGF5b3V0CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzIyMQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9qcy9kZmctYXJndW1l
bnRzLWFsaWFzLWFjdGl2YXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2pzL2RmZy1hcmd1bWVudHMtYWxpYXMtYWN0aXZhdGlvbi5odG1sOiBBZGRlZC4KKwogMjAxMi0w
OS0yMCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIFtR
dF0gVW5yZXZpZXdlZCBnYXJkZW5pbmcuIFVuc2tpcCBmYXN0L2V4Y2x1c2lvbnMgdGVzdHMsIGJl
Y2F1c2UgdGhleSBwYXNzIG5vdy4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMvZGZnLWFyZ3Vt
ZW50cy1hbGlhcy1hY3RpdmF0aW9uLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2pzL2RmZy1hcmd1bWVudHMtYWxpYXMtYWN0aXZhdGlvbi1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL2RmZy1hcmd1bWVudHMtYWxpYXMt
YWN0aXZhdGlvbi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDAzIEBACitU
aGlzIHRlc3RzIHZlcmlmaWVzIGFjY2VzcyB0byBjYXB0dXJlZCBhcmd1bWVudHMgdmlhIGFuIG9w
dGltaXplZC1hd2F5IGFyZ3VtZW50cyBvYmplY3QuDQorDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZigxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZigx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBz
aG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQor
UEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQg
YmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzog
ZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBh
bmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAx
KSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMu
DQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91
bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFT
UzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUg
MSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygw
LCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQg
aXMuDQorUEFTUzogZygwLCAxKSBzaG91bGQgYmUgMSBhbmQgaXMuDQorDQpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9qcy9kZmctYXJndW1lbnRzLWFsaWFzLWFjdGl2YXRpb24uaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2RmZy1hcmd1bWVudHMtYWxpYXMtYWN0aXZhdGlv
bi5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9qcy9kZmctYXJndW1lbnRz
LWFsaWFzLWFjdGl2YXRpb24uaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOSBAQAorPHA+
VGhpcyB0ZXN0cyB2ZXJpZmllcyBhY2Nlc3MgdG8gY2FwdHVyZWQgYXJndW1lbnRzIHZpYSBhbiBv
cHRpbWl6ZWQtYXdheSBhcmd1bWVudHMgb2JqZWN0LgorPC9wPgorPHByZSBpZD0iY29uc29sZSI+
PC9wcmU+CisKKzxzY3JpcHQ+CitmdW5jdGlvbiBsb2cocykKK3sKKwlkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiY29uc29sZSIpLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHMg
KyAiXHJcbiIpKTsKK30KKworZnVuY3Rpb24gc2hvdWxkQmUoYSwgYURlc2NyaXB0aW9uLCBiKQor
eworCWlmIChhID09IGIpIHsKKwkJbG9nKCJQQVNTOiAiICsgYURlc2NyaXB0aW9uICsgIiBzaG91
bGQgYmUgIiArIGIgKyAiIGFuZCBpcy4iKTsKKwkJcmV0dXJuOworCX0KKwlsb2coIkZBSUw6ICIg
KyBhRGVzY3JpcHRpb24gKyAiIHNob3VsZCBiZSAiICsgYiArICIgYnV0IGluc3RlYWQgaXMgIiAr
IGEgKyAiLiIpOworfQorCitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKwl0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKK30KKworLy8gSW4tYm91bmRzIG9mIGRlY2xhcmVkIGFuZCBwYXNzZWQgYXJn
dW1lbnRzLgorZnVuY3Rpb24gZih4KSB7CisgICAgcmV0dXJuIGFyZ3VtZW50c1swXSB8fCBmdW5j
dGlvbigpIHsgcmV0dXJuIHg7IH07Cit9CisKKy8vIE91dC1vZi1ib3VuZHMgb2YgZGVjbGFyZWQg
YXJndW1lbnRzLCBpbi1ib3VuZHMgb2YgcGFzc2VkIGFyZ3VtZW50cy4KK2Z1bmN0aW9uIGcoeCkg
eworICAgIHJldHVybiBhcmd1bWVudHNbMV0gfHwgZnVuY3Rpb24oKSB7IHJldHVybiB4OyB9Owor
fQorCitmb3IgKHZhciBpID0gMDsgaSA8IDIwMDsgKytpKQorICAgIHNob3VsZEJlKGYoMSksICJm
KDEpIiwgMSk7CisKK2ZvciAodmFyIGkgPSAwOyBpIDwgMjAwOyArK2kpCisgICAgc2hvdWxkQmUo
ZygwLCAxKSwgImcoMCwgMSkiLCAxKTsKKzwvc2NyaXB0Pgo=
</data>
<flag name="review"
          id="176890"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>