<?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>103353</bug_id>
          
          <creation_ts>2012-11-26 20:49:19 -0800</creation_ts>
          <short_desc>DFG SetLocal should use forwardSpeculationCheck instead of its own half-baked version of same</short_desc>
          <delta_ts>2012-11-27 14:35:59 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>msaboff</cc>
    
    <cc>oliver</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>776267</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-26 20:49:19 -0800</bug_when>
    <thetext>This will ensure correct behavior if (a) the bytecode op that the SetLocal belongs to is side-effecting, (b) the SetLocal does speculations, and (c) the SetLocal has some other node after it for the same bytecode op (which will happen for intrinsic calls).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776268</commentid>
    <comment_count>1</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-26 20:49:48 -0800</bug_when>
    <thetext>&lt;rdar://problem/12734106&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776269</commentid>
    <comment_count>2</comment_count>
      <attachid>176158</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-26 20:54:12 -0800</bug_when>
    <thetext>Created attachment 176158
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776354</commentid>
    <comment_count>3</comment_count>
      <attachid>176158</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2012-11-26 22:36:13 -0800</bug_when>
    <thetext>Comment on attachment 176158
the patch

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

&gt; Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2327
&gt; +            // And twice for real.

This may be non-obvious, and it&apos;s possible the idiom required to make this work could change.
I wonder if we should have a helper to set two registers, e.g.:
    setPair(result, op, srcDst, resultIndex)
This could internally perform the four set() calls (as this is currently implemented).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776369</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-26 22:49:12 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 176158 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176158&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2327
&gt; &gt; +            // And twice for real.
&gt; 
&gt; This may be non-obvious, and it&apos;s possible the idiom required to make this work could change.
&gt; I wonder if we should have a helper to set two registers, e.g.:
&gt;     setPair(result, op, srcDst, resultIndex)
&gt; This could internally perform the four set() calls (as this is currently implemented).

Good call!  I will land with this change unless there are objections.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>777237</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-27 14:35:59 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/135923</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176158</attachid>
            <date>2012-11-26 20:54:12 -0800</date>
            <delta_ts>2012-11-26 22:36:13 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>fixsetlocal.patch</filename>
            <type>text/plain</type>
            <size>91727</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTM1ODE0KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYyIEBA
