<?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>56758</bug_id>
          
          <creation_ts>2011-03-21 11:15:57 -0700</creation_ts>
          <short_desc>percentages are incorrectly rounded in WebKit</short_desc>
          <delta_ts>2011-03-22 07:01:37 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Rik Cabanier">cabanier</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aroben</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>370481</commentid>
    <comment_count>0</comment_count>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2011-03-21 11:15:57 -0700</bug_when>
    <thetext>WebCore stores percentages as fixed point with limited precision.
Because of this, one of the layout tests (fast/css/percentage-non-integer.html) is not rendering correctly.

The Length class should be updated to use float instead of fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370483</commentid>
    <comment_count>1</comment_count>
      <attachid>86339</attachid>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2011-03-21 11:16:55 -0700</bug_when>
    <thetext>Created attachment 86339
Updated length class. Incorporated David Hyatt and Simon Fraser&apos;s review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370501</commentid>
    <comment_count>2</comment_count>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2011-03-21 11:40:18 -0700</bug_when>
    <thetext>From Simon&apos;s review:
&gt;&gt; Source/WebCore/rendering/AutoTableLayout.cpp:235
&gt;&gt; +    const float epsilon = 1 / 128.0f;
&gt; It&apos;s not obvious why you chose 1/128 here.

I did it to keep the existing behavior intact. Percentages used to be fixed point and epsilon was set to 1 which is 1/128 of a percentage point.

The whole &apos;epsilon&apos; logic is flawed and should probably be removed...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370882</commentid>
    <comment_count>3</comment_count>
      <attachid>86363</attachid>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2011-03-21 14:12:02 -0700</bug_when>
    <thetext>Created attachment 86363
updated pixel test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370937</commentid>
    <comment_count>4</comment_count>
      <attachid>86370</attachid>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2011-03-21 15:05:09 -0700</bug_when>
    <thetext>Created attachment 86370
updated pixel test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370945</commentid>
    <comment_count>5</comment_count>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2011-03-21 15:09:56 -0700</bug_when>
    <thetext>*** Bug 56052 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370950</commentid>
    <comment_count>6</comment_count>
      <attachid>86374</attachid>
    <who name="Rik Cabanier">cabanier</who>
    <bug_when>2011-03-21 15:16:47 -0700</bug_when>
    <thetext>Created attachment 86374
removed xcode project changes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370952</commentid>
    <comment_count>7</comment_count>
      <attachid>86374</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-03-21 15:19:00 -0700</bug_when>
    <thetext>Comment on attachment 86374
removed xcode project changes

New test expectations look OK.  R=me (smfr already r+&apos;d the code changes)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371052</commentid>
    <comment_count>8</comment_count>
      <attachid>86374</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-21 17:24:17 -0700</bug_when>
    <thetext>Comment on attachment 86374
removed xcode project changes

Clearing flags on attachment: 86374

Committed r81625: &lt;http://trac.webkit.org/changeset/81625&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371053</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-21 17:24:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371352</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-03-22 06:30:38 -0700</bug_when>
    <thetext>This change broke fast/css/percentage-non-integer.html on Windows: http://build.webkit.org/results/Windows%207%20Release%20(Tests)/r81625%20(10623)/fast/css/percentage-non-integer-pretty-diff.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371368</commentid>
    <comment_count>11</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-03-22 06:53:29 -0700</bug_when>
    <thetext>It looks like the rounding on Windows is worse than on Mac. On Mac, the table cells increase in width by 2px each time. On Windows, they sometimes increase by other amounts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371371</commentid>
    <comment_count>12</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-03-22 07:01:37 -0700</bug_when>
    <thetext>I filed bug 56829 to cover the Windows failure.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86339</attachid>
            <date>2011-03-21 11:16:55 -0700</date>
            <delta_ts>2011-03-21 15:05:09 -0700</delta_ts>
            <desc>Updated length class. Incorporated David Hyatt and Simon Fraser&apos;s review</desc>
            <filename>newpatch_2.txt</filename>
            <type>text/plain</type>
            <size>57495</size>
            <attacher name="Rik Cabanier">cabanier</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgwNjY1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDMtMDkgIFJpayBDYWJh
bmllciAgPGNhYmFuaWVyQGFkb2JlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBidWcgNTYwNTI6IHBlcmNlbnRhZ2VzIGFyZSBpbmNvcnJlY3Rs
eSByb3VuZGVkIGluIFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTYwNTIKKworICAgICAgICB0ZXN0OiBmYXN0L2Nzcy9wZXJjZW50YWdlLW5v
bi1pbnRlZ2VyLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOgorICAgICAg
ICAqIHBhZ2UvUHJpbnRDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByaW50Q29udGV4
dDo6cGFnZVByb3BlcnR5KToKKyAgICAgICAgKiBwbGF0Zm9ybS9MZW5ndGguaDoKKyAgICAgICAg
KFdlYkNvcmU6Okxlbmd0aDo6TGVuZ3RoKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6b3Bl
cmF0b3IqPSk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6cGVyY2VudCk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnNldFZh
bHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6Y2FsY1ZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6Y2FsY01pblZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6
aXNVbmRlZmluZWQpOgorICAgICAgICAoV2ViQ29yZTo6TGVuZ3RoOjppc1plcm8pOgorICAgICAg
ICAoV2ViQ29yZTo6TGVuZ3RoOjppc1Bvc2l0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0
aDo6aXNOZWdhdGl2ZSk6CisgICAgICAgICogcmVuZGVyaW5nL0F1dG9UYWJsZUxheW91dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OnJlY2FsY0NvbHVtbik6CisgICAg
ICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lk
dGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkF1dG9UYWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxv
Z2ljYWxXaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmxheW91dCk6
CisgICAgICAgICogcmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Rml4ZWRUYWJsZUxheW91dDo6Y2FsY1dpZHRoQXJyYXkpOgorICAgICAgICAoV2ViQ29y
ZTo6Rml4ZWRUYWJsZUxheW91dDo6bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGFibGVTZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRhYmxlU2VjdGlvbjo6
YWRkQ2VsbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZVNlY3Rpb246OmxheW91dFJv
d3MpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmg6CisgICAgICAgIChX
ZWJDb3JlOjpCb3JkZXJEYXRhOjpoYXNCb3JkZXJSYWRpdXMpOgorCiAyMDExLTAzLTA5ICBKYW1l
cyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSdXNzZWxsLgpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9y
LmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxl
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUzMzIsOCArNTMzMiw4IEBAIHZvaWQgQ1NTU3R5
bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0eShpbnQKICAgICAgICAgICAgIHJhZGl1c0hlaWdodCA9
IExlbmd0aChwYWlyLT5zZWNvbmQoKS0+Z2V0RG91YmxlVmFsdWUoKSwgUGVyY2VudCk7CiAgICAg
ICAgIGVsc2UKICAgICAgICAgICAgIHJhZGl1c0hlaWdodCA9IExlbmd0aChtYXgoaW50TWluRm9y
TGVuZ3RoLCBtaW4oaW50TWF4Rm9yTGVuZ3RoLCBwYWlyLT5zZWNvbmQoKS0+Y29tcHV0ZUxlbmd0
aEludChzdHlsZSgpLCBtX3Jvb3RFbGVtZW50U3R5bGUsIHpvb21GYWN0b3IpKSksIEZpeGVkKTsK
LSAgICAgICAgaW50IHdpZHRoID0gcmFkaXVzV2lkdGgucmF3VmFsdWUoKTsKLSAgICAgICAgaW50
IGhlaWdodCA9IHJhZGl1c0hlaWdodC5yYXdWYWx1ZSgpOworICAgICAgICBpbnQgd2lkdGggPSBy
YWRpdXNXaWR0aC52YWx1ZSgpOworICAgICAgICBpbnQgaGVpZ2h0ID0gcmFkaXVzSGVpZ2h0LnZh
bHVlKCk7CiAgICAgICAgIGlmICh3aWR0aCA8IDAgfHwgaGVpZ2h0IDwgMCkKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgaWYgKHdpZHRoID09IDApCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1ByaW50Q29udGV4dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9Q
cmludENvbnRleHQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UHJpbnRDb250ZXh0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgyLDE2ICsyODIsMTYgQEAgU3Ry
aW5nIFByaW50Q29udGV4dDo6cGFnZVByb3BlcnR5KEZyYW1lKgogICAgIGlmICghc3RyY21wKHBy
b3BlcnR5TmFtZSwgIm1hcmdpbi1sZWZ0IikpIHsKICAgICAgICAgaWYgKHN0eWxlLT5tYXJnaW5M
ZWZ0KCkuaXNBdXRvKCkpCiAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCJhdXRvIik7Ci0gICAg
ICAgIHJldHVybiBTdHJpbmc6Om51bWJlcihzdHlsZS0+bWFyZ2luTGVmdCgpLnJhd1ZhbHVlKCkp
OworICAgICAgICByZXR1cm4gU3RyaW5nOjpudW1iZXIoc3R5bGUtPm1hcmdpbkxlZnQoKS52YWx1
ZSgpKTsKICAgICB9CiAgICAgaWYgKCFzdHJjbXAocHJvcGVydHlOYW1lLCAibGluZS1oZWlnaHQi
KSkKLSAgICAgICAgcmV0dXJuIFN0cmluZzo6bnVtYmVyKHN0eWxlLT5saW5lSGVpZ2h0KCkucmF3
VmFsdWUoKSk7CisgICAgICAgIHJldHVybiBTdHJpbmc6Om51bWJlcihzdHlsZS0+bGluZUhlaWdo
dCgpLnZhbHVlKCkpOwogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgImZvbnQtc2l6ZSIp
KQogICAgICAgICByZXR1cm4gU3RyaW5nOjpudW1iZXIoc3R5bGUtPmZvbnREZXNjcmlwdGlvbigp
LmNvbXB1dGVkUGl4ZWxTaXplKCkpOwogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgImZv
bnQtZmFtaWx5IikpCiAgICAgICAgIHJldHVybiBzdHlsZS0+Zm9udERlc2NyaXB0aW9uKCkuZmFt
aWx5KCkuZmFtaWx5KCkuc3RyaW5nKCk7CiAgICAgaWYgKCFzdHJjbXAocHJvcGVydHlOYW1lLCAi
c2l6ZSIpKQotICAgICAgICByZXR1cm4gbWFrZVN0cmluZyhTdHJpbmc6Om51bWJlcihzdHlsZS0+
cGFnZVNpemUoKS53aWR0aCgpLnJhd1ZhbHVlKCkpLCAnICcsIFN0cmluZzo6bnVtYmVyKHN0eWxl
LT5wYWdlU2l6ZSgpLmhlaWdodCgpLnJhd1ZhbHVlKCkpKTsKKyAgICAgICAgcmV0dXJuIG1ha2VT
dHJpbmcoU3RyaW5nOjpudW1iZXIoc3R5bGUtPnBhZ2VTaXplKCkud2lkdGgoKS52YWx1ZSgpKSwg
JyAnLCBTdHJpbmc6Om51bWJlcihzdHlsZS0+cGFnZVNpemUoKS5oZWlnaHQoKS52YWx1ZSgpKSk7
CiAKICAgICByZXR1cm4gbWFrZVN0cmluZygicGFnZVByb3BlcnR5KCkgdW5pbXBsZW1lbnRlZCBm
b3I6ICIsIHByb3BlcnR5TmFtZSk7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1h
dGlvbi9BbmltYXRpb25CYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdl
L2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBpbmxpbmUgQ29sb3IgYmxlbmRGdW5jKGNvbnN0IEFu
aW0KIAogc3RhdGljIGlubGluZSBMZW5ndGggYmxlbmRGdW5jKGNvbnN0IEFuaW1hdGlvbkJhc2Uq
LCBjb25zdCBMZW5ndGgmIGZyb20sIGNvbnN0IExlbmd0aCYgdG8sIGRvdWJsZSBwcm9ncmVzcykK
IHsgIAotICAgIHJldHVybiB0by5ibGVuZChmcm9tLCBwcm9ncmVzcyk7CisgICAgcmV0dXJuIHRv
LmJsZW5kKGZyb20sIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3MpKTsKIH0KIAogc3Rh
dGljIGlubGluZSBMZW5ndGhTaXplIGJsZW5kRnVuYyhjb25zdCBBbmltYXRpb25CYXNlKiBhbmlt
LCBjb25zdCBMZW5ndGhTaXplJiBmcm9tLCBjb25zdCBMZW5ndGhTaXplJiB0bywgZG91YmxlIHBy
b2dyZXNzKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgJKHJldmlzaW9uIDgwMzgxKQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgJKHdvcmtpbmcgY29weSkKQEAgLTEs
NiArMSw3IEBACiAvKgogICAgIENvcHlyaWdodCAoQykgMTk5OSBMYXJzIEtub2xsIChrbm9sbEBr
ZGUub3JnKQogICAgIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgICAgQ29weXJpZ2h0IChDKSAyMDExIFJpayBDYWJhbmllciAoY2FiYW5p
ZXJAYWRvYmUuY29tKQogCiAgICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0zMCw3ICszMSw2IEBACiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNvbnN0IGludCB1bmRlZmluZWRMZW5ndGggPSAtMTsKLWNvbnN0
IGludCBwZXJjZW50U2NhbGVGYWN0b3IgPSAxMjg7CiBjb25zdCBpbnQgaW50TWF4Rm9yTGVuZ3Ro
ID0gMHg3ZmZmZmZmOyAvLyBtYXggdmFsdWUgZm9yIGEgMjgtYml0IGludAogY29uc3QgaW50IGlu
dE1pbkZvckxlbmd0aCA9ICgtMHg3ZmZmZmZmIC0gMSk7IC8vIG1pbiB2YWx1ZSBmb3IgYSAyOC1i
aXQgaW50CiAKQEAgLTUyLDM0ICs1Miw0MCBAQCBwdWJsaWM6CiAgICAgTGVuZ3RoKGludCB2LCBM
ZW5ndGhUeXBlIHQsIGJvb2wgcSA9IGZhbHNlKQogICAgICAgICA6IG1faW50VmFsdWUodiksIG1f
cXVpcmsocSksIG1fdHlwZSh0KSwgbV9pc0Zsb2F0KGZhbHNlKQogICAgIHsKLSAgICAgICAgQVNT
RVJUKHQgIT0gUGVyY2VudCk7CisgICAgfQorICAgIAorICAgIExlbmd0aChmbG9hdCB2LCBMZW5n
dGhUeXBlIHQsIGJvb2wgcSA9IGZhbHNlKQorICAgIDogbV9mbG9hdFZhbHVlKHYpLCBtX3F1aXJr
KHEpLCBtX3R5cGUodCksIG1faXNGbG9hdCh0cnVlKQorICAgIHsgICAgICAgICAgICAKICAgICB9
CiAKICAgICBMZW5ndGgoZG91YmxlIHYsIExlbmd0aFR5cGUgdCwgYm9vbCBxID0gZmFsc2UpCi0g
ICAgICAgIDogbV9xdWlyayhxKSwgbV90eXBlKHQpLCBtX2lzRmxvYXQoZmFsc2UpCi0gICAgewot
ICAgICAgICBpZiAobV90eXBlID09IFBlcmNlbnQpCi0gICAgICAgICAgICBtX2ludFZhbHVlID0g
c3RhdGljX2Nhc3Q8aW50Pih2KnBlcmNlbnRTY2FsZUZhY3Rvcik7Ci0gICAgICAgIGVsc2Ugewot
ICAgICAgICAgICAgbV9pc0Zsb2F0ID0gdHJ1ZTsgICAgICAgICAgICAKLSAgICAgICAgICAgIG1f
ZmxvYXRWYWx1ZSA9IHN0YXRpY19jYXN0PGZsb2F0Pih2KTsKLSAgICAgICB9CisgICAgICAgIDog
bV9xdWlyayhxKSwgbV90eXBlKHQpLCBtX2lzRmxvYXQodHJ1ZSkKKyAgICB7ICAgICAgICAgICAK
KyAgICAgICAgbV9mbG9hdFZhbHVlID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHYpOyAgICAKICAgICB9
CiAKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgTGVuZ3RoJiBvKSBjb25zdCB7IHJldHVybiAo
Z2V0RmxvYXRWYWx1ZSgpID09IG8uZ2V0RmxvYXRWYWx1ZSgpKSAmJiAobV90eXBlID09IG8ubV90
eXBlKSAmJiAobV9xdWlyayA9PSBvLm1fcXVpcmspOyB9CiAgICAgYm9vbCBvcGVyYXRvciE9KGNv
bnN0IExlbmd0aCYgbykgY29uc3QgeyByZXR1cm4gKGdldEZsb2F0VmFsdWUoKSAhPSBvLmdldEZs
b2F0VmFsdWUoKSkgfHwgKG1fdHlwZSAhPSBvLm1fdHlwZSkgfHwgKG1fcXVpcmsgIT0gby5tX3F1
aXJrKTsgfQogCisgICAgY29uc3QgTGVuZ3RoJiBvcGVyYXRvcio9KGZsb2F0IHYpCisgICAgeyAg
ICAgICAgCisgICAgICAgIGlmIChtX2lzRmxvYXQpCisgICAgICAgICAgICBtX2Zsb2F0VmFsdWUg
PSBzdGF0aWNfY2FzdDxmbG9hdD4obV9mbG9hdFZhbHVlICogdik7CisgICAgICAgIGVsc2UgICAg
ICAgIAorICAgICAgICAgICAgbV9pbnRWYWx1ZSA9IHN0YXRpY19jYXN0PGludD4obV9pbnRWYWx1
ZSAqIHYpOworICAgICAgICAKKyAgICAgICAgcmV0dXJuICp0aGlzOworICAgIH0KKyAgICAKICAg
ICBpbnQgdmFsdWUoKSBjb25zdCB7Ci0gICAgICAgIEFTU0VSVCh0eXBlKCkgIT0gUGVyY2VudCk7
Ci0gICAgICAgIHJldHVybiByYXdWYWx1ZSgpOworICAgICAgICByZXR1cm4gZ2V0SW50VmFsdWUo
KTsKICAgICB9CiAKLSAgICBpbnQgcmF3VmFsdWUoKSBjb25zdCB7IHJldHVybiBnZXRJbnRWYWx1
ZSgpOyB9Ci0KLSAgICBkb3VibGUgcGVyY2VudCgpIGNvbnN0CisgICAgZmxvYXQgcGVyY2VudCgp
IGNvbnN0CiAgICAgewogICAgICAgICBBU1NFUlQodHlwZSgpID09IFBlcmNlbnQpOwotICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8ZG91YmxlPihyYXdWYWx1ZSgpKSAvIHBlcmNlbnRTY2FsZUZh
Y3RvcjsKKyAgICAgICAgcmV0dXJuIGdldEZsb2F0VmFsdWUoKTsKICAgICB9CiAKICAgICBMZW5n
dGhUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxMZW5ndGhUeXBlPihtX3R5
cGUpOyB9CkBAIC05NCwxOCArMTAwLDE3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0VmFsdWUo
aW50IHZhbHVlKQogICAgIHsKLSAgICAgICAgQVNTRVJUKCF2YWx1ZSB8fCB0eXBlKCkgIT0gUGVy
Y2VudCk7CiAgICAgICAgIHNldFZhbHVlKEZpeGVkLCB2YWx1ZSk7CiAgICAgfQogCi0gICAgdm9p
ZCBzZXRWYWx1ZShMZW5ndGhUeXBlIHQsIGRvdWJsZSB2YWx1ZSkKKyAgICB2b2lkIHNldFZhbHVl
KExlbmd0aFR5cGUgdCwgZmxvYXQgdmFsdWUpCiAgICAgewogICAgICAgICBtX3R5cGUgPSB0Owot
ICAgICAgICBtX2Zsb2F0VmFsdWUgPSBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUpOworICAgICAg
ICBtX2Zsb2F0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgbV9pc0Zsb2F0ID0gdHJ1ZTsgICAgCiAg
ICAgfQogCi0gICAgdm9pZCBzZXRWYWx1ZShkb3VibGUgdmFsdWUpCisgICAgdm9pZCBzZXRWYWx1
ZShmbG9hdCB2YWx1ZSkKICAgICB7CiAgICAgICAgICp0aGlzID0gTGVuZ3RoKHZhbHVlLCBGaXhl
ZCk7CiAgICAgfQpAQCAtMTE5LDcgKzEyNCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIGNhc2Ug
UGVyY2VudDoKICAgICAgICAgICAgICAgICBpZiAocm91bmRQZXJjZW50YWdlcykKICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4ocm91bmQobWF4VmFsdWUgKiBwZXJj
ZW50KCkgLyAxMDAuMCkpOwotICAgICAgICAgICAgICAgIHJldHVybiBtYXhWYWx1ZSAqIHJhd1Zh
bHVlKCkgLyAoMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8aW50PihtYXhWYWx1ZSAqIHBlcmNlbnQoKSAvIDEwMC4wKTsKICAgICAg
ICAgICAgIGNhc2UgQXV0bzoKICAgICAgICAgICAgICAgICByZXR1cm4gbWF4VmFsdWU7CiAgICAg
ICAgICAgICBkZWZhdWx0OgpAQCAtMTM1LDcgKzE0MCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAg
IGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgICAgICBpZiAocm91bmRQZXJjZW50YWdlcykKICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4ocm91bmQobWF4VmFsdWUg
KiBwZXJjZW50KCkgLyAxMDAuMCkpOwotICAgICAgICAgICAgICAgIHJldHVybiBtYXhWYWx1ZSAq
IHJhd1ZhbHVlKCkgLyAoMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PihtYXhWYWx1ZSAqIHBlcmNlbnQoKSAvIDEwMC4wKTsK
ICAgICAgICAgICAgIGNhc2UgQXV0bzoKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIDA7CkBAIC0xNTYsMTAgKzE2MSwxNCBAQCBwdWJsaWM6CiAgICAgICAgIH0K
ICAgICB9CiAKLSAgICBib29sIGlzVW5kZWZpbmVkKCkgY29uc3QgeyByZXR1cm4gcmF3VmFsdWUo
KSA9PSB1bmRlZmluZWRMZW5ndGg7IH0KLSAgICBib29sIGlzWmVybygpIGNvbnN0IHsgcmV0dXJu
ICFnZXRJbnRWYWx1ZSgpOyB9Ci0gICAgYm9vbCBpc1Bvc2l0aXZlKCkgY29uc3QgeyByZXR1cm4g
cmF3VmFsdWUoKSA+IDA7IH0KLSAgICBib29sIGlzTmVnYXRpdmUoKSBjb25zdCB7IHJldHVybiBy
YXdWYWx1ZSgpIDwgMDsgfQorICAgIGJvb2wgaXNVbmRlZmluZWQoKSBjb25zdCB7IHJldHVybiB2
YWx1ZSgpID09IHVuZGVmaW5lZExlbmd0aDsgfQorICAgIGJvb2wgaXNaZXJvKCkgY29uc3QgCisg
ICAgeyAKKyAgICAgICAgcmV0dXJuIG1faXNGbG9hdCA/ICFtX2Zsb2F0VmFsdWUgOiAhbV9pbnRW
YWx1ZTsKKyAgICB9CisgICAgCisgICAgYm9vbCBpc1Bvc2l0aXZlKCkgY29uc3QgeyByZXR1cm4g
Z2V0RmxvYXRWYWx1ZSgpID4gMDsgfQorICAgIGJvb2wgaXNOZWdhdGl2ZSgpIGNvbnN0IHsgcmV0
dXJuIGdldEZsb2F0VmFsdWUoKSA8IDA7IH0KIAogICAgIGJvb2wgaXNBdXRvKCkgY29uc3QgeyBy
ZXR1cm4gdHlwZSgpID09IEF1dG87IH0KICAgICBib29sIGlzUmVsYXRpdmUoKSBjb25zdCB7IHJl
dHVybiB0eXBlKCkgPT0gUmVsYXRpdmU7IH0KQEAgLTE2Nyw3ICsxNzYsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBpc0ZpeGVkKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IEZpeGVkOyB9CiAgICAg
Ym9vbCBpc0ludHJpbnNpY09yQXV0bygpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBBdXRvIHx8
IHR5cGUoKSA9PSBNaW5JbnRyaW5zaWMgfHwgdHlwZSgpID09IEludHJpbnNpYzsgfQogCi0gICAg
TGVuZ3RoIGJsZW5kKGNvbnN0IExlbmd0aCYgZnJvbSwgZG91YmxlIHByb2dyZXNzKSBjb25zdAor
ICAgIExlbmd0aCBibGVuZChjb25zdCBMZW5ndGgmIGZyb20sIGZsb2F0IHByb2dyZXNzKSBjb25z
dAogICAgIHsKICAgICAgICAgLy8gQmxlbmQgdHdvIGxlbmd0aHMgdG8gcHJvZHVjZSBhIG5ldyBs
ZW5ndGggdGhhdCBpcyBpbiBiZXR3ZWVuIHRoZW0uICBVc2VkIGZvciBhbmltYXRpb24uCiAgICAg
ICAgIGlmICghZnJvbS5pc1plcm8oKSAmJiAhaXNaZXJvKCkgJiYgZnJvbS50eXBlKCkgIT0gdHlw
ZSgpKQpAQCAtMTgxLDI5ICsxOTAsMjUgQEAgcHVibGljOgogICAgICAgICAgICAgcmVzdWx0VHlw
ZSA9IGZyb20udHlwZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHJlc3VsdFR5cGUgPT0gUGVy
Y2VudCkgewotICAgICAgICAgICAgZG91YmxlIGZyb21QZXJjZW50ID0gZnJvbS5pc1plcm8oKSA/
IDAuIDogZnJvbS5wZXJjZW50KCk7Ci0gICAgICAgICAgICBkb3VibGUgdG9QZXJjZW50ID0gaXNa
ZXJvKCkgPyAwLiA6IHBlcmNlbnQoKTsKKyAgICAgICAgICAgIGZsb2F0IGZyb21QZXJjZW50ID0g
ZnJvbS5pc1plcm8oKSA/IDAgOiBmcm9tLnBlcmNlbnQoKTsKKyAgICAgICAgICAgIGZsb2F0IHRv
UGVyY2VudCA9IGlzWmVybygpID8gMCA6IHBlcmNlbnQoKTsKICAgICAgICAgICAgIHJldHVybiBM
ZW5ndGgoZnJvbVBlcmNlbnQgKyAodG9QZXJjZW50IC0gZnJvbVBlcmNlbnQpICogcHJvZ3Jlc3Ms
IFBlcmNlbnQpOwogICAgICAgICB9IAogICAgICAgICAgICAgCi0gICAgICAgIGRvdWJsZSBmcm9t
VmFsdWUgPSBmcm9tLmlzWmVybygpID8gMCA6IGZyb20udmFsdWUoKTsKLSAgICAgICAgZG91Ymxl
IHRvVmFsdWUgPSBpc1plcm8oKSA/IDAgOiB2YWx1ZSgpOworICAgICAgICBmbG9hdCBmcm9tVmFs
dWUgPSBmcm9tLmlzWmVybygpID8gMCA6IGZyb20udmFsdWUoKTsKKyAgICAgICAgZmxvYXQgdG9W
YWx1ZSA9IGlzWmVybygpID8gMCA6IHZhbHVlKCk7CiAgICAgICAgIHJldHVybiBMZW5ndGgoZnJv
bVZhbHVlICsgKHRvVmFsdWUgLSBmcm9tVmFsdWUpICogcHJvZ3Jlc3MsIHJlc3VsdFR5cGUpOwog
ICAgIH0KIAogcHJpdmF0ZToKICAgICBpbnQgZ2V0SW50VmFsdWUoKSBjb25zdAogICAgIHsKLSAg
ICAgICAgaWYgKG1faXNGbG9hdCkKLSAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+
KG1fZmxvYXRWYWx1ZSk7Ci0gICAgICAgIHJldHVybiBtX2ludFZhbHVlOworICAgICAgICByZXR1
cm4gbV9pc0Zsb2F0ID8gc3RhdGljX2Nhc3Q8aW50PihtX2Zsb2F0VmFsdWUpIDogbV9pbnRWYWx1
ZTsKICAgICB9CiAKICAgICBmbG9hdCBnZXRGbG9hdFZhbHVlKCkgY29uc3QKICAgICB7Ci0gICAg
ICAgIGlmIChtX2lzRmxvYXQpCi0gICAgICAgICAgICAgICAgcmV0dXJuIG1fZmxvYXRWYWx1ZTsK
LSAgICAgICAgcmV0dXJuIG1faW50VmFsdWU7CisgICAgICAgIHJldHVybiBtX2lzRmxvYXQgPyBt
X2Zsb2F0VmFsdWUgOiBtX2ludFZhbHVlOwogICAgIH0KIAogICAgIHVuaW9uIHsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvVHJhbnNsYXRlVHJhbnNm
b3JtT3BlcmF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5jcHAJKHJldmlz
aW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jt
cy9UcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw2
ICsyMSw3IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJUcmFuc2xhdGVUcmFu
c2Zvcm1PcGVyYXRpb24uaCIKKyNpbmNsdWRlICJGbG9hdENvbnZlcnNpb24uaCIKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCkBAIC0zMCwxNSArMzEsMTUgQEAgUGFzc1JlZlB0cjxUcmFuc2Zvcm1P
cGVyYXRpb24+IFRyYW5zbGF0ZQogICAgICAgICByZXR1cm4gdGhpczsKICAgICAKICAgICBpZiAo
YmxlbmRUb0lkZW50aXR5KQotICAgICAgICByZXR1cm4gVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0
aW9uOjpjcmVhdGUoTGVuZ3RoKG1feC50eXBlKCkpLmJsZW5kKG1feCwgcHJvZ3Jlc3MpLCAKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlbmd0aCht
X3kudHlwZSgpKS5ibGVuZChtX3ksIHByb2dyZXNzKSwgCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZW5ndGgobV96LnR5cGUoKSkuYmxlbmQobV96
LCBwcm9ncmVzcyksIG1fdHlwZSk7CisgICAgICAgIHJldHVybiBUcmFuc2xhdGVUcmFuc2Zvcm1P
cGVyYXRpb246OmNyZWF0ZShMZW5ndGgobV94LnR5cGUoKSkuYmxlbmQobV94LCBuYXJyb3dQcmVj
aXNpb25Ub0Zsb2F0KHByb2dyZXNzKSksIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgTGVuZ3RoKG1feS50eXBlKCkpLmJsZW5kKG1feSwgbmFycm93
UHJlY2lzaW9uVG9GbG9hdChwcm9ncmVzcykpLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIExlbmd0aChtX3oudHlwZSgpKS5ibGVuZChtX3osIG5h
cnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3MpKSwgbV90eXBlKTsKIAogICAgIGNvbnN0IFRy
YW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbiogZnJvbU9wID0gc3RhdGljX2Nhc3Q8Y29uc3QgVHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uKj4oZnJvbSk7CiAgICAgTGVuZ3RoIGZyb21YID0gZnJv
bU9wID8gZnJvbU9wLT5tX3ggOiBMZW5ndGgobV94LnR5cGUoKSk7CiAgICAgTGVuZ3RoIGZyb21Z
ID0gZnJvbU9wID8gZnJvbU9wLT5tX3kgOiBMZW5ndGgobV95LnR5cGUoKSk7CiAgICAgTGVuZ3Ro
IGZyb21aID0gZnJvbU9wID8gZnJvbU9wLT5tX3ogOiBMZW5ndGgobV96LnR5cGUoKSk7Ci0gICAg
cmV0dXJuIFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbjo6Y3JlYXRlKG1feC5ibGVuZChmcm9t
WCwgcHJvZ3Jlc3MpLCBtX3kuYmxlbmQoZnJvbVksIHByb2dyZXNzKSwgbV96LmJsZW5kKGZyb21a
LCBwcm9ncmVzcyksIG1fdHlwZSk7CisgICAgcmV0dXJuIFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJh
dGlvbjo6Y3JlYXRlKG1feC5ibGVuZChmcm9tWCwgbmFycm93UHJlY2lzaW9uVG9GbG9hdChwcm9n
cmVzcykpLCBtX3kuYmxlbmQoZnJvbVksIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3Mp
KSwgbV96LmJsZW5kKGZyb21aLCBuYXJyb3dQcmVjaXNpb25Ub0Zsb2F0KHByb2dyZXNzKSksIG1f
dHlwZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC04MSw3ICs4MSw3IEBAIHZvaWQgQXV0b1RhYmxlTGF5b3V0OjpyZWNhbGNDb2x1bW4oaW50
IGUKIAogICAgICAgICAgICAgICAgICAgICBMZW5ndGggY2VsbExvZ2ljYWxXaWR0aCA9IGNlbGwt
PnN0eWxlT3JDb2xMb2dpY2FsV2lkdGgoKTsKICAgICAgICAgICAgICAgICAgICAgLy8gRklYTUU6
IFdoYXQgaXMgdGhpcyBhcmJpdHJhcnkgdmFsdWU/Ci0gICAgICAgICAgICAgICAgICAgIGlmIChj
ZWxsTG9naWNhbFdpZHRoLnJhd1ZhbHVlKCkgPiAzMjc2MCkKKyAgICAgICAgICAgICAgICAgICAg
aWYgKGNlbGxMb2dpY2FsV2lkdGgudmFsdWUoKSA+IDMyNzYwKQogICAgICAgICAgICAgICAgICAg
ICAgICAgY2VsbExvZ2ljYWxXaWR0aC5zZXRWYWx1ZSgzMjc2MCk7CiAgICAgICAgICAgICAgICAg
ICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzTmVnYXRpdmUoKSkKICAgICAgICAgICAgICAgICAg
ICAgICAgIGNlbGxMb2dpY2FsV2lkdGguc2V0VmFsdWUoMCk7CkBAIC0xMDUsMTMgKzEwNSwxMyBA
QCB2b2lkIEF1dG9UYWJsZUxheW91dDo6cmVjYWxjQ29sdW1uKGludCBlCiAgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgY2FzZSBQZXJjZW50OgogICAg
ICAgICAgICAgICAgICAgICAgICAgbV9oYXNQZXJjZW50ID0gdHJ1ZTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUG9zaXRpdmUoKSAmJiAoIWNvbHVtbkxh
eW91dC5sb2dpY2FsV2lkdGguaXNQZXJjZW50KCkgfHwgY2VsbExvZ2ljYWxXaWR0aC5yYXdWYWx1
ZSgpID4gY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpKSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUG9zaXRpdmUoKSAmJiAoIWNvbHVt
bkxheW91dC5sb2dpY2FsV2lkdGguaXNQZXJjZW50KCkgfHwgY2VsbExvZ2ljYWxXaWR0aC52YWx1
ZSgpID4gY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC52YWx1ZSgpKSkKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb2x1bW5MYXlvdXQubG9naWNhbFdpZHRoID0gY2VsbExvZ2ljYWxXaWR0
aDsKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICBj
YXNlIFJlbGF0aXZlOgogICAgICAgICAgICAgICAgICAgICAgICAgLy8gRklYTUU6IE5lZWQgdG8g
dW5kZXJzdGFuZCB0aGlzIGNhc2UgYW5kIHdoZXRoZXIgaXQgbWFrZXMgc2Vuc2UgdG8gY29tcGFy
ZSB2YWx1ZXMKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdoaWNoIGFyZSBub3QgbmVjZXNz
YXJpbHkgb2YgdGhlIHNhbWUgdHlwZS4KLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjZWxs
TG9naWNhbFdpZHRoLmlzQXV0bygpIHx8IChjZWxsTG9naWNhbFdpZHRoLmlzUmVsYXRpdmUoKSAm
JiBjZWxsTG9naWNhbFdpZHRoLnZhbHVlKCkgPiBjb2x1bW5MYXlvdXQubG9naWNhbFdpZHRoLnJh
d1ZhbHVlKCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNlbGxMb2dpY2FsV2lkdGgu
aXNBdXRvKCkgfHwgKGNlbGxMb2dpY2FsV2lkdGguaXNSZWxhdGl2ZSgpICYmIGNlbGxMb2dpY2Fs
V2lkdGgudmFsdWUoKSA+IGNvbHVtbkxheW91dC5sb2dpY2FsV2lkdGgudmFsdWUoKSkpCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aCA9IGNlbGxM
b2dpY2FsV2lkdGg7CiAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKQEAgLTIzMiwxNiArMjMyLDE2IEBAIHZvaWQgQXV0b1RhYmxlTGF5
b3V0Ojpjb21wdXRlUHJlZmVycmVkTG8KIAogICAgIC8vIFdlIHN1YnN0aXR1dGUgMCBwZXJjZW50
IGJ5IChlcHNpbG9uIC8gcGVyY2VudFNjYWxlRmFjdG9yKSBwZXJjZW50IGluIHR3byBwbGFjZXMg
YmVsb3cgdG8gYXZvaWQgZGl2aXNpb24gYnkgemVyby4KICAgICAvLyBGSVhNRTogSGFuZGxlIHRo
ZSAwJSBjYXNlcyBwcm9wZXJseS4KLSAgICBjb25zdCBpbnQgZXBzaWxvbiA9IDE7CisgICAgY29u
c3QgZmxvYXQgZXBzaWxvbiA9IDEgLyAxMjguMGY7CiAKLSAgICBpbnQgcmVtYWluaW5nUGVyY2Vu
dCA9IDEwMCAqIHBlcmNlbnRTY2FsZUZhY3RvcjsKKyAgICBmbG9hdCByZW1haW5pbmdQZXJjZW50
ID0gMTAwOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9sYXlvdXRTdHJ1Y3Quc2l6ZSgp
OyArK2kpIHsKICAgICAgICAgbWluV2lkdGggKz0gbV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZl
TWluTG9naWNhbFdpZHRoOwogICAgICAgICBtYXhXaWR0aCArPSBtX2xheW91dFN0cnVjdFtpXS5l
ZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGg7CiAgICAgICAgIGlmIChzY2FsZUNvbHVtbnMpIHsKICAg
ICAgICAgICAgIGlmIChtX2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGguaXNQ
ZXJjZW50KCkpIHsKLSAgICAgICAgICAgICAgICBpbnQgcGVyY2VudCA9IG1pbihtX2xheW91dFN0
cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGgucmF3VmFsdWUoKSwgcmVtYWluaW5nUGVyY2Vu
dCk7Ci0gICAgICAgICAgICAgICAgZmxvYXQgbG9naWNhbFdpZHRoID0gc3RhdGljX2Nhc3Q8Zmxv
YXQ+KG1fbGF5b3V0U3RydWN0W2ldLmVmZmVjdGl2ZU1heExvZ2ljYWxXaWR0aCkgKiAxMDAgKiBw
ZXJjZW50U2NhbGVGYWN0b3IgLyBtYXgocGVyY2VudCwgZXBzaWxvbik7CisgICAgICAgICAgICAg
ICAgZmxvYXQgcGVyY2VudCA9IG1pbihzdGF0aWNfY2FzdDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3Rb
aV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoLnBlcmNlbnQoKSksIHJlbWFpbmluZ1BlcmNlbnQpOwor
ICAgICAgICAgICAgICAgIGZsb2F0IGxvZ2ljYWxXaWR0aCA9IHN0YXRpY19jYXN0PGZsb2F0Piht
X2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpICogMTAwIC8gbWF4KHBl
cmNlbnQsIGVwc2lsb24pOwogICAgICAgICAgICAgICAgIG1heFBlcmNlbnQgPSBtYXgobG9naWNh
bFdpZHRoLCAgbWF4UGVyY2VudCk7CiAgICAgICAgICAgICAgICAgcmVtYWluaW5nUGVyY2VudCAt
PSBwZXJjZW50OwogICAgICAgICAgICAgfSBlbHNlCkBAIC0yNTAsNyArMjUwLDcgQEAgdm9pZCBB
dXRvVGFibGVMYXlvdXQ6OmNvbXB1dGVQcmVmZXJyZWRMbwogICAgIH0KIAogICAgIGlmIChzY2Fs
ZUNvbHVtbnMpIHsKLSAgICAgICAgbWF4Tm9uUGVyY2VudCA9IG1heE5vblBlcmNlbnQgKiAxMDAg
KiBwZXJjZW50U2NhbGVGYWN0b3IgLyBtYXgocmVtYWluaW5nUGVyY2VudCwgZXBzaWxvbik7Cisg
ICAgICAgIG1heE5vblBlcmNlbnQgPSBtYXhOb25QZXJjZW50ICogMTAwIC8gbWF4KHJlbWFpbmlu
Z1BlcmNlbnQsIGVwc2lsb24pOwogICAgICAgICBtYXhXaWR0aCA9IG1heChtYXhXaWR0aCwgc3Rh
dGljX2Nhc3Q8aW50PihtaW4obWF4Tm9uUGVyY2VudCwgSU5UX01BWCAvIDIuMGYpKSk7CiAgICAg
ICAgIG1heFdpZHRoID0gbWF4KG1heFdpZHRoLCBzdGF0aWNfY2FzdDxpbnQ+KG1pbihtYXhQZXJj
ZW50LCBJTlRfTUFYIC8gMi4wZikpKTsKICAgICB9CkBAIC0yNjYsNiArMjY2LDEwIEBAIHZvaWQg
QXV0b1RhYmxlTGF5b3V0Ojpjb21wdXRlUHJlZmVycmVkTG8KICAgICAgICAgbWluV2lkdGggPSBt
YXgobWluV2lkdGgsIHRhYmxlTG9naWNhbFdpZHRoLnZhbHVlKCkpOwogICAgICAgICBtYXhXaWR0
aCA9IG1pbldpZHRoOwogICAgIH0KKyAgICAKKyAgICAvLyBpZiB0aGVyZSB3YXMgbm8gcmVtYWlu
aW5nIHBlcmNlbnQsIG1heFdpZHRoIGlzIGludmFsaWQuCisgICAgaWYgKCFyZW1haW5pbmdQZXJj
ZW50ICYmIG1heE5vblBlcmNlbnQpCisgICAgICAgIG1heFdpZHRoID0gaW50TWF4Rm9yTGVuZ3Ro
OyAgICAgICAgCiB9CiAKIC8qCkBAIC0zMDAsNyArMzA0LDcgQEAgaW50IEF1dG9UYWJsZUxheW91
dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogICAgICAgICBzaXplX3QgbGFzdENvbCA9IGVmZkNvbDsK
ICAgICAgICAgaW50IGNlbGxNaW5Mb2dpY2FsV2lkdGggPSBjZWxsLT5taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGgoKSArIHNwYWNpbmdJblJvd0RpcmVjdGlvbjsKICAgICAgICAgZmxvYXQgY2VsbE1h
eExvZ2ljYWxXaWR0aCA9IGNlbGwtPm1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpICsgc3BhY2lu
Z0luUm93RGlyZWN0aW9uOwotICAgICAgICBpbnQgdG90YWxQZXJjZW50ID0gMDsKKyAgICAgICAg
ZmxvYXQgdG90YWxQZXJjZW50ID0gMDsKICAgICAgICAgaW50IHNwYW5NaW5Mb2dpY2FsV2lkdGgg
PSAwOwogICAgICAgICBmbG9hdCBzcGFuTWF4TG9naWNhbFdpZHRoID0gMDsKICAgICAgICAgYm9v
bCBhbGxDb2xzQXJlUGVyY2VudCA9IHRydWU7CkBAIC0zMTIsNyArMzE2LDcgQEAgaW50IEF1dG9U
YWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogICAgICAgICAgICAgTGF5b3V0JiBjb2x1
bW5MYXlvdXQgPSBtX2xheW91dFN0cnVjdFtsYXN0Q29sXTsKICAgICAgICAgICAgIHN3aXRjaCAo
Y29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC50eXBlKCkpIHsKICAgICAgICAgICAgIGNhc2UgUGVy
Y2VudDoKLSAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgKz0gY29sdW1uTGF5b3V0LmxvZ2lj
YWxXaWR0aC5yYXdWYWx1ZSgpOworICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBjb2x1
bW5MYXlvdXQubG9naWNhbFdpZHRoLnBlcmNlbnQoKTsKICAgICAgICAgICAgICAgICBhbGxDb2xz
QXJlRml4ZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNh
c2UgRml4ZWQ6CkBAIC0zMzksNyArMzQzLDcgQEAgaW50IEF1dG9UYWJsZUxheW91dDo6Y2FsY0Vm
ZmVjdGl2ZUxvZ2ljYQogICAgICAgICAgICAgICAgICAgICBjb2x1bW5MYXlvdXQuZWZmZWN0aXZl
TG9naWNhbFdpZHRoID0gTGVuZ3RoKCk7CiAgICAgICAgICAgICAgICAgICAgIGFsbENvbHNBcmVQ
ZXJjZW50ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAg
ICAgIHRvdGFsUGVyY2VudCArPSBjb2x1bW5MYXlvdXQuZWZmZWN0aXZlTG9naWNhbFdpZHRoLnJh
d1ZhbHVlKCk7CisgICAgICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBjb2x1bW5MYXlv
dXQuZWZmZWN0aXZlTG9naWNhbFdpZHRoLnBlcmNlbnQoKTsKICAgICAgICAgICAgICAgICBhbGxD
b2xzQXJlRml4ZWQgPSBmYWxzZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmICghY29s
dW1uTGF5b3V0LmVtcHR5Q2VsbHNPbmx5KQpAQCAtMzU0LDE0ICszNTgsMTQgQEAgaW50IEF1dG9U
YWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogCiAgICAgICAgIC8vIGFkanVzdCB0YWJs
ZSBtYXggd2lkdGggaWYgbmVlZGVkCiAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUGVy
Y2VudCgpKSB7Ci0gICAgICAgICAgICBpZiAodG90YWxQZXJjZW50ID4gY2VsbExvZ2ljYWxXaWR0
aC5yYXdWYWx1ZSgpIHx8IGFsbENvbHNBcmVQZXJjZW50KSB7CisgICAgICAgICAgICBpZiAodG90
YWxQZXJjZW50ID4gY2VsbExvZ2ljYWxXaWR0aC5wZXJjZW50KCkgfHwgYWxsQ29sc0FyZVBlcmNl
bnQpIHsKICAgICAgICAgICAgICAgICAvLyBjYW4ndCBzYXRpZnkgdGhpcyBjb25kaXRpb24sIHRy
ZWF0IGFzIHZhcmlhYmxlCiAgICAgICAgICAgICAgICAgY2VsbExvZ2ljYWxXaWR0aCA9IExlbmd0
aCgpOwogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBtYXhMb2dpY2FsV2lk
dGggPSBtYXgobWF4TG9naWNhbFdpZHRoLCBtYXgoc3Bhbk1heExvZ2ljYWxXaWR0aCwgY2VsbE1h
eExvZ2ljYWxXaWR0aCkgKiAxMDAgKiBwZXJjZW50U2NhbGVGYWN0b3IgLyBjZWxsTG9naWNhbFdp
ZHRoLnJhd1ZhbHVlKCkpOworICAgICAgICAgICAgICAgIG1heExvZ2ljYWxXaWR0aCA9IG1heCht
YXhMb2dpY2FsV2lkdGgsIHN0YXRpY19jYXN0PGZsb2F0PihtYXgoc3Bhbk1heExvZ2ljYWxXaWR0
aCwgY2VsbE1heExvZ2ljYWxXaWR0aCkgKiAxMDAgIC8gY2VsbExvZ2ljYWxXaWR0aC5wZXJjZW50
KCkpKTsKIAogICAgICAgICAgICAgICAgIC8vIGFsbCBub24gcGVyY2VudCBjb2x1bW5zIGluIHRo
ZSBzcGFuIGdldCBwZXJjZW50IHZhbHVlcyB0byBzdW0gdXAgY29ycmVjdGx5LgotICAgICAgICAg
ICAgICAgIGludCBwZXJjZW50TWlzc2luZyA9IGNlbGxMb2dpY2FsV2lkdGgucmF3VmFsdWUoKSAt
IHRvdGFsUGVyY2VudDsKKyAgICAgICAgICAgICAgICBmbG9hdCBwZXJjZW50TWlzc2luZyA9IGNl
bGxMb2dpY2FsV2lkdGgucGVyY2VudCgpIC0gdG90YWxQZXJjZW50OwogICAgICAgICAgICAgICAg
IGZsb2F0IHRvdGFsV2lkdGggPSAwOwogICAgICAgICAgICAgICAgIGZvciAodW5zaWduZWQgcG9z
ID0gZWZmQ29sOyBwb3MgPCBsYXN0Q29sOyArK3BvcykgewogICAgICAgICAgICAgICAgICAgICBp
ZiAoIW1fbGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2VudCgp
KQpAQCAtMzcwLDcgKzM3NCw3IEBAIGludCBBdXRvVGFibGVMYXlvdXQ6OmNhbGNFZmZlY3RpdmVM
b2dpY2EKIAogICAgICAgICAgICAgICAgIGZvciAodW5zaWduZWQgcG9zID0gZWZmQ29sOyBwb3Mg
PCBsYXN0Q29sICYmIHRvdGFsV2lkdGggPiAwOyArK3BvcykgewogICAgICAgICAgICAgICAgICAg
ICBpZiAoIW1fbGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2Vu
dCgpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpbnQgcGVyY2VudCA9IHN0YXRpY19jYXN0
PGludD4ocGVyY2VudE1pc3NpbmcgKiBzdGF0aWNfY2FzdDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3Rb
cG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpIC8gdG90YWxXaWR0aCk7CisgICAgICAgICAg
ICAgICAgICAgICAgICBmbG9hdCBwZXJjZW50ID0gcGVyY2VudE1pc3NpbmcgKiBzdGF0aWNfY2Fz
dDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3RbcG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpIC8g
dG90YWxXaWR0aDsKICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsV2lkdGggLT0gbV9sYXlv
dXRTdHJ1Y3RbcG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGg7CiAgICAgICAgICAgICAgICAg
ICAgICAgICBwZXJjZW50TWlzc2luZyAtPSBwZXJjZW50OwogICAgICAgICAgICAgICAgICAgICAg
ICAgaWYgKHBlcmNlbnQgPiAwKQpAQCAtNDkxLDcgKzQ5NSw3IEBAIHZvaWQgQXV0b1RhYmxlTGF5
b3V0OjpsYXlvdXQoKQogICAgIGludCBudW1GaXhlZCA9IDA7CiAgICAgZmxvYXQgdG90YWxBdXRv
ID0gMDsKICAgICBmbG9hdCB0b3RhbEZpeGVkID0gMDsKLSAgICBpbnQgdG90YWxQZXJjZW50ID0g
MDsKKyAgICBmbG9hdCB0b3RhbFBlcmNlbnQgPSAwOwogICAgIGludCBhbGxvY0F1dG8gPSAwOwog
ICAgIHVuc2lnbmVkIG51bUF1dG9FbXB0eUNlbGxzT25seSA9IDA7CiAKQEAgLTUwNCw3ICs1MDgs
NyBAQCB2b2lkIEF1dG9UYWJsZUxheW91dDo6bGF5b3V0KCkKICAgICAgICAgc3dpdGNoIChsb2dp
Y2FsV2lkdGgudHlwZSgpKSB7CiAgICAgICAgIGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgIGhh
dmVQZXJjZW50ID0gdHJ1ZTsKLSAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBsb2dpY2FsV2lk
dGgucmF3VmFsdWUoKTsKKyAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBsb2dpY2FsV2lkdGgu
cGVyY2VudCgpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgUmVsYXRpdmU6CiAg
ICAgICAgICAgICB0b3RhbFJlbGF0aXZlICs9IGxvZ2ljYWxXaWR0aC52YWx1ZSgpOwpAQCAtNTM4
LDkgKzU0Miw5IEBAIHZvaWQgQXV0b1RhYmxlTGF5b3V0OjpsYXlvdXQoKQogICAgICAgICAgICAg
ICAgIG1fbGF5b3V0U3RydWN0W2ldLmNvbXB1dGVkTG9naWNhbFdpZHRoID0gY2VsbExvZ2ljYWxX
aWR0aDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBpZiAodG90YWxQZXJjZW50
ID4gMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKSB7CisgICAgICAgIGlmICh0b3RhbFBlcmNlbnQg
PiAxMDApIHsKICAgICAgICAgICAgIC8vIHJlbW92ZSBvdmVyYWxsb2NhdGVkIHNwYWNlIGZyb20g
dGhlIGxhc3QgY29sdW1ucwotICAgICAgICAgICAgaW50IGV4Y2VzcyA9IHRhYmxlTG9naWNhbFdp
ZHRoICogKHRvdGFsUGVyY2VudCAtIDEwMCAqIHBlcmNlbnRTY2FsZUZhY3RvcikgLyAoMTAwICog
cGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgIGludCBleGNlc3MgPSB0YWJsZUxvZ2lj
YWxXaWR0aCAqICh0b3RhbFBlcmNlbnQgLSAxMDApIC8gMTAwOwogICAgICAgICAgICAgZm9yIChp
bnQgaSA9IG5FZmZDb2xzIC0gMTsgaSA+PSAwOyAtLWkpIHsKICAgICAgICAgICAgICAgICBpZiAo
bV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGludCBjZWxsTG9naWNhbFdpZHRoID0gbV9sYXlvdXRTdHJ1Y3Rb
aV0uY29tcHV0ZWRMb2dpY2FsV2lkdGg7CkBAIC02MDcsMTMgKzYxMSwxMyBAQCB2b2lkIEF1dG9U
YWJsZUxheW91dDo6bGF5b3V0KCkKICAgICB9CiAKICAgICAvLyBzcHJlYWQgb3ZlciBwZXJjZW50
IGNvbHVtcwotICAgIGlmIChhdmFpbGFibGUgPiAwICYmIG1faGFzUGVyY2VudCAmJiB0b3RhbFBl
cmNlbnQgPCAxMDAgKiBwZXJjZW50U2NhbGVGYWN0b3IpIHsKKyAgICBpZiAoYXZhaWxhYmxlID4g
MCAmJiBtX2hhc1BlcmNlbnQgJiYgdG90YWxQZXJjZW50IDwgMTAwKSB7CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbkVmZkNvbHM7ICsraSkgewogICAgICAgICAgICAgTGVuZ3RoJiBs
b2dpY2FsV2lkdGggPSBtX2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGg7CiAg
ICAgICAgICAgICBpZiAobG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKSB7Ci0gICAgICAgICAgICAg
ICAgaW50IGNlbGxMb2dpY2FsV2lkdGggPSBhdmFpbGFibGUgKiBsb2dpY2FsV2lkdGgucmF3VmFs
dWUoKSAvIHRvdGFsUGVyY2VudDsKKyAgICAgICAgICAgICAgICBpbnQgY2VsbExvZ2ljYWxXaWR0
aCA9IGF2YWlsYWJsZSAqIGxvZ2ljYWxXaWR0aC5wZXJjZW50KCkgLyB0b3RhbFBlcmNlbnQ7CiAg
ICAgICAgICAgICAgICAgYXZhaWxhYmxlIC09IGNlbGxMb2dpY2FsV2lkdGg7Ci0gICAgICAgICAg
ICAgICAgdG90YWxQZXJjZW50IC09IGxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpOworICAgICAgICAg
ICAgICAgIHRvdGFsUGVyY2VudCAtPSBsb2dpY2FsV2lkdGgucGVyY2VudCgpOwogICAgICAgICAg
ICAgICAgIG1fbGF5b3V0U3RydWN0W2ldLmNvbXB1dGVkTG9naWNhbFdpZHRoICs9IGNlbGxMb2dp
Y2FsV2lkdGg7CiAgICAgICAgICAgICAgICAgaWYgKCFhdmFpbGFibGUgfHwgIXRvdGFsUGVyY2Vu
dCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvRml4ZWRUYWJsZUxheW91dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9GaXhlZFRhYmxlTGF5b3V0LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTE4LDcgKzExOCw4IEBAIGludCBGaXhlZFRhYmxlTGF5b3V0OjpjYWxjV2lkdGhBcnJheShp
bnQKICAgICAgICAgICAgICAgICAgICAgc3BhbkluQ3VycmVudEVmZmVjdGl2ZUNvbHVtbiA9IG1f
dGFibGUtPnNwYW5PZkVmZkNvbChjdXJyZW50RWZmZWN0aXZlQ29sdW1uKTsKICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKCh3LmlzRml4ZWQoKSB8fCB3LmlzUGVyY2VudCgp
KSAmJiB3LmlzUG9zaXRpdmUoKSkgewotICAgICAgICAgICAgICAgICAgICBtX3dpZHRoW2N1cnJl
bnRFZmZlY3RpdmVDb2x1bW5dLnNldFZhbHVlKHcudHlwZSgpLCB3LnJhd1ZhbHVlKCkgKiBzcGFu
SW5DdXJyZW50RWZmZWN0aXZlQ29sdW1uKTsKKyAgICAgICAgICAgICAgICAgICAgbV93aWR0aFtj
dXJyZW50RWZmZWN0aXZlQ29sdW1uXSA9IHc7CisgICAgICAgICAgICAgICAgICAgIG1fd2lkdGhb
Y3VycmVudEVmZmVjdGl2ZUNvbHVtbl0gKj0gc3BhbkluQ3VycmVudEVmZmVjdGl2ZUNvbHVtbjsK
ICAgICAgICAgICAgICAgICAgICAgdXNlZFdpZHRoICs9IGVmZldpZHRoICogc3BhbkluQ3VycmVu
dEVmZmVjdGl2ZUNvbHVtbjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgc3Bh
biAtPSBzcGFuSW5DdXJyZW50RWZmZWN0aXZlQ29sdW1uOwpAQCAtMTY0LDEwICsxNjUsMTEgQEAg
aW50IEZpeGVkVGFibGVMYXlvdXQ6OmNhbGNXaWR0aEFycmF5KGludAogICAgICAgICAgICAgICAg
IGludCB1c2VkU3BhbiA9IDA7CiAgICAgICAgICAgICAgICAgaW50IGkgPSAwOwogICAgICAgICAg
ICAgICAgIHdoaWxlICh1c2VkU3BhbiA8IHNwYW4gJiYgY0NvbCArIGkgPCBuRWZmQ29scykgewot
ICAgICAgICAgICAgICAgICAgICBpbnQgZVNwYW4gPSBtX3RhYmxlLT5zcGFuT2ZFZmZDb2woY0Nv
bCArIGkpOworICAgICAgICAgICAgICAgICAgICBmbG9hdCBlU3BhbiA9IG1fdGFibGUtPnNwYW5P
ZkVmZkNvbChjQ29sICsgaSk7CiAgICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgc2V0IGlmIG5v
IGNvbCBlbGVtZW50IGhhcyBhbHJlYWR5IHNldCBpdC4KICAgICAgICAgICAgICAgICAgICAgaWYg
KG1fd2lkdGhbY0NvbCArIGldLmlzQXV0bygpICYmIHcudHlwZSgpICE9IEF1dG8pIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIG1fd2lkdGhbY0NvbCArIGldLnNldFZhbHVlKHcudHlwZSgpLCB3
LnJhd1ZhbHVlKCkgKiBlU3BhbiAvIHNwYW4pOworICAgICAgICAgICAgICAgICAgICAgICAgbV93
aWR0aFtjQ29sICsgaV0gPSB3OworICAgICAgICAgICAgICAgICAgICAgICAgbV93aWR0aFtjQ29s
ICsgaV0gKj0gZVNwYW4gLyBzcGFuOwogICAgICAgICAgICAgICAgICAgICAgICAgdXNlZFdpZHRo
ICs9IGVmZldpZHRoICogZVNwYW4gLyBzcGFuOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICAgICAgIHVzZWRTcGFuICs9IGVTcGFuOwpAQCAtMjM0LDcgKzIzNiw3IEBAIHZv
aWQgRml4ZWRUYWJsZUxheW91dDo6bGF5b3V0KCkKICAgICBpbnQgYXV0b1NwYW4gPSAwOwogICAg
IGludCB0b3RhbEZpeGVkV2lkdGggPSAwOwogICAgIGludCB0b3RhbFBlcmNlbnRXaWR0aCA9IDA7
Ci0gICAgaW50IHRvdGFsUmF3UGVyY2VudCA9IDA7CisgICAgZmxvYXQgdG90YWxQZXJjZW50ID0g
MDsKIAogICAgIC8vIENvbXB1dGUgcmVxdWlyZW1lbnRzIGFuZCB0cnkgdG8gc2F0aXNmeSBmaXhl
ZCBhbmQgcGVyY2VudCB3aWR0aHMuCiAgICAgLy8gUGVyY2VudGFnZXMgYXJlIG9mIHRoZSB0YWJs
ZSdzIHdpZHRoLCBzbyBmb3IgZXhhbXBsZQpAQCAtMjQ3LDcgKzI0OSw3IEBAIHZvaWQgRml4ZWRU
YWJsZUxheW91dDo6bGF5b3V0KCkKICAgICAgICAgfSBlbHNlIGlmIChtX3dpZHRoW2ldLmlzUGVy
Y2VudCgpKSB7CiAgICAgICAgICAgICBjYWxjV2lkdGhbaV0gPSBtX3dpZHRoW2ldLmNhbGNWYWx1
ZSh0YWJsZUxvZ2ljYWxXaWR0aCk7CiAgICAgICAgICAgICB0b3RhbFBlcmNlbnRXaWR0aCArPSBj
YWxjV2lkdGhbaV07Ci0gICAgICAgICAgICB0b3RhbFJhd1BlcmNlbnQgKz0gbV93aWR0aFtpXS5y
YXdWYWx1ZSgpOworICAgICAgICAgICAgdG90YWxQZXJjZW50ICs9IG1fd2lkdGhbaV0ucGVyY2Vu
dCgpOwogICAgICAgICB9IGVsc2UgaWYgKG1fd2lkdGhbaV0uaXNBdXRvKCkpIHsKICAgICAgICAg
ICAgIG51bUF1dG8rKzsKICAgICAgICAgICAgIGF1dG9TcGFuICs9IG1fdGFibGUtPnNwYW5PZkVm
ZkNvbChpKTsKQEAgLTI3MCwxMSArMjcyLDExIEBAIHZvaWQgRml4ZWRUYWJsZUxheW91dDo6bGF5
b3V0KCkKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgIGlmICh0b3RhbFJhd1BlcmNlbnQpIHsKKyAgICAgICAgICAgIGlm
ICh0b3RhbFBlcmNlbnQpIHsKICAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnRXaWR0aCA9IDA7
CiAgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuRWZmQ29sczsgaSsrKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGlmIChtX3dpZHRoW2ldLmlzUGVyY2VudCgpKSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBjYWxjV2lkdGhbaV0gPSBtX3dpZHRoW2ldLnJhd1ZhbHVlKCkgKiAo
dGFibGVMb2dpY2FsV2lkdGggLSB0b3RhbEZpeGVkV2lkdGgpIC8gdG90YWxSYXdQZXJjZW50Owor
ICAgICAgICAgICAgICAgICAgICAgICAgY2FsY1dpZHRoW2ldID0gbV93aWR0aFtpXS5wZXJjZW50
KCkgKiAodGFibGVMb2dpY2FsV2lkdGggLSB0b3RhbEZpeGVkV2lkdGgpIC8gdG90YWxQZXJjZW50
OwogICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxQZXJjZW50V2lkdGggKz0gY2FsY1dpZHRo
W2ldOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQpJbmRleDogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAJKHJldmlz
aW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlv
bi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5OSw3ICsxOTksNyBAQCB2b2lkIFJlbmRlclRhYmxl
U2VjdGlvbjo6YWRkQ2VsbChSZW5kZXJUCiAgICAgICAgICAgICBzd2l0Y2ggKGxvZ2ljYWxIZWln
aHQudHlwZSgpKSB7CiAgICAgICAgICAgICAgICAgY2FzZSBQZXJjZW50OgogICAgICAgICAgICAg
ICAgICAgICBpZiAoIShjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSkgfHwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIChjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSAmJiBjUm93TG9n
aWNhbEhlaWdodC5yYXdWYWx1ZSgpIDwgbG9naWNhbEhlaWdodC5yYXdWYWx1ZSgpKSkKKyAgICAg
ICAgICAgICAgICAgICAgICAgIChjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSAmJiBjUm93
TG9naWNhbEhlaWdodC5wZXJjZW50KCkgPCBsb2dpY2FsSGVpZ2h0LnBlcmNlbnQoKSkpCiAgICAg
ICAgICAgICAgICAgICAgICAgICBtX2dyaWRbbV9jUm93XS5sb2dpY2FsSGVpZ2h0ID0gbG9naWNh
bEhlaWdodDsKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAg
IGNhc2UgRml4ZWQ6CkBAIC00MzQsMjIgKzQzNCwyMiBAQCBpbnQgUmVuZGVyVGFibGVTZWN0aW9u
OjpsYXlvdXRSb3dzKGludCB0CiAgICAgICAgICAgICBpZiAobV9ncmlkW3JdLmxvZ2ljYWxIZWln
aHQuaXNBdXRvKCkpCiAgICAgICAgICAgICAgICAgbnVtQXV0bysrOwogICAgICAgICAgICAgZWxz
ZSBpZiAobV9ncmlkW3JdLmxvZ2ljYWxIZWlnaHQuaXNQZXJjZW50KCkpCi0gICAgICAgICAgICAg
ICAgdG90YWxQZXJjZW50ICs9IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnJhd1ZhbHVlKCk7Cisg
ICAgICAgICAgICAgICAgdG90YWxQZXJjZW50ICs9IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnBl
cmNlbnQoKTsKICAgICAgICAgfQogICAgICAgICBpZiAodG90YWxQZXJjZW50KSB7CiAgICAgICAg
ICAgICAvLyB0cnkgdG8gc2F0aXNmeSBwZXJjZW50CiAgICAgICAgICAgICBpbnQgYWRkID0gMDsK
LSAgICAgICAgICAgIHRvdGFsUGVyY2VudCA9IG1pbih0b3RhbFBlcmNlbnQsIDEwMCAqIHBlcmNl
bnRTY2FsZUZhY3Rvcik7CisgICAgICAgICAgICB0b3RhbFBlcmNlbnQgPSBtaW4odG90YWxQZXJj
ZW50LCAxMDApOwogICAgICAgICAgICAgaW50IHJoID0gbV9yb3dQb3NbMV0gLSBtX3Jvd1Bvc1sw
XTsKICAgICAgICAgICAgIGZvciAoaW50IHIgPSAwOyByIDwgdG90YWxSb3dzOyByKyspIHsKICAg
ICAgICAgICAgICAgICBpZiAodG90YWxQZXJjZW50ID4gMCAmJiBtX2dyaWRbcl0ubG9naWNhbEhl
aWdodC5pc1BlcmNlbnQoKSkgewotICAgICAgICAgICAgICAgICAgICBpbnQgdG9BZGQgPSBtaW4o
ZGgsICh0b3RhbEhlaWdodCAqIG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnJhd1ZhbHVlKCkgLyAo
MTAwICogcGVyY2VudFNjYWxlRmFjdG9yKSkgLSByaCk7CisgICAgICAgICAgICAgICAgICAgIGlu
dCB0b0FkZCA9IG1pbihkaCwgc3RhdGljX2Nhc3Q8aW50PigodG90YWxIZWlnaHQgKiBtX2dyaWRb
cl0ubG9naWNhbEhlaWdodC5wZXJjZW50KCkgLyAxMDApIC0gcmgpKTsKICAgICAgICAgICAgICAg
ICAgICAgLy8gSWYgdG9BZGQgaXMgbmVnYXRpdmUsIHRoZW4gd2UgZG9uJ3Qgd2FudCB0byBzaHJp
bmsgdGhlIHJvdyAodGhpcyBidWcKICAgICAgICAgICAgICAgICAgICAgLy8gYWZmZWN0ZWQgT3V0
bG9vayBXZWIgQWNjZXNzKS4KICAgICAgICAgICAgICAgICAgICAgdG9BZGQgPSBtYXgoMCwgdG9B
ZGQpOwogICAgICAgICAgICAgICAgICAgICBhZGQgKz0gdG9BZGQ7CiAgICAgICAgICAgICAgICAg
ICAgIGRoIC09IHRvQWRkOwotICAgICAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgLT0gbV9n
cmlkW3JdLmxvZ2ljYWxIZWlnaHQucmF3VmFsdWUoKTsKKyAgICAgICAgICAgICAgICAgICAgdG90
YWxQZXJjZW50IC09IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnBlcmNlbnQoKTsKICAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKHIgPCB0b3RhbFJvd3MgLSAxKQogICAgICAg
ICAgICAgICAgICAgICByaCA9IG1fcm93UG9zW3IgKyAyXSAtIG1fcm93UG9zW3IgKyAxXTsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlckRhdGEuaAkocmV2aXNp
b24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9yZGVyRGF0YS5o
CSh3b3JraW5nIGNvcHkpCkBAIC00OSwxMyArNDksMTMgQEAgcHVibGljOgogCiAgICAgYm9vbCBo
YXNCb3JkZXJSYWRpdXMoKSBjb25zdAogICAgIHsKLSAgICAgICAgaWYgKG1fdG9wTGVmdC53aWR0
aCgpLnJhd1ZhbHVlKCkgPiAwKQorICAgICAgICBpZiAoIW1fdG9wTGVmdC53aWR0aCgpLmlzWmVy
bygpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChtX3RvcFJpZ2h0Lndp
ZHRoKCkucmF3VmFsdWUoKSA+IDApCisgICAgICAgIGlmICghbV90b3BSaWdodC53aWR0aCgpLmlz
WmVybygpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChtX2JvdHRvbUxl
ZnQud2lkdGgoKS5yYXdWYWx1ZSgpID4gMCkKKyAgICAgICAgaWYgKCFtX2JvdHRvbUxlZnQud2lk
dGgoKS5pc1plcm8oKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAobV9i
b3R0b21SaWdodC53aWR0aCgpLnJhd1ZhbHVlKCkgPiAwKQorICAgICAgICBpZiAoIW1fYm90dG9t
UmlnaHQud2lkdGgoKS5pc1plcm8oKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gODA2NjUpCisrKyBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAorMjAxMS0w
My0wOSAgUmlrIENhYmFuaWVyICA8Y2FiYW5pZXJAZ21haWwuY29tPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGJ1ZyA1NjA1MjogcGVyY2VudGFnZXMg
YXJlIGluY29ycmVjdGx5IHJvdW5kZWQgaW4gV2ViS2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjA1MgorCisgICAgICAgICogcGxhdGZvcm0vbWFj
L2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQudHh0OgorCiAyMDExLTAz
LTA5ICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQuY2hlY2tzdW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9u
LWludGVnZXItZXhwZWN0ZWQuY2hlY2tzdW0JKHJldmlzaW9uIDgwMzgxKQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQu
Y2hlY2tzdW0JKHdvcmtpbmcgY29weSkKQEAgLTEgKzEgQEAKLTQxNGNhYWEyZWUwOTgyM2ZjYzZi
MTIwMGQzMGVjMTI3ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorYzZkOTA1NTM0MWE5OTA0
OTI5Y2NjNDk0NzZjN2JkOWUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MvcGVyY2VudGFnZS1ub24taW50ZWdlci1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3Nz
L3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA4MDM4MSkKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9wZXJjZW50YWdlLW5vbi1pbnRlZ2Vy
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQCBsYXllciBhdCAo
MCwwKSBzaXplIDgwMHg1ODUKICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsNDQpIHNp
emUgOTEweDQKICAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDEwMHg0
IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsNDgp
IHNpemUgOTEweDQKLSAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDEw
MHg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KKyAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAo
MCwwKSBzaXplIDEwMXg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDAsNTIpIHNpemUgOTAweDQKICAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBh
dCAoMCwwKSBzaXplIDEwMHg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxv
Y2sge0RJVn0gYXQgKDAsNTYpIHNpemUgODkweDQKQEAgLTQ5LDcgKzQ5LDcgQEAgbGF5ZXIgYXQg
KDAsMCkgc2l6ZSA4MDB4NTg1CiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDg0KSBz
aXplIDg0MHg0CiAgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMDB4
NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDg4
KSBzaXplIDgzNXg0Ci0gICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAx
MDB4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCisgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQg
KDAsMCkgc2l6ZSAxMDF4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2Nr
IHtESVZ9IGF0ICgwLDkyKSBzaXplIDgyNXg0CiAgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0g
YXQgKDAsMCkgc2l6ZSAxMDB4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJs
b2NrIHtESVZ9IGF0ICgwLDk2KSBzaXplIDgxNXg0CkBAIC04NCw2MSArODQsNjEgQEAgbGF5ZXIg
YXQgKDgsMTI2KSBzaXplIDEwMDB4MjAKICAgUmVuZGVyVGFibGUge1RBQkxFfSBhdCAoMCwwKSBz
aXplIDEwMDB4MjAKICAgICBSZW5kZXJUYWJsZVNlY3Rpb24ge1RCT0RZfSBhdCAoMCwwKSBzaXpl
IDEwMDB4MjAKICAgICAgIFJlbmRlclRhYmxlUm93IHtUUn0gYXQgKDAsMCkgc2l6ZSAxMDAweDIw
Ci0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgwLDEpIHNpemUgMTF4MTggW2JnY29s
b3I9IzAwMDAwMDdGXSBbcj0wIGM9MCBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2Vs
bCB7VER9IGF0ICgwLDEpIHNpemUgMTJ4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MCBy
cz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgx
OAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMSwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3
Rl0gW3I9MCBjPTEgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAo
MTIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xIHJzPTEgY3M9MV0K
ICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAg
ICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVD
ZWxsIHtURH0gYXQgKDIxLDEpIHNpemUgMTN4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9
MiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyMiwxKSBzaXpl
IDEzeDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTIgcnM9MSBjcz0xXQogICAgICAgICAg
IFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAgIHRleHQg
cnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBh
dCAoMzQsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0zIHJzPTEgY3M9
MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDM1LDEpIHNpemUgMTB4MTggW2Jn
Y29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MyBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAs
MCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICg0NCwxKSBz
aXplIDE1eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTQgcnM9MSBjcz0xXQorICAgICAg
ICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoNDUsMSkgc2l6ZSAxNngxOCBbYmdjb2xvcj0jMDAw
MDAwN0ZdIFtyPTAgYz00IHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0g
YXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0
OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDU5LDEpIHNpemUgMTB4MTgg
W2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9NSBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRh
YmxlQ2VsbCB7VER9IGF0ICg2MSwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9
MCBjPTUgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBz
aXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAg
ICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoNjksMSkgc2l6ZSAxN3gxOCBbYmdjb2xvcj0j
MDAwMDAwN0ZdIFtyPTAgYz02IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtU
RH0gYXQgKDcxLDEpIHNpemUgMTd4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9NiBycz0x
IGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAog
ICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRl
clRhYmxlQ2VsbCB7VER9IGF0ICg4NiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0g
W3I9MCBjPTcgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoODgs
MSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz03IHJzPTEgY3M9MV0KICAg
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAg
ICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxs
IHtURH0gYXQgKDk2LDEpIHNpemUgMjB4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9OCBy
cz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICg5OCwxKSBzaXplIDIw
eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTggcnM9MSBjcz0xXQogICAgICAgICAgIFJl
bmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVu
IGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAo
MTE2LDEpIHNpemUgMTB4MTggW2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9OSBycz0xIGNzPTFd
CisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMTgsMSkgc2l6ZSAxMHgxOCBbYmdj
b2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz05IHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0
IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCww
KSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDEyNiwxKSBz
aXplIDIxeDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTEwIHJzPTEgY3M9MV0KKyAgICAg
ICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDEyOCwxKSBzaXplIDIyeDE4IFtiZ2NvbG9yPSMw
MDAwMDA3Rl0gW3I9MCBjPTEwIHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0
aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDE0NywxKSBzaXplIDEw
eDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9MCBjPTExIHJzPTEgY3M9MV0KKyAgICAgICAgUmVu
ZGVyVGFibGVDZWxsIHtURH0gYXQgKDE1MCwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3
Rl0gW3I9MCBjPTExIHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQg
KDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAi
ICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDE1NywxKSBzaXplIDIzeDE4IFti
Z2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTEyIHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFi
bGVDZWxsIHtURH0gYXQgKDE2MCwxKSBzaXplIDI0eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9
MCBjPTEyIHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkg
c2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAg
ICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDE4MCwxMCkgc2l6ZSAxMHgwIFtiZ2NvbG9y
PSMwMEZGMDA3Rl0gW3I9MCBjPTEzIHJzPTEgY3M9MV0KLSAgICAgICAgUmVuZGVyVGFibGVDZWxs
IHtURH0gYXQgKDE5MCwxKSBzaXplIDI1eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTE0
IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDE4NCwxMCkgc2l6
ZSAxMHgwIFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9MCBjPTEzIHJzPTEgY3M9MV0KKyAgICAgICAg
UmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDE5NCwxKSBzaXplIDI1eDE4IFtiZ2NvbG9yPSMwMDAw
MDA3Rl0gW3I9MCBjPTE0IHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0g
YXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0
OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDIxNSwxKSBzaXplIDEweDE4
IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9MCBjPTE1IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVy
VGFibGVDZWxsIHtURH0gYXQgKDIxOSwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0g
W3I9MCBjPTE1IHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAs
MCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIK
LSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDIyNSwxKSBzaXplIDI3eDE4IFtiZ2Nv
bG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTE2IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVD
ZWxsIHtURH0gYXQgKDIyOSwxKSBzaXplIDI3eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBj
PTE2IHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6
ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAg
ICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDI1MiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMw
MEZGMDA3Rl0gW3I9MCBjPTE3IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtU
RH0gYXQgKDI1NiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9MCBjPTE3IHJz
PTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4
CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVu
ZGVyVGFibGVDZWxsIHtURH0gYXQgKDI2MiwxKSBzaXplIDMweDE4IFtiZ2NvbG9yPSMwMDAwMDA3
Rl0gW3I9MCBjPTE4IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQg
KDI2NiwxKSBzaXplIDMweDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTE4IHJzPTEgY3M9
MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAg
ICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFi
bGVDZWxsIHtURH0gYXQgKDI5MiwxKSBzaXplIDcwOHgxOCBbcj0wIGM9MTkgcnM9MSBjcz0xXQor
ICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMjk2LDEpIHNpemUgNzA0eDE4IFtyPTAg
Yz0xOSBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNp
emUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCkluZGV4
OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MvcGVyY2VudGFnZS1ub24taW50ZWdl
ci1leHBlY3RlZC5wbmcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmlsZSBtYXJrZWQgYXMg
YSBiaW5hcnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGltYWdlL3BuZwoKaVZCT1J3MEtHZ29BQUFB
TlNVaEVVZ0FBQXlBQUFBSllDQVlBQUFDYWRvSndBQUFDN21sRFExQkpRME1nVUhKdlptbHNaUUFB
ZUFHRgpWTTlyRTBFVS9qWnVxZEFpQ0ZwckRySjRrQ0pKV2F0b1JkUTIvUkZpYXd6Ykg3WkZrR1F6
U2RadU51dnVKcldsaU9UaTBTcmVSZTJoCkIvK0FIbnJ3WkM5S2hWcEZLTjZyS0dLaEZ5M3h6VzVN
dHFYcXdNNSs4OTQzNzMxdmR0OEFEWExTTlBXQUJPUU54MUtpRVdsc2ZFSnEKL0lnQWpxSUpRVFFs
VmR2c1RpUUdRWU56K1h2bjJIb1BnVnRXdzN2N2Q3SjNyWnJTdHBvSGhQMUE0RWVhMlNxdzd4ZHhD
bGtTQW9nOAozNkVweDNRSTMrUFk4dXlQT1U1NWVNRzFEeXM5eEZraWZFQTFMYzUvVGJoVHpTWFRR
SU5JT0pUMWNWSStuTmVMbE5jZEIybHVac2JJCkVMMVBrS2E3ek82cllxR2NUdllPa0wyZDlINU9z
OTQrd2lIQ0N4bXRQMGE0alo3MWpOVS80bUhocE9iRWhqMGNHRFgwK0dBVnR4cXAKK0RYQ0ZGOFFU
U2VpVkhIWkxnM3htSzc5VnZKS2duQ1FPTXBrWVlCeldraFAxMHh1K0xxSEJYMG0xeE92NG5kV1Vl
RjVqeE5uM3RUZAo3MFhhQXE4d0RoME1HZ3lhRFVoUUVFVUVZWml3VUVDR1BCb3hOTEp5UHlPckJo
dVRlekoxSkdxN2RHSkVzVUY3TnR3OXQxR2szVHorCktDSnhsRU8xQ0pMOFFmNHFyOGxQNVhuNXkx
eXcyRmIzbEsyYm1ycnk0RHZGNVptNUdoN1gwOGpqYzAxZWZKWFVkcE5YUjVhc2VYcTgKbXV3YVAr
eFhsekhtZ2pXUHhIT3crL0V0WDVYTWx5bU1GTVhqVmZQcVM0UjFXakUzMzU5c2Z6czk0aTdQTHJY
V2M2MkppemRXbTVkbgovV3BJKys2cXZKUG1WZmxQWHZYeC9HZk54R1BpS1RFbWRvcm5JWW1YeFM3
eGt0aExxd3ZpWUczSENKMlZoaW5TYlpINkpOVmdZSnE4CjlTOWRQMXQ0dlVaL0RQVlJsQm5NMGxT
SjkzL0NLbVEwbmJrT2IvcVAyOGY4RitUM2l1ZWZLQUl2Yk9ESW1icHRVM0h2RUtGbHBXNXoKcmdJ
WHY5Rjk4TFp1YTZOK09Qd0VXRHlyRnExU05aOGd2QUVjZG9kNkh1Z3BtTk9XbHMwNVVvY3NuNU82
NmNwaVVzeFEyME5TVXRjbAoxMlZMRnJPWlZXTHBkdGlaMHgxdUhLRTVRdmZFcDBwbGsvcXY4Ukd3
L2JCUytmbXNVdGwrVGhyV2daZjZiOEM4L1VYQWVJdUpBQUFnCkFFbEVRVlI0QWUzZDNZOWNkM2tI
OE4vdXp2bzF0aE1uaEJBZ09DMUZDU2k4Vm9DRW9FalFDN2poa2hkeHlRMWM4QzhrbHZnVGtMamgK
RWdrUU55QlZCVUZCRkZWQ2JWb0ZKYVUwS2FTRWtsTHk0cndudG5mdDdlODV5VEc3anNmT2FNNmF4
L3Q4UmxyUDdzdzVaNTduOCt6TQpudStlTTk2VnJYNXBMZ1FJRUNCQWdBQUJBZ1FJRUxnS0FxdFg0
VEU4QkFFQ0JBZ1FJRUNBQUFFQ0JBWUJBY1EzQWdFQ0JBZ1FJRUNBCkFBRUNWMDFBQUxscTFCNklB
QUVDQkFnUUlFQ0FBQUVCeFBjQUFRSUVDQkFnUUlBQUFRSlhUVUFBdVdyVUhvZ0FBUUlFQ0JBZ1FJ
QUEKQVFIRTl3QUJBZ1FJRUNCQWdBQUJBbGROUUFDNWF0UWVpQUFCQWdRSUVDQkFnQUNCMlpVSVZr
NnVYR2tSOTE5RmdhMjcvZG1XcThqdApvUWdRSUVDQUFBRUNCQ1lXY0FSa1lsQ2JJMENBQUFFQ0JB
Z1FJRUJndm9BQU10L0dQUVFJRUNCQWdBQUJBZ1FJVEN3Z2dFd01hbk1FCkNCQWdRSUFBQVFJRUNN
d1hFRURtMjdpSEFBRUNCQWdRSUVDQUFJR0pCUVNRaVVGdGpnQUJBZ1FJRUNCQWdBQ0IrUUlDeUh3
Yjl4QWcKUUlBQUFRSUVDQkFnTUxHQUFESXhxTTBSSUVDQUFBRUNCQWdRSURCZlFBQ1piK01lQWdR
SUVDQkFnQUFCQWdRbUZoQkFKZ2ExT1FJRQpDQkFnUUlBQUFRSUU1Z3NJSVBOdDNFT0FBQUVDQkFn
UUlFQ0F3TVFDQXNqRW9EWkhnQUFCQWdRSUVDQkFnTUI4QVFGa3ZvMTdDQkFnClFJQUFBUUlFQ0JD
WVdFQUFtUmpVNWdnUUlFQ0FBQUVDQkFnUW1DOGdnTXkzY1E4QkFnUUlFQ0JBZ0FBQkFoTUxDQ0FU
ZzlvY0FRSUUKQ0JBZ1FJQUFBUUx6QlFTUStUYnVJVUNBQUFFQ0JBZ1FJRUJnWWdFQlpHSlFteU5B
Z0FBQkFnUUlFQ0JBWUw2QUFETGZ4ajBFQ0JBZwpRSUFBQVFJRUNFd3NJSUJNREdwekJBZ1FJRUNB
QUFFQ0JBak1GeEJBNXR1NGh3QUJBZ1FJRUNCQWdBQ0JpUVVFa0lsQmJZNEFBUUlFCkNCQWdRSUFB
Z2ZrQ0FzaDhHL2NRSUVDQUFBRUNCQWdRSURDeGdBQXlNYWpORVNCQWdBQUJBZ1FJRUNBd1gwQUFt
Vy9qSGdJRUNCQWcKUUlBQUFRSUVKaFlRUUNZR3RUa0NCQWdRSUVDQUFBRUNCT1lMQ0NEemJkeERn
QUFCQWdRSUVDQkFnTURFQWdMSXhLQTJSNEFBQVFJRQpDQkFnUUlEQWZBRUJaTDZOZXdnUUlFQ0FB
QUVDQkFnUW1GaEFBSmtZMU9ZSUVDQkFnQUFCQWdRSUVKZ3ZJSURNdDNFUEFRSUVDQkFnClFJQUFB
UUlUQ3dnZ0U0UGFIQUVDQkFnUUlFQ0FBQUVDOHdVRWtQazI3aUZBZ0FBQkFnUUlFQ0JBWUdJQkFX
UmlVSnNqUUlBQUFRSUUKQ0JBZ1FHQytnQUF5MzhZOUJBZ1FJRUNBQUFFQ0JBaE1MQ0NBVEF4cWN3
UUlFQ0JBZ0FBQkFnUUl6QmNRUU9iYnVJY0FBUUlFQ0JBZwpRSUFBZ1lrRkJKQ0pRVzJPQUFFQ0JB
Z1FJRUNBQUlINUFnTElmQnYzRUNCQWdBQUJBZ1FJRUNBd3NZQUFNakdvelJFZ1FJQUFBUUlFCkNC
QWdNRjlBQUpsdjR4NENCQWdRSUVDQUFBRUNCQ1lXRUVBbUJyVTVBZ1FJRUNCQWdBQUJBZ1RtQ3dn
ZzgyM2NRNEFBQVFJRUNCQWcKUUlEQXhBSUN5TVNnTmtlQUFBRUNCQWdRSUVDQXdId0JBV1Mralhz
SUVDQkFnQUFCQWdRSUVKaFlRQUNaR05UbUNCQWdRSUFBQVFJRQpDQkNZTHlDQXpMZHhEd0VDQkFn
UUlFQ0FBQUVDRXdzSUlCT0QyaHdCQWdRSUVDQkFnQUFCQXZNRkJKRDVOaW52T1hueVpNcTZGRVdB
CkFBRUNCQWdRSUVEZ3RRZ0lJSzlGeVRJRUNCQWdRSUFBQVFJRUNFd2lJSUJNd21nakJBZ1FJRUNB
QUFFQ0JBaThGZ0VCNUxVb1dZWUEKQVFJRUNCQWdRSUFBZ1VrRVZyYjY1WEpiV2ptNWNybTczWGVW
QmJidXZ1eTRybkkxSG80QUFRSUVDQkFnUUlEQVlnS09nQ3ptWldrQwpCQWdRSUVDQUFBRUNCSllR
RUVDV3dMTXFBUUlFQ0JBZ1FJQUFBUUtMQ1FnZ2kzbFptZ0FCQWdRSUVDQkFnQUNCSlFRRWtDWHdy
RXFBCkFBRUNCQWdRSUVDQXdHSUNBc2hpWHBZbVFJQUFBUUlFQ0JBZ1FHQUpBUUZrQ1R5ckVpQkFn
QUFCQWdRSUVDQ3dtSUFBc3BpWHBRa1EKSUVDQUFBRUNCQWdRV0VKQUFGa0N6Nm9FQ0JBZ1FJQUFB
UUlFQ0N3bUlJQXM1bVZwQWdRSUVDQkFnQUFCQWdTV0VCQkFsc0N6S2dFQwpCQWdRSUVDQUFBRUNp
d2tJSUl0NVdab0FBUUlFQ0JBZ1FJQUFnU1VFQkpBbDhLeEtnQUFCQWdRSUVDQkFnTUJpQWdMSVls
NldKa0NBCkFBRUNCQWdRSUVCZ0NRRUJaQWs4cXhJZ1FJQUFBUUlFQ0JBZ3NKaUFBTEtZbDZVSkVD
QkFnQUFCQWdRSUVGaENRQUJaQXMrcUJBZ1EKSUVDQUFBRUNCQWdzSmlDQUxPWmxhUUlFQ0JBZ1FJ
QUFBUUlFbGhBUVFKYkFzeW9CQWdRSUVDQkFnQUFCQW9zSkNDQ0xlVm1hQUFFQwpCQWdRSUVDQUFJ
RWxCQVNRSmZDc1NvQUFBUUlFQ0JBZ1FJREFZZ0lDeUdKZWxpWkFnQUFCQWdRSUVDQkFZQWtCQVdR
SlBLc1NJRUNBCkFBRUNCQWdRSUxDWWdBQ3ltSmVsQ1JBZ1FJQUFBUUlFQ0JCWVFrQUFXUUxQcWdR
SUVDQkFnQUFCQWdRSUxDWWdnQ3ptWldrQ0JBZ1EKSUVDQUFBRUNCSllRRUVDV3dMTXFBUUlFQ0JB
Z1FJQUFBUUtMQ1FnZ2kzbFptZ0FCQWdRSUVDQkFnQUNCSlFRRWtDWHdyRXFBQUFFQwpCQWdRSUVD
QXdHSUNBc2hpWHBZbVFJQUFBUUlFQ0JBZ1FHQUpBUUZrQ1R5ckVpQkFnQUFCQWdRSUVDQ3dtSUFB
c3BpWHBRa1FJRUNBCkFBRUNCQWdRV0VKQUFGa0N6Nm9FQ0JBZ1FJQUFBUUlFQ0N3bUlJQXM1bVZw
QWdRSUVDQkFnQUFCQWdTV0VCQkFsc0N6S2dFQ0JBZ1EKSUVDQUFBRUNpd2tJSUl0NVdab0FBUUlF
Q0JBZ1FJQUFnU1VFQkpBbDhQNGNxNTQ4ZWZMUDhiQWVrd0FCQWdRSUVDQkFnTUFrQWdMSQpKSXcy
UW9BQUFRSUVDQkFnUUlEQWF4RVFRRjZMa21VSUVDQkFnQUFCQWdRSUVKaEVRQUNaaE5GR0NCQWdR
SUFBQVFJRUNCQjRMUUlyClcvMXl1UVZYVHE1YzdtNzNYV1dCcmJzdk82NnJYSTJISTBDQUFBRUNC
QWdRSUxDWWdDTWdpM2xabWdBQkFnUUlFQ0JBZ0FDQkpRUUUKa0NYd3JFcUFBQUVDQkFnUUlFQ0F3
R0lDQXNoaVhwWW1RSUFBQVFJRUNCQWdRR0FKQVFGa0NUeXJFaUJBZ0FBQkFnUUlFQ0N3bUlBQQpz
cGlYcFFrUUlFQ0FBQUVDQkFnUVdFSkFBRmtDejZvRUNCQWdRSUFBQVFJRUNDd21JSUFzNW1WcEFn
UUlFQ0JBZ0FBQkFnU1dFTGppCjN3RlpZdHRXSlVDQUFBRUNCQWdRSUVDQXdBNEJSMEIyY1BpQ0FB
RUNCQWdRSUVDQUFJSGRGQkJBZGxQWHRna1FJRUNBQUFFQ0JBZ1EKMkNFZ2dPemc4QVVCQWdRSUVD
QkFnQUFCQXJzcElJRHNwcTV0RXlCQWdBQUJBZ1FJRUNDd1EwQUEyY0hoQ3dJRUNCQWdRSUFBQVFJ
RQpkbE5BQU5sTlhkc21RSUFBQVFJRUNCQWdRR0NIZ0FDeWc4TVhCQWdRSUVDQUFBRUNCQWpzcG9B
QXNwdTZ0azJBQUFFQ0JBZ1FJRUNBCndBNEJBV1FIaHk4SUVDQkFnQUFCQWdRSUVOaE5BUUZrTjNW
dG13QUJBZ1FJRUNCQWdBQ0JIUUlDeUE0T1h4QWdRSUFBQVFJRUNCQWcKc0pzQ0FzaHU2dG8yQVFJ
RUNCQWdRSUFBQVFJN0JBU1FIUnkrSUVDQUFBRUNCQWdRSUVCZ053VUVrTjNVdFcwQ0JBZ1FJRUNB
QUFFQwpCSFlJQ0NBN09IeEJnQUFCQWdRSUVDQkFnTUJ1Q2dnZ3U2bHIyd1FJRUNCQWdBQUJBZ1FJ
N0JBUVFIWncrSUlBQVFJRUNCQWdRSUFBCmdkMFVtRjFwNHlzblY2NjB5Si91djZkL2V2ZWZ2cHo3
V1N4M2N1NjlsNzRqMXRtdGJZK1BHSThSbHlzOXpqM0RVb3YzOE1wcXc5VzQKamF2eFdCa2VOMm9Z
ZTQ3UEw5ZjM5dVVXL1Q2SmJWL3VjczlGZDg2cjQrTGxwcTRqeXJqNE1mNmN0VVE5Y2JsbitQZFAv
MlNvNlUvVgpESi9kczYzSXUrK2VWK0JGSy9tU0FBRUNCQWdRU0NQZ0NFaWFVU2lFQUFFQ0JBZ1FJ
RUNBd040WEVFRDIvb3gxU0lBQUFRSUVDQkFnClFDQ05nQUNTWmhRS0lVQ0FBQUVDQkFnUUlMRDNC
UVNRdlQ5akhSSWdRSUFBQVFJRUNCQklJeUNBcEJtRlFnZ1FJRUNBQUFFQ0JBanMKZlFFQlpPL1BX
SWNFQ0JBZ1FJQUFBUUlFMGdnSUlHbEdvUkFDQkFnUUlFQ0FBQUVDZTE5QUFObjdNOVloQVFJRUNC
QWdRSUFBZ1RRQwpBa2lhVVNpRUFBRUNCQWdRSUVDQXdONFhFRUQyL294MVNJQUFBUUlFQ0JBZ1FD
Q05nQUNTWmhRS0lVQ0FBQUVDQkFnUUlMRDNCUVNRCnZUOWpIUklnUUlBQUFRSUVDQkJJSXlDQXBC
bUZRZ2dRSUVDQUFBRUNCQWpzZlFFQlpPL1BXSWNFQ0JBZ1FJQUFBUUlFMGdnSUlHbEcKb1JBQ0JB
Z1FJRUNBQUFFQ2UxOUFBTm43TTlZaEFRSUVDQkFnUUlBQWdUUUNBa2lhVVNpRUFBRUNCQWdRSUVD
QXdONFhFRUQyL294MQpTSUFBQVFJRUNCQWdRQ0NOZ0FDU1poUUtJVUNBQUFFQ0JBZ1FJTEQzQlZh
MittWHZ0NmxEQWdRSUVDQkFnQUFCQWdReUNEZ0NrbUVLCmFpQkFnQUFCQWdRSUVDQlFSRUFBS1RK
b2JSSWdRSUFBQVFJRUNCRElJQ0NBWkppQ0dnZ1FJRUNBQUFFQ0JBZ1VFUkJBaWd4YW13UUkKRUNC
QWdBQUJBZ1F5Q0FnZ0dhYWdCZ0lFQ0JBZ1FJQUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVN
QWdKSWhpbW9nUUFCQWdRSQpFQ0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnUUNDRGdBQ1NZUXBx
SUVDQUFBRUNCQWdRSUZCRVFBQXBNbWh0RWlCQWdBQUJBZ1FJCkVNZ2dJSUJrbUlJYUNCQWdRSUFB
QVFJRUNCUVJFRUNLREZxYkJBZ1FJRUNBQUFFQ0JESUlDQ0FacHFBR0FnUUlFQ0JBZ0FBQkFrVUUK
QkpBaWc5WW1BUUlFQ0JBZ1FJQUFnUXdDQWtpR0thaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpn
QUFCQWdRSUVDQkFJSU9BQUpKaApDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTSUVDQUFBRUNC
QWdReUNBZ2dHU1lnaG9JRUNCQWdBQUJBZ1FJRkJFUVFJb01XcHNFCkNCQWdRSUFBQVFJRU1nZ0lJ
Qm1tb0FZQ0JBZ1FJRUNBQUFFQ1JRUUVrQ0tEMWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwcUlFQUFR
SUUKQ0JBZ1FJQkFFUUVCcE1pZ3RVbUFBQUVDQkFnUUlFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVD
QlFSRUFBS1RKb2JSSWdRSUFBQVFJRQpDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQWln
eGFtd1FJRUNCQWdBQUJBZ1F5Q0FnZ0dhYWdCZ0lFQ0JBZ1FJQUFBUUpGCkJBU1FJb1BXSmdFQ0JB
Z1FJRUNBQUlFTUFnSkloaW1vZ1FBQkFnUUlFQ0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnUUND
RGdBQ1MKWVFwcUlFQ0FBQUVDQkFnUUlGQkVRQUFwTW1odEVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJ
YUNCQWdRSUFBQVFJRUNCUVJFRUNLREZxYgpCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNC
QWdBQUJBa1VFQkpBaWc5WW1BUUlFQ0JBZ1FJQUFnUXdDQWtpR0thaUJBQUVDCkJBZ1FJRUNBUUJF
QkFhVElvTFZKZ0FBQkFnUUlFQ0JBSUlPQUFKSmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBT
SUVDQUFBRUMKQkFnUXlDQWdnR1NZZ2hvSUVDQkFnQUFCQWdRSUZCRVFRSW9NV3BzRUNCQWdRSUFB
QVFJRU1nZ0lJQm1tb0FZQ0JBZ1FJRUNBQUFFQwpSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlD
U0lZcHFJRUFBUUlFQ0JBZ1FJQkFFUUVCcE1pZ3RVbUFBQUVDQkFnUUlFQWdnNEFBCmttRUthaUJB
Z0FBQkFnUUlFQ0JRUkVBQUtUSm9iUklnUUlBQUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNC
QWdVRVJCQWlneGEKbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFBQVFKRkJBU1FJ
b1BXSmdFQ0JBZ1FJRUNBQUlFTUFnSkloaW1vZ1FBQgpBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFB
UUlFQ0JBZ1FDQ0RnQUNTWVFwcUlFQ0FBQUVDQkFnUUlGQkVRQUFwTW1odEVpQkFnQUFCCkFnUUlF
TWdnSUlCa21JSWFDQkFnUUlBQUFRSUVDQlFSRUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBx
QUdBZ1FJRUNCQWdBQUIKQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQ0JB
Z1FJRUNBUUJFQkFhVElvTFZKZ0FBQkFnUUlFQ0JBSUlPQQpBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VF
UkFBQ2t5YUcwU0lFQ0FBQUVDQkFnUXlDQWdnR1NZZ2hvSUVDQkFnQUFCQWdRSUZCRVFRSW9NCldw
c0VDQkFnUUlBQUFRSUVNZ2dJSUJtbW9BWUNCQWdRSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNC
QWdBQ0JEQUlDU0lZcHFJRUEKQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRB
QWttRUthaUJBZ0FBQkFnUUlFQ0JRUkVBQUtUSm9iUklnUUlBQQpBUUlFQ0JESUlDQ0FaSmlDR2dn
UUlFQ0FBQUVDQkFnVUVSQkFpZ3hhbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFB
CkFRSkZCQVNRSW9QV0pnRUNCQWdRSUVDQUFJRU1BZ0pJaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdr
eUtDMVNZQUFBUUlFQ0JBZ1FDQ0QKZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJB
Z0FBQkFnUUlFTWdnSUlCa21JSWFDQkFnUUlBQUFRSUVDQlFSRUVDSwpERnFiQkFnUUlFQ0FBQUVD
QkRJSUNDQVpwcUFHQWdRSUVDQkFnQUFCQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdL
YWlCCkFBRUNCQWdRSUVDQVFCRUJBYVRJb0xWSmdBQUJBZ1FJRUNCQUlJT0FBSkpoQ21vZ1FJQUFB
UUlFQ0JBZ1VFUkFBQ2t5YUcwU0lFQ0EKQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlG
QkVRUUlvTVdwc0VDQkFnUUlBQUFRSUVNZ2dJSUJtbW9BWUNCQWdRSUVDQQpBQUVDUlFRRWtDS0Qx
aVlCQWdRSUVDQkFnQUNCREFJQ1NJWXBxSUVBQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JB
Z1FJRUFnCmc0QUFrbUVLYWlCQWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUFBUUlFQ0JESUlD
Q0FaSmlDR2dnUUlFQ0FBQUVDQkFnVUVSQkEKaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0Jn
SUVDQkFnUUlBQUFRSkZCQVNRSW9QV0pnRUNCQWdRSUVDQUFJRU1BZ0pJaGltbwpnUUFCQWdRSUVD
QkFnRUFSQVFHa3lLQzFTWUFBQVFJRUNCQWdRQ0NEZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFB
cE1taHRFaUJBCmdBQUJBZ1FJRU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0tERnFiQkFn
UUlFQ0FBQUVDQkRJSUNDQVpwcUFHQWdRSUVDQkEKZ0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlB
QWdRd0NBa2lHS2FpQkFBRUNCQWdRSUVDQVFCRUJBYVRJb0xWSmdBQUJBZ1FJRUNCQQpJSU9BQUpK
aENtb2dRSUFBQVFJRUNCQWdVRVJBQUNreWFHMFNJRUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JB
Z0FBQkFnUUlGQkVRClFJb01XcHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0FBQUVD
UlFRRWtDS0QxaVlCQWdRSUVDQkFnQUNCREFJQ1NJWXAKcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWln
dFVtQUFBRUNCQWdRSUVBZ2c0QUFrbUVLYWlCQWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZwpRSUFB
QVFJRUNCRElJQ0NBWkppQ0dnZ1FJRUNBQUFFQ0JBZ1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlD
QWdnR2FhZ0JnSUVDQkFnClFJQUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW9n
UUFCQWdRSUVDQkFnRUFSQVFHa3lLQzFTWUFBQVFJRUNCQWcKUUNDRGdBQ1NZUXBxSUVDQUFBRUNC
QWdRSUZCRVFBQXBNbWh0RWlCQWdBQUJBZ1FJRU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUgpF
RUNLREZxYkJBZ1FJRUNBQUFFQ0JESUlDQ0FacHFBR0FnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFR
SUVDQkFnUUlBQWdRd0NBa2lHCkthaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVD
QkFJSU9BQUpKaENtb2dRSUFBQVFJRUNCQWdVRVJBQUNreWFHMFMKSUVDQUFBRUNCQWdReUNBZ2dH
U1lnaG9JRUNCQWdBQUJBZ1FJRkJFUVFJb01XcHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFn
UQpJRUNBQUFFQ1JRUUVrQ0tEMWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwcUlFQUFRSUVDQkFnUUlC
QUVRRUJwTWlndFVtQUFBRUNCQWdRCklFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RK
b2JSSWdRSUFBQVFJRUNCRElJQ0NBWkppQ0dnZ1FJRUNBQUFFQ0JBZ1UKRVJCQWlneGFtd1FJRUNC
QWdBQUJBZ1F5Q0FnZ0dhYWdCZ0lFQ0JBZ1FJQUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVN
QWdKSQpoaW1vZ1FBQkFnUUlFQ0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnUUNDRGdBQ1NZUXBx
SUVDQUFBRUNCQWdRSUZCRVFBQXBNbWh0CkVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFB
QVFJRUNCUVJFRUNLREZxYkJBZ1FJRUNBQUFFQ0JESUlDQ0FacHFBR0FnUUkKRUNCQWdBQUJBa1VF
QkpBaWc5WW1BUUlFQ0JBZ1FJQUFnUXdDQWtpR0thaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpn
QUFCQWdRSQpFQ0JBSUlPQUFKSmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTSUVDQUFBRUNC
QWdReUNBZ2dHU1lnaG9JRUNCQWdBQUJBZ1FJCkZCRVFRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0lJ
Qm1tb0FZQ0JBZ1FJRUNBQUFFQ1JRUUVrQ0tEMWlZQkFnUUlFQ0JBZ0FDQkRBSUMKU0lZcHFJRUFB
UUlFQ0JBZ1FJQkFFUUVCcE1pZ3RVbUFBQUVDQkFnUUlFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVD
QlFSRUFBS1RKbwpiUklnUUlBQUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQWln
eGFtd1FJRUNCQWdBQUJBZ1F5Q0FnZ0dhYWdCZ0lFCkNCQWdRSUFBQVFKRkJBU1FJb1BXSmdFQ0JB
Z1FJRUNBQUlFTUFnSkloaW1vZ1FBQkFnUUlFQ0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUUKQ0JBZ1FD
Q0RnQUNTWVFwcUlFQ0FBQUVDQkFnUUlGQkVRQUFwTW1odEVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJ
YUNCQWdRSUFBQVFJRQpDQlFSRUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNC
QWdBQUJBa1VFQkpBaWc5WW1BUUlFQ0JBZ1FJQUFnUXdDCkFraUdLYWlCQUFFQ0JBZ1FJRUNBUUJF
QkFhVElvTFZKZ0FBQkFnUUlFQ0JBSUlPQUFKSmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3kKYUcw
U0lFQ0FBQUVDQkFnUXlDQWdnR1NZZ2hvSUVDQkFnQUFCQWdRSUZCRVFRSW9NV3BzRUNCQWdRSUFB
QVFJRU1nZ0lJQm1tb0FZQwpCQWdRSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlD
U0lZcHFJRUFBUUlFQ0JBZ1FJQkFFUUVCcE1pZ3RVbUFBQUVDCkJBZ1FJRUFnZzRBQWttRUthaUJB
Z0FBQkFnUUlFQ0JRUkVBQUtUSm9iUklnUUlBQUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUMK
QkFnVUVSQkFpZ3hhbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFBQVFKRkJBU1FJ
b1BXSmdFQ0JBZ1FJRUNBQUlFTQpBZ0pJaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFB
UUlFQ0JBZ1FDQ0RnQUNTWVFwcUlFQ0FBQUVDQkFnUUlGQkVRQUFwCk1taHRFaUJBZ0FBQkFnUUlF
TWdnSUlCa21JSWFDQkFnUUlBQUFRSUVDQlFSRUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBx
QUcKQWdRSUVDQkFnQUFCQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQ0JB
Z1FJRUNBUUJFQkFhVElvTFZKZ0FBQgpBZ1FJRUNCQUlJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VF
UkFBQ2t5YUcwU0lFQ0FBQUVDQkFnUXlDQWdnR1NZZ2hvSUVDQkFnQUFCCkFnUUlGQkVRUUlvTVdw
c0VDQkFnUUlBQUFRSUVNZ2dJSUJtbW9BWUNCQWdRSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNC
QWdBQ0IKREFJQ1NJWXBxSUVBQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRB
QWttRUthaUJBZ0FBQkFnUUlFQ0JRUkVBQQpLVEpvYlJJZ1FJQUFBUUlFQ0JESUlDQ0FaSmlDR2dn
UUlFQ0FBQUVDQkFnVUVSQkFpZ3hhbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnCkJnSUVDQkFnUUlB
QUFRSkZCQVNRSW9QV0pnRUNCQWdRSUVDQUFJRU1BZ0pJaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdr
eUtDMVNZQUEKQVFJRUNCQWdRQ0NEZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJB
Z0FBQkFnUUlFTWdnSUlCa21JSWFDQkFnUUlBQQpBUUlFQ0JRUkVFQ0tERnFiQkFnUUlFQ0FBQUVD
QkRJSUNDQVpwcUFHQWdRSUVDQkFnQUFCQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBCmdRd0NBa2lH
S2FpQkFBRUNCQWdRSUVDQVFCRUJBYVRJb0xWSmdBQUJBZ1FJRUNCQUlJT0FBSkpoQ21vZ1FJQUFB
UUlFQ0JBZ1VFUkEKQUNreWFHMFNJRUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlG
QkVRUUlvTVdwc0VDQkFnUUlBQUFRSUVNZ2dJSUJtbQpvQVlDQkFnUUlFQ0FBQUVDUlFRRWtDS0Qx
aVlCQWdRSUVDQkFnQUNCREFJQ1NJWXBxSUVBQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BCkFBRUNC
QWdRSUVBZ2c0QUFrbUVLYWlCQWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUFBUUlFQ0JESUlD
Q0FaSmlDR2dnUUlFQ0EKQUFFQ0JBZ1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0Jn
SUVDQkFnUUlBQUFRSkZCQVNRSW9QV0pnRUNCQWdRSUVDQQpBSUVNQWdKSWhpbW9nUUFCQWdRSUVD
QkFnRUFSQVFHa3lLQzFTWUFBQVFJRUNCQWdRQ0NEZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFClFB
QXBNbWh0RWlCQWdBQUJBZ1FJRU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0tERnFiQkFn
UUlFQ0FBQUVDQkRJSUNDQVoKcHFBR0FnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlB
QWdRd0NBa2lHS2FpQkFBRUNCQWdRSUVDQVFCRUJBYVRJb0xWSgpnQUFCQWdRSUVDQkFJSU9BQUpK
aENtb2dRSUFBQVFJRUNCQWdVRVJBQUNreWFHMFNJRUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JB
CmdBQUJBZ1FJRkJFUVFJb01XcHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0FBQUVD
UlFRRWtDS0QxaVlCQWdRSUVDQkEKZ0FDQkRBSUNTSVlwcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWln
dFVtQUFBRUNCQWdRSUVBZ2c0QUFrbUVLYWlCQWdBQUJBZ1FJRUNCUQpSRUFBS1RKb2JSSWdRSUFB
QVFJRUNCRElJQ0NBWkppQ0dnZ1FJRUNBQUFFQ0JBZ1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlD
QWdnCkdhYWdCZ0lFQ0JBZ1FJQUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW9n
UUFCQWdRSUVDQkFnRUFSQVFHa3lLQzEKU1lBQUFRSUVDQkFnUUNDRGdBQ1NZUXBxSUVDQUFBRUNC
QWdRSUZCRVFBQXBNbWh0RWlCQWdBQUJBZ1FJRU1nZ0lJQmttSUlhQ0JBZwpRSUFBQVFJRUNCUVJF
RUNLREZxYkJBZ1FJRUNBQUFFQ0JESUlDQ0FacHFBR0FnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFR
SUVDQkFnClFJQUFnUXdDQWtpR0thaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVD
QkFJSU9BQUpKaENtb2dRSUFBQVFJRUNCQWcKVUVSQUFDa3lhRzBTSUVDQUFBRUNCQWdReUNBZ2dH
U1lnaG9JRUNCQWdBQUJBZ1FJRkJFUVFJb01XcHNFQ0JBZ1FJQUFBUUlFTWdnSQpJQm1tb0FZQ0JB
Z1FJRUNBQUFFQ1JRUUVrQ0tEMWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwcUlFQUFRSUVDRlk2V3hr
QUFCZHBTVVJCClZCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRBQWttRUthaUJBZ0FB
QkFnUUlFQ0JRUkVBQUtUSm9iUklnUUlBQUFRSUUKQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVDQkFn
VUVSQkFpZ3hhbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFBQVFKRgpCQVNRSW9Q
V0pnRUNCQWdRSUVDQUFJRU1BZ0pJaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlF
Q0JBZ1FDQ0RnQUNTCllRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJBZ0FBQkFnUUlFTWdn
SUlCa21JSWFDQkFnUUlBQUFRSUVDQlFSRUVDS0RGcWIKQkFnUUlFQ0FBQUVDQkRJSUNDQVpwcUFH
QWdRSUVDQkFnQUFCQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQwpCQWdR
SUVDQVFCRUJBYVRJb0xWSmdBQUJBZ1FJRUNCQUlJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFB
Q2t5YUcwU0lFQ0FBQUVDCkJBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlGQkVRUUlvTVdwc0VD
QkFnUUlBQUFRSUVNZ2dJSUJtbW9BWUNCQWdRSUVDQUFBRUMKUlFRRWtDS0QxaVlCQWdRSUVDQkFn
QUNCREFJQ1NJWXBxSUVBQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRBQQpr
bUVLYWlCQWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUFBUUlFQ0JESUlDQ0FaSmlDR2dnUUlF
Q0FBQUVDQkFnVUVSQkFpZ3hhCm13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUVDQkFnUUlBQUFR
SkZCQVNRSW9QV0pnRUNCQWdRSUVDQUFJRU1BZ0pJaGltb2dRQUIKQWdRSUVDQkFnRUFSQVFHa3lL
QzFTWUFBQVFJRUNCQWdRQ0NEZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJBZ0FB
QgpBZ1FJRU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0tERnFiQkFnUUlFQ0FBQUVDQkRJ
SUNDQVpwcUFHQWdRSUVDQkFnQUFCCkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQWdRd0NBa2lHS2Fp
QkFBRUNCQWdRSUVDQVFCRUJBYVRJb0xWSmdBQUJBZ1FJRUNCQUlJT0EKQUpKaENtb2dRSUFBQVFJ
RUNCQWdVRVJBQUNreWFHMFNJRUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlGQkVR
UUlvTQpXcHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0FBQUVDUlFRRWtDS0QxaVlC
QWdRSUVDQkFnQUNCREFJQ1NJWXBxSUVBCkFRSUVDQkFnUUlCQUVRRUJwTWlndFVtQUFBRUNCQWdR
SUVBZ2c0QUFrbUVLYWlCQWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUEKQVFJRUNCRElJQ0NB
WkppQ0dnZ1FJRUNBQUFFQ0JBZ1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUVD
QkFnUUlBQQpBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW9nUUFCQWdRSUVDQkFn
RUFSQVFHa3lLQzFTWUFBQVFJRUNCQWdRQ0NECmdBQ1NZUXBxSUVDQUFBRUNCQWdRSUZCRVFBQXBN
bWh0RWlCQWdBQUJBZ1FJRU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0sKREZxYkJBZ1FJ
RUNBQUFFQ0JESUlDQ0FacHFBR0FnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQWdR
d0NBa2lHS2FpQgpBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVDQkFJSU9BQUpKaENt
b2dRSUFBQVFJRUNCQWdVRVJBQUNreWFHMFNJRUNBCkFBRUNCQWdReUNBZ2dHU1lnaG9JRUNCQWdB
QUJBZ1FJRkJFUVFJb01XcHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0EKQUFFQ1JR
UUVrQ0tEMWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWlndFVt
QUFBRUNCQWdRSUVBZwpnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RKb2JSSWdRSUFBQVFJ
RUNCRElJQ0NBWkppQ0dnZ1FJRUNBQUFFQ0JBZ1VFUkJBCmlneGFtd1FJRUNCQWdBQUJBZ1F5Q0Fn
Z0dhYWdCZ0lFQ0JBZ1FJQUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW8KZ1FB
QkFnUUlFQ0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnUUNDRGdBQ1NZUXBxSUVDQUFBRUNCQWdR
SUZCRVFBQXBNbWh0RWlCQQpnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFBQVFJRUNCUVJFRUNL
REZxYkJBZ1FJRUNBQUFFQ0JESUlDQ0FacHFBR0FnUUlFQ0JBCmdBQUJBa1VFQkpBaWc5WW1BUUlF
Q0JBZ1FJQUFnUXdDQWtpR0thaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVDQkEK
SUlPQUFKSmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTSUVDQUFBRUNCQWdReUNBZ2dHU1ln
aG9JRUNCQWdBQUJBZ1FJRkJFUQpRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0lJQm1tb0FZQ0JBZ1FJ
RUNBQUFFQ1JRUUVrQ0tEMWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwCnFJRUFBUUlFQ0JBZ1FJQkFF
UUVCcE1pZ3RVbUFBQUVDQkFnUUlFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RKb2JS
SWcKUUlBQUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQWlneGFtd1FJRUNCQWdB
QUJBZ1F5Q0FnZ0dhYWdCZ0lFQ0JBZwpRSUFBQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJRUNBQUlFTUFn
SkloaW1vZ1FBQkFnUUlFQ0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnClFDQ0RnQUNTWVFwcUlF
Q0FBQUVDQkFnUUlGQkVRQUFwTW1odEVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFBQVFJ
RUNCUVIKRUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNCQWdBQUJBa1VFQkpB
aWc5WW1BUUlFQ0JBZ1FJQUFnUXdDQWtpRwpLYWlCQUFFQ0JBZ1FJRUNBUUJFQkFhVElvTFZKZ0FB
QkFnUUlFQ0JBSUlPQUFKSmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTCklFQ0FBQUVDQkFn
UXlDQWdnR1NZZ2hvSUVDQkFnQUFCQWdRSUZCRVFRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0lJQm1t
b0FZQ0JBZ1EKSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDU0lZcHFJRUFBUUlF
Q0JBZ1FJQkFFUUVCcE1pZ3RVbUFBQUVDQkFnUQpJRUFnZzRBQWttRUthaUJBZ0FBQkFnUUlFQ0JR
UkVBQUtUSm9iUklnUUlBQUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVCkVSQkFpZ3hh
bXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFBQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJ
RUNBQUlFTUFnSkkKaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlFQ0JBZ1FDQ0Rn
QUNTWVFwcUlFQ0FBQUVDQkFnUUlGQkVRQUFwTW1odApFaUJBZ0FBQkFnUUlFTWdnSUlCa21JSWFD
QkFnUUlBQUFRSUVDQlFSRUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJCkVDQkFn
QUFCQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQ0JBZ1FJRUNBUUJFQkFh
VElvTFZKZ0FBQkFnUUkKRUNCQUlJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFBQ2t5YUcwU0lF
Q0FBQUVDQkFnUXlDQWdnR1NZZ2hvSUVDQkFnQUFCQWdRSQpGQkVRUUlvTVdwc0VDQkFnUUlBQUFR
SUVNZ2dJSUJtbW9BWUNCQWdRSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDClNJ
WXBxSUVBQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRBQWttRUthaUJBZ0FB
QkFnUUlFQ0JRUkVBQUtUSm8KYlJJZ1FJQUFBUUlFQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVDQkFn
VUVSQkFpZ3hhbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRQpDQkFnUUlBQUFRSkZCQVNRSW9Q
V0pnRUNCQWdRSUVDQUFJRU1BclB2ZnZlN2JUYWJ0YlcxdGJhK3ZqN1V0TFcxMVZaWFY5djU4K2Ri
CmZCNlhzMmZQdHRPblQxKzRMWlozSVVDQUFBRUNCQWdRZUxWQTdFZXRyS3dNKzFqeCtmang2aVhk
UW1CNmdYUG56ZzM3OE9QM1lPenIKai92MTR6NSszRGRleHYzOStEcnUzLzcxdU14NC9kaGpqN1di
Yjc1NS9QSlYxN0hkZUt6dGw3R2V1TjdjM0d5empZMk45cGEzdkdWNApzQWdWOFlEeEVTdkhBbi84
NHgvYmZmZi9ydjNiZjYyM1h6NnlyLzNQWTdQMnd0a0lLbjNEa1UzNmh0cE5oN2MvaHM4SkVDQkFn
QUFCCkF2VUV6dmNkbzlqdjZ2dFIxODAyMm0wM25HbnYrY3ZXUHZyZUErM050eDRhZnRFYk8zZmJk
L3pxSWVsNE53VEd3QkRYc2ZNZisvU3gKSHg5ZnYvamlpKzJsbDE1cWIzakRHOXJ4NDhjdkhHU0k3
OFB4STRKQlhHTDVNWURNK3o1OTRZVVgydXRmLy9wTHRoSHJ4M3BSdy9iMQo0L2E0eE8yLy92V3Yy
eXdLdWYzMjI0Y0gyNzdnbVRObjJuMzMzZGYrN2tjUHRoLzkrOUgyMExNM3RmMkg5N2NQL3UxTjdj
NFQxN1VqCmgxNDVBdEkzT0lzSE90ZVBsdlFuVmV0aGFtWDI4blYvNUxhMTBoOHdrbFIvMFBWWTVk
eFdCNGtHejdXVmVKTDJqN2paK3Z4OC8zaisKZVAzdyt1bm5oNStmOFRwd0xlNC9yUFhSYmZhZG5k
amZPWDNtZlB2UDN6M2ZmbjdmayswLzduMnAzZi9JYysyekh6M1hQdkR1NDIzZgp2bjNEem1GZnpJ
WEFaQUt4Z3ovdTVNZDE3T2pIUjRTUXVNVDFJNDg4TW56LzNYbm5uY09SdWZIQlkvOS9YSGU4YmJ6
ZW5nM0cyNTU4Cjhza2hPNHhmajlmenRoSDNqL2RGVGFkT25XcXpTRVNSZE9JSk1SWVE0ZVBoaHg5
dS8vRFQrOW9QSGpqZWZuUG0xclp5MDZ4OTZJTzMKdEkvZWRhd2Qyci9XUTBmZldpLzRYTjlReng2
dFArLzZQLzFRWXdTUWZ0MWJhV3Y5L3RYK2pPeFhMWDRwc05XWDYxRWxGdXhmOS9XRwoyN2JhMmY2
SjlmbjUvdkg4OGZyaDlkUFBEejgvcjlYOWgxZDJpNGI5bWZoZDhwdHZPOXdPM25pZy9mMC8vcUU5
OE15KzFuNzJaSHZUCkcwNjNPOTU2cE8zZnYzL1k5K3FMdVJDWVJDQjI3R01uUHo3aWFFWjhIZGV4
Yno5K3hOc3Bmdm5MWDdZalI0NjBFeWRPREVma3hvQVIKNjQyZlg2bWdlRXZHK0xhTkt5MDdiamV1
NHhJMVJQWVlUc0dLTCtMSkVBOGNCY2RwVjcvNHhTL2F6eDljYmIvWmVITmI2VStnbzBmMwp0WnV1
WHgrZU1KdjltUlZQcnQ1bUR4VHhVdEhhbVo0dyt0TnJDQnFyczhnaXcwdElXKzBMeHR0RnR2cjlz
WFNzMjY5NitBaWtsZGJQCkFPdGZyMWlmbis4Znp4K3ZILzNGMU91bm54OStmbDZiK3cvREwxa2po
UXlYbDMrNWV2em9lanR5L0dCN1pyYldIbmpxeHZhRGYzbTYKL2RYdHg0ZWR0OWU2QXpkdTBUV0J5
d21NQVNTdXgvQVIxM0dRSWI3WDRwU3NDQTdQUFBOTSs5V3ZmdFd1dSs2NmRzc3R0MXdJd2hlSApq
emh0NjN2ZisxNzc3R2MvKzZxSGpiZHZYTHg4TFBUTmIzNnpmZXBUbjJxSERoMjZzTTY0WEZ4SENJ
bk1FZXYzczZkVzJ2UFBQejhVCkVrcy85OXh6dzBlOHdlVGhGOS9VVm8vMUo4K3gvZTNZZGV2dDhl
ZGJlK3FGclg0RVpMV3Q5WkF4UE0vNkFZMk5mZ1FqZ3MxbS8vVmwKSElKc1orTUh5R3FMTTdIaTY5
WHpMNmV2Y3hGQ3R2cjdUT0tCK20xbnpzVWIzZnViVVhvb3NUNC8zeitlUDE0L3ZINzYrZUhuNTdX
NgoveEFuZUt5c0RuczR3eGtmc1cvejVQTmI3ZGlSMmJEZjgxemYzL25YMzY4T08yQngxc240aTkv
WUpYSWhzS3pBOWdBeXZ0RjdQQUlTCnAxL0YvWWNQSHg0K25uMzIyUmJ2NDRqOS82TkhqMTRJSVdN
TlAvN3hqNGN3RWFkYWZlNXpueHR2dm5BOWJ2ZkNEYTk4OHAzdmZLZjkKNUNjL0dVTEx4ejcyc1l2
dkhtcUl4NHpzTVR0dzRNRHc1cFJJUkpHT29xaTQ0K21ubjI1UHJQOTFPM0owZjd2aDJMNGVRUGIx
TjUrdgp0SDkrdUtlVzFjMSthbFhFajVlRFI1eFVGVSswZUkvSGFuL1B4L3ErbnJUYVpqOEZxd2VR
L2pIcnlYK3RoNVBOelg0NHFIK2M3K0VrCk1PTFVyWTI0N1pVakk5Ym41L3ZIODhmcmg5ZFBQei84
L0x3Vzl4LzZydFB3aTluNExlKzVzeHQ5SHllT2dtejJBTExlVnVKVWtINDYKek85Zk9OcmlOUGZZ
M3hKQVhyVi82b1lsQk1ZQUV1RWdQc1kzb2NjK2ZYekUvZkUvWWNYM1hlenpSd2dlOS9rUEhqdzQz
UDdRUXcrMQpyMy85NnkydXgxT214dmVRYkM4dHRuV3AyMk9kSjU1NG9uMzFxMTl0UC96aEQ5c1h2
dkNGOXJhM3ZXM1lWaHoxaUlNY2NXUWxzc2NzCkNvakRNNUZJNGhETldGeDh2ZjlnYThmNjRjTTQr
bkg4NklFV0JhNzNNREdiOVZPeGV0QllXZTFITTNvUi9RQlBEeExuMnF5L1l1enIKejdHMW5pVGlP
TWRhLzNWbXZQMDhibC92VDdaNGM5Wm1YMjZ6UHluUDk0OElJR2MzK25scWZXbnI4L1A5NC9uajlj
UHJwNThmZm41ZQpxL3NQc2IrejJuZnd0czcxOE5GL0tidXhjYWFkUGYxU085TlBOVjlaMldqbk45
YmJjLzNzajloeGkzMnQyT2VLL1M4WEFsTUlqQUVrCnJpT0FqS2RKalVFaWJodFArNHYzWUVRSWlF
c0Vndmk0OTk1NzI5ZSs5clZYbGZMNDQ0Ky82cllJTUplNlBjTDFlTG4vL3Z2Ymw3LzgKNWZiRkwz
Nnh2ZTk5N3hzQ1VOUXl2dTk4RnNWRUNCbXZvL0FvT2dwNy9lenh0bjdnNW5iMDRMNTI5SEFQSUlj
T3R3UDcrN0o5K1RoVgpJdEorWDd3ZndYajVpTVo2UCtkcXZUK1o0bWpIRUR6NjV4RlVacStjbXRV
elIzL2k5WSsrVGh5a0hBTEoyYzIyc1dYOWVFSGk1L3ZICjg4ZnJoOWRQUHovOC9PejdEZGZnL3NO
YS82VnMvNjk1K241UjMvbnJSMERPbmxsdHA5ZjdmL0p6K3NXKzc3UFZOZzdPMnZWbm4rMzcKUk1l
R2ZTNEJaTnhWZFQyRlFPemN4ejU4Zk1STy9uamtZN3c5am9pTVlTVGVveEg3L3JGTVhPTDJEMzNv
USsxMXIzdGQrOFkzdnRGKworOXZmRHJmSFAzSEU1T0pMckh1cDI3Y0g2aE1uVHJUUGYvN3pGNDZB
akxYRlk4YjMvbkFFSkRZU0s4VjFMQkJ2RUxueHhodmI2NTc0ClhUdHo0SzdoUFIrSER1MXZSL3Rw
V0ljT0grcFBubjZxVUx5M0l3SklyNm9IL2Y2bThoNU0rdGZ4RVcraWpOOW14eEhIK0M5NjEvcWYK
RFluVEltUFp6ZjZiZ0ZoK3VJN3dzalhyaHlpdHo4LzNqK2VQMXcrdm4zNSsrUGw1N2U0LzlOMmZ2
dDh6NjZlYTk0K04vZTMwUyt2dAp4ZFA5REpOK1N2cnBmaGprNElHMWRtTGwyZjZlMnpkZUNDRGpE
bUJmMVlYQVVnSmowSWo5K1BIN2Fyd3Rmc2tkbjhmK2ZSeWxpRC9CCk1RYVFXRGJXaWNzNzN2R085
cFd2ZktYOTdHYy9hOS82MXJjdW5CMTFjV0hqZ1l1TGI0OHNFVzl1Lzh4blB0TSs4cEdQREtlQmpk
dVAKeDQ4NllwbFlmd2dnd3lldm5CYzJGdkhXdDc2MTNmclFUOXVqcHg1bzZ6ZCtzQjNvUHhrUDl2
Qng2THBJUTYydi9QSlJqUGhmSCtLbwpSb1NLZm1aV2l6OVJHT0drdncxa09CZXloNXgrTk9UbDk0
TEVVWTkrd0dNNCt0SFB2Qm9PVWNhNkc5Ym41L3ZIODhmcmg5ZFBQei84Ci9MeUc5eC82NzE3N3Fl
a3YvNEoxcy85blBHdnJmV2VwLzhHemMyZFB0eGZYWiszSUN3KzA5OTkrZm5qVDcvYWR2NzZhQzRG
SkJPSW8KUjF4aVp6OTI5R1BuZnd3aFl3Q0owNjN1dXV1dUM2ZGdqY3VNNjhUMUp6N3hpZmJoRDMr
NGZmdmIzNzdra1k1NE0vdWxqb0I4OHBPZgpiSi8rOUtlSEVCTGJIY05IWkl2WWJweDZHQ0ZreUIz
anFWZmorWWhSZUJUOWdROThvRDM0NElOdDg3ZjN0ZE9QOWpkUUhmK2I0UThHCjlxT0pRL2lZOWVk
VmhJdisvcXIrQndqN0U2NEhpbjUyVmx2cktTT0NTRDhBMG8rQzlJOSt2UkxYL1prWlllTkF2Nytm
NGRVMmVuQ0oKUUJKSFFzNUdpTEUrUDk4L25qOWVQN3grK3ZuaDUrYzF1djhRZjF4NURDQWJQWURF
RVpHTjAvMC9sWWo5b01mdWIrODg4ci90M1hlOAp2ZDF3d3czRGpsanNhN2tRbUVvZ2R2REhnd2l4
emRqNUg2L2p2amp5RWY4Tjc4MDMzOXplOWE1M0RTRmdXT0NWZjJLWmNaMjRLZDZLCjhhVXZmV25I
YmVQeXg0NGR1eEJneHR2aWVsdyt0alZlNHZQeFl6d0NNcHlDRldscC9CalRVaFFRZjJMOTR4Ly9l
TnY0L3ZmYkkzLzgKcDNicTNrZmEyVGUvdDUzN2kvZTE2Mjg1M3RiNiswdzI0ZzkvOUVzOFRoelpP
Ti9mejdLdlA1L09SZkx2ZlcvMDRCR0JKUXdpbE1RVApNbExIbWI1c1BEUGpUVnBuK20zeEJ3bXR6
OC8zaitlUDF3K3ZuMzUrK1BsNXJlNC9ESEdpNzg4TSswUjlIK21wL3p2Vm52cnYva3ZjClB6elE3
cnp1cGZiK2Q3NnQzWGJiYlJmK1JrSzhLZGlGd0ZRQzQwNStoSkQ0M29xZC9mSE42SEhxVmZ6blVy
Ry8vNTczdkdmNHIzakgKeDQzMVlyLy80dXZ4L2t0ZHh4R1FLd1hvN2R1THo2T3VlUHo0UEs1blVW
eDh4SVBIOVhpSk85Lys5cmNQRHhEdmpILzAwVWZiaS8vegp2ZmJNZzk5c2ovZEd4ZzF2VDB2anVx
NEpFQ0JBZ0FBQkFsVUY0cXlTK0o5RGI3MysrbmJyN2JlMkV5ZnU2aDhuMnZYOTY5aHhHL2U5CnF2
cm9lM3FCMkMrUFMzeHZ4YzUrL0lkUzhSSGhJLzdYcWppaWNjY2Rkd3hIUUNLY1hId1o5K3N2dnYx
U1g4ZjdQQzYxalVzdEc5dU4KajZocERFZFI0eXorSzY3NFl5UVJPTGFmenpXdUVFK1llTE5LQkpC
VHAwNE56Y1FEak1sbisxR1RTejJ3MndnUUlFQ0FBQUVDVlFUaQpGN094YnhTbm1VUUlpVC8wRnFl
c3hFNWIzRGJ1SUZieDBPZlZFWWlkKyswNyttTUFpVWQvNHh2Zk9Id1B4dmRsN1BOUGNWbGtPeGVI
Cmo4Z2UvdzlNTXhNNkt0alRsUUFBQUFCSlJVNUVya0pnZ2c9PQoK
</data>
<flag name="review"
          id="78578"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
    <flag name="commit-queue"
          id="78579"
          type_id="3"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86363</attachid>
            <date>2011-03-21 14:12:02 -0700</date>
            <delta_ts>2011-03-21 15:05:09 -0700</delta_ts>
            <desc>updated pixel test</desc>
            <filename>newpatch_2.txt</filename>
            <type>text/plain</type>
            <size>57496</size>
            <attacher name="Rik Cabanier">cabanier</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgwNjY1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDMtMDkgIFJpayBDYWJh
bmllciAgPGNhYmFuaWVyQGFkb2JlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBidWcgNTYwNTI6IHBlcmNlbnRhZ2VzIGFyZSBpbmNvcnJlY3Rs
eSByb3VuZGVkIGluIFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTYwNTIKKworICAgICAgICB0ZXN0OiBmYXN0L2Nzcy9wZXJjZW50YWdlLW5v
bi1pbnRlZ2VyLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOgorICAgICAg
ICAqIHBhZ2UvUHJpbnRDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByaW50Q29udGV4
dDo6cGFnZVByb3BlcnR5KToKKyAgICAgICAgKiBwbGF0Zm9ybS9MZW5ndGguaDoKKyAgICAgICAg
KFdlYkNvcmU6Okxlbmd0aDo6TGVuZ3RoKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6b3Bl
cmF0b3IqPSk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6cGVyY2VudCk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnNldFZh
bHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6Y2FsY1ZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6Y2FsY01pblZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6
aXNVbmRlZmluZWQpOgorICAgICAgICAoV2ViQ29yZTo6TGVuZ3RoOjppc1plcm8pOgorICAgICAg
ICAoV2ViQ29yZTo6TGVuZ3RoOjppc1Bvc2l0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0
aDo6aXNOZWdhdGl2ZSk6CisgICAgICAgICogcmVuZGVyaW5nL0F1dG9UYWJsZUxheW91dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OnJlY2FsY0NvbHVtbik6CisgICAg
ICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lk
dGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkF1dG9UYWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxv
Z2ljYWxXaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmxheW91dCk6
CisgICAgICAgICogcmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Rml4ZWRUYWJsZUxheW91dDo6Y2FsY1dpZHRoQXJyYXkpOgorICAgICAgICAoV2ViQ29y
ZTo6Rml4ZWRUYWJsZUxheW91dDo6bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGFibGVTZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRhYmxlU2VjdGlvbjo6
YWRkQ2VsbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZVNlY3Rpb246OmxheW91dFJv
d3MpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmg6CisgICAgICAgIChX
ZWJDb3JlOjpCb3JkZXJEYXRhOjpoYXNCb3JkZXJSYWRpdXMpOgorCiAyMDExLTAzLTA5ICBKYW1l
cyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSdXNzZWxsLgpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9y
LmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxl
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUzMzIsOCArNTMzMiw4IEBAIHZvaWQgQ1NTU3R5
bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0eShpbnQKICAgICAgICAgICAgIHJhZGl1c0hlaWdodCA9
IExlbmd0aChwYWlyLT5zZWNvbmQoKS0+Z2V0RG91YmxlVmFsdWUoKSwgUGVyY2VudCk7CiAgICAg
ICAgIGVsc2UKICAgICAgICAgICAgIHJhZGl1c0hlaWdodCA9IExlbmd0aChtYXgoaW50TWluRm9y
TGVuZ3RoLCBtaW4oaW50TWF4Rm9yTGVuZ3RoLCBwYWlyLT5zZWNvbmQoKS0+Y29tcHV0ZUxlbmd0
aEludChzdHlsZSgpLCBtX3Jvb3RFbGVtZW50U3R5bGUsIHpvb21GYWN0b3IpKSksIEZpeGVkKTsK
LSAgICAgICAgaW50IHdpZHRoID0gcmFkaXVzV2lkdGgucmF3VmFsdWUoKTsKLSAgICAgICAgaW50
IGhlaWdodCA9IHJhZGl1c0hlaWdodC5yYXdWYWx1ZSgpOworICAgICAgICBpbnQgd2lkdGggPSBy
YWRpdXNXaWR0aC52YWx1ZSgpOworICAgICAgICBpbnQgaGVpZ2h0ID0gcmFkaXVzSGVpZ2h0LnZh
bHVlKCk7CiAgICAgICAgIGlmICh3aWR0aCA8IDAgfHwgaGVpZ2h0IDwgMCkKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgaWYgKHdpZHRoID09IDApCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1ByaW50Q29udGV4dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9Q
cmludENvbnRleHQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UHJpbnRDb250ZXh0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgyLDE2ICsyODIsMTYgQEAgU3Ry
aW5nIFByaW50Q29udGV4dDo6cGFnZVByb3BlcnR5KEZyYW1lKgogICAgIGlmICghc3RyY21wKHBy
b3BlcnR5TmFtZSwgIm1hcmdpbi1sZWZ0IikpIHsKICAgICAgICAgaWYgKHN0eWxlLT5tYXJnaW5M
ZWZ0KCkuaXNBdXRvKCkpCiAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCJhdXRvIik7Ci0gICAg
ICAgIHJldHVybiBTdHJpbmc6Om51bWJlcihzdHlsZS0+bWFyZ2luTGVmdCgpLnJhd1ZhbHVlKCkp
OworICAgICAgICByZXR1cm4gU3RyaW5nOjpudW1iZXIoc3R5bGUtPm1hcmdpbkxlZnQoKS52YWx1
ZSgpKTsKICAgICB9CiAgICAgaWYgKCFzdHJjbXAocHJvcGVydHlOYW1lLCAibGluZS1oZWlnaHQi
KSkKLSAgICAgICAgcmV0dXJuIFN0cmluZzo6bnVtYmVyKHN0eWxlLT5saW5lSGVpZ2h0KCkucmF3
VmFsdWUoKSk7CisgICAgICAgIHJldHVybiBTdHJpbmc6Om51bWJlcihzdHlsZS0+bGluZUhlaWdo
dCgpLnZhbHVlKCkpOwogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgImZvbnQtc2l6ZSIp
KQogICAgICAgICByZXR1cm4gU3RyaW5nOjpudW1iZXIoc3R5bGUtPmZvbnREZXNjcmlwdGlvbigp
LmNvbXB1dGVkUGl4ZWxTaXplKCkpOwogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgImZv
bnQtZmFtaWx5IikpCiAgICAgICAgIHJldHVybiBzdHlsZS0+Zm9udERlc2NyaXB0aW9uKCkuZmFt
aWx5KCkuZmFtaWx5KCkuc3RyaW5nKCk7CiAgICAgaWYgKCFzdHJjbXAocHJvcGVydHlOYW1lLCAi
c2l6ZSIpKQotICAgICAgICByZXR1cm4gbWFrZVN0cmluZyhTdHJpbmc6Om51bWJlcihzdHlsZS0+
cGFnZVNpemUoKS53aWR0aCgpLnJhd1ZhbHVlKCkpLCAnICcsIFN0cmluZzo6bnVtYmVyKHN0eWxl
LT5wYWdlU2l6ZSgpLmhlaWdodCgpLnJhd1ZhbHVlKCkpKTsKKyAgICAgICAgcmV0dXJuIG1ha2VT
dHJpbmcoU3RyaW5nOjpudW1iZXIoc3R5bGUtPnBhZ2VTaXplKCkud2lkdGgoKS52YWx1ZSgpKSwg
JyAnLCBTdHJpbmc6Om51bWJlcihzdHlsZS0+cGFnZVNpemUoKS5oZWlnaHQoKS52YWx1ZSgpKSk7
CiAKICAgICByZXR1cm4gbWFrZVN0cmluZygicGFnZVByb3BlcnR5KCkgdW5pbXBsZW1lbnRlZCBm
b3I6ICIsIHByb3BlcnR5TmFtZSk7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1h
dGlvbi9BbmltYXRpb25CYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdl
L2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBpbmxpbmUgQ29sb3IgYmxlbmRGdW5jKGNvbnN0IEFu
aW0KIAogc3RhdGljIGlubGluZSBMZW5ndGggYmxlbmRGdW5jKGNvbnN0IEFuaW1hdGlvbkJhc2Uq
LCBjb25zdCBMZW5ndGgmIGZyb20sIGNvbnN0IExlbmd0aCYgdG8sIGRvdWJsZSBwcm9ncmVzcykK
IHsgIAotICAgIHJldHVybiB0by5ibGVuZChmcm9tLCBwcm9ncmVzcyk7CisgICAgcmV0dXJuIHRv
LmJsZW5kKGZyb20sIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3MpKTsKIH0KIAogc3Rh
dGljIGlubGluZSBMZW5ndGhTaXplIGJsZW5kRnVuYyhjb25zdCBBbmltYXRpb25CYXNlKiBhbmlt
LCBjb25zdCBMZW5ndGhTaXplJiBmcm9tLCBjb25zdCBMZW5ndGhTaXplJiB0bywgZG91YmxlIHBy
b2dyZXNzKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgJKHJldmlzaW9uIDgwMzgxKQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgJKHdvcmtpbmcgY29weSkKQEAgLTEs
NiArMSw3IEBACiAvKgogICAgIENvcHlyaWdodCAoQykgMTk5OSBMYXJzIEtub2xsIChrbm9sbEBr
ZGUub3JnKQogICAgIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgICAgQ29weXJpZ2h0IChDKSAyMDExIFJpayBDYWJhbmllciAoY2FiYW5p
ZXJAYWRvYmUuY29tKQogCiAgICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0zMCw3ICszMSw2IEBACiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNvbnN0IGludCB1bmRlZmluZWRMZW5ndGggPSAtMTsKLWNvbnN0
IGludCBwZXJjZW50U2NhbGVGYWN0b3IgPSAxMjg7CiBjb25zdCBpbnQgaW50TWF4Rm9yTGVuZ3Ro
ID0gMHg3ZmZmZmZmOyAvLyBtYXggdmFsdWUgZm9yIGEgMjgtYml0IGludAogY29uc3QgaW50IGlu
dE1pbkZvckxlbmd0aCA9ICgtMHg3ZmZmZmZmIC0gMSk7IC8vIG1pbiB2YWx1ZSBmb3IgYSAyOC1i
aXQgaW50CiAKQEAgLTUyLDM0ICs1Miw0MCBAQCBwdWJsaWM6CiAgICAgTGVuZ3RoKGludCB2LCBM
ZW5ndGhUeXBlIHQsIGJvb2wgcSA9IGZhbHNlKQogICAgICAgICA6IG1faW50VmFsdWUodiksIG1f
cXVpcmsocSksIG1fdHlwZSh0KSwgbV9pc0Zsb2F0KGZhbHNlKQogICAgIHsKLSAgICAgICAgQVNT
RVJUKHQgIT0gUGVyY2VudCk7CisgICAgfQorICAgIAorICAgIExlbmd0aChmbG9hdCB2LCBMZW5n
dGhUeXBlIHQsIGJvb2wgcSA9IGZhbHNlKQorICAgIDogbV9mbG9hdFZhbHVlKHYpLCBtX3F1aXJr
KHEpLCBtX3R5cGUodCksIG1faXNGbG9hdCh0cnVlKQorICAgIHsgICAgICAgICAgICAKICAgICB9
CiAKICAgICBMZW5ndGgoZG91YmxlIHYsIExlbmd0aFR5cGUgdCwgYm9vbCBxID0gZmFsc2UpCi0g
ICAgICAgIDogbV9xdWlyayhxKSwgbV90eXBlKHQpLCBtX2lzRmxvYXQoZmFsc2UpCi0gICAgewot
ICAgICAgICBpZiAobV90eXBlID09IFBlcmNlbnQpCi0gICAgICAgICAgICBtX2ludFZhbHVlID0g
c3RhdGljX2Nhc3Q8aW50Pih2KnBlcmNlbnRTY2FsZUZhY3Rvcik7Ci0gICAgICAgIGVsc2Ugewot
ICAgICAgICAgICAgbV9pc0Zsb2F0ID0gdHJ1ZTsgICAgICAgICAgICAKLSAgICAgICAgICAgIG1f
ZmxvYXRWYWx1ZSA9IHN0YXRpY19jYXN0PGZsb2F0Pih2KTsKLSAgICAgICB9CisgICAgICAgIDog
bV9xdWlyayhxKSwgbV90eXBlKHQpLCBtX2lzRmxvYXQodHJ1ZSkKKyAgICB7ICAgICAgICAgICAK
KyAgICAgICAgbV9mbG9hdFZhbHVlID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHYpOyAgICAKICAgICB9
CiAKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgTGVuZ3RoJiBvKSBjb25zdCB7IHJldHVybiAo
Z2V0RmxvYXRWYWx1ZSgpID09IG8uZ2V0RmxvYXRWYWx1ZSgpKSAmJiAobV90eXBlID09IG8ubV90
eXBlKSAmJiAobV9xdWlyayA9PSBvLm1fcXVpcmspOyB9CiAgICAgYm9vbCBvcGVyYXRvciE9KGNv
bnN0IExlbmd0aCYgbykgY29uc3QgeyByZXR1cm4gKGdldEZsb2F0VmFsdWUoKSAhPSBvLmdldEZs
b2F0VmFsdWUoKSkgfHwgKG1fdHlwZSAhPSBvLm1fdHlwZSkgfHwgKG1fcXVpcmsgIT0gby5tX3F1
aXJrKTsgfQogCisgICAgY29uc3QgTGVuZ3RoJiBvcGVyYXRvcio9KGZsb2F0IHYpCisgICAgeyAg
ICAgICAgCisgICAgICAgIGlmIChtX2lzRmxvYXQpCisgICAgICAgICAgICBtX2Zsb2F0VmFsdWUg
PSBzdGF0aWNfY2FzdDxmbG9hdD4obV9mbG9hdFZhbHVlICogdik7CisgICAgICAgIGVsc2UgICAg
ICAgIAorICAgICAgICAgICAgbV9pbnRWYWx1ZSA9IHN0YXRpY19jYXN0PGludD4obV9pbnRWYWx1
ZSAqIHYpOworICAgICAgICAKKyAgICAgICAgcmV0dXJuICp0aGlzOworICAgIH0KKyAgICAKICAg
ICBpbnQgdmFsdWUoKSBjb25zdCB7Ci0gICAgICAgIEFTU0VSVCh0eXBlKCkgIT0gUGVyY2VudCk7
Ci0gICAgICAgIHJldHVybiByYXdWYWx1ZSgpOworICAgICAgICByZXR1cm4gZ2V0SW50VmFsdWUo
KTsKICAgICB9CiAKLSAgICBpbnQgcmF3VmFsdWUoKSBjb25zdCB7IHJldHVybiBnZXRJbnRWYWx1
ZSgpOyB9Ci0KLSAgICBkb3VibGUgcGVyY2VudCgpIGNvbnN0CisgICAgZmxvYXQgcGVyY2VudCgp
IGNvbnN0CiAgICAgewogICAgICAgICBBU1NFUlQodHlwZSgpID09IFBlcmNlbnQpOwotICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8ZG91YmxlPihyYXdWYWx1ZSgpKSAvIHBlcmNlbnRTY2FsZUZh
Y3RvcjsKKyAgICAgICAgcmV0dXJuIGdldEZsb2F0VmFsdWUoKTsKICAgICB9CiAKICAgICBMZW5n
dGhUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxMZW5ndGhUeXBlPihtX3R5
cGUpOyB9CkBAIC05NCwxOCArMTAwLDE3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0VmFsdWUo
aW50IHZhbHVlKQogICAgIHsKLSAgICAgICAgQVNTRVJUKCF2YWx1ZSB8fCB0eXBlKCkgIT0gUGVy
Y2VudCk7CiAgICAgICAgIHNldFZhbHVlKEZpeGVkLCB2YWx1ZSk7CiAgICAgfQogCi0gICAgdm9p
ZCBzZXRWYWx1ZShMZW5ndGhUeXBlIHQsIGRvdWJsZSB2YWx1ZSkKKyAgICB2b2lkIHNldFZhbHVl
KExlbmd0aFR5cGUgdCwgZmxvYXQgdmFsdWUpCiAgICAgewogICAgICAgICBtX3R5cGUgPSB0Owot
ICAgICAgICBtX2Zsb2F0VmFsdWUgPSBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUpOworICAgICAg
ICBtX2Zsb2F0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgbV9pc0Zsb2F0ID0gdHJ1ZTsgICAgCiAg
ICAgfQogCi0gICAgdm9pZCBzZXRWYWx1ZShkb3VibGUgdmFsdWUpCisgICAgdm9pZCBzZXRWYWx1
ZShmbG9hdCB2YWx1ZSkKICAgICB7CiAgICAgICAgICp0aGlzID0gTGVuZ3RoKHZhbHVlLCBGaXhl
ZCk7CiAgICAgfQpAQCAtMTE5LDcgKzEyNCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIGNhc2Ug
UGVyY2VudDoKICAgICAgICAgICAgICAgICBpZiAocm91bmRQZXJjZW50YWdlcykKICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4ocm91bmQobWF4VmFsdWUgKiBwZXJj
ZW50KCkgLyAxMDAuMCkpOwotICAgICAgICAgICAgICAgIHJldHVybiBtYXhWYWx1ZSAqIHJhd1Zh
bHVlKCkgLyAoMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8aW50PihtYXhWYWx1ZSAqIHBlcmNlbnQoKSAvIDEwMC4wKTsKICAgICAg
ICAgICAgIGNhc2UgQXV0bzoKICAgICAgICAgICAgICAgICByZXR1cm4gbWF4VmFsdWU7CiAgICAg
ICAgICAgICBkZWZhdWx0OgpAQCAtMTM1LDcgKzE0MCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAg
IGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgICAgICBpZiAocm91bmRQZXJjZW50YWdlcykKICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4ocm91bmQobWF4VmFsdWUg
KiBwZXJjZW50KCkgLyAxMDAuMCkpOwotICAgICAgICAgICAgICAgIHJldHVybiBtYXhWYWx1ZSAq
IHJhd1ZhbHVlKCkgLyAoMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PihtYXhWYWx1ZSAqIHBlcmNlbnQoKSAvIDEwMC4wKTsK
ICAgICAgICAgICAgIGNhc2UgQXV0bzoKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIDA7CkBAIC0xNTYsMTAgKzE2MSwxNCBAQCBwdWJsaWM6CiAgICAgICAgIH0K
ICAgICB9CiAKLSAgICBib29sIGlzVW5kZWZpbmVkKCkgY29uc3QgeyByZXR1cm4gcmF3VmFsdWUo
KSA9PSB1bmRlZmluZWRMZW5ndGg7IH0KLSAgICBib29sIGlzWmVybygpIGNvbnN0IHsgcmV0dXJu
ICFnZXRJbnRWYWx1ZSgpOyB9Ci0gICAgYm9vbCBpc1Bvc2l0aXZlKCkgY29uc3QgeyByZXR1cm4g
cmF3VmFsdWUoKSA+IDA7IH0KLSAgICBib29sIGlzTmVnYXRpdmUoKSBjb25zdCB7IHJldHVybiBy
YXdWYWx1ZSgpIDwgMDsgfQorICAgIGJvb2wgaXNVbmRlZmluZWQoKSBjb25zdCB7IHJldHVybiB2
YWx1ZSgpID09IHVuZGVmaW5lZExlbmd0aDsgfQorICAgIGJvb2wgaXNaZXJvKCkgY29uc3QgCisg
ICAgeyAKKyAgICAgICAgcmV0dXJuIG1faXNGbG9hdCA/ICFtX2Zsb2F0VmFsdWUgOiAhbV9pbnRW
YWx1ZTsKKyAgICB9CisgICAgCisgICAgYm9vbCBpc1Bvc2l0aXZlKCkgY29uc3QgeyByZXR1cm4g
Z2V0RmxvYXRWYWx1ZSgpID4gMDsgfQorICAgIGJvb2wgaXNOZWdhdGl2ZSgpIGNvbnN0IHsgcmV0
dXJuIGdldEZsb2F0VmFsdWUoKSA8IDA7IH0KIAogICAgIGJvb2wgaXNBdXRvKCkgY29uc3QgeyBy
ZXR1cm4gdHlwZSgpID09IEF1dG87IH0KICAgICBib29sIGlzUmVsYXRpdmUoKSBjb25zdCB7IHJl
dHVybiB0eXBlKCkgPT0gUmVsYXRpdmU7IH0KQEAgLTE2Nyw3ICsxNzYsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBpc0ZpeGVkKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IEZpeGVkOyB9CiAgICAg
Ym9vbCBpc0ludHJpbnNpY09yQXV0bygpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBBdXRvIHx8
IHR5cGUoKSA9PSBNaW5JbnRyaW5zaWMgfHwgdHlwZSgpID09IEludHJpbnNpYzsgfQogCi0gICAg
TGVuZ3RoIGJsZW5kKGNvbnN0IExlbmd0aCYgZnJvbSwgZG91YmxlIHByb2dyZXNzKSBjb25zdAor
ICAgIExlbmd0aCBibGVuZChjb25zdCBMZW5ndGgmIGZyb20sIGZsb2F0IHByb2dyZXNzKSBjb25z
dAogICAgIHsKICAgICAgICAgLy8gQmxlbmQgdHdvIGxlbmd0aHMgdG8gcHJvZHVjZSBhIG5ldyBs
ZW5ndGggdGhhdCBpcyBpbiBiZXR3ZWVuIHRoZW0uICBVc2VkIGZvciBhbmltYXRpb24uCiAgICAg
ICAgIGlmICghZnJvbS5pc1plcm8oKSAmJiAhaXNaZXJvKCkgJiYgZnJvbS50eXBlKCkgIT0gdHlw
ZSgpKQpAQCAtMTgxLDI5ICsxOTAsMjUgQEAgcHVibGljOgogICAgICAgICAgICAgcmVzdWx0VHlw
ZSA9IGZyb20udHlwZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHJlc3VsdFR5cGUgPT0gUGVy
Y2VudCkgewotICAgICAgICAgICAgZG91YmxlIGZyb21QZXJjZW50ID0gZnJvbS5pc1plcm8oKSA/
IDAuIDogZnJvbS5wZXJjZW50KCk7Ci0gICAgICAgICAgICBkb3VibGUgdG9QZXJjZW50ID0gaXNa
ZXJvKCkgPyAwLiA6IHBlcmNlbnQoKTsKKyAgICAgICAgICAgIGZsb2F0IGZyb21QZXJjZW50ID0g
ZnJvbS5pc1plcm8oKSA/IDAgOiBmcm9tLnBlcmNlbnQoKTsKKyAgICAgICAgICAgIGZsb2F0IHRv
UGVyY2VudCA9IGlzWmVybygpID8gMCA6IHBlcmNlbnQoKTsKICAgICAgICAgICAgIHJldHVybiBM
ZW5ndGgoZnJvbVBlcmNlbnQgKyAodG9QZXJjZW50IC0gZnJvbVBlcmNlbnQpICogcHJvZ3Jlc3Ms
IFBlcmNlbnQpOwogICAgICAgICB9IAogICAgICAgICAgICAgCi0gICAgICAgIGRvdWJsZSBmcm9t
VmFsdWUgPSBmcm9tLmlzWmVybygpID8gMCA6IGZyb20udmFsdWUoKTsKLSAgICAgICAgZG91Ymxl
IHRvVmFsdWUgPSBpc1plcm8oKSA/IDAgOiB2YWx1ZSgpOworICAgICAgICBmbG9hdCBmcm9tVmFs
dWUgPSBmcm9tLmlzWmVybygpID8gMCA6IGZyb20udmFsdWUoKTsKKyAgICAgICAgZmxvYXQgdG9W
YWx1ZSA9IGlzWmVybygpID8gMCA6IHZhbHVlKCk7CiAgICAgICAgIHJldHVybiBMZW5ndGgoZnJv
bVZhbHVlICsgKHRvVmFsdWUgLSBmcm9tVmFsdWUpICogcHJvZ3Jlc3MsIHJlc3VsdFR5cGUpOwog
ICAgIH0KIAogcHJpdmF0ZToKICAgICBpbnQgZ2V0SW50VmFsdWUoKSBjb25zdAogICAgIHsKLSAg
ICAgICAgaWYgKG1faXNGbG9hdCkKLSAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+
KG1fZmxvYXRWYWx1ZSk7Ci0gICAgICAgIHJldHVybiBtX2ludFZhbHVlOworICAgICAgICByZXR1
cm4gbV9pc0Zsb2F0ID8gc3RhdGljX2Nhc3Q8aW50PihtX2Zsb2F0VmFsdWUpIDogbV9pbnRWYWx1
ZTsKICAgICB9CiAKICAgICBmbG9hdCBnZXRGbG9hdFZhbHVlKCkgY29uc3QKICAgICB7Ci0gICAg
ICAgIGlmIChtX2lzRmxvYXQpCi0gICAgICAgICAgICAgICAgcmV0dXJuIG1fZmxvYXRWYWx1ZTsK
LSAgICAgICAgcmV0dXJuIG1faW50VmFsdWU7CisgICAgICAgIHJldHVybiBtX2lzRmxvYXQgPyBt
X2Zsb2F0VmFsdWUgOiBtX2ludFZhbHVlOwogICAgIH0KIAogICAgIHVuaW9uIHsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvVHJhbnNsYXRlVHJhbnNm
b3JtT3BlcmF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5jcHAJKHJldmlz
aW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jt
cy9UcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw2
ICsyMSw3IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJUcmFuc2xhdGVUcmFu
c2Zvcm1PcGVyYXRpb24uaCIKKyNpbmNsdWRlICJGbG9hdENvbnZlcnNpb24uaCIKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCkBAIC0zMCwxNSArMzEsMTUgQEAgUGFzc1JlZlB0cjxUcmFuc2Zvcm1P
cGVyYXRpb24+IFRyYW5zbGF0ZQogICAgICAgICByZXR1cm4gdGhpczsKICAgICAKICAgICBpZiAo
YmxlbmRUb0lkZW50aXR5KQotICAgICAgICByZXR1cm4gVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0
aW9uOjpjcmVhdGUoTGVuZ3RoKG1feC50eXBlKCkpLmJsZW5kKG1feCwgcHJvZ3Jlc3MpLCAKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlbmd0aCht
X3kudHlwZSgpKS5ibGVuZChtX3ksIHByb2dyZXNzKSwgCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZW5ndGgobV96LnR5cGUoKSkuYmxlbmQobV96
LCBwcm9ncmVzcyksIG1fdHlwZSk7CisgICAgICAgIHJldHVybiBUcmFuc2xhdGVUcmFuc2Zvcm1P
cGVyYXRpb246OmNyZWF0ZShMZW5ndGgobV94LnR5cGUoKSkuYmxlbmQobV94LCBuYXJyb3dQcmVj
aXNpb25Ub0Zsb2F0KHByb2dyZXNzKSksIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgTGVuZ3RoKG1feS50eXBlKCkpLmJsZW5kKG1feSwgbmFycm93
UHJlY2lzaW9uVG9GbG9hdChwcm9ncmVzcykpLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIExlbmd0aChtX3oudHlwZSgpKS5ibGVuZChtX3osIG5h
cnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3MpKSwgbV90eXBlKTsKIAogICAgIGNvbnN0IFRy
YW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbiogZnJvbU9wID0gc3RhdGljX2Nhc3Q8Y29uc3QgVHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uKj4oZnJvbSk7CiAgICAgTGVuZ3RoIGZyb21YID0gZnJv
bU9wID8gZnJvbU9wLT5tX3ggOiBMZW5ndGgobV94LnR5cGUoKSk7CiAgICAgTGVuZ3RoIGZyb21Z
ID0gZnJvbU9wID8gZnJvbU9wLT5tX3kgOiBMZW5ndGgobV95LnR5cGUoKSk7CiAgICAgTGVuZ3Ro
IGZyb21aID0gZnJvbU9wID8gZnJvbU9wLT5tX3ogOiBMZW5ndGgobV96LnR5cGUoKSk7Ci0gICAg
cmV0dXJuIFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbjo6Y3JlYXRlKG1feC5ibGVuZChmcm9t
WCwgcHJvZ3Jlc3MpLCBtX3kuYmxlbmQoZnJvbVksIHByb2dyZXNzKSwgbV96LmJsZW5kKGZyb21a
LCBwcm9ncmVzcyksIG1fdHlwZSk7CisgICAgcmV0dXJuIFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJh
dGlvbjo6Y3JlYXRlKG1feC5ibGVuZChmcm9tWCwgbmFycm93UHJlY2lzaW9uVG9GbG9hdChwcm9n
cmVzcykpLCBtX3kuYmxlbmQoZnJvbVksIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3Mp
KSwgbV96LmJsZW5kKGZyb21aLCBuYXJyb3dQcmVjaXNpb25Ub0Zsb2F0KHByb2dyZXNzKSksIG1f
dHlwZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC04MSw3ICs4MSw3IEBAIHZvaWQgQXV0b1RhYmxlTGF5b3V0OjpyZWNhbGNDb2x1bW4oaW50
IGUKIAogICAgICAgICAgICAgICAgICAgICBMZW5ndGggY2VsbExvZ2ljYWxXaWR0aCA9IGNlbGwt
PnN0eWxlT3JDb2xMb2dpY2FsV2lkdGgoKTsKICAgICAgICAgICAgICAgICAgICAgLy8gRklYTUU6
IFdoYXQgaXMgdGhpcyBhcmJpdHJhcnkgdmFsdWU/Ci0gICAgICAgICAgICAgICAgICAgIGlmIChj
ZWxsTG9naWNhbFdpZHRoLnJhd1ZhbHVlKCkgPiAzMjc2MCkKKyAgICAgICAgICAgICAgICAgICAg
aWYgKGNlbGxMb2dpY2FsV2lkdGgudmFsdWUoKSA+IDMyNzYwKQogICAgICAgICAgICAgICAgICAg
ICAgICAgY2VsbExvZ2ljYWxXaWR0aC5zZXRWYWx1ZSgzMjc2MCk7CiAgICAgICAgICAgICAgICAg
ICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzTmVnYXRpdmUoKSkKICAgICAgICAgICAgICAgICAg
ICAgICAgIGNlbGxMb2dpY2FsV2lkdGguc2V0VmFsdWUoMCk7CkBAIC0xMDUsMTMgKzEwNSwxMyBA
QCB2b2lkIEF1dG9UYWJsZUxheW91dDo6cmVjYWxjQ29sdW1uKGludCBlCiAgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgY2FzZSBQZXJjZW50OgogICAg
ICAgICAgICAgICAgICAgICAgICAgbV9oYXNQZXJjZW50ID0gdHJ1ZTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUG9zaXRpdmUoKSAmJiAoIWNvbHVtbkxh
eW91dC5sb2dpY2FsV2lkdGguaXNQZXJjZW50KCkgfHwgY2VsbExvZ2ljYWxXaWR0aC5yYXdWYWx1
ZSgpID4gY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpKSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUG9zaXRpdmUoKSAmJiAoIWNvbHVt
bkxheW91dC5sb2dpY2FsV2lkdGguaXNQZXJjZW50KCkgfHwgY2VsbExvZ2ljYWxXaWR0aC52YWx1
ZSgpID4gY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC52YWx1ZSgpKSkKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb2x1bW5MYXlvdXQubG9naWNhbFdpZHRoID0gY2VsbExvZ2ljYWxXaWR0
aDsKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICBj
YXNlIFJlbGF0aXZlOgogICAgICAgICAgICAgICAgICAgICAgICAgLy8gRklYTUU6IE5lZWQgdG8g
dW5kZXJzdGFuZCB0aGlzIGNhc2UgYW5kIHdoZXRoZXIgaXQgbWFrZXMgc2Vuc2UgdG8gY29tcGFy
ZSB2YWx1ZXMKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdoaWNoIGFyZSBub3QgbmVjZXNz
YXJpbHkgb2YgdGhlIHNhbWUgdHlwZS4KLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjZWxs
TG9naWNhbFdpZHRoLmlzQXV0bygpIHx8IChjZWxsTG9naWNhbFdpZHRoLmlzUmVsYXRpdmUoKSAm
JiBjZWxsTG9naWNhbFdpZHRoLnZhbHVlKCkgPiBjb2x1bW5MYXlvdXQubG9naWNhbFdpZHRoLnJh
d1ZhbHVlKCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNlbGxMb2dpY2FsV2lkdGgu
aXNBdXRvKCkgfHwgKGNlbGxMb2dpY2FsV2lkdGguaXNSZWxhdGl2ZSgpICYmIGNlbGxMb2dpY2Fs
V2lkdGgudmFsdWUoKSA+IGNvbHVtbkxheW91dC5sb2dpY2FsV2lkdGgudmFsdWUoKSkpCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aCA9IGNlbGxM
b2dpY2FsV2lkdGg7CiAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKQEAgLTIzMiwxNiArMjMyLDE2IEBAIHZvaWQgQXV0b1RhYmxlTGF5
b3V0Ojpjb21wdXRlUHJlZmVycmVkTG8KIAogICAgIC8vIFdlIHN1YnN0aXR1dGUgMCBwZXJjZW50
IGJ5IChlcHNpbG9uIC8gcGVyY2VudFNjYWxlRmFjdG9yKSBwZXJjZW50IGluIHR3byBwbGFjZXMg
YmVsb3cgdG8gYXZvaWQgZGl2aXNpb24gYnkgemVyby4KICAgICAvLyBGSVhNRTogSGFuZGxlIHRo
ZSAwJSBjYXNlcyBwcm9wZXJseS4KLSAgICBjb25zdCBpbnQgZXBzaWxvbiA9IDE7CisgICAgY29u
c3QgZmxvYXQgZXBzaWxvbiA9IDEgLyAxMjguMGY7CiAKLSAgICBpbnQgcmVtYWluaW5nUGVyY2Vu
dCA9IDEwMCAqIHBlcmNlbnRTY2FsZUZhY3RvcjsKKyAgICBmbG9hdCByZW1haW5pbmdQZXJjZW50
ID0gMTAwOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9sYXlvdXRTdHJ1Y3Quc2l6ZSgp
OyArK2kpIHsKICAgICAgICAgbWluV2lkdGggKz0gbV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZl
TWluTG9naWNhbFdpZHRoOwogICAgICAgICBtYXhXaWR0aCArPSBtX2xheW91dFN0cnVjdFtpXS5l
ZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGg7CiAgICAgICAgIGlmIChzY2FsZUNvbHVtbnMpIHsKICAg
ICAgICAgICAgIGlmIChtX2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGguaXNQ
ZXJjZW50KCkpIHsKLSAgICAgICAgICAgICAgICBpbnQgcGVyY2VudCA9IG1pbihtX2xheW91dFN0
cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGgucmF3VmFsdWUoKSwgcmVtYWluaW5nUGVyY2Vu
dCk7Ci0gICAgICAgICAgICAgICAgZmxvYXQgbG9naWNhbFdpZHRoID0gc3RhdGljX2Nhc3Q8Zmxv
YXQ+KG1fbGF5b3V0U3RydWN0W2ldLmVmZmVjdGl2ZU1heExvZ2ljYWxXaWR0aCkgKiAxMDAgKiBw
ZXJjZW50U2NhbGVGYWN0b3IgLyBtYXgocGVyY2VudCwgZXBzaWxvbik7CisgICAgICAgICAgICAg
ICAgZmxvYXQgcGVyY2VudCA9IG1pbihzdGF0aWNfY2FzdDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3Rb
aV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoLnBlcmNlbnQoKSksIHJlbWFpbmluZ1BlcmNlbnQpOwor
ICAgICAgICAgICAgICAgIGZsb2F0IGxvZ2ljYWxXaWR0aCA9IHN0YXRpY19jYXN0PGZsb2F0Piht
X2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpICogMTAwIC8gbWF4KHBl
cmNlbnQsIGVwc2lsb24pOwogICAgICAgICAgICAgICAgIG1heFBlcmNlbnQgPSBtYXgobG9naWNh
bFdpZHRoLCAgbWF4UGVyY2VudCk7CiAgICAgICAgICAgICAgICAgcmVtYWluaW5nUGVyY2VudCAt
PSBwZXJjZW50OwogICAgICAgICAgICAgfSBlbHNlCkBAIC0yNTAsNyArMjUwLDcgQEAgdm9pZCBB
dXRvVGFibGVMYXlvdXQ6OmNvbXB1dGVQcmVmZXJyZWRMbwogICAgIH0KIAogICAgIGlmIChzY2Fs
ZUNvbHVtbnMpIHsKLSAgICAgICAgbWF4Tm9uUGVyY2VudCA9IG1heE5vblBlcmNlbnQgKiAxMDAg
KiBwZXJjZW50U2NhbGVGYWN0b3IgLyBtYXgocmVtYWluaW5nUGVyY2VudCwgZXBzaWxvbik7Cisg
ICAgICAgIG1heE5vblBlcmNlbnQgPSBtYXhOb25QZXJjZW50ICogMTAwIC8gbWF4KHJlbWFpbmlu
Z1BlcmNlbnQsIGVwc2lsb24pOwogICAgICAgICBtYXhXaWR0aCA9IG1heChtYXhXaWR0aCwgc3Rh
dGljX2Nhc3Q8aW50PihtaW4obWF4Tm9uUGVyY2VudCwgSU5UX01BWCAvIDIuMGYpKSk7CiAgICAg
ICAgIG1heFdpZHRoID0gbWF4KG1heFdpZHRoLCBzdGF0aWNfY2FzdDxpbnQ+KG1pbihtYXhQZXJj
ZW50LCBJTlRfTUFYIC8gMi4wZikpKTsKICAgICB9CkBAIC0yNjYsNiArMjY2LDEwIEBAIHZvaWQg
QXV0b1RhYmxlTGF5b3V0Ojpjb21wdXRlUHJlZmVycmVkTG8KICAgICAgICAgbWluV2lkdGggPSBt
YXgobWluV2lkdGgsIHRhYmxlTG9naWNhbFdpZHRoLnZhbHVlKCkpOwogICAgICAgICBtYXhXaWR0
aCA9IG1pbldpZHRoOwogICAgIH0KKyAgICAKKyAgICAvLyBpZiB0aGVyZSB3YXMgbm8gcmVtYWlu
aW5nIHBlcmNlbnQsIG1heFdpZHRoIGlzIGludmFsaWQuCisgICAgaWYgKCFyZW1haW5pbmdQZXJj
ZW50ICYmIG1heE5vblBlcmNlbnQpCisgICAgICAgIG1heFdpZHRoID0gaW50TWF4Rm9yTGVuZ3Ro
OyAgICAgICAgCiB9CiAKIC8qCkBAIC0zMDAsNyArMzA0LDcgQEAgaW50IEF1dG9UYWJsZUxheW91
dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogICAgICAgICBzaXplX3QgbGFzdENvbCA9IGVmZkNvbDsK
ICAgICAgICAgaW50IGNlbGxNaW5Mb2dpY2FsV2lkdGggPSBjZWxsLT5taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGgoKSArIHNwYWNpbmdJblJvd0RpcmVjdGlvbjsKICAgICAgICAgZmxvYXQgY2VsbE1h
eExvZ2ljYWxXaWR0aCA9IGNlbGwtPm1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpICsgc3BhY2lu
Z0luUm93RGlyZWN0aW9uOwotICAgICAgICBpbnQgdG90YWxQZXJjZW50ID0gMDsKKyAgICAgICAg
ZmxvYXQgdG90YWxQZXJjZW50ID0gMDsKICAgICAgICAgaW50IHNwYW5NaW5Mb2dpY2FsV2lkdGgg
PSAwOwogICAgICAgICBmbG9hdCBzcGFuTWF4TG9naWNhbFdpZHRoID0gMDsKICAgICAgICAgYm9v
bCBhbGxDb2xzQXJlUGVyY2VudCA9IHRydWU7CkBAIC0zMTIsNyArMzE2LDcgQEAgaW50IEF1dG9U
YWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogICAgICAgICAgICAgTGF5b3V0JiBjb2x1
bW5MYXlvdXQgPSBtX2xheW91dFN0cnVjdFtsYXN0Q29sXTsKICAgICAgICAgICAgIHN3aXRjaCAo
Y29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC50eXBlKCkpIHsKICAgICAgICAgICAgIGNhc2UgUGVy
Y2VudDoKLSAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgKz0gY29sdW1uTGF5b3V0LmxvZ2lj
YWxXaWR0aC5yYXdWYWx1ZSgpOworICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBjb2x1
bW5MYXlvdXQubG9naWNhbFdpZHRoLnBlcmNlbnQoKTsKICAgICAgICAgICAgICAgICBhbGxDb2xz
QXJlRml4ZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNh
c2UgRml4ZWQ6CkBAIC0zMzksNyArMzQzLDcgQEAgaW50IEF1dG9UYWJsZUxheW91dDo6Y2FsY0Vm
ZmVjdGl2ZUxvZ2ljYQogICAgICAgICAgICAgICAgICAgICBjb2x1bW5MYXlvdXQuZWZmZWN0aXZl
TG9naWNhbFdpZHRoID0gTGVuZ3RoKCk7CiAgICAgICAgICAgICAgICAgICAgIGFsbENvbHNBcmVQ
ZXJjZW50ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAg
ICAgIHRvdGFsUGVyY2VudCArPSBjb2x1bW5MYXlvdXQuZWZmZWN0aXZlTG9naWNhbFdpZHRoLnJh
d1ZhbHVlKCk7CisgICAgICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBjb2x1bW5MYXlv
dXQuZWZmZWN0aXZlTG9naWNhbFdpZHRoLnBlcmNlbnQoKTsKICAgICAgICAgICAgICAgICBhbGxD
b2xzQXJlRml4ZWQgPSBmYWxzZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmICghY29s
dW1uTGF5b3V0LmVtcHR5Q2VsbHNPbmx5KQpAQCAtMzU0LDE0ICszNTgsMTQgQEAgaW50IEF1dG9U
YWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogCiAgICAgICAgIC8vIGFkanVzdCB0YWJs
ZSBtYXggd2lkdGggaWYgbmVlZGVkCiAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUGVy
Y2VudCgpKSB7Ci0gICAgICAgICAgICBpZiAodG90YWxQZXJjZW50ID4gY2VsbExvZ2ljYWxXaWR0
aC5yYXdWYWx1ZSgpIHx8IGFsbENvbHNBcmVQZXJjZW50KSB7CisgICAgICAgICAgICBpZiAodG90
YWxQZXJjZW50ID4gY2VsbExvZ2ljYWxXaWR0aC5wZXJjZW50KCkgfHwgYWxsQ29sc0FyZVBlcmNl
bnQpIHsKICAgICAgICAgICAgICAgICAvLyBjYW4ndCBzYXRpZnkgdGhpcyBjb25kaXRpb24sIHRy
ZWF0IGFzIHZhcmlhYmxlCiAgICAgICAgICAgICAgICAgY2VsbExvZ2ljYWxXaWR0aCA9IExlbmd0
aCgpOwogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBtYXhMb2dpY2FsV2lk
dGggPSBtYXgobWF4TG9naWNhbFdpZHRoLCBtYXgoc3Bhbk1heExvZ2ljYWxXaWR0aCwgY2VsbE1h
eExvZ2ljYWxXaWR0aCkgKiAxMDAgKiBwZXJjZW50U2NhbGVGYWN0b3IgLyBjZWxsTG9naWNhbFdp
ZHRoLnJhd1ZhbHVlKCkpOworICAgICAgICAgICAgICAgIG1heExvZ2ljYWxXaWR0aCA9IG1heCht
YXhMb2dpY2FsV2lkdGgsIHN0YXRpY19jYXN0PGZsb2F0PihtYXgoc3Bhbk1heExvZ2ljYWxXaWR0
aCwgY2VsbE1heExvZ2ljYWxXaWR0aCkgKiAxMDAgIC8gY2VsbExvZ2ljYWxXaWR0aC5wZXJjZW50
KCkpKTsKIAogICAgICAgICAgICAgICAgIC8vIGFsbCBub24gcGVyY2VudCBjb2x1bW5zIGluIHRo
ZSBzcGFuIGdldCBwZXJjZW50IHZhbHVlcyB0byBzdW0gdXAgY29ycmVjdGx5LgotICAgICAgICAg
ICAgICAgIGludCBwZXJjZW50TWlzc2luZyA9IGNlbGxMb2dpY2FsV2lkdGgucmF3VmFsdWUoKSAt
IHRvdGFsUGVyY2VudDsKKyAgICAgICAgICAgICAgICBmbG9hdCBwZXJjZW50TWlzc2luZyA9IGNl
bGxMb2dpY2FsV2lkdGgucGVyY2VudCgpIC0gdG90YWxQZXJjZW50OwogICAgICAgICAgICAgICAg
IGZsb2F0IHRvdGFsV2lkdGggPSAwOwogICAgICAgICAgICAgICAgIGZvciAodW5zaWduZWQgcG9z
ID0gZWZmQ29sOyBwb3MgPCBsYXN0Q29sOyArK3BvcykgewogICAgICAgICAgICAgICAgICAgICBp
ZiAoIW1fbGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2VudCgp
KQpAQCAtMzcwLDcgKzM3NCw3IEBAIGludCBBdXRvVGFibGVMYXlvdXQ6OmNhbGNFZmZlY3RpdmVM
b2dpY2EKIAogICAgICAgICAgICAgICAgIGZvciAodW5zaWduZWQgcG9zID0gZWZmQ29sOyBwb3Mg
PCBsYXN0Q29sICYmIHRvdGFsV2lkdGggPiAwOyArK3BvcykgewogICAgICAgICAgICAgICAgICAg
ICBpZiAoIW1fbGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2Vu
dCgpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpbnQgcGVyY2VudCA9IHN0YXRpY19jYXN0
PGludD4ocGVyY2VudE1pc3NpbmcgKiBzdGF0aWNfY2FzdDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3Rb
cG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpIC8gdG90YWxXaWR0aCk7CisgICAgICAgICAg
ICAgICAgICAgICAgICBmbG9hdCBwZXJjZW50ID0gcGVyY2VudE1pc3NpbmcgKiBzdGF0aWNfY2Fz
dDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3RbcG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpIC8g
dG90YWxXaWR0aDsKICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsV2lkdGggLT0gbV9sYXlv
dXRTdHJ1Y3RbcG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGg7CiAgICAgICAgICAgICAgICAg
ICAgICAgICBwZXJjZW50TWlzc2luZyAtPSBwZXJjZW50OwogICAgICAgICAgICAgICAgICAgICAg
ICAgaWYgKHBlcmNlbnQgPiAwKQpAQCAtNDkxLDcgKzQ5NSw3IEBAIHZvaWQgQXV0b1RhYmxlTGF5
b3V0OjpsYXlvdXQoKQogICAgIGludCBudW1GaXhlZCA9IDA7CiAgICAgZmxvYXQgdG90YWxBdXRv
ID0gMDsKICAgICBmbG9hdCB0b3RhbEZpeGVkID0gMDsKLSAgICBpbnQgdG90YWxQZXJjZW50ID0g
MDsKKyAgICBmbG9hdCB0b3RhbFBlcmNlbnQgPSAwOwogICAgIGludCBhbGxvY0F1dG8gPSAwOwog
ICAgIHVuc2lnbmVkIG51bUF1dG9FbXB0eUNlbGxzT25seSA9IDA7CiAKQEAgLTUwNCw3ICs1MDgs
NyBAQCB2b2lkIEF1dG9UYWJsZUxheW91dDo6bGF5b3V0KCkKICAgICAgICAgc3dpdGNoIChsb2dp
Y2FsV2lkdGgudHlwZSgpKSB7CiAgICAgICAgIGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgIGhh
dmVQZXJjZW50ID0gdHJ1ZTsKLSAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBsb2dpY2FsV2lk
dGgucmF3VmFsdWUoKTsKKyAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBsb2dpY2FsV2lkdGgu
cGVyY2VudCgpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgUmVsYXRpdmU6CiAg
ICAgICAgICAgICB0b3RhbFJlbGF0aXZlICs9IGxvZ2ljYWxXaWR0aC52YWx1ZSgpOwpAQCAtNTM4
LDkgKzU0Miw5IEBAIHZvaWQgQXV0b1RhYmxlTGF5b3V0OjpsYXlvdXQoKQogICAgICAgICAgICAg
ICAgIG1fbGF5b3V0U3RydWN0W2ldLmNvbXB1dGVkTG9naWNhbFdpZHRoID0gY2VsbExvZ2ljYWxX
aWR0aDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBpZiAodG90YWxQZXJjZW50
ID4gMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKSB7CisgICAgICAgIGlmICh0b3RhbFBlcmNlbnQg
PiAxMDApIHsKICAgICAgICAgICAgIC8vIHJlbW92ZSBvdmVyYWxsb2NhdGVkIHNwYWNlIGZyb20g
dGhlIGxhc3QgY29sdW1ucwotICAgICAgICAgICAgaW50IGV4Y2VzcyA9IHRhYmxlTG9naWNhbFdp
ZHRoICogKHRvdGFsUGVyY2VudCAtIDEwMCAqIHBlcmNlbnRTY2FsZUZhY3RvcikgLyAoMTAwICog
cGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgIGludCBleGNlc3MgPSB0YWJsZUxvZ2lj
YWxXaWR0aCAqICh0b3RhbFBlcmNlbnQgLSAxMDApIC8gMTAwOwogICAgICAgICAgICAgZm9yIChp
bnQgaSA9IG5FZmZDb2xzIC0gMTsgaSA+PSAwOyAtLWkpIHsKICAgICAgICAgICAgICAgICBpZiAo
bV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGludCBjZWxsTG9naWNhbFdpZHRoID0gbV9sYXlvdXRTdHJ1Y3Rb
aV0uY29tcHV0ZWRMb2dpY2FsV2lkdGg7CkBAIC02MDcsMTMgKzYxMSwxMyBAQCB2b2lkIEF1dG9U
YWJsZUxheW91dDo6bGF5b3V0KCkKICAgICB9CiAKICAgICAvLyBzcHJlYWQgb3ZlciBwZXJjZW50
IGNvbHVtcwotICAgIGlmIChhdmFpbGFibGUgPiAwICYmIG1faGFzUGVyY2VudCAmJiB0b3RhbFBl
cmNlbnQgPCAxMDAgKiBwZXJjZW50U2NhbGVGYWN0b3IpIHsKKyAgICBpZiAoYXZhaWxhYmxlID4g
MCAmJiBtX2hhc1BlcmNlbnQgJiYgdG90YWxQZXJjZW50IDwgMTAwKSB7CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbkVmZkNvbHM7ICsraSkgewogICAgICAgICAgICAgTGVuZ3RoJiBs
b2dpY2FsV2lkdGggPSBtX2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGg7CiAg
ICAgICAgICAgICBpZiAobG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKSB7Ci0gICAgICAgICAgICAg
ICAgaW50IGNlbGxMb2dpY2FsV2lkdGggPSBhdmFpbGFibGUgKiBsb2dpY2FsV2lkdGgucmF3VmFs
dWUoKSAvIHRvdGFsUGVyY2VudDsKKyAgICAgICAgICAgICAgICBpbnQgY2VsbExvZ2ljYWxXaWR0
aCA9IGF2YWlsYWJsZSAqIGxvZ2ljYWxXaWR0aC5wZXJjZW50KCkgLyB0b3RhbFBlcmNlbnQ7CiAg
ICAgICAgICAgICAgICAgYXZhaWxhYmxlIC09IGNlbGxMb2dpY2FsV2lkdGg7Ci0gICAgICAgICAg
ICAgICAgdG90YWxQZXJjZW50IC09IGxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpOworICAgICAgICAg
ICAgICAgIHRvdGFsUGVyY2VudCAtPSBsb2dpY2FsV2lkdGgucGVyY2VudCgpOwogICAgICAgICAg
ICAgICAgIG1fbGF5b3V0U3RydWN0W2ldLmNvbXB1dGVkTG9naWNhbFdpZHRoICs9IGNlbGxMb2dp
Y2FsV2lkdGg7CiAgICAgICAgICAgICAgICAgaWYgKCFhdmFpbGFibGUgfHwgIXRvdGFsUGVyY2Vu
dCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvRml4ZWRUYWJsZUxheW91dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9GaXhlZFRhYmxlTGF5b3V0LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTE4LDcgKzExOCw4IEBAIGludCBGaXhlZFRhYmxlTGF5b3V0OjpjYWxjV2lkdGhBcnJheShp
bnQKICAgICAgICAgICAgICAgICAgICAgc3BhbkluQ3VycmVudEVmZmVjdGl2ZUNvbHVtbiA9IG1f
dGFibGUtPnNwYW5PZkVmZkNvbChjdXJyZW50RWZmZWN0aXZlQ29sdW1uKTsKICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKCh3LmlzRml4ZWQoKSB8fCB3LmlzUGVyY2VudCgp
KSAmJiB3LmlzUG9zaXRpdmUoKSkgewotICAgICAgICAgICAgICAgICAgICBtX3dpZHRoW2N1cnJl
bnRFZmZlY3RpdmVDb2x1bW5dLnNldFZhbHVlKHcudHlwZSgpLCB3LnJhd1ZhbHVlKCkgKiBzcGFu
SW5DdXJyZW50RWZmZWN0aXZlQ29sdW1uKTsKKyAgICAgICAgICAgICAgICAgICAgbV93aWR0aFtj
dXJyZW50RWZmZWN0aXZlQ29sdW1uXSA9IHc7CisgICAgICAgICAgICAgICAgICAgIG1fd2lkdGhb
Y3VycmVudEVmZmVjdGl2ZUNvbHVtbl0gKj0gc3BhbkluQ3VycmVudEVmZmVjdGl2ZUNvbHVtbjsK
ICAgICAgICAgICAgICAgICAgICAgdXNlZFdpZHRoICs9IGVmZldpZHRoICogc3BhbkluQ3VycmVu
dEVmZmVjdGl2ZUNvbHVtbjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgc3Bh
biAtPSBzcGFuSW5DdXJyZW50RWZmZWN0aXZlQ29sdW1uOwpAQCAtMTY0LDEwICsxNjUsMTEgQEAg
aW50IEZpeGVkVGFibGVMYXlvdXQ6OmNhbGNXaWR0aEFycmF5KGludAogICAgICAgICAgICAgICAg
IGludCB1c2VkU3BhbiA9IDA7CiAgICAgICAgICAgICAgICAgaW50IGkgPSAwOwogICAgICAgICAg
ICAgICAgIHdoaWxlICh1c2VkU3BhbiA8IHNwYW4gJiYgY0NvbCArIGkgPCBuRWZmQ29scykgewot
ICAgICAgICAgICAgICAgICAgICBpbnQgZVNwYW4gPSBtX3RhYmxlLT5zcGFuT2ZFZmZDb2woY0Nv
bCArIGkpOworICAgICAgICAgICAgICAgICAgICBmbG9hdCBlU3BhbiA9IG1fdGFibGUtPnNwYW5P
ZkVmZkNvbChjQ29sICsgaSk7CiAgICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgc2V0IGlmIG5v
IGNvbCBlbGVtZW50IGhhcyBhbHJlYWR5IHNldCBpdC4KICAgICAgICAgICAgICAgICAgICAgaWYg
KG1fd2lkdGhbY0NvbCArIGldLmlzQXV0bygpICYmIHcudHlwZSgpICE9IEF1dG8pIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIG1fd2lkdGhbY0NvbCArIGldLnNldFZhbHVlKHcudHlwZSgpLCB3
LnJhd1ZhbHVlKCkgKiBlU3BhbiAvIHNwYW4pOworICAgICAgICAgICAgICAgICAgICAgICAgbV93
aWR0aFtjQ29sICsgaV0gPSB3OworICAgICAgICAgICAgICAgICAgICAgICAgbV93aWR0aFtjQ29s
ICsgaV0gKj0gZVNwYW4gLyBzcGFuOwogICAgICAgICAgICAgICAgICAgICAgICAgdXNlZFdpZHRo
ICs9IGVmZldpZHRoICogZVNwYW4gLyBzcGFuOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICAgICAgIHVzZWRTcGFuICs9IGVTcGFuOwpAQCAtMjM0LDcgKzIzNiw3IEBAIHZv
aWQgRml4ZWRUYWJsZUxheW91dDo6bGF5b3V0KCkKICAgICBpbnQgYXV0b1NwYW4gPSAwOwogICAg
IGludCB0b3RhbEZpeGVkV2lkdGggPSAwOwogICAgIGludCB0b3RhbFBlcmNlbnRXaWR0aCA9IDA7
Ci0gICAgaW50IHRvdGFsUmF3UGVyY2VudCA9IDA7CisgICAgZmxvYXQgdG90YWxQZXJjZW50ID0g
MDsKIAogICAgIC8vIENvbXB1dGUgcmVxdWlyZW1lbnRzIGFuZCB0cnkgdG8gc2F0aXNmeSBmaXhl
ZCBhbmQgcGVyY2VudCB3aWR0aHMuCiAgICAgLy8gUGVyY2VudGFnZXMgYXJlIG9mIHRoZSB0YWJs
ZSdzIHdpZHRoLCBzbyBmb3IgZXhhbXBsZQpAQCAtMjQ3LDcgKzI0OSw3IEBAIHZvaWQgRml4ZWRU
YWJsZUxheW91dDo6bGF5b3V0KCkKICAgICAgICAgfSBlbHNlIGlmIChtX3dpZHRoW2ldLmlzUGVy
Y2VudCgpKSB7CiAgICAgICAgICAgICBjYWxjV2lkdGhbaV0gPSBtX3dpZHRoW2ldLmNhbGNWYWx1
ZSh0YWJsZUxvZ2ljYWxXaWR0aCk7CiAgICAgICAgICAgICB0b3RhbFBlcmNlbnRXaWR0aCArPSBj
YWxjV2lkdGhbaV07Ci0gICAgICAgICAgICB0b3RhbFJhd1BlcmNlbnQgKz0gbV93aWR0aFtpXS5y
YXdWYWx1ZSgpOworICAgICAgICAgICAgdG90YWxQZXJjZW50ICs9IG1fd2lkdGhbaV0ucGVyY2Vu
dCgpOwogICAgICAgICB9IGVsc2UgaWYgKG1fd2lkdGhbaV0uaXNBdXRvKCkpIHsKICAgICAgICAg
ICAgIG51bUF1dG8rKzsKICAgICAgICAgICAgIGF1dG9TcGFuICs9IG1fdGFibGUtPnNwYW5PZkVm
ZkNvbChpKTsKQEAgLTI3MCwxMSArMjcyLDExIEBAIHZvaWQgRml4ZWRUYWJsZUxheW91dDo6bGF5
b3V0KCkKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgIGlmICh0b3RhbFJhd1BlcmNlbnQpIHsKKyAgICAgICAgICAgIGlm
ICh0b3RhbFBlcmNlbnQpIHsKICAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnRXaWR0aCA9IDA7
CiAgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuRWZmQ29sczsgaSsrKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGlmIChtX3dpZHRoW2ldLmlzUGVyY2VudCgpKSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBjYWxjV2lkdGhbaV0gPSBtX3dpZHRoW2ldLnJhd1ZhbHVlKCkgKiAo
dGFibGVMb2dpY2FsV2lkdGggLSB0b3RhbEZpeGVkV2lkdGgpIC8gdG90YWxSYXdQZXJjZW50Owor
ICAgICAgICAgICAgICAgICAgICAgICAgY2FsY1dpZHRoW2ldID0gbV93aWR0aFtpXS5wZXJjZW50
KCkgKiAodGFibGVMb2dpY2FsV2lkdGggLSB0b3RhbEZpeGVkV2lkdGgpIC8gdG90YWxQZXJjZW50
OwogICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxQZXJjZW50V2lkdGggKz0gY2FsY1dpZHRo
W2ldOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQpJbmRleDogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAJKHJldmlz
aW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlv
bi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5OSw3ICsxOTksNyBAQCB2b2lkIFJlbmRlclRhYmxl
U2VjdGlvbjo6YWRkQ2VsbChSZW5kZXJUCiAgICAgICAgICAgICBzd2l0Y2ggKGxvZ2ljYWxIZWln
aHQudHlwZSgpKSB7CiAgICAgICAgICAgICAgICAgY2FzZSBQZXJjZW50OgogICAgICAgICAgICAg
ICAgICAgICBpZiAoIShjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSkgfHwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIChjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSAmJiBjUm93TG9n
aWNhbEhlaWdodC5yYXdWYWx1ZSgpIDwgbG9naWNhbEhlaWdodC5yYXdWYWx1ZSgpKSkKKyAgICAg
ICAgICAgICAgICAgICAgICAgIChjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSAmJiBjUm93
TG9naWNhbEhlaWdodC5wZXJjZW50KCkgPCBsb2dpY2FsSGVpZ2h0LnBlcmNlbnQoKSkpCiAgICAg
ICAgICAgICAgICAgICAgICAgICBtX2dyaWRbbV9jUm93XS5sb2dpY2FsSGVpZ2h0ID0gbG9naWNh
bEhlaWdodDsKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAg
IGNhc2UgRml4ZWQ6CkBAIC00MzQsMjIgKzQzNCwyMiBAQCBpbnQgUmVuZGVyVGFibGVTZWN0aW9u
OjpsYXlvdXRSb3dzKGludCB0CiAgICAgICAgICAgICBpZiAobV9ncmlkW3JdLmxvZ2ljYWxIZWln
aHQuaXNBdXRvKCkpCiAgICAgICAgICAgICAgICAgbnVtQXV0bysrOwogICAgICAgICAgICAgZWxz
ZSBpZiAobV9ncmlkW3JdLmxvZ2ljYWxIZWlnaHQuaXNQZXJjZW50KCkpCi0gICAgICAgICAgICAg
ICAgdG90YWxQZXJjZW50ICs9IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnJhd1ZhbHVlKCk7Cisg
ICAgICAgICAgICAgICAgdG90YWxQZXJjZW50ICs9IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnBl
cmNlbnQoKTsKICAgICAgICAgfQogICAgICAgICBpZiAodG90YWxQZXJjZW50KSB7CiAgICAgICAg
ICAgICAvLyB0cnkgdG8gc2F0aXNmeSBwZXJjZW50CiAgICAgICAgICAgICBpbnQgYWRkID0gMDsK
LSAgICAgICAgICAgIHRvdGFsUGVyY2VudCA9IG1pbih0b3RhbFBlcmNlbnQsIDEwMCAqIHBlcmNl
bnRTY2FsZUZhY3Rvcik7CisgICAgICAgICAgICB0b3RhbFBlcmNlbnQgPSBtaW4odG90YWxQZXJj
ZW50LCAxMDApOwogICAgICAgICAgICAgaW50IHJoID0gbV9yb3dQb3NbMV0gLSBtX3Jvd1Bvc1sw
XTsKICAgICAgICAgICAgIGZvciAoaW50IHIgPSAwOyByIDwgdG90YWxSb3dzOyByKyspIHsKICAg
ICAgICAgICAgICAgICBpZiAodG90YWxQZXJjZW50ID4gMCAmJiBtX2dyaWRbcl0ubG9naWNhbEhl
aWdodC5pc1BlcmNlbnQoKSkgewotICAgICAgICAgICAgICAgICAgICBpbnQgdG9BZGQgPSBtaW4o
ZGgsICh0b3RhbEhlaWdodCAqIG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnJhd1ZhbHVlKCkgLyAo
MTAwICogcGVyY2VudFNjYWxlRmFjdG9yKSkgLSByaCk7CisgICAgICAgICAgICAgICAgICAgIGlu
dCB0b0FkZCA9IG1pbihkaCwgc3RhdGljX2Nhc3Q8aW50PigodG90YWxIZWlnaHQgKiBtX2dyaWRb
cl0ubG9naWNhbEhlaWdodC5wZXJjZW50KCkgLyAxMDApIC0gcmgpKTsKICAgICAgICAgICAgICAg
ICAgICAgLy8gSWYgdG9BZGQgaXMgbmVnYXRpdmUsIHRoZW4gd2UgZG9uJ3Qgd2FudCB0byBzaHJp
bmsgdGhlIHJvdyAodGhpcyBidWcKICAgICAgICAgICAgICAgICAgICAgLy8gYWZmZWN0ZWQgT3V0
bG9vayBXZWIgQWNjZXNzKS4KICAgICAgICAgICAgICAgICAgICAgdG9BZGQgPSBtYXgoMCwgdG9B
ZGQpOwogICAgICAgICAgICAgICAgICAgICBhZGQgKz0gdG9BZGQ7CiAgICAgICAgICAgICAgICAg
ICAgIGRoIC09IHRvQWRkOwotICAgICAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgLT0gbV9n
cmlkW3JdLmxvZ2ljYWxIZWlnaHQucmF3VmFsdWUoKTsKKyAgICAgICAgICAgICAgICAgICAgdG90
YWxQZXJjZW50IC09IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnBlcmNlbnQoKTsKICAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKHIgPCB0b3RhbFJvd3MgLSAxKQogICAgICAg
ICAgICAgICAgICAgICByaCA9IG1fcm93UG9zW3IgKyAyXSAtIG1fcm93UG9zW3IgKyAxXTsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlckRhdGEuaAkocmV2aXNp
b24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9yZGVyRGF0YS5o
CSh3b3JraW5nIGNvcHkpCkBAIC00OSwxMyArNDksMTMgQEAgcHVibGljOgogCiAgICAgYm9vbCBo
YXNCb3JkZXJSYWRpdXMoKSBjb25zdAogICAgIHsKLSAgICAgICAgaWYgKG1fdG9wTGVmdC53aWR0
aCgpLnJhd1ZhbHVlKCkgPiAwKQorICAgICAgICBpZiAoIW1fdG9wTGVmdC53aWR0aCgpLmlzWmVy
bygpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChtX3RvcFJpZ2h0Lndp
ZHRoKCkucmF3VmFsdWUoKSA+IDApCisgICAgICAgIGlmICghbV90b3BSaWdodC53aWR0aCgpLmlz
WmVybygpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChtX2JvdHRvbUxl
ZnQud2lkdGgoKS5yYXdWYWx1ZSgpID4gMCkKKyAgICAgICAgaWYgKCFtX2JvdHRvbUxlZnQud2lk
dGgoKS5pc1plcm8oKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAobV9i
b3R0b21SaWdodC53aWR0aCgpLnJhd1ZhbHVlKCkgPiAwKQorICAgICAgICBpZiAoIW1fYm90dG9t
UmlnaHQud2lkdGgoKS5pc1plcm8oKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gODA2NjUpCisrKyBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAorMjAxMS0w
My0wOSAgUmlrIENhYmFuaWVyICA8Y2FiYW5pZXJAZ21haWwuY29tPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGJ1ZyA1NjA1MjogcGVyY2VudGFnZXMg
YXJlIGluY29ycmVjdGx5IHJvdW5kZWQgaW4gV2ViS2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjA1MgorCisgICAgICAgICogcGxhdGZvcm0vbWFj
L2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQudHh0OgorCiAyMDExLTAz
LTA5ICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQuY2hlY2tzdW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9u
LWludGVnZXItZXhwZWN0ZWQuY2hlY2tzdW0JKHJldmlzaW9uIDgwMzgxKQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQu
Y2hlY2tzdW0JKHdvcmtpbmcgY29weSkKQEAgLTEgKzEgQEAKLTQxNGNhYWEyZWUwOTgyM2ZjYzZi
MTIwMGQzMGVjMTI3ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorYzZkOTA1NTM0MWE5OTA0
OTI5Y2NjNDk0NzZjN2JkOWUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MvcGVyY2VudGFnZS1ub24taW50ZWdlci1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3Nz
L3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA4MDM4MSkKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9wZXJjZW50YWdlLW5vbi1pbnRlZ2Vy
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQCBsYXllciBhdCAo
MCwwKSBzaXplIDgwMHg1ODUKICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsNDQpIHNp
emUgOTEweDQKICAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDEwMHg0
IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsNDgp
IHNpemUgOTEweDQKLSAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDEw
MHg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KKyAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAo
MCwwKSBzaXplIDEwMXg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDAsNTIpIHNpemUgOTAweDQKICAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBh
dCAoMCwwKSBzaXplIDEwMHg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxv
Y2sge0RJVn0gYXQgKDAsNTYpIHNpemUgODkweDQKQEAgLTQ5LDcgKzQ5LDcgQEAgbGF5ZXIgYXQg
KDAsMCkgc2l6ZSA4MDB4NTg1CiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDg0KSBz
aXplIDg0MHg0CiAgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMDB4
NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDg4
KSBzaXplIDgzNXg0Ci0gICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAx
MDB4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCisgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQg
KDAsMCkgc2l6ZSAxMDF4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2Nr
IHtESVZ9IGF0ICgwLDkyKSBzaXplIDgyNXg0CiAgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0g
YXQgKDAsMCkgc2l6ZSAxMDB4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJs
b2NrIHtESVZ9IGF0ICgwLDk2KSBzaXplIDgxNXg0CkBAIC04NCw2MSArODQsNjEgQEAgbGF5ZXIg
YXQgKDgsMTI2KSBzaXplIDEwMDB4MjAKICAgUmVuZGVyVGFibGUge1RBQkxFfSBhdCAoMCwwKSBz
aXplIDEwMDB4MjAKICAgICBSZW5kZXJUYWJsZVNlY3Rpb24ge1RCT0RZfSBhdCAoMCwwKSBzaXpl
IDEwMDB4MjAKICAgICAgIFJlbmRlclRhYmxlUm93IHtUUn0gYXQgKDAsMCkgc2l6ZSAxMDAweDIw
Ci0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgwLDEpIHNpemUgMTF4MTggW2JnY29s
b3I9IzAwMDAwMDdGXSBbcj0wIGM9MCBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2Vs
bCB7VER9IGF0ICgwLDEpIHNpemUgMTJ4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MCBy
cz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgx
OAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMSwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3
Rl0gW3I9MCBjPTEgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAo
MTIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xIHJzPTEgY3M9MV0K
ICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAg
ICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVD
ZWxsIHtURH0gYXQgKDIxLDEpIHNpemUgMTN4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9
MiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyMiwxKSBzaXpl
IDE0eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTIgcnM9MSBjcz0xXQogICAgICAgICAg
IFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAgIHRleHQg
cnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBh
dCAoMzQsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0zIHJzPTEgY3M9
MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDM2LDEpIHNpemUgMTB4MTggW2Jn
Y29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MyBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAs
MCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICg0NCwxKSBz
aXplIDE1eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTQgcnM9MSBjcz0xXQorICAgICAg
ICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoNDYsMSkgc2l6ZSAxNngxOCBbYmdjb2xvcj0jMDAw
MDAwN0ZdIFtyPTAgYz00IHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0g
YXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0
OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDU5LDEpIHNpemUgMTB4MTgg
W2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9NSBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRh
YmxlQ2VsbCB7VER9IGF0ICg2MiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9
MCBjPTUgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBz
aXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAg
ICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoNjksMSkgc2l6ZSAxN3gxOCBbYmdjb2xvcj0j
MDAwMDAwN0ZdIFtyPTAgYz02IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtU
RH0gYXQgKDcyLDEpIHNpemUgMTh4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9NiBycz0x
IGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAog
ICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRl
clRhYmxlQ2VsbCB7VER9IGF0ICg4NiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0g
W3I9MCBjPTcgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoOTAs
MSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz03IHJzPTEgY3M9MV0KICAg
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAg
ICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxs
IHtURH0gYXQgKDk2LDEpIHNpemUgMjB4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9OCBy
cz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMDAsMSkgc2l6ZSAy
MHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz04IHJzPTEgY3M9MV0KICAgICAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQg
KDExNiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9MCBjPTkgcnM9MSBjcz0x
XQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMTIwLDEpIHNpemUgMTB4MTggW2Jn
Y29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9OSBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAs
MCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMjYsMSkg
c2l6ZSAyMXgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xMCBycz0xIGNzPTFdCisgICAg
ICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMzAsMSkgc2l6ZSAyMngxOCBbYmdjb2xvcj0j
MDAwMDAwN0ZdIFtyPTAgYz0xMCBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3Rl
eHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lk
dGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxNDcsMSkgc2l6ZSAx
MHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xMSBycz0xIGNzPTFdCisgICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxNTIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAw
N0ZdIFtyPTAgYz0xMSBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0
ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDog
IiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxNTcsMSkgc2l6ZSAyM3gxOCBb
Ymdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xMiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRh
YmxlQ2VsbCB7VER9IGF0ICgxNjIsMSkgc2l6ZSAyNHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFty
PTAgYz0xMiBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDAp
IHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0g
ICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxODAsMTApIHNpemUgMTB4MCBbYmdjb2xv
cj0jMDBGRjAwN0ZdIFtyPTAgYz0xMyBycz0xIGNzPTFdCi0gICAgICAgIFJlbmRlclRhYmxlQ2Vs
bCB7VER9IGF0ICgxOTAsMSkgc2l6ZSAyNXgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0x
NCBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxODYsMTApIHNp
emUgMTB4MCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xMyBycz0xIGNzPTFdCisgICAgICAg
IFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxOTYsMSkgc2l6ZSAyNngxOCBbYmdjb2xvcj0jMDAw
MDAwN0ZdIFtyPTAgYz0xNCBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9
IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGgg
NDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyMTUsMSkgc2l6ZSAxMHgx
OCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xNSBycz0xIGNzPTFdCisgICAgICAgIFJlbmRl
clRhYmxlQ2VsbCB7VER9IGF0ICgyMjIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0Zd
IFtyPTAgYz0xNSBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgw
LDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAi
Ci0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyMjUsMSkgc2l6ZSAyN3gxOCBbYmdj
b2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xNiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxl
Q2VsbCB7VER9IGF0ICgyMzIsMSkgc2l6ZSAyOHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAg
Yz0xNiBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNp
emUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAg
ICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyNTIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0j
MDBGRjAwN0ZdIFtyPTAgYz0xNyBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7
VER9IGF0ICgyNjAsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xNyBy
cz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgx
OAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyNjIsMSkgc2l6ZSAzMHgxOCBbYmdjb2xvcj0jMDAwMDAw
N0ZdIFtyPTAgYz0xOCBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0
ICgyNzAsMSkgc2l6ZSAzMHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xOCBycz0xIGNz
PTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAg
ICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRh
YmxlQ2VsbCB7VER9IGF0ICgyOTIsMSkgc2l6ZSA3MDh4MTggW3I9MCBjPTE5IHJzPTEgY3M9MV0K
KyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDMwMCwxKSBzaXplIDcwMHgxOCBbcj0w
IGM9MTkgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBz
aXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgpJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVn
ZXItZXhwZWN0ZWQucG5nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFz
IGEgYmluYXJ5IHR5cGUuCnN2bjptaW1lLXR5cGUgPSBpbWFnZS9wbmcKCmlWQk9SdzBLR2dvQUFB
QU5TVWhFVWdBQUF5QUFBQUpZQ0FZQUFBQ2Fkb0p3QUFBQzdtbERRMUJKUTBNZ1VISnZabWxzWlFB
QWVBR0YKVk05ckUwRVUvalp1cWRBaUNGcHJEcko0a0NKSldhdG9SZFEyL1JGaWF3emJIN1pGa0dR
elNkWnVOdXZ1SnJXbGlPVGkwU3JlUmUyaApCLytBSG5yd1pDOUtoVnBGS042cktHS2hGeTN4elc1
TXRxWHF3TTUrODk0MzczMXZkdDhBRFhMU05QV0FCT1FOeDFLaUVXbHNmRUpxCi9JZ0FqcUlKUVRR
bFZkdnNUaVFHUVlOeitYdm4ySG9QZ1Z0V3czdjdkN0ozclpyU3Rwb0hoUDFBNEVlYTJTcXc3eGR4
Q2xrU0FvZzgKMzZFcHgzUUkzK1BZOHV5UE9VNTVlTUcxRHlzOXhGa2lmRUExTGM1L1RiaFR6U1hU
UUlOSU9KVDFjVkkrbk5lTGxOY2RCMmx1WnNiSQpFTDFQa0thN3pPNnJZcUdjVHZZT2tMMmQ5SDVP
czk0K3dpSENDeG10UDBhNGpaNzFqTlUvNG1IaHBPYkVoajBjR0RYMCtHQVZ0eHFwCitEWENGRjhR
VFNlaVZISFpMZzN4bUs3OVZ2SktnbkNRT01wa1lZQnpXa2hQMTB4dStMcUhCWDBtMXhPdjRuZFdV
ZUY1anhObjN0VGQKNzBYYUFxOHdEaDBNR2d5YURVaFFFRVVFWVppd1VFQ0dQQm94TkxKeVB5T3JC
aHVUZXpKMUpHcTdkR0pFc1VGN050dzl0MUdrM1R6KwpLQ0p4bEVPMUNKTDhRZjRxcjhsUDVYbjV5
MXl3MkZiM2xLMmJtcnJ5NER2RjVabTVHaDdYMDhqamMwMWVmSlhVZHBOWFI1YXNlWHE4Cm11d2FQ
K3hYbHpIbWdqV1B4SE93Ky9FdFg1WE1seW1NRk1YalZmUHFTNFIxV2pFMzM1OXNmenM5NGk3UExy
WFdjNjJKaXpkV201ZG4KL1dwSSsrNnF2SlBtVmZsUFh2WHgvR2ZOeEdQaUtURW1kb3JuSVltWHhT
N3hrdGhMcXd2aVlHM0hDSjJWaGluU2JaSDZKTlZnWUpxOAo5UzlkUDF0NHZVWi9EUFZSbEJuTTBs
U0o5My9DS21RMG5ia09iL3FQMjhmOEYrVDNpdWVmS0FJdmJPREltYnB0VTNIdkVLRmxwVzV6CnJn
SVh2OUY5OExadWE2TitPUHdFV0R5ckZxMVNOWjhndkFFY2RvZDZIdWdwbU5PV2xzMDVVb2NzbjVP
NjZjcGlVc3hRMjBOU1V0Y2wKMTJWTEZyT1pWV0xwZHRpWjB4MXVIS0U1UXZmRXAwcGxrL3F2OFJH
dy9iQlMrZm1zVXRsK1RocldnWmY2YjhDOC9VWEFlSXVKQUFBZwpBRWxFUVZSNEFlM2QzWTljZDNr
SDhOL3V6dm8xdGhNbmhCQWdPQzFGQ1NpOFZvQ0VvRWpRQzdqaGtoZHh5UTFjOEM4a2x2Z1RrTGpo
CkVna1FOeUJWQlVGQkZGVkNiVm9GSmFVMEthU0VrbEx5NHJ3bnRuZnQ3ZTg1eVRHN2pzZk9hTTZh
eC90OFJsclA3c3c1WjU3bjgrek0KbnUrZU05NlZyWDVwTGdRSUVDQkFnQUFCQWdRSUVMZ0tBcXRY
NFRFOEJBRUNCQWdRSUVDQUFBRUNCQVlCQWNRM0FnRUNCQWdRSUVDQQpBQUVDVjAxQUFMbHExQjZJ
QUFFQ0JBZ1FJRUNBQUFFQnhQY0FBUUlFQ0JBZ1FJQUFBUUpYVFVBQXVXclVIb2dBQVFJRUNCQWdR
SUFBCkFRSEU5d0FCQWdRSUVDQkFnQUFCQWxkTlFBQzVhdFFlaUFBQkFnUUlFQ0JBZ0FDQjJaVUlW
azZ1WEdrUjkxOUZnYTI3L2RtV3E4anQKb1FnUUlFQ0FBQUVDQkNZV2NBUmtZbENiSTBDQUFBRUNC
QWdRSUVCZ3ZvQUFNdC9HUFFRSUVDQkFnQUFCQWdRSVRDd2dnRXdNYW5NRQpDQkFnUUlBQUFRSUVD
TXdYRUVEbTI3aUhBQUVDQkFnUUlFQ0FBSUdKQlFTUWlVRnRqZ0FCQWdRSUVDQkFnQUNCK1FJQ3lI
d2I5eEFnClFJQUFBUUlFQ0JBZ01MR0FBREl4cU0wUklFQ0FBQUVDQkFnUUlEQmZRQUNaYitNZUFn
UUlFQ0JBZ0FBQkFnUW1GaEJBSmdhMU9RSUUKQ0JBZ1FJQUFBUUlFNWdzSUlQTnQzRU9BQUFFQ0JB
Z1FJRUNBd01RQ0FzakVvRFpIZ0FBQkFnUUlFQ0JBZ01COEFRRmt2bzE3Q0JBZwpRSUFBQVFJRUNC
Q1lXRUFBbVJqVTVnZ1FJRUNBQUFFQ0JBZ1FtQzhnZ015M2NROEJBZ1FJRUNCQWdBQUJBaE1MQ0NB
VGc5b2NBUUlFCkNCQWdRSUFBQVFMekJRU1ErVGJ1SVVDQUFBRUNCQWdRSUVCZ1lnRUJaR0pRbXlO
QWdBQUJBZ1FJRUNCQVlMNkFBRExmeGowRUNCQWcKUUlBQUFRSUVDRXdzSUlCTURHcHpCQWdRSUVD
QUFBRUNCQWpNRnhCQTV0dTRod0FCQWdRSUVDQkFnQUNCaVFVRWtJbEJiWTRBQVFJRQpDQkFnUUlB
QWdma0NBc2g4Ry9jUUlFQ0FBQUVDQkFnUUlEQ3hnQUF5TWFqTkVTQkFnQUFCQWdRSUVDQXdYMEFB
bVcvakhnSUVDQkFnClFJQUFBUUlFSmhZUVFDWUd0VGtDQkFnUUlFQ0FBQUVDQk9ZTENDRHpiZHhE
Z0FBQkFnUUlFQ0JBZ01ERUFnTEl4S0EyUjRBQUFRSUUKQ0JBZ1FJREFmQUVCWkw2TmV3Z1FJRUNB
QUFFQ0JBZ1FtRmhBQUprWTFPWUlFQ0JBZ0FBQkFnUUlFSmd2SUlETXQzRVBBUUlFQ0JBZwpRSUFB
QVFJVEN3Z2dFNFBhSEFFQ0JBZ1FJRUNBQUFFQzh3VUVrUGsyN2lGQWdBQUJBZ1FJRUNCQVlHSUJB
V1JpVUpzalFJQUFBUUlFCkNCQWdRR0MrZ0FBeTM4WTlCQWdRSUVDQUFBRUNCQWhNTENDQVRBeHFj
d1FJRUNCQWdBQUJBZ1FJekJjUVFPYmJ1SWNBQVFJRUNCQWcKUUlBQWdZa0ZCSkNKUVcyT0FBRUNC
QWdRSUVDQUFJSDVBZ0xJZkJ2M0VDQkFnQUFCQWdRSUVDQXdzWUFBTWpHb3pSRWdRSUFBQVFJRQpD
QkFnTUY5QUFKbHY0eDRDQkFnUUlFQ0FBQUVDQkNZV0VFQW1CclU1QWdRSUVDQkFnQUFCQWdUbUN3
Z2c4MjNjUTRBQUFRSUVDQkFnClFJREF4QUlDeU1TZ05rZUFBQUVDQkFnUUlFQ0F3SHdCQVdTK2pY
c0lFQ0JBZ0FBQkFnUUlFSmhZUUFDWkdOVG1DQkFnUUlBQUFRSUUKQ0JDWUx5Q0F6TGR4RHdFQ0JB
Z1FJRUNBQUFFQ0V3c0lJQk9EMmh3QkFnUUlFQ0JBZ0FBQkF2TUZCSkQ1Tmludk9YbnlaTXE2RkVX
QQpBQUVDQkFnUUlFRGd0UWdJSUs5RnlUSUVDQkFnUUlBQUFRSUVDRXdpSUlCTXdtZ2pCQWdRSUVD
QUFBRUNCQWk4RmdFQjVMVW9XWVlBCkFRSUVDQkFnUUlBQWdVa0VWcmI2NVhKYldqbTVjcm03M1hl
VkJiYnV2dXk0cm5JMUhvNEFBUUlFQ0JBZ1FJREFZZ0tPZ0N6bVpXa0MKQkFnUUlFQ0FBQUVDQkpZ
UUVFQ1d3TE1xQVFJRUNCQWdRSUFBQVFLTENRZ2dpM2xabWdBQkFnUUlFQ0JBZ0FDQkpRUUVrQ1h3
ckVxQQpBQUVDQkFnUUlFQ0F3R0lDQXNoaVhwWW1RSUFBQVFJRUNCQWdRR0FKQVFGa0NUeXJFaUJB
Z0FBQkFnUUlFQ0N3bUlBQXNwaVhwUWtRCklFQ0FBQUVDQkFnUVdFSkFBRmtDejZvRUNCQWdRSUFB
QVFJRUNDd21JSUFzNW1WcEFnUUlFQ0JBZ0FBQkFnU1dFQkJBbHNDektnRUMKQkFnUUlFQ0FBQUVD
aXdrSUlJdDVXWm9BQVFJRUNCQWdRSUFBZ1NVRUJKQWw4S3hLZ0FBQkFnUUlFQ0JBZ01CaUFnTElZ
bDZXSmtDQQpBQUVDQkFnUUlFQmdDUUVCWkFrOHF4SWdRSUFBQVFJRUNCQWdzSmlBQUxLWWw2VUpF
Q0JBZ0FBQkFnUUlFRmhDUUFCWkFzK3FCQWdRCklFQ0FBQUVDQkFnc0ppQ0FMT1psYVFJRUNCQWdR
SUFBQVFJRWxoQVFRSmJBc3lvQkFnUUlFQ0JBZ0FBQkFvc0pDQ0NMZVZtYUFBRUMKQkFnUUlFQ0FB
SUVsQkFTUUpmQ3NTb0FBQVFJRUNCQWdRSURBWWdJQ3lHSmVsaVpBZ0FBQkFnUUlFQ0JBWUFrQkFX
UUpQS3NTSUVDQQpBQUVDQkFnUUlMQ1lnQUN5bUplbENSQWdRSUFBQVFJRUNCQllRa0FBV1FMUHFn
UUlFQ0JBZ0FBQkFnUUlMQ1lnZ0N6bVpXa0NCQWdRCklFQ0FBQUVDQkpZUUVFQ1d3TE1xQVFJRUNC
QWdRSUFBQVFLTENRZ2dpM2xabWdBQkFnUUlFQ0JBZ0FDQkpRUUVrQ1h3ckVxQUFBRUMKQkFnUUlF
Q0F3R0lDQXNoaVhwWW1RSUFBQVFJRUNCQWdRR0FKQVFGa0NUeXJFaUJBZ0FBQkFnUUlFQ0N3bUlB
QXNwaVhwUWtRSUVDQQpBQUVDQkFnUVdFSkFBRmtDejZvRUNCQWdRSUFBQVFJRUNDd21JSUFzNW1W
cEFnUUlFQ0JBZ0FBQkFnU1dFQkJBbHNDektnRUNCQWdRCklFQ0FBQUVDaXdrSUlJdDVXWm9BQVFJ
RUNCQWdRSUFBZ1NVRUJKQWw4UDRjcTU0OGVmTFA4YkFla3dBQkFnUUlFQ0JBZ01Ba0FnTEkKSkl3
MlFvQUFBUUlFQ0JBZ1FJREFheEVRUUY2TGttVUlFQ0JBZ0FBQkFnUUlFSmhFUUFDWmhORkdDQkFn
UUlBQUFRSUVDQkI0TFFJcgpXLzF5dVFWWFRxNWM3bTczWFdXQnJic3ZPNjZyWEkySEkwQ0FBQUVD
QkFnUUlMQ1lnQ01naTNsWm1nQUJBZ1FJRUNCQWdBQ0JKUVFFCmtDWHdyRXFBQUFFQ0JBZ1FJRUNB
d0dJQ0FzaGlYcFltUUlBQUFRSUVDQkFnUUdBSkFRRmtDVHlyRWlCQWdBQUJBZ1FJRUNDd21JQUEK
c3BpWHBRa1FJRUNBQUFFQ0JBZ1FXRUpBQUZrQ3o2b0VDQkFnUUlBQUFRSUVDQ3dtSUlBczVtVnBB
Z1FJRUNCQWdBQUJBZ1NXRUxqaQozd0ZaWXR0V0pVQ0FBQUVDQkFnUUlFQ0F3QTRCUjBCMmNQaUNB
QUVDQkFnUUlFQ0FBSUhkRkJCQWRsUFh0Z2tRSUVDQUFBRUNCQWdRCjJDRWdnT3pnOEFVQkFnUUlF
Q0JBZ0FBQkFyc3BJSURzcHE1dEV5QkFnQUFCQWdRSUVDQ3dRMEFBMmNIaEN3SUVDQkFnUUlBQUFR
SUUKZGxOQUFObE5YZHNtUUlBQUFRSUVDQkFnUUdDSGdBQ3lnOE1YQkFnUUlFQ0FBQUVDQkFqc3Bv
QUFzcHU2dGsyQUFBRUNCQWdRSUVDQQp3QTRCQVdRSGh5OElFQ0JBZ0FBQkFnUUlFTmhOQVFGa04z
VnRtd0FCQWdRSUVDQkFnQUNCSFFJQ3lBNE9YeEFnUUlBQUFRSUVDQkFnCnNKc0NBc2h1NnRvMkFR
SUVDQkFnUUlBQUFRSTdCQVNRSFJ5K0lFQ0FBQUVDQkFnUUlFQmdOd1VFa04zVXRXMENCQWdRSUVD
QUFBRUMKQkhZSUNDQTdPSHhCZ0FBQkFnUUlFQ0JBZ01CdUNnZ2d1NmxyMndRSUVDQkFnQUFCQWdR
STdCQVFRSFp3K0lJQUFRSUVDQkFnUUlBQQpnZDBVbUYxcDR5c25WNjYweUovdXY2ZC9ldmVmdnB6
N1dTeDNjdTY5bDc0ajF0bXRiWStQR0k4Umx5czl6ajNEVW92MzhNcHF3OVc0CmphdnhXQmtlTjJv
WWU0N1BMOWYzOXVVVy9UNkpiVi91Y3M5RmQ4NnI0K0xscHE0anlyajRNZjZjdFVROWNibG4rUGRQ
LzJTbzZVL1YKREovZHM2M0l1KytlVitCRksvbVNBQUVDQkFnUVNDUGdDRWlhVVNpRUFBRUNCQWdR
SUVDQXdONFhFRUQyL294MVNJQUFBUUlFQ0JBZwpRQ0NOZ0FDU1poUUtJVUNBQUFFQ0JBZ1FJTEQz
QlFTUXZUOWpIUklnUUlBQUFRSUVDQkJJSXlDQXBCbUZRZ2dRSUVDQUFBRUNCQWpzCmZRRUJaTy9Q
V0ljRUNCQWdRSUFBQVFJRTBnZ0lJR2xHb1JBQ0JBZ1FJRUNBQUFFQ2UxOUFBTm43TTlZaEFRSUVD
QkFnUUlBQWdUUUMKQWtpYVVTaUVBQUVDQkFnUUlFQ0F3TjRYRUVEMi9veDFTSUFBQVFJRUNCQWdR
Q0NOZ0FDU1poUUtJVUNBQUFFQ0JBZ1FJTEQzQlFTUQp2VDlqSFJJZ1FJQUFBUUlFQ0JCSUl5Q0Fw
Qm1GUWdnUUlFQ0FBQUVDQkFqc2ZRRUJaTy9QV0ljRUNCQWdRSUFBQVFJRTBnZ0lJR2xHCm9SQUNC
QWdRSUVDQUFBRUNlMTlBQU5uN005WWhBUUlFQ0JBZ1FJQUFnVFFDQWtpYVVTaUVBQUVDQkFnUUlF
Q0F3TjRYRUVEMi9veDEKU0lBQUFRSUVDQkFnUUNDTmdBQ1NaaFFLSVVDQUFBRUNCQWdRSUxEM0JW
YTIrbVh2dDZsREFnUUlFQ0JBZ0FBQkFnUXlDRGdDa21FSwphaUJBZ0FBQkFnUUlFQ0JRUkVBQUtU
Sm9iUklnUUlBQUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQWlneGFtd1FJCkVD
QkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFBQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJRUNBQUlF
TUFnSkloaW1vZ1FBQkFnUUkKRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlFQ0JBZ1FDQ0RnQUNTWVFw
cUlFQ0FBQUVDQkFnUUlGQkVRQUFwTW1odEVpQkFnQUFCQWdRSQpFTWdnSUlCa21JSWFDQkFnUUlB
QUFRSUVDQlFSRUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNCQWdBQUJBa1VF
CkJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQ0JBZ1FJRUNBUUJFQkFhVElvTFZK
Z0FBQkFnUUlFQ0JBSUlPQUFKSmgKQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFBQ2t5YUcwU0lFQ0FBQUVD
QkFnUXlDQWdnR1NZZ2hvSUVDQkFnQUFCQWdRSUZCRVFRSW9NV3BzRQpDQkFnUUlBQUFRSUVNZ2dJ
SUJtbW9BWUNCQWdRSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDU0lZcHFJRUFB
UUlFCkNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRBQWttRUthaUJBZ0FBQkFnUUlF
Q0JRUkVBQUtUSm9iUklnUUlBQUFRSUUKQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVDQkFnVUVSQkFp
Z3hhbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFBQVFKRgpCQVNRSW9QV0pnRUNC
QWdRSUVDQUFJRU1BZ0pJaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlFQ0JBZ1FD
Q0RnQUNTCllRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJBZ0FBQkFnUUlFTWdnSUlCa21J
SWFDQkFnUUlBQUFRSUVDQlFSRUVDS0RGcWIKQkFnUUlFQ0FBQUVDQkRJSUNDQVpwcUFHQWdRSUVD
QkFnQUFCQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQwpCQWdRSUVDQVFC
RUJBYVRJb0xWSmdBQUJBZ1FJRUNCQUlJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFBQ2t5YUcw
U0lFQ0FBQUVDCkJBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlGQkVRUUlvTVdwc0VDQkFnUUlB
QUFRSUVNZ2dJSUJtbW9BWUNCQWdRSUVDQUFBRUMKUlFRRWtDS0QxaVlCQWdRSUVDQkFnQUNCREFJ
Q1NJWXBxSUVBQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRBQQprbUVLYWlC
QWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUFBUUlFQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVD
QkFnVUVSQkFpZ3hhCm13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUVDQkFnUUlBQUFRSkZCQVNR
SW9QV0pnRUNCQWdRSUVDQUFJRU1BZ0pJaGltb2dRQUIKQWdRSUVDQkFnRUFSQVFHa3lLQzFTWUFB
QVFJRUNCQWdRQ0NEZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJBZ0FBQgpBZ1FJ
RU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0tERnFiQkFnUUlFQ0FBQUVDQkRJSUNDQVpw
cUFHQWdRSUVDQkFnQUFCCkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQWdRd0NBa2lHS2FpQkFBRUNC
QWdRSUVDQVFCRUJBYVRJb0xWSmdBQUJBZ1FJRUNCQUlJT0EKQUpKaENtb2dRSUFBQVFJRUNCQWdV
RVJBQUNreWFHMFNJRUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlGQkVRUUlvTQpX
cHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0FBQUVDUlFRRWtDS0QxaVlCQWdRSUVD
QkFnQUNCREFJQ1NJWXBxSUVBCkFRSUVDQkFnUUlCQUVRRUJwTWlndFVtQUFBRUNCQWdRSUVBZ2c0
QUFrbUVLYWlCQWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUEKQVFJRUNCRElJQ0NBWkppQ0dn
Z1FJRUNBQUFFQ0JBZ1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUVDQkFnUUlB
QQpBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW9nUUFCQWdRSUVDQkFnRUFSQVFH
a3lLQzFTWUFBQVFJRUNCQWdRQ0NECmdBQ1NZUXBxSUVDQUFBRUNCQWdRSUZCRVFBQXBNbWh0RWlC
QWdBQUJBZ1FJRU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0sKREZxYkJBZ1FJRUNBQUFF
Q0JESUlDQ0FacHFBR0FnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQWdRd0NBa2lH
S2FpQgpBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVDQkFJSU9BQUpKaENtb2dRSUFB
QVFJRUNCQWdVRVJBQUNreWFHMFNJRUNBCkFBRUNCQWdReUNBZ2dHU1lnaG9JRUNCQWdBQUJBZ1FJ
RkJFUVFJb01XcHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0EKQUFFQ1JRUUVrQ0tE
MWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWlndFVtQUFBRUNC
QWdRSUVBZwpnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RKb2JSSWdRSUFBQVFJRUNCRElJ
Q0NBWkppQ0dnZ1FJRUNBQUFFQ0JBZ1VFUkJBCmlneGFtd1FJRUNCQWdBQUJBZ1F5Q0FnZ0dhYWdC
Z0lFQ0JBZ1FJQUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW8KZ1FBQkFnUUlF
Q0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnUUNDRGdBQ1NZUXBxSUVDQUFBRUNCQWdRSUZCRVFB
QXBNbWh0RWlCQQpnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFBQVFJRUNCUVJFRUNLREZxYkJB
Z1FJRUNBQUFFQ0JESUlDQ0FacHFBR0FnUUlFQ0JBCmdBQUJBa1VFQkpBaWc5WW1BUUlFQ0JBZ1FJ
QUFnUXdDQWtpR0thaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVDQkEKSUlPQUFK
SmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTSUVDQUFBRUNCQWdReUNBZ2dHU1lnaG9JRUNC
QWdBQUJBZ1FJRkJFUQpRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0lJQm1tb0FZQ0JBZ1FJRUNBQUFF
Q1JRUUVrQ0tEMWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwCnFJRUFBUUlFQ0JBZ1FJQkFFUUVCcE1p
Z3RVbUFBQUVDQkFnUUlFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RKb2JSSWcKUUlB
QUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQWlneGFtd1FJRUNCQWdBQUJBZ1F5
Q0FnZ0dhYWdCZ0lFQ0JBZwpRSUFBQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJRUNBQUlFTUFnSkloaW1v
Z1FBQkFnUUlFQ0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnClFDQ0RnQUNTWVFwcUlFQ0FBQUVD
QkFnUUlGQkVRQUFwTW1odEVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFBQVFJRUNCUVIK
RUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNCQWdBQUJBa1VFQkpBaWc5WW1B
UUlFQ0JBZ1FJQUFnUXdDQWtpRwpLYWlCQUFFQ0JBZ1FJRUNBUUJFQkFhVElvTFZKZ0FBQkFnUUlF
Q0JBSUlPQUFKSmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTCklFQ0FBQUVDQkFnUXlDQWdn
R1NZZ2hvSUVDQkFnQUFCQWdRSUZCRVFRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0lJQm1tb0FZQ0JB
Z1EKSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDU0lZcHFJRUFBUUlFQ0JBZ1FJ
QkFFUUVCcE1pZ3RVbUFBQUVDQkFnUQpJRUFnZzRBQWttRUthaUJBZ0FBQkFnUUlFQ0JRUkVBQUtU
Sm9iUklnUUlBQUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVCkVSQkFpZ3hhbXdRSUVD
QkFnQUFCQWdReUNBZ2dHYWFnQmdJRUNCQWdRSUFBQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJRUNBQUlF
TUFnSkkKaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlFQ0JBZ1FDQ0RnQUNTWVFw
cUlFQ0FBQUVDQkFnUUlGQkVRQUFwTW1odApFaUJBZ0FBQkFnUUlFTWdnSUlCa21JSWFDQkFnUUlB
QUFRSUVDQlFSRUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJCkVDQkFnQUFCQWtV
RUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQ0JBZ1FJRUNBUUJFQkFhVElvTFZK
Z0FBQkFnUUkKRUNCQUlJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFBQ2t5YUcwU0lFQ0FBQUVD
QkFnUXlDQWdnR1NZZ2hvSUVDQkFnQUFCQWdRSQpGQkVRUUlvTVdwc0VDQkFnUUlBQUFRSUVNZ2dJ
SUJtbW9BWUNCQWdRSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDClNJWXBxSUVB
QVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRBQWttRUthaUJBZ0FBQkFnUUlF
Q0JRUkVBQUtUSm8KYlJJZ1FJQUFBUUlFQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVDQkFnVUVSQkFp
Z3hhbXdRSUVDQkFnQUFCQWdReUNBZ2dHYWFnQmdJRQpDQkFnUUlBQUFRSkZCQVNRSW9QV0pnRUNC
QWdRSUVDQUFJRU1BZ0pJaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlFCkNCQWdR
Q0NEZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJBZ0FBQkFnUUlFTWdnSUlCa21J
SWFDQkFnUUlBQUFRSUUKQ0JRUkVFQ0tERnFiQkFnUUlFQ0FBQUVDQkRJSUNDQVpwcUFHQWdRSUVD
QkFnQUFCQWtVRUJKQWlnOVltQVFJRUNCQWdRSUFBZ1F3QwpBa2lHS2FpQkFBRUNCQWdRSUVDQVFC
RUJBYVRJb0xWSmdBQUJBZ1FJRUNCQUlJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFBQ2t5CmFH
MFNJRUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlGQkVRUUlvTVdwc0VDQkFnUUlB
QUFRSUVNZ2dJSUJtbW9BWUMKQkFnUUlFQ0FBQUVDUlFRRWtDS0QxaVlCQWdRSUVDQkFnQUNCREFJ
Q1NJWXBxSUVBQVFJRUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQwpCQWdRSUVBZ2c0QUFrbUVLYWlC
QWdBQUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUFBUUlFQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVD
CkJBZ1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUVDQkFnUUlBQUFRSkZCQVNR
SW9QV0pnRUNCQWdRSUVDQUFJRU0KQWdKSWhpbW9nUUFCQWdRSUVDQkFnRUFSQVFHa3lLQzFTWUFB
QVFJRUNCQWdRQ0NEZ0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcApNbWh0RWlCQWdBQUJBZ1FJ
RU1nZ0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0tERnFiQkFnUUlFQ0FBQUVDQkRJSUNDQVpw
cUFHCkFnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQWdRd0NBa2lHS2FpQkFBRUNC
QWdRSUVDQVFCRUJBYVRJb0xWSmdBQUIKQWdRSUVDQkFJSU9BQUpKaENtb2dRSUFBQVFJRUNCQWdV
RVJBQUNreWFHMFNJRUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQgpBZ1FJRkJFUVFJb01X
cHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0FBQUVDUlFRRWtDS0QxaVlCQWdRSUVD
QkFnQUNCCkRBSUNTSVlwcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWlndFVtQUFBRUNCQWdRSUVBZ2c0
QUFrbUVLYWlCQWdBQUJBZ1FJRUNCUVJFQUEKS1RKb2JSSWdRSUFBQVFJRUNCRElJQ0NBWkppQ0dn
Z1FJRUNBQUFFQ0JBZ1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZwpCZ0lFQ0JBZ1FJ
QUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW9nUUFCQWdRSUVDQkFnRUFSQVFH
a3lLQzFTWUFBCkFRSUVDQkFnUUNDRGdBQ1NZUXBxSUVDQUFBRUNCQWdRSUZCRVFBQXBNbWh0RWlC
QWdBQUJBZ1FJRU1nZ0lJQmttSUlhQ0JBZ1FJQUEKQVFJRUNCUVJFRUNLREZxYkJBZ1FJRUNBQUFF
Q0JESUlDQ0FacHFBR0FnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQQpnUXdDQWtp
R0thaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVDQkFJSU9BQUpKaENtb2dRSUFB
QVFJRUNCQWdVRVJBCkFDa3lhRzBTSUVDQUFBRUNCQWdReUNBZ2dHU1lnaG9JRUNCQWdBQUJBZ1FJ
RkJFUVFJb01XcHNFQ0JBZ1FJQUFBUUlFTWdnSUlCbW0Kb0FZQ0JBZ1FJRUNBQUFFQ1JRUUVrQ0tE
MWlZQkFnUUlFQ0JBZ0FDQkRBSUNTSVlwcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWlndFVtQQpBQUVD
QkFnUUlFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RKb2JSSWdRSUFBQVFJRUNCRElJ
Q0NBWkppQ0dnZ1FJRUNBCkFBRUNCQWdVRVJCQWlneGFtd1FJRUNCQWdBQUJBZ1F5Q0FnZ0dhYWdC
Z0lFQ0JBZ1FJQUFBUUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0EKQUlFTUFnSkloaW1vZ1FBQkFnUUlF
Q0JBZ0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnUUNDRGdBQ1NZUXBxSUVDQUFBRUNCQWdRSUZCRQpR
QUFwTW1odEVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFBQVFJRUNCUVJFRUNLREZxYkJB
Z1FJRUNBQUFFQ0JESUlDQ0FaCnBxQUdBZ1FJRUNCQWdBQUJBa1VFQkpBaWc5WW1BUUlFQ0JBZ1FJ
QUFnUXdDQWtpR0thaUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkoKZ0FBQkFnUUlFQ0JBSUlPQUFK
SmhDbW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTSUVDQUFBRUNCQWdReUNBZ2dHU1lnaG9JRUNC
QQpnQUFCQWdRSUZCRVFRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0lJQm1tb0FZQ0JBZ1FJRUNBQUFF
Q1JRUUVrQ0tEMWlZQkFnUUlFQ0JBCmdBQ0JEQUlDU0lZcHFJRUFBUUlFQ0JBZ1FJQkFFUUVCcE1p
Z3RVbUFBQUVDQkFnUUlFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlEKUkVBQUtUSm9iUklnUUlB
QUFRSUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQWlneGFtd1FJRUNCQWdBQUJBZ1F5
Q0FnZwpHYWFnQmdJRUNCQWdRSUFBQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJRUNBQUlFTUFnSkloaW1v
Z1FBQkFnUUlFQ0JBZ0VBUkFRR2t5S0MxClNZQUFBUUlFQ0JBZ1FDQ0RnQUNTWVFwcUlFQ0FBQUVD
QkFnUUlGQkVRQUFwTW1odEVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWcKUUlBQUFRSUVDQlFS
RUVDS0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNCQWdBQUJBa1VFQkpBaWc5WW1B
UUlFQ0JBZwpRSUFBZ1F3Q0FraUdLYWlCQUFFQ0JBZ1FJRUNBUUJFQkFhVElvTFZKZ0FBQkFnUUlF
Q0JBSUlPQUFKSmhDbW9nUUlBQUFRSUVDQkFnClVFUkFBQ2t5YUcwU0lFQ0FBQUVDQkFnUXlDQWdn
R1NZZ2hvSUVDQkFnQUFCQWdRSUZCRVFRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0kKSUJtbW9BWUNC
QWdRSUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDU0lZcHFJRUFBUUlFQ0ZZNld4
a0FBQmRwU1VSQgpWQkFnUUlCQUVRRUJwTWlndFVtQUFBRUNCQWdRSUVBZ2c0QUFrbUVLYWlCQWdB
QUJBZ1FJRUNCUVJFQUFLVEpvYlJJZ1FJQUFBUUlFCkNCRElJQ0NBWkppQ0dnZ1FJRUNBQUFFQ0JB
Z1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUVDQkFnUUlBQUFRSkYKQkFTUUlv
UFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW9nUUFCQWdRSUVDQkFnRUFSQVFHa3lLQzFTWUFBQVFJ
RUNCQWdRQ0NEZ0FDUwpZUXBxSUVDQUFBRUNCQWdRSUZCRVFBQXBNbWh0RWlCQWdBQUJBZ1FJRU1n
Z0lJQmttSUlhQ0JBZ1FJQUFBUUlFQ0JRUkVFQ0tERnFiCkJBZ1FJRUNBQUFFQ0JESUlDQ0FacHFB
R0FnUUlFQ0JBZ0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQWdRd0NBa2lHS2FpQkFBRUMKQkFn
UUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVDQkFJSU9BQUpKaENtb2dRSUFBQVFJRUNCQWdVRVJB
QUNreWFHMFNJRUNBQUFFQwpCQWdReUNBZ2dHU1lnaG9JRUNCQWdBQUJBZ1FJRkJFUVFJb01XcHNF
Q0JBZ1FJQUFBUUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0FBQUVDClJRUUVrQ0tEMWlZQkFnUUlFQ0JB
Z0FDQkRBSUNTSVlwcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWlndFVtQUFBRUNCQWdRSUVBZ2c0QUEK
a21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RKb2JSSWdRSUFBQVFJRUNCRElJQ0NBWkppQ0dnZ1FJ
RUNBQUFFQ0JBZ1VFUkJBaWd4YQptd1FJRUNCQWdBQUJBZ1F5Q0FnZ0dhYWdCZ0lFQ0JBZ1FJQUFB
UUpGQkFTUUlvUFdKZ0VDQkFnUUlFQ0FBSUVNQWdKSWhpbW9nUUFCCkFnUUlFQ0JBZ0VBUkFRR2t5
S0MxU1lBQUFRSUVDQkFnUUNDRGdBQ1NZUXBxSUVDQUFBRUNCQWdRSUZCRVFBQXBNbWh0RWlCQWdB
QUIKQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFBQVFJRUNCUVJFRUNLREZxYkJBZ1FJRUNBQUFFQ0JE
SUlDQ0FacHFBR0FnUUlFQ0JBZ0FBQgpBa1VFQkpBaWc5WW1BUUlFQ0JBZ1FJQUFnUXdDQWtpR0th
aUJBQUVDQkFnUUlFQ0FRQkVCQWFUSW9MVkpnQUFCQWdRSUVDQkFJSU9BCkFKSmhDbW9nUUlBQUFR
SUVDQkFnVUVSQUFDa3lhRzBTSUVDQUFBRUNCQWdReUNBZ2dHU1lnaG9JRUNCQWdBQUJBZ1FJRkJF
UVFJb00KV3BzRUNCQWdRSUFBQVFJRU1nZ0lJQm1tb0FZQ0JBZ1FJRUNBQUFFQ1JRUUVrQ0tEMWlZ
QkFnUUlFQ0JBZ0FDQkRBSUNTSVlwcUlFQQpBUUlFQ0JBZ1FJQkFFUUVCcE1pZ3RVbUFBQUVDQkFn
UUlFQWdnNEFBa21FS2FpQkFnQUFCQWdRSUVDQlFSRUFBS1RKb2JSSWdRSUFBCkFRSUVDQkRJSUND
QVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQWlneGFtd1FJRUNCQWdBQUJBZ1F5Q0FnZ0dhYWdCZ0lF
Q0JBZ1FJQUEKQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJRUNBQUlFTUFnSkloaW1vZ1FBQkFnUUlFQ0JB
Z0VBUkFRR2t5S0MxU1lBQUFRSUVDQkFnUUNDRApnQUNTWVFwcUlFQ0FBQUVDQkFnUUlGQkVRQUFw
TW1odEVpQkFnQUFCQWdRSUVNZ2dJSUJrbUlJYUNCQWdRSUFBQVFJRUNCUVJFRUNLCkRGcWJCQWdR
SUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNCQWdBQUJBa1VFQkpBaWc5WW1BUUlFQ0JBZ1FJQUFn
UXdDQWtpR0thaUIKQUFFQ0JBZ1FJRUNBUUJFQkFhVElvTFZKZ0FBQkFnUUlFQ0JBSUlPQUFKSmhD
bW9nUUlBQUFRSUVDQkFnVUVSQUFDa3lhRzBTSUVDQQpBQUVDQkFnUXlDQWdnR1NZZ2hvSUVDQkFn
QUFCQWdRSUZCRVFRSW9NV3BzRUNCQWdRSUFBQVFJRU1nZ0lJQm1tb0FZQ0JBZ1FJRUNBCkFBRUNS
UVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDU0lZcHFJRUFBUUlFQ0JBZ1FJQkFFUUVCcE1pZ3RV
bUFBQUVDQkFnUUlFQWcKZzRBQWttRUthaUJBZ0FBQkFnUUlFQ0JRUkVBQUtUSm9iUklnUUlBQUFR
SUVDQkRJSUNDQVpKaUNHZ2dRSUVDQUFBRUNCQWdVRVJCQQppZ3hhbXdRSUVDQkFnQUFCQWdReUNB
Z2dHYWFnQmdJRUNCQWdRSUFBQVFKRkJBU1FJb1BXSmdFQ0JBZ1FJRUNBQUlFTUFnSkloaW1vCmdR
QUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlFQ0JBZ1FDQ0RnQUNTWVFwcUlFQ0FBQUVDQkFn
UUlGQkVRQUFwTW1odEVpQkEKZ0FBQkFnUUlFTWdnSUlCa21JSWFDQkFnUUlBQUFRSUVDQlFSRUVD
S0RGcWJCQWdRSUVDQUFBRUNCRElJQ0NBWnBxQUdBZ1FJRUNCQQpnQUFCQWtVRUJKQWlnOVltQVFJ
RUNCQWdRSUFBZ1F3Q0FraUdLYWlCQUFFQ0JBZ1FJRUNBUUJFQkFhVElvTFZKZ0FBQkFnUUlFQ0JB
CklJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFBQ2t5YUcwU0lFQ0FBQUVDQkFnUXlDQWdnR1NZ
Z2hvSUVDQkFnQUFCQWdRSUZCRVEKUUlvTVdwc0VDQkFnUUlBQUFRSUVNZ2dJSUJtbW9BWUNCQWdR
SUVDQUFBRUNSUVFFa0NLRDFpWUJBZ1FJRUNCQWdBQ0JEQUlDU0lZcApxSUVBQVFJRUNCQWdRSUJB
RVFFQnBNaWd0VW1BQUFFQ0JBZ1FJRUFnZzRBQWttRUthaUJBZ0FBQkFnUUlFQ0JRUkVBQUtUSm9i
UklnClFJQUFBUUlFQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVDQkFnVUVSQkFpZ3hhbXdRSUVDQkFn
QUFCQWdReUNBZ2dHYWFnQmdJRUNCQWcKUUlBQUFRSkZCQVNRSW9QV0pnRUNCQWdRSUVDQUFJRU1B
Z0pJaGltb2dRQUJBZ1FJRUNCQWdFQVJBUUdreUtDMVNZQUFBUUlFQ0JBZwpRQ0NEZ0FDU1lRcHFJ
RUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHRFaUJBZ0FBQkFnUUlFTWdnSUlCa21JSWFDQkFnUUlBQUFR
SUVDQlFSCkVFQ0tERnFiQkFnUUlFQ0FBQUVDQkRJSUNDQVpwcUFHQWdRSUVDQkFnQUFCQWtVRUJK
QWlnOVltQVFJRUNCQWdRSUFBZ1F3Q0FraUcKS2FpQkFBRUNCQWdRSUVDQVFCRUJBYVRJb0xWSmdB
QUJBZ1FJRUNCQUlJT0FBSkpoQ21vZ1FJQUFBUUlFQ0JBZ1VFUkFBQ2t5YUcwUwpJRUNBQUFFQ0JB
Z1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUlGQkVRUUlvTVdwc0VDQkFnUUlBQUFRSUVNZ2dJSUJt
bW9BWUNCQWdRCklFQ0FBQUVDUlFRRWtDS0QxaVlCQWdRSUVDQkFnQUNCREFJQ1NJWXBxSUVBQVFJ
RUNCQWdRSUJBRVFFQnBNaWd0VW1BQUFFQ0JBZ1EKSUVBZ2c0QUFrbUVLYWlCQWdBQUJBZ1FJRUNC
UVJFQUFLVEpvYlJJZ1FJQUFBUUlFQ0JESUlDQ0FaSmlDR2dnUUlFQ0FBQUVDQkFnVQpFUkJBaWd4
YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUVDQkFnUUlBQUFRSkZCQVNRSW9QV0pnRUNCQWdR
SUVDQUFJRU1BZ0pJCmhpbW9nUUFCQWdRSUVDQkFnRUFSQVFHa3lLQzFTWUFBQVFJRUNCQWdRQ0NE
Z0FDU1lRcHFJRUNBQUFFQ0JBZ1FJRkJFUUFBcE1taHQKRWlCQWdBQUJBZ1FJRU1nZ0lJQmttSUlh
Q0JBZ1FJQUFBUUlFQ0JRUkVFQ0tERnFiQkFnUUlFQ0FBQUVDQkRJSUNDQVpwcUFHQWdRSQpFQ0JB
Z0FBQkFrVUVCSkFpZzlZbUFRSUVDQkFnUUlBQWdRd0NBa2lHS2FpQkFBRUNCQWdRSUVDQVFCRUJB
YVRJb0xWSmdBQUJBZ1FJCkVDQkFJSU9BQUpKaENtb2dRSUFBQVFJRUNCQWdVRVJBQUNreWFHMFNJ
RUNBQUFFQ0JBZ1F5Q0FnZ0dTWWdob0lFQ0JBZ0FBQkFnUUkKRkJFUVFJb01XcHNFQ0JBZ1FJQUFB
UUlFTWdnSUlCbW1vQVlDQkFnUUlFQ0FBQUVDUlFRRWtDS0QxaVlCQWdRSUVDQkFnQUNCREFJQwpT
SVlwcUlFQUFRSUVDQkFnUUlCQUVRRUJwTWlndFVtQUFBRUNCQWdRSUVBZ2c0QUFrbUVLYWlCQWdB
QUJBZ1FJRUNCUVJFQUFLVEpvCmJSSWdRSUFBQVFJRUNCRElJQ0NBWkppQ0dnZ1FJRUNBQUFFQ0JB
Z1VFUkJBaWd4YW13UUlFQ0JBZ0FBQkFnUXlDQWdnR2FhZ0JnSUUKQ0JBZ1FJQUFBUUpGQkFTUUlv
UFdKZ0VDQkFnUUlFQ0FBSUVNQXJQdmZ2ZTdiVGFidGJXMXRiYSt2ajdVdExXMTFWWlhWOXY1OCtk
YgpmQjZYczJmUHR0T25UMSs0TFpaM0lVQ0FBQUVDQkFnUWVMVkE3RWV0ckt3TSsxangrZmp4NmlY
ZFFtQjZnWFBuemczNzhPUDNZT3pyCmovdjE0ejUrM0RkZXh2MzkrRHJ1My83MXVNeDQvZGhqajdX
YmI3NTUvUEpWMTdIZGVLenRsN0dldU43YzNHeXpqWTJOOXBhM3ZHVjQKc0FnVjhZRHhFU3ZIQW4v
ODR4L2JmZmYvcnYzYmY2MjNYejZ5ci8zUFk3UDJ3dGtJS24zRGtVMzZodHBOaDdjL2hzOEpFQ0JB
Z0FBQgpBdlVFenZjZG85anY2dnRSMTgwMjJtMDNuR252K2N2V1B2cmVBKzNOdHg0YWZ0RWJPM2Zi
ZC96cUllbDROd1RHd0JEWHNmTWYrL1N4Ckh4OWZ2L2ppaSsybGwxNXFiM2pERzlyeDQ4Y3ZIR1NJ
NzhQeEk0SkJYR0w1TVlETSt6NTk0WVVYMnV0Zi8vcEx0aEhyeDNwUncvYjEKNC9hNHhPMi8vdld2
Mnl3S3VmMzIyNGNIMjc3Z21UTm4ybjMzM2RmKzdrY1B0aC85KzlIMjBMTTN0ZjJIOTdjUC91MU43
YzRUMTdVagpoMTQ1QXRJM09Jc0hPdGVQbHZRblZldGhhbVgyOG5WLzVMYTEwaDh3a2xSLzBQVlk1
ZHhXQjRrR3o3V1ZlSkwyajdqWit2eDgvM2orCmVQM3crdW5uaDUrZjhUcHdMZTQvclBYUmJmYWRu
ZGpmT1gzbWZQdlAzejNmZm43ZmsrMC83bjJwM2YvSWMrMnpIejNYUHZEdTQyM2YKdm4zRHptRmZ6
SVhBWkFLeGd6L3U1TWQxN09qSFI0U1F1TVQxSTQ4OE1uei8zWG5ubmNPUnVmSEJZLzkvWEhlOGJi
emVuZzNHMjU1OAo4c2toTzR4Zmo5Znp0aEgzai9kRlRhZE9uV3F6U0VTUmRPSUpNUllRNGVQaGh4
OXUvL0RUKzlvUEhqamVmblBtMXJaeTA2eDk2SU8zCnRJL2VkYXdkMnIvV1EwZmZXaS80WE45UXp4
NnRQKy82UC8xUVl3U1FmdDFiYVd2OS90WCtqT3hYTFg0cHNOV1g2MUVsRnV4ZjkvV0cKMjdiYTJm
Nko5Zm41L3ZIODhmcmg5ZFBQRHo4L3I5WDloMWQyaTRiOW1maGQ4cHR2Tzl3TzNuaWcvZjAvL3FF
OThNeSsxbjcyWkh2VApHMDYzTzk1NnBPM2Z2My9ZOStxTHVSQ1lSQ0IyN0dNblB6N2lhRVo4SGRl
eGJ6OSt4TnNwZnZuTFg3WWpSNDYwRXlkT0RFZmt4b0FSCjY0MmZYNm1nZUV2RytMYU5LeTA3Ympl
dTR4STFSUFlZVHNHS0wrTEpFQThjQmNkcFY3LzR4Uy9heng5Y2JiL1plSE5iNlUrZ28wZjMKdFp1
dVh4K2VNSnY5bVJWUHJ0NW1EeFR4VXRIYW1aNHcrdE5yQ0JxcnM4Z2l3MHRJVyswTHh0dEZ0dnI5
c1hTczI2OTYrQWlrbGRiUApBT3RmcjFpZm4rOGZ6eCt2SC8zRjFPdW5ueDkrZmw2Yit3L0RMMWtq
aFF5WGwzKzVldnpvZWp0eS9HQjdacmJXSG5qcXh2YURmM202Ci9kWHR4NGVkdDllNkF6ZHUwVFdC
eXdtTUFTU3V4L0FSMTNHUUliN1g0cFNzQ0E3UFBQTk0rOVd2ZnRXdXUrNjZkc3N0dDF3SXdoZUgK
anpodDYzdmYrMTc3N0djLys2cUhqYmR2WEx4OExQVE5iMzZ6ZmVwVG4ycUhEaDI2c002NFhGeEhD
SW5NRWV2M3M2ZFcydlBQUHo4VQpFa3MvOTl4encwZTh3ZVRoRjkvVVZvLzFKOCt4L2UzWWRldnQ4
ZWRiZStxRnJYNEVaTFd0OVpBeFBNLzZBWTJOZmdRamdzMW0vL1ZsCkhJSnNaK01IeUdxTE03SGk2
OVh6TDZldmN4RkN0dnI3VE9LQittMW56c1ViM2Z1YlVYb29zVDQvM3orZVAxNC92SDc2K2VIbjU3
VzYKL3hBbmVLeXNEbnM0d3hrZnNXL3o1UE5iN2RpUjJiRGY4MXpmMy9uWDM2OE9PMkJ4MXNuNGk5
L1lKWEloc0t6QTlnQXl2dEY3UEFJUwpwMS9GL1ljUEh4NCtubjMyMlJidjQ0ajkvNk5IajE0SUlX
TU5QLzd4ajRjd0VhZGFmZTV6bnh0dnZuQTlidmZDRGE5ODhwM3ZmS2Y5CjVDYy9HVUxMeHo3MnNZ
dnZIbXFJeDR6c01UdHc0TUR3NXBSSVJKR09vcWk0NCttbm4yNVByUDkxTzNKMGY3dmgyTDRlUVBi
MU41K3YKdEg5K3VLZVcxYzErYWxYRWo1ZURSNXhVRlUrMGVJL0hhbi9QeC9xK25yVGFaajhGcXdl
US9qSHJ5WCt0aDVQTnpYNDRxSCtjNytFawpNT0xVclkyNDdaVWpJOWJuNS92SDg4ZnJoOWRQUHov
OC9Md1c5eC82cnRQd2k5bjRMZSs1c3h0OUh5ZU9nbXoyQUxMZVZ1SlVrSDQ2CnpPOWZPTnJpTlBm
WTN4SkFYclYvNm9ZbEJNWUFFdUVnUHNZM29jYytmWHpFL2ZFL1ljWDNYZXp6UndnZTkva1BIanc0
M1A3UVF3KzEKcjMvOTZ5MnV4MU9teHZlUWJDOHR0bldwMjJPZEo1NTRvbjMxcTE5dFAvemhEOXNY
dnZDRjlyYTN2VzNZVmh6MWlJTWNjV1Fsc3NjcwpDb2pETTVGSTRoRE5XRng4dmY5Z2E4ZjY0Y000
K25IODZJRVdCYTczTURHYjlWT3hldEJZV2UxSE0zb1IvUUJQRHhMbjJxeS9ZdXpyCno3RzFuaVRp
T01kYS8zVm12UDA4YmwvdlQ3WjRjOVptWDI2elB5blA5NDhJSUdjMytubHFmV25yOC9QOTQvbmo5
Y1BycDU4ZmZuNWUKcS9zUHNiK3oybmZ3dHM3MThORi9LYnV4Y2FhZFBmMVNPOU5QTlY5WjJXam5O
OWJiYy8zc2o5aHhpMzJ0Mk9lSy9TOFhBbE1JakFFawpyaU9BaktkSmpVRWliaHRQKzR2M1lFUUlp
RXNFZ3ZpNDk5NTcyOWUrOXJWWGxmTDQ0NCsvNnJZSU1KZTZQY0wxZUxuLy92dmJsNy84CjVmYkZM
MzZ4dmU5OTd4c0NVTlF5dnU5OEZzVkVDQm12by9Bb09ncDcvZXp4dG43ZzVuYjA0TDUyOUhBUElJ
Y090d1A3KzdKOStUaFYKSXRKK1g3d2Z3WGo1aU1aNlArZHF2VCtaNG1qSEVEejY1eEZVWnErY210
VXpSMy9pOVkrK1RoeWtIQUxKMmMyMnNXWDllRUhpNS92SAo4OGZyaDlkUFB6LzgvT3o3RGRmZy9z
TmEvNlZzLzY5NStuNVIzL25yUjBET25sbHRwOWY3Zi9KeitzVys3N1BWTmc3TzJ2Vm5uKzM3ClJN
ZUdmUzRCWk54VmRUMkZRT3pjeHo1OGZNUk8vbmprWTd3OWpvaU1ZU1Rlb3hINy9yRk1YT0wyRDMz
b1ErMTFyM3RkKzhZM3Z0RisKKzl2ZkRyZkhQM0hFNU9KTHJIdXAyN2NINmhNblRyVFBmLzd6RjQ2
QWpMWEZZOGIzL25BRUpEWVNLOFYxTEJCdkVMbnh4aHZiNjU3NApYVHR6NEs3aFBSK0hEdTF2Ui90
cFdJY09IK3BQbm42cVVMeTNJd0pJcjZvSC9mNm04aDVNK3RmeEVXK2lqTjlteHhISCtDOTYxL3Fm
CkRZblRJbVBaemY2YmdGaCt1STd3c2pYcmh5aXR6OC8zaitlUDF3K3ZuMzUrK1BsNTdlNC85TjJm
dnQ4ejY2ZWE5NCtOL2UzMFMrdnQKeGRQOURKTitTdnJwZmhqazRJRzFkbUxsMmY2ZTJ6ZGVDQ0Rq
RG1CZjFZWEFVZ0pqMElqOStQSDdhcnd0ZnNrZG44ZitmUnlsaUQvQgpNUWFRV0RiV2ljczczdkdP
OXBXdmZLWDk3R2MvYTkvNjFyY3VuQjExY1dIamdZdUxiNDhzRVc5dS84eG5QdE0rOHBHUERLZUJq
ZHVQCng0ODZZcGxZZndnZ3d5ZXZuQmMyRnZIV3Q3NjEzZnJRVDl1anB4NW82emQrc0Izb1B4a1A5
dkJ4NkxwSVE2MnYvUEpSalBoZkgrS28KUm9TS2ZtWldpejlSR09Ha3Z3MWtPQmV5aDV4K05PVGw5
NExFVVk5K3dHTTQrdEhQdkJvT1VjYTZHOWJuNS92SDg4ZnJoOWRQUHovOAovTHlHOXgvNjcxNzdx
ZWt2LzRKMXMvOW5QR3ZyZldlcC84R3pjMmRQdHhmWForM0lDdyswOTk5K2ZualQ3L2Fkdjc2YUM0
RkpCT0lvClIxeGlaejkyOUdQbmZ3d2hZd0NKMDYzdXV1dXVDNmRnamN1TTY4VDFKejd4aWZiaEQz
KzRmZnZiMzc3a2tZNTRNL3Vsam9CODhwT2YKYkovKzlLZUhFQkxiSGNOSFpJdllicHg2R0NGa3lC
M2pxVmZqK1loUmVCVDlnUTk4b0QzNDRJTnQ4N2YzdGRPUDlqZFFIZitiNFE4Rwo5cU9KUS9pWTll
ZFZoSXYrL3FyK0J3ajdFNjRIaW41MlZsdnJLU09DU0Q4QTBvK0M5STkrdlJMWC9aa1pZZU5Bdjcr
ZjRkVTJlbkNKClFCSkhRczVHaUxFK1A5OC9uajllUDd4Kyt2bmg1K2MxdXY4UWYxeDVEQ0FiUFlE
RUVaR04wLzAvbFlqOW9NZnViKzg4OHIvdDNYZTgKdmQxd3d3M0RqbGpzYTdrUW1Fb2dkdkRIZ3dp
eHpkajVINi9qdmpqeUVmOE43ODAzMzl6ZTlhNTNEU0ZnV09DVmYyS1pjWjI0S2Q2Swo4YVV2Zldu
SGJlUHl4NDRkdXhCZ3h0dmllbHcrdGpWZTR2UHhZendDTXB5Q0ZXbHAvQmpUVWhRUWYyTDk0eC8v
ZU52NC92ZmJJMy84CnAzYnEza2ZhMlRlL3Q1MzdpL2UxNjI4NTN0YjYrMHcyNGc5LzlFczhUaHpa
T04vZno3S3ZQNS9PUmZMdmZXLzA0QkdCSlF3aWxNUVQKTWxMSG1iNXNQRFBqVFZwbittM3hCd210
ejgvM2orZVAxdyt2bjM1KytQbDVyZTQvREhHaTc4OE0rMFI5SCttcC96dlZudnJ2L2t2YwpQenpR
N3J6dXBmYitkNzZ0M1hiYmJSZitSa0s4S2RpRndGUUM0MDUraEpENDNvcWQvZkhONkhIcVZmem5V
ckcvLzU3M3ZHZjRyM2pICng0MzFZci8vNHV2eC9rdGR4eEdRS3dYbzdkdUx6Nk91ZVB6NFBLNW5V
Vng4eElQSDlYaUpPOS8rOXJjUER4RHZqSC8wMFVmYmkvL3oKdmZiTWc5OXNqL2RHeGcxdlQwdmp1
cTRKRUNCQWdBQUJBbFVGNHF5UytKOURiNzMrK25icjdiZTJFeWZ1Nmg4bjJ2WDk2OWh4Ry9lOQpx
dnJvZTNxQjJDK1BTM3h2eGM1Ky9JZFM4UkhoSS83WHFqaWljY2NkZHd4SFFDS2NYSHdaOStzdnZ2
MVNYOGY3UEM2MWpVc3RHOXVOCmo2aHBERWRSNHl6K0s2NzRZeVFST0xhZnp6V3VFRStZZUxOS0JK
QlRwMDROemNRRGpNbG4rMUdUU3oydzJ3Z1FJRUNBQUFFQ1ZRVGkKRjdPeGJ4U25tVVFJaVQvMEZx
ZXN4RTViM0RidUlGYngwT2ZWRVlpZCsrMDcrbU1BaVVkLzR4dmZPSHdQeHZkbDdQTlBjVmxrT3hl
SApqOGdlL3c5TU14TTZLdGpUbFFBQUFBQkpSVTVFcmtKZ2dnPT0KCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86370</attachid>
            <date>2011-03-21 15:05:09 -0700</date>
            <delta_ts>2011-03-21 15:16:47 -0700</delta_ts>
            <desc>updated pixel test</desc>
            <filename>newpatch_2.txt</filename>
            <type>text/plain</type>
            <size>58079</size>
            <attacher name="Rik Cabanier">cabanier</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgwNjY1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDMtMDkgIFJpayBDYWJh
bmllciAgPGNhYmFuaWVyQGFkb2JlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBidWcgNTYwNTI6IHBlcmNlbnRhZ2VzIGFyZSBpbmNvcnJlY3Rs
eSByb3VuZGVkIGluIFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTYwNTIKKworICAgICAgICB0ZXN0OiBmYXN0L2Nzcy9wZXJjZW50YWdlLW5v
bi1pbnRlZ2VyLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOgorICAgICAg
ICAqIHBhZ2UvUHJpbnRDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByaW50Q29udGV4
dDo6cGFnZVByb3BlcnR5KToKKyAgICAgICAgKiBwbGF0Zm9ybS9MZW5ndGguaDoKKyAgICAgICAg
KFdlYkNvcmU6Okxlbmd0aDo6TGVuZ3RoKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6b3Bl
cmF0b3IqPSk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6cGVyY2VudCk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnNldFZh
bHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6Y2FsY1ZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6Y2FsY01pblZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6
aXNVbmRlZmluZWQpOgorICAgICAgICAoV2ViQ29yZTo6TGVuZ3RoOjppc1plcm8pOgorICAgICAg
ICAoV2ViQ29yZTo6TGVuZ3RoOjppc1Bvc2l0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0
aDo6aXNOZWdhdGl2ZSk6CisgICAgICAgICogcmVuZGVyaW5nL0F1dG9UYWJsZUxheW91dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OnJlY2FsY0NvbHVtbik6CisgICAg
ICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lk
dGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkF1dG9UYWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxv
Z2ljYWxXaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmxheW91dCk6
CisgICAgICAgICogcmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Rml4ZWRUYWJsZUxheW91dDo6Y2FsY1dpZHRoQXJyYXkpOgorICAgICAgICAoV2ViQ29y
ZTo6Rml4ZWRUYWJsZUxheW91dDo6bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGFibGVTZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRhYmxlU2VjdGlvbjo6
YWRkQ2VsbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZVNlY3Rpb246OmxheW91dFJv
d3MpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmg6CisgICAgICAgIChX
ZWJDb3JlOjpCb3JkZXJEYXRhOjpoYXNCb3JkZXJSYWRpdXMpOgorCiAyMDExLTAzLTA5ICBKYW1l
cyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSdXNzZWxsLgpJbmRleDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTIy
NTg1LDcgKzIyNTg1LDYgQEAKIAkJCWlzYSA9IFBCWFByb2plY3Q7CiAJCQlidWlsZENvbmZpZ3Vy
YXRpb25MaXN0ID0gMTQ5QzI4NDMwODkwMkIxMTAwOEE5RUZDIC8qIEJ1aWxkIGNvbmZpZ3VyYXRp
b24gbGlzdCBmb3IgUEJYUHJvamVjdCAiV2ViQ29yZSIgKi87CiAJCQljb21wYXRpYmlsaXR5VmVy
c2lvbiA9ICJYY29kZSAyLjQiOwotCQkJZGV2ZWxvcG1lbnRSZWdpb24gPSBFbmdsaXNoOwogCQkJ
aGFzU2Nhbm5lZEZvckVuY29kaW5ncyA9IDE7CiAJCQlrbm93blJlZ2lvbnMgPSAoCiAJCQkJRW5n
bGlzaCwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHAJKHJldmlz
aW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC01MzMyLDggKzUzMzIsOCBAQCB2b2lkIENTU1N0eWxlU2VsZWN0b3I6
OmFwcGx5UHJvcGVydHkoaW50CiAgICAgICAgICAgICByYWRpdXNIZWlnaHQgPSBMZW5ndGgocGFp
ci0+c2Vjb25kKCktPmdldERvdWJsZVZhbHVlKCksIFBlcmNlbnQpOwogICAgICAgICBlbHNlCiAg
ICAgICAgICAgICByYWRpdXNIZWlnaHQgPSBMZW5ndGgobWF4KGludE1pbkZvckxlbmd0aCwgbWlu
KGludE1heEZvckxlbmd0aCwgcGFpci0+c2Vjb25kKCktPmNvbXB1dGVMZW5ndGhJbnQoc3R5bGUo
KSwgbV9yb290RWxlbWVudFN0eWxlLCB6b29tRmFjdG9yKSkpLCBGaXhlZCk7Ci0gICAgICAgIGlu
dCB3aWR0aCA9IHJhZGl1c1dpZHRoLnJhd1ZhbHVlKCk7Ci0gICAgICAgIGludCBoZWlnaHQgPSBy
YWRpdXNIZWlnaHQucmF3VmFsdWUoKTsKKyAgICAgICAgaW50IHdpZHRoID0gcmFkaXVzV2lkdGgu
dmFsdWUoKTsKKyAgICAgICAgaW50IGhlaWdodCA9IHJhZGl1c0hlaWdodC52YWx1ZSgpOwogICAg
ICAgICBpZiAod2lkdGggPCAwIHx8IGhlaWdodCA8IDApCiAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgIGlmICh3aWR0aCA9PSAwKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QcmludENv
bnRleHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUHJpbnRDb250ZXh0
LmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1ByaW50Q29udGV4
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4MiwxNiArMjgyLDE2IEBAIFN0cmluZyBQcmludENv
bnRleHQ6OnBhZ2VQcm9wZXJ0eShGcmFtZSoKICAgICBpZiAoIXN0cmNtcChwcm9wZXJ0eU5hbWUs
ICJtYXJnaW4tbGVmdCIpKSB7CiAgICAgICAgIGlmIChzdHlsZS0+bWFyZ2luTGVmdCgpLmlzQXV0
bygpKQogICAgICAgICAgICAgcmV0dXJuIFN0cmluZygiYXV0byIpOwotICAgICAgICByZXR1cm4g
U3RyaW5nOjpudW1iZXIoc3R5bGUtPm1hcmdpbkxlZnQoKS5yYXdWYWx1ZSgpKTsKKyAgICAgICAg
cmV0dXJuIFN0cmluZzo6bnVtYmVyKHN0eWxlLT5tYXJnaW5MZWZ0KCkudmFsdWUoKSk7CiAgICAg
fQogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgImxpbmUtaGVpZ2h0IikpCi0gICAgICAg
IHJldHVybiBTdHJpbmc6Om51bWJlcihzdHlsZS0+bGluZUhlaWdodCgpLnJhd1ZhbHVlKCkpOwor
ICAgICAgICByZXR1cm4gU3RyaW5nOjpudW1iZXIoc3R5bGUtPmxpbmVIZWlnaHQoKS52YWx1ZSgp
KTsKICAgICBpZiAoIXN0cmNtcChwcm9wZXJ0eU5hbWUsICJmb250LXNpemUiKSkKICAgICAgICAg
cmV0dXJuIFN0cmluZzo6bnVtYmVyKHN0eWxlLT5mb250RGVzY3JpcHRpb24oKS5jb21wdXRlZFBp
eGVsU2l6ZSgpKTsKICAgICBpZiAoIXN0cmNtcChwcm9wZXJ0eU5hbWUsICJmb250LWZhbWlseSIp
KQogICAgICAgICByZXR1cm4gc3R5bGUtPmZvbnREZXNjcmlwdGlvbigpLmZhbWlseSgpLmZhbWls
eSgpLnN0cmluZygpOwogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgInNpemUiKSkKLSAg
ICAgICAgcmV0dXJuIG1ha2VTdHJpbmcoU3RyaW5nOjpudW1iZXIoc3R5bGUtPnBhZ2VTaXplKCku
d2lkdGgoKS5yYXdWYWx1ZSgpKSwgJyAnLCBTdHJpbmc6Om51bWJlcihzdHlsZS0+cGFnZVNpemUo
KS5oZWlnaHQoKS5yYXdWYWx1ZSgpKSk7CisgICAgICAgIHJldHVybiBtYWtlU3RyaW5nKFN0cmlu
Zzo6bnVtYmVyKHN0eWxlLT5wYWdlU2l6ZSgpLndpZHRoKCkudmFsdWUoKSksICcgJywgU3RyaW5n
OjpudW1iZXIoc3R5bGUtPnBhZ2VTaXplKCkuaGVpZ2h0KCkudmFsdWUoKSkpOwogCiAgICAgcmV0
dXJuIG1ha2VTdHJpbmcoInBhZ2VQcm9wZXJ0eSgpIHVuaW1wbGVtZW50ZWQgZm9yOiAiLCBwcm9w
ZXJ0eU5hbWUpOwogfQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQW5pbWF0
aW9uQmFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24v
QW5pbWF0aW9uQmFzZS5jcHAJKHJldmlzaW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvcGFn
ZS9hbmltYXRpb24vQW5pbWF0aW9uQmFzZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMyw3ICsx
MTMsNyBAQCBzdGF0aWMgaW5saW5lIENvbG9yIGJsZW5kRnVuYyhjb25zdCBBbmltCiAKIHN0YXRp
YyBpbmxpbmUgTGVuZ3RoIGJsZW5kRnVuYyhjb25zdCBBbmltYXRpb25CYXNlKiwgY29uc3QgTGVu
Z3RoJiBmcm9tLCBjb25zdCBMZW5ndGgmIHRvLCBkb3VibGUgcHJvZ3Jlc3MpCiB7ICAKLSAgICBy
ZXR1cm4gdG8uYmxlbmQoZnJvbSwgcHJvZ3Jlc3MpOworICAgIHJldHVybiB0by5ibGVuZChmcm9t
LCBuYXJyb3dQcmVjaXNpb25Ub0Zsb2F0KHByb2dyZXNzKSk7CiB9CiAKIHN0YXRpYyBpbmxpbmUg
TGVuZ3RoU2l6ZSBibGVuZEZ1bmMoY29uc3QgQW5pbWF0aW9uQmFzZSogYW5pbSwgY29uc3QgTGVu
Z3RoU2l6ZSYgZnJvbSwgY29uc3QgTGVuZ3RoU2l6ZSYgdG8sIGRvdWJsZSBwcm9ncmVzcykKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xlbmd0aC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0xlbmd0aC5oCShyZXZpc2lvbiA4MDM4MSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL0xlbmd0aC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEsNyBAQAog
LyoKICAgICBDb3B5cmlnaHQgKEMpIDE5OTkgTGFycyBLbm9sbCAoa25vbGxAa2RlLm9yZykKICAg
ICBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICAgIENvcHlyaWdodCAoQykgMjAxMSBSaWsgQ2FiYW5pZXIgKGNhYmFuaWVyQGFkb2JlLmNv
bSkKIAogICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKICAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUg
TGlicmFyeSBHZW5lcmFsIFB1YmxpYwpAQCAtMzAsNyArMzEsNiBAQAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCiBjb25zdCBpbnQgdW5kZWZpbmVkTGVuZ3RoID0gLTE7Ci1jb25zdCBpbnQgcGVyY2Vu
dFNjYWxlRmFjdG9yID0gMTI4OwogY29uc3QgaW50IGludE1heEZvckxlbmd0aCA9IDB4N2ZmZmZm
ZjsgLy8gbWF4IHZhbHVlIGZvciBhIDI4LWJpdCBpbnQKIGNvbnN0IGludCBpbnRNaW5Gb3JMZW5n
dGggPSAoLTB4N2ZmZmZmZiAtIDEpOyAvLyBtaW4gdmFsdWUgZm9yIGEgMjgtYml0IGludAogCkBA
IC01MiwzNCArNTIsNDAgQEAgcHVibGljOgogICAgIExlbmd0aChpbnQgdiwgTGVuZ3RoVHlwZSB0
LCBib29sIHEgPSBmYWxzZSkKICAgICAgICAgOiBtX2ludFZhbHVlKHYpLCBtX3F1aXJrKHEpLCBt
X3R5cGUodCksIG1faXNGbG9hdChmYWxzZSkKICAgICB7Ci0gICAgICAgIEFTU0VSVCh0ICE9IFBl
cmNlbnQpOworICAgIH0KKyAgICAKKyAgICBMZW5ndGgoZmxvYXQgdiwgTGVuZ3RoVHlwZSB0LCBi
b29sIHEgPSBmYWxzZSkKKyAgICA6IG1fZmxvYXRWYWx1ZSh2KSwgbV9xdWlyayhxKSwgbV90eXBl
KHQpLCBtX2lzRmxvYXQodHJ1ZSkKKyAgICB7ICAgICAgICAgICAgCiAgICAgfQogCiAgICAgTGVu
Z3RoKGRvdWJsZSB2LCBMZW5ndGhUeXBlIHQsIGJvb2wgcSA9IGZhbHNlKQotICAgICAgICA6IG1f
cXVpcmsocSksIG1fdHlwZSh0KSwgbV9pc0Zsb2F0KGZhbHNlKQotICAgIHsKLSAgICAgICAgaWYg
KG1fdHlwZSA9PSBQZXJjZW50KQotICAgICAgICAgICAgbV9pbnRWYWx1ZSA9IHN0YXRpY19jYXN0
PGludD4odipwZXJjZW50U2NhbGVGYWN0b3IpOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAg
IG1faXNGbG9hdCA9IHRydWU7ICAgICAgICAgICAgCi0gICAgICAgICAgICBtX2Zsb2F0VmFsdWUg
PSBzdGF0aWNfY2FzdDxmbG9hdD4odik7Ci0gICAgICAgfQorICAgICAgICA6IG1fcXVpcmsocSks
IG1fdHlwZSh0KSwgbV9pc0Zsb2F0KHRydWUpCisgICAgeyAgICAgICAgICAgCisgICAgICAgIG1f
ZmxvYXRWYWx1ZSA9IHN0YXRpY19jYXN0PGZsb2F0Pih2KTsgICAgCiAgICAgfQogCiAgICAgYm9v
bCBvcGVyYXRvcj09KGNvbnN0IExlbmd0aCYgbykgY29uc3QgeyByZXR1cm4gKGdldEZsb2F0VmFs
dWUoKSA9PSBvLmdldEZsb2F0VmFsdWUoKSkgJiYgKG1fdHlwZSA9PSBvLm1fdHlwZSkgJiYgKG1f
cXVpcmsgPT0gby5tX3F1aXJrKTsgfQogICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBMZW5ndGgm
IG8pIGNvbnN0IHsgcmV0dXJuIChnZXRGbG9hdFZhbHVlKCkgIT0gby5nZXRGbG9hdFZhbHVlKCkp
IHx8IChtX3R5cGUgIT0gby5tX3R5cGUpIHx8IChtX3F1aXJrICE9IG8ubV9xdWlyayk7IH0KIAor
ICAgIGNvbnN0IExlbmd0aCYgb3BlcmF0b3IqPShmbG9hdCB2KQorICAgIHsgICAgICAgIAorICAg
ICAgICBpZiAobV9pc0Zsb2F0KQorICAgICAgICAgICAgbV9mbG9hdFZhbHVlID0gc3RhdGljX2Nh
c3Q8ZmxvYXQ+KG1fZmxvYXRWYWx1ZSAqIHYpOworICAgICAgICBlbHNlICAgICAgICAKKyAgICAg
ICAgICAgIG1faW50VmFsdWUgPSBzdGF0aWNfY2FzdDxpbnQ+KG1faW50VmFsdWUgKiB2KTsKKyAg
ICAgICAgCisgICAgICAgIHJldHVybiAqdGhpczsKKyAgICB9CisgICAgCiAgICAgaW50IHZhbHVl
KCkgY29uc3QgewotICAgICAgICBBU1NFUlQodHlwZSgpICE9IFBlcmNlbnQpOwotICAgICAgICBy
ZXR1cm4gcmF3VmFsdWUoKTsKKyAgICAgICAgcmV0dXJuIGdldEludFZhbHVlKCk7CiAgICAgfQog
Ci0gICAgaW50IHJhd1ZhbHVlKCkgY29uc3QgeyByZXR1cm4gZ2V0SW50VmFsdWUoKTsgfQotCi0g
ICAgZG91YmxlIHBlcmNlbnQoKSBjb25zdAorICAgIGZsb2F0IHBlcmNlbnQoKSBjb25zdAogICAg
IHsKICAgICAgICAgQVNTRVJUKHR5cGUoKSA9PSBQZXJjZW50KTsKLSAgICAgICAgcmV0dXJuIHN0
YXRpY19jYXN0PGRvdWJsZT4ocmF3VmFsdWUoKSkgLyBwZXJjZW50U2NhbGVGYWN0b3I7CisgICAg
ICAgIHJldHVybiBnZXRGbG9hdFZhbHVlKCk7CiAgICAgfQogCiAgICAgTGVuZ3RoVHlwZSB0eXBl
KCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8TGVuZ3RoVHlwZT4obV90eXBlKTsgfQpAQCAt
OTQsMTggKzEwMCwxNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldFZhbHVlKGludCB2YWx1ZSkK
ICAgICB7Ci0gICAgICAgIEFTU0VSVCghdmFsdWUgfHwgdHlwZSgpICE9IFBlcmNlbnQpOwogICAg
ICAgICBzZXRWYWx1ZShGaXhlZCwgdmFsdWUpOwogICAgIH0KIAotICAgIHZvaWQgc2V0VmFsdWUo
TGVuZ3RoVHlwZSB0LCBkb3VibGUgdmFsdWUpCisgICAgdm9pZCBzZXRWYWx1ZShMZW5ndGhUeXBl
IHQsIGZsb2F0IHZhbHVlKQogICAgIHsKICAgICAgICAgbV90eXBlID0gdDsKLSAgICAgICAgbV9m
bG9hdFZhbHVlID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlKTsKKyAgICAgICAgbV9mbG9hdFZh
bHVlID0gdmFsdWU7CiAgICAgICAgIG1faXNGbG9hdCA9IHRydWU7ICAgIAogICAgIH0KIAotICAg
IHZvaWQgc2V0VmFsdWUoZG91YmxlIHZhbHVlKQorICAgIHZvaWQgc2V0VmFsdWUoZmxvYXQgdmFs
dWUpCiAgICAgewogICAgICAgICAqdGhpcyA9IExlbmd0aCh2YWx1ZSwgRml4ZWQpOwogICAgIH0K
QEAgLTExOSw3ICsxMjQsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICBjYXNlIFBlcmNlbnQ6CiAg
ICAgICAgICAgICAgICAgaWYgKHJvdW5kUGVyY2VudGFnZXMpCiAgICAgICAgICAgICAgICAgICAg
IHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+KHJvdW5kKG1heFZhbHVlICogcGVyY2VudCgpIC8gMTAw
LjApKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gbWF4VmFsdWUgKiByYXdWYWx1ZSgpIC8gKDEw
MCAqIHBlcmNlbnRTY2FsZUZhY3Rvcik7CisgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19j
YXN0PGludD4obWF4VmFsdWUgKiBwZXJjZW50KCkgLyAxMDAuMCk7CiAgICAgICAgICAgICBjYXNl
IEF1dG86CiAgICAgICAgICAgICAgICAgcmV0dXJuIG1heFZhbHVlOwogICAgICAgICAgICAgZGVm
YXVsdDoKQEAgLTEzNSw3ICsxNDAsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICBjYXNlIFBlcmNl
bnQ6CiAgICAgICAgICAgICAgICAgaWYgKHJvdW5kUGVyY2VudGFnZXMpCiAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+KHJvdW5kKG1heFZhbHVlICogcGVyY2VudCgp
IC8gMTAwLjApKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gbWF4VmFsdWUgKiByYXdWYWx1ZSgp
IC8gKDEwMCAqIHBlcmNlbnRTY2FsZUZhY3Rvcik7CisgICAgICAgICAgICAgICAgcmV0dXJuIHN0
YXRpY19jYXN0PGludD4obWF4VmFsdWUgKiBwZXJjZW50KCkgLyAxMDAuMCk7CiAgICAgICAgICAg
ICBjYXNlIEF1dG86CiAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgIHJldHVy
biAwOwpAQCAtMTU2LDEwICsxNjEsMTQgQEAgcHVibGljOgogICAgICAgICB9CiAgICAgfQogCi0g
ICAgYm9vbCBpc1VuZGVmaW5lZCgpIGNvbnN0IHsgcmV0dXJuIHJhd1ZhbHVlKCkgPT0gdW5kZWZp
bmVkTGVuZ3RoOyB9Ci0gICAgYm9vbCBpc1plcm8oKSBjb25zdCB7IHJldHVybiAhZ2V0SW50VmFs
dWUoKTsgfQotICAgIGJvb2wgaXNQb3NpdGl2ZSgpIGNvbnN0IHsgcmV0dXJuIHJhd1ZhbHVlKCkg
PiAwOyB9Ci0gICAgYm9vbCBpc05lZ2F0aXZlKCkgY29uc3QgeyByZXR1cm4gcmF3VmFsdWUoKSA8
IDA7IH0KKyAgICBib29sIGlzVW5kZWZpbmVkKCkgY29uc3QgeyByZXR1cm4gdmFsdWUoKSA9PSB1
bmRlZmluZWRMZW5ndGg7IH0KKyAgICBib29sIGlzWmVybygpIGNvbnN0IAorICAgIHsgCisgICAg
ICAgIHJldHVybiBtX2lzRmxvYXQgPyAhbV9mbG9hdFZhbHVlIDogIW1faW50VmFsdWU7CisgICAg
fQorICAgIAorICAgIGJvb2wgaXNQb3NpdGl2ZSgpIGNvbnN0IHsgcmV0dXJuIGdldEZsb2F0VmFs
dWUoKSA+IDA7IH0KKyAgICBib29sIGlzTmVnYXRpdmUoKSBjb25zdCB7IHJldHVybiBnZXRGbG9h
dFZhbHVlKCkgPCAwOyB9CiAKICAgICBib29sIGlzQXV0bygpIGNvbnN0IHsgcmV0dXJuIHR5cGUo
KSA9PSBBdXRvOyB9CiAgICAgYm9vbCBpc1JlbGF0aXZlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgp
ID09IFJlbGF0aXZlOyB9CkBAIC0xNjcsNyArMTc2LDcgQEAgcHVibGljOgogICAgIGJvb2wgaXNG
aXhlZCgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBGaXhlZDsgfQogICAgIGJvb2wgaXNJbnRy
aW5zaWNPckF1dG8oKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gQXV0byB8fCB0eXBlKCkgPT0g
TWluSW50cmluc2ljIHx8IHR5cGUoKSA9PSBJbnRyaW5zaWM7IH0KIAotICAgIExlbmd0aCBibGVu
ZChjb25zdCBMZW5ndGgmIGZyb20sIGRvdWJsZSBwcm9ncmVzcykgY29uc3QKKyAgICBMZW5ndGgg
YmxlbmQoY29uc3QgTGVuZ3RoJiBmcm9tLCBmbG9hdCBwcm9ncmVzcykgY29uc3QKICAgICB7CiAg
ICAgICAgIC8vIEJsZW5kIHR3byBsZW5ndGhzIHRvIHByb2R1Y2UgYSBuZXcgbGVuZ3RoIHRoYXQg
aXMgaW4gYmV0d2VlbiB0aGVtLiAgVXNlZCBmb3IgYW5pbWF0aW9uLgogICAgICAgICBpZiAoIWZy
b20uaXNaZXJvKCkgJiYgIWlzWmVybygpICYmIGZyb20udHlwZSgpICE9IHR5cGUoKSkKQEAgLTE4
MSwyOSArMTkwLDI1IEBAIHB1YmxpYzoKICAgICAgICAgICAgIHJlc3VsdFR5cGUgPSBmcm9tLnR5
cGUoKTsKICAgICAgICAgCiAgICAgICAgIGlmIChyZXN1bHRUeXBlID09IFBlcmNlbnQpIHsKLSAg
ICAgICAgICAgIGRvdWJsZSBmcm9tUGVyY2VudCA9IGZyb20uaXNaZXJvKCkgPyAwLiA6IGZyb20u
cGVyY2VudCgpOwotICAgICAgICAgICAgZG91YmxlIHRvUGVyY2VudCA9IGlzWmVybygpID8gMC4g
OiBwZXJjZW50KCk7CisgICAgICAgICAgICBmbG9hdCBmcm9tUGVyY2VudCA9IGZyb20uaXNaZXJv
KCkgPyAwIDogZnJvbS5wZXJjZW50KCk7CisgICAgICAgICAgICBmbG9hdCB0b1BlcmNlbnQgPSBp
c1plcm8oKSA/IDAgOiBwZXJjZW50KCk7CiAgICAgICAgICAgICByZXR1cm4gTGVuZ3RoKGZyb21Q
ZXJjZW50ICsgKHRvUGVyY2VudCAtIGZyb21QZXJjZW50KSAqIHByb2dyZXNzLCBQZXJjZW50KTsK
ICAgICAgICAgfSAKICAgICAgICAgICAgIAotICAgICAgICBkb3VibGUgZnJvbVZhbHVlID0gZnJv
bS5pc1plcm8oKSA/IDAgOiBmcm9tLnZhbHVlKCk7Ci0gICAgICAgIGRvdWJsZSB0b1ZhbHVlID0g
aXNaZXJvKCkgPyAwIDogdmFsdWUoKTsKKyAgICAgICAgZmxvYXQgZnJvbVZhbHVlID0gZnJvbS5p
c1plcm8oKSA/IDAgOiBmcm9tLnZhbHVlKCk7CisgICAgICAgIGZsb2F0IHRvVmFsdWUgPSBpc1pl
cm8oKSA/IDAgOiB2YWx1ZSgpOwogICAgICAgICByZXR1cm4gTGVuZ3RoKGZyb21WYWx1ZSArICh0
b1ZhbHVlIC0gZnJvbVZhbHVlKSAqIHByb2dyZXNzLCByZXN1bHRUeXBlKTsKICAgICB9CiAKIHBy
aXZhdGU6CiAgICAgaW50IGdldEludFZhbHVlKCkgY29uc3QKICAgICB7Ci0gICAgICAgIGlmICht
X2lzRmxvYXQpCi0gICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PihtX2Zsb2F0VmFs
dWUpOwotICAgICAgICByZXR1cm4gbV9pbnRWYWx1ZTsKKyAgICAgICAgcmV0dXJuIG1faXNGbG9h
dCA/IHN0YXRpY19jYXN0PGludD4obV9mbG9hdFZhbHVlKSA6IG1faW50VmFsdWU7CiAgICAgfQog
CiAgICAgZmxvYXQgZ2V0RmxvYXRWYWx1ZSgpIGNvbnN0CiAgICAgewotICAgICAgICBpZiAobV9p
c0Zsb2F0KQotICAgICAgICAgICAgICAgIHJldHVybiBtX2Zsb2F0VmFsdWU7Ci0gICAgICAgIHJl
dHVybiBtX2ludFZhbHVlOworICAgICAgICByZXR1cm4gbV9pc0Zsb2F0ID8gbV9mbG9hdFZhbHVl
IDogbV9pbnRWYWx1ZTsKICAgICB9CiAKICAgICB1bmlvbiB7CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlv
bi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJh
bnNmb3Jtcy9UcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwCShyZXZpc2lvbiA4MDM4MSkK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvVHJhbnNsYXRl
VHJhbnNmb3JtT3BlcmF0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjEsNiArMjEsNyBAQAog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0
aW9uLmgiCisjaW5jbHVkZSAiRmxvYXRDb252ZXJzaW9uLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIApAQCAtMzAsMTUgKzMxLDE1IEBAIFBhc3NSZWZQdHI8VHJhbnNmb3JtT3BlcmF0aW9uPiBU
cmFuc2xhdGUKICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgCiAgICAgaWYgKGJsZW5kVG9JZGVu
dGl0eSkKLSAgICAgICAgcmV0dXJuIFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbjo6Y3JlYXRl
KExlbmd0aChtX3gudHlwZSgpKS5ibGVuZChtX3gsIHByb2dyZXNzKSwgCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZW5ndGgobV95LnR5cGUoKSku
YmxlbmQobV95LCBwcm9ncmVzcyksIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgTGVuZ3RoKG1fei50eXBlKCkpLmJsZW5kKG1feiwgcHJvZ3Jlc3Mp
LCBtX3R5cGUpOworICAgICAgICByZXR1cm4gVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uOjpj
cmVhdGUoTGVuZ3RoKG1feC50eXBlKCkpLmJsZW5kKG1feCwgbmFycm93UHJlY2lzaW9uVG9GbG9h
dChwcm9ncmVzcykpLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIExlbmd0aChtX3kudHlwZSgpKS5ibGVuZChtX3ksIG5hcnJvd1ByZWNpc2lvblRv
RmxvYXQocHJvZ3Jlc3MpKSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBMZW5ndGgobV96LnR5cGUoKSkuYmxlbmQobV96LCBuYXJyb3dQcmVjaXNp
b25Ub0Zsb2F0KHByb2dyZXNzKSksIG1fdHlwZSk7CiAKICAgICBjb25zdCBUcmFuc2xhdGVUcmFu
c2Zvcm1PcGVyYXRpb24qIGZyb21PcCA9IHN0YXRpY19jYXN0PGNvbnN0IFRyYW5zbGF0ZVRyYW5z
Zm9ybU9wZXJhdGlvbio+KGZyb20pOwogICAgIExlbmd0aCBmcm9tWCA9IGZyb21PcCA/IGZyb21P
cC0+bV94IDogTGVuZ3RoKG1feC50eXBlKCkpOwogICAgIExlbmd0aCBmcm9tWSA9IGZyb21PcCA/
IGZyb21PcC0+bV95IDogTGVuZ3RoKG1feS50eXBlKCkpOwogICAgIExlbmd0aCBmcm9tWiA9IGZy
b21PcCA/IGZyb21PcC0+bV96IDogTGVuZ3RoKG1fei50eXBlKCkpOwotICAgIHJldHVybiBUcmFu
c2xhdGVUcmFuc2Zvcm1PcGVyYXRpb246OmNyZWF0ZShtX3guYmxlbmQoZnJvbVgsIHByb2dyZXNz
KSwgbV95LmJsZW5kKGZyb21ZLCBwcm9ncmVzcyksIG1fei5ibGVuZChmcm9tWiwgcHJvZ3Jlc3Mp
LCBtX3R5cGUpOworICAgIHJldHVybiBUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb246OmNyZWF0
ZShtX3guYmxlbmQoZnJvbVgsIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3MpKSwgbV95
LmJsZW5kKGZyb21ZLCBuYXJyb3dQcmVjaXNpb25Ub0Zsb2F0KHByb2dyZXNzKSksIG1fei5ibGVu
ZChmcm9tWiwgbmFycm93UHJlY2lzaW9uVG9GbG9hdChwcm9ncmVzcykpLCBtX3R5cGUpOwogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
QXV0b1RhYmxlTGF5b3V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvQXV0b1RhYmxlTGF5b3V0LmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvQXV0b1RhYmxlTGF5b3V0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtODEsNyAr
ODEsNyBAQCB2b2lkIEF1dG9UYWJsZUxheW91dDo6cmVjYWxjQ29sdW1uKGludCBlCiAKICAgICAg
ICAgICAgICAgICAgICAgTGVuZ3RoIGNlbGxMb2dpY2FsV2lkdGggPSBjZWxsLT5zdHlsZU9yQ29s
TG9naWNhbFdpZHRoKCk7CiAgICAgICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBXaGF0IGlzIHRo
aXMgYXJiaXRyYXJ5IHZhbHVlPwotICAgICAgICAgICAgICAgICAgICBpZiAoY2VsbExvZ2ljYWxX
aWR0aC5yYXdWYWx1ZSgpID4gMzI3NjApCisgICAgICAgICAgICAgICAgICAgIGlmIChjZWxsTG9n
aWNhbFdpZHRoLnZhbHVlKCkgPiAzMjc2MCkKICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGxM
b2dpY2FsV2lkdGguc2V0VmFsdWUoMzI3NjApOwogICAgICAgICAgICAgICAgICAgICBpZiAoY2Vs
bExvZ2ljYWxXaWR0aC5pc05lZ2F0aXZlKCkpCiAgICAgICAgICAgICAgICAgICAgICAgICBjZWxs
TG9naWNhbFdpZHRoLnNldFZhbHVlKDApOwpAQCAtMTA1LDEzICsxMDUsMTMgQEAgdm9pZCBBdXRv
VGFibGVMYXlvdXQ6OnJlY2FsY0NvbHVtbihpbnQgZQogICAgICAgICAgICAgICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICAgICAgICAgIGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgICAg
ICAgICAgICAgIG1faGFzUGVyY2VudCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICBp
ZiAoY2VsbExvZ2ljYWxXaWR0aC5pc1Bvc2l0aXZlKCkgJiYgKCFjb2x1bW5MYXlvdXQubG9naWNh
bFdpZHRoLmlzUGVyY2VudCgpIHx8IGNlbGxMb2dpY2FsV2lkdGgucmF3VmFsdWUoKSA+IGNvbHVt
bkxheW91dC5sb2dpY2FsV2lkdGgucmF3VmFsdWUoKSkpCisgICAgICAgICAgICAgICAgICAgICAg
ICBpZiAoY2VsbExvZ2ljYWxXaWR0aC5pc1Bvc2l0aXZlKCkgJiYgKCFjb2x1bW5MYXlvdXQubG9n
aWNhbFdpZHRoLmlzUGVyY2VudCgpIHx8IGNlbGxMb2dpY2FsV2lkdGgudmFsdWUoKSA+IGNvbHVt
bkxheW91dC5sb2dpY2FsV2lkdGgudmFsdWUoKSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aCA9IGNlbGxMb2dpY2FsV2lkdGg7CiAgICAgICAg
ICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgY2FzZSBSZWxhdGl2
ZToKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBOZWVkIHRvIHVuZGVyc3RhbmQg
dGhpcyBjYXNlIGFuZCB3aGV0aGVyIGl0IG1ha2VzIHNlbnNlIHRvIGNvbXBhcmUgdmFsdWVzCiAg
ICAgICAgICAgICAgICAgICAgICAgICAvLyB3aGljaCBhcmUgbm90IG5lY2Vzc2FyaWx5IG9mIHRo
ZSBzYW1lIHR5cGUuCi0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2VsbExvZ2ljYWxXaWR0
aC5pc0F1dG8oKSB8fCAoY2VsbExvZ2ljYWxXaWR0aC5pc1JlbGF0aXZlKCkgJiYgY2VsbExvZ2lj
YWxXaWR0aC52YWx1ZSgpID4gY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpKSkK
KyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzQXV0bygpIHx8
IChjZWxsTG9naWNhbFdpZHRoLmlzUmVsYXRpdmUoKSAmJiBjZWxsTG9naWNhbFdpZHRoLnZhbHVl
KCkgPiBjb2x1bW5MYXlvdXQubG9naWNhbFdpZHRoLnZhbHVlKCkpKQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbHVtbkxheW91dC5sb2dpY2FsV2lkdGggPSBjZWxsTG9naWNhbFdpZHRo
OwogICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgICAgICAgICAg
YnJlYWs7CkBAIC0yMzIsMTYgKzIzMiwxNiBAQCB2b2lkIEF1dG9UYWJsZUxheW91dDo6Y29tcHV0
ZVByZWZlcnJlZExvCiAKICAgICAvLyBXZSBzdWJzdGl0dXRlIDAgcGVyY2VudCBieSAoZXBzaWxv
biAvIHBlcmNlbnRTY2FsZUZhY3RvcikgcGVyY2VudCBpbiB0d28gcGxhY2VzIGJlbG93IHRvIGF2
b2lkIGRpdmlzaW9uIGJ5IHplcm8uCiAgICAgLy8gRklYTUU6IEhhbmRsZSB0aGUgMCUgY2FzZXMg
cHJvcGVybHkuCi0gICAgY29uc3QgaW50IGVwc2lsb24gPSAxOworICAgIGNvbnN0IGZsb2F0IGVw
c2lsb24gPSAxIC8gMTI4LjBmOwogCi0gICAgaW50IHJlbWFpbmluZ1BlcmNlbnQgPSAxMDAgKiBw
ZXJjZW50U2NhbGVGYWN0b3I7CisgICAgZmxvYXQgcmVtYWluaW5nUGVyY2VudCA9IDEwMDsKICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1fbGF5b3V0U3RydWN0LnNpemUoKTsgKytpKSB7CiAg
ICAgICAgIG1pbldpZHRoICs9IG1fbGF5b3V0U3RydWN0W2ldLmVmZmVjdGl2ZU1pbkxvZ2ljYWxX
aWR0aDsKICAgICAgICAgbWF4V2lkdGggKz0gbV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZlTWF4
TG9naWNhbFdpZHRoOwogICAgICAgICBpZiAoc2NhbGVDb2x1bW5zKSB7CiAgICAgICAgICAgICBp
ZiAobV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKSB7
Ci0gICAgICAgICAgICAgICAgaW50IHBlcmNlbnQgPSBtaW4obV9sYXlvdXRTdHJ1Y3RbaV0uZWZm
ZWN0aXZlTG9naWNhbFdpZHRoLnJhd1ZhbHVlKCksIHJlbWFpbmluZ1BlcmNlbnQpOwotICAgICAg
ICAgICAgICAgIGZsb2F0IGxvZ2ljYWxXaWR0aCA9IHN0YXRpY19jYXN0PGZsb2F0PihtX2xheW91
dFN0cnVjdFtpXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpICogMTAwICogcGVyY2VudFNjYWxl
RmFjdG9yIC8gbWF4KHBlcmNlbnQsIGVwc2lsb24pOworICAgICAgICAgICAgICAgIGZsb2F0IHBl
cmNlbnQgPSBtaW4oc3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fbGF5b3V0U3RydWN0W2ldLmVmZmVjdGl2
ZUxvZ2ljYWxXaWR0aC5wZXJjZW50KCkpLCByZW1haW5pbmdQZXJjZW50KTsKKyAgICAgICAgICAg
ICAgICBmbG9hdCBsb2dpY2FsV2lkdGggPSBzdGF0aWNfY2FzdDxmbG9hdD4obV9sYXlvdXRTdHJ1
Y3RbaV0uZWZmZWN0aXZlTWF4TG9naWNhbFdpZHRoKSAqIDEwMCAvIG1heChwZXJjZW50LCBlcHNp
bG9uKTsKICAgICAgICAgICAgICAgICBtYXhQZXJjZW50ID0gbWF4KGxvZ2ljYWxXaWR0aCwgIG1h
eFBlcmNlbnQpOwogICAgICAgICAgICAgICAgIHJlbWFpbmluZ1BlcmNlbnQgLT0gcGVyY2VudDsK
ICAgICAgICAgICAgIH0gZWxzZQpAQCAtMjUwLDcgKzI1MCw3IEBAIHZvaWQgQXV0b1RhYmxlTGF5
b3V0Ojpjb21wdXRlUHJlZmVycmVkTG8KICAgICB9CiAKICAgICBpZiAoc2NhbGVDb2x1bW5zKSB7
Ci0gICAgICAgIG1heE5vblBlcmNlbnQgPSBtYXhOb25QZXJjZW50ICogMTAwICogcGVyY2VudFNj
YWxlRmFjdG9yIC8gbWF4KHJlbWFpbmluZ1BlcmNlbnQsIGVwc2lsb24pOworICAgICAgICBtYXhO
b25QZXJjZW50ID0gbWF4Tm9uUGVyY2VudCAqIDEwMCAvIG1heChyZW1haW5pbmdQZXJjZW50LCBl
cHNpbG9uKTsKICAgICAgICAgbWF4V2lkdGggPSBtYXgobWF4V2lkdGgsIHN0YXRpY19jYXN0PGlu
dD4obWluKG1heE5vblBlcmNlbnQsIElOVF9NQVggLyAyLjBmKSkpOwogICAgICAgICBtYXhXaWR0
aCA9IG1heChtYXhXaWR0aCwgc3RhdGljX2Nhc3Q8aW50PihtaW4obWF4UGVyY2VudCwgSU5UX01B
WCAvIDIuMGYpKSk7CiAgICAgfQpAQCAtMjY2LDYgKzI2NiwxMCBAQCB2b2lkIEF1dG9UYWJsZUxh
eW91dDo6Y29tcHV0ZVByZWZlcnJlZExvCiAgICAgICAgIG1pbldpZHRoID0gbWF4KG1pbldpZHRo
LCB0YWJsZUxvZ2ljYWxXaWR0aC52YWx1ZSgpKTsKICAgICAgICAgbWF4V2lkdGggPSBtaW5XaWR0
aDsKICAgICB9CisgICAgCisgICAgLy8gaWYgdGhlcmUgd2FzIG5vIHJlbWFpbmluZyBwZXJjZW50
LCBtYXhXaWR0aCBpcyBpbnZhbGlkLgorICAgIGlmICghcmVtYWluaW5nUGVyY2VudCAmJiBtYXhO
b25QZXJjZW50KQorICAgICAgICBtYXhXaWR0aCA9IGludE1heEZvckxlbmd0aDsgICAgICAgIAog
fQogCiAvKgpAQCAtMzAwLDcgKzMwNCw3IEBAIGludCBBdXRvVGFibGVMYXlvdXQ6OmNhbGNFZmZl
Y3RpdmVMb2dpY2EKICAgICAgICAgc2l6ZV90IGxhc3RDb2wgPSBlZmZDb2w7CiAgICAgICAgIGlu
dCBjZWxsTWluTG9naWNhbFdpZHRoID0gY2VsbC0+bWluUHJlZmVycmVkTG9naWNhbFdpZHRoKCkg
KyBzcGFjaW5nSW5Sb3dEaXJlY3Rpb247CiAgICAgICAgIGZsb2F0IGNlbGxNYXhMb2dpY2FsV2lk
dGggPSBjZWxsLT5tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgoKSArIHNwYWNpbmdJblJvd0RpcmVj
dGlvbjsKLSAgICAgICAgaW50IHRvdGFsUGVyY2VudCA9IDA7CisgICAgICAgIGZsb2F0IHRvdGFs
UGVyY2VudCA9IDA7CiAgICAgICAgIGludCBzcGFuTWluTG9naWNhbFdpZHRoID0gMDsKICAgICAg
ICAgZmxvYXQgc3Bhbk1heExvZ2ljYWxXaWR0aCA9IDA7CiAgICAgICAgIGJvb2wgYWxsQ29sc0Fy
ZVBlcmNlbnQgPSB0cnVlOwpAQCAtMzEyLDcgKzMxNiw3IEBAIGludCBBdXRvVGFibGVMYXlvdXQ6
OmNhbGNFZmZlY3RpdmVMb2dpY2EKICAgICAgICAgICAgIExheW91dCYgY29sdW1uTGF5b3V0ID0g
bV9sYXlvdXRTdHJ1Y3RbbGFzdENvbF07CiAgICAgICAgICAgICBzd2l0Y2ggKGNvbHVtbkxheW91
dC5sb2dpY2FsV2lkdGgudHlwZSgpKSB7CiAgICAgICAgICAgICBjYXNlIFBlcmNlbnQ6Ci0gICAg
ICAgICAgICAgICAgdG90YWxQZXJjZW50ICs9IGNvbHVtbkxheW91dC5sb2dpY2FsV2lkdGgucmF3
VmFsdWUoKTsKKyAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgKz0gY29sdW1uTGF5b3V0Lmxv
Z2ljYWxXaWR0aC5wZXJjZW50KCk7CiAgICAgICAgICAgICAgICAgYWxsQ29sc0FyZUZpeGVkID0g
ZmFsc2U7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIEZpeGVkOgpA
QCAtMzM5LDcgKzM0Myw3IEBAIGludCBBdXRvVGFibGVMYXlvdXQ6OmNhbGNFZmZlY3RpdmVMb2dp
Y2EKICAgICAgICAgICAgICAgICAgICAgY29sdW1uTGF5b3V0LmVmZmVjdGl2ZUxvZ2ljYWxXaWR0
aCA9IExlbmd0aCgpOwogICAgICAgICAgICAgICAgICAgICBhbGxDb2xzQXJlUGVyY2VudCA9IGZh
bHNlOwogICAgICAgICAgICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICB0b3RhbFBl
cmNlbnQgKz0gY29sdW1uTGF5b3V0LmVmZmVjdGl2ZUxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpOwor
ICAgICAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgKz0gY29sdW1uTGF5b3V0LmVmZmVjdGl2
ZUxvZ2ljYWxXaWR0aC5wZXJjZW50KCk7CiAgICAgICAgICAgICAgICAgYWxsQ29sc0FyZUZpeGVk
ID0gZmFsc2U7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoIWNvbHVtbkxheW91dC5l
bXB0eUNlbGxzT25seSkKQEAgLTM1NCwxNCArMzU4LDE0IEBAIGludCBBdXRvVGFibGVMYXlvdXQ6
OmNhbGNFZmZlY3RpdmVMb2dpY2EKIAogICAgICAgICAvLyBhZGp1c3QgdGFibGUgbWF4IHdpZHRo
IGlmIG5lZWRlZAogICAgICAgICBpZiAoY2VsbExvZ2ljYWxXaWR0aC5pc1BlcmNlbnQoKSkgewot
ICAgICAgICAgICAgaWYgKHRvdGFsUGVyY2VudCA+IGNlbGxMb2dpY2FsV2lkdGgucmF3VmFsdWUo
KSB8fCBhbGxDb2xzQXJlUGVyY2VudCkgeworICAgICAgICAgICAgaWYgKHRvdGFsUGVyY2VudCA+
IGNlbGxMb2dpY2FsV2lkdGgucGVyY2VudCgpIHx8IGFsbENvbHNBcmVQZXJjZW50KSB7CiAgICAg
ICAgICAgICAgICAgLy8gY2FuJ3Qgc2F0aWZ5IHRoaXMgY29uZGl0aW9uLCB0cmVhdCBhcyB2YXJp
YWJsZQogICAgICAgICAgICAgICAgIGNlbGxMb2dpY2FsV2lkdGggPSBMZW5ndGgoKTsKICAgICAg
ICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgbWF4TG9naWNhbFdpZHRoID0gbWF4KG1h
eExvZ2ljYWxXaWR0aCwgbWF4KHNwYW5NYXhMb2dpY2FsV2lkdGgsIGNlbGxNYXhMb2dpY2FsV2lk
dGgpICogMTAwICogcGVyY2VudFNjYWxlRmFjdG9yIC8gY2VsbExvZ2ljYWxXaWR0aC5yYXdWYWx1
ZSgpKTsKKyAgICAgICAgICAgICAgICBtYXhMb2dpY2FsV2lkdGggPSBtYXgobWF4TG9naWNhbFdp
ZHRoLCBzdGF0aWNfY2FzdDxmbG9hdD4obWF4KHNwYW5NYXhMb2dpY2FsV2lkdGgsIGNlbGxNYXhM
b2dpY2FsV2lkdGgpICogMTAwICAvIGNlbGxMb2dpY2FsV2lkdGgucGVyY2VudCgpKSk7CiAKICAg
ICAgICAgICAgICAgICAvLyBhbGwgbm9uIHBlcmNlbnQgY29sdW1ucyBpbiB0aGUgc3BhbiBnZXQg
cGVyY2VudCB2YWx1ZXMgdG8gc3VtIHVwIGNvcnJlY3RseS4KLSAgICAgICAgICAgICAgICBpbnQg
cGVyY2VudE1pc3NpbmcgPSBjZWxsTG9naWNhbFdpZHRoLnJhd1ZhbHVlKCkgLSB0b3RhbFBlcmNl
bnQ7CisgICAgICAgICAgICAgICAgZmxvYXQgcGVyY2VudE1pc3NpbmcgPSBjZWxsTG9naWNhbFdp
ZHRoLnBlcmNlbnQoKSAtIHRvdGFsUGVyY2VudDsKICAgICAgICAgICAgICAgICBmbG9hdCB0b3Rh
bFdpZHRoID0gMDsKICAgICAgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIHBvcyA9IGVmZkNvbDsg
cG9zIDwgbGFzdENvbDsgKytwb3MpIHsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFtX2xheW91
dFN0cnVjdFtwb3NdLmVmZmVjdGl2ZUxvZ2ljYWxXaWR0aC5pc1BlcmNlbnQoKSkKQEAgLTM3MCw3
ICszNzQsNyBAQCBpbnQgQXV0b1RhYmxlTGF5b3V0OjpjYWxjRWZmZWN0aXZlTG9naWNhCiAKICAg
ICAgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIHBvcyA9IGVmZkNvbDsgcG9zIDwgbGFzdENvbCAm
JiB0b3RhbFdpZHRoID4gMDsgKytwb3MpIHsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFtX2xh
eW91dFN0cnVjdFtwb3NdLmVmZmVjdGl2ZUxvZ2ljYWxXaWR0aC5pc1BlcmNlbnQoKSkgewotICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IHBlcmNlbnQgPSBzdGF0aWNfY2FzdDxpbnQ+KHBlcmNl
bnRNaXNzaW5nICogc3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fbGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0
aXZlTWF4TG9naWNhbFdpZHRoKSAvIHRvdGFsV2lkdGgpOworICAgICAgICAgICAgICAgICAgICAg
ICAgZmxvYXQgcGVyY2VudCA9IHBlcmNlbnRNaXNzaW5nICogc3RhdGljX2Nhc3Q8ZmxvYXQ+KG1f
bGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0aXZlTWF4TG9naWNhbFdpZHRoKSAvIHRvdGFsV2lkdGg7
CiAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbFdpZHRoIC09IG1fbGF5b3V0U3RydWN0W3Bv
c10uZWZmZWN0aXZlTWF4TG9naWNhbFdpZHRoOwogICAgICAgICAgICAgICAgICAgICAgICAgcGVy
Y2VudE1pc3NpbmcgLT0gcGVyY2VudDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwZXJj
ZW50ID4gMCkKQEAgLTQ5MSw3ICs0OTUsNyBAQCB2b2lkIEF1dG9UYWJsZUxheW91dDo6bGF5b3V0
KCkKICAgICBpbnQgbnVtRml4ZWQgPSAwOwogICAgIGZsb2F0IHRvdGFsQXV0byA9IDA7CiAgICAg
ZmxvYXQgdG90YWxGaXhlZCA9IDA7Ci0gICAgaW50IHRvdGFsUGVyY2VudCA9IDA7CisgICAgZmxv
YXQgdG90YWxQZXJjZW50ID0gMDsKICAgICBpbnQgYWxsb2NBdXRvID0gMDsKICAgICB1bnNpZ25l
ZCBudW1BdXRvRW1wdHlDZWxsc09ubHkgPSAwOwogCkBAIC01MDQsNyArNTA4LDcgQEAgdm9pZCBB
dXRvVGFibGVMYXlvdXQ6OmxheW91dCgpCiAgICAgICAgIHN3aXRjaCAobG9naWNhbFdpZHRoLnR5
cGUoKSkgewogICAgICAgICBjYXNlIFBlcmNlbnQ6CiAgICAgICAgICAgICBoYXZlUGVyY2VudCA9
IHRydWU7Ci0gICAgICAgICAgICB0b3RhbFBlcmNlbnQgKz0gbG9naWNhbFdpZHRoLnJhd1ZhbHVl
KCk7CisgICAgICAgICAgICB0b3RhbFBlcmNlbnQgKz0gbG9naWNhbFdpZHRoLnBlcmNlbnQoKTsK
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIFJlbGF0aXZlOgogICAgICAgICAgICAg
dG90YWxSZWxhdGl2ZSArPSBsb2dpY2FsV2lkdGgudmFsdWUoKTsKQEAgLTUzOCw5ICs1NDIsOSBA
QCB2b2lkIEF1dG9UYWJsZUxheW91dDo6bGF5b3V0KCkKICAgICAgICAgICAgICAgICBtX2xheW91
dFN0cnVjdFtpXS5jb21wdXRlZExvZ2ljYWxXaWR0aCA9IGNlbGxMb2dpY2FsV2lkdGg7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgaWYgKHRvdGFsUGVyY2VudCA+IDEwMCAqIHBl
cmNlbnRTY2FsZUZhY3RvcikgeworICAgICAgICBpZiAodG90YWxQZXJjZW50ID4gMTAwKSB7CiAg
ICAgICAgICAgICAvLyByZW1vdmUgb3ZlcmFsbG9jYXRlZCBzcGFjZSBmcm9tIHRoZSBsYXN0IGNv
bHVtbnMKLSAgICAgICAgICAgIGludCBleGNlc3MgPSB0YWJsZUxvZ2ljYWxXaWR0aCAqICh0b3Rh
bFBlcmNlbnQgLSAxMDAgKiBwZXJjZW50U2NhbGVGYWN0b3IpIC8gKDEwMCAqIHBlcmNlbnRTY2Fs
ZUZhY3Rvcik7CisgICAgICAgICAgICBpbnQgZXhjZXNzID0gdGFibGVMb2dpY2FsV2lkdGggKiAo
dG90YWxQZXJjZW50IC0gMTAwKSAvIDEwMDsKICAgICAgICAgICAgIGZvciAoaW50IGkgPSBuRWZm
Q29scyAtIDE7IGkgPj0gMDsgLS1pKSB7CiAgICAgICAgICAgICAgICAgaWYgKG1fbGF5b3V0U3Ry
dWN0W2ldLmVmZmVjdGl2ZUxvZ2ljYWxXaWR0aC5pc1BlcmNlbnQoKSkgewogICAgICAgICAgICAg
ICAgICAgICBpbnQgY2VsbExvZ2ljYWxXaWR0aCA9IG1fbGF5b3V0U3RydWN0W2ldLmNvbXB1dGVk
TG9naWNhbFdpZHRoOwpAQCAtNjA3LDEzICs2MTEsMTMgQEAgdm9pZCBBdXRvVGFibGVMYXlvdXQ6
OmxheW91dCgpCiAgICAgfQogCiAgICAgLy8gc3ByZWFkIG92ZXIgcGVyY2VudCBjb2x1bXMKLSAg
ICBpZiAoYXZhaWxhYmxlID4gMCAmJiBtX2hhc1BlcmNlbnQgJiYgdG90YWxQZXJjZW50IDwgMTAw
ICogcGVyY2VudFNjYWxlRmFjdG9yKSB7CisgICAgaWYgKGF2YWlsYWJsZSA+IDAgJiYgbV9oYXNQ
ZXJjZW50ICYmIHRvdGFsUGVyY2VudCA8IDEwMCkgewogICAgICAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IG5FZmZDb2xzOyArK2kpIHsKICAgICAgICAgICAgIExlbmd0aCYgbG9naWNhbFdpZHRo
ID0gbV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoOwogICAgICAgICAgICAg
aWYgKGxvZ2ljYWxXaWR0aC5pc1BlcmNlbnQoKSkgewotICAgICAgICAgICAgICAgIGludCBjZWxs
TG9naWNhbFdpZHRoID0gYXZhaWxhYmxlICogbG9naWNhbFdpZHRoLnJhd1ZhbHVlKCkgLyB0b3Rh
bFBlcmNlbnQ7CisgICAgICAgICAgICAgICAgaW50IGNlbGxMb2dpY2FsV2lkdGggPSBhdmFpbGFi
bGUgKiBsb2dpY2FsV2lkdGgucGVyY2VudCgpIC8gdG90YWxQZXJjZW50OwogICAgICAgICAgICAg
ICAgIGF2YWlsYWJsZSAtPSBjZWxsTG9naWNhbFdpZHRoOwotICAgICAgICAgICAgICAgIHRvdGFs
UGVyY2VudCAtPSBsb2dpY2FsV2lkdGgucmF3VmFsdWUoKTsKKyAgICAgICAgICAgICAgICB0b3Rh
bFBlcmNlbnQgLT0gbG9naWNhbFdpZHRoLnBlcmNlbnQoKTsKICAgICAgICAgICAgICAgICBtX2xh
eW91dFN0cnVjdFtpXS5jb21wdXRlZExvZ2ljYWxXaWR0aCArPSBjZWxsTG9naWNhbFdpZHRoOwog
ICAgICAgICAgICAgICAgIGlmICghYXZhaWxhYmxlIHx8ICF0b3RhbFBlcmNlbnQpCiAgICAgICAg
ICAgICAgICAgICAgIGJyZWFrOwpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpeGVk
VGFibGVMYXlvdXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9G
aXhlZFRhYmxlTGF5b3V0LmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvRml4ZWRUYWJsZUxheW91dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExOCw3ICsx
MTgsOCBAQCBpbnQgRml4ZWRUYWJsZUxheW91dDo6Y2FsY1dpZHRoQXJyYXkoaW50CiAgICAgICAg
ICAgICAgICAgICAgIHNwYW5JbkN1cnJlbnRFZmZlY3RpdmVDb2x1bW4gPSBtX3RhYmxlLT5zcGFu
T2ZFZmZDb2woY3VycmVudEVmZmVjdGl2ZUNvbHVtbik7CiAgICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICAgIGlmICgody5pc0ZpeGVkKCkgfHwgdy5pc1BlcmNlbnQoKSkgJiYgdy5pc1Bv
c2l0aXZlKCkpIHsKLSAgICAgICAgICAgICAgICAgICAgbV93aWR0aFtjdXJyZW50RWZmZWN0aXZl
Q29sdW1uXS5zZXRWYWx1ZSh3LnR5cGUoKSwgdy5yYXdWYWx1ZSgpICogc3BhbkluQ3VycmVudEVm
ZmVjdGl2ZUNvbHVtbik7CisgICAgICAgICAgICAgICAgICAgIG1fd2lkdGhbY3VycmVudEVmZmVj
dGl2ZUNvbHVtbl0gPSB3OworICAgICAgICAgICAgICAgICAgICBtX3dpZHRoW2N1cnJlbnRFZmZl
Y3RpdmVDb2x1bW5dICo9IHNwYW5JbkN1cnJlbnRFZmZlY3RpdmVDb2x1bW47CiAgICAgICAgICAg
ICAgICAgICAgIHVzZWRXaWR0aCArPSBlZmZXaWR0aCAqIHNwYW5JbkN1cnJlbnRFZmZlY3RpdmVD
b2x1bW47CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHNwYW4gLT0gc3Bhbklu
Q3VycmVudEVmZmVjdGl2ZUNvbHVtbjsKQEAgLTE2NCwxMCArMTY1LDExIEBAIGludCBGaXhlZFRh
YmxlTGF5b3V0OjpjYWxjV2lkdGhBcnJheShpbnQKICAgICAgICAgICAgICAgICBpbnQgdXNlZFNw
YW4gPSAwOwogICAgICAgICAgICAgICAgIGludCBpID0gMDsKICAgICAgICAgICAgICAgICB3aGls
ZSAodXNlZFNwYW4gPCBzcGFuICYmIGNDb2wgKyBpIDwgbkVmZkNvbHMpIHsKLSAgICAgICAgICAg
ICAgICAgICAgaW50IGVTcGFuID0gbV90YWJsZS0+c3Bhbk9mRWZmQ29sKGNDb2wgKyBpKTsKKyAg
ICAgICAgICAgICAgICAgICAgZmxvYXQgZVNwYW4gPSBtX3RhYmxlLT5zcGFuT2ZFZmZDb2woY0Nv
bCArIGkpOwogICAgICAgICAgICAgICAgICAgICAvLyBPbmx5IHNldCBpZiBubyBjb2wgZWxlbWVu
dCBoYXMgYWxyZWFkeSBzZXQgaXQuCiAgICAgICAgICAgICAgICAgICAgIGlmIChtX3dpZHRoW2ND
b2wgKyBpXS5pc0F1dG8oKSAmJiB3LnR5cGUoKSAhPSBBdXRvKSB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICBtX3dpZHRoW2NDb2wgKyBpXS5zZXRWYWx1ZSh3LnR5cGUoKSwgdy5yYXdWYWx1ZSgp
ICogZVNwYW4gLyBzcGFuKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIG1fd2lkdGhbY0NvbCAr
IGldID0gdzsKKyAgICAgICAgICAgICAgICAgICAgICAgIG1fd2lkdGhbY0NvbCArIGldICo9IGVT
cGFuIC8gc3BhbjsKICAgICAgICAgICAgICAgICAgICAgICAgIHVzZWRXaWR0aCArPSBlZmZXaWR0
aCAqIGVTcGFuIC8gc3BhbjsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
ICAgICB1c2VkU3BhbiArPSBlU3BhbjsKQEAgLTIzNCw3ICsyMzYsNyBAQCB2b2lkIEZpeGVkVGFi
bGVMYXlvdXQ6OmxheW91dCgpCiAgICAgaW50IGF1dG9TcGFuID0gMDsKICAgICBpbnQgdG90YWxG
aXhlZFdpZHRoID0gMDsKICAgICBpbnQgdG90YWxQZXJjZW50V2lkdGggPSAwOwotICAgIGludCB0
b3RhbFJhd1BlcmNlbnQgPSAwOworICAgIGZsb2F0IHRvdGFsUGVyY2VudCA9IDA7CiAKICAgICAv
LyBDb21wdXRlIHJlcXVpcmVtZW50cyBhbmQgdHJ5IHRvIHNhdGlzZnkgZml4ZWQgYW5kIHBlcmNl
bnQgd2lkdGhzLgogICAgIC8vIFBlcmNlbnRhZ2VzIGFyZSBvZiB0aGUgdGFibGUncyB3aWR0aCwg
c28gZm9yIGV4YW1wbGUKQEAgLTI0Nyw3ICsyNDksNyBAQCB2b2lkIEZpeGVkVGFibGVMYXlvdXQ6
OmxheW91dCgpCiAgICAgICAgIH0gZWxzZSBpZiAobV93aWR0aFtpXS5pc1BlcmNlbnQoKSkgewog
ICAgICAgICAgICAgY2FsY1dpZHRoW2ldID0gbV93aWR0aFtpXS5jYWxjVmFsdWUodGFibGVMb2dp
Y2FsV2lkdGgpOwogICAgICAgICAgICAgdG90YWxQZXJjZW50V2lkdGggKz0gY2FsY1dpZHRoW2ld
OwotICAgICAgICAgICAgdG90YWxSYXdQZXJjZW50ICs9IG1fd2lkdGhbaV0ucmF3VmFsdWUoKTsK
KyAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBtX3dpZHRoW2ldLnBlcmNlbnQoKTsKICAgICAg
ICAgfSBlbHNlIGlmIChtX3dpZHRoW2ldLmlzQXV0bygpKSB7CiAgICAgICAgICAgICBudW1BdXRv
Kys7CiAgICAgICAgICAgICBhdXRvU3BhbiArPSBtX3RhYmxlLT5zcGFuT2ZFZmZDb2woaSk7CkBA
IC0yNzAsMTEgKzI3MiwxMSBAQCB2b2lkIEZpeGVkVGFibGVMYXlvdXQ6OmxheW91dCgpCiAgICAg
ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBpZiAodG90YWxSYXdQZXJjZW50KSB7CisgICAgICAgICAgICBpZiAodG90YWxQZXJj
ZW50KSB7CiAgICAgICAgICAgICAgICAgdG90YWxQZXJjZW50V2lkdGggPSAwOwogICAgICAgICAg
ICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbkVmZkNvbHM7IGkrKykgewogICAgICAgICAgICAg
ICAgICAgICBpZiAobV93aWR0aFtpXS5pc1BlcmNlbnQoKSkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgY2FsY1dpZHRoW2ldID0gbV93aWR0aFtpXS5yYXdWYWx1ZSgpICogKHRhYmxlTG9naWNh
bFdpZHRoIC0gdG90YWxGaXhlZFdpZHRoKSAvIHRvdGFsUmF3UGVyY2VudDsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGNhbGNXaWR0aFtpXSA9IG1fd2lkdGhbaV0ucGVyY2VudCgpICogKHRhYmxl
TG9naWNhbFdpZHRoIC0gdG90YWxGaXhlZFdpZHRoKSAvIHRvdGFsUGVyY2VudDsKICAgICAgICAg
ICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudFdpZHRoICs9IGNhbGNXaWR0aFtpXTsKICAgICAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwCShyZXZpc2lvbiA4MDM4MSkK
KysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xOTksNyArMTk5LDcgQEAgdm9pZCBSZW5kZXJUYWJsZVNlY3Rpb246OmFk
ZENlbGwoUmVuZGVyVAogICAgICAgICAgICAgc3dpdGNoIChsb2dpY2FsSGVpZ2h0LnR5cGUoKSkg
ewogICAgICAgICAgICAgICAgIGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgICAgICAgICAgaWYg
KCEoY1Jvd0xvZ2ljYWxIZWlnaHQuaXNQZXJjZW50KCkpIHx8Ci0gICAgICAgICAgICAgICAgICAg
ICAgICAoY1Jvd0xvZ2ljYWxIZWlnaHQuaXNQZXJjZW50KCkgJiYgY1Jvd0xvZ2ljYWxIZWlnaHQu
cmF3VmFsdWUoKSA8IGxvZ2ljYWxIZWlnaHQucmF3VmFsdWUoKSkpCisgICAgICAgICAgICAgICAg
ICAgICAgICAoY1Jvd0xvZ2ljYWxIZWlnaHQuaXNQZXJjZW50KCkgJiYgY1Jvd0xvZ2ljYWxIZWln
aHQucGVyY2VudCgpIDwgbG9naWNhbEhlaWdodC5wZXJjZW50KCkpKQogICAgICAgICAgICAgICAg
ICAgICAgICAgbV9ncmlkW21fY1Jvd10ubG9naWNhbEhlaWdodCA9IGxvZ2ljYWxIZWlnaHQ7CiAg
ICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICBjYXNlIEZpeGVk
OgpAQCAtNDM0LDIyICs0MzQsMjIgQEAgaW50IFJlbmRlclRhYmxlU2VjdGlvbjo6bGF5b3V0Um93
cyhpbnQgdAogICAgICAgICAgICAgaWYgKG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LmlzQXV0bygp
KQogICAgICAgICAgICAgICAgIG51bUF1dG8rKzsKICAgICAgICAgICAgIGVsc2UgaWYgKG1fZ3Jp
ZFtyXS5sb2dpY2FsSGVpZ2h0LmlzUGVyY2VudCgpKQotICAgICAgICAgICAgICAgIHRvdGFsUGVy
Y2VudCArPSBtX2dyaWRbcl0ubG9naWNhbEhlaWdodC5yYXdWYWx1ZSgpOworICAgICAgICAgICAg
ICAgIHRvdGFsUGVyY2VudCArPSBtX2dyaWRbcl0ubG9naWNhbEhlaWdodC5wZXJjZW50KCk7CiAg
ICAgICAgIH0KICAgICAgICAgaWYgKHRvdGFsUGVyY2VudCkgewogICAgICAgICAgICAgLy8gdHJ5
IHRvIHNhdGlzZnkgcGVyY2VudAogICAgICAgICAgICAgaW50IGFkZCA9IDA7Ci0gICAgICAgICAg
ICB0b3RhbFBlcmNlbnQgPSBtaW4odG90YWxQZXJjZW50LCAxMDAgKiBwZXJjZW50U2NhbGVGYWN0
b3IpOworICAgICAgICAgICAgdG90YWxQZXJjZW50ID0gbWluKHRvdGFsUGVyY2VudCwgMTAwKTsK
ICAgICAgICAgICAgIGludCByaCA9IG1fcm93UG9zWzFdIC0gbV9yb3dQb3NbMF07CiAgICAgICAg
ICAgICBmb3IgKGludCByID0gMDsgciA8IHRvdGFsUm93czsgcisrKSB7CiAgICAgICAgICAgICAg
ICAgaWYgKHRvdGFsUGVyY2VudCA+IDAgJiYgbV9ncmlkW3JdLmxvZ2ljYWxIZWlnaHQuaXNQZXJj
ZW50KCkpIHsKLSAgICAgICAgICAgICAgICAgICAgaW50IHRvQWRkID0gbWluKGRoLCAodG90YWxI
ZWlnaHQgKiBtX2dyaWRbcl0ubG9naWNhbEhlaWdodC5yYXdWYWx1ZSgpIC8gKDEwMCAqIHBlcmNl
bnRTY2FsZUZhY3RvcikpIC0gcmgpOworICAgICAgICAgICAgICAgICAgICBpbnQgdG9BZGQgPSBt
aW4oZGgsIHN0YXRpY19jYXN0PGludD4oKHRvdGFsSGVpZ2h0ICogbV9ncmlkW3JdLmxvZ2ljYWxI
ZWlnaHQucGVyY2VudCgpIC8gMTAwKSAtIHJoKSk7CiAgICAgICAgICAgICAgICAgICAgIC8vIElm
IHRvQWRkIGlzIG5lZ2F0aXZlLCB0aGVuIHdlIGRvbid0IHdhbnQgdG8gc2hyaW5rIHRoZSByb3cg
KHRoaXMgYnVnCiAgICAgICAgICAgICAgICAgICAgIC8vIGFmZmVjdGVkIE91dGxvb2sgV2ViIEFj
Y2VzcykuCiAgICAgICAgICAgICAgICAgICAgIHRvQWRkID0gbWF4KDAsIHRvQWRkKTsKICAgICAg
ICAgICAgICAgICAgICAgYWRkICs9IHRvQWRkOwogICAgICAgICAgICAgICAgICAgICBkaCAtPSB0
b0FkZDsKLSAgICAgICAgICAgICAgICAgICAgdG90YWxQZXJjZW50IC09IG1fZ3JpZFtyXS5sb2dp
Y2FsSGVpZ2h0LnJhd1ZhbHVlKCk7CisgICAgICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudCAt
PSBtX2dyaWRbcl0ubG9naWNhbEhlaWdodC5wZXJjZW50KCk7CiAgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgIGlmIChyIDwgdG90YWxSb3dzIC0gMSkKICAgICAgICAgICAgICAgICAg
ICAgcmggPSBtX3Jvd1Bvc1tyICsgMl0gLSBtX3Jvd1Bvc1tyICsgMV07CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9yZGVyRGF0YS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmgJKHJldmlzaW9uIDgwMzgxKQor
KysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlckRhdGEuaAkod29ya2luZyBj
b3B5KQpAQCAtNDksMTMgKzQ5LDEzIEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaGFzQm9yZGVyUmFk
aXVzKCkgY29uc3QKICAgICB7Ci0gICAgICAgIGlmIChtX3RvcExlZnQud2lkdGgoKS5yYXdWYWx1
ZSgpID4gMCkKKyAgICAgICAgaWYgKCFtX3RvcExlZnQud2lkdGgoKS5pc1plcm8oKSkKICAgICAg
ICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAobV90b3BSaWdodC53aWR0aCgpLnJhd1Zh
bHVlKCkgPiAwKQorICAgICAgICBpZiAoIW1fdG9wUmlnaHQud2lkdGgoKS5pc1plcm8oKSkKICAg
ICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAobV9ib3R0b21MZWZ0LndpZHRoKCku
cmF3VmFsdWUoKSA+IDApCisgICAgICAgIGlmICghbV9ib3R0b21MZWZ0LndpZHRoKCkuaXNaZXJv
KCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgaWYgKG1fYm90dG9tUmlnaHQu
d2lkdGgoKS5yYXdWYWx1ZSgpID4gMCkKKyAgICAgICAgaWYgKCFtX2JvdHRvbVJpZ2h0LndpZHRo
KCkuaXNaZXJvKCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgIH0KSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDgwNjY1KQorKysgTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTEtMDMtMDkgIFJpayBD
YWJhbmllciAgPGNhYmFuaWVyQGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBidWcgNTYwNTI6IHBlcmNlbnRhZ2VzIGFyZSBpbmNvcnJl
Y3RseSByb3VuZGVkIGluIFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NTYwNTIKKworICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2Nzcy9w
ZXJjZW50YWdlLW5vbi1pbnRlZ2VyLWV4cGVjdGVkLnR4dDoKKwogMjAxMS0wMy0wOSAgSmFtZXMg
Um9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtl
bm5ldGggUnVzc2VsbC4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9w
ZXJjZW50YWdlLW5vbi1pbnRlZ2VyLWV4cGVjdGVkLmNoZWNrc3VtCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9wZXJjZW50YWdlLW5vbi1pbnRlZ2VyLWV4
cGVjdGVkLmNoZWNrc3VtCShyZXZpc2lvbiA4MDM4MSkKKysrIExheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9mYXN0L2Nzcy9wZXJjZW50YWdlLW5vbi1pbnRlZ2VyLWV4cGVjdGVkLmNoZWNrc3VtCSh3
b3JraW5nIGNvcHkpCkBAIC0xICsxIEBACi00MTRjYWFhMmVlMDk4MjNmY2M2YjEyMDBkMzBlYzEy
NwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2Q5YjFiOTQxOGQyOGU0Zjk5ZDgzZTJiODg2
MGRjMmNjClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9wZXJjZW50YWdl
LW5vbi1pbnRlZ2VyLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gODAzODEpCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MvcGVyY2VudGFnZS1ub24taW50ZWdlci1leHBlY3RlZC50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTI5LDcgKzI5LDcgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4
MDB4NTg1CiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDQ0KSBzaXplIDkxMHg0CiAg
ICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMDB4NCBbYmdjb2xvcj0j
MDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDQ4KSBzaXplIDkxMHg0
Ci0gICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMDB4NCBbYmdjb2xv
cj0jMDAwMDAwN0ZdCisgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAx
MDF4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgw
LDUyKSBzaXplIDkwMHg0CiAgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6
ZSAxMDB4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0
ICgwLDU2KSBzaXplIDg5MHg0CkBAIC00OSw3ICs0OSw3IEBAIGxheWVyIGF0ICgwLDApIHNpemUg
ODAweDU4NQogICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCw4NCkgc2l6ZSA4NDB4NAog
ICAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgMTAweDQgW2JnY29sb3I9
IzAwMDAwMDdGXQogICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCw4OCkgc2l6ZSA4MzV4
NAotICAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgMTAweDQgW2JnY29s
b3I9IzAwMDAwMDdGXQorICAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUg
MTAxeDQgW2JnY29sb3I9IzAwMDAwMDdGXQogICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAo
MCw5Mikgc2l6ZSA4MjV4NAogICAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNp
emUgMTAweDQgW2JnY29sb3I9IzAwMDAwMDdGXQogICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBh
dCAoMCw5Nikgc2l6ZSA4MTV4NApAQCAtODQsNjEgKzg0LDYxIEBAIGxheWVyIGF0ICg4LDEyNikg
c2l6ZSAxMDAweDIwCiAgIFJlbmRlclRhYmxlIHtUQUJMRX0gYXQgKDAsMCkgc2l6ZSAxMDAweDIw
CiAgICAgUmVuZGVyVGFibGVTZWN0aW9uIHtUQk9EWX0gYXQgKDAsMCkgc2l6ZSAxMDAweDIwCiAg
ICAgICBSZW5kZXJUYWJsZVJvdyB7VFJ9IGF0ICgwLDApIHNpemUgMTAwMHgyMAotICAgICAgICBS
ZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMCwxKSBzaXplIDExeDE4IFtiZ2NvbG9yPSMwMDAwMDA3
Rl0gW3I9MCBjPTAgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAo
MCwxKSBzaXplIDEyeDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTAgcnM9MSBjcz0xXQog
ICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAg
ICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNl
bGwge1REfSBhdCAoMTEsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0x
IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDEyLDEpIHNpemUg
MTB4MTggW2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MSBycz0xIGNzPTFdCiAgICAgICAgICAg
UmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBy
dW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0
ICgyMSwxKSBzaXplIDEzeDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTIgcnM9MSBjcz0x
XQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMjIsMSkgc2l6ZSAxNHgxOCBbYmdj
b2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0yIHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0
IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCww
KSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDM0LDEpIHNp
emUgMTB4MTggW2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MyBycz0xIGNzPTFdCisgICAgICAg
IFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgzNiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZG
MDA3Rl0gW3I9MCBjPTMgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6
ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoNDQsMSkgc2l6ZSAxNXgxOCBb
Ymdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz00IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFi
bGVDZWxsIHtURH0gYXQgKDQ2LDEpIHNpemUgMTZ4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0w
IGM9NCBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNp
emUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAg
ICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICg1OSwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMw
MEZGMDA3Rl0gW3I9MCBjPTUgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1RE
fSBhdCAoNjIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz01IHJzPTEg
Y3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAg
ICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVy
VGFibGVDZWxsIHtURH0gYXQgKDY5LDEpIHNpemUgMTd4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBb
cj0wIGM9NiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICg3Miwx
KSBzaXplIDE4eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTYgcnM9MSBjcz0xXQogICAg
ICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAg
IHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwg
e1REfSBhdCAoODYsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz03IHJz
PTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDkwLDEpIHNpemUgMTB4
MTggW2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9NyBycz0xIGNzPTFdCiAgICAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4g
YXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICg5
NiwxKSBzaXplIDIweDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTggcnM9MSBjcz0xXQor
ICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMTAwLDEpIHNpemUgMjB4MTggW2JnY29s
b3I9IzAwMDAwMDdGXSBbcj0wIGM9OCBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7
I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkg
d2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMTYsMSkgc2l6
ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz05IHJzPTEgY3M9MV0KKyAgICAgICAg
UmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDEyMCwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZG
MDA3Rl0gW3I9MCBjPTkgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6
ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMTI2LDEpIHNpemUgMjF4MTgg
W2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MTAgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJU
YWJsZUNlbGwge1REfSBhdCAoMTMwLDEpIHNpemUgMjJ4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBb
cj0wIGM9MTAgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCww
KSBzaXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgot
ICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMTQ3LDEpIHNpemUgMTB4MTggW2JnY29s
b3I9IzAwRkYwMDdGXSBbcj0wIGM9MTEgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNl
bGwge1REfSBhdCAoMTUyLDEpIHNpemUgMTB4MTggW2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9
MTEgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXpl
IDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAg
ICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMTU3LDEpIHNpemUgMjN4MTggW2JnY29sb3I9IzAw
MDAwMDdGXSBbcj0wIGM9MTIgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1RE
fSBhdCAoMTYyLDEpIHNpemUgMjR4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MTIgcnM9
MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgK
ICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5k
ZXJUYWJsZUNlbGwge1REfSBhdCAoMTgwLDEwKSBzaXplIDEweDAgW2JnY29sb3I9IzAwRkYwMDdG
XSBbcj0wIGM9MTMgcnM9MSBjcz0xXQotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAo
MTkwLDEpIHNpemUgMjV4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MTQgcnM9MSBjcz0x
XQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMTg2LDEwKSBzaXplIDEweDAgW2Jn
Y29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MTMgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJs
ZUNlbGwge1REfSBhdCAoMTk2LDEpIHNpemUgMjZ4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0w
IGM9MTQgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBz
aXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAg
ICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMjE1LDEpIHNpemUgMTB4MTggW2JnY29sb3I9
IzAwRkYwMDdGXSBbcj0wIGM9MTUgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwg
e1REfSBhdCAoMjIyLDEpIHNpemUgMTB4MTggW2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MTUg
cnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4
MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBS
ZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMjI1LDEpIHNpemUgMjd4MTggW2JnY29sb3I9IzAwMDAw
MDdGXSBbcj0wIGM9MTYgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBh
dCAoMjMyLDEpIHNpemUgMjh4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MTYgcnM9MSBj
cz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAg
ICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJU
YWJsZUNlbGwge1REfSBhdCAoMjUyLDEpIHNpemUgMTB4MTggW2JnY29sb3I9IzAwRkYwMDdGXSBb
cj0wIGM9MTcgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMjYw
LDEpIHNpemUgMTB4MTggW2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MTcgcnM9MSBjcz0xXQog
ICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAg
ICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNl
bGwge1REfSBhdCAoMjYyLDEpIHNpemUgMzB4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9
MTggcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMjcwLDEpIHNp
emUgMzB4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MTggcnM9MSBjcz0xXQogICAgICAg
ICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAgIHRl
eHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1RE
fSBhdCAoMjkyLDEpIHNpemUgNzA4eDE4IFtyPTAgYz0xOSBycz0xIGNzPTFdCisgICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgzMDAsMSkgc2l6ZSA3MDB4MTggW3I9MCBjPTE5IHJzPTEg
Y3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAg
ICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKSW5kZXg6IExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9wZXJjZW50YWdlLW5vbi1pbnRlZ2VyLWV4cGVjdGVk
LnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0
eXBlLgpzdm46bWltZS10eXBlID0gaW1hZ2UvcG5nCgppVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFB
eUFBQUFKWUNBWUFBQUNhZG9Kd0FBQUM3bWxEUTFCSlEwTWdVSEp2Wm1sc1pRQUFlQUdGClZNOXJF
MEVVL2padXFkQWlDRnByRHJKNGtDSkpXYXRvUmRRMi9SRmlhd3piSDdaRmtHUXpTZFp1TnV2dUpy
V2xpT1RpMFNyZVJlMmgKQi8rQUhucndaQzlLaFZwRktONnJLR0toRnkzeHpXNU10cVhxd001Kzg5
NDM3MzF2ZHQ4QURYTFNOUFdBQk9RTngxS2lFV2xzZkVKcQovSWdBanFJSlFUUWxWZHZzVGlRR1FZ
TnorWHZuMkhvUGdWdFd3M3Y3ZDdKM3JaclN0cG9IaFAxQTRFZWEyU3F3N3hkeENsa1NBb2c4CjM2
RXB4M1FJMytQWTh1eVBPVTU1ZU1HMUR5czl4RmtpZkVBMUxjNS9UYmhUelNYVFFJTklPSlQxY1ZJ
K25OZUxsTmNkQjJsdVpzYkkKRUwxUGtLYTd6TzZyWXFHY1R2WU9rTDJkOUg1T3M5NCt3aUhDQ3ht
dFAwYTRqWjcxak5VLzRtSGhwT2JFaGowY0dEWDArR0FWdHhxcAorRFhDRkY4UVRTZWlWSEhaTGcz
eG1LNzlWdkpLZ25DUU9NcGtZWUJ6V2toUDEweHUrTHFIQlgwbTF4T3Y0bmRXVWVGNWp4Tm4zdFRk
CjcwWGFBcTh3RGgwTUdneWFEVWhRRUVVRVlaaXdVRUNHUEJveE5MSnlQeU9yQmh1VGV6SjFKR3E3
ZEdKRXNVRjdOdHc5dDFHazNUeisKS0NKeGxFTzFDSkw4UWY0cXI4bFA1WG41eTF5dzJGYjNsSzJi
bXJyeTREdkY1Wm01R2g3WDA4ampjMDFlZkpYVWRwTlhSNWFzZVhxOAptdXdhUCt4WGx6SG1naldQ
eEhPdysvRXRYNVhNbHltTUZNWGpWZlBxUzRSMVdqRTMzNTlzZnpzOTRpN1BMclhXYzYySml6ZFdt
NWRuCi9XcEkrKzZxdkpQbVZmbFBYdlh4L0dmTnhHUGlLVEVtZG9ybklZbVh4Uzd4a3RoTHF3dmlZ
RzNIQ0oyVmhpblNiWkg2Sk5WZ1lKcTgKOVM5ZFAxdDR2VVovRFBWUmxCbk0wbFNKOTMvQ0ttUTBu
YmtPYi9xUDI4ZjhGK1QzaXVlZktBSXZiT0RJbWJwdFUzSHZFS0ZscFc1egpyZ0lYdjlGOThMWnVh
Nk4rT1B3RVdEeXJGcTFTTlo4Z3ZBRWNkb2Q2SHVncG1OT1dsczA1VW9jc241TzY2Y3BpVXN4UTIw
TlNVdGNsCjEyVkxGck9aVldMcGR0aVoweDF1SEtFNVF2ZkVwMHBsay9xdjhSR3cvYkJTK2Ztc1V0
bCtUaHJXZ1pmNmI4QzgvVVhBZUl1SkFBQWcKQUVsRVFWUjRBZTNkM1k5Y2Qza0g4Ti91enZvMXRo
UG5oUkFnT0cyS0VsQ0FRQVZJQ0lvRXZZQWJMaUdJUzI3Z2duOGhzY1NmZ01RTgpsMGlBdUFHcEtn
Z0tvcWdTYXRNcUtDbWxTU0VsUUVyejVyd250bmZ0N2U4NXlURzdqc2ZPZE02YXgwOCtJNjFuZCth
Y004L3plWFptCnozZlBHZS9LVnI4MEZ3SUVDQkFnUUlBQUFRSUVDRndHZ2RYTDhCZ2VnZ0FCQWdR
SUVDQkFnQUFCQW9PQUFPSWJnUUFCQWdRSUVDQkEKZ0FDQnl5WWdnRncyYWc5RWdBQUJBZ1FJRUNC
QWdJQUE0bnVBQUFFQ0JBZ1FJRUNBQUlITEppQ0FYRFpxRDBTQUFBRUNCQWdRSUVDQQpnQURpZTRB
QUFRSUVDQkFnUUlBQWdjc21JSUJjTm1vUFJJQUFBUUlFQ0JBZ1FJREE3RklFSzhkWExyV0kreStq
d05iZC9tekxaZVQyClVBUUlFQ0JBZ0FBQkFoTUxPQUl5TWFqTkVTQkFnQUFCQWdRSUVDQXdYMEFB
bVcvakhnSUVDQkFnUUlBQUFRSUVKaFlRUUNZR3RUa0MKQkFnUUlFQ0FBQUVDQk9ZTENDRHpiZHhE
Z0FBQkFnUUlFQ0JBZ01ERUFnTEl4S0EyUjRBQUFRSUVDQkFnUUlEQWZBRUJaTDZOZXdnUQpJRUNB
QUFFQ0JBZ1FtRmhBQUprWTFPWUlFQ0JBZ0FBQkFnUUlFSmd2SUlETXQzRVBBUUlFQ0JBZ1FJQUFB
UUlUQ3dnZ0U0UGFIQUVDCkJBZ1FJRUNBQUFFQzh3VUVrUGsyN2lGQWdBQUJBZ1FJRUNCQVlHSUJB
V1JpVUpzalFJQUFBUUlFQ0JBZ1FHQytnQUF5MzhZOUJBZ1EKSUVDQUFBRUNCQWhNTENDQVRBeHFj
d1FJRUNCQWdBQUJBZ1FJekJjUVFPYmJ1SWNBQVFJRUNCQWdRSUFBZ1lrRkJKQ0pRVzJPQUFFQwpC
QWdRSUVDQUFJSDVBZ0xJZkJ2M0VDQkFnQUFCQWdRSUVDQXdzWUFBTWpHb3pSRWdRSUFBQVFJRUNC
QWdNRjlBQUpsdjR4NENCQWdRCklFQ0FBQUVDQkNZV0VFQW1CclU1QWdRSUVDQkFnQUFCQWdUbUN3
Z2c4MjNjUTRBQUFRSUVDQkFnUUlEQXhBSUN5TVNnTmtlQUFBRUMKQkFnUUlFQ0F3SHdCQVdTK2pY
c0lFQ0JBZ0FBQkFnUUlFSmhZUUFDWkdOVG1DQkFnUUlBQUFRSUVDQkNZTHlDQXpMZHhEd0VDQkFn
UQpJRUNBQUFFQ0V3c0lJQk9EMmh3QkFnUUlFQ0JBZ0FBQkF2TUZCSkQ1TnU0aFFJQUFBUUlFQ0JB
Z1FHQmlBUUZrWWxDYkkwQ0FBQUVDCkJBZ1FJRUJndm9BQU10L0dQUVFJRUNCQWdBQUJBZ1FJVEN3
Z2dFd01hbk1FQ0JBZ1FJQUFBUUlFQ013WEVFRG0yN2lIQUFFQ0JBZ1EKSUVDQUFJR0pCUVNRaVVG
dGpnQUJBZ1FJRUNCQWdBQ0IrUUlDeUh3Yjl4QWdRSUFBQVFJRUNCQWdNTEdBQURJeHFNMFJJRUNB
QUFFQwpCQWdRSURCZlFBQ1piK01lQWdRSUVDQkFnQUFCQWdRbUZoQkFKZ2ExT1FJRUNCQWdRSUFB
QVFJRTVnc0lJUE50M0VPQUFBRUNCQWdRCklFQ0F3TVFDQXNqRW9EWkhnQUFCQWdRSUVDQkFnTUI4
QVFGa3ZvMTdDQkFnUUlBQUFRSUVDQkNZV0VBQW1SalU1Z2dRSUVDQUFBRUMKQkFnUW1DOGdnTXkz
Y1E4QkFnUUlFQ0JBZ0FBQkFoTUxDQ0FUZzlvY0FRSUVDQkFnUUlBQUFRTHpCUVNRK1RidUlVQ0FB
QUVDQkFnUQpJRUJnWWdFQlpHSlFteU5BZ0FBQkFnUUlFQ0JBWUw2QUFETGZ4ajBFQ0JBZ1FJQUFB
UUlFQ0V3c0lJQk1ER3B6QkFnUUlFQ0FBQUVDCkJBak1GeEJBNXR1NGh3QUJBZ1FJRUNCQWdBQ0Jp
UVVFa0lsQmJZNEFBUUlFQ0JBZ1FJQUFnZmtDQXNoOG01VDNIRDkrUEdWZGlpSkEKZ0FBQkFnUUlF
Q0R3ZWdRRWtOZWpaQmtDQkFnUUlFQ0FBQUVDQkNZUkVFQW1ZYlFSQWdRSUVDQkFnQUFCQWdSZWo0
QUE4bnFVTEVPQQpBQUVDQkFnUUlFQ0F3Q1FDSzF2OWNyRXRyUnhmdWRqZDdydk1BbHQzWDNSY2w3
a2FEMGVBQUFFQ0JBZ1FJRUJnTVFGSFFCYnpzalFCCkFnUUlFQ0JBZ0FBQkFrc0lDQ0JMNEZtVkFB
RUNCQWdRSUVDQUFJSEZCQVNReGJ3c1RZQUFBUUlFQ0JBZ1FJREFFZ0lDeUJKNFZpVkEKZ0FBQkFn
UUlFQ0JBWURFQkFXUXhMMHNUSUVDQUFBRUNCQWdRSUxDRWdBQ3lCSjVWQ1JBZ1FJQUFBUUlFQ0JC
WVRFQUFXY3pMMGdRSQpFQ0JBZ0FBQkFnUUlMQ0VnZ0N5QloxVUNCQWdRSUVDQUFBRUNCQllURUVB
Vzg3STBBUUlFQ0JBZ1FJQUFBUUpMQ0FnZ1MrQlpsUUFCCkFnUUlFQ0JBZ0FDQnhRUUVrTVc4TEUy
QUFBRUNCQWdRSUVDQXdCSUNBc2dTZUZZbFFJQUFBUUlFQ0JBZ1FHQXhBUUZrTVM5TEV5QkEKZ0FB
QkFnUUlFQ0N3aElBQXNnU2VWUWtRSUVDQUFBRUNCQWdRV0V4QUFGbk15OUlFQ0JBZ1FJQUFBUUlF
Q0N3aElJQXNnV2RWQWdRSQpFQ0JBZ0FBQkFnUVdFeEJBRnZPeU5BRUNCQWdRSUVDQUFBRUNTd2dJ
SUV2Z1daVUFBUUlFQ0JBZ1FJQUFnY1VFQkpERnZDeE5nQUFCCkFnUUlFQ0JBZ01BU0FnTElFbmhX
SlVDQUFBRUNCQWdRSUVCZ01RRUJaREV2U3hNZ1FJQUFBUUlFQ0JBZ3NJU0FBTElFbmxVSkVDQkEK
Z0FBQkFnUUlFRmhNUUFCWnpNdlNCQWdRSUVDQUFBRUNCQWdzSVNDQUxJRm5WUUlFQ0JBZ1FJQUFB
UUlFRmhNUVFCYnpzalFCQWdRSQpFQ0JBZ0FBQkFrc0lDQ0JMNEZtVkFBRUNCQWdRSUVDQUFJSEZC
QVNReGJ3c1RZQUFBUUlFQ0JBZ1FJREFFZ0lDeUJKNFZpVkFnQUFCCkFnUUlFQ0JBWURFQkFXUXhM
MHNUSUVDQUFBRUNCQWdRSUxDRWdBQ3lCSjVWQ1JBZ1FJQUFBUUlFQ0JCWVRFQUFXY3pMMGdRSUVD
QkEKZ0FBQkFnUUlMQ0VnZ0N5QloxVUNCQWdRSUVDQUFBRUNCQllURUVBVzg3STBBUUlFQ0JBZ1FJ
QUFBUUpMQ0FnZ1MrQlpsUUFCQWdRSQpFQ0JBZ0FDQnhRUUVrTVc4TEUyQUFBRUNCQWdRSUVDQXdC
SUNBc2dTZUgrT1ZZOGZQLzduZUZpUFNZQUFBUUlFQ0JBZ1FHQVNBUUZrCkVrWWJJVUNBQUFFQ0JB
Z1FJRURnOVFnSUlLOUh5VElFQ0JBZ1FJQUFBUUlFQ0V3aUlJQk13bWdqQkFnUUlFQ0FBQUVDQkFp
OEhvR1YKclg2NTJJSXJ4MWN1ZHJmN0xyUEExdDBYSGRkbHJzYkRFU0JBZ0FBQkFnUUlFRmhNd0JH
UXhid3NUWUFBQVFJRUNCQWdRSURBRWdJQwp5Qko0VmlWQWdBQUJBZ1FJRUNCQVlERUJBV1F4TDBz
VElFQ0FBQUVDQkFnUUlMQ0VnQUN5Qko1VkNSQWdRSUFBQVFJRUNCQllURUFBCldjekwwZ1FJRUNC
QWdBQUJBZ1FJTENFZ2dDeUJaMVVDQkFnUUlFQ0FBQUVDQkJZVEVFQVc4N0kwQVFJRUNCQWdRSUFB
QVFKTENGenkKNzRBc3NXMnJFaUJBZ0FBQkFnUUlFQ0JBWUllQUl5QTdPSHhCZ0FBQkFnUUlFQ0JB
Z01CdUNnZ2d1NmxyMndRSUVDQkFnQUFCQWdRSQo3QkFRUUhadytJSUFBUUlFQ0JBZ1FJQUFnZDBV
RUVCMlU5ZTJDUkFnUUlBQUFRSUVDQkRZSVNDQTdPRHdCUUVDQkFnUUlFQ0FBQUVDCnV5a2dnT3lt
cm0wVElFQ0FBQUVDQkFnUUlMQkRRQURad2VFTEFnUUlFQ0JBZ0FBQkFnUjJVMEFBMlUxZDJ5WkFn
QUFCQWdRSUVDQkEKWUllQUFMS0R3eGNFQ0JBZ1FJQUFBUUlFQ095bWdBQ3ltN3EyVFlBQUFRSUVD
QkFnUUlEQURnRUJaQWVITHdnUUlFQ0FBQUVDQkFnUQoyRTBCQVdRM2RXMmJBQUVDQkFnUUlFQ0FB
SUVkQWdMSURnNWZFQ0JBZ0FBQkFnUUlFQ0N3bXdJQ3lHN3EyallCQWdRSUVDQkFnQUFCCkFqc0VC
SkFkSEw0Z1FJQUFBUUlFQ0JBZ1FHQTNCUVNRM2RTMWJRSUVDQkFnUUlBQUFRSUVkZ2dJSURzNGZF
R0FBQUVDQkFnUUlFQ0EKd0c0S3pDNjE4WlhqSzVkYTVFLzMzOU0vdmZ0UFg4NzlMSlk3UHZmZUM5
OFI2OFRsVXR1L1oxaHE4ZTNIYXVPNjhmbkZIbWY3Y292MgpFZHVPeXozRHYzLzZaOTdqbmIvYy8v
Znh4a2M2ZjN1WDYzSGo4YzkvN0xqdFFvOS9vZVdXN1RzZUt5NzNEUCsrOXAvejY1aTMzRlIxClJB
WHpIaVB1MjE3UHhaYWJzcDU0M0lzOVZ0dy8xbldwNWFhdUt4NzcxY3M5RnlueTdydkhBc2VsWFJN
Z1FJQUFBUUxaQkJ3QnlUWVIKOVJBZ1FJQUFBUUlFQ0JBb0xDQ0FGQjZ1MWdnUUlFQ0FBQUVDQkFo
a0V4QkFzazFFUFFRSUVDQkFnQUFCQWdRS0N3Z2doWWVyTlFJRQpDQkFnUUlBQUFRTFpCQVNRYkJO
UkR3RUNCQWdRSUVDQUFJSENBZ0pJNGVGcWpRQUJBZ1FJRUNCQWdFQTJBUUVrMjBUVVE0QUFBUUlF
CkNCQWdRS0N3Z0FCU2VMaGFJMENBQUFFQ0JBZ1FJSkJOUUFESk5oSDFFQ0JBZ0FBQkFnUUlFQ2dz
SUlBVUhxN1dDQkFnUUlBQUFRSUUKQ0dRVEVFQ3lUVVE5QkFnUUlFQ0FBQUVDQkFvTENDQ0ZoNnMx
QWdRSUVDQkFnQUFCQXRrRUJKQnNFMUVQQVFJRUNCQWdRSUFBZ2NJQwpBa2poNFdxTkFBRUNCQWdR
SUVDQVFEWUJBU1RiUk5SRGdBQUJBZ1FJRUNCQW9MQ0FBRko0dUZvalFJQUFBUUlFQ0JBZ2tFMUFB
TWsyCkVmVVFJRUNBQUFFQ0JBZ1FLQ3dnZ0JRZXJ0WUlFQ0JBZ0FBQkFnUUlaQk1RUUxKTlJEMEVD
QkFnUUlBQUFRSUVDZ3VzYlBWTDRmNjAKUm9BQUFRSUVDQkFnUUlCQUlnRkhRQklOUXlrRUNCQWdR
SUFBQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQ2lRUUVrRVREVUFvQgpBZ1FJRUNCQWdBQ0I2
Z0lDU1BVSjY0OEFBUUlFQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FBQUVDQkFnUUlFQ2d1b0FBVW4zQytp
TkFnQUFCCkFnUUlFQ0NRU0VBQVNUUU1wUkFnUUlBQUFRSUVDQkNvTGlDQVZKK3cvZ2dRSUVDQUFB
RUNCQWdrRWhCQUVnMURLUVFJRUNCQWdBQUIKQWdTcUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSkJB
U1FSTU5RQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQkFnUUlFQ0JBZ0VBaQpBUUVrMFRDVVFv
QUFBUUlFQ0JBZ1FLQzZnQUJTZmNMNkkwQ0FBQUVDQkFnUUlKQklRQUJKTkF5bEVDQkFnQUFCQWdR
SUVLZ3VJSUJVCm43RCtDQkFnUUlBQUFRSUVDQ1FTRUVBU0RVTXBCQWdRSUVDQUFBRUNCS29MQ0NE
Vko2dy9BZ1FJRUNCQWdBQUJBb2tFQkpCRXcxQUsKQVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFF
Q0JBZ1FJRUNBUUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xxQUFGSjl3dm9qUUlBQQpBUUlFQ0JB
Z2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFDNGdnRlNmc1A0SUVDQkFnQUFCQWdRSUpCSVFRQklO
UXlrRUNCQWdRSUFBCkFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQUFBRUNpUVFFa0VURFVBb0JBZ1FJ
RUNCQWdBQ0I2Z0lDU1BVSjY0OEFBUUlFQ0JBZ1FJQkEKSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNn
dW9BQVVuM0MraU5BZ0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFnUUlBQUFRSUVDQkNvTGlDQQpWSit3
L2dnUUlFQ0FBQUVDQkFna0VoQkFFZzFES1FRSUVDQkFnQUFCQWdTcUN3Z2cxU2VzUHdJRUNCQWdR
SUFBQVFLSkJBU1FSTU5RCkNnRUNCQWdRSUVDQUFJSHFBZ0pJOVFucmp3QUJBZ1FJRUNCQWdFQWlB
UUVrMFRDVVFvQUFBUUlFQ0JBZ1FLQzZnQUJTZmNMNkkwQ0EKQUFFQ0JBZ1FJSkJJUUFCSk5BeWxF
Q0JBZ0FBQkFnUUlFS2d1SUlCVW43RCtDQkFnUUlBQUFRSUVDQ1FTRUVBU0RVTXBCQWdRSUVDQQpB
QUVDQktvTENDRFZKNncvQWdRSUVDQkFnQUFCQW9rRUJKQkV3MUFLQVFJRUNCQWdRSUFBZ2VvQ0Fr
ajFDZXVQQUFFQ0JBZ1FJRUNBClFDSUJBU1RSTUpSQ2dBQUJBZ1FJRUNCQW9McUFBRko5d3ZvalFJ
QUFBUUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFDNGcKZ0ZTZnNQNElFQ0JBZ0FBQkFn
UUlKQklRUUJJTlF5a0VDQkFnUUlBQUFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQUFBRUNpUVFFa0VU
RApVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2NDhBQVFJRUNCQWdRSUJBSWdFQkpORXdsRUtBQUFF
Q0JBZ1FJRUNndW9BQVVuM0MraU5BCmdBQUJBZ1FJRUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFQ0JD
b0xpQ0FWSit3L2dnUUlFQ0FBQUVDQkFna0VoQkFFZzFES1FRSUVDQkEKZ0FBQkFnU3FDd2dnMVNl
c1B3SUVDQkFnUUlBQUFRS0pCQVNRUk1OUUNnRUNCQWdRSUVDQUFJSHFBZ0pJOVFucmp3QUJBZ1FJ
RUNCQQpnRUFpQVFFazBUQ1VRb0FBQVFJRUNCQWdRS0M2Z0FCU2ZjTDZJMENBQUFFQ0JBZ1FJSkJJ
UUFCSk5BeWxFQ0JBZ0FBQkFnUUlFS2d1CklJQlVuN0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1w
QkFnUUlFQ0FBQUVDQktvTENDRFZKNncvQWdRSUVDQkFnQUFCQW9rRUJKQkUKdzFBS0FRSUVDQkFn
UUlBQWdlb0NBa2oxQ2V1UEFBRUNCQWdRSUVDQVFDSUJBU1RSTUpSQ2dBQUJBZ1FJRUNCQW9McUFB
Rko5d3ZvagpRSUFBQVFJRUNCQWdrRWhBQUVrMERLVVFJRUNBQUFFQ0JBZ1FxQzRnZ0ZTZnNQNElF
Q0JBZ0FBQkFnUUlKQklRUUJJTlF5a0VDQkFnClFJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FB
QUVDaVFRRWtFVERVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2NDhBQVFJRUNCQWcKUUlCQUlnRUJK
TkV3bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjNDK2lOQWdBQUJBZ1FJRUNDUVNFQUFTVFFNcFJBZ1FJ
QUFBUUlFQ0JDbwpMaUNBVkordy9nZ1FJRUNBQUFFQ0JBZ2tFaEJBRWcxREtRUUlFQ0JBZ0FBQkFn
U3FDd2dnMVNlc1B3SUVDQkFnUUlBQUFRS0pCQVNRClJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlR
bnJqd0FCQWdRSUVDQkFnRUFpQVFFazBUQ1VRb0FBQVFJRUNCQWdRS0M2Z0FCU2ZjTDYKSTBDQUFB
RUNCQWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJBZ1FJRUtndUlJQlVuN0QrQ0JBZ1FJQUFBUUlFQ0NR
U0VFQVNEVU1wQkFnUQpJRUNBQUFFQ0JLb0xDQ0RWSjZ3L0FnUUlFQ0JBZ0FBQkFva0VCSkJFdzFB
S0FRSUVDQkFnUUlBQWdlb0NBa2oxQ2V1UEFBRUNCQWdRCklFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdR
SUVDQkFvTHFBQUZKOXd2b2pRSUFBQVFJRUNCQWdrRWhBQUVrMERLVVFJRUNBQUFFQ0JBZ1EKcUM0
Z2dGU2ZzUDRJRUNCQWdBQUJBZ1FJSkJJUVFCSU5ReWtFQ0JBZ1FJQUFBUUlFcWdzSUlOVW5yRDhD
QkFnUUlFQ0FBQUVDaVFRRQprRVREVUFvQkFnUUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUVDQkFn
UUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjNDCitpTkFnQUFCQWdRSUVDQ1FTRUFB
U1RRTXBSQWdRSUFBQVFJRUNCQ29MaUNBVkordy9nZ1FJRUNBQUFFQ0JBZ2tFaEJBRWcxREtRUUkK
RUNCQWdBQUJBZ1NxQ3dnZzFTZXNQd0lFQ0JBZ1FJQUFBUUtKQkFTUVJNTlFDZ0VDQkFnUUlFQ0FB
SUhxQWdKSTlRbnJqd0FCQWdRSQpFQ0JBZ0VBaUFRRWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlNm
Y0w2STBDQUFBRUNCQWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJBZ1FJCkVLZ3VJSUJVbjdEK0NCQWdR
SUFBQVFJRUNDUVNFRUFTRFVNcEJBZ1FJRUNBQUFFQ0JLb0xDQ0RWSjZ3L0FnUUlFQ0JBZ0FBQkFv
a0UKQkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9DQWtqMUNldVBBQUVDQkFnUUlFQ0FRQ0lCQVNUUk1K
UkNnQUFCQWdRSUVDQkFvTHFBQUZKOQp3dm9qUUlBQUFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFB
RUNCQWdRcUM0Z2dGU2ZzUDRJRUNCQWdBQUJBZ1FJSkJJUVFCSU5ReWtFCkNCQWdRSUFBQVFJRXFn
c0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQ2lRUUVrRVREVUFvQkFnUUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4
QUFRSUUKQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FBQUVDQkFnUUlFQ2d1b0FBVW4zQytpTkFnQUFCQWdR
SUVDQ1FTRUFBU1RRTXBSQWdRSUFBQVFJRQpDQkNvTGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhC
QUVnMURLUVFJRUNCQWdBQUJBZ1NxQ3dnZzFTZXNQd0lFQ0JBZ1FJQUFBUUtKCkJBU1FSTU5RQ2dF
Q0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQkFnUUlFQ0JBZ0VBaUFRRWswVENVUW9BQUFRSUVDQkFn
UUtDNmdBQlMKZmNMNkkwQ0FBQUVDQkFnUUlKQklRQUJKTkF5bEVDQkFnQUFCQWdRSUVLZ3VJSUJV
bjdEK0NCQWdRSUFBQVFJRUNDUVNFRUFTRFVNcApCQWdRSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJ
RUNCQWdBQUJBb2tFQkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9DQWtqMUNldVBBQUVDCkJBZ1FJRUNB
UUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xxQUFGSjl3dm9qUUlBQUFRSUVDQkFna0VoQUFFazBE
S1VRSUVDQUFBRUMKQkFnUXFDNGdnRlNmc1A0SUVDQkFnQUFCQWdRSUpCSVFRQklOUXlrRUNCQWdR
SUFBQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQwppUVFFa0VURFVBb0JBZ1FJRUNCQWdBQ0I2
Z0lDU1BVSjY0OEFBUUlFQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FBQUVDQkFnUUlFQ2d1b0FBClVuM0Mr
aU5BZ0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFnUUlBQUFRSUVDQkNvTGlDQVZKK3cvZ2dRSUVDQUFB
RUNCQWdrRWhCQUVnMUQKS1FRSUVDQkFnQUFCQWdTcUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSkJB
U1FSTU5RQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQgpBZ1FJRUNCQWdFQWlBUUVrMFRDVVFv
QUFBUUlFQ0JBZ1FLQzZnQUJTZmNMNkkwQ0FBQUVDQkFnUUlKQklRQUJKTkF5bEVDQkFnQUFCCkFn
UUlFS2d1SUlCVW43RCtDQkFnUUlBQUFRSUVDQ1FTRUVBU0RVTXBCQWdRSUVDQUFBRUNCS29MQ0NE
Vko2dy9BZ1FJRUNCQWdBQUIKQW9rRUJKQkV3MUFLQVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFF
Q0JBZ1FJRUNBUUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xxQQpBRko5d3ZvalFJQUFBUUlFQ0JB
Z2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFDNGdnRlNmc1A0SUVDQkFnQUFCQWdRSUpCSVFRQklO
ClF5a0VDQkFnUUlBQUFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQUFBRUNpUVFFa0VURFVBb0JBZ1FJ
RUNCQWdBQ0I2Z0lDU1BVSjY0OEEKQVFJRUNCQWdRSUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNn
dW9BQVVuM0MraU5BZ0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFnUUlBQQpBUUlFQ0JDb0xpQ0FWSit3
L2dnUUlFQ0FBQUVDQkFna0VoQkFFZzFES1FRSUVDQkFnQUFCQWdTcUN3Z2cxU2VzUHdJRUNCQWdR
SUFBCkFRS0pCQVNRUk1OUUNnRUNCQWdRSUVDQUFJSHFBZ0pJOVFucmp3QUJBZ1FJRUNCQWdFQWlB
UUVrMFRDVVFvQUFBUUlFQ0JBZ1FLQzYKZ0FCU2ZjTDZJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWxF
Q0JBZ0FBQkFnUUlFS2d1SUlCVW43RCtDQkFnUUlBQUFRSUVDQ1FTRUVBUwpEVU1wQkFnUUlFQ0FB
QUVDQktvTENDRFZKNncvQWdRSUVDQkFnQUFCQW9rRUJKQkV3MUFLQVFJRUNCQWdRSUFBZ2VvQ0Fr
ajFDZXVQCkFBRUNCQWdRSUVDQVFDSUJBU1RSTUpSQ2dBQUJBZ1FJRUNCQW9McUFBRko5d3ZvalFJ
QUFBUUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0EKQUFFQ0JBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFn
UUlKQklRUUJJTlF5a0VDQkFnUUlBQUFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQQpBQUVDaVFRRWtF
VERVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2NDhBQVFJRUNCQWdRSUJBSWdFQkpORXdsRUtBQUFF
Q0JBZ1FJRUNnCnVvQUFVbjNDK2lOQWdBQUJBZ1FJRUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFQ0JD
b0xpQ0FWSit3L2dnUUlFQ0FBQUVDQkFna0VoQkEKRWcxREtRUUlFQ0JBZ0FBQkFnU3FDd2dnMVNl
c1B3SUVDQkFnUUlBQUFRS0pCQVNRUk1OUUNnRUNCQWdRSUVDQUFJSHFBZ0pJOVFucgpqd0FCQWdR
SUVDQkFnRUFpQVFFazBUQ1VRb0FBQVFJRUNCQWdRS0M2Z0FCU2ZjTDZJMENBQUFFQ0JBZ1FJSkJJ
UUFCSk5BeWxFQ0JBCmdBQUJBZ1FJRUtndUlJQlVuN0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1w
QkFnUUlFQ0FBQUVDQktvTENDRFZKNncvQWdRSUVDQkEKZ0FBQkFva0VCSkJFdzFBS0FRSUVDQkFn
UUlBQWdlb0NBa2oxQ2V1UEFBRUNCQWdRSUVDQVFDSUJBU1RSTUpSQ2dBQUJBZ1FJRUNCQQpvTHFB
QUZKOXd2b2pRSUFBQVFJRUNCQWdrRWhBQUVrMERLVVFJRUNBQUFFQ0JBZ1FxQzRnZ0ZTZnNQNElF
Q0JBZ0FBQkFnUUlKQklRClFCSU5ReWtFQ0JBZ1FJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FB
QUVDaVFRRWtFVERVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUoKNjQ4QUFRSUVDQkFnUUlCQUlnRUJK
TkV3bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjNDK2lOQWdBQUJBZ1FJRUNDUVNFQUFTVFFNcFJBZwpR
SUFBQVFJRUNCQ29MaUNBVkordy9nZ1FJRUNBQUFFQ0JBZ2tFaEJBRWcxREtRUUlFQ0JBZ0FBQkFn
U3FDd2dnMVNlc1B3SUVDQkFnClFJQUFBUUtKQkFTUVJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlR
bnJqd0FCQWdRSUVDQkFnRUFpQVFFazBUQ1VRb0FBQVFJRUNCQWcKUUtDNmdBQlNmY0w2STBDQUFB
RUNCQWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJBZ1FJRUtndUlJQlVuN0QrQ0JBZ1FJQUFBUUlFQ0NR
UwpFRUFTRFVNcEJBZ1FJRUNBQUFFQ0JLb0xDQ0RWSjZ3L0FnUUlFQ0JBZ0FBQkFva0VCSkJFdzFB
S0FRSUVDQkFnUUlBQWdlb0NBa2oxCkNldVBBQUVDQkFnUUlFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdR
SUVDQkFvTHFBQUZKOXd2b2pRSUFBQVFJRUNCQWdrRWhBQUVrMERLVVEKSUVDQUFBRUNCQWdRcUM0
Z2dGU2ZzUDRJRUNCQWdBQUJBZ1FJSkJJUVFCSU5ReWtFQ0JBZ1FJQUFBUUlFcWdzSUlOVW5yRDhD
QkFnUQpJRUNBQUFFQ2lRUUVrRVREVUFvQkFnUUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUVDQkFn
UUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRCklFQ2d1b0FBVW4zQytpTkFnQUFCQWdRSUVDQ1FTRUFB
U1RRTXBSQWdRSUFBQVFJRUNCQ29MaUNBVkordy9nZ1FJRUNBQUFFQ0JBZ2sKRWhCQUVnMURLUVFJ
RUNCQWdBQUJBZ1NxQ3dnZzFTZXNQd0lFQ0JBZ1FJQUFBUUtKQkFTUVJNTlFDZ0VDQkFnUUlFQ0FB
SUhxQWdKSQo5UW5yandBQkFnUUlFQ0JBZ0VBaUFRRWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlNm
Y0w2STBDQUFBRUNCQWdRSUpCSVFBQkpOQXlsCkVDQkFnQUFCQWdRSUVLZ3VJSUJVbjdEK0NCQWdR
SUFBQVFJRUNDUVNFRUFTRFVNcEJBZ1FJRUNBQUFFQ0JLb0xDQ0RWSjZ3L0FnUUkKRUNCQWdBQUJB
b2tFQkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9DQWtqMUNldVBBQUVDQkFnUUlFQ0FRQ0lCQVNUUk1K
UkNnQUFCQWdRSQpFQ0JBb0xxQUFGSjl3dm9qUUlBQUFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFB
RUNCQWdRcUM0Z2dGU2ZzUDRJRUNCQWdBQUJBZ1FJCkpCSVFRQklOUXlrRUNCQWdRSUFBQVFJRXFn
c0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQ2lRUUVrRVREVUFvQkFnUUlFQ0JBZ0FDQjZnSUMKU1BVSjY0
OEFBUUlFQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FBQUVDQkFnUUlFQ2d1b0FBVW4zQytpTkFnQUFCQWdR
SUVDQ1FTRUFBU1RRTQpwUkFnUUlBQUFRSUVDQkNvTGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhC
QUVnMURLUVFJRUNCQWdBQUJBZ1NxQ3dnZzFTZXNQd0lFCkNCQWdRSUFBQVFLSkJBU1FSTU5RQ2dF
Q0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQkFnUUlFQ0JBZ0VBaUFRRWswVENVUW9BQUFRSUUKQ0JB
Z1FLQzZnQUJTZmNMNkkwQ0FBQUVDQkFnUUlKQklRQUJKTkF5bEVDQkFnQUFCQWdRSUVLZ3VJSUJV
bjdEK0NCQWdRSUFBQVFJRQpDQ1FTRUVBU0RVTXBCQWdRSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJ
RUNCQWdBQUJBb2tFQkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9DCkFrajFDZXVQQUFFQ0JBZ1FJRUNB
UUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xxQUFGSjl3dm9qUUlBQUFVNjR5NjRBQUJkOVNVUkIK
VkFJRUNCQWdrRWhBQUVrMERLVVFJRUNBQUFFQ0JBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUlK
QklRUUJJTlF5a0VDQkFnUUlBQQpBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVDaVFRRWtFVERV
QW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2NDhBQVFJRUNCQWdRSUJBCklnRUJKTkV3bEVLQUFBRUNC
QWdRSUVDZ3VvQUFVbjNDK2lOQWdBQUJBZ1FJRUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFQ0JDb0xp
Q0EKVkordy9nZ1FJRUNBQUFFQ0JBZ2tFaEJBRWcxREtRUUlFQ0JBZ0FBQkFnU3FDd2dnMVNlc1B3
SUVDQkFnUUlBQUFRS0pCQVNRUk1OUQpDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlRbnJqd0FCQWdRSUVD
QkFnRUFpQVFFazBUQ1VRb0FBQVFJRUNCQWdRS0M2Z0FCU2ZjTDZJMENBCkFBRUNCQWdRSUpCSVFB
QkpOQXlsRUNCQWdBQUJBZ1FJRUtndUlJQlVuN0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1wQkFn
UUlFQ0EKQUFFQ0JLb0xDQ0RWSjZ3L0FnUUlFQ0JBZ0FBQkFva0VCSkJFdzFBS0FRSUVDQkFnUUlB
QWdlb0NBa2oxQ2V1UEFBRUNCQWdRSUVDQQpRQ0lCQVNUUk1KUkNnQUFCQWdRSUVDQkFvTHFBQUZK
OXd2b2pRSUFBQVFJRUNCQWdrRWhBQUVrMERLVVFJRUNBQUFFQ0JBZ1FxQzRnCmdGU2ZzUDRJRUNC
QWdBQUJBZ1FJSkJJUVFCSU5ReWtFQ0JBZ1FJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVD
aVFRRWtFVEQKVUFvQkFnUUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUVDQkFnUUlCQUlnRUJKTkV3
bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjNDK2lOQQpnQUFCQWdRSUVDQ1FTRUFBU1RRTXBSQWdRSUFB
QVFJRUNCQ29MaUNBVkordy9nZ1FJRUNBQUFFQ0JBZ2tFaEJBRWcxREtRUUlFQ0JBCmdBQUJBZ1Nx
Q3dnZzFTZXNQd0lFQ0JBZ1FJQUFBUUtKQkFTUVJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlRbnJq
d0FCQWdRSUVDQkEKZ0VBaUFRRWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlNmY0w2STBDQUFBRUNC
QWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJBZ1FJRUtndQpJSUJVbjdEK0NCQWdRSUFBQVFJRUNDUVNF
RUFTRFVNcEJBZ1FJRUNBQUFFQ0JLb0xDQ0RWSjZ3L0FnUUlFQ0JBZ0FBQkFva0VCSkJFCncxQUtB
UUlFQ0JBZ1FJQUFnZW9DQWtqMUNldVBBQUVDQkFnUUlFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdRSUVD
QkFvTHFBQUZKOXd2b2oKUUlBQUFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFBRUNCQWdRcUM0Z2dG
U2ZzUDRJRUNCQWdBQUJBZ1FJSkJJUVFCSU5ReWtFQ0JBZwpRSUFBQVFJRXFnc0lJTlVuckQ4Q0JB
Z1FJRUNBQUFFQ2lRUUVrRVREVUFvQkFnUUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUVDQkFnClFJ
QkFJZ0VCSk5Fd2xFS0FBQUVDQkFnUUlFQ2d1b0FBVW4zQytpTkFnQUFCQWdRSUVDQ1FTRUFBU1RR
TXBSQWdRSUFBQVFJRUNCQ28KTGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhCQUVnMURLUVFJRUNC
QWdBQUJBZ1NxQ3dnZzFTZXNQd0lFQ0JBZ1FJQUFBUUtKQkFTUQpSTU5RQ2dFQ0JBZ1FJRUNBQUlI
cUFnSkk5UW5yandBQkFnUUlFQ0JBZ0VBaUFRRWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlNmY0w2
CkkwQ0FBQUVDQkFnUUlKQklRQUJKTkF5bEVDQkFnQUFCQWdRSUVLZ3VJSUJVbjdEK0NCQWdRSUFB
QVFJRUNDUVNFRUFTRFVNcEJBZ1EKSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJRUNCQWdBQUJBb2tF
QkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9DQWtqMUNldVBBQUVDQkFnUQpJRUNBUUNJQkFTVFJNSlJD
Z0FBQkFnUUlFQ0JBb0xxQUFGSjl3dm9qUUlBQUFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFBRUNC
QWdRCnFDNGdnRlNmc1A0SUVDQkFnQUFCQWdRSUpCSVFRQklOUXlrRUNCQWdRSUFBQVFJRXFnc0lJ
TlVuckQ4Q0JBZ1FJRUNBQUFFQ2lRUUUKa0VURFVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSjY0OEFB
UUlFQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FBQUVDQkFnUUlFQ2d1b0FBVW4zQworaU5BZ0FBQkFnUUlF
Q0NRU0VBQVNUUU1wUkFnUUlBQUFRSUVDQkNvTGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhCQUVn
MURLUVFJCkVDQkFnQUFCQWdTcUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSkJBU1FSTU5RQ2dFQ0JB
Z1FJRUNBQUlIcUFnSkk5UW5yandBQkFnUUkKRUNCQWdFQWlBUUVrMFRDVVFvQUFBUUlFQ0JBZ1FL
QzZnQUJTZmNMNkkwQ0FBQUVDQkFnUUlKQklRQUJKTkF5bEVDQkFnQUFCQWdRSQpFS2d1SUlCVW43
RCtDQkFnUUlBQUFRSUVDQ1FTRUVBU0RVTXBCQWdRSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJRUNC
QWdBQUJBb2tFCkJKQkV3MUFLQVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFFQ0JBZ1FJRUNBUUNJ
QkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xxQUFGSjkKd3ZvalFJQUFBUUlFQ0JBZ2tFaEFBRWswREtV
UUlFQ0FBQUVDQkFnUXFDNGdnRlNmc1A0SUVDQkFnQUFCQWdRSUpCSVFRQklOUXlrRQpDQkFnUUlB
QUFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQUFBRUNpUVFFa0VURFVBb0JBZ1FJRUNCQWdBQ0I2Z0lD
U1BVSjY0OEFBUUlFCkNCQWdRSUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNndW9BQVVuM0MraU5B
Z0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFnUUlBQUFRSUUKQ0JDb0xpQ0FWSit3L2dnUUlFQ0FBQUVD
QkFna0VoQkFFZzFES1FRSUVDQkFnQUFCQWdTcUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSgpCQVNR
Uk1OUUNnRUNCQWdRSUVDQUFJSHFBZ0pJOVFucmp3QUJBZ1FJRUNCQWdFQWlBUUVrMFRDVVFvQUFB
UUlFQ0JBZ1FLQzZnQUJTCmZjTDZJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWxFQ0JBZ0FBQkFnUUlF
S2d1SUlCVW43RCtDQkFnUUlBQUFRSUVDQ1FTRUVBU0RVTXAKQkFnUUlFQ0FBQUVDQktvTENDRFZK
NncvQWdRSUVDQkFnQUFCQW9rRUJKQkV3MUFLQVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFFQwpC
QWdRSUVDQVFDSUJBU1RSTUpSQ2dBQUJBZ1FJRUNCQW9McUFBRko5d3ZvalFJQUFBUUlFQ0JBZ2tF
aEFBRWswREtVUUlFQ0FBQUVDCkJBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUlKQklRUUJJTlF5
a0VDQkFnUUlBQUFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQUFBRUMKaVFRRWtFVERVQW9CQWdRSUVD
QkFnQUNCNmdJQ1NQVUo2NDhBQVFJRUNCQWdRSUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNndW9B
QQpVbjNDK2lOQWdBQUJBZ1FJRUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFQ0JDb0xpQ0FWSit3L2dn
UUlFQ0FBQUVDQkFna0VoQkFFZzFECktRUUlFQ0JBZ0FBQkFnU3FDd2dnMVNlc1B3SUVDQkFnUUlB
QUFRS0pCQVNRUk1OUUNnRUNCQWdRSUVDQUFJSHFBZ0pJOVFucmp3QUIKQWdRSUVDQkFnRUFpQVFF
azBUQ1VRb0FBQVFJRUNCQWdRS0M2Z0FCU2ZjTDZJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWxFQ0JB
Z0FBQgpBZ1FJRUtndUlJQlVuN0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1wQkFnUUlFQ0FBQUVD
QktvTENDRFZKNncvQWdRSUVDQkFnQUFCCkFva0VCSkJFdzFBS0FRSUVDQkFnUUlBQWdlb0NBa2ox
Q2V1UEFBRUNCQWdRSUVDQVFDSUJBU1RSTUpSQ2dBQUJBZ1FJRUNCQW9McUEKQUZKOXd2b2pRSUFB
QVFJRUNCQWdrRWhBQUVrMERLVVFJRUNBQUFFQ0JBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUlK
QklRUUJJTgpReWtFQ0JBZ1FJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVDaVFRRWtFVERV
QW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2NDhBCkFRSUVDQkFnUUlCQUlnRUJKTkV3bEVLQUFBRUNC
QWdRSUVDZ3VvQUFVbjNDK2lOQWdBQUJBZ1FJRUNDUVNHRDIzZTkrdDgxbXM3YTIKdHRiVzE5ZUgw
cmEydHRycTZtbzdlL1pzaTgvamN2cjA2WGJ5NU1senQ4WHlMZ1FJRUNCQWdBQUJBcThWaVAyb2xa
V1ZZUjhyUGg4LwpYcnVrV3doTUwzRG16SmxoSDM3OEhveDkvWEcvZnR6SGovdkd5N2kvSDEvSC9k
dS9IcGNacng5Ly9QRjJ3dzAzakYrKzVqcTJHNCsxCi9UTFdFOWVibTV0dHRyR3gwZDcrOXJjUER4
YWhJaDR3UG1MbFdPQ3h4eDVyOTkzL3UvWnYvN1hlZnZuSW52Yjd4MmZ0eGRNUlZQcUcKSTV2MERi
WHJEbTUvREo4VElFQ0FBQUVDQk41NEFtZjdqbEhzZC9YOXFLdG1HKzNtYTA2MU8vK3l0WSs5YjE5
NzIwMEhobC8weHM3ZAo5aDIvTng2U2puZERZQXdNY1IwNy83RlBIL3Z4OGZWTEw3M1VYbjc1NWZi
bU43KzVIVDE2OU54Qmh2ZytIRDhpR01RbGxoOER5THp2CjB4ZGZmTEc5NlUxdnVtQWJzWDZzRnpW
c1h6OXVqMHZjL3V0Zi83ck5vcEJiYnJsbGVMRHRDNTQ2ZGFyZGQ5OTk3ZTkrOUdENzBiOGYKYmc4
OWQxM2JlM0J2KzlEZlh0ZHVQM1pWTzNUZzFTTWdmWU96ZUtBei9XaEpmMUsxSHFaV1pxOWM5MGR1
V3l2OUFTTko5UWRkajFYTwpiSFdRYVBCTVc0a25hZitJbTYzUHovZVA1NC9YRDYrZmZuNzQrUm12
QTFmaS9zTmFIOTFtMzltSi9aMlRwODYyLy96ZEMrM245ejNWCi91UGVsOXY5anp6Zjd2clltZmJC
OXg1dGUvYnNHWFlPKzJJdUJDWVRpQjM4Y1NjL3JtTkhQejRpaE1RbHJoOTU1SkhoKysvMjIyOGYK
anN5TkR4NzcvK082NDIzajlmWnNNTjcyMUZOUERkbGgvSHE4bnJlTnVIKzhMMm82Y2VKRW0wVWlp
cVFUVDRpeGdBZ2ZEei84Y1B1SApuOTdYZnZEQTBmYWJVemUxbGV0bTdjTWZ1ckY5N0k0ajdjRGV0
UjQ2K3RaNndXZjZobnIyYVAxNTEvL3BoeG9qZ1BUcjNrcGI2L2V2CjltZGt2MnJ4UzRHdHZseVBL
ckZnLzdxdk45eTIxVTczVDZ6UHovZVA1NC9YRDYrZmZuNzQrWG1sN2orOHVsczA3TS9FNzVMZmR2
UEIKdHYvYWZlM3YvL0dQN1lGbjk3VDJzNmZhVzk5OHN0MTI2NkcyZCsvZVlkK3JMK1pDWUJLQjJM
R1BuZno0aUtNWjhYVmN4Nzc5K0JGdgpwL2psTDMvWkRoMDYxSTRkT3pZY2tSc0RScXczZm42cGd1
SXRHZVBiTmk2MTdMamR1STVMMUJEWll6Z0ZLNzZJSjBNOGNCUWNwMTM5CjRoZS9hRDkvY0xYOVp1
TnRiYVUvZ1E0ZjN0T3V1M3A5ZU1KczltZFdQTGw2bXoxUXhFdEZhNmQ2d3VoUHJ5Rm9yTTRpaXd3
dklXMjEKTHhodkY5bnE5OGZTc1c2LzZ1RWprRlphUHdPc2Y3MWlmWDYrZnp4L3ZINzBGMU92bjM1
KytQbDVaZTQvREw5a2pSUXlYRjc1NWVyUgp3K3Z0ME5IOTdkblpXbnZnNld2YkQvN2xtZlpYdHh3
ZGR0NWU3dzdjdUVYWEJDNG1NQWFRdUI3RFIxekhRWWI0WG90VHNpSTRQUHZzCnMrMVh2L3BWdStx
cXE5cU5OOTU0TGdpZkh6N2l0SzN2ZmU5NzdhNjc3bnJOdzhiYk44NWZQaGI2NWplLzJUNzk2VSsz
QXdjT25GdG4KWEM2dUk0UkU1b2oxKzlsVEsrMkZGMTRZQ29tbG4zLysrZUVqM21EeThFdHZiYXRI
K3BQbnlONTI1S3IxOXNRTHJUMzk0bFkvQXJMYQoxbnJJR0o1bi9ZREdSaitDRWNGbXMvLzZNZzVC
dHRQeEEyUzF4WmxZOGZYcTJWZlMxNWtJSVZ2OWZTYnhRUDIyVTJmaWplNzl6U2c5CmxGaWZuKzhm
engrdkgxNC8vZnp3OC9OSzNYK0lFenhXVm9jOW5PR01qOWkzZWVxRnJYYmswR3pZNzNtKzcrLzg2
eDlXaHgyd09PdGsKL01WdjdCSzVFRmhXWUhzQUdkL29QUjRCaWRPdjR2NkRCdzhPSDg4OTkxeUw5
M0hFL3YvaHc0ZlBoWkN4aGgvLytNZERtSWhUclQ3Mwp1YytOTjUrN0hyZDc3b1pYUC9uT2Q3N1Rm
dktUbnd5aDVlTWYvL2o1ZHc4MXhHTkc5cGp0MjdkdmVITktKS0pJUjFGVTNQSE1NOCswCko5Zi91
aDA2dkxkZGMyUlBEeUI3K3B2UFY5by9QOXhUeStwbVA3VXE0c2Nyd1NOT3Fvb25XcnpIWTdXLzUy
TjlUMDlhYmJPZmd0VUQKU1ArWTllUy8xc1BKNW1ZL0hOUS96dlp3RWhoeDZ0WkczUGJxa1JIcjgv
UDk0L25qOWNQcnA1OGZmbjVlaWZzUGZkZHArTVZzL0piMwp6T21Odm84VFIwRTJld0JaYnl0eEtr
Zy9IZVlQTHg1dWNacDc3RzhKSUsvWlAzWERFZ0pqQUlsd0VCL2ptOUJqbno0KzR2NzRuN0RpCit5
NzIrU01Fai92OCsvZnZIMjUvNktHSDJ0ZS8vdlVXMStNcFUrTjdTTGFYRnR1NjBPMnh6cE5QUHRt
Kyt0V3Z0aC8rOElmdEMxLzQKUW52SE85NHhiQ3VPZXNSQmpqaXlFdGxqRmdYRTRabElKSEdJWml3
dXZ0Njd2N1VqL2ZCaEhQMDRlbmhmaXdMWGU1aVl6ZnFwV0QxbwpyS3oyb3htOWlINkFwd2VKTTIz
V1h6SDI5T2ZZV2s4U2NaeGpyZjg2TTk1K0hyZXY5eWRidkRscnN5KzMyWitVWi90SEJKRFRHLzA4
CnRiNjA5Zm41L3ZIODhmcmg5ZFBQRHo4L3I5VDloOWpmV2UwN2VGdG5ldmpvdjVUZDJEalZUcDk4
dVozcXA1cXZyR3kwc3h2cjdmbCsKOWtmc3VNVytWdXh6eGY2WEM0RXBCTVlBRXRjUlFNYlRwTVln
RWJlTnAvM0ZlekFpQk1RbEFrRjgzSHZ2dmUxclgvdmFhMHA1NG9rbgpYbk5iQkpnTDNSN2hlcnpj
Zi8vOTdjdGYvbkw3NGhlLzJONy8vdmNQQVNocUdkOTNQb3RpSW9TTTExRjRGQjJGdlduMlJGdmZk
ME03CnZIOVBPM3l3QjVBREI5dSt2WDNadm55Y0toRnB2eS9lajJDOGNrUmp2Wjl6dGQ2ZlRIRzBZ
d2dlL2ZNSUtyTlhUODNxbWFNLzhmcEgKWHljT1VnNkI1UFJtMjlpeWZyd2c4ZlA5NC9uajljUHJw
NThmZm43Mi9ZWXJjUDlocmY5U3R2L1hQSDIvcU8vODlTTWdwMCt0dHBQcgovVC81T2ZsUzMvZlph
aHY3WiszcTA4LzFmYUlqd3o2WEFETHVxcnFlUWlCMjdtTWZQajVpSjM4ODhqSGVIa2RFeGpBUzc5
R0lmZjlZCkppNXgrNGMvL09GMi9mWFh0Mjk4NHh2dHQ3Lzk3WEI3L0JOSFRNNi94TG9YdW4xN29E
NTI3Rmo3L09jL2YrNEl5RmhiUEdaODd3OUgKUUdJanNWSmN4d0x4QnBGcnI3MjJYZi9rNzlxcGZY
Y003L2s0Y0dCdk85eFB3enB3OEVCLzh2UlRoZUs5SFJGQWVsVTk2UGMzbGZkZwowcitPajNnVFpm
dzJPNDQ0eG4vUnU5Yi9iRWljRmhuTGJ2YmZCTVR5dzNXRWw2MVpQMFJwZlg2K2Z6eC92SDU0L2ZU
enc4L1BLM2YvCm9lLys5UDJlV1QvVnZIOXM3RzBuWDE1dkw1M3NaNWowVTlKUDlzTWcrL2V0dFdN
cnovWDMzTDdsWEFBWmR3RDdxaTRFbGhJWWcwYnMKeDQvZlYrTnQ4VXZ1K0R6MjcrTW9SZndKampH
QXhMS3hUbHplOWE1M3RhOTg1U3Z0WnovN1dmdld0NzUxN3V5bzh3c2JEMXljZjN0awppWGh6KzJj
Lys5bjIwWTkrZERnTmJOeCtQSDdVRWN2RStrTUFHVDU1OWJ5d3NZaGJiNzIxM2ZUUVQ5dWpKeDVv
NjlkK3FPM3JQeG4zCjkvQng0S3BJUTYydi9NcFJqUGhmSCtLb1JvU0tmbVpXaXo5UkdPR2t2dzFr
T0JleWg1eCtOT1NWOTRMRVVZOSt3R000K3RIUHZCb08KVWNhNkc5Ym41L3ZIODhmcmg5ZFBQei84
L0x5Qzl4LzY3MTc3cWVtdi9JSjFzLzluUEd2cmZXZXAvOEd6TTZkUHRwZldaKzNRaXcrMApEOXh5
ZG5qVDcvYWR2NzZhQzRGSkJPSW9SMXhpWno5MjlHUG5md3doWXdDSjA2M3V1T09PYzZkZ2pjdU02
OFQxSnovNXlmYVJqM3lrCmZmdmIzNzdna1k1NE0vdUZqb0I4NmxPZmFwLzV6R2VHRUJMYkhjTkha
SXZZYnB4NkdDRmt5QjNqcVZmaitZaFJlQlQ5d1E5K3NEMzQKNElOdDg3ZjN0Wk9QOWpkUUhmMmI0
UThHOXFPSlEvaVk5ZWRWaEl2Ky9xcitCd2o3RTY0SGluNTJWbHZyS1NPQ1NEOEEwbytDOUk5Kwp2
UkxYL1prWllXTmZ2NytmNGRVMmVuQ0pRQkpIUWs1SGlMRStQOTgvbmo5ZVA3eCsrdm5oNStjVnV2
OFFmMXg1RENBYlBZREVFWkdOCmsvMC9sWWo5b01mdmIrOCs5RC90dmJlOXMxMXp6VFhEamxqc2E3
a1FtRW9nZHZESGd3aXh6ZGo1SDYvanZqanlFZjhON3cwMzNORGUKODU3M0RDRmdXT0RWZjJLWmNa
MjRLZDZLOGFVdmZXbkhiZVB5UjQ0Y09SZGd4dHZpZWx3K3RqVmU0dlB4WXp3Q01weUNGV2xwL0Jq
VApVaFFRZjJMOUU1LzRSTnY0L3ZmYkk0LzlVenR4N3lQdDlOdmUxODc4eGZ2YjFUY2ViV3Y5ZlNZ
YjhZYy8raVVlSjQ1c25PM3ZaOW5UCm4wOW5Jdm4zdmpkNjhJakFFZ1lSU3VJSkdhbmpWRjgybnBu
eEpxMVQvYmI0ZzRUVzUrZjd4L1BINjRmWFR6OC8vUHk4VXZjZmhqalIKOTJlR2ZhSytqL1QwLzU1
b1QvOTMveVh1SHg5b3QxLzFjdnZBdTkvUmJyNzU1bk4vSXlIZUZPeENZQ3FCY1NjL1FraDhiOFhP
L3ZobQo5RGoxS3Y1enFkamZ2L1BPTzRmL2luZDgzRmd2OXZ2UHZ4N3Z2OUIxSEFHNVZJRGV2cjM0
UE9xS3g0L1A0M29XeGNWSFBIaGNqNWU0Cjg1M3ZmT2Z3QVBITytFY2ZmYlM5OVB2dnRXY2YvR1o3
b2pjeWJuaDdXaHJYZFUyQUFBRUNCQWdRZUtNS3hGa2w4VCtIM25UMTFlMm0KVzI1cXg0N2QwVCtP
dGF2NzE3SGpOdTU3dlZGOTlEMjlRT3lYeHlXK3QySm5QLzVEcWZpSThCSC9hMVVjMGJqdHR0dUdJ
eUFSVHM2LwpqUHYxNTk5K29hL2pmUjRYMnNhRmxvM3R4a2ZVTklhanFIRVcveFZYL0RHU0NCemJ6
K2NhVjRnblRMeFpKUUxJaVJNbmhtYmlBY2JrCnMvMm95WVVlMkcwRUNCQWdRSUFBZ1RlS1FQeGlO
dmFONGpTVENDSHhoOTdpbEpYWWFZdmJ4aDNFTjRxSFBpK1BRT3pjYjkvUkh3TkkKUFBwYjN2S1c0
WHN3dmk5am4zK0t5eUxiT1Q5OFJQYjRQL0JVRXpvQTAxbFRBQUFBQUVsRlRrU3VRbUNDCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86374</attachid>
            <date>2011-03-21 15:16:47 -0700</date>
            <delta_ts>2011-03-21 17:24:17 -0700</delta_ts>
            <desc>removed xcode project changes</desc>
            <filename>newpatch_2.txt</filename>
            <type>text/plain</type>
            <size>57520</size>
            <attacher name="Rik Cabanier">cabanier</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgwNjY1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDMtMDkgIFJpayBDYWJh
bmllciAgPGNhYmFuaWVyQGFkb2JlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBidWcgNTYwNTI6IHBlcmNlbnRhZ2VzIGFyZSBpbmNvcnJlY3Rs
eSByb3VuZGVkIGluIFdlYktpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTYwNTIKKworICAgICAgICB0ZXN0OiBmYXN0L2Nzcy9wZXJjZW50YWdlLW5v
bi1pbnRlZ2VyLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmFwcGx5UHJvcGVydHkpOgorICAgICAg
ICAqIHBhZ2UvUHJpbnRDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlByaW50Q29udGV4
dDo6cGFnZVByb3BlcnR5KToKKyAgICAgICAgKiBwbGF0Zm9ybS9MZW5ndGguaDoKKyAgICAgICAg
KFdlYkNvcmU6Okxlbmd0aDo6TGVuZ3RoKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6b3Bl
cmF0b3IqPSk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6cGVyY2VudCk6CisgICAgICAgIChXZWJDb3JlOjpMZW5ndGg6OnNldFZh
bHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6Y2FsY1ZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6Okxlbmd0aDo6Y2FsY01pblZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0aDo6
aXNVbmRlZmluZWQpOgorICAgICAgICAoV2ViQ29yZTo6TGVuZ3RoOjppc1plcm8pOgorICAgICAg
ICAoV2ViQ29yZTo6TGVuZ3RoOjppc1Bvc2l0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6Okxlbmd0
aDo6aXNOZWdhdGl2ZSk6CisgICAgICAgICogcmVuZGVyaW5nL0F1dG9UYWJsZUxheW91dC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OnJlY2FsY0NvbHVtbik6CisgICAg
ICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lk
dGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkF1dG9UYWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxv
Z2ljYWxXaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpBdXRvVGFibGVMYXlvdXQ6OmxheW91dCk6
CisgICAgICAgICogcmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Rml4ZWRUYWJsZUxheW91dDo6Y2FsY1dpZHRoQXJyYXkpOgorICAgICAgICAoV2ViQ29y
ZTo6Rml4ZWRUYWJsZUxheW91dDo6bGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGFibGVTZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRhYmxlU2VjdGlvbjo6
YWRkQ2VsbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZVNlY3Rpb246OmxheW91dFJv
d3MpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmg6CisgICAgICAgIChX
ZWJDb3JlOjpCb3JkZXJEYXRhOjpoYXNCb3JkZXJSYWRpdXMpOgorCiAyMDExLTAzLTA5ICBKYW1l
cyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
S2VubmV0aCBSdXNzZWxsLgpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0
b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9y
LmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxl
Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUzMzIsOCArNTMzMiw4IEBAIHZvaWQgQ1NTU3R5
bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0eShpbnQKICAgICAgICAgICAgIHJhZGl1c0hlaWdodCA9
IExlbmd0aChwYWlyLT5zZWNvbmQoKS0+Z2V0RG91YmxlVmFsdWUoKSwgUGVyY2VudCk7CiAgICAg
ICAgIGVsc2UKICAgICAgICAgICAgIHJhZGl1c0hlaWdodCA9IExlbmd0aChtYXgoaW50TWluRm9y
TGVuZ3RoLCBtaW4oaW50TWF4Rm9yTGVuZ3RoLCBwYWlyLT5zZWNvbmQoKS0+Y29tcHV0ZUxlbmd0
aEludChzdHlsZSgpLCBtX3Jvb3RFbGVtZW50U3R5bGUsIHpvb21GYWN0b3IpKSksIEZpeGVkKTsK
LSAgICAgICAgaW50IHdpZHRoID0gcmFkaXVzV2lkdGgucmF3VmFsdWUoKTsKLSAgICAgICAgaW50
IGhlaWdodCA9IHJhZGl1c0hlaWdodC5yYXdWYWx1ZSgpOworICAgICAgICBpbnQgd2lkdGggPSBy
YWRpdXNXaWR0aC52YWx1ZSgpOworICAgICAgICBpbnQgaGVpZ2h0ID0gcmFkaXVzSGVpZ2h0LnZh
bHVlKCk7CiAgICAgICAgIGlmICh3aWR0aCA8IDAgfHwgaGVpZ2h0IDwgMCkKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgaWYgKHdpZHRoID09IDApCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1ByaW50Q29udGV4dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9Q
cmludENvbnRleHQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uv
UHJpbnRDb250ZXh0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgyLDE2ICsyODIsMTYgQEAgU3Ry
aW5nIFByaW50Q29udGV4dDo6cGFnZVByb3BlcnR5KEZyYW1lKgogICAgIGlmICghc3RyY21wKHBy
b3BlcnR5TmFtZSwgIm1hcmdpbi1sZWZ0IikpIHsKICAgICAgICAgaWYgKHN0eWxlLT5tYXJnaW5M
ZWZ0KCkuaXNBdXRvKCkpCiAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCJhdXRvIik7Ci0gICAg
ICAgIHJldHVybiBTdHJpbmc6Om51bWJlcihzdHlsZS0+bWFyZ2luTGVmdCgpLnJhd1ZhbHVlKCkp
OworICAgICAgICByZXR1cm4gU3RyaW5nOjpudW1iZXIoc3R5bGUtPm1hcmdpbkxlZnQoKS52YWx1
ZSgpKTsKICAgICB9CiAgICAgaWYgKCFzdHJjbXAocHJvcGVydHlOYW1lLCAibGluZS1oZWlnaHQi
KSkKLSAgICAgICAgcmV0dXJuIFN0cmluZzo6bnVtYmVyKHN0eWxlLT5saW5lSGVpZ2h0KCkucmF3
VmFsdWUoKSk7CisgICAgICAgIHJldHVybiBTdHJpbmc6Om51bWJlcihzdHlsZS0+bGluZUhlaWdo
dCgpLnZhbHVlKCkpOwogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgImZvbnQtc2l6ZSIp
KQogICAgICAgICByZXR1cm4gU3RyaW5nOjpudW1iZXIoc3R5bGUtPmZvbnREZXNjcmlwdGlvbigp
LmNvbXB1dGVkUGl4ZWxTaXplKCkpOwogICAgIGlmICghc3RyY21wKHByb3BlcnR5TmFtZSwgImZv
bnQtZmFtaWx5IikpCiAgICAgICAgIHJldHVybiBzdHlsZS0+Zm9udERlc2NyaXB0aW9uKCkuZmFt
aWx5KCkuZmFtaWx5KCkuc3RyaW5nKCk7CiAgICAgaWYgKCFzdHJjbXAocHJvcGVydHlOYW1lLCAi
c2l6ZSIpKQotICAgICAgICByZXR1cm4gbWFrZVN0cmluZyhTdHJpbmc6Om51bWJlcihzdHlsZS0+
cGFnZVNpemUoKS53aWR0aCgpLnJhd1ZhbHVlKCkpLCAnICcsIFN0cmluZzo6bnVtYmVyKHN0eWxl
LT5wYWdlU2l6ZSgpLmhlaWdodCgpLnJhd1ZhbHVlKCkpKTsKKyAgICAgICAgcmV0dXJuIG1ha2VT
dHJpbmcoU3RyaW5nOjpudW1iZXIoc3R5bGUtPnBhZ2VTaXplKCkud2lkdGgoKS52YWx1ZSgpKSwg
JyAnLCBTdHJpbmc6Om51bWJlcihzdHlsZS0+cGFnZVNpemUoKS5oZWlnaHQoKS52YWx1ZSgpKSk7
CiAKICAgICByZXR1cm4gbWFrZVN0cmluZygicGFnZVByb3BlcnR5KCkgdW5pbXBsZW1lbnRlZCBm
b3I6ICIsIHByb3BlcnR5TmFtZSk7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1h
dGlvbi9BbmltYXRpb25CYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdl
L2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAkocmV2aXNpb24gODAzODEpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBpbmxpbmUgQ29sb3IgYmxlbmRGdW5jKGNvbnN0IEFu
aW0KIAogc3RhdGljIGlubGluZSBMZW5ndGggYmxlbmRGdW5jKGNvbnN0IEFuaW1hdGlvbkJhc2Uq
LCBjb25zdCBMZW5ndGgmIGZyb20sIGNvbnN0IExlbmd0aCYgdG8sIGRvdWJsZSBwcm9ncmVzcykK
IHsgIAotICAgIHJldHVybiB0by5ibGVuZChmcm9tLCBwcm9ncmVzcyk7CisgICAgcmV0dXJuIHRv
LmJsZW5kKGZyb20sIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3MpKTsKIH0KIAogc3Rh
dGljIGlubGluZSBMZW5ndGhTaXplIGJsZW5kRnVuYyhjb25zdCBBbmltYXRpb25CYXNlKiBhbmlt
LCBjb25zdCBMZW5ndGhTaXplJiBmcm9tLCBjb25zdCBMZW5ndGhTaXplJiB0bywgZG91YmxlIHBy
b2dyZXNzKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgJKHJldmlzaW9uIDgwMzgxKQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTGVuZ3RoLmgJKHdvcmtpbmcgY29weSkKQEAgLTEs
NiArMSw3IEBACiAvKgogICAgIENvcHlyaWdodCAoQykgMTk5OSBMYXJzIEtub2xsIChrbm9sbEBr
ZGUub3JnKQogICAgIENvcHlyaWdodCAoQykgMjAwNiwgMjAwOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgICAgQ29weXJpZ2h0IChDKSAyMDExIFJpayBDYWJhbmllciAoY2FiYW5p
ZXJAYWRvYmUuY29tKQogCiAgICAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0zMCw3ICszMSw2IEBACiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNvbnN0IGludCB1bmRlZmluZWRMZW5ndGggPSAtMTsKLWNvbnN0
IGludCBwZXJjZW50U2NhbGVGYWN0b3IgPSAxMjg7CiBjb25zdCBpbnQgaW50TWF4Rm9yTGVuZ3Ro
ID0gMHg3ZmZmZmZmOyAvLyBtYXggdmFsdWUgZm9yIGEgMjgtYml0IGludAogY29uc3QgaW50IGlu
dE1pbkZvckxlbmd0aCA9ICgtMHg3ZmZmZmZmIC0gMSk7IC8vIG1pbiB2YWx1ZSBmb3IgYSAyOC1i
aXQgaW50CiAKQEAgLTUyLDM0ICs1Miw0MCBAQCBwdWJsaWM6CiAgICAgTGVuZ3RoKGludCB2LCBM
ZW5ndGhUeXBlIHQsIGJvb2wgcSA9IGZhbHNlKQogICAgICAgICA6IG1faW50VmFsdWUodiksIG1f
cXVpcmsocSksIG1fdHlwZSh0KSwgbV9pc0Zsb2F0KGZhbHNlKQogICAgIHsKLSAgICAgICAgQVNT
RVJUKHQgIT0gUGVyY2VudCk7CisgICAgfQorICAgIAorICAgIExlbmd0aChmbG9hdCB2LCBMZW5n
dGhUeXBlIHQsIGJvb2wgcSA9IGZhbHNlKQorICAgIDogbV9mbG9hdFZhbHVlKHYpLCBtX3F1aXJr
KHEpLCBtX3R5cGUodCksIG1faXNGbG9hdCh0cnVlKQorICAgIHsgICAgICAgICAgICAKICAgICB9
CiAKICAgICBMZW5ndGgoZG91YmxlIHYsIExlbmd0aFR5cGUgdCwgYm9vbCBxID0gZmFsc2UpCi0g
ICAgICAgIDogbV9xdWlyayhxKSwgbV90eXBlKHQpLCBtX2lzRmxvYXQoZmFsc2UpCi0gICAgewot
ICAgICAgICBpZiAobV90eXBlID09IFBlcmNlbnQpCi0gICAgICAgICAgICBtX2ludFZhbHVlID0g
c3RhdGljX2Nhc3Q8aW50Pih2KnBlcmNlbnRTY2FsZUZhY3Rvcik7Ci0gICAgICAgIGVsc2Ugewot
ICAgICAgICAgICAgbV9pc0Zsb2F0ID0gdHJ1ZTsgICAgICAgICAgICAKLSAgICAgICAgICAgIG1f
ZmxvYXRWYWx1ZSA9IHN0YXRpY19jYXN0PGZsb2F0Pih2KTsKLSAgICAgICB9CisgICAgICAgIDog
bV9xdWlyayhxKSwgbV90eXBlKHQpLCBtX2lzRmxvYXQodHJ1ZSkKKyAgICB7ICAgICAgICAgICAK
KyAgICAgICAgbV9mbG9hdFZhbHVlID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHYpOyAgICAKICAgICB9
CiAKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgTGVuZ3RoJiBvKSBjb25zdCB7IHJldHVybiAo
Z2V0RmxvYXRWYWx1ZSgpID09IG8uZ2V0RmxvYXRWYWx1ZSgpKSAmJiAobV90eXBlID09IG8ubV90
eXBlKSAmJiAobV9xdWlyayA9PSBvLm1fcXVpcmspOyB9CiAgICAgYm9vbCBvcGVyYXRvciE9KGNv
bnN0IExlbmd0aCYgbykgY29uc3QgeyByZXR1cm4gKGdldEZsb2F0VmFsdWUoKSAhPSBvLmdldEZs
b2F0VmFsdWUoKSkgfHwgKG1fdHlwZSAhPSBvLm1fdHlwZSkgfHwgKG1fcXVpcmsgIT0gby5tX3F1
aXJrKTsgfQogCisgICAgY29uc3QgTGVuZ3RoJiBvcGVyYXRvcio9KGZsb2F0IHYpCisgICAgeyAg
ICAgICAgCisgICAgICAgIGlmIChtX2lzRmxvYXQpCisgICAgICAgICAgICBtX2Zsb2F0VmFsdWUg
PSBzdGF0aWNfY2FzdDxmbG9hdD4obV9mbG9hdFZhbHVlICogdik7CisgICAgICAgIGVsc2UgICAg
ICAgIAorICAgICAgICAgICAgbV9pbnRWYWx1ZSA9IHN0YXRpY19jYXN0PGludD4obV9pbnRWYWx1
ZSAqIHYpOworICAgICAgICAKKyAgICAgICAgcmV0dXJuICp0aGlzOworICAgIH0KKyAgICAKICAg
ICBpbnQgdmFsdWUoKSBjb25zdCB7Ci0gICAgICAgIEFTU0VSVCh0eXBlKCkgIT0gUGVyY2VudCk7
Ci0gICAgICAgIHJldHVybiByYXdWYWx1ZSgpOworICAgICAgICByZXR1cm4gZ2V0SW50VmFsdWUo
KTsKICAgICB9CiAKLSAgICBpbnQgcmF3VmFsdWUoKSBjb25zdCB7IHJldHVybiBnZXRJbnRWYWx1
ZSgpOyB9Ci0KLSAgICBkb3VibGUgcGVyY2VudCgpIGNvbnN0CisgICAgZmxvYXQgcGVyY2VudCgp
IGNvbnN0CiAgICAgewogICAgICAgICBBU1NFUlQodHlwZSgpID09IFBlcmNlbnQpOwotICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8ZG91YmxlPihyYXdWYWx1ZSgpKSAvIHBlcmNlbnRTY2FsZUZh
Y3RvcjsKKyAgICAgICAgcmV0dXJuIGdldEZsb2F0VmFsdWUoKTsKICAgICB9CiAKICAgICBMZW5n
dGhUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxMZW5ndGhUeXBlPihtX3R5
cGUpOyB9CkBAIC05NCwxOCArMTAwLDE3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0VmFsdWUo
aW50IHZhbHVlKQogICAgIHsKLSAgICAgICAgQVNTRVJUKCF2YWx1ZSB8fCB0eXBlKCkgIT0gUGVy
Y2VudCk7CiAgICAgICAgIHNldFZhbHVlKEZpeGVkLCB2YWx1ZSk7CiAgICAgfQogCi0gICAgdm9p
ZCBzZXRWYWx1ZShMZW5ndGhUeXBlIHQsIGRvdWJsZSB2YWx1ZSkKKyAgICB2b2lkIHNldFZhbHVl
KExlbmd0aFR5cGUgdCwgZmxvYXQgdmFsdWUpCiAgICAgewogICAgICAgICBtX3R5cGUgPSB0Owot
ICAgICAgICBtX2Zsb2F0VmFsdWUgPSBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUpOworICAgICAg
ICBtX2Zsb2F0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgbV9pc0Zsb2F0ID0gdHJ1ZTsgICAgCiAg
ICAgfQogCi0gICAgdm9pZCBzZXRWYWx1ZShkb3VibGUgdmFsdWUpCisgICAgdm9pZCBzZXRWYWx1
ZShmbG9hdCB2YWx1ZSkKICAgICB7CiAgICAgICAgICp0aGlzID0gTGVuZ3RoKHZhbHVlLCBGaXhl
ZCk7CiAgICAgfQpAQCAtMTE5LDcgKzEyNCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIGNhc2Ug
UGVyY2VudDoKICAgICAgICAgICAgICAgICBpZiAocm91bmRQZXJjZW50YWdlcykKICAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4ocm91bmQobWF4VmFsdWUgKiBwZXJj
ZW50KCkgLyAxMDAuMCkpOwotICAgICAgICAgICAgICAgIHJldHVybiBtYXhWYWx1ZSAqIHJhd1Zh
bHVlKCkgLyAoMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8aW50PihtYXhWYWx1ZSAqIHBlcmNlbnQoKSAvIDEwMC4wKTsKICAgICAg
ICAgICAgIGNhc2UgQXV0bzoKICAgICAgICAgICAgICAgICByZXR1cm4gbWF4VmFsdWU7CiAgICAg
ICAgICAgICBkZWZhdWx0OgpAQCAtMTM1LDcgKzE0MCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAg
IGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgICAgICBpZiAocm91bmRQZXJjZW50YWdlcykKICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4ocm91bmQobWF4VmFsdWUg
KiBwZXJjZW50KCkgLyAxMDAuMCkpOwotICAgICAgICAgICAgICAgIHJldHVybiBtYXhWYWx1ZSAq
IHJhd1ZhbHVlKCkgLyAoMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PihtYXhWYWx1ZSAqIHBlcmNlbnQoKSAvIDEwMC4wKTsK
ICAgICAgICAgICAgIGNhc2UgQXV0bzoKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIDA7CkBAIC0xNTYsMTAgKzE2MSwxNCBAQCBwdWJsaWM6CiAgICAgICAgIH0K
ICAgICB9CiAKLSAgICBib29sIGlzVW5kZWZpbmVkKCkgY29uc3QgeyByZXR1cm4gcmF3VmFsdWUo
KSA9PSB1bmRlZmluZWRMZW5ndGg7IH0KLSAgICBib29sIGlzWmVybygpIGNvbnN0IHsgcmV0dXJu
ICFnZXRJbnRWYWx1ZSgpOyB9Ci0gICAgYm9vbCBpc1Bvc2l0aXZlKCkgY29uc3QgeyByZXR1cm4g
cmF3VmFsdWUoKSA+IDA7IH0KLSAgICBib29sIGlzTmVnYXRpdmUoKSBjb25zdCB7IHJldHVybiBy
YXdWYWx1ZSgpIDwgMDsgfQorICAgIGJvb2wgaXNVbmRlZmluZWQoKSBjb25zdCB7IHJldHVybiB2
YWx1ZSgpID09IHVuZGVmaW5lZExlbmd0aDsgfQorICAgIGJvb2wgaXNaZXJvKCkgY29uc3QgCisg
ICAgeyAKKyAgICAgICAgcmV0dXJuIG1faXNGbG9hdCA/ICFtX2Zsb2F0VmFsdWUgOiAhbV9pbnRW
YWx1ZTsKKyAgICB9CisgICAgCisgICAgYm9vbCBpc1Bvc2l0aXZlKCkgY29uc3QgeyByZXR1cm4g
Z2V0RmxvYXRWYWx1ZSgpID4gMDsgfQorICAgIGJvb2wgaXNOZWdhdGl2ZSgpIGNvbnN0IHsgcmV0
dXJuIGdldEZsb2F0VmFsdWUoKSA8IDA7IH0KIAogICAgIGJvb2wgaXNBdXRvKCkgY29uc3QgeyBy
ZXR1cm4gdHlwZSgpID09IEF1dG87IH0KICAgICBib29sIGlzUmVsYXRpdmUoKSBjb25zdCB7IHJl
dHVybiB0eXBlKCkgPT0gUmVsYXRpdmU7IH0KQEAgLTE2Nyw3ICsxNzYsNyBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBpc0ZpeGVkKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IEZpeGVkOyB9CiAgICAg
Ym9vbCBpc0ludHJpbnNpY09yQXV0bygpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBBdXRvIHx8
IHR5cGUoKSA9PSBNaW5JbnRyaW5zaWMgfHwgdHlwZSgpID09IEludHJpbnNpYzsgfQogCi0gICAg
TGVuZ3RoIGJsZW5kKGNvbnN0IExlbmd0aCYgZnJvbSwgZG91YmxlIHByb2dyZXNzKSBjb25zdAor
ICAgIExlbmd0aCBibGVuZChjb25zdCBMZW5ndGgmIGZyb20sIGZsb2F0IHByb2dyZXNzKSBjb25z
dAogICAgIHsKICAgICAgICAgLy8gQmxlbmQgdHdvIGxlbmd0aHMgdG8gcHJvZHVjZSBhIG5ldyBs
ZW5ndGggdGhhdCBpcyBpbiBiZXR3ZWVuIHRoZW0uICBVc2VkIGZvciBhbmltYXRpb24uCiAgICAg
ICAgIGlmICghZnJvbS5pc1plcm8oKSAmJiAhaXNaZXJvKCkgJiYgZnJvbS50eXBlKCkgIT0gdHlw
ZSgpKQpAQCAtMTgxLDI5ICsxOTAsMjUgQEAgcHVibGljOgogICAgICAgICAgICAgcmVzdWx0VHlw
ZSA9IGZyb20udHlwZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHJlc3VsdFR5cGUgPT0gUGVy
Y2VudCkgewotICAgICAgICAgICAgZG91YmxlIGZyb21QZXJjZW50ID0gZnJvbS5pc1plcm8oKSA/
IDAuIDogZnJvbS5wZXJjZW50KCk7Ci0gICAgICAgICAgICBkb3VibGUgdG9QZXJjZW50ID0gaXNa
ZXJvKCkgPyAwLiA6IHBlcmNlbnQoKTsKKyAgICAgICAgICAgIGZsb2F0IGZyb21QZXJjZW50ID0g
ZnJvbS5pc1plcm8oKSA/IDAgOiBmcm9tLnBlcmNlbnQoKTsKKyAgICAgICAgICAgIGZsb2F0IHRv
UGVyY2VudCA9IGlzWmVybygpID8gMCA6IHBlcmNlbnQoKTsKICAgICAgICAgICAgIHJldHVybiBM
ZW5ndGgoZnJvbVBlcmNlbnQgKyAodG9QZXJjZW50IC0gZnJvbVBlcmNlbnQpICogcHJvZ3Jlc3Ms
IFBlcmNlbnQpOwogICAgICAgICB9IAogICAgICAgICAgICAgCi0gICAgICAgIGRvdWJsZSBmcm9t
VmFsdWUgPSBmcm9tLmlzWmVybygpID8gMCA6IGZyb20udmFsdWUoKTsKLSAgICAgICAgZG91Ymxl
IHRvVmFsdWUgPSBpc1plcm8oKSA/IDAgOiB2YWx1ZSgpOworICAgICAgICBmbG9hdCBmcm9tVmFs
dWUgPSBmcm9tLmlzWmVybygpID8gMCA6IGZyb20udmFsdWUoKTsKKyAgICAgICAgZmxvYXQgdG9W
YWx1ZSA9IGlzWmVybygpID8gMCA6IHZhbHVlKCk7CiAgICAgICAgIHJldHVybiBMZW5ndGgoZnJv
bVZhbHVlICsgKHRvVmFsdWUgLSBmcm9tVmFsdWUpICogcHJvZ3Jlc3MsIHJlc3VsdFR5cGUpOwog
ICAgIH0KIAogcHJpdmF0ZToKICAgICBpbnQgZ2V0SW50VmFsdWUoKSBjb25zdAogICAgIHsKLSAg
ICAgICAgaWYgKG1faXNGbG9hdCkKLSAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+
KG1fZmxvYXRWYWx1ZSk7Ci0gICAgICAgIHJldHVybiBtX2ludFZhbHVlOworICAgICAgICByZXR1
cm4gbV9pc0Zsb2F0ID8gc3RhdGljX2Nhc3Q8aW50PihtX2Zsb2F0VmFsdWUpIDogbV9pbnRWYWx1
ZTsKICAgICB9CiAKICAgICBmbG9hdCBnZXRGbG9hdFZhbHVlKCkgY29uc3QKICAgICB7Ci0gICAg
ICAgIGlmIChtX2lzRmxvYXQpCi0gICAgICAgICAgICAgICAgcmV0dXJuIG1fZmxvYXRWYWx1ZTsK
LSAgICAgICAgcmV0dXJuIG1faW50VmFsdWU7CisgICAgICAgIHJldHVybiBtX2lzRmxvYXQgPyBt
X2Zsb2F0VmFsdWUgOiBtX2ludFZhbHVlOwogICAgIH0KIAogICAgIHVuaW9uIHsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvVHJhbnNsYXRlVHJhbnNm
b3JtT3BlcmF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5jcHAJKHJldmlz
aW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jt
cy9UcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw2
ICsyMSw3IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJUcmFuc2xhdGVUcmFu
c2Zvcm1PcGVyYXRpb24uaCIKKyNpbmNsdWRlICJGbG9hdENvbnZlcnNpb24uaCIKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCkBAIC0zMCwxNSArMzEsMTUgQEAgUGFzc1JlZlB0cjxUcmFuc2Zvcm1P
cGVyYXRpb24+IFRyYW5zbGF0ZQogICAgICAgICByZXR1cm4gdGhpczsKICAgICAKICAgICBpZiAo
YmxlbmRUb0lkZW50aXR5KQotICAgICAgICByZXR1cm4gVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0
aW9uOjpjcmVhdGUoTGVuZ3RoKG1feC50eXBlKCkpLmJsZW5kKG1feCwgcHJvZ3Jlc3MpLCAKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlbmd0aCht
X3kudHlwZSgpKS5ibGVuZChtX3ksIHByb2dyZXNzKSwgCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZW5ndGgobV96LnR5cGUoKSkuYmxlbmQobV96
LCBwcm9ncmVzcyksIG1fdHlwZSk7CisgICAgICAgIHJldHVybiBUcmFuc2xhdGVUcmFuc2Zvcm1P
cGVyYXRpb246OmNyZWF0ZShMZW5ndGgobV94LnR5cGUoKSkuYmxlbmQobV94LCBuYXJyb3dQcmVj
aXNpb25Ub0Zsb2F0KHByb2dyZXNzKSksIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgTGVuZ3RoKG1feS50eXBlKCkpLmJsZW5kKG1feSwgbmFycm93
UHJlY2lzaW9uVG9GbG9hdChwcm9ncmVzcykpLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIExlbmd0aChtX3oudHlwZSgpKS5ibGVuZChtX3osIG5h
cnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3MpKSwgbV90eXBlKTsKIAogICAgIGNvbnN0IFRy
YW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbiogZnJvbU9wID0gc3RhdGljX2Nhc3Q8Y29uc3QgVHJh
bnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uKj4oZnJvbSk7CiAgICAgTGVuZ3RoIGZyb21YID0gZnJv
bU9wID8gZnJvbU9wLT5tX3ggOiBMZW5ndGgobV94LnR5cGUoKSk7CiAgICAgTGVuZ3RoIGZyb21Z
ID0gZnJvbU9wID8gZnJvbU9wLT5tX3kgOiBMZW5ndGgobV95LnR5cGUoKSk7CiAgICAgTGVuZ3Ro
IGZyb21aID0gZnJvbU9wID8gZnJvbU9wLT5tX3ogOiBMZW5ndGgobV96LnR5cGUoKSk7Ci0gICAg
cmV0dXJuIFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJhdGlvbjo6Y3JlYXRlKG1feC5ibGVuZChmcm9t
WCwgcHJvZ3Jlc3MpLCBtX3kuYmxlbmQoZnJvbVksIHByb2dyZXNzKSwgbV96LmJsZW5kKGZyb21a
LCBwcm9ncmVzcyksIG1fdHlwZSk7CisgICAgcmV0dXJuIFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJh
dGlvbjo6Y3JlYXRlKG1feC5ibGVuZChmcm9tWCwgbmFycm93UHJlY2lzaW9uVG9GbG9hdChwcm9n
cmVzcykpLCBtX3kuYmxlbmQoZnJvbVksIG5hcnJvd1ByZWNpc2lvblRvRmxvYXQocHJvZ3Jlc3Mp
KSwgbV96LmJsZW5kKGZyb21aLCBuYXJyb3dQcmVjaXNpb25Ub0Zsb2F0KHByb2dyZXNzKSksIG1f
dHlwZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9BdXRvVGFibGVMYXlvdXQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC04MSw3ICs4MSw3IEBAIHZvaWQgQXV0b1RhYmxlTGF5b3V0OjpyZWNhbGNDb2x1bW4oaW50
IGUKIAogICAgICAgICAgICAgICAgICAgICBMZW5ndGggY2VsbExvZ2ljYWxXaWR0aCA9IGNlbGwt
PnN0eWxlT3JDb2xMb2dpY2FsV2lkdGgoKTsKICAgICAgICAgICAgICAgICAgICAgLy8gRklYTUU6
IFdoYXQgaXMgdGhpcyBhcmJpdHJhcnkgdmFsdWU/Ci0gICAgICAgICAgICAgICAgICAgIGlmIChj
ZWxsTG9naWNhbFdpZHRoLnJhd1ZhbHVlKCkgPiAzMjc2MCkKKyAgICAgICAgICAgICAgICAgICAg
aWYgKGNlbGxMb2dpY2FsV2lkdGgudmFsdWUoKSA+IDMyNzYwKQogICAgICAgICAgICAgICAgICAg
ICAgICAgY2VsbExvZ2ljYWxXaWR0aC5zZXRWYWx1ZSgzMjc2MCk7CiAgICAgICAgICAgICAgICAg
ICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzTmVnYXRpdmUoKSkKICAgICAgICAgICAgICAgICAg
ICAgICAgIGNlbGxMb2dpY2FsV2lkdGguc2V0VmFsdWUoMCk7CkBAIC0xMDUsMTMgKzEwNSwxMyBA
QCB2b2lkIEF1dG9UYWJsZUxheW91dDo6cmVjYWxjQ29sdW1uKGludCBlCiAgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgY2FzZSBQZXJjZW50OgogICAg
ICAgICAgICAgICAgICAgICAgICAgbV9oYXNQZXJjZW50ID0gdHJ1ZTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUG9zaXRpdmUoKSAmJiAoIWNvbHVtbkxh
eW91dC5sb2dpY2FsV2lkdGguaXNQZXJjZW50KCkgfHwgY2VsbExvZ2ljYWxXaWR0aC5yYXdWYWx1
ZSgpID4gY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpKSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUG9zaXRpdmUoKSAmJiAoIWNvbHVt
bkxheW91dC5sb2dpY2FsV2lkdGguaXNQZXJjZW50KCkgfHwgY2VsbExvZ2ljYWxXaWR0aC52YWx1
ZSgpID4gY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC52YWx1ZSgpKSkKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb2x1bW5MYXlvdXQubG9naWNhbFdpZHRoID0gY2VsbExvZ2ljYWxXaWR0
aDsKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICBj
YXNlIFJlbGF0aXZlOgogICAgICAgICAgICAgICAgICAgICAgICAgLy8gRklYTUU6IE5lZWQgdG8g
dW5kZXJzdGFuZCB0aGlzIGNhc2UgYW5kIHdoZXRoZXIgaXQgbWFrZXMgc2Vuc2UgdG8gY29tcGFy
ZSB2YWx1ZXMKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdoaWNoIGFyZSBub3QgbmVjZXNz
YXJpbHkgb2YgdGhlIHNhbWUgdHlwZS4KLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjZWxs
TG9naWNhbFdpZHRoLmlzQXV0bygpIHx8IChjZWxsTG9naWNhbFdpZHRoLmlzUmVsYXRpdmUoKSAm
JiBjZWxsTG9naWNhbFdpZHRoLnZhbHVlKCkgPiBjb2x1bW5MYXlvdXQubG9naWNhbFdpZHRoLnJh
d1ZhbHVlKCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNlbGxMb2dpY2FsV2lkdGgu
aXNBdXRvKCkgfHwgKGNlbGxMb2dpY2FsV2lkdGguaXNSZWxhdGl2ZSgpICYmIGNlbGxMb2dpY2Fs
V2lkdGgudmFsdWUoKSA+IGNvbHVtbkxheW91dC5sb2dpY2FsV2lkdGgudmFsdWUoKSkpCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aCA9IGNlbGxM
b2dpY2FsV2lkdGg7CiAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKQEAgLTIzMiwxNiArMjMyLDE2IEBAIHZvaWQgQXV0b1RhYmxlTGF5
b3V0Ojpjb21wdXRlUHJlZmVycmVkTG8KIAogICAgIC8vIFdlIHN1YnN0aXR1dGUgMCBwZXJjZW50
IGJ5IChlcHNpbG9uIC8gcGVyY2VudFNjYWxlRmFjdG9yKSBwZXJjZW50IGluIHR3byBwbGFjZXMg
YmVsb3cgdG8gYXZvaWQgZGl2aXNpb24gYnkgemVyby4KICAgICAvLyBGSVhNRTogSGFuZGxlIHRo
ZSAwJSBjYXNlcyBwcm9wZXJseS4KLSAgICBjb25zdCBpbnQgZXBzaWxvbiA9IDE7CisgICAgY29u
c3QgZmxvYXQgZXBzaWxvbiA9IDEgLyAxMjguMGY7CiAKLSAgICBpbnQgcmVtYWluaW5nUGVyY2Vu
dCA9IDEwMCAqIHBlcmNlbnRTY2FsZUZhY3RvcjsKKyAgICBmbG9hdCByZW1haW5pbmdQZXJjZW50
ID0gMTAwOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9sYXlvdXRTdHJ1Y3Quc2l6ZSgp
OyArK2kpIHsKICAgICAgICAgbWluV2lkdGggKz0gbV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZl
TWluTG9naWNhbFdpZHRoOwogICAgICAgICBtYXhXaWR0aCArPSBtX2xheW91dFN0cnVjdFtpXS5l
ZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGg7CiAgICAgICAgIGlmIChzY2FsZUNvbHVtbnMpIHsKICAg
ICAgICAgICAgIGlmIChtX2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGguaXNQ
ZXJjZW50KCkpIHsKLSAgICAgICAgICAgICAgICBpbnQgcGVyY2VudCA9IG1pbihtX2xheW91dFN0
cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGgucmF3VmFsdWUoKSwgcmVtYWluaW5nUGVyY2Vu
dCk7Ci0gICAgICAgICAgICAgICAgZmxvYXQgbG9naWNhbFdpZHRoID0gc3RhdGljX2Nhc3Q8Zmxv
YXQ+KG1fbGF5b3V0U3RydWN0W2ldLmVmZmVjdGl2ZU1heExvZ2ljYWxXaWR0aCkgKiAxMDAgKiBw
ZXJjZW50U2NhbGVGYWN0b3IgLyBtYXgocGVyY2VudCwgZXBzaWxvbik7CisgICAgICAgICAgICAg
ICAgZmxvYXQgcGVyY2VudCA9IG1pbihzdGF0aWNfY2FzdDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3Rb
aV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoLnBlcmNlbnQoKSksIHJlbWFpbmluZ1BlcmNlbnQpOwor
ICAgICAgICAgICAgICAgIGZsb2F0IGxvZ2ljYWxXaWR0aCA9IHN0YXRpY19jYXN0PGZsb2F0Piht
X2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpICogMTAwIC8gbWF4KHBl
cmNlbnQsIGVwc2lsb24pOwogICAgICAgICAgICAgICAgIG1heFBlcmNlbnQgPSBtYXgobG9naWNh
bFdpZHRoLCAgbWF4UGVyY2VudCk7CiAgICAgICAgICAgICAgICAgcmVtYWluaW5nUGVyY2VudCAt
PSBwZXJjZW50OwogICAgICAgICAgICAgfSBlbHNlCkBAIC0yNTAsNyArMjUwLDcgQEAgdm9pZCBB
dXRvVGFibGVMYXlvdXQ6OmNvbXB1dGVQcmVmZXJyZWRMbwogICAgIH0KIAogICAgIGlmIChzY2Fs
ZUNvbHVtbnMpIHsKLSAgICAgICAgbWF4Tm9uUGVyY2VudCA9IG1heE5vblBlcmNlbnQgKiAxMDAg
KiBwZXJjZW50U2NhbGVGYWN0b3IgLyBtYXgocmVtYWluaW5nUGVyY2VudCwgZXBzaWxvbik7Cisg
ICAgICAgIG1heE5vblBlcmNlbnQgPSBtYXhOb25QZXJjZW50ICogMTAwIC8gbWF4KHJlbWFpbmlu
Z1BlcmNlbnQsIGVwc2lsb24pOwogICAgICAgICBtYXhXaWR0aCA9IG1heChtYXhXaWR0aCwgc3Rh
dGljX2Nhc3Q8aW50PihtaW4obWF4Tm9uUGVyY2VudCwgSU5UX01BWCAvIDIuMGYpKSk7CiAgICAg
ICAgIG1heFdpZHRoID0gbWF4KG1heFdpZHRoLCBzdGF0aWNfY2FzdDxpbnQ+KG1pbihtYXhQZXJj
ZW50LCBJTlRfTUFYIC8gMi4wZikpKTsKICAgICB9CkBAIC0yNjYsNiArMjY2LDEwIEBAIHZvaWQg
QXV0b1RhYmxlTGF5b3V0Ojpjb21wdXRlUHJlZmVycmVkTG8KICAgICAgICAgbWluV2lkdGggPSBt
YXgobWluV2lkdGgsIHRhYmxlTG9naWNhbFdpZHRoLnZhbHVlKCkpOwogICAgICAgICBtYXhXaWR0
aCA9IG1pbldpZHRoOwogICAgIH0KKyAgICAKKyAgICAvLyBpZiB0aGVyZSB3YXMgbm8gcmVtYWlu
aW5nIHBlcmNlbnQsIG1heFdpZHRoIGlzIGludmFsaWQuCisgICAgaWYgKCFyZW1haW5pbmdQZXJj
ZW50ICYmIG1heE5vblBlcmNlbnQpCisgICAgICAgIG1heFdpZHRoID0gaW50TWF4Rm9yTGVuZ3Ro
OyAgICAgICAgCiB9CiAKIC8qCkBAIC0zMDAsNyArMzA0LDcgQEAgaW50IEF1dG9UYWJsZUxheW91
dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogICAgICAgICBzaXplX3QgbGFzdENvbCA9IGVmZkNvbDsK
ICAgICAgICAgaW50IGNlbGxNaW5Mb2dpY2FsV2lkdGggPSBjZWxsLT5taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGgoKSArIHNwYWNpbmdJblJvd0RpcmVjdGlvbjsKICAgICAgICAgZmxvYXQgY2VsbE1h
eExvZ2ljYWxXaWR0aCA9IGNlbGwtPm1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpICsgc3BhY2lu
Z0luUm93RGlyZWN0aW9uOwotICAgICAgICBpbnQgdG90YWxQZXJjZW50ID0gMDsKKyAgICAgICAg
ZmxvYXQgdG90YWxQZXJjZW50ID0gMDsKICAgICAgICAgaW50IHNwYW5NaW5Mb2dpY2FsV2lkdGgg
PSAwOwogICAgICAgICBmbG9hdCBzcGFuTWF4TG9naWNhbFdpZHRoID0gMDsKICAgICAgICAgYm9v
bCBhbGxDb2xzQXJlUGVyY2VudCA9IHRydWU7CkBAIC0zMTIsNyArMzE2LDcgQEAgaW50IEF1dG9U
YWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogICAgICAgICAgICAgTGF5b3V0JiBjb2x1
bW5MYXlvdXQgPSBtX2xheW91dFN0cnVjdFtsYXN0Q29sXTsKICAgICAgICAgICAgIHN3aXRjaCAo
Y29sdW1uTGF5b3V0LmxvZ2ljYWxXaWR0aC50eXBlKCkpIHsKICAgICAgICAgICAgIGNhc2UgUGVy
Y2VudDoKLSAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgKz0gY29sdW1uTGF5b3V0LmxvZ2lj
YWxXaWR0aC5yYXdWYWx1ZSgpOworICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBjb2x1
bW5MYXlvdXQubG9naWNhbFdpZHRoLnBlcmNlbnQoKTsKICAgICAgICAgICAgICAgICBhbGxDb2xz
QXJlRml4ZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNh
c2UgRml4ZWQ6CkBAIC0zMzksNyArMzQzLDcgQEAgaW50IEF1dG9UYWJsZUxheW91dDo6Y2FsY0Vm
ZmVjdGl2ZUxvZ2ljYQogICAgICAgICAgICAgICAgICAgICBjb2x1bW5MYXlvdXQuZWZmZWN0aXZl
TG9naWNhbFdpZHRoID0gTGVuZ3RoKCk7CiAgICAgICAgICAgICAgICAgICAgIGFsbENvbHNBcmVQ
ZXJjZW50ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAg
ICAgIHRvdGFsUGVyY2VudCArPSBjb2x1bW5MYXlvdXQuZWZmZWN0aXZlTG9naWNhbFdpZHRoLnJh
d1ZhbHVlKCk7CisgICAgICAgICAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBjb2x1bW5MYXlv
dXQuZWZmZWN0aXZlTG9naWNhbFdpZHRoLnBlcmNlbnQoKTsKICAgICAgICAgICAgICAgICBhbGxD
b2xzQXJlRml4ZWQgPSBmYWxzZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmICghY29s
dW1uTGF5b3V0LmVtcHR5Q2VsbHNPbmx5KQpAQCAtMzU0LDE0ICszNTgsMTQgQEAgaW50IEF1dG9U
YWJsZUxheW91dDo6Y2FsY0VmZmVjdGl2ZUxvZ2ljYQogCiAgICAgICAgIC8vIGFkanVzdCB0YWJs
ZSBtYXggd2lkdGggaWYgbmVlZGVkCiAgICAgICAgIGlmIChjZWxsTG9naWNhbFdpZHRoLmlzUGVy
Y2VudCgpKSB7Ci0gICAgICAgICAgICBpZiAodG90YWxQZXJjZW50ID4gY2VsbExvZ2ljYWxXaWR0
aC5yYXdWYWx1ZSgpIHx8IGFsbENvbHNBcmVQZXJjZW50KSB7CisgICAgICAgICAgICBpZiAodG90
YWxQZXJjZW50ID4gY2VsbExvZ2ljYWxXaWR0aC5wZXJjZW50KCkgfHwgYWxsQ29sc0FyZVBlcmNl
bnQpIHsKICAgICAgICAgICAgICAgICAvLyBjYW4ndCBzYXRpZnkgdGhpcyBjb25kaXRpb24sIHRy
ZWF0IGFzIHZhcmlhYmxlCiAgICAgICAgICAgICAgICAgY2VsbExvZ2ljYWxXaWR0aCA9IExlbmd0
aCgpOwogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBtYXhMb2dpY2FsV2lk
dGggPSBtYXgobWF4TG9naWNhbFdpZHRoLCBtYXgoc3Bhbk1heExvZ2ljYWxXaWR0aCwgY2VsbE1h
eExvZ2ljYWxXaWR0aCkgKiAxMDAgKiBwZXJjZW50U2NhbGVGYWN0b3IgLyBjZWxsTG9naWNhbFdp
ZHRoLnJhd1ZhbHVlKCkpOworICAgICAgICAgICAgICAgIG1heExvZ2ljYWxXaWR0aCA9IG1heCht
YXhMb2dpY2FsV2lkdGgsIHN0YXRpY19jYXN0PGZsb2F0PihtYXgoc3Bhbk1heExvZ2ljYWxXaWR0
aCwgY2VsbE1heExvZ2ljYWxXaWR0aCkgKiAxMDAgIC8gY2VsbExvZ2ljYWxXaWR0aC5wZXJjZW50
KCkpKTsKIAogICAgICAgICAgICAgICAgIC8vIGFsbCBub24gcGVyY2VudCBjb2x1bW5zIGluIHRo
ZSBzcGFuIGdldCBwZXJjZW50IHZhbHVlcyB0byBzdW0gdXAgY29ycmVjdGx5LgotICAgICAgICAg
ICAgICAgIGludCBwZXJjZW50TWlzc2luZyA9IGNlbGxMb2dpY2FsV2lkdGgucmF3VmFsdWUoKSAt
IHRvdGFsUGVyY2VudDsKKyAgICAgICAgICAgICAgICBmbG9hdCBwZXJjZW50TWlzc2luZyA9IGNl
bGxMb2dpY2FsV2lkdGgucGVyY2VudCgpIC0gdG90YWxQZXJjZW50OwogICAgICAgICAgICAgICAg
IGZsb2F0IHRvdGFsV2lkdGggPSAwOwogICAgICAgICAgICAgICAgIGZvciAodW5zaWduZWQgcG9z
ID0gZWZmQ29sOyBwb3MgPCBsYXN0Q29sOyArK3BvcykgewogICAgICAgICAgICAgICAgICAgICBp
ZiAoIW1fbGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2VudCgp
KQpAQCAtMzcwLDcgKzM3NCw3IEBAIGludCBBdXRvVGFibGVMYXlvdXQ6OmNhbGNFZmZlY3RpdmVM
b2dpY2EKIAogICAgICAgICAgICAgICAgIGZvciAodW5zaWduZWQgcG9zID0gZWZmQ29sOyBwb3Mg
PCBsYXN0Q29sICYmIHRvdGFsV2lkdGggPiAwOyArK3BvcykgewogICAgICAgICAgICAgICAgICAg
ICBpZiAoIW1fbGF5b3V0U3RydWN0W3Bvc10uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2Vu
dCgpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpbnQgcGVyY2VudCA9IHN0YXRpY19jYXN0
PGludD4ocGVyY2VudE1pc3NpbmcgKiBzdGF0aWNfY2FzdDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3Rb
cG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpIC8gdG90YWxXaWR0aCk7CisgICAgICAgICAg
ICAgICAgICAgICAgICBmbG9hdCBwZXJjZW50ID0gcGVyY2VudE1pc3NpbmcgKiBzdGF0aWNfY2Fz
dDxmbG9hdD4obV9sYXlvdXRTdHJ1Y3RbcG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGgpIC8g
dG90YWxXaWR0aDsKICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsV2lkdGggLT0gbV9sYXlv
dXRTdHJ1Y3RbcG9zXS5lZmZlY3RpdmVNYXhMb2dpY2FsV2lkdGg7CiAgICAgICAgICAgICAgICAg
ICAgICAgICBwZXJjZW50TWlzc2luZyAtPSBwZXJjZW50OwogICAgICAgICAgICAgICAgICAgICAg
ICAgaWYgKHBlcmNlbnQgPiAwKQpAQCAtNDkxLDcgKzQ5NSw3IEBAIHZvaWQgQXV0b1RhYmxlTGF5
b3V0OjpsYXlvdXQoKQogICAgIGludCBudW1GaXhlZCA9IDA7CiAgICAgZmxvYXQgdG90YWxBdXRv
ID0gMDsKICAgICBmbG9hdCB0b3RhbEZpeGVkID0gMDsKLSAgICBpbnQgdG90YWxQZXJjZW50ID0g
MDsKKyAgICBmbG9hdCB0b3RhbFBlcmNlbnQgPSAwOwogICAgIGludCBhbGxvY0F1dG8gPSAwOwog
ICAgIHVuc2lnbmVkIG51bUF1dG9FbXB0eUNlbGxzT25seSA9IDA7CiAKQEAgLTUwNCw3ICs1MDgs
NyBAQCB2b2lkIEF1dG9UYWJsZUxheW91dDo6bGF5b3V0KCkKICAgICAgICAgc3dpdGNoIChsb2dp
Y2FsV2lkdGgudHlwZSgpKSB7CiAgICAgICAgIGNhc2UgUGVyY2VudDoKICAgICAgICAgICAgIGhh
dmVQZXJjZW50ID0gdHJ1ZTsKLSAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBsb2dpY2FsV2lk
dGgucmF3VmFsdWUoKTsKKyAgICAgICAgICAgIHRvdGFsUGVyY2VudCArPSBsb2dpY2FsV2lkdGgu
cGVyY2VudCgpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgUmVsYXRpdmU6CiAg
ICAgICAgICAgICB0b3RhbFJlbGF0aXZlICs9IGxvZ2ljYWxXaWR0aC52YWx1ZSgpOwpAQCAtNTM4
LDkgKzU0Miw5IEBAIHZvaWQgQXV0b1RhYmxlTGF5b3V0OjpsYXlvdXQoKQogICAgICAgICAgICAg
ICAgIG1fbGF5b3V0U3RydWN0W2ldLmNvbXB1dGVkTG9naWNhbFdpZHRoID0gY2VsbExvZ2ljYWxX
aWR0aDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBpZiAodG90YWxQZXJjZW50
ID4gMTAwICogcGVyY2VudFNjYWxlRmFjdG9yKSB7CisgICAgICAgIGlmICh0b3RhbFBlcmNlbnQg
PiAxMDApIHsKICAgICAgICAgICAgIC8vIHJlbW92ZSBvdmVyYWxsb2NhdGVkIHNwYWNlIGZyb20g
dGhlIGxhc3QgY29sdW1ucwotICAgICAgICAgICAgaW50IGV4Y2VzcyA9IHRhYmxlTG9naWNhbFdp
ZHRoICogKHRvdGFsUGVyY2VudCAtIDEwMCAqIHBlcmNlbnRTY2FsZUZhY3RvcikgLyAoMTAwICog
cGVyY2VudFNjYWxlRmFjdG9yKTsKKyAgICAgICAgICAgIGludCBleGNlc3MgPSB0YWJsZUxvZ2lj
YWxXaWR0aCAqICh0b3RhbFBlcmNlbnQgLSAxMDApIC8gMTAwOwogICAgICAgICAgICAgZm9yIChp
bnQgaSA9IG5FZmZDb2xzIC0gMTsgaSA+PSAwOyAtLWkpIHsKICAgICAgICAgICAgICAgICBpZiAo
bV9sYXlvdXRTdHJ1Y3RbaV0uZWZmZWN0aXZlTG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGludCBjZWxsTG9naWNhbFdpZHRoID0gbV9sYXlvdXRTdHJ1Y3Rb
aV0uY29tcHV0ZWRMb2dpY2FsV2lkdGg7CkBAIC02MDcsMTMgKzYxMSwxMyBAQCB2b2lkIEF1dG9U
YWJsZUxheW91dDo6bGF5b3V0KCkKICAgICB9CiAKICAgICAvLyBzcHJlYWQgb3ZlciBwZXJjZW50
IGNvbHVtcwotICAgIGlmIChhdmFpbGFibGUgPiAwICYmIG1faGFzUGVyY2VudCAmJiB0b3RhbFBl
cmNlbnQgPCAxMDAgKiBwZXJjZW50U2NhbGVGYWN0b3IpIHsKKyAgICBpZiAoYXZhaWxhYmxlID4g
MCAmJiBtX2hhc1BlcmNlbnQgJiYgdG90YWxQZXJjZW50IDwgMTAwKSB7CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbkVmZkNvbHM7ICsraSkgewogICAgICAgICAgICAgTGVuZ3RoJiBs
b2dpY2FsV2lkdGggPSBtX2xheW91dFN0cnVjdFtpXS5lZmZlY3RpdmVMb2dpY2FsV2lkdGg7CiAg
ICAgICAgICAgICBpZiAobG9naWNhbFdpZHRoLmlzUGVyY2VudCgpKSB7Ci0gICAgICAgICAgICAg
ICAgaW50IGNlbGxMb2dpY2FsV2lkdGggPSBhdmFpbGFibGUgKiBsb2dpY2FsV2lkdGgucmF3VmFs
dWUoKSAvIHRvdGFsUGVyY2VudDsKKyAgICAgICAgICAgICAgICBpbnQgY2VsbExvZ2ljYWxXaWR0
aCA9IGF2YWlsYWJsZSAqIGxvZ2ljYWxXaWR0aC5wZXJjZW50KCkgLyB0b3RhbFBlcmNlbnQ7CiAg
ICAgICAgICAgICAgICAgYXZhaWxhYmxlIC09IGNlbGxMb2dpY2FsV2lkdGg7Ci0gICAgICAgICAg
ICAgICAgdG90YWxQZXJjZW50IC09IGxvZ2ljYWxXaWR0aC5yYXdWYWx1ZSgpOworICAgICAgICAg
ICAgICAgIHRvdGFsUGVyY2VudCAtPSBsb2dpY2FsV2lkdGgucGVyY2VudCgpOwogICAgICAgICAg
ICAgICAgIG1fbGF5b3V0U3RydWN0W2ldLmNvbXB1dGVkTG9naWNhbFdpZHRoICs9IGNlbGxMb2dp
Y2FsV2lkdGg7CiAgICAgICAgICAgICAgICAgaWYgKCFhdmFpbGFibGUgfHwgIXRvdGFsUGVyY2Vu
dCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvRml4ZWRUYWJsZUxheW91dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuY3BwCShyZXZpc2lvbiA4MDM4MSkKKysrIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9GaXhlZFRhYmxlTGF5b3V0LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTE4LDcgKzExOCw4IEBAIGludCBGaXhlZFRhYmxlTGF5b3V0OjpjYWxjV2lkdGhBcnJheShp
bnQKICAgICAgICAgICAgICAgICAgICAgc3BhbkluQ3VycmVudEVmZmVjdGl2ZUNvbHVtbiA9IG1f
dGFibGUtPnNwYW5PZkVmZkNvbChjdXJyZW50RWZmZWN0aXZlQ29sdW1uKTsKICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKCh3LmlzRml4ZWQoKSB8fCB3LmlzUGVyY2VudCgp
KSAmJiB3LmlzUG9zaXRpdmUoKSkgewotICAgICAgICAgICAgICAgICAgICBtX3dpZHRoW2N1cnJl
bnRFZmZlY3RpdmVDb2x1bW5dLnNldFZhbHVlKHcudHlwZSgpLCB3LnJhd1ZhbHVlKCkgKiBzcGFu
SW5DdXJyZW50RWZmZWN0aXZlQ29sdW1uKTsKKyAgICAgICAgICAgICAgICAgICAgbV93aWR0aFtj
dXJyZW50RWZmZWN0aXZlQ29sdW1uXSA9IHc7CisgICAgICAgICAgICAgICAgICAgIG1fd2lkdGhb
Y3VycmVudEVmZmVjdGl2ZUNvbHVtbl0gKj0gc3BhbkluQ3VycmVudEVmZmVjdGl2ZUNvbHVtbjsK
ICAgICAgICAgICAgICAgICAgICAgdXNlZFdpZHRoICs9IGVmZldpZHRoICogc3BhbkluQ3VycmVu
dEVmZmVjdGl2ZUNvbHVtbjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgc3Bh
biAtPSBzcGFuSW5DdXJyZW50RWZmZWN0aXZlQ29sdW1uOwpAQCAtMTY0LDEwICsxNjUsMTEgQEAg
aW50IEZpeGVkVGFibGVMYXlvdXQ6OmNhbGNXaWR0aEFycmF5KGludAogICAgICAgICAgICAgICAg
IGludCB1c2VkU3BhbiA9IDA7CiAgICAgICAgICAgICAgICAgaW50IGkgPSAwOwogICAgICAgICAg
ICAgICAgIHdoaWxlICh1c2VkU3BhbiA8IHNwYW4gJiYgY0NvbCArIGkgPCBuRWZmQ29scykgewot
ICAgICAgICAgICAgICAgICAgICBpbnQgZVNwYW4gPSBtX3RhYmxlLT5zcGFuT2ZFZmZDb2woY0Nv
bCArIGkpOworICAgICAgICAgICAgICAgICAgICBmbG9hdCBlU3BhbiA9IG1fdGFibGUtPnNwYW5P
ZkVmZkNvbChjQ29sICsgaSk7CiAgICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgc2V0IGlmIG5v
IGNvbCBlbGVtZW50IGhhcyBhbHJlYWR5IHNldCBpdC4KICAgICAgICAgICAgICAgICAgICAgaWYg
KG1fd2lkdGhbY0NvbCArIGldLmlzQXV0bygpICYmIHcudHlwZSgpICE9IEF1dG8pIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIG1fd2lkdGhbY0NvbCArIGldLnNldFZhbHVlKHcudHlwZSgpLCB3
LnJhd1ZhbHVlKCkgKiBlU3BhbiAvIHNwYW4pOworICAgICAgICAgICAgICAgICAgICAgICAgbV93
aWR0aFtjQ29sICsgaV0gPSB3OworICAgICAgICAgICAgICAgICAgICAgICAgbV93aWR0aFtjQ29s
ICsgaV0gKj0gZVNwYW4gLyBzcGFuOwogICAgICAgICAgICAgICAgICAgICAgICAgdXNlZFdpZHRo
ICs9IGVmZldpZHRoICogZVNwYW4gLyBzcGFuOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICAgICAgIHVzZWRTcGFuICs9IGVTcGFuOwpAQCAtMjM0LDcgKzIzNiw3IEBAIHZv
aWQgRml4ZWRUYWJsZUxheW91dDo6bGF5b3V0KCkKICAgICBpbnQgYXV0b1NwYW4gPSAwOwogICAg
IGludCB0b3RhbEZpeGVkV2lkdGggPSAwOwogICAgIGludCB0b3RhbFBlcmNlbnRXaWR0aCA9IDA7
Ci0gICAgaW50IHRvdGFsUmF3UGVyY2VudCA9IDA7CisgICAgZmxvYXQgdG90YWxQZXJjZW50ID0g
MDsKIAogICAgIC8vIENvbXB1dGUgcmVxdWlyZW1lbnRzIGFuZCB0cnkgdG8gc2F0aXNmeSBmaXhl
ZCBhbmQgcGVyY2VudCB3aWR0aHMuCiAgICAgLy8gUGVyY2VudGFnZXMgYXJlIG9mIHRoZSB0YWJs
ZSdzIHdpZHRoLCBzbyBmb3IgZXhhbXBsZQpAQCAtMjQ3LDcgKzI0OSw3IEBAIHZvaWQgRml4ZWRU
YWJsZUxheW91dDo6bGF5b3V0KCkKICAgICAgICAgfSBlbHNlIGlmIChtX3dpZHRoW2ldLmlzUGVy
Y2VudCgpKSB7CiAgICAgICAgICAgICBjYWxjV2lkdGhbaV0gPSBtX3dpZHRoW2ldLmNhbGNWYWx1
ZSh0YWJsZUxvZ2ljYWxXaWR0aCk7CiAgICAgICAgICAgICB0b3RhbFBlcmNlbnRXaWR0aCArPSBj
YWxjV2lkdGhbaV07Ci0gICAgICAgICAgICB0b3RhbFJhd1BlcmNlbnQgKz0gbV93aWR0aFtpXS5y
YXdWYWx1ZSgpOworICAgICAgICAgICAgdG90YWxQZXJjZW50ICs9IG1fd2lkdGhbaV0ucGVyY2Vu
dCgpOwogICAgICAgICB9IGVsc2UgaWYgKG1fd2lkdGhbaV0uaXNBdXRvKCkpIHsKICAgICAgICAg
ICAgIG51bUF1dG8rKzsKICAgICAgICAgICAgIGF1dG9TcGFuICs9IG1fdGFibGUtPnNwYW5PZkVm
ZkNvbChpKTsKQEAgLTI3MCwxMSArMjcyLDExIEBAIHZvaWQgRml4ZWRUYWJsZUxheW91dDo6bGF5
b3V0KCkKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgIGlmICh0b3RhbFJhd1BlcmNlbnQpIHsKKyAgICAgICAgICAgIGlm
ICh0b3RhbFBlcmNlbnQpIHsKICAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnRXaWR0aCA9IDA7
CiAgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuRWZmQ29sczsgaSsrKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGlmIChtX3dpZHRoW2ldLmlzUGVyY2VudCgpKSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBjYWxjV2lkdGhbaV0gPSBtX3dpZHRoW2ldLnJhd1ZhbHVlKCkgKiAo
dGFibGVMb2dpY2FsV2lkdGggLSB0b3RhbEZpeGVkV2lkdGgpIC8gdG90YWxSYXdQZXJjZW50Owor
ICAgICAgICAgICAgICAgICAgICAgICAgY2FsY1dpZHRoW2ldID0gbV93aWR0aFtpXS5wZXJjZW50
KCkgKiAodGFibGVMb2dpY2FsV2lkdGggLSB0b3RhbEZpeGVkV2lkdGgpIC8gdG90YWxQZXJjZW50
OwogICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxQZXJjZW50V2lkdGggKz0gY2FsY1dpZHRo
W2ldOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQpJbmRleDogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAJKHJldmlz
aW9uIDgwMzgxKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlv
bi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5OSw3ICsxOTksNyBAQCB2b2lkIFJlbmRlclRhYmxl
U2VjdGlvbjo6YWRkQ2VsbChSZW5kZXJUCiAgICAgICAgICAgICBzd2l0Y2ggKGxvZ2ljYWxIZWln
aHQudHlwZSgpKSB7CiAgICAgICAgICAgICAgICAgY2FzZSBQZXJjZW50OgogICAgICAgICAgICAg
ICAgICAgICBpZiAoIShjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSkgfHwKLSAgICAgICAg
ICAgICAgICAgICAgICAgIChjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSAmJiBjUm93TG9n
aWNhbEhlaWdodC5yYXdWYWx1ZSgpIDwgbG9naWNhbEhlaWdodC5yYXdWYWx1ZSgpKSkKKyAgICAg
ICAgICAgICAgICAgICAgICAgIChjUm93TG9naWNhbEhlaWdodC5pc1BlcmNlbnQoKSAmJiBjUm93
TG9naWNhbEhlaWdodC5wZXJjZW50KCkgPCBsb2dpY2FsSGVpZ2h0LnBlcmNlbnQoKSkpCiAgICAg
ICAgICAgICAgICAgICAgICAgICBtX2dyaWRbbV9jUm93XS5sb2dpY2FsSGVpZ2h0ID0gbG9naWNh
bEhlaWdodDsKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAg
IGNhc2UgRml4ZWQ6CkBAIC00MzQsMjIgKzQzNCwyMiBAQCBpbnQgUmVuZGVyVGFibGVTZWN0aW9u
OjpsYXlvdXRSb3dzKGludCB0CiAgICAgICAgICAgICBpZiAobV9ncmlkW3JdLmxvZ2ljYWxIZWln
aHQuaXNBdXRvKCkpCiAgICAgICAgICAgICAgICAgbnVtQXV0bysrOwogICAgICAgICAgICAgZWxz
ZSBpZiAobV9ncmlkW3JdLmxvZ2ljYWxIZWlnaHQuaXNQZXJjZW50KCkpCi0gICAgICAgICAgICAg
ICAgdG90YWxQZXJjZW50ICs9IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnJhd1ZhbHVlKCk7Cisg
ICAgICAgICAgICAgICAgdG90YWxQZXJjZW50ICs9IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnBl
cmNlbnQoKTsKICAgICAgICAgfQogICAgICAgICBpZiAodG90YWxQZXJjZW50KSB7CiAgICAgICAg
ICAgICAvLyB0cnkgdG8gc2F0aXNmeSBwZXJjZW50CiAgICAgICAgICAgICBpbnQgYWRkID0gMDsK
LSAgICAgICAgICAgIHRvdGFsUGVyY2VudCA9IG1pbih0b3RhbFBlcmNlbnQsIDEwMCAqIHBlcmNl
bnRTY2FsZUZhY3Rvcik7CisgICAgICAgICAgICB0b3RhbFBlcmNlbnQgPSBtaW4odG90YWxQZXJj
ZW50LCAxMDApOwogICAgICAgICAgICAgaW50IHJoID0gbV9yb3dQb3NbMV0gLSBtX3Jvd1Bvc1sw
XTsKICAgICAgICAgICAgIGZvciAoaW50IHIgPSAwOyByIDwgdG90YWxSb3dzOyByKyspIHsKICAg
ICAgICAgICAgICAgICBpZiAodG90YWxQZXJjZW50ID4gMCAmJiBtX2dyaWRbcl0ubG9naWNhbEhl
aWdodC5pc1BlcmNlbnQoKSkgewotICAgICAgICAgICAgICAgICAgICBpbnQgdG9BZGQgPSBtaW4o
ZGgsICh0b3RhbEhlaWdodCAqIG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnJhd1ZhbHVlKCkgLyAo
MTAwICogcGVyY2VudFNjYWxlRmFjdG9yKSkgLSByaCk7CisgICAgICAgICAgICAgICAgICAgIGlu
dCB0b0FkZCA9IG1pbihkaCwgc3RhdGljX2Nhc3Q8aW50PigodG90YWxIZWlnaHQgKiBtX2dyaWRb
cl0ubG9naWNhbEhlaWdodC5wZXJjZW50KCkgLyAxMDApIC0gcmgpKTsKICAgICAgICAgICAgICAg
ICAgICAgLy8gSWYgdG9BZGQgaXMgbmVnYXRpdmUsIHRoZW4gd2UgZG9uJ3Qgd2FudCB0byBzaHJp
bmsgdGhlIHJvdyAodGhpcyBidWcKICAgICAgICAgICAgICAgICAgICAgLy8gYWZmZWN0ZWQgT3V0
bG9vayBXZWIgQWNjZXNzKS4KICAgICAgICAgICAgICAgICAgICAgdG9BZGQgPSBtYXgoMCwgdG9B
ZGQpOwogICAgICAgICAgICAgICAgICAgICBhZGQgKz0gdG9BZGQ7CiAgICAgICAgICAgICAgICAg
ICAgIGRoIC09IHRvQWRkOwotICAgICAgICAgICAgICAgICAgICB0b3RhbFBlcmNlbnQgLT0gbV9n
cmlkW3JdLmxvZ2ljYWxIZWlnaHQucmF3VmFsdWUoKTsKKyAgICAgICAgICAgICAgICAgICAgdG90
YWxQZXJjZW50IC09IG1fZ3JpZFtyXS5sb2dpY2FsSGVpZ2h0LnBlcmNlbnQoKTsKICAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKHIgPCB0b3RhbFJvd3MgLSAxKQogICAgICAg
ICAgICAgICAgICAgICByaCA9IG1fcm93UG9zW3IgKyAyXSAtIG1fcm93UG9zW3IgKyAxXTsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Cb3JkZXJEYXRhLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlckRhdGEuaAkocmV2aXNp
b24gODAzODEpCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQm9yZGVyRGF0YS5o
CSh3b3JraW5nIGNvcHkpCkBAIC00OSwxMyArNDksMTMgQEAgcHVibGljOgogCiAgICAgYm9vbCBo
YXNCb3JkZXJSYWRpdXMoKSBjb25zdAogICAgIHsKLSAgICAgICAgaWYgKG1fdG9wTGVmdC53aWR0
aCgpLnJhd1ZhbHVlKCkgPiAwKQorICAgICAgICBpZiAoIW1fdG9wTGVmdC53aWR0aCgpLmlzWmVy
bygpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChtX3RvcFJpZ2h0Lndp
ZHRoKCkucmF3VmFsdWUoKSA+IDApCisgICAgICAgIGlmICghbV90b3BSaWdodC53aWR0aCgpLmlz
WmVybygpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlmIChtX2JvdHRvbUxl
ZnQud2lkdGgoKS5yYXdWYWx1ZSgpID4gMCkKKyAgICAgICAgaWYgKCFtX2JvdHRvbUxlZnQud2lk
dGgoKS5pc1plcm8oKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpZiAobV9i
b3R0b21SaWdodC53aWR0aCgpLnJhd1ZhbHVlKCkgPiAwKQorICAgICAgICBpZiAoIW1fYm90dG9t
UmlnaHQud2lkdGgoKS5pc1plcm8oKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gODA2NjUpCisrKyBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBAQAorMjAxMS0w
My0wOSAgUmlrIENhYmFuaWVyICA8Y2FiYW5pZXJAZ21haWwuY29tPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGJ1ZyA1NjA1MjogcGVyY2VudGFnZXMg
YXJlIGluY29ycmVjdGx5IHJvdW5kZWQgaW4gV2ViS2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjA1MgorCisgICAgICAgICogcGxhdGZvcm0vbWFj
L2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQudHh0OgorCiAyMDExLTAz
LTA5ICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQuY2hlY2tzdW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9u
LWludGVnZXItZXhwZWN0ZWQuY2hlY2tzdW0JKHJldmlzaW9uIDgwMzgxKQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQu
Y2hlY2tzdW0JKHdvcmtpbmcgY29weSkKQEAgLTEgKzEgQEAKLTQxNGNhYWEyZWUwOTgyM2ZjYzZi
MTIwMGQzMGVjMTI3ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorZDliMWI5NDE4ZDI4ZTRm
OTlkODNlMmI4ODYwZGMyY2MKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MvcGVyY2VudGFnZS1ub24taW50ZWdlci1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3Nz
L3BlcmNlbnRhZ2Utbm9uLWludGVnZXItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA4MDM4MSkKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Nzcy9wZXJjZW50YWdlLW5vbi1pbnRlZ2Vy
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQCBsYXllciBhdCAo
MCwwKSBzaXplIDgwMHg1ODUKICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsNDQpIHNp
emUgOTEweDQKICAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDEwMHg0
IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsNDgp
IHNpemUgOTEweDQKLSAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDEw
MHg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KKyAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAo
MCwwKSBzaXplIDEwMXg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDAsNTIpIHNpemUgOTAweDQKICAgICAgICAgICBSZW5kZXJCbG9jayB7RElWfSBh
dCAoMCwwKSBzaXplIDEwMHg0IFtiZ2NvbG9yPSMwMDAwMDA3Rl0KICAgICAgICAgUmVuZGVyQmxv
Y2sge0RJVn0gYXQgKDAsNTYpIHNpemUgODkweDQKQEAgLTQ5LDcgKzQ5LDcgQEAgbGF5ZXIgYXQg
KDAsMCkgc2l6ZSA4MDB4NTg1CiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDg0KSBz
aXplIDg0MHg0CiAgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAxMDB4
NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDg4
KSBzaXplIDgzNXg0Ci0gICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAx
MDB4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCisgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQg
KDAsMCkgc2l6ZSAxMDF4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJsb2Nr
IHtESVZ9IGF0ICgwLDkyKSBzaXplIDgyNXg0CiAgICAgICAgICAgUmVuZGVyQmxvY2sge0RJVn0g
YXQgKDAsMCkgc2l6ZSAxMDB4NCBbYmdjb2xvcj0jMDAwMDAwN0ZdCiAgICAgICAgIFJlbmRlckJs
b2NrIHtESVZ9IGF0ICgwLDk2KSBzaXplIDgxNXg0CkBAIC04NCw2MSArODQsNjEgQEAgbGF5ZXIg
YXQgKDgsMTI2KSBzaXplIDEwMDB4MjAKICAgUmVuZGVyVGFibGUge1RBQkxFfSBhdCAoMCwwKSBz
aXplIDEwMDB4MjAKICAgICBSZW5kZXJUYWJsZVNlY3Rpb24ge1RCT0RZfSBhdCAoMCwwKSBzaXpl
IDEwMDB4MjAKICAgICAgIFJlbmRlclRhYmxlUm93IHtUUn0gYXQgKDAsMCkgc2l6ZSAxMDAweDIw
Ci0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgwLDEpIHNpemUgMTF4MTggW2JnY29s
b3I9IzAwMDAwMDdGXSBbcj0wIGM9MCBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2Vs
bCB7VER9IGF0ICgwLDEpIHNpemUgMTJ4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9MCBy
cz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgx
OAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMSwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3
Rl0gW3I9MCBjPTEgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAo
MTIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xIHJzPTEgY3M9MV0K
ICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAg
ICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVD
ZWxsIHtURH0gYXQgKDIxLDEpIHNpemUgMTN4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9
MiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyMiwxKSBzaXpl
IDE0eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTIgcnM9MSBjcz0xXQogICAgICAgICAg
IFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDR4MTgKICAgICAgICAgICAgIHRleHQg
cnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBh
dCAoMzQsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0zIHJzPTEgY3M9
MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDM2LDEpIHNpemUgMTB4MTggW2Jn
Y29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9MyBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAs
MCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICg0NCwxKSBz
aXplIDE1eDE4IFtiZ2NvbG9yPSMwMDAwMDA3Rl0gW3I9MCBjPTQgcnM9MSBjcz0xXQorICAgICAg
ICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoNDYsMSkgc2l6ZSAxNngxOCBbYmdjb2xvcj0jMDAw
MDAwN0ZdIFtyPTAgYz00IHJzPTEgY3M9MV0KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0g
YXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0
OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDU5LDEpIHNpemUgMTB4MTgg
W2JnY29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9NSBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRh
YmxlQ2VsbCB7VER9IGF0ICg2MiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9
MCBjPTUgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBz
aXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgotICAg
ICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoNjksMSkgc2l6ZSAxN3gxOCBbYmdjb2xvcj0j
MDAwMDAwN0ZdIFtyPTAgYz02IHJzPTEgY3M9MV0KKyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtU
RH0gYXQgKDcyLDEpIHNpemUgMTh4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9NiBycz0x
IGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAog
ICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRl
clRhYmxlQ2VsbCB7VER9IGF0ICg4NiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0g
W3I9MCBjPTcgcnM9MSBjcz0xXQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoOTAs
MSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz03IHJzPTEgY3M9MV0KICAg
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAg
ICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxs
IHtURH0gYXQgKDk2LDEpIHNpemUgMjB4MTggW2JnY29sb3I9IzAwMDAwMDdGXSBbcj0wIGM9OCBy
cz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMDAsMSkgc2l6ZSAy
MHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz04IHJzPTEgY3M9MV0KICAgICAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCA0OiAiICIKLSAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQg
KDExNiwxKSBzaXplIDEweDE4IFtiZ2NvbG9yPSMwMEZGMDA3Rl0gW3I9MCBjPTkgcnM9MSBjcz0x
XQorICAgICAgICBSZW5kZXJUYWJsZUNlbGwge1REfSBhdCAoMTIwLDEpIHNpemUgMTB4MTggW2Jn
Y29sb3I9IzAwRkYwMDdGXSBbcj0wIGM9OSBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAs
MCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMjYsMSkg
c2l6ZSAyMXgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xMCBycz0xIGNzPTFdCisgICAg
ICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxMzAsMSkgc2l6ZSAyMngxOCBbYmdjb2xvcj0j
MDAwMDAwN0ZdIFtyPTAgYz0xMCBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3Rl
eHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lk
dGggNDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxNDcsMSkgc2l6ZSAx
MHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xMSBycz0xIGNzPTFdCisgICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxNTIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAw
N0ZdIFtyPTAgYz0xMSBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0
ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDog
IiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxNTcsMSkgc2l6ZSAyM3gxOCBb
Ymdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xMiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRh
YmxlQ2VsbCB7VER9IGF0ICgxNjIsMSkgc2l6ZSAyNHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFty
PTAgYz0xMiBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDAp
IHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0g
ICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxODAsMTApIHNpemUgMTB4MCBbYmdjb2xv
cj0jMDBGRjAwN0ZdIFtyPTAgYz0xMyBycz0xIGNzPTFdCi0gICAgICAgIFJlbmRlclRhYmxlQ2Vs
bCB7VER9IGF0ICgxOTAsMSkgc2l6ZSAyNXgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0x
NCBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxODYsMTApIHNp
emUgMTB4MCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xMyBycz0xIGNzPTFdCisgICAgICAg
IFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgxOTYsMSkgc2l6ZSAyNngxOCBbYmdjb2xvcj0jMDAw
MDAwN0ZdIFtyPTAgYz0xNCBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9
IGF0ICgwLDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGgg
NDogIiAiCi0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyMTUsMSkgc2l6ZSAxMHgx
OCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xNSBycz0xIGNzPTFdCisgICAgICAgIFJlbmRl
clRhYmxlQ2VsbCB7VER9IGF0ICgyMjIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0Zd
IFtyPTAgYz0xNSBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgw
LDApIHNpemUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAi
Ci0gICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyMjUsMSkgc2l6ZSAyN3gxOCBbYmdj
b2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xNiBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxl
Q2VsbCB7VER9IGF0ICgyMzIsMSkgc2l6ZSAyOHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAg
Yz0xNiBycz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNp
emUgNHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAg
ICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyNTIsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0j
MDBGRjAwN0ZdIFtyPTAgYz0xNyBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7
VER9IGF0ICgyNjAsMSkgc2l6ZSAxMHgxOCBbYmdjb2xvcj0jMDBGRjAwN0ZdIFtyPTAgYz0xNyBy
cz0xIGNzPTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgx
OAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJl
bmRlclRhYmxlQ2VsbCB7VER9IGF0ICgyNjIsMSkgc2l6ZSAzMHgxOCBbYmdjb2xvcj0jMDAwMDAw
N0ZdIFtyPTAgYz0xOCBycz0xIGNzPTFdCisgICAgICAgIFJlbmRlclRhYmxlQ2VsbCB7VER9IGF0
ICgyNzAsMSkgc2l6ZSAzMHgxOCBbYmdjb2xvcj0jMDAwMDAwN0ZdIFtyPTAgYz0xOCBycz0xIGNz
PTFdCiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNHgxOAogICAg
ICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNDogIiAiCi0gICAgICAgIFJlbmRlclRh
YmxlQ2VsbCB7VER9IGF0ICgyOTIsMSkgc2l6ZSA3MDh4MTggW3I9MCBjPTE5IHJzPTEgY3M9MV0K
KyAgICAgICAgUmVuZGVyVGFibGVDZWxsIHtURH0gYXQgKDMwMCwxKSBzaXplIDcwMHgxOCBbcj0w
IGM9MTkgcnM9MSBjcz0xXQogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBz
aXplIDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDQ6ICIgIgpJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzL3BlcmNlbnRhZ2Utbm9uLWludGVn
ZXItZXhwZWN0ZWQucG5nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFz
IGEgYmluYXJ5IHR5cGUuCnN2bjptaW1lLXR5cGUgPSBpbWFnZS9wbmcKCmlWQk9SdzBLR2dvQUFB
QU5TVWhFVWdBQUF5QUFBQUpZQ0FZQUFBQ2Fkb0p3QUFBQzdtbERRMUJKUTBNZ1VISnZabWxzWlFB
QWVBR0YKVk05ckUwRVUvalp1cWRBaUNGcHJEcko0a0NKSldhdG9SZFEyL1JGaWF3emJIN1pGa0dR
elNkWnVOdXZ1SnJXbGlPVGkwU3JlUmUyaApCLytBSG5yd1pDOUtoVnBGS042cktHS2hGeTN4elc1
TXRxWHF3TTUrODk0MzczMXZkdDhBRFhMU05QV0FCT1FOeDFLaUVXbHNmRUpxCi9JZ0FqcUlKUVRR
bFZkdnNUaVFHUVlOeitYdm4ySG9QZ1Z0V3czdjdkN0ozclpyU3Rwb0hoUDFBNEVlYTJTcXc3eGR4
Q2xrU0FvZzgKMzZFcHgzUUkzK1BZOHV5UE9VNTVlTUcxRHlzOXhGa2lmRUExTGM1L1RiaFR6U1hU
UUlOSU9KVDFjVkkrbk5lTGxOY2RCMmx1WnNiSQpFTDFQa0thN3pPNnJZcUdjVHZZT2tMMmQ5SDVP
czk0K3dpSENDeG10UDBhNGpaNzFqTlUvNG1IaHBPYkVoajBjR0RYMCtHQVZ0eHFwCitEWENGRjhR
VFNlaVZISFpMZzN4bUs3OVZ2SktnbkNRT01wa1lZQnpXa2hQMTB4dStMcUhCWDBtMXhPdjRuZFdV
ZUY1anhObjN0VGQKNzBYYUFxOHdEaDBNR2d5YURVaFFFRVVFWVppd1VFQ0dQQm94TkxKeVB5T3JC
aHVUZXpKMUpHcTdkR0pFc1VGN050dzl0MUdrM1R6KwpLQ0p4bEVPMUNKTDhRZjRxcjhsUDVYbjV5
MXl3MkZiM2xLMmJtcnJ5NER2RjVabTVHaDdYMDhqamMwMWVmSlhVZHBOWFI1YXNlWHE4Cm11d2FQ
K3hYbHpIbWdqV1B4SE93Ky9FdFg1WE1seW1NRk1YalZmUHFTNFIxV2pFMzM1OXNmenM5NGk3UExy
WFdjNjJKaXpkV201ZG4KL1dwSSsrNnF2SlBtVmZsUFh2WHgvR2ZOeEdQaUtURW1kb3JuSVltWHhT
N3hrdGhMcXd2aVlHM0hDSjJWaGluU2JaSDZKTlZnWUpxOAo5UzlkUDF0NHZVWi9EUFZSbEJuTTBs
U0o5My9DS21RMG5ia09iL3FQMjhmOEYrVDNpdWVmS0FJdmJPREltYnB0VTNIdkVLRmxwVzV6CnJn
SVh2OUY5OExadWE2TitPUHdFV0R5ckZxMVNOWjhndkFFY2RvZDZIdWdwbU5PV2xzMDVVb2NzbjVP
NjZjcGlVc3hRMjBOU1V0Y2wKMTJWTEZyT1pWV0xwZHRpWjB4MXVIS0U1UXZmRXAwcGxrL3F2OFJH
dy9iQlMrZm1zVXRsK1RocldnWmY2YjhDOC9VWEFlSXVKQUFBZwpBRWxFUVZSNEFlM2QzWTljZDNr
SDhOL3V6dm8xdGhQbmhSQWdPRzJLRWxDQVFBVklDSW9FdllBYkxpR0lTMjdnZ244aHNjU2ZnTVFO
CmwwaUF1QUdwS2dnS29xZ1NhdE1xS0NtbFNTRWxRRXJ6NXJ3bnRuZnQ3ZTg1eVRHN2pzZk9kTTZh
eDA4K0k2MW5kK2FjTTgvemVYWm0KejNmUEdlL0tWcjgwRndJRUNCQWdRSUFBQVFJRUNGd0dnZFhM
OEJnZWdnQUJBZ1FJRUNCQWdBQUJBb09BQU9JYmdRQUJBZ1FJRUNCQQpnQUNCeXlZZ2dGdzJhZzlF
Z0FBQkFnUUlFQ0JBZ0lBQTRudUFBQUVDQkFnUUlFQ0FBSUhMSmlDQVhEWnFEMFNBQUFFQ0JBZ1FJ
RUNBCmdBRGllNEFBQVFJRUNCQWdRSUFBZ2NzbUlJQmNObW9QUklBQUFRSUVDQkFnUUlEQTdGSUVL
OGRYTHJXSSt5K2p3TmJkL216TFplVDIKVUFRSUVDQkFnQUFCQWhNTE9BSXlNYWpORVNCQWdBQUJB
Z1FJRUNBd1gwQUFtVy9qSGdJRUNCQWdRSUFBQVFJRUpoWVFRQ1lHdFRrQwpCQWdRSUVDQUFBRUNC
T1lMQ0NEemJkeERnQUFCQWdRSUVDQkFnTURFQWdMSXhLQTJSNEFBQVFJRUNCQWdRSURBZkFFQlpM
Nk5ld2dRCklFQ0FBQUVDQkFnUW1GaEFBSmtZMU9ZSUVDQkFnQUFCQWdRSUVKZ3ZJSURNdDNFUEFR
SUVDQkFnUUlBQUFRSVRDd2dnRTRQYUhBRUMKQkFnUUlFQ0FBQUVDOHdVRWtQazI3aUZBZ0FBQkFn
UUlFQ0JBWUdJQkFXUmlVSnNqUUlBQUFRSUVDQkFnUUdDK2dBQXkzOFk5QkFnUQpJRUNBQUFFQ0JB
aE1MQ0NBVEF4cWN3UUlFQ0JBZ0FBQkFnUUl6QmNRUU9iYnVJY0FBUUlFQ0JBZ1FJQUFnWWtGQkpD
SlFXMk9BQUVDCkJBZ1FJRUNBQUlINUFnTElmQnYzRUNCQWdBQUJBZ1FJRUNBd3NZQUFNakdvelJF
Z1FJQUFBUUlFQ0JBZ01GOUFBSmx2NHg0Q0JBZ1EKSUVDQUFBRUNCQ1lXRUVBbUJyVTVBZ1FJRUNC
QWdBQUJBZ1RtQ3dnZzgyM2NRNEFBQVFJRUNCQWdRSURBeEFJQ3lNU2dOa2VBQUFFQwpCQWdRSUVD
QXdId0JBV1MralhzSUVDQkFnQUFCQWdRSUVKaFlRQUNaR05UbUNCQWdRSUFBQVFJRUNCQ1lMeUNB
ekxkeER3RUNCQWdRCklFQ0FBQUVDRXdzSUlCT0QyaHdCQWdRSUVDQkFnQUFCQXZNRkJKRDVOdTRo
UUlBQUFRSUVDQkFnUUdCaUFRRmtZbENiSTBDQUFBRUMKQkFnUUlFQmd2b0FBTXQvR1BRUUlFQ0JB
Z0FBQkFnUUlUQ3dnZ0V3TWFuTUVDQkFnUUlBQUFRSUVDTXdYRUVEbTI3aUhBQUVDQkFnUQpJRUNB
QUlHSkJRU1FpVUZ0amdBQkFnUUlFQ0JBZ0FDQitRSUN5SHdiOXhBZ1FJQUFBUUlFQ0JBZ01MR0FB
REl4cU0wUklFQ0FBQUVDCkJBZ1FJREJmUUFDWmIrTWVBZ1FJRUNCQWdBQUJBZ1FtRmhCQUpnYTFP
UUlFQ0JBZ1FJQUFBUUlFNWdzSUlQTnQzRU9BQUFFQ0JBZ1EKSUVDQXdNUUNBc2pFb0RaSGdBQUJB
Z1FJRUNCQWdNQjhBUUZrdm8xN0NCQWdRSUFBQVFJRUNCQ1lXRUFBbVJqVTVnZ1FJRUNBQUFFQwpC
QWdRbUM4Z2dNeTNjUThCQWdRSUVDQkFnQUFCQWhNTENDQVRnOW9jQVFJRUNCQWdRSUFBQVFMekJR
U1ErVGJ1SVVDQUFBRUNCQWdRCklFQmdZZ0VCWkdKUW15TkFnQUFCQWdRSUVDQkFZTDZBQURMZnhq
MEVDQkFnUUlBQUFRSUVDRXdzSUlCTURHcHpCQWdRSUVDQUFBRUMKQkFqTUZ4QkE1dHU0aHdBQkFn
UUlFQ0JBZ0FDQmlRVUVrSWxCYlk0QUFRSUVDQkFnUUlBQWdma0NBc2g4bTVUM0hEOStQR1ZkaWlK
QQpnQUFCQWdRSUVDRHdlZ1FFa05lalpCa0NCQWdRSUVDQUFBRUNCQ1lSRUVBbVliUVJBZ1FJRUNC
QWdBQUJBZ1JlajRBQThucVVMRU9BCkFBRUNCQWdRSUVDQXdDUUNLMXY5Y3JFdHJSeGZ1ZGpkN3J2
TUFsdDNYM1JjbDdrYUQwZUFBQUVDQkFnUUlFQmdNUUZIUUJienNqUUIKQWdRSUVDQkFnQUFCQWtz
SUNDQkw0Rm1WQUFFQ0JBZ1FJRUNBQUlIRkJBU1F4YndzVFlBQUFRSUVDQkFnUUlEQUVnSUN5Qko0
VmlWQQpnQUFCQWdRSUVDQkFZREVCQVdReEwwc1RJRUNBQUFFQ0JBZ1FJTENFZ0FDeUJKNVZDUkFn
UUlBQUFRSUVDQkJZVEVBQVdjekwwZ1FJCkVDQkFnQUFCQWdRSUxDRWdnQ3lCWjFVQ0JBZ1FJRUNB
QUFFQ0JCWVRFRUFXODdJMEFRSUVDQkFnUUlBQUFRSkxDQWdnUytCWmxRQUIKQWdRSUVDQkFnQUNC
eFFRRWtNVzhMRTJBQUFFQ0JBZ1FJRUNBd0JJQ0FzZ1NlRllsUUlBQUFRSUVDQkFnUUdBeEFRRmtN
UzlMRXlCQQpnQUFCQWdRSUVDQ3doSUFBc2dTZVZRa1FJRUNBQUFFQ0JBZ1FXRXhBQUZuTXk5SUVD
QkFnUUlBQUFRSUVDQ3doSUlBc2dXZFZBZ1FJCkVDQkFnQUFCQWdRV0V4QkFGdk95TkFFQ0JBZ1FJ
RUNBQUFFQ1N3Z0lJRXZnV1pVQUFRSUVDQkFnUUlBQWdjVUVCSkRGdkN4TmdBQUIKQWdRSUVDQkFn
TUFTQWdMSUVuaFdKVUNBQUFFQ0JBZ1FJRUJnTVFFQlpERXZTeE1nUUlBQUFRSUVDQkFnc0lTQUFM
SUVubFVKRUNCQQpnQUFCQWdRSUVGaE1RQUJaek12U0JBZ1FJRUNBQUFFQ0JBZ3NJU0NBTElGblZR
SUVDQkFnUUlBQUFRSUVGaE1RUUJienNqUUJBZ1FJCkVDQkFnQUFCQWtzSUNDQkw0Rm1WQUFFQ0JB
Z1FJRUNBQUlIRkJBU1F4YndzVFlBQUFRSUVDQkFnUUlEQUVnSUN5Qko0VmlWQWdBQUIKQWdRSUVD
QkFZREVCQVdReEwwc1RJRUNBQUFFQ0JBZ1FJTENFZ0FDeUJKNVZDUkFnUUlBQUFRSUVDQkJZVEVB
QVdjekwwZ1FJRUNCQQpnQUFCQWdRSUxDRWdnQ3lCWjFVQ0JBZ1FJRUNBQUFFQ0JCWVRFRUFXODdJ
MEFRSUVDQkFnUUlBQUFRSkxDQWdnUytCWmxRQUJBZ1FJCkVDQkFnQUNCeFFRRWtNVzhMRTJBQUFF
Q0JBZ1FJRUNBd0JJQ0FzZ1NlSCtPVlk4ZlAvN25lRmlQU1lBQUFRSUVDQkFnUUdBU0FRRmsKRWtZ
YklVQ0FBQUVDQkFnUUlFRGc5UWdJSUs5SHlUSUVDQkFnUUlBQUFRSUVDRXdpSUlCTXdtZ2pCQWdR
SUVDQUFBRUNCQWk4SG9HVgpyWDY1MklJcngxY3VkcmY3THJQQTF0MFhIZGRscnNiREVTQkFnQUFC
QWdRSUVGaE13QkdReGJ3c1RZQUFBUUlFQ0JBZ1FJREFFZ0lDCnlCSjRWaVZBZ0FBQkFnUUlFQ0JB
WURFQkFXUXhMMHNUSUVDQUFBRUNCQWdRSUxDRWdBQ3lCSjVWQ1JBZ1FJQUFBUUlFQ0JCWVRFQUEK
V2N6TDBnUUlFQ0JBZ0FBQkFnUUlMQ0VnZ0N5QloxVUNCQWdRSUVDQUFBRUNCQllURUVBVzg3STBB
UUlFQ0JBZ1FJQUFBUUpMQ0Z6eQo3NEFzc1cyckVpQkFnQUFCQWdRSUVDQkFZSWVBSXlBN09IeEJn
QUFCQWdRSUVDQkFnTUJ1Q2dnZ3U2bHIyd1FJRUNCQWdBQUJBZ1FJCjdCQVFRSFp3K0lJQUFRSUVD
QkFnUUlBQWdkMFVFRUIyVTllMkNSQWdRSUFBQVFJRUNCRFlJU0NBN09Ed0JRRUNCQWdRSUVDQUFB
RUMKdXlrZ2dPeW1ybTBUSUVDQUFBRUNCQWdRSUxCRFFBRFp3ZUVMQWdRSUVDQkFnQUFCQWdSMlUw
QUEyVTFkMnlaQWdBQUJBZ1FJRUNCQQpZSWVBQUxLRHd4Y0VDQkFnUUlBQUFRSUVDT3ltZ0FDeW03
cTJUWUFBQVFJRUNCQWdRSURBRGdFQlpBZUhMd2dRSUVDQUFBRUNCQWdRCjJFMEJBV1EzZFcyYkFB
RUNCQWdRSUVDQUFJRWRBZ0xJRGc1ZkVDQkFnQUFCQWdRSUVDQ3dtd0lDeUc3cTJqWUJBZ1FJRUNC
QWdBQUIKQWpzRUJKQWRITDRnUUlBQUFRSUVDQkFnUUdBM0JRU1EzZFMxYlFJRUNCQWdRSUFBQVFJ
RWRnZ0lJRHM0ZkVHQUFBRUNCQWdRSUVDQQp3RzRLekM2MThaWGpLNWRhNUUvMzM5TS92ZnRQWDg3
OUxKWTdQdmZlQzk4UjY4VGxVdHUvWjFocThlM0hhdU82OGZuRkhtZjdjb3YyCkVkdU95ejNEdjMv
Nlo5N2puYi9jLy9meHhrYzZmM3VYNjNIajhjOS83TGp0UW85L29lV1c3VHNlS3k3M0RQKys5cC96
NjVpMzNGUjEKUkFYekhpUHUyMTdQeFphYnNwNTQzSXM5VnR3LzFuV3A1YWF1S3g3NzFjczlGeW55
N3J2SEFzZWxYUk1nUUlBQUFRTFpCQndCeVRZUgo5UkFnUUlBQUFRSUVDQkFvTENDQUZCNnUxZ2dR
SUVDQUFBRUNCQWhrRXhCQXNrMUVQUVFJRUNCQWdBQUJBZ1FLQ3dnZ2hZZXJOUUlFCkNCQWdRSUFB
QVFMWkJBU1FiQk5SRHdFQ0JBZ1FJRUNBQUlIQ0FnSkk0ZUZxalFBQkFnUUlFQ0JBZ0VBMkFRRWsy
MFRVUTRBQUFRSUUKQ0JBZ1FLQ3dnQUJTZUxoYUkwQ0FBQUVDQkFnUUlKQk5RQURKTmhIMUVDQkFn
QUFCQWdRSUVDZ3NJSUFVSHE3V0NCQWdRSUFBQVFJRQpDR1FURUVDeVRVUTlCQWdRSUVDQUFBRUNC
QW9MQ0NDRmg2czFBZ1FJRUNCQWdBQUJBdGtFQkpCc0UxRVBBUUlFQ0JBZ1FJQUFnY0lDCkFramg0
V3FOQUFFQ0JBZ1FJRUNBUURZQkFTVGJSTlJEZ0FBQkFnUUlFQ0JBb0xDQUFGSjR1Rm9qUUlBQUFR
SUVDQkFna0UxQUFNazIKRWZVUUlFQ0FBQUVDQkFnUUtDd2dnQlFlcnRZSUVDQkFnQUFCQWdRSVpC
TVFRTEpOUkQwRUNCQWdRSUFBQVFJRUNndXNiUFZMNGY2MApSb0FBQVFJRUNCQWdRSUJBSWdGSFFC
SU5ReWtFQ0JBZ1FJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVDaVFRRWtFVERVQW9CCkFn
UUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUVDQkFnUUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRSUVD
Z3VvQUFVbjNDK2lOQWdBQUIKQWdRSUVDQ1FTRUFBU1RRTXBSQWdRSUFBQVFJRUNCQ29MaUNBVkor
dy9nZ1FJRUNBQUFFQ0JBZ2tFaEJBRWcxREtRUUlFQ0JBZ0FBQgpBZ1NxQ3dnZzFTZXNQd0lFQ0JB
Z1FJQUFBUUtKQkFTUVJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlRbnJqd0FCQWdRSUVDQkFnRUFp
CkFRRWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlNmY0w2STBDQUFBRUNCQWdRSUpCSVFBQkpOQXls
RUNCQWdBQUJBZ1FJRUtndUlJQlUKbjdEK0NCQWdRSUFBQVFJRUNDUVNFRUFTRFVNcEJBZ1FJRUNB
QUFFQ0JLb0xDQ0RWSjZ3L0FnUUlFQ0JBZ0FBQkFva0VCSkJFdzFBSwpBUUlFQ0JBZ1FJQUFnZW9D
QWtqMUNldVBBQUVDQkFnUUlFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdRSUVDQkFvTHFBQUZKOXd2b2pR
SUFBCkFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFBRUNCQWdRcUM0Z2dGU2ZzUDRJRUNCQWdBQUJB
Z1FJSkJJUVFCSU5ReWtFQ0JBZ1FJQUEKQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQ2lRUUVr
RVREVUFvQkFnUUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUVDQkFnUUlCQQpJZ0VCSk5Fd2xFS0FB
QUVDQkFnUUlFQ2d1b0FBVW4zQytpTkFnQUFCQWdRSUVDQ1FTRUFBU1RRTXBSQWdRSUFBQVFJRUNC
Q29MaUNBClZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhCQUVnMURLUVFJRUNCQWdBQUJBZ1NxQ3dnZzFT
ZXNQd0lFQ0JBZ1FJQUFBUUtKQkFTUVJNTlEKQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQkFn
UUlFQ0JBZ0VBaUFRRWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlNmY0w2STBDQQpBQUVDQkFnUUlK
QklRQUJKTkF5bEVDQkFnQUFCQWdRSUVLZ3VJSUJVbjdEK0NCQWdRSUFBQVFJRUNDUVNFRUFTRFVN
cEJBZ1FJRUNBCkFBRUNCS29MQ0NEVko2dy9BZ1FJRUNCQWdBQUJBb2tFQkpCRXcxQUtBUUlFQ0JB
Z1FJQUFnZW9DQWtqMUNldVBBQUVDQkFnUUlFQ0EKUUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xx
QUFGSjl3dm9qUUlBQUFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFBRUNCQWdRcUM0ZwpnRlNmc1A0
SUVDQkFnQUFCQWdRSUpCSVFRQklOUXlrRUNCQWdRSUFBQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNB
QUFFQ2lRUUVrRVREClVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSjY0OEFBUUlFQ0JBZ1FJQkFJZ0VC
Sk5Fd2xFS0FBQUVDQkFnUUlFQ2d1b0FBVW4zQytpTkEKZ0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFn
UUlBQUFRSUVDQkNvTGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhCQUVnMURLUVFJRUNCQQpnQUFC
QWdTcUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSkJBU1FSTU5RQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5
UW5yandBQkFnUUlFQ0JBCmdFQWlBUUVrMFRDVVFvQUFBUUlFQ0JBZ1FLQzZnQUJTZmNMNkkwQ0FB
QUVDQkFnUUlKQklRQUJKTkF5bEVDQkFnQUFCQWdRSUVLZ3UKSUlCVW43RCtDQkFnUUlBQUFRSUVD
Q1FTRUVBU0RVTXBCQWdRSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJRUNCQWdBQUJBb2tFQkpCRQp3
MUFLQVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFFQ0JBZ1FJRUNBUUNJQkFTVFJNSlJDZ0FBQkFn
UUlFQ0JBb0xxQUFGSjl3dm9qClFJQUFBUUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFD
NGdnRlNmc1A0SUVDQkFnQUFCQWdRSUpCSVFRQklOUXlrRUNCQWcKUUlBQUFRSUVxZ3NJSU5VbnJE
OENCQWdRSUVDQUFBRUNpUVFFa0VURFVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSjY0OEFBUUlFQ0JB
ZwpRSUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNndW9BQVVuM0MraU5BZ0FBQkFnUUlFQ0NRU0VB
QVNUUU1wUkFnUUlBQUFRSUVDQkNvCkxpQ0FWSit3L2dnUUlFQ0FBQUVDQkFna0VoQkFFZzFES1FR
SUVDQkFnQUFCQWdTcUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSkJBU1EKUk1OUUNnRUNCQWdRSUVD
QUFJSHFBZ0pJOVFucmp3QUJBZ1FJRUNCQWdFQWlBUUVrMFRDVVFvQUFBUUlFQ0JBZ1FLQzZnQUJT
ZmNMNgpJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWxFQ0JBZ0FBQkFnUUlFS2d1SUlCVW43RCtDQkFn
UUlBQUFRSUVDQ1FTRUVBU0RVTXBCQWdRCklFQ0FBQUVDQktvTENDRFZKNncvQWdRSUVDQkFnQUFC
QW9rRUJKQkV3MUFLQVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFFQ0JBZ1EKSUVDQVFDSUJBU1RS
TUpSQ2dBQUJBZ1FJRUNCQW9McUFBRko5d3ZvalFJQUFBUUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0FB
QUVDQkFnUQpxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUlKQklRUUJJTlF5a0VDQkFnUUlBQUFRSUVx
Z3NJSU5VbnJEOENCQWdRSUVDQUFBRUNpUVFFCmtFVERVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2
NDhBQVFJRUNCQWdRSUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNndW9BQVVuM0MKK2lOQWdBQUJB
Z1FJRUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFQ0JDb0xpQ0FWSit3L2dnUUlFQ0FBQUVDQkFna0Vo
QkFFZzFES1FRSQpFQ0JBZ0FBQkFnU3FDd2dnMVNlc1B3SUVDQkFnUUlBQUFRS0pCQVNRUk1OUUNn
RUNCQWdRSUVDQUFJSHFBZ0pJOVFucmp3QUJBZ1FJCkVDQkFnRUFpQVFFazBUQ1VRb0FBQVFJRUNC
QWdRS0M2Z0FCU2ZjTDZJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWxFQ0JBZ0FBQkFnUUkKRUtndUlJ
QlVuN0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1wQkFnUUlFQ0FBQUVDQktvTENDRFZKNncvQWdR
SUVDQkFnQUFCQW9rRQpCSkJFdzFBS0FRSUVDQkFnUUlBQWdlb0NBa2oxQ2V1UEFBRUNCQWdRSUVD
QVFDSUJBU1RSTUpSQ2dBQUJBZ1FJRUNCQW9McUFBRko5Cnd2b2pRSUFBQVFJRUNCQWdrRWhBQUVr
MERLVVFJRUNBQUFFQ0JBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUlKQklRUUJJTlF5a0UKQ0JB
Z1FJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVDaVFRRWtFVERVQW9CQWdRSUVDQkFnQUNC
NmdJQ1NQVUo2NDhBQVFJRQpDQkFnUUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjND
K2lOQWdBQUJBZ1FJRUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFCkNCQ29MaUNBVkordy9nZ1FJRUNB
QUFFQ0JBZ2tFaEJBRWcxREtRUUlFQ0JBZ0FBQkFnU3FDd2dnMVNlc1B3SUVDQkFnUUlBQUFRS0oK
QkFTUVJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlRbnJqd0FCQWdRSUVDQkFnRUFpQVFFazBUQ1VR
b0FBQVFJRUNCQWdRS0M2Z0FCUwpmY0w2STBDQUFBRUNCQWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJB
Z1FJRUtndUlJQlVuN0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1wCkJBZ1FJRUNBQUFFQ0JLb0xD
Q0RWSjZ3L0FnUUlFQ0JBZ0FBQkFva0VCSkJFdzFBS0FRSUVDQkFnUUlBQWdlb0NBa2oxQ2V1UEFB
RUMKQkFnUUlFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdRSUVDQkFvTHFBQUZKOXd2b2pRSUFBQVFJRUNC
QWdrRWhBQUVrMERLVVFJRUNBQUFFQwpCQWdRcUM0Z2dGU2ZzUDRJRUNCQWdBQUJBZ1FJSkJJUVFC
SU5ReWtFQ0JBZ1FJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVDCmlRUUVrRVREVUFvQkFn
UUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUVDQkFnUUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRSUVD
Z3VvQUEKVW4zQytpTkFnQUFCQWdRSUVDQ1FTRUFBU1RRTXBSQWdRSUFBQVFJRUNCQ29MaUNBVkor
dy9nZ1FJRUNBQUFFQ0JBZ2tFaEJBRWcxRApLUVFJRUNCQWdBQUJBZ1NxQ3dnZzFTZXNQd0lFQ0JB
Z1FJQUFBUUtKQkFTUVJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlRbnJqd0FCCkFnUUlFQ0JBZ0VB
aUFRRWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlNmY0w2STBDQUFBRUNCQWdRSUpCSVFBQkpOQXls
RUNCQWdBQUIKQWdRSUVLZ3VJSUJVbjdEK0NCQWdRSUFBQVFJRUNDUVNFRUFTRFVNcEJBZ1FJRUNB
QUFFQ0JLb0xDQ0RWSjZ3L0FnUUlFQ0JBZ0FBQgpBb2tFQkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9D
QWtqMUNldVBBQUVDQkFnUUlFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdRSUVDQkFvTHFBCkFGSjl3dm9q
UUlBQUFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFBRUNCQWdRcUM0Z2dGU2ZzUDRJRUNCQWdBQUJB
Z1FJSkJJUVFCSU4KUXlrRUNCQWdRSUFBQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQ2lRUUVr
RVREVUFvQkFnUUlFQ0JBZ0FDQjZnSUNTUFVKNjQ4QQpBUUlFQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FB
QUVDQkFnUUlFQ2d1b0FBVW4zQytpTkFnQUFCQWdRSUVDQ1FTRUFBU1RRTXBSQWdRSUFBCkFRSUVD
QkNvTGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhCQUVnMURLUVFJRUNCQWdBQUJBZ1NxQ3dnZzFT
ZXNQd0lFQ0JBZ1FJQUEKQVFLSkJBU1FSTU5RQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQkFn
UUlFQ0JBZ0VBaUFRRWswVENVUW9BQUFRSUVDQkFnUUtDNgpnQUJTZmNMNkkwQ0FBQUVDQkFnUUlK
QklRQUJKTkF5bEVDQkFnQUFCQWdRSUVLZ3VJSUJVbjdEK0NCQWdRSUFBQVFJRUNDUVNFRUFTCkRV
TXBCQWdRSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJRUNCQWdBQUJBb2tFQkpCRXcxQUtBUUlFQ0JB
Z1FJQUFnZW9DQWtqMUNldVAKQUFFQ0JBZ1FJRUNBUUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xx
QUFGSjl3dm9qUUlBQUFRSUVDQkFna0VoQUFFazBES1VRSUVDQQpBQUVDQkFnUXFDNGdnRlNmc1A0
SUVDQkFnQUFCQWdRSUpCSVFRQklOUXlrRUNCQWdRSUFBQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNB
CkFBRUNpUVFFa0VURFVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSjY0OEFBUUlFQ0JBZ1FJQkFJZ0VC
Sk5Fd2xFS0FBQUVDQkFnUUlFQ2cKdW9BQVVuM0MraU5BZ0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFn
UUlBQUFRSUVDQkNvTGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhCQQpFZzFES1FRSUVDQkFnQUFC
QWdTcUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSkJBU1FSTU5RQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5
UW5yCmp3QUJBZ1FJRUNCQWdFQWlBUUVrMFRDVVFvQUFBUUlFQ0JBZ1FLQzZnQUJTZmNMNkkwQ0FB
QUVDQkFnUUlKQklRQUJKTkF5bEVDQkEKZ0FBQkFnUUlFS2d1SUlCVW43RCtDQkFnUUlBQUFRSUVD
Q1FTRUVBU0RVTXBCQWdRSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJRUNCQQpnQUFCQW9rRUJKQkV3
MUFLQVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFFQ0JBZ1FJRUNBUUNJQkFTVFJNSlJDZ0FBQkFn
UUlFQ0JBCm9McUFBRko5d3ZvalFJQUFBUUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFD
NGdnRlNmc1A0SUVDQkFnQUFCQWdRSUpCSVEKUUJJTlF5a0VDQkFnUUlBQUFRSUVxZ3NJSU5VbnJE
OENCQWdRSUVDQUFBRUNpUVFFa0VURFVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSgo2NDhBQVFJRUNC
QWdRSUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNndW9BQVVuM0MraU5BZ0FBQkFnUUlFQ0NRU0VB
QVNUUU1wUkFnClFJQUFBUUlFQ0JDb0xpQ0FWSit3L2dnUUlFQ0FBQUVDQkFna0VoQkFFZzFES1FR
SUVDQkFnQUFCQWdTcUN3Z2cxU2VzUHdJRUNCQWcKUUlBQUFRS0pCQVNRUk1OUUNnRUNCQWdRSUVD
QUFJSHFBZ0pJOVFucmp3QUJBZ1FJRUNCQWdFQWlBUUVrMFRDVVFvQUFBUUlFQ0JBZwpRS0M2Z0FC
U2ZjTDZJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWxFQ0JBZ0FBQkFnUUlFS2d1SUlCVW43RCtDQkFn
UUlBQUFRSUVDQ1FTCkVFQVNEVU1wQkFnUUlFQ0FBQUVDQktvTENDRFZKNncvQWdRSUVDQkFnQUFC
QW9rRUJKQkV3MUFLQVFJRUNCQWdRSUFBZ2VvQ0FrajEKQ2V1UEFBRUNCQWdRSUVDQVFDSUJBU1RS
TUpSQ2dBQUJBZ1FJRUNCQW9McUFBRko5d3ZvalFJQUFBUUlFQ0JBZ2tFaEFBRWswREtVUQpJRUNB
QUFFQ0JBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUlKQklRUUJJTlF5a0VDQkFnUUlBQUFRSUVx
Z3NJSU5VbnJEOENCQWdRCklFQ0FBQUVDaVFRRWtFVERVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2
NDhBQVFJRUNCQWdRSUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1EKSUVDZ3VvQUFVbjNDK2lOQWdBQUJB
Z1FJRUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFQ0JDb0xpQ0FWSit3L2dnUUlFQ0FBQUVDQkFnawpF
aEJBRWcxREtRUUlFQ0JBZ0FBQkFnU3FDd2dnMVNlc1B3SUVDQkFnUUlBQUFRS0pCQVNRUk1OUUNn
RUNCQWdRSUVDQUFJSHFBZ0pJCjlRbnJqd0FCQWdRSUVDQkFnRUFpQVFFazBUQ1VRb0FBQVFJRUNC
QWdRS0M2Z0FCU2ZjTDZJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWwKRUNCQWdBQUJBZ1FJRUtndUlJ
QlVuN0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1wQkFnUUlFQ0FBQUVDQktvTENDRFZKNncvQWdR
SQpFQ0JBZ0FBQkFva0VCSkJFdzFBS0FRSUVDQkFnUUlBQWdlb0NBa2oxQ2V1UEFBRUNCQWdRSUVD
QVFDSUJBU1RSTUpSQ2dBQUJBZ1FJCkVDQkFvTHFBQUZKOXd2b2pRSUFBQVFJRUNCQWdrRWhBQUVr
MERLVVFJRUNBQUFFQ0JBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUkKSkJJUVFCSU5ReWtFQ0JB
Z1FJQUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVDaVFRRWtFVERVQW9CQWdRSUVDQkFnQUNC
NmdJQwpTUFVKNjQ4QUFRSUVDQkFnUUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjND
K2lOQWdBQUJBZ1FJRUNDUVNFQUFTVFFNCnBSQWdRSUFBQVFJRUNCQ29MaUNBVkordy9nZ1FJRUNB
QUFFQ0JBZ2tFaEJBRWcxREtRUUlFQ0JBZ0FBQkFnU3FDd2dnMVNlc1B3SUUKQ0JBZ1FJQUFBUUtK
QkFTUVJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlRbnJqd0FCQWdRSUVDQkFnRUFpQVFFazBUQ1VR
b0FBQVFJRQpDQkFnUUtDNmdBQlNmY0w2STBDQUFBRUNCQWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJB
Z1FJRUtndUlJQlVuN0QrQ0JBZ1FJQUFBUUlFCkNDUVNFRUFTRFVNcEJBZ1FJRUNBQUFFQ0JLb0xD
Q0RWSjZ3L0FnUUlFQ0JBZ0FBQkFva0VCSkJFdzFBS0FRSUVDQkFnUUlBQWdlb0MKQWtqMUNldVBB
QUVDQkFnUUlFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdRSUVDQkFvTHFBQUZKOXd2b2pRSUFBQVU2NHk2
NEFBQmQ5U1VSQgpWQUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFDNGdnRlNmc1A0SUVD
QkFnQUFCQWdRSUpCSVFRQklOUXlrRUNCQWdRSUFBCkFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQUFB
RUNpUVFFa0VURFVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSjY0OEFBUUlFQ0JBZ1FJQkEKSWdFQkpO
RXdsRUtBQUFFQ0JBZ1FJRUNndW9BQVVuM0MraU5BZ0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFnUUlB
QUFRSUVDQkNvTGlDQQpWSit3L2dnUUlFQ0FBQUVDQkFna0VoQkFFZzFES1FRSUVDQkFnQUFCQWdT
cUN3Z2cxU2VzUHdJRUNCQWdRSUFBQVFLSkJBU1FSTU5RCkNnRUNCQWdRSUVDQUFJSHFBZ0pJOVFu
cmp3QUJBZ1FJRUNCQWdFQWlBUUVrMFRDVVFvQUFBUUlFQ0JBZ1FLQzZnQUJTZmNMNkkwQ0EKQUFF
Q0JBZ1FJSkJJUUFCSk5BeWxFQ0JBZ0FBQkFnUUlFS2d1SUlCVW43RCtDQkFnUUlBQUFRSUVDQ1FT
RUVBU0RVTXBCQWdRSUVDQQpBQUVDQktvTENDRFZKNncvQWdRSUVDQkFnQUFCQW9rRUJKQkV3MUFL
QVFJRUNCQWdRSUFBZ2VvQ0FrajFDZXVQQUFFQ0JBZ1FJRUNBClFDSUJBU1RSTUpSQ2dBQUJBZ1FJ
RUNCQW9McUFBRko5d3ZvalFJQUFBUUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFDNGcK
Z0ZTZnNQNElFQ0JBZ0FBQkFnUUlKQklRUUJJTlF5a0VDQkFnUUlBQUFRSUVxZ3NJSU5VbnJEOENC
QWdRSUVDQUFBRUNpUVFFa0VURApVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2NDhBQVFJRUNCQWdR
SUJBSWdFQkpORXdsRUtBQUFFQ0JBZ1FJRUNndW9BQVVuM0MraU5BCmdBQUJBZ1FJRUNDUVNFQUFT
VFFNcFJBZ1FJQUFBUUlFQ0JDb0xpQ0FWSit3L2dnUUlFQ0FBQUVDQkFna0VoQkFFZzFES1FRSUVD
QkEKZ0FBQkFnU3FDd2dnMVNlc1B3SUVDQkFnUUlBQUFRS0pCQVNRUk1OUUNnRUNCQWdRSUVDQUFJ
SHFBZ0pJOVFucmp3QUJBZ1FJRUNCQQpnRUFpQVFFazBUQ1VRb0FBQVFJRUNCQWdRS0M2Z0FCU2Zj
TDZJMENBQUFFQ0JBZ1FJSkJJUUFCSk5BeWxFQ0JBZ0FBQkFnUUlFS2d1CklJQlVuN0QrQ0JBZ1FJ
QUFBUUlFQ0NRU0VFQVNEVU1wQkFnUUlFQ0FBQUVDQktvTENDRFZKNncvQWdRSUVDQkFnQUFCQW9r
RUJKQkUKdzFBS0FRSUVDQkFnUUlBQWdlb0NBa2oxQ2V1UEFBRUNCQWdRSUVDQVFDSUJBU1RSTUpS
Q2dBQUJBZ1FJRUNCQW9McUFBRko5d3ZvagpRSUFBQVFJRUNCQWdrRWhBQUVrMERLVVFJRUNBQUFF
Q0JBZ1FxQzRnZ0ZTZnNQNElFQ0JBZ0FBQkFnUUlKQklRUUJJTlF5a0VDQkFnClFJQUFBUUlFcWdz
SUlOVW5yRDhDQkFnUUlFQ0FBQUVDaVFRRWtFVERVQW9CQWdRSUVDQkFnQUNCNmdJQ1NQVUo2NDhB
QVFJRUNCQWcKUUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjNDK2lOQWdBQUJBZ1FJ
RUNDUVNFQUFTVFFNcFJBZ1FJQUFBUUlFQ0JDbwpMaUNBVkordy9nZ1FJRUNBQUFFQ0JBZ2tFaEJB
RWcxREtRUUlFQ0JBZ0FBQkFnU3FDd2dnMVNlc1B3SUVDQkFnUUlBQUFRS0pCQVNRClJNTlFDZ0VD
QkFnUUlFQ0FBSUhxQWdKSTlRbnJqd0FCQWdRSUVDQkFnRUFpQVFFazBUQ1VRb0FBQVFJRUNCQWdR
S0M2Z0FCU2ZjTDYKSTBDQUFBRUNCQWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJBZ1FJRUtndUlJQlVu
N0QrQ0JBZ1FJQUFBUUlFQ0NRU0VFQVNEVU1wQkFnUQpJRUNBQUFFQ0JLb0xDQ0RWSjZ3L0FnUUlF
Q0JBZ0FBQkFva0VCSkJFdzFBS0FRSUVDQkFnUUlBQWdlb0NBa2oxQ2V1UEFBRUNCQWdRCklFQ0FR
Q0lCQVNUUk1KUkNnQUFCQWdRSUVDQkFvTHFBQUZKOXd2b2pRSUFBQVFJRUNCQWdrRWhBQUVrMERL
VVFJRUNBQUFFQ0JBZ1EKcUM0Z2dGU2ZzUDRJRUNCQWdBQUJBZ1FJSkJJUVFCSU5ReWtFQ0JBZ1FJ
QUFBUUlFcWdzSUlOVW5yRDhDQkFnUUlFQ0FBQUVDaVFRRQprRVREVUFvQkFnUUlFQ0JBZ0FDQjZn
SUNTUFVKNjQ4QUFRSUVDQkFnUUlCQUlnRUJKTkV3bEVLQUFBRUNCQWdRSUVDZ3VvQUFVbjNDCitp
TkFnQUFCQWdRSUVDQ1FTRUFBU1RRTXBSQWdRSUFBQVFJRUNCQ29MaUNBVkordy9nZ1FJRUNBQUFF
Q0JBZ2tFaEJBRWcxREtRUUkKRUNCQWdBQUJBZ1NxQ3dnZzFTZXNQd0lFQ0JBZ1FJQUFBUUtKQkFT
UVJNTlFDZ0VDQkFnUUlFQ0FBSUhxQWdKSTlRbnJqd0FCQWdRSQpFQ0JBZ0VBaUFRRWswVENVUW9B
QUFRSUVDQkFnUUtDNmdBQlNmY0w2STBDQUFBRUNCQWdRSUpCSVFBQkpOQXlsRUNCQWdBQUJBZ1FJ
CkVLZ3VJSUJVbjdEK0NCQWdRSUFBQVFJRUNDUVNFRUFTRFVNcEJBZ1FJRUNBQUFFQ0JLb0xDQ0RW
SjZ3L0FnUUlFQ0JBZ0FBQkFva0UKQkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9DQWtqMUNldVBBQUVD
QkFnUUlFQ0FRQ0lCQVNUUk1KUkNnQUFCQWdRSUVDQkFvTHFBQUZKOQp3dm9qUUlBQUFRSUVDQkFn
a0VoQUFFazBES1VRSUVDQUFBRUNCQWdRcUM0Z2dGU2ZzUDRJRUNCQWdBQUJBZ1FJSkJJUVFCSU5R
eWtFCkNCQWdRSUFBQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQ2lRUUVrRVREVUFvQkFnUUlF
Q0JBZ0FDQjZnSUNTUFVKNjQ4QUFRSUUKQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FBQUVDQkFnUUlFQ2d1
b0FBVW4zQytpTkFnQUFCQWdRSUVDQ1FTRUFBU1RRTXBSQWdRSUFBQVFJRQpDQkNvTGlDQVZKK3cv
Z2dRSUVDQUFBRUNCQWdrRWhCQUVnMURLUVFJRUNCQWdBQUJBZ1NxQ3dnZzFTZXNQd0lFQ0JBZ1FJ
QUFBUUtKCkJBU1FSTU5RQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQkFnUUlFQ0JBZ0VBaUFR
RWswVENVUW9BQUFRSUVDQkFnUUtDNmdBQlMKZmNMNkkwQ0FBQUVDQkFnUUlKQklRQUJKTkF5bEVD
QkFnQUFCQWdRSUVLZ3VJSUJVbjdEK0NCQWdRSUFBQVFJRUNDUVNFRUFTRFVNcApCQWdRSUVDQUFB
RUNCS29MQ0NEVko2dy9BZ1FJRUNCQWdBQUJBb2tFQkpCRXcxQUtBUUlFQ0JBZ1FJQUFnZW9DQWtq
MUNldVBBQUVDCkJBZ1FJRUNBUUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xxQUFGSjl3dm9qUUlB
QUFRSUVDQkFna0VoQUFFazBES1VRSUVDQUFBRUMKQkFnUXFDNGdnRlNmc1A0SUVDQkFnQUFCQWdR
SUpCSVFRQklOUXlrRUNCQWdRSUFBQVFJRXFnc0lJTlVuckQ4Q0JBZ1FJRUNBQUFFQwppUVFFa0VU
RFVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSjY0OEFBUUlFQ0JBZ1FJQkFJZ0VCSk5Fd2xFS0FBQUVD
QkFnUUlFQ2d1b0FBClVuM0MraU5BZ0FBQkFnUUlFQ0NRU0VBQVNUUU1wUkFnUUlBQUFRSUVDQkNv
TGlDQVZKK3cvZ2dRSUVDQUFBRUNCQWdrRWhCQUVnMUQKS1FRSUVDQkFnQUFCQWdTcUN3Z2cxU2Vz
UHdJRUNCQWdRSUFBQVFLSkJBU1FSTU5RQ2dFQ0JBZ1FJRUNBQUlIcUFnSkk5UW5yandBQgpBZ1FJ
RUNCQWdFQWlBUUVrMFRDVVFvQUFBUUlFQ0JBZ1FLQzZnQUJTZmNMNkkwQ0FBQUVDQkFnUUlKQklR
QUJKTkF5bEVDQkFnQUFCCkFnUUlFS2d1SUlCVW43RCtDQkFnUUlBQUFRSUVDQ1FTRUVBU0RVTXBC
QWdRSUVDQUFBRUNCS29MQ0NEVko2dy9BZ1FJRUNCQWdBQUIKQW9rRUJKQkV3MUFLQVFJRUNCQWdR
SUFBZ2VvQ0FrajFDZXVQQUFFQ0JBZ1FJRUNBUUNJQkFTVFJNSlJDZ0FBQkFnUUlFQ0JBb0xxQQpB
Rko5d3ZvalFJQUFBUUlFQ0JBZ2tFaEFBRWswREtVUUlFQ0FBQUVDQkFnUXFDNGdnRlNmc1A0SUVD
QkFnQUFCQWdRSUpCSVFRQklOClF5a0VDQkFnUUlBQUFRSUVxZ3NJSU5VbnJEOENCQWdRSUVDQUFB
RUNpUVFFa0VURFVBb0JBZ1FJRUNCQWdBQ0I2Z0lDU1BVSjY0OEEKQVFJRUNCQWdRSUJBSWdFQkpO
RXdsRUtBQUFFQ0JBZ1FJRUNndW9BQVVuM0MraU5BZ0FBQkFnUUlFQ0NRU0dEMjNlOSt0ODFtczdh
Mgp0dGJXMTllSDByYTJ0dHJxNm1vN2UvWnNpOC9qY3ZyMDZYYnk1TWx6dDhYeUxnUUlFQ0JBZ0FB
QkFxOFZpUDJvbFpXVllSOHJQaDgvClhydWtXd2hNTDNEbXpKbGhIMzc4SG94OS9YRy9mdHpIai92
R3k3aS9IMS9IL2R1L0hwY1pyeDkvL1BGMnd3MDNqRisrNWpxMkc0KzEKL1RMV0U5ZWJtNXR0dHJH
eDBkNys5cmNQRHhhaEloNHdQbUxsV09DeHh4NXI5OTMvdS9adi83WGVmdm5JbnZiN3gyZnR4ZE1S
VlBxRwpJNXYwRGJYckRtNS9ESjhUSUVDQUFBRUNCTjU0QW1mN2psSHNkL1g5cUt0bUcrM21hMDYx
Ty8reXRZKzliMTk3MjAwSGhsLzB4czdkCjloMi9OeDZTam5kRFlBd01jUjA3LzdGUEgvdng4ZlZM
TDczVVhuNzU1ZmJtTjcrNUhUMTY5TnhCaHZnK0hEOGlHTVFsbGg4RHlMenYKMHhkZmZMRzk2VTF2
dW1BYnNYNnNGelZzWHo5dWowdmMvdXRmLzdyTm9wQmJicmxsZUxEdEM1NDZkYXJkZDk5OTdlOSs5
R0Q3MGI4ZgpiZzg5ZDEzYmUzQnYrOURmWHRkdVAzWlZPM1RnMVNNZ2ZZT3plS0F6L1doSmYxSzFI
cVpXWnE5YzkwZHVXeXY5QVNOSjlRZGRqMVhPCmJIV1FhUEJNVzRrbmFmK0ltNjNQei9lUDU0L1hE
NitmZm43NCtSbXZBMWZpL3NOYUg5MW0zOW1KL1oyVHA4NjIvL3pkQyszbjl6M1YKL3VQZWw5djlq
enpmN3ZyWW1mYkI5eDV0ZS9ic0dYWU8rMkl1QkNZVGlCMzhjU2Mvcm1OSFB6NGloTVFscmg5NTVK
SGgrKy8yMjI4Zgpqc3lORHg3Ny8rTzY0MjNqOWZac01ONzIxRk5QRGRsaC9IcThucmVOdUgrOEwy
bzZjZUpFbTBVaWlxUVRUNGl4Z0FnZkR6LzhjUHVICm45N1hmdkRBMGZhYlV6ZTFsZXRtN2NNZnVy
Rjk3STRqN2NEZXRSNDYrdFo2d1dmNmhucjJhUDE1MS8vcGh4b2pnUFRyM2twYjYvZXYKOW1ka3Yy
cnhTNEd0dmx5UEtyRmcvN3F2Tjl5MjFVNzNUNnpQei9lUDU0L1hENitmZm43NCtYbWw3ais4dWxz
MDdNL0U3NUxmZHZQQgp0di9hZmUzdi8vR1A3WUZuOTdUMnM2ZmFXOTk4c3QxMjY2RzJkKy9lWWQr
ckwrWkNZQktCMkxHUG5mejRpS01aOFhWY3g3NzkrQkZ2CnAvamxMMy9aRGgwNjFJNGRPellja1Jz
RFJxdzNmbjZwZ3VJdEdlUGJOaTYxN0xqZHVJNUwxQkRaWXpnRks3NklKME04Y0JRY3AxMzkKNGhl
L2FEOS9jTFg5WnVOdGJhVS9nUTRmM3RPdXUzcDllTUpzOW1kV1BMbDZtejFReEV0RmE2ZDZ3dWhQ
cnlGb3JNNGlpd3d2SVcyMQpMeGh2RjlucTk4ZlNzVzYvNnVFamtGWmFQd09zZjcxaWZYNitmengv
dkg3MEYxT3ZuMzUrK1BsNVplNC9ETDlralJReVhGNzU1ZXJSCncrdnQwTkg5N2RuWldudmc2V3Zi
RC83bG1mWlh0eHdkZHQ1ZTd3N2N1RVhYQkM0bU1BYVF1QjdEUjF6SFFZYjRYb3RUc2lJNFBQdnMK
cysxWHYvcFZ1K3FxcTlxTk45NTRMZ2lmSHo3aXRLM3ZmZTk3N2E2Nzduck53OGJiTjg1ZlBoYjY1
amUvMlQ3OTZVKzNBd2NPbkZ0bgpYQzZ1STRSRTVvajErOWxUSysyRkYxNFlDb21sbjMvKytlRWoz
bUR5OEV0dmJhdEgrcFBueU41MjVLcjE5c1FMclQzOTRsWS9BckxhCjFucklHSjVuL1lER1JqK0NF
Y0Ztcy8vNk1nNUJ0dFB4QTJTMXhabFk4ZlhxMlZmUzE1a0lJVnY5ZlNieFFQMjJVMmZpamU3OXpT
ZzkKbEZpZm4rOGZ6eCt2SDE0Ly9menc4L05LM1grSUV6eFdWb2M5bk9HTWo5aTNlZXFGclhiazBH
elk3M20rNysvODZ4OVdoeDJ3T090awovTVZ2N0JLNUVGaFdZSHNBR2Qvb1BSNEJpZE92NHY2REJ3
OE9IODg5OTF5TDkzSEUvdi9odzRmUGhaQ3hoaC8vK01kRG1JaFRyVDczCnVjK05ONSs3SHJkNzdv
WlhQL25PZDc3VGZ2S1Rud3loNWVNZi8vajVkdzgxeEdORzlwanQyN2R2ZUhOS0pLSklSMUZVM1BI
TU04KzAKSjlmL3VoMDZ2TGRkYzJSUER5QjcrcHZQVjlvL1A5eFR5K3BtUDdVcTRzY3J3U05PcW9v
bldyekhZN1cvNTJOOVQwOWFiYk9mZ3RVRApTUCtZOWVTLzFzUEo1bVkvSE5RL3p2WndFaGh4NnRa
RzNQYnFrUkhyOC9QOTQvbmo5Y1BycDU4ZmZuNWVpZnNQZmRkcCtNVnMvSmIzCnpPbU52bzhUUjBF
MmV3QlpieXR4S2tnL0hlWVBMeDV1Y1pwNzdHOEpJSy9aUDNYREVnSmpBSWx3RUIvam05QmpuejQr
NHY3NG43RGkKK3k3MitTTUVqL3Y4Ky9mdkgyNS82S0dIMnRlLy92VVcxK01wVStON1NMYVhGdHU2
ME8yeHpwTlBQdG0rK3RXdnRoLys4SWZ0QzEvNApRbnZITzk0eGJDdU9lc1JCamppeUV0bGpGZ1hF
NFpsSUpIR0laaXd1dnQ2N3Y3VWovZkJoSFAwNGVuaGZpd0xYZTVpWXpmcXBXRDFvCnJLejJveG05
aUg2QXB3ZUpNMjNXWHpIMjlPZllXazhTY1p4anJmODZNOTUrSHJldjl5ZGJ2RGxyc3krMzJaK1Va
L3RIQkpEVEcvMDgKdGI2MDlmbjUvdkg4OGZyaDlkUFBEejgvcjlUOWg5amZXZTA3ZUZ0bmV2am92
NVRkMkRqVlRwOTh1WjNxcDVxdnJHeTBzeHZyN2ZsKwo5a2ZzdU1XK1Z1eHp4ZjZYQzRFcEJNWUFF
dGNSUU1iVHBNWWdFYmVOcC8zRmV6QWlCTVFsQWtGODNIdnZ2ZTFyWC92YWEwcDU0b2tuClhuTmJC
SmdMM1I3aGVyemNmLy85N2N0Zi9uTDc0aGUvMk43Ly92Y1BBU2hxR2Q5M1BvdGlJb1NNMTFGNEZC
MkZ2V24yUkZ2ZmQwTTcKdkg5UE8zeXdCNUFEQjl1K3ZYM1p2bnljS2hGcHZ5L2VqMkM4Y2tSanZa
OXp0ZDZmVEhHMFl3Z2UvZk1JS3JOWFQ4M3FtYU0vOGZwSApYeWNPVWc2QjVQUm0yOWl5ZnJ3Zzhm
UDk0L25qOWNQcnA1OGZmbjcyL1lZcmNQOWhyZjlTdHYvWFBIMi9xTy84OVNNZ3AwK3R0cFByCi9U
LzVPZmxTMy9mWmFodjdaKzNxMDgvMWZhSWp3ejZYQURMdXFycWVRaUIyN21NZlBqNWlKMzg4OGpI
ZUhrZEV4akFTNzlHSWZmOVkKSmk1eCs0Yy8vT0YyL2ZYWHQyOTg0eHZ0dDcvOTdYQjcvQk5IVE02
L3hMb1h1bjE3b0Q1MjdGajcvT2MvZis0SXlGaGJQR1o4N3c5SApRR0lqc1ZKY3h3THhCcEZycjcy
MlhmL2s3OXFwZlhjTTcvazRjR0J2Tzl4UHd6cHc4RUIvOHZSVGhlSzlIUkZBZWxVOTZQYzNsZmRn
CjByK09qM2dUWmZ3Mk80NDR4bi9SdTliL2JFaWNGaG5MYnZiZkJNVHl3M1dFbDYxWlAwUnBmWDYr
Znp4L3ZINTQvZlR6dzgvUEszZi8Kb2UvKzlQMmVXVC9Wdkg5czdHMG5YMTV2TDUzc1o1ajBVOUpQ
OXNNZysvZXR0V01yei9YMzNMN2xYQUFaZHdEN3FpNEVsaElZZzBicwp4NC9mVitOdDhVdnUrRHoy
NytNb1Jmd0pqakdBeExLeFRsemU5YTUzdGE5ODVTdnRaei83V2Z2V3Q3NTE3dXlvOHdzYkQxeWNm
M3RrCmlYaHorMmMvKzluMjBZOStkRGdOYk54K1BIN1VFY3ZFK2tNQUdUNTU5Ynl3c1loYmI3MjEz
ZlRRVDl1akp4NW82OWQrcU8zclB4bjMKOS9CeDRLcElRNjJ2L01wUmpQaGZIK0tvUm9TS2ZtWldp
ejlSR09Ha3Z3MWtPQmV5aDV4K05PU1Y5NExFVVk5K3dHTTQrdEhQdkJvTwpVY2E2RzlibjUvdkg4
OGZyaDlkUFB6LzgvTHlDOXgvNjcxNzdxZW12L0lKMXMvOW5QR3ZyZldlcC84R3pNNmRQdHBmV1or
M1FpdyswCkQ5eHlkbmpUNy9hZHY3NmFDNEZKQk9Jb1IxeGlaejkyOUdQbmZ3d2hZd0NKMDYzdXVP
T09jNmRnamN1TTY4VDFKei81eWZhUmozeWsKZmZ2YjM3N2drWTU0TS91RmpvQjg2bE9mYXAvNXpH
ZUdFQkxiSGNOSFpJdllicHg2R0NGa3lCM2pxVmZqK1loUmVCVDl3UTkrc0QzNAo0SU50ODdmM3Ra
T1A5amRRSGYyYjRROEc5cU9KUS9pWTllZFZoSXYrL3FyK0J3ajdFNjRIaW41MlZsdnJLU09DU0Q4
QTBvK0M5STkrCnZSTFgvWmtaWVdOZnY3K2Y0ZFUyZW5DSlFCSkhRazVIaUxFK1A5OC9uajllUDd4
Kyt2bmg1K2NWdXY4UWYxeDVEQ0FiUFlERUVaR04Kay8wL2xZajlvTWZ2Yis4KzlEL3R2YmU5czEx
enpUWERqbGpzYTdrUW1Fb2dkdkRIZ3dpeHpkajVINi9qdmpqeUVmOE43dzAzM05EZQo4NTczRENG
Z1dPRFZmMktaY1oyNEtkNks4YVV2ZlduSGJlUHlSNDRjT1JkZ3h0dmllbHcrdGpWZTR2UHhZendD
TXB5Q0ZXbHAvQmpUClVoUVFmMkw5RTUvNFJOdjQvdmZiSTQvOVV6dHg3eVB0OU52ZTE4Nzh4ZnZi
MVRjZWJXdjlmU1liOFljLytpVWVKNDVzbk8zdlo5blQKbjA5bkl2bjN2amQ2OElqQUVnWVJTdUlK
R2FualZGODJucG54SnExVC9iYjRnNFRXNStmN3gvUEg2NGZYVHo4Ly9QeThVdmNmaGpqUgo5MmVH
ZmFLK2ovVDAvNTVvVC85My95WHVIeDlvdDEvMWN2dkF1OS9SYnI3NTVuTi9JeUhlRk94Q1lDcUJj
U2MvUWtoOGI4WE8vdmhtCjlEajFLdjV6cWRqZnYvUE9PNGYvaW5kODNGZ3Y5dnZQdng3dnY5QjFI
QUc1VklEZXZyMzRQT3FLeDQvUDQzb1d4Y1ZIUEhoY2o1ZTQKODUzdmZPZndBUEhPK0VjZmZiUzk5
UHZ2dFdjZi9HWjdvamN5Ym5oN1doclhkVTJBQUFFQ0JBZ1FlS01LeEZrbDhUK0gzblQxMWUybQpX
MjVxeDQ3ZDBUK090YXY3MTdIak51NTd2VkY5OUQyOVFPeVh4eVcrdDJKblAvNURxZmlJOEJIL2Ex
VWMwYmp0dHR1R0l5QVJUczYvCmpQdjE1OTkrb2EvamZSNFgyc2FGbG8zdHhrZlVOSWFqcUhFVy94
VlgvREdTQ0J6YnorY2FWNGduVEx4WkpRTElpUk1uaG1iaUFjYmsKcy8yb3lZVWUyRzBFQ0JBZ1FJ
QUFnVGVLUVB4aU52YU40alNUQ0NIeGg5N2lsSlhZYVl2YnhoM0VONHFIUGkrUFFPemNiOS9SSHdO
SQpQUHBiM3ZLVzRYc3d2aTlqbjMrS3l5TGJPVDk4UlBiNFAvQlVFem9BMDFsVEFBQUFBRWxGVGtT
dVFtQ0MKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>