CisyMDEyLTExLTI2ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHIFNldExvY2FsIHNob3VsZCB1c2UgZm9yd2FyZFNwZWN1bGF0aW9uQ2hlY2sgaW5zdGVhZCBv
ZiBpdHMgb3duIGhhbGYtYmFrZWQgdmVyc2lvbiBvZiBzYW1lCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMzNTMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWRlIGl0IHBvc3NpYmxlIHRvIHVzZSBmb3J3
YXJkIHNwZWN1bGF0aW9ucyBmb3IgbW9zdCBvZiB0aGUgb3BlcmFuZCBjbGFzc2VzLiBDaGFuZ2Vk
IHRoZSBjb25kaXRpb25hbAorICAgICAgICBkaXJlY3Rpb24gcGFyYW1ldGVyIGZyb20gYmVpbmcg
J2Jvb2wgaXNGb3J3YXJkJyB0byBhbiBlbnVtIChTcGVjdWxhdGlvbkRpcmVjdGlvbikuIENoYW5n
ZWQgU2V0TG9jYWwKKyAgICAgICAgdG8gdXNlIGZvcndhcmQgc3BlY3VsYXRpb25zIGFuZCBnb3Qg
cmlkIG9mIGl0cyBoYWxmLWJha2VkIHZlcnNpb24gb2Ygc2FtZS4KKyAgICAgICAgCisgICAgICAg
IEFsc28gYWRkZWQgdGhlIGFiaWxpdHkgdG8gZm9yY2UgdGhlIERGRydzIGRpc2Fzc2VtYmxlciB0
byBkdW1wIGFsbCBub2RlcywgZXZlbiBvbmVzIHRoYXQgYXJlIGRlYWQuCisKKyAgICAgICAgKiBk
ZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwOgorICAgICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFy
c2VyOjpwYXJzZUJsb2NrKToKKyAgICAgICAgKiBkZmcvREZHRGlzYXNzZW1ibGVyLmNwcDoKKyAg
ICAgICAgKEpTQzo6REZHOjpEaXNhc3NlbWJsZXI6OmR1bXApOgorICAgICAgICAqIGRmZy9ERkdE
cml2ZXIuY3BwOgorICAgICAgICAoSlNDOjpERkc6OmNvbXBpbGUpOgorICAgICAgICAqIGRmZy9E
RkdTcGVjdWxhdGl2ZUpJVC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6
OnNwZWN1bGF0aW9uQ2hlY2spOgorICAgICAgICAoREZHKToKKyAgICAgICAgKEpTQzo6REZHOjpT
cGVjdWxhdGl2ZUpJVDo6Y29udmVydExhc3RPU1JFeGl0VG9Gb3J3YXJkKToKKyAgICAgICAgKEpT
Qzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6c3BlY3VsYXRpb25XYXRjaHBvaW50KToKKyAgICAgICAg
KEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6dGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb24p
OgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpmaWxsU3RvcmFnZSk6CisgICAg
ICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklULmg6CisgICAgICAgIChTcGVjdWxhdGl2ZUpJVCk6
CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRlSW50ZWdlck9wZXJhbmQ6OlNwZWN1bGF0ZUlu
dGVnZXJPcGVyYW5kKToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGVJbnRlZ2VyT3BlcmFu
ZDo6Z3ByKToKKyAgICAgICAgKFNwZWN1bGF0ZUludGVnZXJPcGVyYW5kKToKKyAgICAgICAgKEpT
Qzo6REZHOjpTcGVjdWxhdGVEb3VibGVPcGVyYW5kOjpTcGVjdWxhdGVEb3VibGVPcGVyYW5kKToK
KyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGVEb3VibGVPcGVyYW5kOjpmcHIpOgorICAgICAg
ICAoU3BlY3VsYXRlRG91YmxlT3BlcmFuZCk6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRl
Q2VsbE9wZXJhbmQ6OlNwZWN1bGF0ZUNlbGxPcGVyYW5kKToKKyAgICAgICAgKEpTQzo6REZHOjpT
cGVjdWxhdGVDZWxsT3BlcmFuZDo6Z3ByKToKKyAgICAgICAgKFNwZWN1bGF0ZUNlbGxPcGVyYW5k
KToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGVCb29sZWFuT3BlcmFuZDo6U3BlY3VsYXRl
Qm9vbGVhbk9wZXJhbmQpOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0ZUJvb2xlYW5PcGVy
YW5kOjpncHIpOgorICAgICAgICAoU3BlY3VsYXRlQm9vbGVhbk9wZXJhbmQpOgorICAgICAgICAq
IGRmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTcGVj
dWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUludEludGVybmFsKToKKyAgICAgICAgKEpTQzo6REZH
OjpTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUludCk6CisgICAgICAgIChKU0M6OkRGRzo6
U3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVJbnRTdHJpY3QpOgorICAgICAgICAoSlNDOjpE
Rkc6OlNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRlRG91YmxlKToKKyAgICAgICAgKEpTQzo6
REZHOjpTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUNlbGwpOgorICAgICAgICAoSlNDOjpE
Rkc6OlNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRlQm9vbGVhbik6CisgICAgICAgIChKU0M6
OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUpOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxh
dGl2ZUpJVDY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNw
ZWN1bGF0ZUludEludGVybmFsKToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6
ZmlsbFNwZWN1bGF0ZUludCk6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmZp
bGxTcGVjdWxhdGVJbnRTdHJpY3QpOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklU
OjpmaWxsU3BlY3VsYXRlRG91YmxlKToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJ
VDo6ZmlsbFNwZWN1bGF0ZUNlbGwpOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklU
OjpmaWxsU3BlY3VsYXRlQm9vbGVhbik6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVK
SVQ6OmNvbXBpbGUpOgorICAgICAgICAqIHJ1bnRpbWUvT3B0aW9ucy5oOgorICAgICAgICAoSlND
KToKKwogMjAxMi0xMS0yNiAgRGFuaWVsIEJhdGVzICA8ZGJhdGVzQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgU3Vic3RpdHV0ZSAiYWxsU2VwYXJhdG9yczhCaXQiIGZvciAiYWxsU2VwZXJhdG9yczhC
aXQiIGluIEpTQzo6anNTcGxpY2VTdWJzdHJpbmdzV2l0aFNlcGFyYXRvcnMoKQpJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAJKHJldmlz
aW9uIDEzNTc3NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJz
ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMjk5LDggKzIyOTksMTMgQEAgYm9vbCBCeXRlQ29k
ZVBhcnNlcjo6cGFyc2VCbG9jayh1bnNpZ25lZAogICAgICAgICAgICAgdW5zaWduZWQgc3JjRHN0
ID0gY3VycmVudEluc3RydWN0aW9uWzJdLnUub3BlcmFuZDsKICAgICAgICAgICAgIEFTU0VSVChy
ZXN1bHQgIT0gc3JjRHN0KTsgLy8gUmVxdWlyZWQgZm9yIGFzc3VtcHRpb25zIHdlIG1ha2UgZHVy
aW5nIE9TUi4KICAgICAgICAgICAgIE5vZGVJbmRleCBvcCA9IGdldChzcmNEc3QpOworICAgICAg
ICAgICAgTm9kZUluZGV4IHJlc3VsdEluZGV4ID0gbWFrZVNhZmUoYWRkVG9HcmFwaChBcml0aEFk
ZCwgb3AsIG9uZSgpKSk7CisgICAgICAgICAgICAvLyBPbmNlIGZvciBPU1IuCiAgICAgICAgICAg
ICBzZXQocmVzdWx0LCBvcCk7Ci0gICAgICAgICAgICBzZXQoc3JjRHN0LCBtYWtlU2FmZShhZGRU
b0dyYXBoKEFyaXRoQWRkLCBvcCwgb25lKCkpKSk7CisgICAgICAgICAgICBzZXQoc3JjRHN0LCBy
ZXN1bHRJbmRleCk7CisgICAgICAgICAgICAvLyBBbmQgdHdpY2UgZm9yIHJlYWwuCisgICAgICAg
ICAgICBzZXQocmVzdWx0LCBvcCk7CisgICAgICAgICAgICBzZXQoc3JjRHN0LCByZXN1bHRJbmRl
eCk7CiAgICAgICAgICAgICBORVhUX09QQ09ERShvcF9wb3N0X2luYyk7CiAgICAgICAgIH0KIApA
QCAtMjMxNSw4ICsyMzIwLDEzIEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5z
aWduZWQKICAgICAgICAgICAgIHVuc2lnbmVkIHJlc3VsdCA9IGN1cnJlbnRJbnN0cnVjdGlvblsx
XS51Lm9wZXJhbmQ7CiAgICAgICAgICAgICB1bnNpZ25lZCBzcmNEc3QgPSBjdXJyZW50SW5zdHJ1
Y3Rpb25bMl0udS5vcGVyYW5kOwogICAgICAgICAgICAgTm9kZUluZGV4IG9wID0gZ2V0KHNyY0Rz
dCk7CisgICAgICAgICAgICBOb2RlSW5kZXggcmVzdWx0SW5kZXggPSBtYWtlU2FmZShhZGRUb0dy
YXBoKEFyaXRoU3ViLCBvcCwgb25lKCkpKTsKKyAgICAgICAgICAgIC8vIE9uY2UgZm9yIE9TUi4K
ICAgICAgICAgICAgIHNldChyZXN1bHQsIG9wKTsKLSAgICAgICAgICAgIHNldChzcmNEc3QsIG1h
a2VTYWZlKGFkZFRvR3JhcGgoQXJpdGhTdWIsIG9wLCBvbmUoKSkpKTsKKyAgICAgICAgICAgIHNl
dChzcmNEc3QsIHJlc3VsdEluZGV4KTsKKyAgICAgICAgICAgIC8vIEFuZCB0d2ljZSBmb3IgcmVh
bC4KKyAgICAgICAgICAgIHNldChyZXN1bHQsIG9wKTsKKyAgICAgICAgICAgIHNldChzcmNEc3Qs
IHJlc3VsdEluZGV4KTsKICAgICAgICAgICAgIE5FWFRfT1BDT0RFKG9wX3Bvc3RfZGVjKTsKICAg
ICAgICAgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Rpc2Fzc2VtYmxl
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdEaXNhc3Nl
bWJsZXIuY3BwCShyZXZpc2lvbiAxMzU3NzQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0Rpc2Fzc2VtYmxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU5LDcgKzU5LDcgQEAgdm9p
ZCBEaXNhc3NlbWJsZXI6OmR1bXAoTGlua0J1ZmZlciYgbGluawogICAgICAgICBtX2dyYXBoLmR1
bXBCbG9ja0hlYWRlcihwcmVmaXgsIGJsb2NrSW5kZXgsIEdyYXBoOjpEdW1wTGl2ZVBoaXNPbmx5
KTsKICAgICAgICAgTm9kZUluZGV4IGxhc3ROb2RlSW5kZXhGb3JEaXNhc3NlbWJseSA9IGJsb2Nr
LT5hdCgwKTsKICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBibG9jay0+c2l6ZSgpOyAr
K2kpIHsKLSAgICAgICAgICAgIGlmICghbV9ncmFwaFtibG9jay0+YXQoaSldLndpbGxIYXZlQ29k
ZUdlbk9yT1NSKCkpCisgICAgICAgICAgICBpZiAoIW1fZ3JhcGhbYmxvY2stPmF0KGkpXS53aWxs
SGF2ZUNvZGVHZW5Pck9TUigpICYmICFPcHRpb25zOjpzaG93QWxsREZHTm9kZXMoKSkKICAgICAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIE1hY3JvQXNzZW1ibGVyOjpMYWJlbCBj
dXJyZW50TGFiZWw7CiAgICAgICAgICAgICBpZiAobV9sYWJlbEZvck5vZGVJbmRleFtibG9jay0+
YXQoaSldLmlzU2V0KCkpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1
bGF0aXZlSklUMzJfNjQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAJKHJldmlzaW9uIDEzNTc3NCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEwODcsMTMgKzEwODcsMTMgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6ZW1pdENh
bGwoTm9kZSYgbm9kZQogfQogCiB0ZW1wbGF0ZTxib29sIHN0cmljdD4KLUdQUlJlZyBTcGVjdWxh
dGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUludEludGVybmFsKE5vZGVJbmRleCBub2RlSW5kZXgsIERh
dGFGb3JtYXQmIHJldHVybkZvcm1hdCkKK0dQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1
bGF0ZUludEludGVybmFsKE5vZGVJbmRleCBub2RlSW5kZXgsIERhdGFGb3JtYXQmIHJldHVybkZv
cm1hdCwgU3BlY3VsYXRpb25EaXJlY3Rpb24gZGlyZWN0aW9uKQogewogI2lmIERGR19FTkFCTEUo
REVCVUdfVkVSQk9TRSkKICAgICBkYXRhTG9nRigiU3BlY0ludEAlZCAgICIsIG5vZGVJbmRleCk7
CiAjZW5kaWYKICAgICBpZiAoaXNLbm93bk5vdEludGVnZXIobm9kZUluZGV4KSkgewotICAgICAg
ICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJsZSwgSlNWYWx1ZVJlZ3Mo
KSwgTm9Ob2RlKTsKKyAgICAgICAgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb24oVW5jb3Vu
dGFibGUsIEpTVmFsdWVSZWdzKCksIE5vTm9kZSwgZGlyZWN0aW9uKTsKICAgICAgICAgcmV0dXJu
Rm9ybWF0ID0gRGF0YUZvcm1hdEludGVnZXI7CiAgICAgICAgIHJldHVybiBhbGxvY2F0ZSgpOwog
ICAgIH0KQEAgLTExMjEsNyArMTEyMSw3IEBAIEdQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNw
ZWN1bGF0ZUludEkKIAogICAgICAgICAvLyBJZiB3ZSBrbm93IHRoaXMgd2FzIHNwaWxsZWQgYXMg
YW4gaW50ZWdlciB3ZSBjYW4gZmlsbCB3aXRob3V0IGNoZWNraW5nLgogICAgICAgICBpZiAoIWlz
SW50MzJTcGVjdWxhdGlvbih0eXBlKSkKLSAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soQmFk
VHlwZSwgSlNWYWx1ZVNvdXJjZShKSVRDb21waWxlcjo6YWRkcmVzc0Zvcih2aXJ0dWFsUmVnaXN0
ZXIpKSwgbm9kZUluZGV4LCBtX2ppdC5icmFuY2gzMihNYWNyb0Fzc2VtYmxlcjo6Tm90RXF1YWws
IEpJVENvbXBpbGVyOjp0YWdGb3IodmlydHVhbFJlZ2lzdGVyKSwgVHJ1c3RlZEltbTMyKEpTVmFs
dWU6OkludDMyVGFnKSkpOworICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBK
U1ZhbHVlU291cmNlKEpJVENvbXBpbGVyOjphZGRyZXNzRm9yKHZpcnR1YWxSZWdpc3RlcikpLCBu
b2RlSW5kZXgsIG1faml0LmJyYW5jaDMyKE1hY3JvQXNzZW1ibGVyOjpOb3RFcXVhbCwgSklUQ29t
cGlsZXI6OnRhZ0Zvcih2aXJ0dWFsUmVnaXN0ZXIpLCBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6SW50
MzJUYWcpKSwgZGlyZWN0aW9uKTsKIAogICAgICAgICBHUFJSZWcgZ3ByID0gYWxsb2NhdGUoKTsK
ICAgICAgICAgbV9qaXQubG9hZDMyKEpJVENvbXBpbGVyOjpwYXlsb2FkRm9yKHZpcnR1YWxSZWdp
c3RlciksIGdwcik7CkBAIC0xMTM5LDcgKzExMzksNyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6
OmZpbGxTcGVjdWxhdGVJbnRJCiAgICAgICAgIG1fZ3Bycy5sb2NrKHRhZ0dQUik7CiAgICAgICAg
IG1fZ3Bycy5sb2NrKHBheWxvYWRHUFIpOwogICAgICAgICBpZiAoIWlzSW50MzJTcGVjdWxhdGlv
bih0eXBlKSkKLSAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soQmFkVHlwZSwgSlNWYWx1ZVJl
Z3ModGFnR1BSLCBwYXlsb2FkR1BSKSwgbm9kZUluZGV4LCBtX2ppdC5icmFuY2gzMihNYWNyb0Fz
c2VtYmxlcjo6Tm90RXF1YWwsIHRhZ0dQUiwgVHJ1c3RlZEltbTMyKEpTVmFsdWU6OkludDMyVGFn
KSkpOworICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlUmVncyh0
YWdHUFIsIHBheWxvYWRHUFIpLCBub2RlSW5kZXgsIG1faml0LmJyYW5jaDMyKE1hY3JvQXNzZW1i
bGVyOjpOb3RFcXVhbCwgdGFnR1BSLCBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6SW50MzJUYWcpKSwg
ZGlyZWN0aW9uKTsKICAgICAgICAgbV9ncHJzLnVubG9jayh0YWdHUFIpOwogICAgICAgICBtX2dw
cnMucmVsZWFzZSh0YWdHUFIpOwogICAgICAgICBtX2dwcnMucmVsZWFzZShwYXlsb2FkR1BSKTsK
QEAgLTExNzIsMjYgKzExNzIsMjYgQEAgR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3Vs
YXRlSW50SQogICAgIH0KIH0KIAotR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRl
SW50KE5vZGVJbmRleCBub2RlSW5kZXgsIERhdGFGb3JtYXQmIHJldHVybkZvcm1hdCkKK0dQUlJl
ZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUludChOb2RlSW5kZXggbm9kZUluZGV4LCBE
YXRhRm9ybWF0JiByZXR1cm5Gb3JtYXQsIFNwZWN1bGF0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbikK
IHsKLSAgICByZXR1cm4gZmlsbFNwZWN1bGF0ZUludEludGVybmFsPGZhbHNlPihub2RlSW5kZXgs
IHJldHVybkZvcm1hdCk7CisgICAgcmV0dXJuIGZpbGxTcGVjdWxhdGVJbnRJbnRlcm5hbDxmYWxz
ZT4obm9kZUluZGV4LCByZXR1cm5Gb3JtYXQsIGRpcmVjdGlvbik7CiB9CiAKIEdQUlJlZyBTcGVj
dWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUludFN0cmljdChOb2RlSW5kZXggbm9kZUluZGV4KQog
ewogICAgIERhdGFGb3JtYXQgbXVzdEJlRGF0YUZvcm1hdEludGVnZXI7Ci0gICAgR1BSUmVnIHJl
c3VsdCA9IGZpbGxTcGVjdWxhdGVJbnRJbnRlcm5hbDx0cnVlPihub2RlSW5kZXgsIG11c3RCZURh
dGFGb3JtYXRJbnRlZ2VyKTsKKyAgICBHUFJSZWcgcmVzdWx0ID0gZmlsbFNwZWN1bGF0ZUludElu
dGVybmFsPHRydWU+KG5vZGVJbmRleCwgbXVzdEJlRGF0YUZvcm1hdEludGVnZXIsIEJhY2t3YXJk
U3BlY3VsYXRpb24pOwogICAgIEFTU0VSVChtdXN0QmVEYXRhRm9ybWF0SW50ZWdlciA9PSBEYXRh
Rm9ybWF0SW50ZWdlcik7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotRlBSUmVnIFNwZWN1bGF0
aXZlSklUOjpmaWxsU3BlY3VsYXRlRG91YmxlKE5vZGVJbmRleCBub2RlSW5kZXgpCitGUFJSZWcg
U3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVEb3VibGUoTm9kZUluZGV4IG5vZGVJbmRleCwg
U3BlY3VsYXRpb25EaXJlY3Rpb24gZGlyZWN0aW9uKQogewogI2lmIERGR19FTkFCTEUoREVCVUdf
VkVSQk9TRSkKICAgICBkYXRhTG9nRigiU3BlY0RvdWJsZUAlZCAgICIsIG5vZGVJbmRleCk7CiAj
ZW5kaWYKICAgICBpZiAoaXNLbm93bk5vdE51bWJlcihub2RlSW5kZXgpKSB7Ci0gICAgICAgIHRl
cm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uKFVuY291bnRhYmxlLCBKU1ZhbHVlUmVncygpLCBO
b05vZGUpOworICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJs
ZSwgSlNWYWx1ZVJlZ3MoKSwgTm9Ob2RlLCBkaXJlY3Rpb24pOwogICAgICAgICByZXR1cm4gZnBy
QWxsb2NhdGUoKTsKICAgICB9CiAKQEAgLTEyMzQsNyArMTIzNCw3IEBAIEZQUlJlZyBTcGVjdWxh
dGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZURvdWIKICAgICAgICAgICAgIGlmIChzcGlsbEZvcm1hdCAh
PSBEYXRhRm9ybWF0SlNJbnRlZ2VyICYmIHNwaWxsRm9ybWF0ICE9IERhdGFGb3JtYXRJbnRlZ2Vy
KSB7CiAgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6Okp1bXAgaXNJbnRlZ2VyID0gbV9qaXQu
YnJhbmNoMzIoTWFjcm9Bc3NlbWJsZXI6OkVxdWFsLCBKSVRDb21waWxlcjo6dGFnRm9yKHZpcnR1
YWxSZWdpc3RlciksIFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpJbnQzMlRhZykpOwogICAgICAgICAg
ICAgICAgIGlmICghaXNOdW1iZXJTcGVjdWxhdGlvbih0eXBlKSkKLSAgICAgICAgICAgICAgICAg
ICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlU291cmNlKEpJVENvbXBpbGVyOjph
ZGRyZXNzRm9yKHZpcnR1YWxSZWdpc3RlcikpLCBub2RlSW5kZXgsIG1faml0LmJyYW5jaDMyKE1h
Y3JvQXNzZW1ibGVyOjpBYm92ZU9yRXF1YWwsIEpJVENvbXBpbGVyOjp0YWdGb3IodmlydHVhbFJl
Z2lzdGVyKSwgVHJ1c3RlZEltbTMyKEpTVmFsdWU6Okxvd2VzdFRhZykpKTsKKyAgICAgICAgICAg
ICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlU291cmNlKEpJVENvbXBp
bGVyOjphZGRyZXNzRm9yKHZpcnR1YWxSZWdpc3RlcikpLCBub2RlSW5kZXgsIG1faml0LmJyYW5j
aDMyKE1hY3JvQXNzZW1ibGVyOjpBYm92ZU9yRXF1YWwsIEpJVENvbXBpbGVyOjp0YWdGb3Iodmly
dHVhbFJlZ2lzdGVyKSwgVHJ1c3RlZEltbTMyKEpTVmFsdWU6Okxvd2VzdFRhZykpLCBkaXJlY3Rp
b24pOwogICAgICAgICAgICAgICAgIG1faml0LmxvYWREb3VibGUoSklUQ29tcGlsZXI6OmFkZHJl
c3NGb3IodmlydHVhbFJlZ2lzdGVyKSwgZnByKTsKICAgICAgICAgICAgICAgICBoYXNVbmJveGVk
RG91YmxlID0gbV9qaXQuanVtcCgpOwogCkBAIC0xMjY5LDcgKzEyNjksNyBAQCBGUFJSZWcgU3Bl
Y3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVEb3ViCiAgICAgICAgICAgICBGUFJUZW1wb3Jhcnkg
c2NyYXRjaCh0aGlzKTsKICAgICAgICAgICAgIEpJVENvbXBpbGVyOjpKdW1wIGlzSW50ZWdlciA9
IG1faml0LmJyYW5jaDMyKE1hY3JvQXNzZW1ibGVyOjpFcXVhbCwgdGFnR1BSLCBUcnVzdGVkSW1t
MzIoSlNWYWx1ZTo6SW50MzJUYWcpKTsKICAgICAgICAgICAgIGlmICghaXNOdW1iZXJTcGVjdWxh
dGlvbih0eXBlKSkKLSAgICAgICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKEJhZFR5cGUsIEpT
VmFsdWVSZWdzKHRhZ0dQUiwgcGF5bG9hZEdQUiksIG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoMzIo
TWFjcm9Bc3NlbWJsZXI6OkFib3ZlT3JFcXVhbCwgdGFnR1BSLCBUcnVzdGVkSW1tMzIoSlNWYWx1
ZTo6TG93ZXN0VGFnKSkpOworICAgICAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soQmFkVHlw
ZSwgSlNWYWx1ZVJlZ3ModGFnR1BSLCBwYXlsb2FkR1BSKSwgbm9kZUluZGV4LCBtX2ppdC5icmFu
Y2gzMihNYWNyb0Fzc2VtYmxlcjo6QWJvdmVPckVxdWFsLCB0YWdHUFIsIFRydXN0ZWRJbW0zMihK
U1ZhbHVlOjpMb3dlc3RUYWcpKSwgZGlyZWN0aW9uKTsKICAgICAgICAgICAgIHVuYm94RG91Ymxl
KHRhZ0dQUiwgcGF5bG9hZEdQUiwgZnByLCBzY3JhdGNoLmZwcigpKTsKICAgICAgICAgICAgIGhh
c1VuYm94ZWREb3VibGUgPSBtX2ppdC5qdW1wKCk7CiAgICAgICAgICAgICBpc0ludGVnZXIubGlu
aygmbV9qaXQpOwpAQCAtMTMyMCwxMyArMTMyMCwxMyBAQCBGUFJSZWcgU3BlY3VsYXRpdmVKSVQ6
OmZpbGxTcGVjdWxhdGVEb3ViCiAgICAgfQogfQogCi1HUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZp
bGxTcGVjdWxhdGVDZWxsKE5vZGVJbmRleCBub2RlSW5kZXgsIGJvb2wgaXNGb3J3YXJkU3BlY3Vs
YXRpb24pCitHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVDZWxsKE5vZGVJbmRl
eCBub2RlSW5kZXgsIFNwZWN1bGF0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbikKIHsKICNpZiBERkdf
RU5BQkxFKERFQlVHX1ZFUkJPU0UpCiAgICAgZGF0YUxvZ0YoIlNwZWNDZWxsQCVkICAgIiwgbm9k
ZUluZGV4KTsKICNlbmRpZgogICAgIGlmIChpc0tub3duTm90Q2VsbChub2RlSW5kZXgpKSB7Ci0g
ICAgICAgIHRlcm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uV2l0aENvbmRpdGlvbmFsRGlyZWN0
aW9uKFVuY291bnRhYmxlLCBKU1ZhbHVlUmVncygpLCBOb05vZGUsIGlzRm9yd2FyZFNwZWN1bGF0
aW9uKTsKKyAgICAgICAgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb24oVW5jb3VudGFibGUs
IEpTVmFsdWVSZWdzKCksIE5vTm9kZSwgZGlyZWN0aW9uKTsKICAgICAgICAgcmV0dXJuIGFsbG9j
YXRlKCk7CiAgICAgfQogCkBAIC0xMzUwLDcgKzEzNTAsNyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVK
SVQ6OmZpbGxTcGVjdWxhdGVDZWxsCiAKICAgICAgICAgQVNTRVJUKChpbmZvLnNwaWxsRm9ybWF0
KCkgJiBEYXRhRm9ybWF0SlMpIHx8IGluZm8uc3BpbGxGb3JtYXQoKSA9PSBEYXRhRm9ybWF0Q2Vs
bCk7CiAgICAgICAgIGlmICghaXNDZWxsU3BlY3VsYXRpb24odHlwZSkpCi0gICAgICAgICAgICBz
cGVjdWxhdGlvbkNoZWNrV2l0aENvbmRpdGlvbmFsRGlyZWN0aW9uKEJhZFR5cGUsIEpTVmFsdWVT
b3VyY2UoSklUQ29tcGlsZXI6OmFkZHJlc3NGb3IodmlydHVhbFJlZ2lzdGVyKSksIG5vZGVJbmRl
eCwgbV9qaXQuYnJhbmNoMzIoTWFjcm9Bc3NlbWJsZXI6Ok5vdEVxdWFsLCBKSVRDb21waWxlcjo6
dGFnRm9yKHZpcnR1YWxSZWdpc3RlciksIFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpDZWxsVGFnKSks
IGlzRm9yd2FyZFNwZWN1bGF0aW9uKTsKKyAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soQmFk
VHlwZSwgSlNWYWx1ZVNvdXJjZShKSVRDb21waWxlcjo6YWRkcmVzc0Zvcih2aXJ0dWFsUmVnaXN0
ZXIpKSwgbm9kZUluZGV4LCBtX2ppdC5icmFuY2gzMihNYWNyb0Fzc2VtYmxlcjo6Tm90RXF1YWws
IEpJVENvbXBpbGVyOjp0YWdGb3IodmlydHVhbFJlZ2lzdGVyKSwgVHJ1c3RlZEltbTMyKEpTVmFs
dWU6OkNlbGxUYWcpKSwgZGlyZWN0aW9uKTsKICAgICAgICAgR1BSUmVnIGdwciA9IGFsbG9jYXRl
KCk7CiAgICAgICAgIG1faml0LmxvYWQzMihKSVRDb21waWxlcjo6cGF5bG9hZEZvcih2aXJ0dWFs
UmVnaXN0ZXIpLCBncHIpOwogICAgICAgICBtX2dwcnMucmV0YWluKGdwciwgdmlydHVhbFJlZ2lz
dGVyLCBTcGlsbE9yZGVyU3BpbGxlZCk7CkBAIC0xMzcxLDcgKzEzNzEsNyBAQCBHUFJSZWcgU3Bl
Y3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVDZWxsCiAgICAgICAgIG1fZ3Bycy5sb2NrKHRhZ0dQ
Uik7CiAgICAgICAgIG1fZ3Bycy5sb2NrKHBheWxvYWRHUFIpOwogICAgICAgICBpZiAoIWlzQ2Vs
bFNwZWN1bGF0aW9uKHR5cGUpKQotICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVja1dpdGhDb25k
aXRpb25hbERpcmVjdGlvbihCYWRUeXBlLCBKU1ZhbHVlUmVncyh0YWdHUFIsIHBheWxvYWRHUFIp
LCBub2RlSW5kZXgsIG1faml0LmJyYW5jaDMyKE1hY3JvQXNzZW1ibGVyOjpOb3RFcXVhbCwgdGFn
R1BSLCBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6Q2VsbFRhZykpLCBpc0ZvcndhcmRTcGVjdWxhdGlv
bik7CisgICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKEJhZFR5cGUsIEpTVmFsdWVSZWdzKHRh
Z0dQUiwgcGF5bG9hZEdQUiksIG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoMzIoTWFjcm9Bc3NlbWJs
ZXI6Ok5vdEVxdWFsLCB0YWdHUFIsIFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpDZWxsVGFnKSksIGRp
cmVjdGlvbik7CiAgICAgICAgIG1fZ3Bycy51bmxvY2sodGFnR1BSKTsKICAgICAgICAgbV9ncHJz
LnJlbGVhc2UodGFnR1BSKTsKICAgICAgICAgbV9ncHJzLnJlbGVhc2UocGF5bG9hZEdQUik7CkBA
IC0xMzk1LDcgKzEzOTUsNyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVD
ZWxsCiAgICAgfQogfQogCi1HUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVCb29s
ZWFuKE5vZGVJbmRleCBub2RlSW5kZXgpCitHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVj
dWxhdGVCb29sZWFuKE5vZGVJbmRleCBub2RlSW5kZXgsIFNwZWN1bGF0aW9uRGlyZWN0aW9uIGRp
cmVjdGlvbikKIHsKICNpZiBERkdfRU5BQkxFKERFQlVHX1ZFUkJPU0UpCiAgICAgZGF0YUxvZ0Yo
IlNwZWNCb29sQCVkICAgIiwgbm9kZUluZGV4KTsKQEAgLTE0MDYsNyArMTQwNiw3IEBAIEdQUlJl
ZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUJvb2wKICAgICBHZW5lcmF0aW9uSW5mbyYg
aW5mbyA9IG1fZ2VuZXJhdGlvbkluZm9bdmlydHVhbFJlZ2lzdGVyXTsKICAgICBpZiAoKG5vZGUu
aGFzQ29uc3RhbnQoKSAmJiAhdmFsdWVPZkpTQ29uc3RhbnQobm9kZUluZGV4KS5pc0Jvb2xlYW4o
KSkKICAgICAgICAgfHwgIShpbmZvLmlzSlNCb29sZWFuKCkgfHwgaW5mby5pc1Vua25vd25KUygp
KSkgewotICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJsZSwg
SlNWYWx1ZVJlZ3MoKSwgTm9Ob2RlKTsKKyAgICAgICAgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVj
dXRpb24oVW5jb3VudGFibGUsIEpTVmFsdWVSZWdzKCksIE5vTm9kZSwgZGlyZWN0aW9uKTsKICAg
ICAgICAgcmV0dXJuIGFsbG9jYXRlKCk7CiAgICAgfQogCkBAIC0xNDI2LDcgKzE0MjYsNyBAQCBH
UFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVCb29sCiAgICAgICAgIEFTU0VSVCgo
aW5mby5zcGlsbEZvcm1hdCgpICYgRGF0YUZvcm1hdEpTKSB8fCBpbmZvLnNwaWxsRm9ybWF0KCkg
PT0gRGF0YUZvcm1hdEJvb2xlYW4pOwogCiAgICAgICAgIGlmICghaXNCb29sZWFuU3BlY3VsYXRp
b24odHlwZSkpCi0gICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKEJhZFR5cGUsIEpTVmFsdWVT
b3VyY2UoSklUQ29tcGlsZXI6OmFkZHJlc3NGb3IodmlydHVhbFJlZ2lzdGVyKSksIG5vZGVJbmRl
eCwgbV9qaXQuYnJhbmNoMzIoTWFjcm9Bc3NlbWJsZXI6Ok5vdEVxdWFsLCBKSVRDb21waWxlcjo6
dGFnRm9yKHZpcnR1YWxSZWdpc3RlciksIFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpCb29sZWFuVGFn
KSkpOworICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlU291cmNl
KEpJVENvbXBpbGVyOjphZGRyZXNzRm9yKHZpcnR1YWxSZWdpc3RlcikpLCBub2RlSW5kZXgsIG1f
aml0LmJyYW5jaDMyKE1hY3JvQXNzZW1ibGVyOjpOb3RFcXVhbCwgSklUQ29tcGlsZXI6OnRhZ0Zv
cih2aXJ0dWFsUmVnaXN0ZXIpLCBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6Qm9vbGVhblRhZykpLCBk
aXJlY3Rpb24pOwogCiAgICAgICAgIEdQUlJlZyBncHIgPSBhbGxvY2F0ZSgpOwogICAgICAgICBt
X2ppdC5sb2FkMzIoSklUQ29tcGlsZXI6OnBheWxvYWRGb3IodmlydHVhbFJlZ2lzdGVyKSwgZ3By
KTsKQEAgLTE0NDgsNyArMTQ0OCw3IEBAIEdQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1
bGF0ZUJvb2wKICAgICAgICAgbV9ncHJzLmxvY2sodGFnR1BSKTsKICAgICAgICAgbV9ncHJzLmxv
Y2socGF5bG9hZEdQUik7CiAgICAgICAgIGlmICghaXNCb29sZWFuU3BlY3VsYXRpb24odHlwZSkp
Ci0gICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKEJhZFR5cGUsIEpTVmFsdWVSZWdzKHRhZ0dQ
UiwgcGF5bG9hZEdQUiksIG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoMzIoTWFjcm9Bc3NlbWJsZXI6
Ok5vdEVxdWFsLCB0YWdHUFIsIFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpCb29sZWFuVGFnKSkpOwor
ICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlUmVncyh0YWdHUFIs
IHBheWxvYWRHUFIpLCBub2RlSW5kZXgsIG1faml0LmJyYW5jaDMyKE1hY3JvQXNzZW1ibGVyOjpO
b3RFcXVhbCwgdGFnR1BSLCBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6Qm9vbGVhblRhZykpLCBkaXJl
Y3Rpb24pOwogCiAgICAgICAgIG1fZ3Bycy51bmxvY2sodGFnR1BSKTsKICAgICAgICAgbV9ncHJz
LnJlbGVhc2UodGFnR1BSKTsKQEAgLTIyNDEsMzkgKzIyNDEsOSBAQCB2b2lkIFNwZWN1bGF0aXZl
SklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAgICAgIC8vIHN0YWNrLgogICAgICAgICBjb21w
aWxlTW92SGludChub2RlKTsKICAgICAgICAgCi0gICAgICAgIC8vIEFzIGZhciBhcyBPU1IgaXMg
Y29uY2VybmVkLCB3ZSdyZSBvbiB0aGUgYnl0ZWNvZGUgaW5kZXggY29ycmVzcG9uZGluZwotICAg
ICAgICAvLyB0byB0aGUgKm5leHQqIGluc3RydWN0aW9uLCBzaW5jZSB3ZSd2ZSBhbHJlYWR5ICJl
eGVjdXRlZCIgdGhlCi0gICAgICAgIC8vIFNldExvY2FsIGFuZCB3aGF0ZXZlciBvdGhlciBERkcg
Tm9kZXMgYXJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2FtZQotICAgICAgICAvLyBieXRlY29kZSBp
bmRleCBhcyB0aGUgU2V0TG9jYWwuCi0gICAgICAgIEFTU0VSVChtX2NvZGVPcmlnaW5Gb3JPU1Ig
PT0gbm9kZS5jb2RlT3JpZ2luKTsKLSAgICAgICAgTm9kZSogbmV4dE5vZGUgPSAmYXQoYmxvY2so
KS0+YXQobV9pbmRleEluQmxvY2sgKyAxKSk7Ci0KLSAgICAgICAgLy8gQnV0IGV2ZW4gbW9yZSBv
ZGRseSwgd2UgbmVlZCB0byBiZSBzdXBlciBjYXJlZnVsIGFib3V0IHRoZSBmb2xsb3dpbmcKLSAg
ICAgICAgLy8gc2VxdWVuY2U6Ci0gICAgICAgIC8vCi0gICAgICAgIC8vIGE6IEZvbygpCi0gICAg
ICAgIC8vIGI6IFNldExvY2FsKEBhKQotICAgICAgICAvLyBjOiBGbHVzaChAYikKLSAgICAgICAg
Ly8KLSAgICAgICAgLy8gVGhpcyBuZXh0IHBpZWNlIG9mIGNyYXp5IHRha2VzIGNhcmUgb2YgdGhp
cy4KLSAgICAgICAgaWYgKG5leHROb2RlLT5vcCgpID09IEZsdXNoICYmIG5leHROb2RlLT5jaGls
ZDEoKSA9PSBtX2NvbXBpbGVJbmRleCkKLSAgICAgICAgICAgIG5leHROb2RlID0gJmF0KGJsb2Nr
KCktPmF0KG1faW5kZXhJbkJsb2NrICsgMikpOwotICAgICAgICAKLSAgICAgICAgLy8gT2RkbHks
IGl0J3MgcG9zc2libGUgZm9yIHRoZSBieXRlY29kZSBpbmRleCBmb3IgdGhlIG5leHQgbm9kZSB0
byBiZQotICAgICAgICAvLyBlcXVhbCB0byBvdXJzLiBUaGlzIHdpbGwgaGFwcGVuIGZvciBvcF9w
b3N0X2luYy4gQW5kLCBldmVuIG1vcmUgb2RkbHksCi0gICAgICAgIC8vIHRoaXMgaXMganVzdCBm
aW5lLiBPcmRpbmFyaWx5LCB0aGlzIHdvdWxkbid0IGJlIGZpbmUsIHNpbmNlIGlmIHRoZQotICAg
ICAgICAvLyBuZXh0IG5vZGUgZmFpbGVkIE9TUiB0aGVuIHdlJ2QgYmUgT1NSLWluZyB3aXRoIHRo
aXMgU2V0TG9jYWwncyBsb2NhbAotICAgICAgICAvLyB2YXJpYWJsZSBhbHJlYWR5IHNldCBldmVu
IHRob3VnaCBmcm9tIHRoZSBzdGFuZHBvaW50IG9mIHRoZSBvbGQgSklULAotICAgICAgICAvLyB0
aGlzIFNldExvY2FsIHNob3VsZCBub3QgaGF2ZSBleGVjdXRlZC4gQnV0IGZvciBvcF9wb3N0X2lu
YywgaXQncyBqdXN0Ci0gICAgICAgIC8vIGZpbmUsIGJlY2F1c2UgdGhpcyBTZXRMb2NhbCdzIGxv
Y2FsIChpLmUuIHRoZSBMSFMgaW4gYSB4ID0geSsrCi0gICAgICAgIC8vIHN0YXRlbWVudCkgd291
bGQgYmUgZGVhZCBhbnl3YXkgLSBzbyB0aGUgZmFjdCB0aGF0IERGRyB3b3VsZCBoYXZlCi0gICAg
ICAgIC8vIGFscmVhZHkgbWFkZSB0aGUgYXNzaWdubWVudCwgYW5kIGJha2VkIGl0IGludG8gdGhl
IHN0YWNrIGR1cmluZwotICAgICAgICAvLyBPU1IgZXhpdCwgd291bGQgbm90IGJlIHZpc2libGUg
dG8gdGhlIG9sZCBKSVQgaW4gYW55IHdheS4KLSAgICAgICAgbV9jb2RlT3JpZ2luRm9yT1NSID0g
bmV4dE5vZGUtPmNvZGVPcmlnaW47Ci0gICAgICAgIAogICAgICAgICBpZiAoIW5vZGUudmFyaWFi
bGVBY2Nlc3NEYXRhKCktPmlzQ2FwdHVyZWQoKSAmJiAhbV9qaXQuZ3JhcGgoKS5pc0NyZWF0ZWRU
aGlzQXJndW1lbnQobm9kZS5sb2NhbCgpKSkgewogICAgICAgICAgICAgaWYgKG5vZGUudmFyaWFi
bGVBY2Nlc3NEYXRhKCktPnNob3VsZFVzZURvdWJsZUZvcm1hdCgpKSB7Ci0gICAgICAgICAgICAg
ICAgU3BlY3VsYXRlRG91YmxlT3BlcmFuZCB2YWx1ZSh0aGlzLCBub2RlLmNoaWxkMSgpKTsKKyAg
ICAgICAgICAgICAgICBTcGVjdWxhdGVEb3VibGVPcGVyYW5kIHZhbHVlKHRoaXMsIG5vZGUuY2hp
bGQxKCksIEZvcndhcmRTcGVjdWxhdGlvbik7CiAgICAgICAgICAgICAgICAgbV9qaXQuc3RvcmVE
b3VibGUodmFsdWUuZnByKCksIEpJVENvbXBpbGVyOjphZGRyZXNzRm9yKG5vZGUubG9jYWwoKSkp
OwogICAgICAgICAgICAgICAgIG5vUmVzdWx0KG1fY29tcGlsZUluZGV4KTsKICAgICAgICAgICAg
ICAgICAvLyBJbmRpY2F0ZSB0aGF0IGl0J3Mgbm8gbG9uZ2VyIG5lY2Vzc2FyeSB0byByZXRyaWV2
ZSB0aGUgdmFsdWUgb2YKQEAgLTIyOTEsMTQgKzIyNjEsMTQgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJ
VDo6Y29tcGlsZShOb2RlJiBub2RlKQogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgfQogICAgICAgICAgICAgaWYgKGlzSW50MzJTcGVjdWxhdGlvbihwcmVkaWN0ZWRUeXBlKSkg
ewotICAgICAgICAgICAgICAgIFNwZWN1bGF0ZUludGVnZXJPcGVyYW5kIHZhbHVlKHRoaXMsIG5v
ZGUuY2hpbGQxKCkpOworICAgICAgICAgICAgICAgIFNwZWN1bGF0ZUludGVnZXJPcGVyYW5kIHZh
bHVlKHRoaXMsIG5vZGUuY2hpbGQxKCksIEZvcndhcmRTcGVjdWxhdGlvbik7CiAgICAgICAgICAg
ICAgICAgbV9qaXQuc3RvcmUzMih2YWx1ZS5ncHIoKSwgSklUQ29tcGlsZXI6OnBheWxvYWRGb3Io
bm9kZS5sb2NhbCgpKSk7CiAgICAgICAgICAgICAgICAgbm9SZXN1bHQobV9jb21waWxlSW5kZXgp
OwogICAgICAgICAgICAgICAgIHJlY29yZFNldExvY2FsKG5vZGUubG9jYWwoKSwgVmFsdWVTb3Vy
Y2UoSW50MzJJbkpTU3RhY2spKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIGlmIChpc0NlbGxTcGVjdWxhdGlvbihwcmVkaWN0ZWRUeXBlKSkgewot
ICAgICAgICAgICAgICAgIFNwZWN1bGF0ZUNlbGxPcGVyYW5kIGNlbGwodGhpcywgbm9kZS5jaGls
ZDEoKSk7CisgICAgICAgICAgICAgICAgU3BlY3VsYXRlQ2VsbE9wZXJhbmQgY2VsbCh0aGlzLCBu
b2RlLmNoaWxkMSgpLCBGb3J3YXJkU3BlY3VsYXRpb24pOwogICAgICAgICAgICAgICAgIEdQUlJl
ZyBjZWxsR1BSID0gY2VsbC5ncHIoKTsKICAgICAgICAgICAgICAgICBtX2ppdC5zdG9yZVB0cihj
ZWxsR1BSLCBKSVRDb21waWxlcjo6cGF5bG9hZEZvcihub2RlLmxvY2FsKCkpKTsKICAgICAgICAg
ICAgICAgICBub1Jlc3VsdChtX2NvbXBpbGVJbmRleCk7CkBAIC0yMzA2LDcgKzIyNzYsNyBAQCB2
b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAgICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoaXNCb29sZWFuU3BlY3VsYXRp
b24ocHJlZGljdGVkVHlwZSkpIHsKLSAgICAgICAgICAgICAgICBTcGVjdWxhdGVCb29sZWFuT3Bl
cmFuZCB2YWx1ZSh0aGlzLCBub2RlLmNoaWxkMSgpKTsKKyAgICAgICAgICAgICAgICBTcGVjdWxh
dGVCb29sZWFuT3BlcmFuZCB2YWx1ZSh0aGlzLCBub2RlLmNoaWxkMSgpLCBGb3J3YXJkU3BlY3Vs
YXRpb24pOwogICAgICAgICAgICAgICAgIG1faml0LnN0b3JlMzIodmFsdWUuZ3ByKCksIEpJVENv
bXBpbGVyOjpwYXlsb2FkRm9yKG5vZGUubG9jYWwoKSkpOwogICAgICAgICAgICAgICAgIG5vUmVz
dWx0KG1fY29tcGlsZUluZGV4KTsKICAgICAgICAgICAgICAgICByZWNvcmRTZXRMb2NhbChub2Rl
LmxvY2FsKCksIFZhbHVlU291cmNlKEJvb2xlYW5JbkpTU3RhY2spKTsKQEAgLTQxNzIsMTggKzQx
NDIsMTkgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2RlKQogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgCi0gICAgICAgIFNwZWN1bGF0ZUNlbGxP
cGVyYW5kIGJhc2UodGhpcywgbm9kZS5jaGlsZDEoKSwgbm9kZS5vcCgpID09IEZvcndhcmRDaGVj
a1N0cnVjdHVyZSk7CisgICAgICAgIFNwZWN1bGF0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbiA9IG5v
ZGUub3AoKSA9PSBGb3J3YXJkQ2hlY2tTdHJ1Y3R1cmUgPyBGb3J3YXJkU3BlY3VsYXRpb24gOiBC
YWNrd2FyZFNwZWN1bGF0aW9uOworICAgICAgICBTcGVjdWxhdGVDZWxsT3BlcmFuZCBiYXNlKHRo
aXMsIG5vZGUuY2hpbGQxKCksIGRpcmVjdGlvbik7CiAgICAgICAgIAogICAgICAgICBBU1NFUlQo
bm9kZS5zdHJ1Y3R1cmVTZXQoKS5zaXplKCkpOwogICAgICAgICAKICAgICAgICAgaWYgKG5vZGUu
c3RydWN0dXJlU2V0KCkuc2l6ZSgpID09IDEpIHsKLSAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hl
Y2tXaXRoQ29uZGl0aW9uYWxEaXJlY3Rpb24oCisgICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNr
KAogICAgICAgICAgICAgICAgIEJhZENhY2hlLCBKU1ZhbHVlU291cmNlOjp1bmJveGVkQ2VsbChi
YXNlLmdwcigpKSwgTm9Ob2RlLAogICAgICAgICAgICAgICAgIG1faml0LmJyYW5jaFdlYWtQdHIo
CiAgICAgICAgICAgICAgICAgICAgIEpJVENvbXBpbGVyOjpOb3RFcXVhbCwKICAgICAgICAgICAg
ICAgICAgICAgSklUQ29tcGlsZXI6OkFkZHJlc3MoYmFzZS5ncHIoKSwgSlNDZWxsOjpzdHJ1Y3R1
cmVPZmZzZXQoKSksCiAgICAgICAgICAgICAgICAgICAgIG5vZGUuc3RydWN0dXJlU2V0KClbMF0p
LAotICAgICAgICAgICAgICAgIG5vZGUub3AoKSA9PSBGb3J3YXJkQ2hlY2tTdHJ1Y3R1cmUpOwor
ICAgICAgICAgICAgICAgIGRpcmVjdGlvbik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICBHUFJUZW1wb3Jhcnkgc3RydWN0dXJlKHRoaXMpOwogICAgICAgICAgICAgCkBAIC00MTk0LDEx
ICs0MTY1LDExIEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSYgbm9kZSkKICAg
ICAgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbm9kZS5zdHJ1Y3R1cmVTZXQoKS5zaXpl
KCkgLSAxOyArK2kpCiAgICAgICAgICAgICAgICAgZG9uZS5hcHBlbmQobV9qaXQuYnJhbmNoV2Vh
a1B0cihKSVRDb21waWxlcjo6RXF1YWwsIHN0cnVjdHVyZS5ncHIoKSwgbm9kZS5zdHJ1Y3R1cmVT
ZXQoKVtpXSkpOwogICAgICAgICAgICAgCi0gICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrV2l0
aENvbmRpdGlvbmFsRGlyZWN0aW9uKAorICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjaygKICAg
ICAgICAgICAgICAgICBCYWRDYWNoZSwgSlNWYWx1ZVNvdXJjZTo6dW5ib3hlZENlbGwoYmFzZS5n
cHIoKSksIE5vTm9kZSwKICAgICAgICAgICAgICAgICBtX2ppdC5icmFuY2hXZWFrUHRyKAogICAg
ICAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6Tm90RXF1YWwsIHN0cnVjdHVyZS5ncHIoKSwg
bm9kZS5zdHJ1Y3R1cmVTZXQoKS5sYXN0KCkpLAotICAgICAgICAgICAgICAgIG5vZGUub3AoKSA9
PSBGb3J3YXJkQ2hlY2tTdHJ1Y3R1cmUpOworICAgICAgICAgICAgICAgIGRpcmVjdGlvbik7CiAg
ICAgICAgICAgICAKICAgICAgICAgICAgIGRvbmUubGluaygmbV9qaXQpOwogICAgICAgICB9CkBA
IC00MjE2LDEzICs0MTg3LDE2IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSYg
bm9kZSkKICAgICAgICAgLy8gd2UnbGwganVzdCByZWx5IG9uIHRoZSBmYWN0IHRoYXQgd2hlbiBh
IHdhdGNocG9pbnQgZmlyZXMgdGhlbiB0aGF0J3MKICAgICAgICAgLy8gcXVpdGUgYSBoaW50IGFs
cmVhZHkuCiAgICAgICAgIAorICAgICAgICBTcGVjdWxhdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24g
PSBub2RlLm9wKCkgPT0gRm9yd2FyZFN0cnVjdHVyZVRyYW5zaXRpb25XYXRjaHBvaW50ID8gRm9y
d2FyZFNwZWN1bGF0aW9uIDogQmFja3dhcmRTcGVjdWxhdGlvbjsKKwogICAgICAgICBtX2ppdC5h
ZGRXZWFrUmVmZXJlbmNlKG5vZGUuc3RydWN0dXJlKCkpOwogICAgICAgICBub2RlLnN0cnVjdHVy
ZSgpLT5hZGRUcmFuc2l0aW9uV2F0Y2hwb2ludCgKLSAgICAgICAgICAgIHNwZWN1bGF0aW9uV2F0
Y2hwb2ludFdpdGhDb25kaXRpb25hbERpcmVjdGlvbigKLSAgICAgICAgICAgICAgICBCYWRDYWNo
ZSwgbm9kZS5vcCgpID09IEZvcndhcmRTdHJ1Y3R1cmVUcmFuc2l0aW9uV2F0Y2hwb2ludCkpOwor
ICAgICAgICAgICAgc3BlY3VsYXRpb25XYXRjaHBvaW50KAorICAgICAgICAgICAgICAgIG1faml0
LmdyYXBoKClbbm9kZS5jaGlsZDEoKV0ub3AoKSA9PSBXZWFrSlNDb25zdGFudCA/IEJhZFdlYWtD
b25zdGFudENhY2hlIDogQmFkQ2FjaGUsCisgICAgICAgICAgICAgICAgZGlyZWN0aW9uKSk7CiAg
ICAgICAgIAogI2lmICFBU1NFUlRfRElTQUJMRUQKLSAgICAgICAgU3BlY3VsYXRlQ2VsbE9wZXJh
bmQgb3AxKHRoaXMsIG5vZGUuY2hpbGQxKCkpOworICAgICAgICBTcGVjdWxhdGVDZWxsT3BlcmFu
ZCBvcDEodGhpcywgbm9kZS5jaGlsZDEoKSwgZGlyZWN0aW9uKTsKICAgICAgICAgSklUQ29tcGls
ZXI6Okp1bXAgaXNPSyA9IG1faml0LmJyYW5jaFB0cihKSVRDb21waWxlcjo6RXF1YWwsIEpJVENv
bXBpbGVyOjpBZGRyZXNzKG9wMS5ncHIoKSwgSlNDZWxsOjpzdHJ1Y3R1cmVPZmZzZXQoKSksIFRy
dXN0ZWRJbW1QdHIobm9kZS5zdHJ1Y3R1cmUoKSkpOwogICAgICAgICBtX2ppdC5icmVha3BvaW50
KCk7CiAgICAgICAgIGlzT0subGluaygmbV9qaXQpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCShyZXZpc2lvbiAxMzU3NzQp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xMDYyLDcgKzEwNjIsNyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpl
bWl0Q2FsbChOb2RlJiBub2RlCiB9CiAKIHRlbXBsYXRlPGJvb2wgc3RyaWN0PgotR1BSUmVnIFNw
ZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRlSW50SW50ZXJuYWwoTm9kZUluZGV4IG5vZGVJbmRl
eCwgRGF0YUZvcm1hdCYgcmV0dXJuRm9ybWF0KQorR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxs
U3BlY3VsYXRlSW50SW50ZXJuYWwoTm9kZUluZGV4IG5vZGVJbmRleCwgRGF0YUZvcm1hdCYgcmV0
dXJuRm9ybWF0LCBTcGVjdWxhdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24pCiB7CiAjaWYgREZHX0VO
QUJMRShERUJVR19WRVJCT1NFKQogICAgIGRhdGFMb2dGKCJTcGVjSW50QCVkICAgIiwgbm9kZUlu
ZGV4KTsKQEAgLTEwNzUsNyArMTA3NSw3IEBAIEdQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNw
ZWN1bGF0ZUludEkKICAgICBzd2l0Y2ggKGluZm8ucmVnaXN0ZXJGb3JtYXQoKSkgewogICAgIGNh
c2UgRGF0YUZvcm1hdE5vbmU6IHsKICAgICAgICAgaWYgKChub2RlLmhhc0NvbnN0YW50KCkgJiYg
IWlzSW50MzJDb25zdGFudChub2RlSW5kZXgpKSB8fCBpbmZvLnNwaWxsRm9ybWF0KCkgPT0gRGF0
YUZvcm1hdERvdWJsZSkgewotICAgICAgICAgICAgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRp
b24oVW5jb3VudGFibGUsIEpTVmFsdWVSZWdzKCksIE5vTm9kZSk7CisgICAgICAgICAgICB0ZXJt
aW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJsZSwgSlNWYWx1ZVJlZ3MoKSwgTm9O
b2RlLCBkaXJlY3Rpb24pOwogICAgICAgICAgICAgcmV0dXJuRm9ybWF0ID0gRGF0YUZvcm1hdElu
dGVnZXI7CiAgICAgICAgICAgICByZXR1cm4gYWxsb2NhdGUoKTsKICAgICAgICAgfQpAQCAtMTEy
Niw3ICsxMTI2LDcgQEAgR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRlSW50SQog
ICAgICAgICBHUFJSZWcgZ3ByID0gaW5mby5ncHIoKTsKICAgICAgICAgbV9ncHJzLmxvY2soZ3By
KTsKICAgICAgICAgaWYgKCFpc0ludDMyU3BlY3VsYXRpb24odHlwZSkpCi0gICAgICAgICAgICBz
cGVjdWxhdGlvbkNoZWNrKEJhZFR5cGUsIEpTVmFsdWVSZWdzKGdwciksIG5vZGVJbmRleCwgbV9q
aXQuYnJhbmNoNjQoTWFjcm9Bc3NlbWJsZXI6OkJlbG93LCBncHIsIEdQUkluZm86OnRhZ1R5cGVO
dW1iZXJSZWdpc3RlcikpOworICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBK
U1ZhbHVlUmVncyhncHIpLCBub2RlSW5kZXgsIG1faml0LmJyYW5jaDY0KE1hY3JvQXNzZW1ibGVy
OjpCZWxvdywgZ3ByLCBHUFJJbmZvOjp0YWdUeXBlTnVtYmVyUmVnaXN0ZXIpLCBkaXJlY3Rpb24p
OwogICAgICAgICBpbmZvLmZpbGxKU1ZhbHVlKCptX3N0cmVhbSwgZ3ByLCBEYXRhRm9ybWF0SlNJ
bnRlZ2VyKTsKICAgICAgICAgLy8gSWYgIXN0cmljdCB3ZSdyZSBkb25lLCByZXR1cm4uCiAgICAg
ICAgIGlmICghc3RyaWN0KSB7CkBAIC0xMTgzLDcgKzExODMsNyBAQCBHUFJSZWcgU3BlY3VsYXRp
dmVKSVQ6OmZpbGxTcGVjdWxhdGVJbnRJCiAgICAgY2FzZSBEYXRhRm9ybWF0Qm9vbGVhbjoKICAg
ICBjYXNlIERhdGFGb3JtYXRKU0NlbGw6CiAgICAgY2FzZSBEYXRhRm9ybWF0SlNCb29sZWFuOiB7
Ci0gICAgICAgIHRlcm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uKFVuY291bnRhYmxlLCBKU1Zh
bHVlUmVncygpLCBOb05vZGUpOworICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlv
bihVbmNvdW50YWJsZSwgSlNWYWx1ZVJlZ3MoKSwgTm9Ob2RlLCBkaXJlY3Rpb24pOwogICAgICAg
ICByZXR1cm5Gb3JtYXQgPSBEYXRhRm9ybWF0SW50ZWdlcjsKICAgICAgICAgcmV0dXJuIGFsbG9j
YXRlKCk7CiAgICAgfQpAQCAtMTE5NywyMCArMTE5NywyMCBAQCBHUFJSZWcgU3BlY3VsYXRpdmVK
SVQ6OmZpbGxTcGVjdWxhdGVJbnRJCiAgICAgfQogfQogCi1HUFJSZWcgU3BlY3VsYXRpdmVKSVQ6
OmZpbGxTcGVjdWxhdGVJbnQoTm9kZUluZGV4IG5vZGVJbmRleCwgRGF0YUZvcm1hdCYgcmV0dXJu
Rm9ybWF0KQorR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRlSW50KE5vZGVJbmRl
eCBub2RlSW5kZXgsIERhdGFGb3JtYXQmIHJldHVybkZvcm1hdCwgU3BlY3VsYXRpb25EaXJlY3Rp
b24gZGlyZWN0aW9uKQogewotICAgIHJldHVybiBmaWxsU3BlY3VsYXRlSW50SW50ZXJuYWw8ZmFs
c2U+KG5vZGVJbmRleCwgcmV0dXJuRm9ybWF0KTsKKyAgICByZXR1cm4gZmlsbFNwZWN1bGF0ZUlu
dEludGVybmFsPGZhbHNlPihub2RlSW5kZXgsIHJldHVybkZvcm1hdCwgZGlyZWN0aW9uKTsKIH0K
IAogR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRlSW50U3RyaWN0KE5vZGVJbmRl
eCBub2RlSW5kZXgpCiB7CiAgICAgRGF0YUZvcm1hdCBtdXN0QmVEYXRhRm9ybWF0SW50ZWdlcjsK
LSAgICBHUFJSZWcgcmVzdWx0ID0gZmlsbFNwZWN1bGF0ZUludEludGVybmFsPHRydWU+KG5vZGVJ
bmRleCwgbXVzdEJlRGF0YUZvcm1hdEludGVnZXIpOworICAgIEdQUlJlZyByZXN1bHQgPSBmaWxs
U3BlY3VsYXRlSW50SW50ZXJuYWw8dHJ1ZT4obm9kZUluZGV4LCBtdXN0QmVEYXRhRm9ybWF0SW50
ZWdlciwgQmFja3dhcmRTcGVjdWxhdGlvbik7CiAgICAgQVNTRVJUKG11c3RCZURhdGFGb3JtYXRJ
bnRlZ2VyID09IERhdGFGb3JtYXRJbnRlZ2VyKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1G
UFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVEb3VibGUoTm9kZUluZGV4IG5vZGVJ
bmRleCkKK0ZQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZURvdWJsZShOb2RlSW5k
ZXggbm9kZUluZGV4LCBTcGVjdWxhdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24pCiB7CiAjaWYgREZH
X0VOQUJMRShERUJVR19WRVJCT1NFKQogICAgIGRhdGFMb2dGKCJTcGVjRG91YmxlQCVkICAgIiwg
bm9kZUluZGV4KTsKQEAgLTEyNDQsNyArMTI0NCw3IEBAIEZQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6
ZmlsbFNwZWN1bGF0ZURvdWIKICAgICAgICAgICAgICAgICBpbmZvLmZpbGxEb3VibGUoKm1fc3Ry
ZWFtLCBmcHIpOwogICAgICAgICAgICAgICAgIHJldHVybiBmcHI7CiAgICAgICAgICAgICB9Ci0g
ICAgICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJsZSwgSlNW
YWx1ZVJlZ3MoKSwgTm9Ob2RlKTsKKyAgICAgICAgICAgIHRlcm1pbmF0ZVNwZWN1bGF0aXZlRXhl
Y3V0aW9uKFVuY291bnRhYmxlLCBKU1ZhbHVlUmVncygpLCBOb05vZGUsIGRpcmVjdGlvbik7CiAg
ICAgICAgICAgICByZXR1cm4gZnByQWxsb2NhdGUoKTsKICAgICAgICAgfQogICAgICAgICAKQEAg
LTEyODcsNyArMTI4Nyw3IEBAIEZQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZURv
dWIKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAKICAgICBjYXNlIERhdGFGb3JtYXRD
ZWxsOgotICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJsZSwg
SlNWYWx1ZVJlZ3MoKSwgTm9Ob2RlKTsKKyAgICAgICAgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVj
dXRpb24oVW5jb3VudGFibGUsIEpTVmFsdWVSZWdzKCksIE5vTm9kZSwgZGlyZWN0aW9uKTsKICAg
ICAgICAgcmV0dXJuIGZwckFsbG9jYXRlKCk7CiAKICAgICBjYXNlIERhdGFGb3JtYXRKU0NlbGw6
CkBAIC0xMzAxLDcgKzEzMDEsNyBAQCBGUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxh
dGVEb3ViCiAgICAgICAgIEpJVENvbXBpbGVyOjpKdW1wIGlzSW50ZWdlciA9IG1faml0LmJyYW5j
aDY0KE1hY3JvQXNzZW1ibGVyOjpBYm92ZU9yRXF1YWwsIGpzVmFsdWVHcHIsIEdQUkluZm86OnRh
Z1R5cGVOdW1iZXJSZWdpc3Rlcik7CiAKICAgICAgICAgaWYgKCFpc051bWJlclNwZWN1bGF0aW9u
KHR5cGUpKQotICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlUmVn
cyhqc1ZhbHVlR3ByKSwgbm9kZUluZGV4LCBtX2ppdC5icmFuY2hUZXN0NjQoTWFjcm9Bc3NlbWJs
ZXI6Olplcm8sIGpzVmFsdWVHcHIsIEdQUkluZm86OnRhZ1R5cGVOdW1iZXJSZWdpc3RlcikpOwor
ICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlUmVncyhqc1ZhbHVl
R3ByKSwgbm9kZUluZGV4LCBtX2ppdC5icmFuY2hUZXN0NjQoTWFjcm9Bc3NlbWJsZXI6Olplcm8s
IGpzVmFsdWVHcHIsIEdQUkluZm86OnRhZ1R5cGVOdW1iZXJSZWdpc3RlciksIGRpcmVjdGlvbik7
CiAKICAgICAgICAgLy8gRmlyc3QsIGlmIHdlIGdldCBoZXJlIHdlIGhhdmUgYSBkb3VibGUgZW5j
b2RlZCBhcyBhIEpTVmFsdWUKICAgICAgICAgbV9qaXQubW92ZShqc1ZhbHVlR3ByLCB0ZW1wR3By
KTsKQEAgLTEzNjQsNyArMTM2NCw3IEBAIEZQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1
bGF0ZURvdWIKICAgICB9CiB9CiAKLUdQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0
ZUNlbGwoTm9kZUluZGV4IG5vZGVJbmRleCwgYm9vbCBpc0ZvcndhcmRTcGVjdWxhdGlvbikKK0dQ
UlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUNlbGwoTm9kZUluZGV4IG5vZGVJbmRl
eCwgU3BlY3VsYXRpb25EaXJlY3Rpb24gZGlyZWN0aW9uKQogewogI2lmIERGR19FTkFCTEUoREVC
VUdfVkVSQk9TRSkKICAgICBkYXRhTG9nRigiU3BlY0NlbGxAJWQgICAiLCBub2RlSW5kZXgpOwpA
QCAtMTM3Nyw3ICsxMzc3LDcgQEAgR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRl
Q2VsbAogICAgIHN3aXRjaCAoaW5mby5yZWdpc3RlckZvcm1hdCgpKSB7CiAgICAgY2FzZSBEYXRh
Rm9ybWF0Tm9uZTogewogICAgICAgICBpZiAoaW5mby5zcGlsbEZvcm1hdCgpID09IERhdGFGb3Jt
YXRJbnRlZ2VyIHx8IGluZm8uc3BpbGxGb3JtYXQoKSA9PSBEYXRhRm9ybWF0RG91YmxlKSB7Ci0g
ICAgICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbldpdGhDb25kaXRpb25hbERp
cmVjdGlvbihVbmNvdW50YWJsZSwgSlNWYWx1ZVJlZ3MoKSwgTm9Ob2RlLCBpc0ZvcndhcmRTcGVj
dWxhdGlvbik7CisgICAgICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNv
dW50YWJsZSwgSlNWYWx1ZVJlZ3MoKSwgTm9Ob2RlLCBkaXJlY3Rpb24pOwogICAgICAgICAgICAg
cmV0dXJuIGFsbG9jYXRlKCk7CiAgICAgICAgIH0KICAgICAgICAgCkBAIC0xMzkxLDcgKzEzOTEs
NyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVDZWxsCiAgICAgICAgICAg
ICAgICAgaW5mby5maWxsSlNWYWx1ZSgqbV9zdHJlYW0sIGdwciwgRGF0YUZvcm1hdEpTQ2VsbCk7
CiAgICAgICAgICAgICAgICAgcmV0dXJuIGdwcjsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IHRlcm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uV2l0aENvbmRpdGlvbmFsRGlyZWN0aW9uKFVu
Y291bnRhYmxlLCBKU1ZhbHVlUmVncygpLCBOb05vZGUsIGlzRm9yd2FyZFNwZWN1bGF0aW9uKTsK
KyAgICAgICAgICAgIHRlcm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uKFVuY291bnRhYmxlLCBK
U1ZhbHVlUmVncygpLCBOb05vZGUsIGRpcmVjdGlvbik7CiAgICAgICAgICAgICByZXR1cm4gZ3By
OwogICAgICAgICB9CiAgICAgICAgIEFTU0VSVChpbmZvLnNwaWxsRm9ybWF0KCkgJiBEYXRhRm9y
bWF0SlMpOwpAQCAtMTQwMCw3ICsxNDAwLDcgQEAgR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxs
U3BlY3VsYXRlQ2VsbAogCiAgICAgICAgIGluZm8uZmlsbEpTVmFsdWUoKm1fc3RyZWFtLCBncHIs
IERhdGFGb3JtYXRKUyk7CiAgICAgICAgIGlmICghaXNDZWxsU3BlY3VsYXRpb24odHlwZSkpCi0g
ICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrV2l0aENvbmRpdGlvbmFsRGlyZWN0aW9uKEJhZFR5
cGUsIEpTVmFsdWVSZWdzKGdwciksIG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoVGVzdDY0KE1hY3Jv
QXNzZW1ibGVyOjpOb25aZXJvLCBncHIsIEdQUkluZm86OnRhZ01hc2tSZWdpc3RlciksIGlzRm9y
d2FyZFNwZWN1bGF0aW9uKTsKKyAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soQmFkVHlwZSwg
SlNWYWx1ZVJlZ3MoZ3ByKSwgbm9kZUluZGV4LCBtX2ppdC5icmFuY2hUZXN0NjQoTWFjcm9Bc3Nl
bWJsZXI6Ok5vblplcm8sIGdwciwgR1BSSW5mbzo6dGFnTWFza1JlZ2lzdGVyKSwgZGlyZWN0aW9u
KTsKICAgICAgICAgaW5mby5maWxsSlNWYWx1ZSgqbV9zdHJlYW0sIGdwciwgRGF0YUZvcm1hdEpT
Q2VsbCk7CiAgICAgICAgIHJldHVybiBncHI7CiAgICAgfQpAQCAtMTQxNiw3ICsxNDE2LDcgQEAg
R1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3BlY3VsYXRlQ2VsbAogICAgICAgICBHUFJSZWcg
Z3ByID0gaW5mby5ncHIoKTsKICAgICAgICAgbV9ncHJzLmxvY2soZ3ByKTsKICAgICAgICAgaWYg
KCFpc0NlbGxTcGVjdWxhdGlvbih0eXBlKSkKLSAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2tX
aXRoQ29uZGl0aW9uYWxEaXJlY3Rpb24oQmFkVHlwZSwgSlNWYWx1ZVJlZ3MoZ3ByKSwgbm9kZUlu
ZGV4LCBtX2ppdC5icmFuY2hUZXN0NjQoTWFjcm9Bc3NlbWJsZXI6Ok5vblplcm8sIGdwciwgR1BS
SW5mbzo6dGFnTWFza1JlZ2lzdGVyKSwgaXNGb3J3YXJkU3BlY3VsYXRpb24pOworICAgICAgICAg
ICAgc3BlY3VsYXRpb25DaGVjayhCYWRUeXBlLCBKU1ZhbHVlUmVncyhncHIpLCBub2RlSW5kZXgs
IG1faml0LmJyYW5jaFRlc3Q2NChNYWNyb0Fzc2VtYmxlcjo6Tm9uWmVybywgZ3ByLCBHUFJJbmZv
Ojp0YWdNYXNrUmVnaXN0ZXIpLCBkaXJlY3Rpb24pOwogICAgICAgICBpbmZvLmZpbGxKU1ZhbHVl
KCptX3N0cmVhbSwgZ3ByLCBEYXRhRm9ybWF0SlNDZWxsKTsKICAgICAgICAgcmV0dXJuIGdwcjsK
ICAgICB9CkBAIC0xNDI3LDcgKzE0MjcsNyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxT
cGVjdWxhdGVDZWxsCiAgICAgY2FzZSBEYXRhRm9ybWF0RG91YmxlOgogICAgIGNhc2UgRGF0YUZv
cm1hdEpTQm9vbGVhbjoKICAgICBjYXNlIERhdGFGb3JtYXRCb29sZWFuOiB7Ci0gICAgICAgIHRl
cm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uV2l0aENvbmRpdGlvbmFsRGlyZWN0aW9uKFVuY291
bnRhYmxlLCBKU1ZhbHVlUmVncygpLCBOb05vZGUsIGlzRm9yd2FyZFNwZWN1bGF0aW9uKTsKKyAg
ICAgICAgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb24oVW5jb3VudGFibGUsIEpTVmFsdWVS
ZWdzKCksIE5vTm9kZSwgZGlyZWN0aW9uKTsKICAgICAgICAgcmV0dXJuIGFsbG9jYXRlKCk7CiAg
ICAgfQogCkBAIC0xNDQwLDcgKzE0NDAsNyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxT
cGVjdWxhdGVDZWxsCiAgICAgfQogfQogCi1HUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVj
dWxhdGVCb29sZWFuKE5vZGVJbmRleCBub2RlSW5kZXgpCitHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6
OmZpbGxTcGVjdWxhdGVCb29sZWFuKE5vZGVJbmRleCBub2RlSW5kZXgsIFNwZWN1bGF0aW9uRGly
ZWN0aW9uIGRpcmVjdGlvbikKIHsKICNpZiBERkdfRU5BQkxFKERFQlVHX1ZFUkJPU0UpCiAgICAg
ZGF0YUxvZ0YoIlNwZWNCb29sQCVkICAgIiwgbm9kZUluZGV4KTsKQEAgLTE0NTMsNyArMTQ1Myw3
IEBAIEdQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZUJvb2wKICAgICBzd2l0Y2gg
KGluZm8ucmVnaXN0ZXJGb3JtYXQoKSkgewogICAgIGNhc2UgRGF0YUZvcm1hdE5vbmU6IHsKICAg
ICAgICAgaWYgKGluZm8uc3BpbGxGb3JtYXQoKSA9PSBEYXRhRm9ybWF0SW50ZWdlciB8fCBpbmZv
LnNwaWxsRm9ybWF0KCkgPT0gRGF0YUZvcm1hdERvdWJsZSkgewotICAgICAgICAgICAgdGVybWlu
YXRlU3BlY3VsYXRpdmVFeGVjdXRpb24oVW5jb3VudGFibGUsIEpTVmFsdWVSZWdzKCksIE5vTm9k
ZSk7CisgICAgICAgICAgICB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJs
ZSwgSlNWYWx1ZVJlZ3MoKSwgTm9Ob2RlLCBkaXJlY3Rpb24pOwogICAgICAgICAgICAgcmV0dXJu
IGFsbG9jYXRlKCk7CiAgICAgICAgIH0KICAgICAgICAgCkBAIC0xNDY3LDcgKzE0NjcsNyBAQCBH
UFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVCb29sCiAgICAgICAgICAgICAgICAg
aW5mby5maWxsSlNWYWx1ZSgqbV9zdHJlYW0sIGdwciwgRGF0YUZvcm1hdEpTQm9vbGVhbik7CiAg
ICAgICAgICAgICAgICAgcmV0dXJuIGdwcjsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHRl
cm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uKFVuY291bnRhYmxlLCBKU1ZhbHVlUmVncygpLCBO
b05vZGUpOworICAgICAgICAgICAgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb24oVW5jb3Vu
dGFibGUsIEpTVmFsdWVSZWdzKCksIE5vTm9kZSwgZGlyZWN0aW9uKTsKICAgICAgICAgICAgIHJl
dHVybiBncHI7CiAgICAgICAgIH0KICAgICAgICAgQVNTRVJUKGluZm8uc3BpbGxGb3JtYXQoKSAm
IERhdGFGb3JtYXRKUyk7CkBAIC0xNDc3LDcgKzE0NzcsNyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVK
SVQ6OmZpbGxTcGVjdWxhdGVCb29sCiAgICAgICAgIGluZm8uZmlsbEpTVmFsdWUoKm1fc3RyZWFt
LCBncHIsIERhdGFGb3JtYXRKUyk7CiAgICAgICAgIGlmICghaXNCb29sZWFuU3BlY3VsYXRpb24o
dHlwZSkpIHsKICAgICAgICAgICAgIG1faml0LnhvcjY0KFRydXN0ZWRJbW0zMihzdGF0aWNfY2Fz
dDxpbnQzMl90PihWYWx1ZUZhbHNlKSksIGdwcik7Ci0gICAgICAgICAgICBzcGVjdWxhdGlvbkNo
ZWNrKEJhZFR5cGUsIEpTVmFsdWVSZWdzKGdwciksIG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoVGVz
dDY0KE1hY3JvQXNzZW1ibGVyOjpOb25aZXJvLCBncHIsIFRydXN0ZWRJbW0zMihzdGF0aWNfY2Fz
dDxpbnQzMl90Pih+MSkpKSwgU3BlY3VsYXRpb25SZWNvdmVyeShCb29sZWFuU3BlY3VsYXRpb25D
aGVjaywgZ3ByLCBJbnZhbGlkR1BSUmVnKSk7CisgICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNr
KEJhZFR5cGUsIEpTVmFsdWVSZWdzKGdwciksIG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoVGVzdDY0
KE1hY3JvQXNzZW1ibGVyOjpOb25aZXJvLCBncHIsIFRydXN0ZWRJbW0zMihzdGF0aWNfY2FzdDxp
bnQzMl90Pih+MSkpKSwgU3BlY3VsYXRpb25SZWNvdmVyeShCb29sZWFuU3BlY3VsYXRpb25DaGVj
aywgZ3ByLCBJbnZhbGlkR1BSUmVnKSwgZGlyZWN0aW9uKTsKICAgICAgICAgICAgIG1faml0Lnhv
cjY0KFRydXN0ZWRJbW0zMihzdGF0aWNfY2FzdDxpbnQzMl90PihWYWx1ZUZhbHNlKSksIGdwcik7
CiAgICAgICAgIH0KICAgICAgICAgaW5mby5maWxsSlNWYWx1ZSgqbV9zdHJlYW0sIGdwciwgRGF0
YUZvcm1hdEpTQm9vbGVhbik7CkBAIC0xNDk2LDcgKzE0OTYsNyBAQCBHUFJSZWcgU3BlY3VsYXRp
dmVKSVQ6OmZpbGxTcGVjdWxhdGVCb29sCiAgICAgICAgIG1fZ3Bycy5sb2NrKGdwcik7CiAgICAg
ICAgIGlmICghaXNCb29sZWFuU3BlY3VsYXRpb24odHlwZSkpIHsKICAgICAgICAgICAgIG1faml0
LnhvcjY0KFRydXN0ZWRJbW0zMihzdGF0aWNfY2FzdDxpbnQzMl90PihWYWx1ZUZhbHNlKSksIGdw
cik7Ci0gICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKEJhZFR5cGUsIEpTVmFsdWVSZWdzKGdw
ciksIG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoVGVzdDY0KE1hY3JvQXNzZW1ibGVyOjpOb25aZXJv
LCBncHIsIFRydXN0ZWRJbW0zMihzdGF0aWNfY2FzdDxpbnQzMl90Pih+MSkpKSwgU3BlY3VsYXRp
b25SZWNvdmVyeShCb29sZWFuU3BlY3VsYXRpb25DaGVjaywgZ3ByLCBJbnZhbGlkR1BSUmVnKSk7
CisgICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKEJhZFR5cGUsIEpTVmFsdWVSZWdzKGdwciks
IG5vZGVJbmRleCwgbV9qaXQuYnJhbmNoVGVzdDY0KE1hY3JvQXNzZW1ibGVyOjpOb25aZXJvLCBn
cHIsIFRydXN0ZWRJbW0zMihzdGF0aWNfY2FzdDxpbnQzMl90Pih+MSkpKSwgU3BlY3VsYXRpb25S
ZWNvdmVyeShCb29sZWFuU3BlY3VsYXRpb25DaGVjaywgZ3ByLCBJbnZhbGlkR1BSUmVnKSwgZGly
ZWN0aW9uKTsKICAgICAgICAgICAgIG1faml0LnhvcjY0KFRydXN0ZWRJbW0zMihzdGF0aWNfY2Fz
dDxpbnQzMl90PihWYWx1ZUZhbHNlKSksIGdwcik7CiAgICAgICAgIH0KICAgICAgICAgaW5mby5m
aWxsSlNWYWx1ZSgqbV9zdHJlYW0sIGdwciwgRGF0YUZvcm1hdEpTQm9vbGVhbik7CkBAIC0xNTA5
LDcgKzE1MDksNyBAQCBHUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVCb29sCiAg
ICAgY2FzZSBEYXRhRm9ybWF0RG91YmxlOgogICAgIGNhc2UgRGF0YUZvcm1hdEpTQ2VsbDoKICAg
ICBjYXNlIERhdGFGb3JtYXRDZWxsOiB7Ci0gICAgICAgIHRlcm1pbmF0ZVNwZWN1bGF0aXZlRXhl
Y3V0aW9uKFVuY291bnRhYmxlLCBKU1ZhbHVlUmVncygpLCBOb05vZGUpOworICAgICAgICB0ZXJt
aW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihVbmNvdW50YWJsZSwgSlNWYWx1ZVJlZ3MoKSwgTm9O
b2RlLCBkaXJlY3Rpb24pOwogICAgICAgICByZXR1cm4gYWxsb2NhdGUoKTsKICAgICB9CiAgICAg
ICAgIApAQCAtMjIxOSwzOSArMjIxOSw5IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUo
Tm9kZSYgbm9kZSkKICAgICAgICAgLy8gc3RhY2suCiAgICAgICAgIGNvbXBpbGVNb3ZIaW50KG5v
ZGUpOwogICAgICAgICAKLSAgICAgICAgLy8gQXMgZmFyIGFzIE9TUiBpcyBjb25jZXJuZWQsIHdl
J3JlIG9uIHRoZSBieXRlY29kZSBpbmRleCBjb3JyZXNwb25kaW5nCi0gICAgICAgIC8vIHRvIHRo
ZSAqbmV4dCogaW5zdHJ1Y3Rpb24sIHNpbmNlIHdlJ3ZlIGFscmVhZHkgImV4ZWN1dGVkIiB0aGUK
LSAgICAgICAgLy8gU2V0TG9jYWwgYW5kIHdoYXRldmVyIG90aGVyIERGRyBOb2RlcyBhcmUgYXNz
b2NpYXRlZCB3aXRoIHRoZSBzYW1lCi0gICAgICAgIC8vIGJ5dGVjb2RlIGluZGV4IGFzIHRoZSBT
ZXRMb2NhbC4KLSAgICAgICAgQVNTRVJUKG1fY29kZU9yaWdpbkZvck9TUiA9PSBub2RlLmNvZGVP
cmlnaW4pOwotICAgICAgICBOb2RlKiBuZXh0Tm9kZSA9ICZhdChibG9jaygpLT5hdChtX2luZGV4
SW5CbG9jayArIDEpKTsKLQotICAgICAgICAvLyBCdXQgZXZlbiBtb3JlIG9kZGx5LCB3ZSBuZWVk
IHRvIGJlIHN1cGVyIGNhcmVmdWwgYWJvdXQgdGhlIGZvbGxvd2luZwotICAgICAgICAvLyBzZXF1
ZW5jZToKLSAgICAgICAgLy8KLSAgICAgICAgLy8gYTogRm9vKCkKLSAgICAgICAgLy8gYjogU2V0
TG9jYWwoQGEpCi0gICAgICAgIC8vIGM6IEZsdXNoKEBiKQotICAgICAgICAvLwotICAgICAgICAv
LyBUaGlzIG5leHQgcGllY2Ugb2YgY3JhenkgdGFrZXMgY2FyZSBvZiB0aGlzLgotICAgICAgICBp
ZiAobmV4dE5vZGUtPm9wKCkgPT0gRmx1c2ggJiYgbmV4dE5vZGUtPmNoaWxkMSgpID09IG1fY29t
cGlsZUluZGV4KQotICAgICAgICAgICAgbmV4dE5vZGUgPSAmYXQoYmxvY2soKS0+YXQobV9pbmRl
eEluQmxvY2sgKyAyKSk7Ci0gICAgICAgIAotICAgICAgICAvLyBPZGRseSwgaXQncyBwb3NzaWJs
ZSBmb3IgdGhlIGJ5dGVjb2RlIGluZGV4IGZvciB0aGUgbmV4dCBub2RlIHRvIGJlCi0gICAgICAg
IC8vIGVxdWFsIHRvIG91cnMuIFRoaXMgd2lsbCBoYXBwZW4gZm9yIG9wX3Bvc3RfaW5jLiBBbmQs
IGV2ZW4gbW9yZSBvZGRseSwKLSAgICAgICAgLy8gdGhpcyBpcyBqdXN0IGZpbmUuIE9yZGluYXJp
bHksIHRoaXMgd291bGRuJ3QgYmUgZmluZSwgc2luY2UgaWYgdGhlCi0gICAgICAgIC8vIG5leHQg
bm9kZSBmYWlsZWQgT1NSIHRoZW4gd2UnZCBiZSBPU1ItaW5nIHdpdGggdGhpcyBTZXRMb2NhbCdz
IGxvY2FsCi0gICAgICAgIC8vIHZhcmlhYmxlIGFscmVhZHkgc2V0IGV2ZW4gdGhvdWdoIGZyb20g
dGhlIHN0YW5kcG9pbnQgb2YgdGhlIG9sZCBKSVQsCi0gICAgICAgIC8vIHRoaXMgU2V0TG9jYWwg
c2hvdWxkIG5vdCBoYXZlIGV4ZWN1dGVkLiBCdXQgZm9yIG9wX3Bvc3RfaW5jLCBpdCdzIGp1c3QK
LSAgICAgICAgLy8gZmluZSwgYmVjYXVzZSB0aGlzIFNldExvY2FsJ3MgbG9jYWwgKGkuZS4gdGhl
IExIUyBpbiBhIHggPSB5KysKLSAgICAgICAgLy8gc3RhdGVtZW50KSB3b3VsZCBiZSBkZWFkIGFu
eXdheSAtIHNvIHRoZSBmYWN0IHRoYXQgREZHIHdvdWxkIGhhdmUKLSAgICAgICAgLy8gYWxyZWFk
eSBtYWRlIHRoZSBhc3NpZ25tZW50LCBhbmQgYmFrZWQgaXQgaW50byB0aGUgc3RhY2sgZHVyaW5n
Ci0gICAgICAgIC8vIE9TUiBleGl0LCB3b3VsZCBub3QgYmUgdmlzaWJsZSB0byB0aGUgb2xkIEpJ
VCBpbiBhbnkgd2F5LgotICAgICAgICBtX2NvZGVPcmlnaW5Gb3JPU1IgPSBuZXh0Tm9kZS0+Y29k
ZU9yaWdpbjsKLSAgICAgICAgCiAgICAgICAgIGlmICghbm9kZS52YXJpYWJsZUFjY2Vzc0RhdGEo
KS0+aXNDYXB0dXJlZCgpICYmICFtX2ppdC5ncmFwaCgpLmlzQ3JlYXRlZFRoaXNBcmd1bWVudChu
b2RlLmxvY2FsKCkpKSB7CiAgICAgICAgICAgICBpZiAobm9kZS52YXJpYWJsZUFjY2Vzc0RhdGEo
KS0+c2hvdWxkVXNlRG91YmxlRm9ybWF0KCkpIHsKLSAgICAgICAgICAgICAgICBTcGVjdWxhdGVE
b3VibGVPcGVyYW5kIHZhbHVlKHRoaXMsIG5vZGUuY2hpbGQxKCkpOworICAgICAgICAgICAgICAg
IFNwZWN1bGF0ZURvdWJsZU9wZXJhbmQgdmFsdWUodGhpcywgbm9kZS5jaGlsZDEoKSwgRm9yd2Fy
ZFNwZWN1bGF0aW9uKTsKICAgICAgICAgICAgICAgICBtX2ppdC5zdG9yZURvdWJsZSh2YWx1ZS5m
cHIoKSwgSklUQ29tcGlsZXI6OmFkZHJlc3NGb3Iobm9kZS5sb2NhbCgpKSk7CiAgICAgICAgICAg
ICAgICAgbm9SZXN1bHQobV9jb21waWxlSW5kZXgpOwogICAgICAgICAgICAgICAgIC8vIEluZGlj
YXRlIHRoYXQgaXQncyBubyBsb25nZXIgbmVjZXNzYXJ5IHRvIHJldHJpZXZlIHRoZSB2YWx1ZSBv
ZgpAQCAtMjI2MywxNCArMjIzMywxNCBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5v
ZGUmIG5vZGUpCiAgICAgICAgIAogICAgICAgICAgICAgU3BlY3VsYXRlZFR5cGUgcHJlZGljdGVk
VHlwZSA9IG5vZGUudmFyaWFibGVBY2Nlc3NEYXRhKCktPmFyZ3VtZW50QXdhcmVQcmVkaWN0aW9u
KCk7CiAgICAgICAgICAgICBpZiAoaXNJbnQzMlNwZWN1bGF0aW9uKHByZWRpY3RlZFR5cGUpKSB7
Ci0gICAgICAgICAgICAgICAgU3BlY3VsYXRlSW50ZWdlck9wZXJhbmQgdmFsdWUodGhpcywgbm9k
ZS5jaGlsZDEoKSk7CisgICAgICAgICAgICAgICAgU3BlY3VsYXRlSW50ZWdlck9wZXJhbmQgdmFs
dWUodGhpcywgbm9kZS5jaGlsZDEoKSwgRm9yd2FyZFNwZWN1bGF0aW9uKTsKICAgICAgICAgICAg
ICAgICBtX2ppdC5zdG9yZTMyKHZhbHVlLmdwcigpLCBKSVRDb21waWxlcjo6cGF5bG9hZEZvcihu
b2RlLmxvY2FsKCkpKTsKICAgICAgICAgICAgICAgICBub1Jlc3VsdChtX2NvbXBpbGVJbmRleCk7
CiAgICAgICAgICAgICAgICAgcmVjb3JkU2V0TG9jYWwobm9kZS5sb2NhbCgpLCBWYWx1ZVNvdXJj
ZShJbnQzMkluSlNTdGFjaykpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAg
fQogICAgICAgICAgICAgaWYgKGlzQ2VsbFNwZWN1bGF0aW9uKHByZWRpY3RlZFR5cGUpKSB7Ci0g
ICAgICAgICAgICAgICAgU3BlY3VsYXRlQ2VsbE9wZXJhbmQgY2VsbCh0aGlzLCBub2RlLmNoaWxk
MSgpKTsKKyAgICAgICAgICAgICAgICBTcGVjdWxhdGVDZWxsT3BlcmFuZCBjZWxsKHRoaXMsIG5v
ZGUuY2hpbGQxKCksIEZvcndhcmRTcGVjdWxhdGlvbik7CiAgICAgICAgICAgICAgICAgR1BSUmVn
IGNlbGxHUFIgPSBjZWxsLmdwcigpOwogICAgICAgICAgICAgICAgIG1faml0LnN0b3JlNjQoY2Vs
bEdQUiwgSklUQ29tcGlsZXI6OmFkZHJlc3NGb3Iobm9kZS5sb2NhbCgpKSk7CiAgICAgICAgICAg
ICAgICAgbm9SZXN1bHQobV9jb21waWxlSW5kZXgpOwpAQCAtMjI3OCw3ICsyMjQ4LDcgQEAgdm9p
ZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2RlKQogICAgICAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKGlzQm9vbGVhblNwZWN1bGF0aW9u
KHByZWRpY3RlZFR5cGUpKSB7Ci0gICAgICAgICAgICAgICAgU3BlY3VsYXRlQm9vbGVhbk9wZXJh
bmQgYm9vbGVhbih0aGlzLCBub2RlLmNoaWxkMSgpKTsKKyAgICAgICAgICAgICAgICBTcGVjdWxh
dGVCb29sZWFuT3BlcmFuZCBib29sZWFuKHRoaXMsIG5vZGUuY2hpbGQxKCksIEZvcndhcmRTcGVj
dWxhdGlvbik7CiAgICAgICAgICAgICAgICAgbV9qaXQuc3RvcmU2NChib29sZWFuLmdwcigpLCBK
SVRDb21waWxlcjo6YWRkcmVzc0Zvcihub2RlLmxvY2FsKCkpKTsKICAgICAgICAgICAgICAgICBu
b1Jlc3VsdChtX2NvbXBpbGVJbmRleCk7CiAgICAgICAgICAgICAgICAgcmVjb3JkU2V0TG9jYWwo
bm9kZS5sb2NhbCgpLCBWYWx1ZVNvdXJjZShCb29sZWFuSW5KU1N0YWNrKSk7CkBAIC00MTEwLDcg
KzQwODAsOCBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICAKLSAgICAgICAgU3BlY3VsYXRlQ2Vs
bE9wZXJhbmQgYmFzZSh0aGlzLCBub2RlLmNoaWxkMSgpLCBub2RlLm9wKCkgPT0gRm9yd2FyZENo
ZWNrU3RydWN0dXJlKTsKKyAgICAgICAgU3BlY3VsYXRpb25EaXJlY3Rpb24gZGlyZWN0aW9uID0g
bm9kZS5vcCgpID09IEZvcndhcmRDaGVja1N0cnVjdHVyZSA/IEZvcndhcmRTcGVjdWxhdGlvbiA6
IEJhY2t3YXJkU3BlY3VsYXRpb247CisgICAgICAgIFNwZWN1bGF0ZUNlbGxPcGVyYW5kIGJhc2Uo
dGhpcywgbm9kZS5jaGlsZDEoKSwgZGlyZWN0aW9uKTsKICAgICAgICAgCiAgICAgICAgIEFTU0VS
VChub2RlLnN0cnVjdHVyZVNldCgpLnNpemUoKSk7CiAgICAgICAgIApAQCAtNDEyMSwxMyArNDA5
MiwxMyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUmIG5vZGUpCiAgICAgICAg
ICAgICBleGl0S2luZCA9IEJhZENhY2hlOwogICAgICAgICAKICAgICAgICAgaWYgKG5vZGUuc3Ry
dWN0dXJlU2V0KCkuc2l6ZSgpID09IDEpIHsKLSAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2tX
aXRoQ29uZGl0aW9uYWxEaXJlY3Rpb24oCisgICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKAog
ICAgICAgICAgICAgICAgIGV4aXRLaW5kLCBKU1ZhbHVlUmVncyhiYXNlLmdwcigpKSwgTm9Ob2Rl
LAogICAgICAgICAgICAgICAgIG1faml0LmJyYW5jaFdlYWtQdHIoCiAgICAgICAgICAgICAgICAg
ICAgIEpJVENvbXBpbGVyOjpOb3RFcXVhbCwKICAgICAgICAgICAgICAgICAgICAgSklUQ29tcGls
ZXI6OkFkZHJlc3MoYmFzZS5ncHIoKSwgSlNDZWxsOjpzdHJ1Y3R1cmVPZmZzZXQoKSksCiAgICAg
ICAgICAgICAgICAgICAgIG5vZGUuc3RydWN0dXJlU2V0KClbMF0pLAotICAgICAgICAgICAgICAg
IG5vZGUub3AoKSA9PSBGb3J3YXJkQ2hlY2tTdHJ1Y3R1cmUpOworICAgICAgICAgICAgICAgIGRp
cmVjdGlvbik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBHUFJUZW1wb3Jhcnkgc3Ry
dWN0dXJlKHRoaXMpOwogICAgICAgICAgICAgCkBAIC00MTM4LDExICs0MTA5LDExIEBAIHZvaWQg
U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSYgbm9kZSkKICAgICAgICAgICAgIGZvciAoc2l6
ZV90IGkgPSAwOyBpIDwgbm9kZS5zdHJ1Y3R1cmVTZXQoKS5zaXplKCkgLSAxOyArK2kpCiAgICAg
ICAgICAgICAgICAgZG9uZS5hcHBlbmQobV9qaXQuYnJhbmNoV2Vha1B0cihKSVRDb21waWxlcjo6
RXF1YWwsIHN0cnVjdHVyZS5ncHIoKSwgbm9kZS5zdHJ1Y3R1cmVTZXQoKVtpXSkpOwogICAgICAg
ICAgICAgCi0gICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrV2l0aENvbmRpdGlvbmFsRGlyZWN0
aW9uKAorICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjaygKICAgICAgICAgICAgICAgICBleGl0
S2luZCwgSlNWYWx1ZVJlZ3MoYmFzZS5ncHIoKSksIE5vTm9kZSwKICAgICAgICAgICAgICAgICBt
X2ppdC5icmFuY2hXZWFrUHRyKAogICAgICAgICAgICAgICAgICAgICBKSVRDb21waWxlcjo6Tm90
RXF1YWwsIHN0cnVjdHVyZS5ncHIoKSwgbm9kZS5zdHJ1Y3R1cmVTZXQoKS5sYXN0KCkpLAotICAg
ICAgICAgICAgICAgIG5vZGUub3AoKSA9PSBGb3J3YXJkQ2hlY2tTdHJ1Y3R1cmUpOworICAgICAg
ICAgICAgICAgIGRpcmVjdGlvbik7CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGRvbmUubGlu
aygmbV9qaXQpOwogICAgICAgICB9CkBAIC00MTYwLDE0ICs0MTMxLDE2IEBAIHZvaWQgU3BlY3Vs
YXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSYgbm9kZSkKICAgICAgICAgLy8gd2UnbGwganVzdCByZWx5
IG9uIHRoZSBmYWN0IHRoYXQgd2hlbiBhIHdhdGNocG9pbnQgZmlyZXMgdGhlbiB0aGF0J3MKICAg
ICAgICAgLy8gcXVpdGUgYSBoaW50IGFscmVhZHkuCiAgICAgICAgIAorICAgICAgICBTcGVjdWxh
dGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24gPSBub2RlLm9wKCkgPT0gRm9yd2FyZFN0cnVjdHVyZVRy
YW5zaXRpb25XYXRjaHBvaW50ID8gRm9yd2FyZFNwZWN1bGF0aW9uIDogQmFja3dhcmRTcGVjdWxh
dGlvbjsKKwogICAgICAgICBtX2ppdC5hZGRXZWFrUmVmZXJlbmNlKG5vZGUuc3RydWN0dXJlKCkp
OwogICAgICAgICBub2RlLnN0cnVjdHVyZSgpLT5hZGRUcmFuc2l0aW9uV2F0Y2hwb2ludCgKLSAg
ICAgICAgICAgIHNwZWN1bGF0aW9uV2F0Y2hwb2ludFdpdGhDb25kaXRpb25hbERpcmVjdGlvbigK
KyAgICAgICAgICAgIHNwZWN1bGF0aW9uV2F0Y2hwb2ludCgKICAgICAgICAgICAgICAgICBtX2pp
dC5ncmFwaCgpW25vZGUuY2hpbGQxKCldLm9wKCkgPT0gV2Vha0pTQ29uc3RhbnQgPyBCYWRXZWFr
Q29uc3RhbnRDYWNoZSA6IEJhZENhY2hlLAotICAgICAgICAgICAgICAgIG5vZGUub3AoKSA9PSBG
b3J3YXJkU3RydWN0dXJlVHJhbnNpdGlvbldhdGNocG9pbnQpKTsKKyAgICAgICAgICAgICAgICBk
aXJlY3Rpb24pKTsKIAogI2lmICFBU1NFUlRfRElTQUJMRUQKLSAgICAgICAgU3BlY3VsYXRlQ2Vs
bE9wZXJhbmQgb3AxKHRoaXMsIG5vZGUuY2hpbGQxKCkpOworICAgICAgICBTcGVjdWxhdGVDZWxs
T3BlcmFuZCBvcDEodGhpcywgbm9kZS5jaGlsZDEoKSwgZGlyZWN0aW9uKTsKICAgICAgICAgSklU
Q29tcGlsZXI6Okp1bXAgaXNPSyA9IG1faml0LmJyYW5jaFB0cihKSVRDb21waWxlcjo6RXF1YWws
IEpJVENvbXBpbGVyOjpBZGRyZXNzKG9wMS5ncHIoKSwgSlNDZWxsOjpzdHJ1Y3R1cmVPZmZzZXQo
KSksIFRydXN0ZWRJbW1QdHIobm9kZS5zdHJ1Y3R1cmUoKSkpOwogICAgICAgICBtX2ppdC5icmVh
a3BvaW50KCk7CiAgICAgICAgIGlzT0subGluaygmbV9qaXQpOwpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAJKHJldmlzaW9uIDEzNTc3
NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xNDcsNiArMTQ3LDEzIEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OnNw
ZWN1bGF0aW9uQ2hlY2soRXgKICAgICBzcGVjdWxhdGlvbkNoZWNrKGtpbmQsIGpzVmFsdWVTb3Vy
Y2UsIG5vZGVVc2UuaW5kZXgoKSwganVtcFRvRmFpbCwgcmVjb3ZlcnkpOwogfQogCit2b2lkIFNw
ZWN1bGF0aXZlSklUOjpzcGVjdWxhdGlvbkNoZWNrKEV4aXRLaW5kIGtpbmQsIEpTVmFsdWVTb3Vy
Y2UganNWYWx1ZVNvdXJjZSwgTm9kZUluZGV4IG5vZGVJbmRleCwgTWFjcm9Bc3NlbWJsZXI6Okp1
bXAganVtcFRvRmFpbCwgY29uc3QgU3BlY3VsYXRpb25SZWNvdmVyeSYgcmVjb3ZlcnksIFNwZWN1
bGF0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbikKK3sKKyAgICBzcGVjdWxhdGlvbkNoZWNrKGtpbmQs
IGpzVmFsdWVTb3VyY2UsIG5vZGVJbmRleCwganVtcFRvRmFpbCwgcmVjb3ZlcnkpOworICAgIGlm
IChkaXJlY3Rpb24gPT0gRm9yd2FyZFNwZWN1bGF0aW9uKQorICAgICAgICBjb252ZXJ0TGFzdE9T
UkV4aXRUb0ZvcndhcmQoKTsKK30KKwogSnVtcFJlcGxhY2VtZW50V2F0Y2hwb2ludCogU3BlY3Vs
YXRpdmVKSVQ6OnNwZWN1bGF0aW9uV2F0Y2hwb2ludChFeGl0S2luZCBraW5kLCBKU1ZhbHVlU291
cmNlIGpzVmFsdWVTb3VyY2UsIE5vZGVJbmRleCBub2RlSW5kZXgpCiB7CiAgICAgaWYgKCFtX2Nv
bXBpbGVPa2F5KQpAQCAtMTcwLDEwICsxNzcsMTMgQEAgSnVtcFJlcGxhY2VtZW50V2F0Y2hwb2lu
dCogU3BlY3VsYXRpdmVKSQogdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29udmVydExhc3RPU1JFeGl0
VG9Gb3J3YXJkKGNvbnN0IFZhbHVlUmVjb3ZlcnkmIHZhbHVlUmVjb3ZlcnkpCiB7CiAgICAgaWYg
KCF2YWx1ZVJlY292ZXJ5KSB7Ci0gICAgICAgIC8vIENoZWNrIHRoYXQgdGhlIHByZWNlZGluZyBu
b2RlIHdhcyBhIFNldExvY2FsIHdpdGggdGhlIHNhbWUgY29kZSBvcmlnaW4uCi0gICAgICAgIE5v
ZGUqIHNldExvY2FsID0gJmF0KG1faml0LmdyYXBoKCkubV9ibG9ja3NbbV9ibG9ja10tPmF0KG1f
aW5kZXhJbkJsb2NrIC0gMSkpOwotICAgICAgICBBU1NFUlRfVU5VU0VEKHNldExvY2FsLCBzZXRM
b2NhbC0+b3AoKSA9PSBTZXRMb2NhbCk7Ci0gICAgICAgIEFTU0VSVF9VTlVTRUQoc2V0TG9jYWws
IHNldExvY2FsLT5jb2RlT3JpZ2luID09IGF0KG1fY29tcGlsZUluZGV4KS5jb2RlT3JpZ2luKTsK
KyAgICAgICAgLy8gQ2hlY2sgdGhhdCBlaXRoZXIgdGhlIGN1cnJlbnQgbm9kZSBpcyBhIFNldExv
Y2FsLCBvciB0aGUgcHJlY2VkaW5nIG5vZGUgd2FzIGEKKyAgICAgICAgLy8gU2V0TG9jYWwgd2l0
aCB0aGUgc2FtZSBjb2RlIG9yaWdpbi4KKyAgICAgICAgaWYgKGF0KG1fY29tcGlsZUluZGV4KS5v
cCgpICE9IFNldExvY2FsKSB7CisgICAgICAgICAgICBOb2RlKiBzZXRMb2NhbCA9ICZhdChtX2pp
dC5ncmFwaCgpLm1fYmxvY2tzW21fYmxvY2tdLT5hdChtX2luZGV4SW5CbG9jayAtIDEpKTsKKyAg
ICAgICAgICAgIEFTU0VSVF9VTlVTRUQoc2V0TG9jYWwsIHNldExvY2FsLT5vcCgpID09IFNldExv
Y2FsKTsKKyAgICAgICAgICAgIEFTU0VSVF9VTlVTRUQoc2V0TG9jYWwsIHNldExvY2FsLT5jb2Rl
T3JpZ2luID09IGF0KG1fY29tcGlsZUluZGV4KS5jb2RlT3JpZ2luKTsKKyAgICAgICAgfQogICAg
ICAgICAKICAgICAgICAgLy8gRmluZCB0aGUgbmV4dCBub2RlLgogICAgICAgICB1bnNpZ25lZCBp
bmRleEluQmxvY2sgPSBtX2luZGV4SW5CbG9jayArIDE7CkBAIC0yMzksMTAgKzI0OSwxMCBAQCBK
dW1wUmVwbGFjZW1lbnRXYXRjaHBvaW50KiBTcGVjdWxhdGl2ZUpJCiAgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KIAotSnVtcFJlcGxhY2VtZW50V2F0Y2hwb2ludCogU3BlY3VsYXRpdmVKSVQ6OnNwZWN1
bGF0aW9uV2F0Y2hwb2ludFdpdGhDb25kaXRpb25hbERpcmVjdGlvbihFeGl0S2luZCBraW5kLCBi
b29sIGlzRm9yd2FyZCkKK0p1bXBSZXBsYWNlbWVudFdhdGNocG9pbnQqIFNwZWN1bGF0aXZlSklU
OjpzcGVjdWxhdGlvbldhdGNocG9pbnQoRXhpdEtpbmQga2luZCwgU3BlY3VsYXRpb25EaXJlY3Rp
b24gZGlyZWN0aW9uKQogewogICAgIEp1bXBSZXBsYWNlbWVudFdhdGNocG9pbnQqIHJlc3VsdCA9
IHNwZWN1bGF0aW9uV2F0Y2hwb2ludChraW5kKTsKLSAgICBpZiAoaXNGb3J3YXJkKQorICAgIGlm
IChkaXJlY3Rpb24gPT0gRm9yd2FyZFNwZWN1bGF0aW9uKQogICAgICAgICBjb252ZXJ0TGFzdE9T
UkV4aXRUb0ZvcndhcmQoKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAtMjYyLDkgKzI3Miw5
IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmZvcndhcmRTcGVjdWxhdGlvbkMKICAgICAgICAgZm9y
d2FyZFNwZWN1bGF0aW9uQ2hlY2soa2luZCwganNWYWx1ZVNvdXJjZSwgbm9kZUluZGV4LCBqdW1w
VmVjdG9yW2ldLCB2YWx1ZVJlY292ZXJ5KTsKIH0KIAotdm9pZCBTcGVjdWxhdGl2ZUpJVDo6c3Bl
Y3VsYXRpb25DaGVja1dpdGhDb25kaXRpb25hbERpcmVjdGlvbihFeGl0S2luZCBraW5kLCBKU1Zh
bHVlU291cmNlIGpzVmFsdWVTb3VyY2UsIE5vZGVJbmRleCBub2RlSW5kZXgsIE1hY3JvQXNzZW1i
bGVyOjpKdW1wIGp1bXBUb0ZhaWwsIGJvb2wgaXNGb3J3YXJkKQordm9pZCBTcGVjdWxhdGl2ZUpJ
VDo6c3BlY3VsYXRpb25DaGVjayhFeGl0S2luZCBraW5kLCBKU1ZhbHVlU291cmNlIGpzVmFsdWVT
b3VyY2UsIE5vZGVJbmRleCBub2RlSW5kZXgsIE1hY3JvQXNzZW1ibGVyOjpKdW1wIGp1bXBUb0Zh
aWwsIFNwZWN1bGF0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbikKIHsKLSAgICBpZiAoaXNGb3J3YXJk
KQorICAgIGlmIChkaXJlY3Rpb24gPT0gRm9yd2FyZFNwZWN1bGF0aW9uKQogICAgICAgICBmb3J3
YXJkU3BlY3VsYXRpb25DaGVjayhraW5kLCBqc1ZhbHVlU291cmNlLCBub2RlSW5kZXgsIGp1bXBU
b0ZhaWwpOwogICAgIGVsc2UKICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhraW5kLCBqc1ZhbHVl
U291cmNlLCBub2RlSW5kZXgsIGp1bXBUb0ZhaWwpOwpAQCAtMjg4LDcgKzI5OCw3IEBAIHZvaWQg
U3BlY3VsYXRpdmVKSVQ6OnRlcm1pbmF0ZVNwZWN1bGF0aXYKICAgICB0ZXJtaW5hdGVTcGVjdWxh
dGl2ZUV4ZWN1dGlvbihraW5kLCBqc1ZhbHVlUmVncywgbm9kZVVzZS5pbmRleCgpKTsKIH0KIAot
dm9pZCBTcGVjdWxhdGl2ZUpJVDo6dGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb25XaXRoQ29u
ZGl0aW9uYWxEaXJlY3Rpb24oRXhpdEtpbmQga2luZCwgSlNWYWx1ZVJlZ3MganNWYWx1ZVJlZ3Ms
IE5vZGVJbmRleCBub2RlSW5kZXgsIGJvb2wgaXNGb3J3YXJkKQordm9pZCBTcGVjdWxhdGl2ZUpJ
VDo6dGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb24oRXhpdEtpbmQga2luZCwgSlNWYWx1ZVJl
Z3MganNWYWx1ZVJlZ3MsIE5vZGVJbmRleCBub2RlSW5kZXgsIFNwZWN1bGF0aW9uRGlyZWN0aW9u
IGRpcmVjdGlvbikKIHsKICAgICBBU1NFUlQoYXQobV9jb21waWxlSW5kZXgpLmNhbkV4aXQoKSB8
fCBtX2lzQ2hlY2tpbmdBcmd1bWVudFR5cGVzKTsKICNpZiBERkdfRU5BQkxFKERFQlVHX1ZFUkJP
U0UpCkBAIC0yOTYsNyArMzA2LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6dGVybWluYXRlU3Bl
Y3VsYXRpdgogI2VuZGlmCiAgICAgaWYgKCFtX2NvbXBpbGVPa2F5KQogICAgICAgICByZXR1cm47
Ci0gICAgc3BlY3VsYXRpb25DaGVja1dpdGhDb25kaXRpb25hbERpcmVjdGlvbihraW5kLCBqc1Zh
bHVlUmVncywgbm9kZUluZGV4LCBtX2ppdC5qdW1wKCksIGlzRm9yd2FyZCk7CisgICAgc3BlY3Vs
YXRpb25DaGVjayhraW5kLCBqc1ZhbHVlUmVncywgbm9kZUluZGV4LCBtX2ppdC5qdW1wKCksIGRp
cmVjdGlvbik7CiAgICAgbV9jb21waWxlT2theSA9IGZhbHNlOwogfQogCkBAIC02NjIsNyArNjcy
LDcgQEAgR1BSUmVnIFNwZWN1bGF0aXZlSklUOjpmaWxsU3RvcmFnZShOb2RlSQogICAgICAgICB9
CiAgICAgICAgIAogICAgICAgICAvLyBNdXN0IGJlIGEgY2VsbDsgZmlsbCBpdCBhcyBhIGNlbGwg
YW5kIHRoZW4gcmV0dXJuIHRoZSBwb2ludGVyLgotICAgICAgICByZXR1cm4gZmlsbFNwZWN1bGF0
ZUNlbGwobm9kZUluZGV4KTsKKyAgICAgICAgcmV0dXJuIGZpbGxTcGVjdWxhdGVDZWxsKG5vZGVJ
bmRleCwgQmFja3dhcmRTcGVjdWxhdGlvbik7CiAgICAgfQogICAgICAgICAKICAgICBjYXNlIERh
dGFGb3JtYXRTdG9yYWdlOiB7CkBAIC02NzIsNyArNjgyLDcgQEAgR1BSUmVnIFNwZWN1bGF0aXZl
SklUOjpmaWxsU3RvcmFnZShOb2RlSQogICAgIH0KICAgICAgICAgCiAgICAgZGVmYXVsdDoKLSAg
ICAgICAgcmV0dXJuIGZpbGxTcGVjdWxhdGVDZWxsKG5vZGVJbmRleCk7CisgICAgICAgIHJldHVy
biBmaWxsU3BlY3VsYXRlQ2VsbChub2RlSW5kZXgsIEJhY2t3YXJkU3BlY3VsYXRpb24pOwogICAg
IH0KIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJ
VC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRp
dmVKSVQuaAkocmV2aXNpb24gMTM1Nzc0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdTcGVjdWxhdGl2ZUpJVC5oCSh3b3JraW5nIGNvcHkpCkBAIC01Myw2ICs1Myw3IEBAIGNsYXNz
IFNwZWN1bGF0ZUNlbGxPcGVyYW5kOwogY2xhc3MgU3BlY3VsYXRlQm9vbGVhbk9wZXJhbmQ7CiAK
IGVudW0gR2VuZXJhdGVkT3BlcmFuZFR5cGUgeyBHZW5lcmF0ZWRPcGVyYW5kVHlwZVVua25vd24s
IEdlbmVyYXRlZE9wZXJhbmRJbnRlZ2VyLCBHZW5lcmF0ZWRPcGVyYW5kRG91YmxlLCBHZW5lcmF0
ZWRPcGVyYW5kSlNWYWx1ZX07CitlbnVtIFNwZWN1bGF0aW9uRGlyZWN0aW9uIHsgRm9yd2FyZFNw
ZWN1bGF0aW9uLCBCYWNrd2FyZFNwZWN1bGF0aW9uIH07CiAKIC8vID09PSBTcGVjdWxhdGl2ZUpJ
VCA9PT0KIC8vCkBAIC0zMDYsMTEgKzMwNywxMSBAQCBwdWJsaWM6CiAKICAgICAvLyBDYWxsZWQg
YnkgdGhlIHNwZWN1bGF0aXZlIG9wZXJhbmQgdHlwZXMsIGJlbG93LCB0byBmaWxsIG9wZXJhbmQg
dG8KICAgICAvLyBtYWNoaW5lIHJlZ2lzdGVycywgaW1wbGljaXRseSBnZW5lcmF0aW5nIHNwZWN1
bGF0aW9uIGNoZWNrcyBhcyBuZWVkZWQuCi0gICAgR1BSUmVnIGZpbGxTcGVjdWxhdGVJbnQoTm9k
ZUluZGV4LCBEYXRhRm9ybWF0JiByZXR1cm5Gb3JtYXQpOworICAgIEdQUlJlZyBmaWxsU3BlY3Vs
YXRlSW50KE5vZGVJbmRleCwgRGF0YUZvcm1hdCYgcmV0dXJuRm9ybWF0LCBTcGVjdWxhdGlvbkRp
cmVjdGlvbik7CiAgICAgR1BSUmVnIGZpbGxTcGVjdWxhdGVJbnRTdHJpY3QoTm9kZUluZGV4KTsK
LSAgICBGUFJSZWcgZmlsbFNwZWN1bGF0ZURvdWJsZShOb2RlSW5kZXgpOwotICAgIEdQUlJlZyBm
aWxsU3BlY3VsYXRlQ2VsbChOb2RlSW5kZXgsIGJvb2wgaXNGb3J3YXJkU3BlY3VsYXRpb24gPSBm
YWxzZSk7Ci0gICAgR1BSUmVnIGZpbGxTcGVjdWxhdGVCb29sZWFuKE5vZGVJbmRleCk7CisgICAg
RlBSUmVnIGZpbGxTcGVjdWxhdGVEb3VibGUoTm9kZUluZGV4LCBTcGVjdWxhdGlvbkRpcmVjdGlv
bik7CisgICAgR1BSUmVnIGZpbGxTcGVjdWxhdGVDZWxsKE5vZGVJbmRleCwgU3BlY3VsYXRpb25E
aXJlY3Rpb24pOworICAgIEdQUlJlZyBmaWxsU3BlY3VsYXRlQm9vbGVhbihOb2RlSW5kZXgsIFNw
ZWN1bGF0aW9uRGlyZWN0aW9uKTsKICAgICBHZW5lcmF0ZWRPcGVyYW5kVHlwZSBjaGVja0dlbmVy
YXRlZFR5cGVGb3JUb0ludDMyKE5vZGVJbmRleCk7CiAKICAgICB2b2lkIGFkZFNsb3dQYXRoR2Vu
ZXJhdG9yKFBhc3NPd25QdHI8U2xvd1BhdGhHZW5lcmF0b3I+KTsKQEAgLTI0NDgsMTUgKzI0NDks
MTYgQEAgcHVibGljOgogICAgIC8vIHRoYXQgeW91J3ZlIGVuc3VyZWQgdGhhdCB0aGVyZSBleGlz
dHMgYSBNb3ZIaW50IHByaW9yIHRvIHlvdXIgdXNlIG9mIGZvcndhcmRTcGVjdWxhdGlvbkNoZWNr
KCkuCiAgICAgdm9pZCBmb3J3YXJkU3BlY3VsYXRpb25DaGVjayhFeGl0S2luZCwgSlNWYWx1ZVNv
dXJjZSwgTm9kZUluZGV4LCBNYWNyb0Fzc2VtYmxlcjo6SnVtcCBqdW1wVG9GYWlsLCBjb25zdCBW
YWx1ZVJlY292ZXJ5JiA9IFZhbHVlUmVjb3ZlcnkoKSk7CiAgICAgdm9pZCBmb3J3YXJkU3BlY3Vs
YXRpb25DaGVjayhFeGl0S2luZCwgSlNWYWx1ZVNvdXJjZSwgTm9kZUluZGV4LCBjb25zdCBNYWNy
b0Fzc2VtYmxlcjo6SnVtcExpc3QmIGp1bXBzVG9GYWlsLCBjb25zdCBWYWx1ZVJlY292ZXJ5JiA9
IFZhbHVlUmVjb3ZlcnkoKSk7Ci0gICAgdm9pZCBzcGVjdWxhdGlvbkNoZWNrV2l0aENvbmRpdGlv
bmFsRGlyZWN0aW9uKEV4aXRLaW5kLCBKU1ZhbHVlU291cmNlLCBOb2RlSW5kZXgsIE1hY3JvQXNz
ZW1ibGVyOjpKdW1wIGp1bXBUb0ZhaWwsIGJvb2wgaXNGb3J3YXJkKTsKKyAgICB2b2lkIHNwZWN1
bGF0aW9uQ2hlY2soRXhpdEtpbmQsIEpTVmFsdWVTb3VyY2UsIE5vZGVJbmRleCwgTWFjcm9Bc3Nl
bWJsZXI6Okp1bXAganVtcFRvRmFpbCwgU3BlY3VsYXRpb25EaXJlY3Rpb24pOworICAgIHZvaWQg
c3BlY3VsYXRpb25DaGVjayhFeGl0S2luZCwgSlNWYWx1ZVNvdXJjZSwgTm9kZUluZGV4LCBNYWNy
b0Fzc2VtYmxlcjo6SnVtcCBqdW1wVG9GYWlsLCBjb25zdCBTcGVjdWxhdGlvblJlY292ZXJ5Jiwg
U3BlY3VsYXRpb25EaXJlY3Rpb24pOwogICAgIC8vIENhbGxlZCB3aGVuIHdlIHN0YXRpY2FsbHkg
ZGV0ZXJtaW5lIHRoYXQgYSBzcGVjdWxhdGlvbiB3aWxsIGZhaWwuCiAgICAgdm9pZCB0ZXJtaW5h
dGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihFeGl0S2luZCwgSlNWYWx1ZVJlZ3MsIE5vZGVJbmRleCk7
CiAgICAgdm9pZCB0ZXJtaW5hdGVTcGVjdWxhdGl2ZUV4ZWN1dGlvbihFeGl0S2luZCwgSlNWYWx1
ZVJlZ3MsIEVkZ2UpOwotICAgIHZvaWQgdGVybWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb25XaXRo
Q29uZGl0aW9uYWxEaXJlY3Rpb24oRXhpdEtpbmQsIEpTVmFsdWVSZWdzLCBOb2RlSW5kZXgsIGJv
b2wgaXNGb3J3YXJkKTsKKyAgICB2b2lkIHRlcm1pbmF0ZVNwZWN1bGF0aXZlRXhlY3V0aW9uKEV4
aXRLaW5kLCBKU1ZhbHVlUmVncywgTm9kZUluZGV4LCBTcGVjdWxhdGlvbkRpcmVjdGlvbik7CiAg
ICAgLy8gSXNzdWUgYSBmb3J3YXJkIHNwZWN1bGF0aW9uIHdhdGNocG9pbnQsIHdoaWNoIHdpbGwg
ZXhpdCB0byB0aGUgbmV4dCBpbnN0cnVjdGlvbiByYXRoZXIKICAgICAvLyB0aGFuIHRoZSBjdXJy
ZW50IG9uZS4KICAgICBKdW1wUmVwbGFjZW1lbnRXYXRjaHBvaW50KiBmb3J3YXJkU3BlY3VsYXRp
b25XYXRjaHBvaW50KEV4aXRLaW5kID0gVW5jb3VudGFibGVXYXRjaHBvaW50KTsKLSAgICBKdW1w
UmVwbGFjZW1lbnRXYXRjaHBvaW50KiBzcGVjdWxhdGlvbldhdGNocG9pbnRXaXRoQ29uZGl0aW9u
YWxEaXJlY3Rpb24oRXhpdEtpbmQsIGJvb2wgaXNGb3J3YXJkKTsKKyAgICBKdW1wUmVwbGFjZW1l
bnRXYXRjaHBvaW50KiBzcGVjdWxhdGlvbldhdGNocG9pbnQoRXhpdEtpbmQsIFNwZWN1bGF0aW9u
RGlyZWN0aW9uKTsKICAgICAKICAgICBjb25zdCBUeXBlZEFycmF5RGVzY3JpcHRvciogdHlwZWRB
cnJheURlc2NyaXB0b3IoQXJyYXlNb2RlKTsKICAgICAKQEAgLTI0NjcsNyArMjQ2OSw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIGFycmF5aWZ5KE5vZGUmKTsKICAgICAKICAgICB0ZW1wbGF0ZTxib29s
IHN0cmljdD4KLSAgICBHUFJSZWcgZmlsbFNwZWN1bGF0ZUludEludGVybmFsKE5vZGVJbmRleCwg
RGF0YUZvcm1hdCYgcmV0dXJuRm9ybWF0KTsKKyAgICBHUFJSZWcgZmlsbFNwZWN1bGF0ZUludElu
dGVybmFsKE5vZGVJbmRleCwgRGF0YUZvcm1hdCYgcmV0dXJuRm9ybWF0LCBTcGVjdWxhdGlvbkRp
cmVjdGlvbik7CiAgICAgCiAgICAgLy8gSXQgaXMgcG9zc2libGUsIGR1cmluZyBzcGVjdWxhdGl2
ZSBnZW5lcmF0aW9uLCB0byByZWFjaCBhIHNpdHVhdGlvbiBpbiB3aGljaCB3ZQogICAgIC8vIGNh
biBzdGF0aWNhbGx5IGRldGVybWluZSBhIHNwZWN1bGF0aW9uIHdpbGwgZmFpbCAoZm9yIGV4YW1w
bGUsIHdoZW4gdHdvIG5vZGVzCkBAIC0yOTYzLDEzICsyOTY1LDE0IEBAIHByaXZhdGU6CiAKIGNs
YXNzIFNwZWN1bGF0ZUludGVnZXJPcGVyYW5kIHsKIHB1YmxpYzoKLSAgICBleHBsaWNpdCBTcGVj
dWxhdGVJbnRlZ2VyT3BlcmFuZChTcGVjdWxhdGl2ZUpJVCogaml0LCBFZGdlIHVzZSkKKyAgICBl
eHBsaWNpdCBTcGVjdWxhdGVJbnRlZ2VyT3BlcmFuZChTcGVjdWxhdGl2ZUpJVCogaml0LCBFZGdl
IHVzZSwgU3BlY3VsYXRpb25EaXJlY3Rpb24gZGlyZWN0aW9uID0gQmFja3dhcmRTcGVjdWxhdGlv
bikKICAgICAgICAgOiBtX2ppdChqaXQpCiAgICAgICAgICwgbV9pbmRleCh1c2UuaW5kZXgoKSkK
ICAgICAgICAgLCBtX2dwck9ySW52YWxpZChJbnZhbGlkR1BSUmVnKQogI2lmbmRlZiBOREVCVUcK
ICAgICAgICAgLCBtX2Zvcm1hdChEYXRhRm9ybWF0Tm9uZSkKICNlbmRpZgorICAgICAgICAsIG1f
ZGlyZWN0aW9uKGRpcmVjdGlvbikKICAgICB7CiAgICAgICAgIEFTU0VSVChtX2ppdCk7CiAgICAg
ICAgIEFTU0VSVCh1c2UudXNlS2luZCgpICE9IERvdWJsZVVzZSk7CkBAIC0yOTk4LDcgKzMwMDEs
NyBAQCBwdWJsaWM6CiAgICAgR1BSUmVnIGdwcigpCiAgICAgewogICAgICAgICBpZiAobV9ncHJP
ckludmFsaWQgPT0gSW52YWxpZEdQUlJlZykKLSAgICAgICAgICAgIG1fZ3ByT3JJbnZhbGlkID0g
bV9qaXQtPmZpbGxTcGVjdWxhdGVJbnQoaW5kZXgoKSwgbV9mb3JtYXQpOworICAgICAgICAgICAg
bV9ncHJPckludmFsaWQgPSBtX2ppdC0+ZmlsbFNwZWN1bGF0ZUludChpbmRleCgpLCBtX2Zvcm1h
dCwgbV9kaXJlY3Rpb24pOwogICAgICAgICByZXR1cm4gbV9ncHJPckludmFsaWQ7CiAgICAgfQog
ICAgIApAQCAtMzAxMiw2ICszMDE1LDcgQEAgcHJpdmF0ZToKICAgICBOb2RlSW5kZXggbV9pbmRl
eDsKICAgICBHUFJSZWcgbV9ncHJPckludmFsaWQ7CiAgICAgRGF0YUZvcm1hdCBtX2Zvcm1hdDsK
KyAgICBTcGVjdWxhdGlvbkRpcmVjdGlvbiBtX2RpcmVjdGlvbjsKIH07CiAKIGNsYXNzIFNwZWN1
bGF0ZVN0cmljdEludDMyT3BlcmFuZCB7CkBAIC0zMDU4LDEwICszMDYyLDExIEBAIHByaXZhdGU6
CiAKIGNsYXNzIFNwZWN1bGF0ZURvdWJsZU9wZXJhbmQgewogcHVibGljOgotICAgIGV4cGxpY2l0
IFNwZWN1bGF0ZURvdWJsZU9wZXJhbmQoU3BlY3VsYXRpdmVKSVQqIGppdCwgRWRnZSB1c2UpCisg
ICAgZXhwbGljaXQgU3BlY3VsYXRlRG91YmxlT3BlcmFuZChTcGVjdWxhdGl2ZUpJVCogaml0LCBF
ZGdlIHVzZSwgU3BlY3VsYXRpb25EaXJlY3Rpb24gZGlyZWN0aW9uID0gQmFja3dhcmRTcGVjdWxh
dGlvbikKICAgICAgICAgOiBtX2ppdChqaXQpCiAgICAgICAgICwgbV9pbmRleCh1c2UuaW5kZXgo
KSkKICAgICAgICAgLCBtX2Zwck9ySW52YWxpZChJbnZhbGlkRlBSUmVnKQorICAgICAgICAsIG1f
ZGlyZWN0aW9uKGRpcmVjdGlvbikKICAgICB7CiAgICAgICAgIEFTU0VSVChtX2ppdCk7CiAgICAg
ICAgIEFTU0VSVCh1c2UudXNlS2luZCgpID09IERvdWJsZVVzZSk7CkBAIC0zMDgzLDcgKzMwODgs
NyBAQCBwdWJsaWM6CiAgICAgRlBSUmVnIGZwcigpCiAgICAgewogICAgICAgICBpZiAobV9mcHJP
ckludmFsaWQgPT0gSW52YWxpZEZQUlJlZykKLSAgICAgICAgICAgIG1fZnByT3JJbnZhbGlkID0g
bV9qaXQtPmZpbGxTcGVjdWxhdGVEb3VibGUoaW5kZXgoKSk7CisgICAgICAgICAgICBtX2Zwck9y
SW52YWxpZCA9IG1faml0LT5maWxsU3BlY3VsYXRlRG91YmxlKGluZGV4KCksIG1fZGlyZWN0aW9u
KTsKICAgICAgICAgcmV0dXJuIG1fZnByT3JJbnZhbGlkOwogICAgIH0KICAgICAKQEAgLTMwOTYs
MTUgKzMxMDEsMTYgQEAgcHJpdmF0ZToKICAgICBTcGVjdWxhdGl2ZUpJVCogbV9qaXQ7CiAgICAg
Tm9kZUluZGV4IG1faW5kZXg7CiAgICAgRlBSUmVnIG1fZnByT3JJbnZhbGlkOworICAgIFNwZWN1
bGF0aW9uRGlyZWN0aW9uIG1fZGlyZWN0aW9uOwogfTsKIAogY2xhc3MgU3BlY3VsYXRlQ2VsbE9w
ZXJhbmQgewogcHVibGljOgotICAgIGV4cGxpY2l0IFNwZWN1bGF0ZUNlbGxPcGVyYW5kKFNwZWN1
bGF0aXZlSklUKiBqaXQsIEVkZ2UgdXNlLCBib29sIGlzRm9yd2FyZFNwZWN1bGF0aW9uID0gZmFs
c2UpCisgICAgZXhwbGljaXQgU3BlY3VsYXRlQ2VsbE9wZXJhbmQoU3BlY3VsYXRpdmVKSVQqIGpp
dCwgRWRnZSB1c2UsIFNwZWN1bGF0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbiA9IEJhY2t3YXJkU3Bl
Y3VsYXRpb24pCiAgICAgICAgIDogbV9qaXQoaml0KQogICAgICAgICAsIG1faW5kZXgodXNlLmlu
ZGV4KCkpCiAgICAgICAgICwgbV9ncHJPckludmFsaWQoSW52YWxpZEdQUlJlZykKLSAgICAgICAg
LCBtX2lzRm9yd2FyZFNwZWN1bGF0aW9uKGlzRm9yd2FyZFNwZWN1bGF0aW9uKQorICAgICAgICAs
IG1fZGlyZWN0aW9uKGRpcmVjdGlvbikKICAgICB7CiAgICAgICAgIEFTU0VSVChtX2ppdCk7CiAg
ICAgICAgIEFTU0VSVCh1c2UudXNlS2luZCgpICE9IERvdWJsZVVzZSk7CkBAIC0zMTI2LDcgKzMx
MzIsNyBAQCBwdWJsaWM6CiAgICAgR1BSUmVnIGdwcigpCiAgICAgewogICAgICAgICBpZiAobV9n
cHJPckludmFsaWQgPT0gSW52YWxpZEdQUlJlZykKLSAgICAgICAgICAgIG1fZ3ByT3JJbnZhbGlk
ID0gbV9qaXQtPmZpbGxTcGVjdWxhdGVDZWxsKGluZGV4KCksIG1faXNGb3J3YXJkU3BlY3VsYXRp
b24pOworICAgICAgICAgICAgbV9ncHJPckludmFsaWQgPSBtX2ppdC0+ZmlsbFNwZWN1bGF0ZUNl
bGwoaW5kZXgoKSwgbV9kaXJlY3Rpb24pOwogICAgICAgICByZXR1cm4gbV9ncHJPckludmFsaWQ7
CiAgICAgfQogICAgIApAQCAtMzEzOSwxNSArMzE0NSwxNiBAQCBwcml2YXRlOgogICAgIFNwZWN1
bGF0aXZlSklUKiBtX2ppdDsKICAgICBOb2RlSW5kZXggbV9pbmRleDsKICAgICBHUFJSZWcgbV9n
cHJPckludmFsaWQ7Ci0gICAgYm9vbCBtX2lzRm9yd2FyZFNwZWN1bGF0aW9uOworICAgIFNwZWN1
bGF0aW9uRGlyZWN0aW9uIG1fZGlyZWN0aW9uOwogfTsKIAogY2xhc3MgU3BlY3VsYXRlQm9vbGVh
bk9wZXJhbmQgewogcHVibGljOgotICAgIGV4cGxpY2l0IFNwZWN1bGF0ZUJvb2xlYW5PcGVyYW5k
KFNwZWN1bGF0aXZlSklUKiBqaXQsIEVkZ2UgdXNlKQorICAgIGV4cGxpY2l0IFNwZWN1bGF0ZUJv
b2xlYW5PcGVyYW5kKFNwZWN1bGF0aXZlSklUKiBqaXQsIEVkZ2UgdXNlLCBTcGVjdWxhdGlvbkRp
cmVjdGlvbiBkaXJlY3Rpb24gPSBCYWNrd2FyZFNwZWN1bGF0aW9uKQogICAgICAgICA6IG1faml0
KGppdCkKICAgICAgICAgLCBtX2luZGV4KHVzZS5pbmRleCgpKQogICAgICAgICAsIG1fZ3ByT3JJ
bnZhbGlkKEludmFsaWRHUFJSZWcpCisgICAgICAgICwgbV9kaXJlY3Rpb24oZGlyZWN0aW9uKQog
ICAgIHsKICAgICAgICAgQVNTRVJUKG1faml0KTsKICAgICAgICAgQVNTRVJUKHVzZS51c2VLaW5k
KCkgIT0gRG91YmxlVXNlKTsKQEAgLTMxNjksNyArMzE3Niw3IEBAIHB1YmxpYzoKICAgICBHUFJS
ZWcgZ3ByKCkKICAgICB7CiAgICAgICAgIGlmIChtX2dwck9ySW52YWxpZCA9PSBJbnZhbGlkR1BS
UmVnKQotICAgICAgICAgICAgbV9ncHJPckludmFsaWQgPSBtX2ppdC0+ZmlsbFNwZWN1bGF0ZUJv
b2xlYW4oaW5kZXgoKSk7CisgICAgICAgICAgICBtX2dwck9ySW52YWxpZCA9IG1faml0LT5maWxs
U3BlY3VsYXRlQm9vbGVhbihpbmRleCgpLCBtX2RpcmVjdGlvbik7CiAgICAgICAgIHJldHVybiBt
X2dwck9ySW52YWxpZDsKICAgICB9CiAgICAgCkBAIC0zMTgyLDYgKzMxODksNyBAQCBwcml2YXRl
OgogICAgIFNwZWN1bGF0aXZlSklUKiBtX2ppdDsKICAgICBOb2RlSW5kZXggbV9pbmRleDsKICAg
ICBHUFJSZWcgbV9ncHJPckludmFsaWQ7CisgICAgU3BlY3VsYXRpb25EaXJlY3Rpb24gbV9kaXJl
Y3Rpb247CiB9OwogCiB9IH0gLy8gbmFtZXNwYWNlIEpTQzo6REZHCkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9ucy5oCShyZXZpc2lvbiAxMzU3NzQpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTcxLDYg
KzcxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgLyogc2hvd0Rpc2Fzc2VtYmx5IGltcGxpZXMg
c2hvd0RGR0Rpc2Fzc2VtYmx5LiAqLyBcCiAgICAgdihib29sLCBzaG93RGlzYXNzZW1ibHksIGZh
bHNlKSBcCiAgICAgdihib29sLCBzaG93REZHRGlzYXNzZW1ibHksIGZhbHNlKSBcCisgICAgdihi
b29sLCBzaG93QWxsREZHTm9kZXMsIGZhbHNlKSBcCiAgICAgXAogICAgIHYodW5zaWduZWQsIG1h
eGltdW1PcHRpbWl6YXRpb25DYW5kaWRhdGVJbnN0cnVjdGlvbkNvdW50LCAxMDAwMCkgXAogICAg
IFwKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzNTgxNCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTExLTI2ICBGaWxpcCBQaXpsbyAg
PGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAgREZHIFNldExvY2FsIHNob3VsZCB1c2UgZm9y
d2FyZFNwZWN1bGF0aW9uQ2hlY2sgaW5zdGVhZCBvZiBpdHMgb3duIGhhbGYtYmFrZWQgdmVyc2lv
biBvZiBzYW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMDMzNTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIGZhc3QvanMvZGZnLWludHJpbnNpYy1zaWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9qcy9kZmctaW50cmluc2ljLXNp
ZGUtZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4aXQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9qcy9kZmctc2lkZS1lZmZlY3QtYXNzaWdubWVudC1vc3ItZXhpdC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvanMvZGZnLXNpZGUtZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4
aXQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9qcy9qc2MtdGVzdC1saXN0OgorICAgICAg
ICAqIGZhc3QvanMvc2NyaXB0LXRlc3RzL2RmZy1pbnRyaW5zaWMtc2lkZS1lZmZlY3QtYXNzaWdu
bWVudC1vc3ItZXhpdC5qczogQWRkZWQuCisgICAgICAgIChmb28pOgorICAgICAgICAqIGZhc3Qv
anMvc2NyaXB0LXRlc3RzL2RmZy1zaWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0LmpzOiBB
ZGRlZC4KKyAgICAgICAgKGZvbyk6CisgICAgICAgIChiYXIpOgorCiAyMDEyLTExLTI2ICBEYW5p
ZWwgQmF0ZXMgIDxkYmF0ZXNAd2Via2l0Lm9yZz4KIAogICAgICAgICBVcGRhdGUgQ2hyb21pdW0g
dGVzdCBleHBlY3RhdGlvbiBmb3IgdGVzdCBMYXlvdXRUZXN0cy9mYXN0L2pzL3N0cmluZy1yZXBs
YWNlbWVudC1vdXRvZm1lbW9yeS5odG1sCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL2RmZy1p
bnRyaW5zaWMtc2lkZS1lZmZlY3QtYXNzaWdubWVudC1vc3ItZXhpdC1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9qcy9kZmctaW50cmluc2ljLXNpZGUtZWZmZWN0
LWFzc2lnbm1lbnQtb3NyLWV4aXQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9qcy9kZmctaW50cmluc2ljLXNpZGUtZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4
aXQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUwOSBAQAorVGVzdHMgd2hh
dCBoYXBwZW5zIGlmIHdlIE9TUiBleGl0IG9uIGFuIGFzc2lnbm1lbnQgdGhhdCB3YXMgcGFydCBv
ZiBhIHNpZGUtZWZmZWN0aW5nIGludHJpbnNpYy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5
KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBp
cyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAi
YmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxl
aCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIK
K1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BB
U1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9v
KGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAiYmxlaCIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMg
MgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhh
cnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQ
QVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5
KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1Mg
Zm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlz
IDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28o
YXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgor
UEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJh
eSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNT
IGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBp
cyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9v
KGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIK
K1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJy
YXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFT
UyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkg
aXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAyCitQQVNTIGZv
byhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFycmF5KSBpcyAy
CitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBmb28oYXJyYXkpIGlzIDIKK1BBU1MgZm9vKGFy
cmF5KSBpcyAyCitQQVNTIGZvbyhhcnJheSkgaXMgMgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMvZGZn
LWludHJpbnNpYy1zaWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0Lmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9qcy9kZmctaW50cmluc2ljLXNpZGUtZWZmZWN0LWFzc2ln
bm1lbnQtb3NyLWV4aXQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvanMv
ZGZnLWludHJpbnNpYy1zaWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0Lmh0bWwJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8v
RFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCBzcmM9InNj
cmlwdC10ZXN0cy9kZmctaW50cmluc2ljLXNpZGUtZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4aXQu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9qcy9kZmct
c2lkZS1lZmZlY3QtYXNzaWdubWVudC1vc3ItZXhpdC1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9qcy9kZmctc2lkZS1lZmZlY3QtYXNzaWdubWVudC1vc3ItZXhp
dC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL2RmZy1z
aWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwxMDA5IEBACitUZXN0cyB3aGF0IGhhcHBlbnMgaWYgd2UgT1NSIGV4aXQgb24g
YW4gYXNzaWdubWVudCB0aGF0IHdhcyBwYXJ0IG9mIGEgc2lkZS1lZmZlY3RpbmcgYnl0ZWNvZGUg
aW5zdHJ1Y3Rpb24uCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgMgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzCitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgNQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA2CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgOAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA5CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDEwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDExCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDEyCitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDEzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDE0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE1CitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDE3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE4CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE5CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDIwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIx
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIyCitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDIzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDI0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI1CitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDI2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDI3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI4CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDMwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDMxCitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDMyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDMzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM0CitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDM2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM3CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM4CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDM5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQw
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQxCitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDQyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDQzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQ0CitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDQ1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDQ2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQ3CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQ4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDQ5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDUwCitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDUxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDUyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDUzCitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDU0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDU1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDU2CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDU3CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDU4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDU5
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDYwCitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDYxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDYyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDYzCitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDY0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDY1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDY2CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDY3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDY4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDY5CitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDcwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDcxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDcyCitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDczCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDc0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDc1CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDc2CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDc3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDc4
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDc5CitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDgwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDgxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDgyCitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDgzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDg0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDg1CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDg2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDg3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDg4CitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDg5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDkwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDkxCitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDkyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDkzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDk0CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDk1CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDk2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDk3
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDk4CitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDk5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDEwMAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMDEKK1BBU1MgZm9vKGJh
cikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTAyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDEwMworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMDQKK1BBU1Mg
Zm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTA1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDEwNgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMDcK
K1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTA4CitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDEwOQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBp
cyAxMTAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTExCitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDExMgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBj
b3VudCBpcyAxMTMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTE0CitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDExNQorUEFTUyBmb28oYmFyKSBpcyA0Mgor
UEFTUyBjb3VudCBpcyAxMTYKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTE3
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDExOAorUEFTUyBmb28oYmFyKSBp
cyA0MgorUEFTUyBjb3VudCBpcyAxMTkKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQg
aXMgMTIwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDEyMQorUEFTUyBmb28o
YmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMjIKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1Mg
Y291bnQgaXMgMTIzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDEyNAorUEFT
UyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMjUKK1BBU1MgZm9vKGJhcikgaXMgNDIK
K1BBU1MgY291bnQgaXMgMTI2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDEy
NworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMjgKK1BBU1MgZm9vKGJhcikg
aXMgNDIKK1BBU1MgY291bnQgaXMgMTI5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDEzMAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMzEKK1BBU1MgZm9v
KGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTMyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDEzMworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxMzQKK1BB
U1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTM1CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDEzNgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAx
MzcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTM4CitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDEzOQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3Vu
dCBpcyAxNDAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTQxCitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE0MgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFT
UyBjb3VudCBpcyAxNDMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTQ0CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE0NQorUEFTUyBmb28oYmFyKSBpcyA0
MgorUEFTUyBjb3VudCBpcyAxNDYKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMg
MTQ3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE0OAorUEFTUyBmb28oYmFy
KSBpcyA0MgorUEFTUyBjb3VudCBpcyAxNDkKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgMTUwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE1MQorUEFTUyBm
b28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxNTIKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BB
U1MgY291bnQgaXMgMTUzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE1NAor
UEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxNTUKK1BBU1MgZm9vKGJhcikgaXMg
NDIKK1BBU1MgY291bnQgaXMgMTU2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDE1NworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxNTgKK1BBU1MgZm9vKGJh
cikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTU5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDE2MAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxNjEKK1BBU1Mg
Zm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTYyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDE2MworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxNjQK
K1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTY1CitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDE2NgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBp
cyAxNjcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTY4CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE2OQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBj
b3VudCBpcyAxNzAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTcxCitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE3MgorUEFTUyBmb28oYmFyKSBpcyA0Mgor
UEFTUyBjb3VudCBpcyAxNzMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTc0
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE3NQorUEFTUyBmb28oYmFyKSBp
cyA0MgorUEFTUyBjb3VudCBpcyAxNzYKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQg
aXMgMTc3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE3OAorUEFTUyBmb28o
YmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxNzkKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1Mg
Y291bnQgaXMgMTgwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE4MQorUEFT
UyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxODIKK1BBU1MgZm9vKGJhcikgaXMgNDIK
K1BBU1MgY291bnQgaXMgMTgzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE4
NAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxODUKK1BBU1MgZm9vKGJhcikg
aXMgNDIKK1BBU1MgY291bnQgaXMgMTg2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDE4NworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxODgKK1BBU1MgZm9v
KGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTg5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDE5MAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAxOTEKK1BB
U1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTkyCitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDE5MworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAx
OTQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTk1CitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDE5NgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3Vu
dCBpcyAxOTcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMTk4CitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDE5OQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFT
UyBjb3VudCBpcyAyMDAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjAxCitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIwMgorUEFTUyBmb28oYmFyKSBpcyA0
MgorUEFTUyBjb3VudCBpcyAyMDMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMg
MjA0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIwNQorUEFTUyBmb28oYmFy
KSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMDYKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgMjA3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIwOAorUEFTUyBm
b28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMDkKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BB
U1MgY291bnQgaXMgMjEwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIxMQor
UEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMTIKK1BBU1MgZm9vKGJhcikgaXMg
NDIKK1BBU1MgY291bnQgaXMgMjEzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDIxNAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMTUKK1BBU1MgZm9vKGJh
cikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjE2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDIxNworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMTgKK1BBU1Mg
Zm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjE5CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDIyMAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMjEK
K1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjIyCitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDIyMworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBp
cyAyMjQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjI1CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIyNgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBj
b3VudCBpcyAyMjcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjI4CitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIyOQorUEFTUyBmb28oYmFyKSBpcyA0Mgor
UEFTUyBjb3VudCBpcyAyMzAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjMx
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIzMgorUEFTUyBmb28oYmFyKSBp
cyA0MgorUEFTUyBjb3VudCBpcyAyMzMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQg
aXMgMjM0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIzNQorUEFTUyBmb28o
YmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMzYKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1Mg
Y291bnQgaXMgMjM3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDIzOAorUEFT
UyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyMzkKK1BBU1MgZm9vKGJhcikgaXMgNDIK
K1BBU1MgY291bnQgaXMgMjQwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI0
MQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNDIKK1BBU1MgZm9vKGJhcikg
aXMgNDIKK1BBU1MgY291bnQgaXMgMjQzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDI0NAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNDUKK1BBU1MgZm9v
KGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjQ2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDI0NworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNDgKK1BB
U1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjQ5CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDI1MAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAy
NTEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjUyCitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDI1MworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3Vu
dCBpcyAyNTQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjU1CitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI1NgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFT
UyBjb3VudCBpcyAyNTcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjU4CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI1OQorUEFTUyBmb28oYmFyKSBpcyA0
MgorUEFTUyBjb3VudCBpcyAyNjAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMg
MjYxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI2MgorUEFTUyBmb28oYmFy
KSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNjMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgMjY0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI2NQorUEFTUyBm
b28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNjYKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BB
U1MgY291bnQgaXMgMjY3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI2OAor
UEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNjkKK1BBU1MgZm9vKGJhcikgaXMg
NDIKK1BBU1MgY291bnQgaXMgMjcwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDI3MQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNzIKK1BBU1MgZm9vKGJh
cikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjczCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDI3NAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNzUKK1BBU1Mg
Zm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjc2CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDI3NworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyNzgK
K1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjc5CitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDI4MAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBp
cyAyODEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjgyCitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI4MworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBj
b3VudCBpcyAyODQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjg1CitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI4NgorUEFTUyBmb28oYmFyKSBpcyA0Mgor
UEFTUyBjb3VudCBpcyAyODcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMjg4
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI4OQorUEFTUyBmb28oYmFyKSBp
cyA0MgorUEFTUyBjb3VudCBpcyAyOTAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQg
aXMgMjkxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI5MgorUEFTUyBmb28o
YmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyOTMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1Mg
Y291bnQgaXMgMjk0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI5NQorUEFT
UyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyOTYKK1BBU1MgZm9vKGJhcikgaXMgNDIK
K1BBU1MgY291bnQgaXMgMjk3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDI5
OAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAyOTkKK1BBU1MgZm9vKGJhcikg
aXMgNDIKK1BBU1MgY291bnQgaXMgMzAwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDMwMQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMDIKK1BBU1MgZm9v
KGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzAzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDMwNAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMDUKK1BB
U1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzA2CitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDMwNworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAz
MDgKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzA5CitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDMxMAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3Vu
dCBpcyAzMTEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzEyCitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDMxMworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFT
UyBjb3VudCBpcyAzMTQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzE1CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDMxNgorUEFTUyBmb28oYmFyKSBpcyA0
MgorUEFTUyBjb3VudCBpcyAzMTcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMg
MzE4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDMxOQorUEFTUyBmb28oYmFy
KSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMjAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgMzIxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDMyMgorUEFTUyBm
b28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMjMKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BB
U1MgY291bnQgaXMgMzI0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDMyNQor
UEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMjYKK1BBU1MgZm9vKGJhcikgaXMg
NDIKK1BBU1MgY291bnQgaXMgMzI3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDMyOAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMjkKK1BBU1MgZm9vKGJh
cikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzMwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDMzMQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMzIKK1BBU1Mg
Zm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzMzCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDMzNAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzMzUK
K1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzM2CitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDMzNworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBp
cyAzMzgKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzM5CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM0MAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBj
b3VudCBpcyAzNDEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzQyCitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM0MworUEFTUyBmb28oYmFyKSBpcyA0Mgor
UEFTUyBjb3VudCBpcyAzNDQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzQ1
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM0NgorUEFTUyBmb28oYmFyKSBp
cyA0MgorUEFTUyBjb3VudCBpcyAzNDcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQg
aXMgMzQ4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM0OQorUEFTUyBmb28o
YmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzNTAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1Mg
Y291bnQgaXMgMzUxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM1MgorUEFT
UyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzNTMKK1BBU1MgZm9vKGJhcikgaXMgNDIK
K1BBU1MgY291bnQgaXMgMzU0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM1
NQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzNTYKK1BBU1MgZm9vKGJhcikg
aXMgNDIKK1BBU1MgY291bnQgaXMgMzU3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDM1OAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzNTkKK1BBU1MgZm9v
KGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzYwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDM2MQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzNjIKK1BB
U1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzYzCitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDM2NAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAz
NjUKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzY2CitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDM2NworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3Vu
dCBpcyAzNjgKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzY5CitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM3MAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFT
UyBjb3VudCBpcyAzNzEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzcyCitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM3MworUEFTUyBmb28oYmFyKSBpcyA0
MgorUEFTUyBjb3VudCBpcyAzNzQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMg
Mzc1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM3NgorUEFTUyBmb28oYmFy
KSBpcyA0MgorUEFTUyBjb3VudCBpcyAzNzcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgMzc4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM3OQorUEFTUyBm
b28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzODAKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BB
U1MgY291bnQgaXMgMzgxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM4Mgor
UEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzODMKK1BBU1MgZm9vKGJhcikgaXMg
NDIKK1BBU1MgY291bnQgaXMgMzg0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDM4NQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzODYKK1BBU1MgZm9vKGJh
cikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzg3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDM4OAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzODkKK1BBU1Mg
Zm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzkwCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDM5MQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyAzOTIK
K1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzkzCitQQVNTIGZvbyhiYXIpIGlz
IDQyCitQQVNTIGNvdW50IGlzIDM5NAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBp
cyAzOTUKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzk2CitQQVNTIGZvbyhi
YXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDM5NworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBj
b3VudCBpcyAzOTgKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgMzk5CitQQVNT
IGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQwMAorUEFTUyBmb28oYmFyKSBpcyA0Mgor
UEFTUyBjb3VudCBpcyA0MDEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDAy
CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQwMworUEFTUyBmb28oYmFyKSBp
cyA0MgorUEFTUyBjb3VudCBpcyA0MDQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQg
aXMgNDA1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQwNgorUEFTUyBmb28o
YmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0MDcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1Mg
Y291bnQgaXMgNDA4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQwOQorUEFT
UyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0MTAKK1BBU1MgZm9vKGJhcikgaXMgNDIK
K1BBU1MgY291bnQgaXMgNDExCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQx
MgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0MTMKK1BBU1MgZm9vKGJhcikg
aXMgNDIKK1BBU1MgY291bnQgaXMgNDE0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50
IGlzIDQxNQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0MTYKK1BBU1MgZm9v
KGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDE3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNT
IGNvdW50IGlzIDQxOAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0MTkKK1BB
U1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDIwCitQQVNTIGZvbyhiYXIpIGlzIDQy
CitQQVNTIGNvdW50IGlzIDQyMQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0
MjIKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDIzCitQQVNTIGZvbyhiYXIp
IGlzIDQyCitQQVNTIGNvdW50IGlzIDQyNAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3Vu
dCBpcyA0MjUKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDI2CitQQVNTIGZv
byhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQyNworUEFTUyBmb28oYmFyKSBpcyA0MgorUEFT
UyBjb3VudCBpcyA0MjgKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDI5CitQ
QVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQzMAorUEFTUyBmb28oYmFyKSBpcyA0
MgorUEFTUyBjb3VudCBpcyA0MzEKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMg
NDMyCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQzMworUEFTUyBmb28oYmFy
KSBpcyA0MgorUEFTUyBjb3VudCBpcyA0MzQKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291
bnQgaXMgNDM1CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQzNgorUEFTUyBm
b28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0MzcKK1BBU1MgZm9vKGJhcikgaXMgNDIKK1BB
U1MgY291bnQgaXMgNDM4CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlzIDQzOQor
UEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0NDAKK1BBU1MgZm9vKGJhcikgaXMg
NDIKK1BBU1MgY291bnQgaXMgNDQxCitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNvdW50IGlz
IDQ0MgorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0NDMKK1BBU1MgZm9vKGJh
cikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDQ0CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQQVNTIGNv
dW50IGlzIDQ0NQorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0NDYKK1BBU1Mg
Zm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDQ3CitQQVNTIGZvbyhiYXIpIGlzIDQyCitQ
QVNTIGNvdW50IGlzIDQ0OAorUEFTUyBmb28oYmFyKSBpcyA0MgorUEFTUyBjb3VudCBpcyA0NDkK
K1BBU1MgZm9vKGJhcikgaXMgNDIKK1BBU1MgY291bnQgaXMgNDUwCitQQVNTIGZvbyhiYXIpIGlz
ICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDUxCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BB
U1MgY291bnQgaXMgNDUyCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMg
NDUzCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDU0CitQQVNTIGZv
byhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDU1CitQQVNTIGZvbyhiYXIpIGlzICJz
dHVmZiIKK1BBU1MgY291bnQgaXMgNDU2CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1Mg
Y291bnQgaXMgNDU3CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDU4
CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDU5CitQQVNTIGZvbyhi
YXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDYwCitQQVNTIGZvbyhiYXIpIGlzICJzdHVm
ZiIKK1BBU1MgY291bnQgaXMgNDYxCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291
bnQgaXMgNDYyCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDYzCitQ
QVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDY0CitQQVNTIGZvbyhiYXIp
IGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDY1CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIK
K1BBU1MgY291bnQgaXMgNDY2CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQg
aXMgNDY3CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDY4CitQQVNT
IGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDY5CitQQVNTIGZvbyhiYXIpIGlz
ICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDcwCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BB
U1MgY291bnQgaXMgNDcxCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMg
NDcyCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDczCitQQVNTIGZv
byhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDc0CitQQVNTIGZvbyhiYXIpIGlzICJz
dHVmZiIKK1BBU1MgY291bnQgaXMgNDc1CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1Mg
Y291bnQgaXMgNDc2CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDc3
CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDc4CitQQVNTIGZvbyhi
YXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDc5CitQQVNTIGZvbyhiYXIpIGlzICJzdHVm
ZiIKK1BBU1MgY291bnQgaXMgNDgwCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291
bnQgaXMgNDgxCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDgyCitQ
QVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDgzCitQQVNTIGZvbyhiYXIp
IGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDg0CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIK
K1BBU1MgY291bnQgaXMgNDg1CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQg
aXMgNDg2CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDg3CitQQVNT
IGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDg4CitQQVNTIGZvbyhiYXIpIGlz
ICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDg5CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BB
U1MgY291bnQgaXMgNDkwCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMg
NDkxCitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDkyCitQQVNTIGZv
byhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDkzCitQQVNTIGZvbyhiYXIpIGlzICJz
dHVmZiIKK1BBU1MgY291bnQgaXMgNDk0CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1Mg
Y291bnQgaXMgNDk1CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDk2
CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDk3CitQQVNTIGZvbyhi
YXIpIGlzICJzdHVmZiIKK1BBU1MgY291bnQgaXMgNDk4CitQQVNTIGZvbyhiYXIpIGlzICJzdHVm
ZiIKK1BBU1MgY291bnQgaXMgNDk5CitQQVNTIGZvbyhiYXIpIGlzICJzdHVmZiIKK1BBU1MgY291
bnQgaXMgNTAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9qcy9kZmctc2lkZS1lZmZlY3QtYXNzaWdubWVu
dC1vc3ItZXhpdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvanMvZGZnLXNp
ZGUtZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4aXQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3QvanMvZGZnLXNpZGUtZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4aXQuaHRtbAko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9J
RVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0IHNy
Yz0ic2NyaXB0LXRlc3RzL2RmZy1zaWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0LmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMvanNjLXRlc3Qt
bGlzdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2pzYy10ZXN0LWxpc3QJKHJl
dmlzaW9uIDEzNTc3NCkKKysrIExheW91dFRlc3RzL2Zhc3QvanMvanNjLXRlc3QtbGlzdAkod29y
a2luZyBjb3B5KQpAQCAtMTM4LDYgKzEzOCw3IEBAIGZhc3QvanMvZGZnLWludDMyYXJyYXkKIGZh
c3QvanMvZGZnLWludDhhcnJheQogZmFzdC9qcy9kZmctaW50ZWdlci1vcHRpbWl6YXRpb24KIGZh
c3QvanMvZGZnLWludHJpbnNpYy1vc3ItZXhpdAorZmFzdC9qcy9kZmctaW50cmluc2ljLXNpZGUt
ZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4aXQKIGZhc3QvanMvZGZnLWludHJpbnNpYy11bnVzZWQt
dGhpcy1tZXRob2QtY2hlY2sKIGZhc3QvanMvZGZnLWludHJpbnNpYy11bnVzZWQtdGhpcwogZmFz
dC9qcy9kZmctbWluLW1heApAQCAtMTU2LDYgKzE1Nyw3IEBAIGZhc3QvanMvZGZnLXByb3RvLWFj
Y2Vzcy1pbmxpbmUtb3NyLWV4aXQKIGZhc3QvanMvZGZnLXB1dC1ieS1pZC1wcm90b3R5cGUtY2hl
Y2sKIGZhc3QvanMvZGZnLXB1dGJ5dmFsLWNmYS1jbG9iYmVyCiBmYXN0L2pzL2RmZy1yZWR1bmRh
bnQtbG9hZC1vZi1jYXB0dXJlZC12YXJpYWJsZS1wcm92ZW4tY29uc3RhbnQKK2Zhc3QvanMvZGZn
LXNpZGUtZWZmZWN0LWFzc2lnbm1lbnQtb3NyLWV4aXQKIGZhc3QvanMvZGZnLXN0cmluZy1zdHJp
Y3RlcQogZmFzdC9qcy9kZmctdGVhci1vZmYtYXJndW1lbnRzLW5vdC1hY3RpdmF0aW9uCiBmYXN0
L2pzL2RmZy11aW50MTZhcnJheQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQtdGVz
dHMvZGZnLWludHJpbnNpYy1zaWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0LmpzCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL2RmZy1pbnRyaW5zaWMt
c2lkZS1lZmZlY3QtYXNzaWdubWVudC1vc3ItZXhpdC5qcwkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL2RmZy1pbnRyaW5zaWMtc2lkZS1lZmZlY3QtYXNz
aWdubWVudC1vc3ItZXhpdC5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorZGVzY3Jp
cHRpb24oCisiVGVzdHMgd2hhdCBoYXBwZW5zIGlmIHdlIE9TUiBleGl0IG9uIGFuIGFzc2lnbm1l
bnQgdGhhdCB3YXMgcGFydCBvZiBhIHNpZGUtZWZmZWN0aW5nIGludHJpbnNpYy4iCispOworCitm
dW5jdGlvbiBmb28oYXJyYXkpIHsKKyAgICB2YXIgeCA9IGFycmF5LnBvcCgpOworICAgIGlmICh4
KQorICAgICAgICByZXR1cm4geDsKK30KKworZm9yICh2YXIgaSA9IDA7IGkgPCA1MDA7ICsraSkg
eworICAgIHZhciBhcnJheSA9IFtdOworICAgIGlmIChpID09IDUwKQorICAgICAgICBhcnJheS54
ID0gNDI7CisgICAgYXJyYXkucHVzaCgiYmxhaCIpOworICAgIHZhciBleHBlY3RlZDsKKyAgICBp
ZiAoaSA+PSA0NTApIHsKKyAgICAgICAgYXJyYXkucHVzaCgyKTsKKyAgICAgICAgZXhwZWN0ZWQg
PSAiMiI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgYXJyYXkucHVzaCgiYmxlaCIpOworICAgICAg
ICBleHBlY3RlZCA9ICJcImJsZWhcIiI7CisgICAgfQorICAgIHNob3VsZEJlKCJmb28oYXJyYXkp
IiwgZXhwZWN0ZWQpOworfQorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10ZXN0
cy9kZmctc2lkZS1lZmZlY3QtYXNzaWdubWVudC1vc3ItZXhpdC5qcwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10ZXN0cy9kZmctc2lkZS1lZmZlY3QtYXNzaWdubWVu
dC1vc3ItZXhpdC5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0
LXRlc3RzL2RmZy1zaWRlLWVmZmVjdC1hc3NpZ25tZW50LW9zci1leGl0LmpzCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDI0IEBACitkZXNjcmlwdGlvbigKKyJUZXN0cyB3aGF0IGhhcHBlbnMgaWYg
d2UgT1NSIGV4aXQgb24gYW4gYXNzaWdubWVudCB0aGF0IHdhcyBwYXJ0IG9mIGEgc2lkZS1lZmZl
Y3RpbmcgYnl0ZWNvZGUgaW5zdHJ1Y3Rpb24uIgorKTsKKworZnVuY3Rpb24gZm9vKGYpIHsKKyAg
ICB2YXIgeCA9IGYoKTsKKyAgICBpZiAoeCkKKyAgICAgICAgcmV0dXJuIHg7Cit9CisKK3ZhciBj
b3VudCA9IDA7CitmdW5jdGlvbiBiYXIoKSB7CisgICAgY291bnQrKzsKKyAgICByZXR1cm4gZXZh
bChiYXopOworfQorCit2YXIgYmF6ID0gIjQyIjsKKworZm9yICh2YXIgaSA9IDA7IGkgPCA1MDA7
ICsraSkgeworICAgIGlmIChpID09IDQ1MCkKKyAgICAgICAgYmF6ID0gIlwic3R1ZmZcIiI7Cisg
ICAgc2hvdWxkQmUoImZvbyhiYXIpIiwgYmF6KTsKKyAgICBzaG91bGRCZSgiY291bnQiLCAiIiAr
IChpICsgMSkpOworfQo=
</data>
<flag name="review"
          id="191856"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>