From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Elliston To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: c/526 Date: Sun, 24 Dec 2000 15:16:00 -0000 Message-id: <20001224231600.30196.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01319.html List-Id: The following reply was made to PR c/526; it has been noted by GNATS. From: Ben Elliston To: "Joseph S. Myers" Cc: , , Subject: Re: c/526 Date: Mon, 25 Dec 2000 10:05:50 +1100 (EST) This was fixed in TC2 to the old standard, and C99: the remaining characters must be zero. See DRs #060, #092; PR c/128 (which is the same bug); and gcc.c-torture/execute/20000801-4.c. Any objections if we close this as a duplicate of c/128? Ben >>From wanderer@rsu.ru Mon Dec 25 04:16:00 2000 From: wanderer@rsu.ru To: gcc-gnats@gcc.gnu.org Subject: c++/1509: compiler internal error on function template parameter Date: Mon, 25 Dec 2000 04:16:00 -0000 Message-id: <20001225121224.3704.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01320.html Content-length: 1039 >Number: 1509 >Category: c++ >Synopsis: compiler internal error on function template parameter >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-legal-code >Submitter-Id: net >Arrival-Date: Mon Dec 25 04:16:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Vladimir Merzliakov >Release: gcc version 2.97 20001224 (experimental) >Organization: >Environment: CodeSourcery's Online Test Compilation >Description: /tmp/@30152.7.cc: In function `int main()': /tmp/@30152.7.cc:15: Internal compiler error in convert_nontype_argument, at cp/pt.c:3096 >How-To-Repeat: template struct A { typedef int F(); }; template::F f> //template struct B { static int g() { return f(); }; }; int f() { return 0; }; int main() { return B::g(); }; >Fix: use explicit functional type comment string with bug and uncomment next >Release-Note: >Audit-Trail: >Unformatted: >>From foom@fuhm.net Mon Dec 25 21:26:00 2000 From: foom@fuhm.net To: gcc-gnats@gcc.gnu.org Subject: c/1510: Internal compiler error in `build_insn_chain', at global.c:1756 Date: Mon, 25 Dec 2000 21:26:00 -0000 Message-id: <20001226051630.19337.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01321.html Content-length: 1446 >Number: 1510 >Category: c >Synopsis: Internal compiler error in `build_insn_chain', at global.c:1756 >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-illegal-code >Submitter-Id: net >Arrival-Date: Mon Dec 25 21:26:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: foom@fuhm.net >Release: gcc version 2.95.2 20000220 (Debian GNU/Linux) >Organization: >Environment: Machine: i386 Linux 2.2.18 >Description: Gets the following error when compiling the attached file. It should simply report an undefined variable. The bug seems heavily dependant on the exact values used in the switch statement. gccbug.c:29: Internal compiler error in `build_insn_chain', at global.c:1756 >How-To-Repeat: compile the code with gcc -O1 gcc with fewer or more optimizations fail to exhibit the bug. >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: text/plain; name="gccbug.c" Content-Disposition: inline; filename="gccbug.c" void do_stuff(); void break_gcc(int test) { if (undefined_variable) exit(1); while(1) { switch (test) { case 26: case 10: case 2: do_stuff(); break; case 4: case 3: return; break; } } } >>From vikram@dsl.serc.iisc.ernet.in Mon Dec 25 21:46:00 2000 From: vikram@dsl.serc.iisc.ernet.in To: gcc-gnats@gcc.gnu.org Subject: c++/1511: Doesn't give "variable undeclared" error. Date: Mon, 25 Dec 2000 21:46:00 -0000 Message-id: <20001226053750.20987.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01322.html Content-length: 1212 >Number: 1511 >Category: c++ >Synopsis: Doesn't give "variable undeclared" error. >Confidential: no >Severity: non-critical >Priority: low >Responsible: unassigned >State: open >Class: ice-on-illegal-code >Submitter-Id: net >Arrival-Date: Mon Dec 25 21:46:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: vikram@dsl.serc.iisc.ernet.in >Release: unknown-1.0 >Organization: >Environment: tried on many environments with gcc version 2.95.2 19991024 (release) >Description: There is a "count" algorithm in algo.h. I wasn't aware of this and did "cin >> count;" and forgot to declare "int count;". Instead of giving a compile time error of "count undeclared", it gives: Internal compiler error 390 in "int main()". >How-To-Repeat: Just try to compile the file: g++ t.C >Fix: Don't know if any fix is possible. May be fix C++ itself! >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="t.C" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="t.C" I2luY2x1ZGUgPGlvc3RyZWFtLmg+CiNpbmNsdWRlIDxhbGdvLmg+CgppbnQgbWFpbigpCnsKICAg IGNpbiA+PiBjb3VudDsKfQo= >>From jsm28@cam.ac.uk Tue Dec 26 10:26:00 2000 From: "Joseph S. Myers" To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: c/526 Date: Tue, 26 Dec 2000 10:26:00 -0000 Message-id: <20001226182600.19862.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01323.html Content-length: 568 The following reply was made to PR c/526; it has been noted by GNATS. From: "Joseph S. Myers" To: Ben Elliston Cc: Subject: Re: c/526 Date: Tue, 26 Dec 2000 18:21:35 +0000 (GMT) On 24 Dec 2000, Ben Elliston wrote: > Any objections if we close this as a duplicate of c/128? It seems reasonable to do so, as long as you add the submitter of PR c/526 (and anyone on its CC list) to the CC list of c/128, and add a note to c/128 that c/526 is also relevant. -- Joseph S. Myers jsm28@cam.ac.uk >>From nneul@umr.edu Tue Dec 26 13:26:00 2000 From: nneul@umr.edu To: gcc-gnats@gcc.gnu.org Subject: other/1512: Path confusion w/ -print-prog-name + autoconf Date: Tue, 26 Dec 2000 13:26:00 -0000 Message-id: <20001226211653.11036.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01324.html Content-length: 1255 >Number: 1512 >Category: other >Synopsis: Path confusion w/ -print-prog-name + autoconf >Confidential: no >Severity: non-critical >Priority: medium >Responsible: unassigned >State: open >Class: change-request >Submitter-Id: net >Arrival-Date: Tue Dec 26 13:26:01 PST 2000 >Closed-Date: >Last-Modified: >Originator: nneul@umr.edu >Release: current cvs as of 12/20 and older >Organization: >Environment: anything, but gcc accessed via symbolic link tree >Description: infinity(251)>gcc -print-prog-name=ld /umr/devbin/../lib/gcc-lib/i686-pc-linux-gnu/2.97/../../../../i686-pc-linux-gnu/bin/ld autoconf: checking for ld used by GCC... (cached) /umr/i686-pc-linux-gnu/bin/ld checking if the linker (/umr/i686-pc-linux-gnu/bin/ld) is GNU ld... (cached) no That's a problem. It seems to me it's an autoconf issue really, but is there any way to change the specs file/build process/etc. to get gcc to return a more reasonable path for the path to ld? Accessing the ld via the gcc generated path is valid, but it requires the ..'s. It appears that autoconf flattens it, but flattens it by removing the ..'s and paired dir. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: >>From nneul@umr.edu Tue Dec 26 14:16:00 2000 From: nneul@umr.edu To: gcc-gnats@gcc.gnu.org Subject: c/1513: lots of 'would have deleted prologue epilogue insn' on hpux Date: Tue, 26 Dec 2000 14:16:00 -0000 Message-id: <20001226220936.17525.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01325.html Content-length: 981 >Number: 1513 >Category: c >Synopsis: lots of 'would have deleted prologue epilogue insn' on hpux >Confidential: no >Severity: non-critical >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Tue Dec 26 14:16:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: nneul@umr.edu >Release: gcc version 2.97 20001221 (experimental) >Organization: >Environment: hpux 10/11 >Description: I get alot of these on hpux 10 and 11x. They almost always appear to be the same content except for the three numbers after insn. /afs/.umr.edu/software/ft201/freetype-2.0.1/src/autohint/ ahhint.c:422: warning: ICE: would have deleted prologue/epilogue insn (insn 70 68 71 (set (reg:SI 4 %r4) (reg:SI 19 %r19)) -1 (nil) (nil)) I can generate temp files if you need them. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: plus binutils 001221 >>From gerald@gcc.gnu.org Tue Dec 26 16:46:00 2000 From: gerald@gcc.gnu.org To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: other/980 Date: Tue, 26 Dec 2000 16:46:00 -0000 Message-id: <20001227004601.12482.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01326.html Content-length: 815 The following reply was made to PR other/980; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk, nobody@gcc.gnu.org Cc: Subject: Re: other/980 Date: 27 Dec 2000 00:39:11 -0000 Synopsis: Unified contributing instructions Responsible-Changed-From-To: gerald->unassigned Responsible-Changed-By: gerald Responsible-Changed-When: Tue Dec 26 16:39:11 2000 Responsible-Changed-Why: I don't want to be responsible for this. Volunteers welcome. State-Changed-From-To: closed->suspended State-Changed-By: gerald State-Changed-When: Tue Dec 26 16:39:11 2000 State-Changed-Why: Joseph asked to reopen this, but does not have time to work on it anytime soon. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=980&database=gcc >>From gerald@gcc.gnu.org Tue Dec 26 16:46:00 2000 From: gerald@gcc.gnu.org To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: web/375 Date: Tue, 26 Dec 2000 16:46:00 -0000 Message-id: <20001227004602.12493.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01327.html Content-length: 595 The following reply was made to PR web/375; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk, martin@loewis.home.cs.tu-berlin.de, nobody@gcc.gnu.org Cc: Subject: Re: web/375 Date: 27 Dec 2000 00:44:57 -0000 Synopsis: GCC gnatsweb Responsible-Changed-From-To: gerald->unassigned Responsible-Changed-By: gerald Responsible-Changed-When: Tue Dec 26 16:44:57 2000 Responsible-Changed-Why: Not mine. I analysed it, but I'm not going to fix it. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=375&database=gcc >>From gerald@gcc.gnu.org Tue Dec 26 16:56:00 2000 From: gerald@gcc.gnu.org To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: web/638 Date: Tue, 26 Dec 2000 16:56:00 -0000 Message-id: <20001227005600.15937.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01328.html Content-length: 567 The following reply was made to PR web/638; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk, nobody@gcc.gnu.org Cc: Subject: Re: web/638 Date: 27 Dec 2000 00:46:43 -0000 Synopsis: Broken gcc-cvs links Responsible-Changed-From-To: gerald->unassigned Responsible-Changed-By: gerald Responsible-Changed-When: Tue Dec 26 16:46:42 2000 Responsible-Changed-Why: Not mine. I analysed it, but I'm not going to fix it. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=638&database=gcc >>From gerald@gcc.gnu.org Tue Dec 26 16:56:00 2000 From: gerald@gcc.gnu.org To: gerald@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: web/375 Date: Tue, 26 Dec 2000 16:56:00 -0000 Message-id: <20001227005600.15943.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01329.html Content-length: 613 The following reply was made to PR web/375; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk, martin@loewis.home.cs.tu-berlin.de, nobody@gcc.gnu.org Cc: Subject: Re: web/375 Date: 27 Dec 2000 00:48:48 -0000 Synopsis: GCC gnatsweb Responsible-Changed-From-To: unassigned->gerald Responsible-Changed-By: gerald Responsible-Changed-When: Tue Dec 26 16:48:48 2000 Responsible-Changed-Why: Oops, I edited the wrong PR. Revert my previous change to "Reponsible". http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=375&database=gcc >>From gerald@gcc.gnu.org Tue Dec 26 17:46:00 2000 From: gerald@gcc.gnu.org To: gerald@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: web/1025 Date: Tue, 26 Dec 2000 17:46:00 -0000 Message-id: <20001227014601.23409.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01331.html Content-length: 485 The following reply was made to PR web/1025; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk Cc: Subject: Re: web/1025 Date: 27 Dec 2000 01:37:54 -0000 Synopsis: gnatsweb login page not virtualised State-Changed-From-To: open->closed State-Changed-By: gerald State-Changed-When: Tue Dec 26 17:37:54 2000 State-Changed-Why: Done. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1025&database=gcc >>From gerald@gcc.gnu.org Tue Dec 26 17:46:00 2000 From: gerald@gcc.gnu.org To: gerald@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: web/961 Date: Tue, 26 Dec 2000 17:46:00 -0000 Message-id: <20001227014601.23416.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01330.html Content-length: 562 The following reply was made to PR web/961; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk Cc: Subject: Re: web/961 Date: 27 Dec 2000 01:42:28 -0000 Synopsis: GNATSweb doesn't escape and similar in synopses State-Changed-From-To: open->analyzed State-Changed-By: gerald State-Changed-When: Tue Dec 26 17:42:28 2000 State-Changed-Why: Agreed; this is a bug. A patch to fix gnatsweb would be welcome. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=961&database=gcc >>From gerald@gcc.gnu.org Wed Dec 27 01:16:00 2000 From: gerald@gcc.gnu.org To: gerald@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: web/1023 Date: Wed, 27 Dec 2000 01:16:00 -0000 Message-id: <20001227091600.32161.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01332.html Content-length: 638 The following reply was made to PR web/1023; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk Cc: Subject: Re: web/1023 Date: 27 Dec 2000 09:12:06 -0000 Synopsis: Search form does not cover all lists State-Changed-From-To: analyzed->closed State-Changed-By: gerald State-Changed-When: Wed Dec 27 01:12:06 2000 State-Changed-Why: H-P just committed a fix, now that I moved the lists last night. (The search engine itself may take some time until it has indexed everything.) http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1023&database=gcc >>From gerald@gcc.gnu.org Wed Dec 27 01:26:00 2000 From: gerald@gcc.gnu.org To: gerald@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: web/1022 Date: Wed, 27 Dec 2000 01:26:00 -0000 Message-id: <20001227092600.1357.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01333.html Content-length: 564 The following reply was made to PR web/1022; it has been noted by GNATS. From: gerald@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, gerald@gcc.gnu.org, jsm28@cam.ac.uk Cc: Subject: Re: web/1022 Date: 27 Dec 2000 09:23:49 -0000 Synopsis: libstdc++ list archives references to sources.redhat.com State-Changed-From-To: feedback->closed State-Changed-By: gerald State-Changed-When: Wed Dec 27 01:23:49 2000 State-Changed-Why: I have fixed all remaining issues now, as far as I can see. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1022&database=gcc >>From neil.pearce@riversoft.com Wed Dec 27 02:36:00 2000 From: neil.pearce@riversoft.com To: gcc-gnats@gcc.gnu.org Subject: c++/1514: template operator<< call within constructor Date: Wed, 27 Dec 2000 02:36:00 -0000 Message-id: <20001227103234.11379.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01334.html Content-length: 2854 >Number: 1514 >Category: c++ >Synopsis: template operator<< call within constructor >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Wed Dec 27 02:36:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Neil Pearce >Release: gcc version 2.95.2 19991024 (release) >Organization: >Environment: gilbert% uname -a SunOS gilbert 5.7 Generic_106541-08 sun4u sparc SUNW,Ultra-5_10 gilbert% g++ -v Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/specs gcc version 2.95.2 19991024 (release) NOTE: This g++ was a binary release obtained from the SunFreeWare.com site >Description: The following c++ source code generates an internal compiler error. class Foo { public: Foo() { *this << "foo"; } template Foo& operator<<(const T& t) { return *this; } }; int main() { Foo foo; } gilbert% g++ -v -save-temps x.cc Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/specs gcc version 2.95.2 19991024 (release) /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/cpp -lang-c++ -v -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -Dsparc -Dsun -Dunix -D__svr4__ -D__SVR4 -D__sparc__ -D__sun__ -D__unix__ -D__svr4__ -D__SVR4 -D__sparc -D__sun -D__unix -Asystem(unix) -Asystem(svr4) -D__EXCEPTIONS -D__GCC_NEW_VARARGS__ -Acpu(sparc) -Amachine(sparc) x.cc x.ii GNU CPP version 2.95.2 19991024 (release) (sparc) #include "..." search starts here: #include <...> search starts here: /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/../../../../include/g++-3 /usr/local/include /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/../../../../sparc-sun-solaris2.7/include /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/include /usr/include End of search list. The following default directories have been omitted from the search path: End of omitted list. /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/cc1plus x.ii -quiet -dumpbase x.cc -version -o x.s GNU C++ version 2.95.2 19991024 (release) (sparc-sun-solaris2.7) compiled by GNU C version 2.95.2 19991024 (release). x.cc: In method `class Foo & Foo::operator <<(const char (&)[4])': x.cc:4: instantiated from here x.cc:8: Internal compiler error. x.cc:8: Please submit a full bug report. x.cc:8: See for instructions. gilbert% cat x.ii # 1 "x.cc" class Foo { public: Foo() { *this << "foo"; } template Foo& operator<<(const T& t) { return *this; } }; int main() { Foo foo; } >How-To-Repeat: Attempting to compile the source code with g++ x.cc Results in Internal compiler error, as detailed above. >Fix: >Release-Note: >Audit-Trail: >Unformatted: >>From staelin@hpl.hp.com Wed Dec 27 06:36:00 2000 From: staelin@hpl.hp.com To: gcc-gnats@gcc.gnu.org Subject: c/1515: segmentation fault while bootstrapping gcc-20001225 Date: Wed, 27 Dec 2000 06:36:00 -0000 Message-id: <20001227142659.15043.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01335.html Content-length: 2794 >Number: 1515 >Category: c >Synopsis: segmentation fault while bootstrapping gcc-20001225 >Confidential: no >Severity: critical >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-legal-code >Submitter-Id: net >Arrival-Date: Wed Dec 27 06:36:01 PST 2000 >Closed-Date: >Last-Modified: >Originator: Carl Staelin >Release: gcc-2.97 20001225 >Organization: >Environment: HP-UX hpli6 B.10.20 A 9000/770 2014293960 two-user license env CC=cc CXX=CC ./configure hppa1.1-hp-hpux10.20 >Description: ./xgcc -v --save-temps -B./ -B/usr/local/hppa1.1-hp-hpux10.20/bin/ -i system /usr/local/hppa1.1-hp-hpux10.20/include -S tmp-dum.c Reading specs from ./specs Configured with: ./configure gcc version 2.97 20001225 (experimental) ./cpp0 -lang-c -v -iprefix ./../lib/gcc-lib/hppa1.1-hp-hpux10.20/2.97/ -isystem ./include -isystem /usr/local/hppa1.1-hp-hpux10.20/bin/include -D__GNUC__=2 -D_ _GNUC_MINOR__=97 -D__GNUC_PATCHLEVEL__=0 -Dhppa -Dhp9000s800 -D__hp9000s800 -Dhp 9k8 -DPWB -Dhpux -Dunix -D__hppa__ -D__hp9000s800__ -D__hp9000s800 -D__hp9k8__ - D__PWB__ -D__hpux__ -D__unix__ -D__hppa -D__hp9000s800 -D__hp9k8 -D__PWB -D__hpu x -D__unix -Asystem=unix -Asystem=hpux -Acpu=hppa -Amachine=hppa -D__STDC_HOSTED __=1 -D_PA_RISC1_1 -D__hp9000s700 -D_HPUX_SOURCE -D_HIUX_SOURCE -D__STDC_EXT__ - isystem /usr/local/hppa1.1-hp-hpux10.20/include tmp-dum.c tmp-dum.i GNU CPP version 2.97 20001225 (experimental) (cpplib) (hppa) ignoring nonexistent directory "include" ignoring nonexistent directory "/usr/local/hppa1.1-hp-hpux10.20/bin/include" ignoring nonexistent directory "/usr/local/hppa1.1-hp-hpux10.20/include" ignoring nonexistent directory "../lib/gcc-lib/hppa1.1-hp-hpux10.20/2.97/include " ignoring nonexistent directory "../hppa1.1-hp-hpux10.20/include" ignoring nonexistent directory "/usr/local/lib/gcc-lib/hppa1.1-hp-hpux10.20/2.97 /include" ignoring nonexistent directory "/usr/local/hppa1.1-hp-hpux10.20/include" #include "..." search starts here: #include <...> search starts here: /usr/local/include /usr/include End of search list. ./cc1 -fpreprocessed tmp-dum.i -quiet -dumpbase tmp-dum.c -version -o tmp-dum.s GNU C version 2.97 20001225 (experimental) (hppa1.1-hp-hpux10.20) compiled by CC . cc1: Internal error: Segmentation fault. Please submit a full bug report. See for instructions. >How-To-Repeat: compile the following file: # 1 "tmp-dum.c" int xxy_us_dummy; >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="tmp-dum.i" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="tmp-dum.i" IyAxICJ0bXAtZHVtLmMiCmludCB4eHlfdXNfZHVtbXk7Cg== >>From jeff.sturm@commerceone.com Wed Dec 27 08:56:00 2000 From: jeff.sturm@commerceone.com To: gcc-gnats@gcc.gnu.org Subject: libgcj/1516: Method.invoke won't accept boolean parameters Date: Wed, 27 Dec 2000 08:56:00 -0000 Message-id: <20001227165113.20403.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01336.html Content-length: 1726 >Number: 1516 >Category: libgcj >Synopsis: Method.invoke won't accept boolean parameters >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Wed Dec 27 08:56:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: jeff.sturm@commerceone.com >Release: HEAD >Organization: >Environment: i686-pc-linux-gnu >Description: Method.invoke throws java.lang.IllegalArgumentException for methods with boolean (primitive) types in their signatures. >How-To-Repeat: Run the attached test case. It should print `true' and `false', not throw an exception. >Fix: Add boolean rules to can_widen. Alternatively, rewrite can_widen to use an array of bitmaps or similar, since the existing rules are not too pretty or efficient. >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="BTest.java" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="BTest.java" aW1wb3J0IGphdmEubGFuZy5yZWZsZWN0Lk1ldGhvZDsKCnB1YmxpYyBjbGFzcyBCVGVzdCB7Cglw dWJsaWMgdm9pZCB0ZXN0KCkgewoJCXRyeSB7CgkJCU1ldGhvZCBtID0gZ2V0Q2xhc3MoKS5nZXRE ZWNsYXJlZE1ldGhvZCgic2V0T24iLAoJCQkJIG5ldyBDbGFzc1tdIHtCb29sZWFuLlRZUEV9KTsK CQkJbS5pbnZva2UodGhpcywgbmV3IE9iamVjdFtdIHtCb29sZWFuLkZBTFNFfSk7CgkJCW0uaW52 b2tlKHRoaXMsIG5ldyBPYmplY3RbXSB7Qm9vbGVhbi5UUlVFfSk7CgkJfSBjYXRjaCAoVGhyb3dh YmxlIHQpIHsKCQkJdC5wcmludFN0YWNrVHJhY2UoKTsKCQl9Cgl9CgoJcHVibGljIHZvaWQgc2V0 T24oYm9vbGVhbiBiKSB7CgkJU3lzdGVtLm91dC5wcmludGxuKCJzZXRPbiAiICsgYik7Cgl9CgoJ cHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewoJCShuZXcgQlRlc3QoKSku dGVzdCgpOwoJfQp9Cg== >>From neil@gcc.gnu.org Wed Dec 27 10:16:00 2000 From: neil@gcc.gnu.org To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: other/1502 Date: Wed, 27 Dec 2000 10:16:00 -0000 Message-id: <20001227181600.8081.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01337.html Content-length: 685 The following reply was made to PR other/1502; it has been noted by GNATS. From: neil@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, jsm28@cam.ac.uk, nobody@gcc.gnu.org Cc: Subject: Re: other/1502 Date: 27 Dec 2000 18:14:58 -0000 Synopsis: Nonexistent -W options not diagnosed State-Changed-From-To: open->suspended State-Changed-By: neil State-Changed-When: Wed Dec 27 10:14:58 2000 State-Changed-Why: This is intended behaviour owing to the way specs work. There is a non-zero chance I will rewrite the whole of gcc.c in the not-too-distant future, in which case this will be corrected. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1502&database=gcc >>From neil@gcc.gnu.org Wed Dec 27 10:26:00 2000 From: neil@gcc.gnu.org To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: target/1507 Date: Wed, 27 Dec 2000 10:26:00 -0000 Message-id: <20001227182600.9961.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01338.html Content-length: 521 The following reply was made to PR target/1507; it has been noted by GNATS. From: neil@gcc.gnu.org To: gcc-gnats@gcc.gnu.org, nobody@gcc.gnu.org, sefer@hotmail.com Cc: Subject: Re: target/1507 Date: 27 Dec 2000 18:17:12 -0000 Synopsis: Latest GCC dec 12th doesn't bootstrap on i686. State-Changed-From-To: open->closed State-Changed-By: neil State-Changed-When: Wed Dec 27 10:17:12 2000 State-Changed-Why: I'm sure this' been fixed. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1507&database=gcc >>From aj@suse.de Wed Dec 27 12:26:00 2000 From: aj@suse.de To: gcc-gnats@gcc.gnu.org Subject: c/1517: Erroneous warnings for nested functions with -Wmissing-declarations Date: Wed, 27 Dec 2000 12:26:00 -0000 Message-id: <20001227201713.BC4811822@gromit.rhein-neckar.de> X-SW-Source: 2000-q4/msg01339.html Content-length: 1570 >Number: 1517 >Category: c >Synopsis: synopsis of the problem (one line)> >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: change-request >Submitter-Id: net >Arrival-Date: Wed Dec 27 12:26:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Andreas Jaeger >Release: 2.97 20001226 (experimental) >Organization: private >Environment: System: Linux gromit 2.4.0-test13-pre4 #56 Fri Dec 22 09:16:50 CET 2000 i686 unknown Architecture: i686 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i686-pc-linux-gnu configured with: /cvs/gcc/configure --prefix=/opt/gcc-2.97.test --enable-shared --enable-threads=posix --with-gnu-as --with-gnu-ld --disable-nls --with-system-zlib --enable-languages=c,objc,c++,f77 >Description: A nested function with prototype definitions in C gives a warning when using -Wmisssing-declarations. For static functions I don't get a warning - and nested functions should be treated the same way. >How-To-Repeat: Compile the following program with -Wmissing-declarations: int main (void) { int a; int nested (int b) { return b + 2; } return (a + nested (a)); } $ /opt/gcc-2.97.test/bin/gcc t.c -Wmissing-declarations t.c: In function `main': t.c:9: warning: no previous declaration for `nested' >Fix: Adding a prototype with "auto" works but I prefer to not change the code, this should be treated the same way as static functions. >Release-Note: >Audit-Trail: >Unformatted: >>From Paul_Wielard@exe.com Wed Dec 27 13:56:00 2000 From: Paul_Wielard@exe.com To: gcc-gnats@gcc.gnu.org Cc: Sean_McAloon@exe.com Subject: c++/1518: Installing GCC on AIX has errors Date: Wed, 27 Dec 2000 13:56:00 -0000 Message-id: <20001227215207.31508.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01340.html Content-length: 449606 >Number: 1518 >Category: c++ >Synopsis: Installing GCC on AIX has errors >Confidential: no >Severity: serious >Priority: high >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Wed Dec 27 13:56:01 PST 2000 >Closed-Date: >Last-Modified: >Originator: Paul Wielard >Release: unknown-1.0 >Organization: >Environment: AIX >Description: I am working on an IBM computer with AIX 4.3 (all uname -a gave was AIX past 3 4 002028134C00) and I have downloaded make-3.79.1.tar.gz and installed it successfully. I also downloaded gcc-2.95.2.tar.gz and have un-tar'd the gcc-2.95.tar (in /home/4000rf) and run the command ./configure -prefix=/usr/local/exceed_build_tools -enable-languages=c++ and the configure tool completes successfully. The attached file config.txt has the output from the configure command. I then typed the make command. The make command fails with: cc -c -DIN_GCC -g -I. -I.. -I. -I./.. -I./../config -I./../../include tree.c "tree.c", line 2155.18: 1506-334 (S) Identifier code has already been defined on line 2152 of "tree.c". "tree.c", line 2193.18: 1506-334 (S) Identifier code has already been defined on line 2190 of "tree.c". "tree.c", line 2194.8: 1506-334 (S) Identifier tt has already been defined on line 2190 of "tree.c". make: 1254-004 The error code from the last command is 1. See the make.txt file attached for more details. I looked into the error for tree.c errors and found that if I commented around the following sections of code of /home/4000rf/gcc-2.95.2/gcc/cp/tree.c, the make would continue: tree build_min_nt VPROTO((enum tree_code code, ...)) { /* #ifndef __STDC__ enum tree_code code; #endif */ AND tree build_min VPROTO((enum tree_code code, tree tt, ...)) { /* #ifndef __STDC__ enum tree_code code; tree tt; #endif */ It seems that the ifndef section was redefining the parameters of the function. Anyway, the make continued after this change for a long time until it reached following error: /home/4000rf/gcc-2.95.2/gcc/xgcc -B/home/4000rf/gcc-2.95.2/gcc/ -B/usr/local/exceed_build_tools/powerpc-ibm-aix4.3.2.0/bin/ -c -g -O2 -fno-implicit-templates -I. -I. -nostdinc++ iomanip.cc In file included from iomanip.cc:29: iomanip.h: In method `sapp::sapp(ios & (*)(ios &, TP))': iomanip.h:47: Internal compiler error. iomanip.h:47: Please submit a full bug report. iomanip.h:47: See for instructions. make: 1254-004 The error code from the last command is 1. Stop. make: 1254-004 The error code from the last command is 2. See make-part2.doc for a little more information on this error. I dont know if the fix for ifndef caused this error or if I am looking at two errors here. Either way, I am not able get the GNU gcc source code compiled in order to get my c++ code. Any help that you could give me to get me past this step would be greatly appreciated. Paul Wielard EXE Technologies Paul_Wielard@exe.com (214)775-5988 >How-To-Repeat: I was able to reproduce this issue by removing the directory that tar created and then un-tar'd the application again. I did the configure and make steps again. >Fix: Unknown. Please help. >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/msword; name="GNU.doc" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="GNU.doc" 0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAAGAAAAgAIAAAAAAAAA EAAAggIAAAEAAAD+////AAAAAHoCAAB7AgAAfAIAAH0CAAB+AgAAfwIAAP////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////s pcEANyAJBAAA8BK/AAAAAAAAEAAAAAAABAAAzfMBAA4AYmpialUWVRYAAAAAAAAAAAAAAAAAAAAA AAAJBBYAImgEADd8AAA3fAAAze8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//w8AAAAA AAAAAAD//w8AAAAAAAAAAAD//w8AAAAAAAAAAAAAAAAAAAAAAGwAAAAAAKgAAAAAAAAAqAAAAKgA AAAAAAAAqAAAAAAAAACoAAAAAAAAAKgAAAAAAAAAqAAAABQAAAAAAAAAAAAAAEQFAAAAAAAAAisA AAAAAAACKwAAAAAAAAIrAAAAAAAAAisAAAwAAAAOKwAAPAIAAEQFAAAAAAAAvWUAAPYAAABWLQAA AAAAAFYtAAAAAAAAVi0AAAAAAABWLQAAAAAAAFYtAAAAAAAAVi0AAAAAAABWLQAAAAAAAFYtAAAA AAAAPGUAAAIAAAA+ZQAAAAAAAD5lAAAAAAAAPmUAAAAAAAA+ZQAAAAAAAD5lAAAAAAAAPmUAACQA AACzZgAAIAIAANNoAACGAAAAYmUAABUAAAAAAAAAAAAAAAAAAAAAAAAAqAAAAAAAAABWLQAAAAAA AAAAAAAAAAAAAAAAAAAAAABWLQAAAAAAAFYtAAAAAAAAVi0AAAAAAABWLQAAAAAAAGJlAAAAAAAA 8mQAAAAAAACoAAAAAAAAAKgAAAAAAAAAVi0AAAAAAAAAAAAAAAAAAFYtAAAAAAAAd2UAABYAAADy ZAAAAAAAAPJkAAAAAAAA8mQAAAAAAABWLQAAnDcAAKgAAAAAAAAAVi0AAAAAAACoAAAAAAAAAFYt AAAAAAAAPGUAAAAAAAAAAAAAAAAAAPJkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAVi0AAAAAAAA8ZQAAAAAAAPJkAAA2AAAA8mQAAAAAAAAAAAAA AAAAAChlAAAAAAAAqAAAAAAAAACoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKGUAAAAAAABWLQAAAAAAAEotAAAMAAAA4Kei4U1w wAFEBQAAviUAAAIrAAAAAAAA8mQAAAAAAAAoZQAAAAAAAAAAAAAAAAAAKGUAABQAAACNZQAAMAAA AL1lAAAAAAAAKGUAAAAAAABZaQAAAAAAAPJkAAAAAAAAWWkAAAAAAAAoZQAAAAAAAPJkAAAAAAAA vAAAAKQCAABgAwAA5AEAAKgAAAAAAAAAqAAAAAAAAACoAAAAAAAAAKgAAAAAAAAAAgDZAAAARm9y IHRoZSBjb25maWd1cmF0aW9uOg0NQ29uZmlndXJpbmcgZm9yIGEgcG93ZXJwYy1pYm0tYWl4NC4z LjIuMCBob3N0Lg1DcmVhdGVkICJNYWtlZmlsZSIgaW4gL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIg dXNpbmcgIm1oLWZyYWciDUNvbmZpZ3VyaW5nIGxpYmliZXJ0eS4uLg1jcmVhdGluZyBjYWNoZSAu Li9jb25maWcuY2FjaGUNY2hlY2tpbmcgaG9zdCBzeXN0ZW0gdHlwZS4uLiBwb3dlcnBjLWlibS1h aXg0LjMuMi4wDWNoZWNraW5nIGJ1aWxkIHN5c3RlbSB0eXBlLi4uIHBvd2VycGMtaWJtLWFpeDQu My4yLjANY2hlY2tpbmcgZm9yIGFyLi4uIGFyDWNoZWNraW5nIGZvciByYW5saWIuLi4gcmFubGli DWNoZWNraW5nIGZvciBnY2MuLi4gY2MNY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgR05V IEMuLi4gbm8NY2hlY2tpbmcgZm9yIFBPU0lYaXplZCBJU0MuLi4gbm8NY2hlY2tpbmcgZm9yIGEg QlNEIGNvbXBhdGlibGUgaW5zdGFsbC4uLiAuLy4uL2luc3RhbGwtc2ggLWMNY2hlY2tpbmcgaG93 IHRvIHJ1biB0aGUgQyBwcmVwcm9jZXNzb3IuLi4gY2MgLUUNY2hlY2tpbmcgZm9yIHN5cy9maWxl LmguLi4geWVzDWNoZWNraW5nIGZvciBzeXMvcGFyYW0uaC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN0 ZGxpYi5oLi4uIHllcw1jaGVja2luZyBmb3Igc3RyaW5nLmguLi4geWVzDWNoZWNraW5nIGZvciB1 bmlzdGQuaC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN0cmluZ3MuaC4uLiB5ZXMNY2hlY2tpbmcgZm9y IHN5cy90aW1lLmguLi4geWVzDWNoZWNraW5nIGZvciBzeXMvcmVzb3VyY2UuaC4uLiB5ZXMNY2hl Y2tpbmcgZm9yIHN5cy93YWl0LmggdGhhdCBpcyBQT1NJWC4xIGNvbXBhdGlibGUuLi4geWVzDWNo ZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKGNjIC1nICkgd29ya3MuLi4geWVzDWNoZWNr aW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKGNjIC1nICkgaXMgYSBjcm9zcy1jb21waWxlci4u LiBubw1jaGVja2luZyBmb3IgYXNwcmludGYuLi4gbm8NY2hlY2tpbmcgZm9yIGF0ZXhpdC4uLiB5 ZXMNY2hlY2tpbmcgZm9yIGJhc2VuYW1lLi4uIHllcw1jaGVja2luZyBmb3IgYmNtcC4uLiB5ZXMN Y2hlY2tpbmcgZm9yIGJjb3B5Li4uIHllcw1jaGVja2luZyBmb3IgYnplcm8uLi4geWVzDWNoZWNr aW5nIGZvciBjYWxsb2MuLi4geWVzDWNoZWNraW5nIGZvciBjbG9jay4uLiB5ZXMNY2hlY2tpbmcg Zm9yIGdldGN3ZC4uLiB5ZXMNY2hlY2tpbmcgZm9yIGdldHBhZ2VzaXplLi4uIHllcw1jaGVja2lu ZyBmb3IgaW5kZXguLi4geWVzDWNoZWNraW5nIGZvciBpbnNxdWUuLi4geWVzDWNoZWNraW5nIGZv ciBtZW1jaHIuLi4geWVzDWNoZWNraW5nIGZvciBtZW1jbXAuLi4geWVzDWNoZWNraW5nIGZvciBt ZW1jcHkuLi4geWVzDWNoZWNraW5nIGZvciBtZW1tb3ZlLi4uIHllcw1jaGVja2luZyBmb3IgbWVt c2V0Li4uIHllcw1jaGVja2luZyBmb3IgbWtzdGVtcHMuLi4gbm8NY2hlY2tpbmcgZm9yIHB1dGVu di4uLiB5ZXMNY2hlY2tpbmcgZm9yIHJhbmRvbS4uLiB5ZXMNY2hlY2tpbmcgZm9yIHJlbmFtZS4u LiB5ZXMNY2hlY2tpbmcgZm9yIHJpbmRleC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHNldGVudi4uLiBu bw1jaGVja2luZyBmb3Igc2lnc2V0bWFzay4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN0cmNhc2VjbXAu Li4geWVzDWNoZWNraW5nIGZvciBzdHJjaHIuLi4geWVzDWNoZWNraW5nIGZvciBzdHJkdXAuLi4g eWVzDWNoZWNraW5nIGZvciBzdHJuY2FzZWNtcC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN0cnJjaHIu Li4geWVzDWNoZWNraW5nIGZvciBzdHJzdHIuLi4geWVzDWNoZWNraW5nIGZvciBzdHJ0b2QuLi4g eWVzDWNoZWNraW5nIGZvciBzdHJ0b2wuLi4geWVzDWNoZWNraW5nIGZvciBzdHJ0b3VsLi4uIHll cw1jaGVja2luZyBmb3IgdG1wbmFtLi4uIHllcw1jaGVja2luZyBmb3IgdmFzcHJpbnRmLi4uIG5v DWNoZWNraW5nIGZvciB2ZnByaW50Zi4uLiB5ZXMNY2hlY2tpbmcgZm9yIHZwcmludGYuLi4geWVz DWNoZWNraW5nIGZvciB2c3ByaW50Zi4uLiB5ZXMNY2hlY2tpbmcgZm9yIHdhaXRwaWQuLi4geWVz DWNoZWNraW5nIGZvciB3b3JraW5nIGFsbG9jYS5oLi4uIG5vDWNoZWNraW5nIGZvciBhbGxvY2Eu Li4geWVzDWNoZWNraW5nIGZvciBBTlNJIEMgaGVhZGVyIGZpbGVzLi4uIHllcw1jaGVja2luZyBm b3IgcGlkX3QuLi4geWVzDWNoZWNraW5nIGZvciB2Zm9yay5oLi4uIG5vDWNoZWNraW5nIGZvciB3 b3JraW5nIHZmb3JrLi4uIHllcw1jaGVja2luZyBmb3Igc3lzX2Vycmxpc3QuLi4geWVzDWNoZWNr aW5nIGZvciBzeXNfbmVyci4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN5c19zaWdsaXN0Li4uIHllcw1j aGVja2luZyBmb3IgZ2V0cnVzYWdlLi4uIHllcw1jaGVja2luZyBmb3Igb25fZXhpdC4uLiBubw1j aGVja2luZyBmb3IgcHNpZ25hbC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN0cmVycm9yLi4uIHllcw1j aGVja2luZyBmb3Igc3Ryc2lnbmFsLi4uIG5vDWNoZWNraW5nIGZvciBzeXNjb25mLi4uIHllcw1j aGVja2luZyBmb3IgdGltZXMuLi4geWVzDWNoZWNraW5nIGZvciBzYnJrLi4uIHllcw1jaGVja2lu ZyBmb3IgZ2V0dGltZW9mZGF5Li4uIHllcw11cGRhdGluZyBjYWNoZSAuLi9jb25maWcuY2FjaGUN Y3JlYXRpbmcgLi9jb25maWcuc3RhdHVzDWNyZWF0aW5nIE1ha2VmaWxlDWNyZWF0aW5nIHRlc3Rz dWl0ZS9NYWtlZmlsZQ1jcmVhdGluZyBjb25maWcuaA1Db25maWd1cmluZyB0ZXhpbmZvLi4uDWxv YWRpbmcgY2FjaGUgLi4vY29uZmlnLmNhY2hlDWNoZWNraW5nIGZvciBhIEJTRCBjb21wYXRpYmxl IGluc3RhbGwuLi4gLi8uLi9pbnN0YWxsLXNoIC1jDWNoZWNraW5nIHdoZXRoZXIgYnVpbGQgZW52 aXJvbm1lbnQgaXMgc2FuZS4uLiB5ZXMNY2hlY2tpbmcgd2hldGhlciBtYWtlIHNldHMgJHtNQUtF fS4uLiB5ZXMNY2hlY2tpbmcgZm9yIHdvcmtpbmcgYWNsb2NhbC4uLiBtaXNzaW5nDWNoZWNraW5n IGZvciB3b3JraW5nIGF1dG9jb25mLi4uIG1pc3NpbmcNY2hlY2tpbmcgZm9yIHdvcmtpbmcgYXV0 b21ha2UuLi4gbWlzc2luZw1jaGVja2luZyBmb3Igd29ya2luZyBhdXRvaGVhZGVyLi4uIG1pc3Np bmcNY2hlY2tpbmcgZm9yIHdvcmtpbmcgbWFrZWluZm8uLi4gbWlzc2luZw1jaGVja2luZyBmb3Ig Z2NjLi4uIChjYWNoZWQpIGNjDWNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKGNjIC1n ICkgd29ya3MuLi4geWVzDWNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKGNjIC1nICkg aXMgYSBjcm9zcy1jb21waWxlci4uLiBubw1jaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyBH TlUgQy4uLiAoY2FjaGVkKSBubw1jaGVja2luZyB3aGV0aGVyIGNjIGFjY2VwdHMgLWcuLi4geWVz DWNoZWNraW5nIGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vzc29yLi4uIChjYWNoZWQpIGNjIC1F DWNoZWNraW5nIGZvciBhIEJTRCBjb21wYXRpYmxlIGluc3RhbGwuLi4gLi8uLi9pbnN0YWxsLXNo IC1jDWNoZWNraW5nIGZvciByYW5saWIuLi4gKGNhY2hlZCkgcmFubGliDWNoZWNraW5nIGZvciB0 ZXhjb25maWcuLi4gZmFsc2UNY2hlY2tpbmcgZm9yIFBPU0lYaXplZCBJU0MuLi4gbm8NY2hlY2tp bmcgZm9yIG1pbml4L2NvbmZpZy5oLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgdG8gZW5hYmxlIG1h aW50YWluZXItc3BlY2lmaWMgcG9ydGlvbnMgb2YgTWFrZWZpbGVzLi4uIG5vDWNoZWNraW5nIGZv ciBDeWd3aW4zMiBlbnZpcm9ubWVudC4uLiBubw1jaGVja2luZyBmb3IgTWluZ3czMiBlbnZpcm9u bWVudC4uLiBubw1jaGVja2luZyBmb3IgZXhlY3V0YWJsZSBzdWZmaXguLi4gbm8NY2hlY2tpbmcg Zm9yIHNpZ2Jsb2NrLi4uIHllcw1jaGVja2luZyBmb3IgdHB1dHMgaW4gLWxuY3Vyc2VzLi4uIG5v DWNoZWNraW5nIGZvciB0cHV0cyBpbiAtbGN1cnNlcy4uLiB5ZXMNY2hlY2tpbmcgZm9yIEFOU0kg QyBoZWFkZXIgZmlsZXMuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBmY250bC5oLi4uIHll cw1jaGVja2luZyBmb3IgcHdkLmguLi4geWVzDWNoZWNraW5nIGZvciBzdHJpbmcuaC4uLiAoY2Fj aGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHN0cmluZ3MuaC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcg Zm9yIHRlcm1jYXAuaC4uLiBubw1jaGVja2luZyBmb3IgdGVybWlvLmguLi4geWVzDWNoZWNraW5n IGZvciB0ZXJtaW9zLmguLi4geWVzDWNoZWNraW5nIGZvciB1bmlzdGQuaC4uLiAoY2FjaGVkKSB5 ZXMNY2hlY2tpbmcgZm9yIHN5cy9mY250bC5oLi4uIG5vDWNoZWNraW5nIGZvciBzeXMvZmlsZS5o Li4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3Igc3lzL3B0ZW0uaC4uLiBubw1jaGVja2luZyBm b3Igc3lzL3RpbWUuaC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHN5cy90dG9sZC5oLi4u IG5vDWNoZWNraW5nIGZvciBzeXMvd2FpdC5oLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3Ig b2ZmX3QuLi4geWVzDWNoZWNraW5nIHJldHVybiB0eXBlIG9mIHNpZ25hbCBoYW5kbGVycy4uLiB2 b2lkDWNoZWNraW5nIGZvciB3b3JraW5nIGNvbnN0Li4uIHllcw1jaGVja2luZyB3aGV0aGVyIHN0 cnVjdCB0bSBpcyBpbiBzeXMvdGltZS5oIG9yIHRpbWUuaC4uLiB0aW1lLmgNY2hlY2tpbmcgZm9y IHdvcmtpbmcgYWxsb2NhLmguLi4gKGNhY2hlZCkgbm8NY2hlY2tpbmcgZm9yIGFsbG9jYS4uLiAo Y2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHZwcmludGYuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5n IGZvciBzZXR2YnVmLi4uIHllcw1jaGVja2luZyBmb3IgZ2V0Y3dkLi4uIChjYWNoZWQpIHllcw1j aGVja2luZyBmb3IgbWVtc2V0Li4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgYnplcm8uLi4g KGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBzdHJjaHIuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5n IGZvciBzdHJjYXNlY21wLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3Igc2lncHJvY21hc2su Li4geWVzDWNoZWNraW5nIGZvciBzaWdzZXRtYXNrLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBm b3IgbWVtY3B5Li4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgbWVtbW92ZS4uLiAoY2FjaGVk KSB5ZXMNY2hlY2tpbmcgZm9yIHN0cmR1cC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHN0 cmVycm9yLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgaW5saW5lLi4uIF9faW5saW5lDWNo ZWNraW5nIGZvciBzaXplX3QuLi4geWVzDWNoZWNraW5nIGZvciB1bmlzdGQuaC4uLiAoY2FjaGVk KSB5ZXMNY2hlY2tpbmcgZm9yIGdldHBhZ2VzaXplLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBm b3Igd29ya2luZyBtbWFwLi4uIG5vDWNoZWNraW5nIGZvciBhcmd6LmguLi4gbm8NY2hlY2tpbmcg Zm9yIGxpbWl0cy5oLi4uIHllcw1jaGVja2luZyBmb3IgbG9jYWxlLmguLi4geWVzDWNoZWNraW5n IGZvciBubF90eXBlcy5oLi4uIHllcw1jaGVja2luZyBmb3IgbWFsbG9jLmguLi4geWVzDWNoZWNr aW5nIGZvciBzdHJpbmcuaC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHVuaXN0ZC5oLi4u IChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgdmFsdWVzLmguLi4geWVzDWNoZWNraW5nIGZvciBz eXMvcGFyYW0uaC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIGdldGN3ZC4uLiAoY2FjaGVk KSB5ZXMNY2hlY2tpbmcgZm9yIG11bm1hcC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHB1dGVudi4uLiAo Y2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHNldGVudi4uLiAoY2FjaGVkKSBubw1jaGVja2luZyBm b3Igc2V0bG9jYWxlLi4uIHllcw1jaGVja2luZyBmb3Igc3RyY2hyLi4uIChjYWNoZWQpIHllcw1j aGVja2luZyBmb3Igc3RyY2FzZWNtcC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIF9fYXJn el9jb3VudC4uLiBubw1jaGVja2luZyBmb3IgX19hcmd6X3N0cmluZ2lmeS4uLiBubw1jaGVja2lu ZyBmb3IgX19hcmd6X25leHQuLi4gbm8NY2hlY2tpbmcgZm9yIHN0cGNweS4uLiBubw1jaGVja2lu ZyBmb3IgTENfTUVTU0FHRVMuLi4geWVzDWNoZWNraW5nIHdoZXRoZXIgTkxTIGlzIHJlcXVlc3Rl ZC4uLiB5ZXMNY2hlY2tpbmcgd2hldGhlciBpbmNsdWRlZCBnZXR0ZXh0IGlzIHJlcXVlc3RlZC4u LiBubw1jaGVja2luZyBmb3IgbGliaW50bC5oLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgY2F0Z2V0 cyBjYW4gYmUgdXNlZC4uLiBubw1jaGVja2luZyBmb3IgbXNnZm10Li4uIG1zZ2ZtdA1jaGVja2lu ZyBmb3IgZ21zZ2ZtdC4uLiBtc2dmbXQNY2hlY2tpbmcgZm9yIHhnZXR0ZXh0Li4uIDoNY2hlY2tp bmcgZm9yIGNhdGFsb2dzIHRvIGJlIGluc3RhbGxlZC4uLiAgZGUgZnINdXBkYXRpbmcgY2FjaGUg Li4vY29uZmlnLmNhY2hlDWNyZWF0aW5nIC4vY29uZmlnLnN0YXR1cw1jcmVhdGluZyBNYWtlZmls ZQ1jcmVhdGluZyBkb2MvTWFrZWZpbGUNY3JlYXRpbmcgaW5mby9NYWtlZmlsZQ1jcmVhdGluZyBp bnRsL01ha2VmaWxlDWNyZWF0aW5nIGxpYi9NYWtlZmlsZQ1jcmVhdGluZyBtYWtlaW5mby9NYWtl ZmlsZQ1jcmVhdGluZyBwby9NYWtlZmlsZS5pbg1jcmVhdGluZyB1dGlsL01ha2VmaWxlDWNyZWF0 aW5nIGNvbmZpZy5oDWxpbmtpbmcgLi9pbnRsL2xpYmdldHRleHQuaCB0byBpbnRsL2xpYmludGwu aA1Db25maWd1cmluZyBnY2MuLi4NbG9hZGluZyBjYWNoZSAuLi9jb25maWcuY2FjaGUNY2hlY2tp bmcgTElCUkFSWV9QQVRIIHZhcmlhYmxlLi4uIG9rDWNoZWNraW5nIEdDQ19FWEVDX1BSRUZJWCB2 YXJpYWJsZS4uLiBvaw1jaGVja2luZyBob3N0IHN5c3RlbSB0eXBlLi4uIHBvd2VycGMtaWJtLWFp eDQuMy4yLjANY2hlY2tpbmcgdGFyZ2V0IHN5c3RlbSB0eXBlLi4uIHBvd2VycGMtaWJtLWFpeDQu My4yLjANY2hlY2tpbmcgYnVpbGQgc3lzdGVtIHR5cGUuLi4gcG93ZXJwYy1pYm0tYWl4NC4zLjIu MA1jaGVja2luZyBmb3IgZ2NjLi4uIChjYWNoZWQpIGNjDWNoZWNraW5nIHdoZXRoZXIgdGhlIEMg Y29tcGlsZXIgKGNjIC1nICkgd29ya3MuLi4geWVzDWNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29t cGlsZXIgKGNjIC1nICkgaXMgYSBjcm9zcy1jb21waWxlci4uLiBubw1jaGVja2luZyB3aGV0aGVy IHdlIGFyZSB1c2luZyBHTlUgQy4uLiAoY2FjaGVkKSBubw1jaGVja2luZyB3aGV0aGVyIGNjIGFj Y2VwdHMgLWcuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIHdoZXRoZXIgbWFrZSBzZXRzICR7TUFL RX0uLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIHdoZXRoZXIgYSBkZWZhdWx0IGFzc2VtYmxlciB3 YXMgc3BlY2lmaWVkLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgYSBkZWZhdWx0IGxpbmtlciB3YXMg c3BlY2lmaWVkLi4uIG5vDWNoZWNraW5nIGZvciBnYXdrLi4uIG5vDWNoZWNraW5nIGZvciBtYXdr Li4uIG5vDWNoZWNraW5nIGZvciBuYXdrLi4uIG5hd2sNY2hlY2tpbmcgZm9yIGZsZXguLi4gbGV4 DWNoZWNraW5nIGZvciB5eXdyYXAgaW4gLWxsLi4uIHllcw1jaGVja2luZyB3aGV0aGVyIGxuIHdv cmtzLi4uIHllcw1jaGVja2luZyB3aGV0aGVyIGxuIC1zIHdvcmtzLi4uIHllcw1jaGVja2luZyBm b3Igdm9sYXRpbGUuLi4geWVzDWNoZWNraW5nIGZvciByYW5saWIuLi4gKGNhY2hlZCkgcmFubGli DWNoZWNraW5nIGZvciBiaXNvbi4uLiBubw1jaGVja2luZyBmb3IgYnlhY2MuLi4gbm8NY2hlY2tp bmcgZm9yIGEgQlNEIGNvbXBhdGlibGUgaW5zdGFsbC4uLiAuLy4uL2luc3RhbGwtc2ggLWMNY2hl Y2tpbmcgaG93IHRvIHJ1biB0aGUgQyBwcmVwcm9jZXNzb3IuLi4gKGNhY2hlZCkgY2MgLUUNY2hl Y2tpbmcgZm9yIEFOU0kgQyBoZWFkZXIgZmlsZXMuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIHdo ZXRoZXIgdGltZS5oIGFuZCBzeXMvdGltZS5oIG1heSBib3RoIGJlIGluY2x1ZGVkLi4uIHllcw1j aGVja2luZyB3aGV0aGVyIHN0cmluZy5oIGFuZCBzdHJpbmdzLmggbWF5IGJvdGggYmUgaW5jbHVk ZWQuLi4geWVzDWNoZWNraW5nIGZvciBzeXMvd2FpdC5oIHRoYXQgaXMgUE9TSVguMSBjb21wYXRp YmxlLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgbGltaXRzLmguLi4gKGNhY2hlZCkgeWVz DWNoZWNraW5nIGZvciBzdGRkZWYuaC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN0cmluZy5oLi4uIChj YWNoZWQpIHllcw1jaGVja2luZyBmb3Igc3RyaW5ncy5oLi4uIChjYWNoZWQpIHllcw1jaGVja2lu ZyBmb3Igc3RkbGliLmguLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciB0aW1lLmguLi4geWVz DWNoZWNraW5nIGZvciBmY250bC5oLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgdW5pc3Rk LmguLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBzdGFiLmguLi4gbm8NY2hlY2tpbmcgZm9y IHN5cy9maWxlLmguLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBzeXMvdGltZS5oLi4uIChj YWNoZWQpIHllcw1jaGVja2luZyBmb3Igc3lzL3Jlc291cmNlLmguLi4gKGNhY2hlZCkgeWVzDWNo ZWNraW5nIGZvciBzeXMvcGFyYW0uaC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHN5cy90 aW1lcy5oLi4uIHllcw1jaGVja2luZyBmb3Igc3lzL3N0YXQuaC4uLiB5ZXMNY2hlY2tpbmcgZm9y IGRpcmVjdC5oLi4uIG5vDWNoZWNraW5nIGZvciB0aHJlYWQuaC4uLiBubw1jaGVja2luZyBmb3Ig cHRocmVhZC5oLi4uIHllcw1jaGVja2luZyBmb3IgZ25hdGJpbmQuLi4gbm8NY2hlY2tpbmcgd2hl dGhlciBjcHAgdW5kZXJzdGFuZHMgdGhlIHN0cmluZ2lmeSBvcGVyYXRvci4uLiB5ZXMNY2hlY2tp bmcgZm9yIGludHR5cGVzLmguLi4geWVzDWNoZWNraW5nIGZvciBzdHJ0b3VsLi4uIChjYWNoZWQp IHllcw1jaGVja2luZyBmb3IgYnNlYXJjaC4uLiB5ZXMNY2hlY2tpbmcgZm9yIHN0cmVycm9yLi4u IChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgcHV0ZW52Li4uIChjYWNoZWQpIHllcw1jaGVja2lu ZyBmb3IgcG9wZW4uLi4geWVzDWNoZWNraW5nIGZvciBiY29weS4uLiAoY2FjaGVkKSB5ZXMNY2hl Y2tpbmcgZm9yIGJ6ZXJvLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgYmNtcC4uLiAoY2Fj aGVkKSB5ZXMNY2hlY2tpbmcgZm9yIGluZGV4Li4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3Ig cmluZGV4Li4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3Igc3RyY2hyLi4uIChjYWNoZWQpIHll cw1jaGVja2luZyBmb3Igc3RycmNoci4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIGtpbGwu Li4geWVzDWNoZWNraW5nIGZvciBnZXRybGltaXQuLi4geWVzDWNoZWNraW5nIGZvciBzZXRybGlt aXQuLi4geWVzDWNoZWNraW5nIGZvciBhdG9sbC4uLiBubw1jaGVja2luZyBmb3IgYXRvcS4uLiBu bw1jaGVja2luZyBmb3Igc3lzY29uZi4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIGlzYXNj aWkuLi4geWVzDWNoZWNraW5nIGZvciBnZXR0aW1lb2ZkYXkuLi4gKGNhY2hlZCkgeWVzDWNoZWNr aW5nIGZvciBzdHJzaWduYWwuLi4gKGNhY2hlZCkgbm8NY2hlY2tpbmcgZm9yIHB1dGNfdW5sb2Nr ZWQuLi4geWVzDWNoZWNraW5nIGZvciBmcHV0Y191bmxvY2tlZC4uLiBubw1jaGVja2luZyBmb3Ig ZnB1dHNfdW5sb2NrZWQuLi4gbm8NY2hlY2tpbmcgZm9yIHZwcmludGYuLi4gKGNhY2hlZCkgeWVz DWNoZWNraW5nIHdoZXRoZXIgdGhlIHByaW50ZiBmdW5jdGlvbnMgc3VwcG9ydCAlcC4uLiB5ZXMN Y2hlY2tpbmcgZm9yIHBpZF90Li4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgdmZvcmsuaC4u LiAoY2FjaGVkKSBubw1jaGVja2luZyBmb3Igd29ya2luZyB2Zm9yay4uLiAoY2FjaGVkKSB5ZXMN Y2hlY2tpbmcgd2hldGhlciBtYWxsb2MgbXVzdCBiZSBkZWNsYXJlZC4uLiBubw1jaGVja2luZyB3 aGV0aGVyIHJlYWxsb2MgbXVzdCBiZSBkZWNsYXJlZC4uLiBubw1jaGVja2luZyB3aGV0aGVyIGNh bGxvYyBtdXN0IGJlIGRlY2xhcmVkLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgZnJlZSBtdXN0IGJl IGRlY2xhcmVkLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgYmNvcHkgbXVzdCBiZSBkZWNsYXJlZC4u LiBubw1jaGVja2luZyB3aGV0aGVyIGJ6ZXJvIG11c3QgYmUgZGVjbGFyZWQuLi4gbm8NY2hlY2tp bmcgd2hldGhlciBiY21wIG11c3QgYmUgZGVjbGFyZWQuLi4gbm8NY2hlY2tpbmcgd2hldGhlciBp bmRleCBtdXN0IGJlIGRlY2xhcmVkLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgcmluZGV4IG11c3Qg YmUgZGVjbGFyZWQuLi4gbm8NY2hlY2tpbmcgd2hldGhlciBnZXRlbnYgbXVzdCBiZSBkZWNsYXJl ZC4uLiBubw1jaGVja2luZyB3aGV0aGVyIGF0b2wgbXVzdCBiZSBkZWNsYXJlZC4uLiBubw1jaGVj a2luZyB3aGV0aGVyIHNicmsgbXVzdCBiZSBkZWNsYXJlZC4uLiBubw1jaGVja2luZyB3aGV0aGVy IGFib3J0IG11c3QgYmUgZGVjbGFyZWQuLi4gbm8NY2hlY2tpbmcgd2hldGhlciBhdG9mIG11c3Qg YmUgZGVjbGFyZWQuLi4gbm8NY2hlY2tpbmcgd2hldGhlciBzdHJlcnJvciBtdXN0IGJlIGRlY2xh cmVkLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgZ2V0Y3dkIG11c3QgYmUgZGVjbGFyZWQuLi4gbm8N Y2hlY2tpbmcgd2hldGhlciBnZXR3ZCBtdXN0IGJlIGRlY2xhcmVkLi4uIG5vDWNoZWNraW5nIHdo ZXRoZXIgc3Ryc2lnbmFsIG11c3QgYmUgZGVjbGFyZWQuLi4geWVzDWNoZWNraW5nIHdoZXRoZXIg cHV0Y191bmxvY2tlZCBtdXN0IGJlIGRlY2xhcmVkLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgZnB1 dHNfdW5sb2NrZWQgbXVzdCBiZSBkZWNsYXJlZC4uLiB5ZXMNY2hlY2tpbmcgd2hldGhlciBzdHJz dHIgbXVzdCBiZSBkZWNsYXJlZC4uLiBubw1jaGVja2luZyB3aGV0aGVyIGdldHJsaW1pdCBtdXN0 IGJlIGRlY2xhcmVkLi4uIG5vDWNoZWNraW5nIHdoZXRoZXIgc2V0cmxpbWl0IG11c3QgYmUgZGVj bGFyZWQuLi4gbm8NY2hlY2tpbmcgZm9yIHN5c19zaWdsaXN0IGRlY2xhcmF0aW9uIGluIHNpZ25h bC5oIG9yIHVuaXN0ZC5oLi4uIG5vDWNoZWNraW5nIGlmIG1rZGlyIHRha2VzIG9uZSBhcmd1bWVu dC4uLiBubw1Vc2luZyBgLi9jb25maWcvcnM2MDAwL3JzNjAwMC5jJyB0byBvdXRwdXQgaW5zbnMu DVVzaW5nIGAuL2NvbmZpZy9yczYwMDAvcnM2MDAwLm1kJyBhcyBtYWNoaW5lIGRlc2NyaXB0aW9u IGZpbGUuDVVzaW5nIGAuL2NvbmZpZy9yczYwMDAvYWl4NDMuaCcgYXMgdGFyZ2V0IG1hY2hpbmUg bWFjcm8gZmlsZS4NVXNpbmcgYC4vY29uZmlnL3JzNjAwMC94bS1yczYwMDAuaCcgYXMgaG9zdCBt YWNoaW5lIG1hY3JvIGZpbGUuDWNoZWNraW5nIGZvciBzdHJlcnJvciBpbiAtbGNwb3NpeC4uLiBu bw1jaGVja2luZyBmb3Igd29ya2luZyBjb25zdC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9y IGlubGluZS4uLiAoY2FjaGVkKSBfX2lubGluZQ1jaGVja2luZyBmb3Igb2ZmX3QuLi4gKGNhY2hl ZCkgeWVzDWNoZWNraW5nIGZvciBzaXplX3QuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciB3 b3JraW5nIGFsbG9jYS5oLi4uIChjYWNoZWQpIG5vDWNoZWNraW5nIGZvciBhbGxvY2EuLi4gKGNh Y2hlZCkgeWVzDWNoZWNraW5nIGZvciB1bmlzdGQuaC4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcg Zm9yIGdldHBhZ2VzaXplLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3Igd29ya2luZyBtbWFw Li4uIChjYWNoZWQpIG5vDWNoZWNraW5nIGZvciBhcmd6LmguLi4gKGNhY2hlZCkgbm8NY2hlY2tp bmcgZm9yIGxpbWl0cy5oLi4uIChjYWNoZWQpIHllcw1jaGVja2luZyBmb3IgbG9jYWxlLmguLi4g KGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBubF90eXBlcy5oLi4uIChjYWNoZWQpIHllcw1jaGVj a2luZyBmb3IgbWFsbG9jLmguLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBzdHJpbmcuaC4u LiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHVuaXN0ZC5oLi4uIChjYWNoZWQpIHllcw1jaGVj a2luZyBmb3Igc3lzL3BhcmFtLmguLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBnZXRjd2Qu Li4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBtdW5tYXAuLi4gKGNhY2hlZCkgeWVzDWNoZWNr aW5nIGZvciBwdXRlbnYuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZvciBzZXRlbnYuLi4gKGNh Y2hlZCkgbm8NY2hlY2tpbmcgZm9yIHNldGxvY2FsZS4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcg Zm9yIHN0cmNoci4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgZm9yIHN0cmNhc2VjbXAuLi4gKGNh Y2hlZCkgeWVzDWNoZWNraW5nIGZvciBzdHJkdXAuLi4gKGNhY2hlZCkgeWVzDWNoZWNraW5nIGZv ciBfX2FyZ3pfY291bnQuLi4gKGNhY2hlZCkgbm8NY2hlY2tpbmcgZm9yIF9fYXJnel9zdHJpbmdp ZnkuLi4gKGNhY2hlZCkgbm8NY2hlY2tpbmcgZm9yIF9fYXJnel9uZXh0Li4uIChjYWNoZWQpIG5v DWNoZWNraW5nIGZvciBMQ19NRVNTQUdFUy4uLiAoY2FjaGVkKSB5ZXMNY2hlY2tpbmcgd2hldGhl ciBOTFMgaXMgcmVxdWVzdGVkLi4uIG5vDWNoZWNraW5nIGFzc2VtYmxlciBhbGlnbm1lbnQgZmVh dHVyZXMuLi4gDWNoZWNraW5nIGFzc2VtYmxlciBzdWJzZWN0aW9uIHN1cHBvcnQuLi4gDWNoZWNr aW5nIGFzc2VtYmxlciBpbnN0cnVjdGlvbnMuLi4gDVVzaW5nIHRoZSBIYWlmYSBzY2hlZHVsZXIu DUxpbmtzIGFyZSBub3cgc2V0IHVwIHRvIGJ1aWxkIGEgbmF0aXZlIGNvbXBpbGVyIGZvciBwb3dl cnBjLWlibS1haXg0LjMuMi4wDXVwZGF0aW5nIGNhY2hlIC4uL2NvbmZpZy5jYWNoZQ1jcmVhdGlu ZyAuL2NvbmZpZy5zdGF0dXMNY3JlYXRpbmcgTWFrZWZpbGUNY3JlYXRpbmcgaW50bC9NYWtlZmls ZQ1jcmVhdGluZyBwby9NYWtlZmlsZS5pbg1jcmVhdGluZyBmaXhpbmMvTWFrZWZpbGUNY3JlYXRp bmcgY3AvTWFrZWZpbGUNY3JlYXRpbmcgYXV0by1ob3N0LmgNbGlua2luZyAuL2ludGwvbGliZ2V0 dGV4dC5oIHRvIGludGwvbGliaW50bC5oDWNyZWF0aW5nIGxpYmludGwuaA1Db25maWd1cmluZyBl dGMuLi4NbG9hZGluZyBjYWNoZSAuLi9jb25maWcuY2FjaGUNY2hlY2tpbmcgZm9yIGEgQlNEIGNv bXBhdGlibGUgaW5zdGFsbC4uLiAuLy4uL2luc3RhbGwtc2ggLWMNY3JlYXRpbmcgLi9jb25maWcu c3RhdHVzDWNyZWF0aW5nIE1ha2VmaWxlDQ0NRU5EIENvbmZpZ3VyYXRpb24uDQxNYWtlOg0JDWlm IFsgeCJubyIgPSB4eWVzIF0gJiYgWyAhIC1kIHBpYyBdOyB0aGVuICBta2RpciBwaWM7ICBlbHNl IHRydWU7IGZpDQl0b3VjaCBzdGFtcC1waWNkaXINCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2Mg LWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIGFyZ3YuYyAtbyBwaWMv YXJndi5vDQljYyAtYyAtREhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICBhcmd2 LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAt SS4vLi4vaW5jbHVkZSAgIGNob29zZS10ZW1wLmMgLW8gcGljL2Nob29zZS10ZW1wLm8NCWNjIC1j IC1ESEFWRV9DT05GSUdfSCAtZyAtSS4gLUkuLy4uL2luY2x1ZGUgIGNob29zZS10ZW1wLmMNCXRl c3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4v aW5jbHVkZSAgIGNvbmNhdC5jIC1vIHBpYy9jb25jYXQubw0JY2MgLWMgLURIQVZFX0NPTkZJR19I IC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgY29uY2F0LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAg Y2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIGNwbHVzLWRlbS5j IC1vIHBpYy9jcGx1cy1kZW0ubw0JY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4v aW5jbHVkZSAgY3BsdXMtZGVtLmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZF X0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIGZkbWF0Y2guYyAtbyBwaWMvZmRtYXRj aC5vDQljYyAtYyAtREhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICBmZG1hdGNo LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAt SS4vLi4vaW5jbHVkZSAgIGZubWF0Y2guYyAtbyBwaWMvZm5tYXRjaC5vDQljYyAtYyAtREhBVkVf Q09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICBmbm1hdGNoLmMNCXRlc3QgeCJubyIgIT0g eHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIGdl dG9wdC5jIC1vIHBpYy9nZXRvcHQubw0JY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4v Li4vaW5jbHVkZSAgZ2V0b3B0LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZF X0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIGdldG9wdDEuYyAtbyBwaWMvZ2V0b3B0 MS5vDQljYyAtYyAtREhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICBnZXRvcHQx LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAt SS4vLi4vaW5jbHVkZSAgIGdldHJ1bnRpbWUuYyAtbyBwaWMvZ2V0cnVudGltZS5vDQljYyAtYyAt REhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICBnZXRydW50aW1lLmMNCXRlc3Qg eCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5j bHVkZSAgIGhleC5jIC1vIHBpYy9oZXgubw0JY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAt SS4vLi4vaW5jbHVkZSAgaGV4LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZF X0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIGZsb2F0Zm9ybWF0LmMgLW8gcGljL2Zs b2F0Zm9ybWF0Lm8NCWNjIC1jIC1ESEFWRV9DT05GSUdfSCAtZyAtSS4gLUkuLy4uL2luY2x1ZGUg IGZsb2F0Zm9ybWF0LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJ R19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIG9iamFsbG9jLmMgLW8gcGljL29iamFsbG9jLm8N CWNjIC1jIC1ESEFWRV9DT05GSUdfSCAtZyAtSS4gLUkuLy4uL2luY2x1ZGUgIG9iamFsbG9jLmMN CXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4v Li4vaW5jbHVkZSAgIG9ic3RhY2suYyAtbyBwaWMvb2JzdGFjay5vDQljYyAtYyAtREhBVkVfQ09O RklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICBvYnN0YWNrLmMNCXRlc3QgeCJubyIgIT0geHll cyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIHBleGVj dXRlLmMgLW8gcGljL3BleGVjdXRlLm8NCWNjIC1jIC1ESEFWRV9DT05GSUdfSCAtZyAtSS4gLUku Ly4uL2luY2x1ZGUgIHBleGVjdXRlLmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURI QVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIHNwYWNlcy5jIC1vIHBpYy9zcGFj ZXMubw0JY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgc3BhY2Vz LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAt SS4vLi4vaW5jbHVkZSAgIHNwbGF5LXRyZWUuYyAtbyBwaWMvc3BsYXktdHJlZS5vDQljYyAtYyAt REhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICBzcGxheS10cmVlLmMNCXRlc3Qg eCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5j bHVkZSAgIHN0cmVycm9yLmMgLW8gcGljL3N0cmVycm9yLm8NCWNjIC1jIC1ESEFWRV9DT05GSUdf SCAtZyAtSS4gLUkuLy4uL2luY2x1ZGUgIHN0cmVycm9yLmMNCXRlc3QgeCJubyIgIT0geHllcyB8 fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIHN0cnNpZ25h bC5jIC1vIHBpYy9zdHJzaWduYWwubw0JY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4v Li4vaW5jbHVkZSAgc3Ryc2lnbmFsLmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURI QVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIHhhdGV4aXQuYyAtbyBwaWMveGF0 ZXhpdC5vDQljYyAtYyAtREhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICB4YXRl eGl0LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1J LiAtSS4vLi4vaW5jbHVkZSAgIHhleGl0LmMgLW8gcGljL3hleGl0Lm8NCWNjIC1jIC1ESEFWRV9D T05GSUdfSCAtZyAtSS4gLUkuLy4uL2luY2x1ZGUgIHhleGl0LmMNCXRlc3QgeCJubyIgIT0geHll cyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIHhtYWxs b2MuYyAtbyBwaWMveG1hbGxvYy5vDQljYyAtYyAtREhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8u Li9pbmNsdWRlICB4bWFsbG9jLmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZF X0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIHhzdHJkdXAuYyAtbyBwaWMveHN0cmR1 cC5vDQljYyAtYyAtREhBVkVfQ09ORklHX0ggLWcgLUkuIC1JLi8uLi9pbmNsdWRlICB4c3RyZHVw LmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAt SS4vLi4vaW5jbHVkZSAgIHhzdHJlcnJvci5jIC1vIHBpYy94c3RyZXJyb3Iubw0JY2MgLWMgLURI QVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgeHN0cmVycm9yLmMNCXRlc3QgeCJu byIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVk ZSAgIGFzcHJpbnRmLmMgLW8gcGljL2FzcHJpbnRmLm8NCWNjIC1jIC1ESEFWRV9DT05GSUdfSCAt ZyAtSS4gLUkuLy4uL2luY2x1ZGUgIGFzcHJpbnRmLmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAg Y2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIG1rc3RlbXBzLmMg LW8gcGljL21rc3RlbXBzLm8NCWNjIC1jIC1ESEFWRV9DT05GSUdfSCAtZyAtSS4gLUkuLy4uL2lu Y2x1ZGUgIG1rc3RlbXBzLmMNCXRlc3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NP TkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgIHNldGVudi5jIC1vIHBpYy9zZXRlbnYubw0J Y2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgc2V0ZW52LmMNCXRl c3QgeCJubyIgIT0geHllcyB8fCAgY2MgLWMgLURIQVZFX0NPTkZJR19IIC1nIC1JLiAtSS4vLi4v aW5jbHVkZSAgIHZhc3ByaW50Zi5jIC1vIHBpYy92YXNwcmludGYubw0JY2MgLWMgLURIQVZFX0NP TkZJR19IIC1nIC1JLiAtSS4vLi4vaW5jbHVkZSAgdmFzcHJpbnRmLmMNCXJtIC1mIGxpYmliZXJ0 eS5hDQlhciByYyBsaWJpYmVydHkuYSAgYXJndi5vIGNob29zZS10ZW1wLm8gY29uY2F0Lm8gY3Bs dXMtZGVtLm8gIGZkbWF0Y2gubyBmbm1hdGNoLm8gZ2V0b3B0Lm8gZ2V0b3B0MS5vIGdldHJ1bnRp bWUubyBoZXgubyAgZmxvYXRmb3JtYXQubyBvYmphbGxvYy5vIG9ic3RhY2subyBwZXhlY3V0ZS5v IHNwYWNlcy5vICBzcGxheS10cmVlLm8gc3RyZXJyb3IubyBzdHJzaWduYWwubyB4YXRleGl0Lm8g eGV4aXQubyB4bWFsbG9jLm8gIHhzdHJkdXAubyB4c3RyZXJyb3IubyAgYXNwcmludGYubyBta3N0 ZW1wcy5vIHNldGVudi5vIHZhc3ByaW50Zi5vIA0JcmFubGliIGxpYmliZXJ0eS5hDQlybSAtZiBu ZWVkZWQtbGlzdDsgdG91Y2ggbmVlZGVkLWxpc3Q7ICBmb3IgZiBpbiBhdGV4aXQgY2FsbG9jIG1l bWNociBtZW1jbXAgbWVtY3B5IG1lbW1vdmUgbWVtc2V0IHJlbmFtZSBzdHJjaHIgIHN0cmVycm9y IHN0cnJjaHIgc3Ryc3RyIHN0cnRvbCBzdHJ0b3VsIHRtcG5hbSB2ZnByaW50ZiB2cHJpbnRmICB2 Zm9yayB3YWl0cGlkIGJjbXAgYmNvcHkgYnplcm87IGRvICBmb3IgZyBpbiBhc3ByaW50Zi5vIG1r c3RlbXBzLm8gc2V0ZW52Lm8gdmFzcHJpbnRmLm8gOyBkbyAgY2FzZSAiJGciIGluICAqJGYqKSBl Y2hvICRnID4+IG5lZWRlZC1saXN0IDs7ICBlc2FjOyAgZG9uZTsgIGRvbmUNCWVjaG8gYXJndi5v IGNob29zZS10ZW1wLm8gY29uY2F0Lm8gY3BsdXMtZGVtLm8gIGZkbWF0Y2gubyBmbm1hdGNoLm8g Z2V0b3B0Lm8gZ2V0b3B0MS5vIGdldHJ1bnRpbWUubyBoZXgubyAgZmxvYXRmb3JtYXQubyBvYmph bGxvYy5vIG9ic3RhY2subyBwZXhlY3V0ZS5vIHNwYWNlcy5vICBzcGxheS10cmVlLm8gc3RyZXJy b3IubyBzdHJzaWduYWwubyB4YXRleGl0Lm8geGV4aXQubyB4bWFsbG9jLm8gIHhzdHJkdXAubyB4 c3RyZXJyb3IubyA+IHJlcXVpcmVkLWxpc3QNVGFyZ2V0ICJhbGwiIGlzIHVwIHRvIGRhdGUuDQlt YWtlIGFsbC1yZWN1cnNpdmUNTWFraW5nIGFsbCBpbiBpbnRsDQljYyAtYyAtRExPQ0FMRURJUj1c Ii91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiIC1ER05VTE9DQUxF RElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlXCIgIC1ETE9D QUxFX0FMSUFTX1BBVEg9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2Nh bGU6LlwiIC1ESEFWRV9DT05GSUdfSCAtSS4uIC1JLiAtSS4uL2ludGwgLUkuLi9saWIgIC1nICBp bnRsLWNvbXBhdC5jDQljYyAtYyAtRExPQ0FMRURJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxk X3Rvb2xzL3NoYXJlL2xvY2FsZVwiIC1ER05VTE9DQUxFRElSPVwiL3Vzci9sb2NhbC9leGNlZWRf YnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlXCIgIC1ETE9DQUxFX0FMSUFTX1BBVEg9XCIvdXNyL2xv Y2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGU6LlwiIC1ESEFWRV9DT05GSUdfSCAt SS4uIC1JLiAtSS4uL2ludGwgLUkuLi9saWIgIC1nICBiaW5kdGV4dGRvbS5jDQljYyAtYyAtRExP Q0FMRURJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiIC1E R05VTE9DQUxFRElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxl XCIgIC1ETE9DQUxFX0FMSUFTX1BBVEg9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9z aGFyZS9sb2NhbGU6LlwiIC1ESEFWRV9DT05GSUdfSCAtSS4uIC1JLiAtSS4uL2ludGwgLUkuLi9s aWIgIC1nICBkY2dldHRleHQuYw0JY2MgLWMgLURMT0NBTEVESVI9XCIvdXNyL2xvY2FsL2V4Y2Vl ZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGVcIiAtREdOVUxPQ0FMRURJUj1cIi91c3IvbG9jYWwv ZXhjZWVkX2J1aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiICAtRExPQ0FMRV9BTElBU19QQVRIPVwi L3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlOi5cIiAtREhBVkVfQ09O RklHX0ggLUkuLiAtSS4gLUkuLi9pbnRsIC1JLi4vbGliICAtZyAgZGdldHRleHQuYw0JY2MgLWMg LURMT0NBTEVESVI9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGVc IiAtREdOVUxPQ0FMRURJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3NoYXJlL2xv Y2FsZVwiICAtRExPQ0FMRV9BTElBU19QQVRIPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9v bHMvc2hhcmUvbG9jYWxlOi5cIiAtREhBVkVfQ09ORklHX0ggLUkuLiAtSS4gLUkuLi9pbnRsIC1J Li4vbGliICAtZyAgZ2V0dGV4dC5jDQljYyAtYyAtRExPQ0FMRURJUj1cIi91c3IvbG9jYWwvZXhj ZWVkX2J1aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiIC1ER05VTE9DQUxFRElSPVwiL3Vzci9sb2Nh bC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlXCIgIC1ETE9DQUxFX0FMSUFTX1BBVEg9 XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGU6LlwiIC1ESEFWRV9D T05GSUdfSCAtSS4uIC1JLiAtSS4uL2ludGwgLUkuLi9saWIgIC1nICBmaW5kZG9tYWluLmMNCWNj IC1jIC1ETE9DQUxFRElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9j YWxlXCIgLURHTlVMT0NBTEVESVI9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFy ZS9sb2NhbGVcIiAgLURMT0NBTEVfQUxJQVNfUEFUSD1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxk X3Rvb2xzL3NoYXJlL2xvY2FsZTouXCIgLURIQVZFX0NPTkZJR19IIC1JLi4gLUkuIC1JLi4vaW50 bCAtSS4uL2xpYiAgLWcgIGxvYWRtc2djYXQuYw0JY2MgLWMgLURMT0NBTEVESVI9XCIvdXNyL2xv Y2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGVcIiAtREdOVUxPQ0FMRURJUj1cIi91 c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiICAtRExPQ0FMRV9BTElB U19QQVRIPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlOi5cIiAt REhBVkVfQ09ORklHX0ggLUkuLiAtSS4gLUkuLi9pbnRsIC1JLi4vbGliICAtZyAgbG9jYWxlYWxp YXMuYw0JY2MgLWMgLURMT0NBTEVESVI9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9z aGFyZS9sb2NhbGVcIiAtREdOVUxPQ0FMRURJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rv b2xzL3NoYXJlL2xvY2FsZVwiICAtRExPQ0FMRV9BTElBU19QQVRIPVwiL3Vzci9sb2NhbC9leGNl ZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlOi5cIiAtREhBVkVfQ09ORklHX0ggLUkuLiAtSS4g LUkuLi9pbnRsIC1JLi4vbGliICAtZyAgdGV4dGRvbWFpbi5jDQljYyAtYyAtRExPQ0FMRURJUj1c Ii91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiIC1ER05VTE9DQUxF RElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlXCIgIC1ETE9D QUxFX0FMSUFTX1BBVEg9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2Nh bGU6LlwiIC1ESEFWRV9DT05GSUdfSCAtSS4uIC1JLiAtSS4uL2ludGwgLUkuLi9saWIgIC1nICBs MTBuZmxpc3QuYw0JY2MgLWMgLURMT0NBTEVESVI9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90 b29scy9zaGFyZS9sb2NhbGVcIiAtREdOVUxPQ0FMRURJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1 aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiICAtRExPQ0FMRV9BTElBU19QQVRIPVwiL3Vzci9sb2Nh bC9leGNlZWRfYnVpbGRfdG9vbHMvc2hhcmUvbG9jYWxlOi5cIiAtREhBVkVfQ09ORklHX0ggLUku LiAtSS4gLUkuLi9pbnRsIC1JLi4vbGliICAtZyAgZXhwbG9kZW5hbWUuYw0Jcm0gLWYgbGliaW50 bC5hDQlhciBjcnUgbGliaW50bC5hIGludGwtY29tcGF0Lm8gYmluZHRleHRkb20ubyBkY2dldHRl eHQubyBkZ2V0dGV4dC5vIGdldHRleHQubyAgZmluZGRvbWFpbi5vIGxvYWRtc2djYXQubyBsb2Nh bGVhbGlhcy5vIHRleHRkb21haW4ubyBsMTBuZmxpc3QubyAgZXhwbG9kZW5hbWUubw0JcmFubGli IGxpYmludGwuYQ1UYXJnZXQgImFsbCIgaXMgdXAgdG8gZGF0ZS4NTWFraW5nIGFsbCBpbiBsaWIN CWNjIC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4gLUkuLi9pbnRsICAtZyAtYyBnZXRvcHQu Yw0JY2MgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLiAtSS4uL2ludGwgIC1nIC1jIGdldG9w dDEuYw0JY2MgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLiAtSS4uL2ludGwgIC1nIC1jIHht YWxsb2MuYw0JY2MgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLiAtSS4uL2ludGwgIC1nIC1j IHhzdHJkdXAuYw0Jcm0gLWYgbGlidHhpLmENCWFyIGNydSBsaWJ0eGkuYSBnZXRvcHQubyBnZXRv cHQxLm8geG1hbGxvYy5vIHhzdHJkdXAubyANCXJhbmxpYiBsaWJ0eGkuYQ1UYXJnZXQgImFsbCIg aXMgdXAgdG8gZGF0ZS4NTWFraW5nIGFsbCBpbiBtYWtlaW5mbw0JY2MgLURIQVZFX0NPTkZJR19I IC1JLiAtSS4gLUkuLiAtSS4uL2xpYiAtSS4uL2ludGwgLURMT0NBTEVESVI9XCIvdXNyL2xvY2Fs L2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGVcIiAgLWcgLWMgbWFrZWluZm8uYw0ibWFr ZWluZm8uYyIsIGxpbmUgODIyNS40NjogMTUwNi0yODAgKFcpIEZ1bmN0aW9uIGFyZ3VtZW50IGFz c2lnbm1lbnQgYmV0d2VlbiB0eXBlcyAiaW50KCopKGNvbnN0IHZvaWQqLGNvbnN0IHZvaWQqKSIg YW5kICJpbnQoKikoKSIgaXMgbm90IGFsbG93ZWQuDQljYyAtREhBVkVfQ09ORklHX0ggLUkuIC1J LiAtSS4uIC1JLi4vbGliIC1JLi4vaW50bCAtRExPQ0FMRURJUj1cIi91c3IvbG9jYWwvZXhjZWVk X2J1aWxkX3Rvb2xzL3NoYXJlL2xvY2FsZVwiICAtZyAtYyBtdWx0aS5jDQljYyAtZyAgLW8gbWFr ZWluZm8gIG1ha2VpbmZvLm8gbXVsdGkubyAuLi9saWIvbGlidHhpLmEgLi4vaW50bC9saWJpbnRs LmEgDVRhcmdldCAiYWxsIiBpcyB1cCB0byBkYXRlLg1UYXJnZXQgImFsbCIgaXMgdXAgdG8gZGF0 ZS4NVGFyZ2V0ICJhbGwiIGlzIHVwIHRvIGRhdGUuDQljYyAgLURJTl9HQ0MgLURIQUlGQSAgICAt ZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUg IC1ER0NDX0lOQ0xVREVfRElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2dj Yy1saWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjIvaW5jbHVkZVwiICAtREdQTFVTUExV U19JTkNMVURFX0RJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xpYi9nY2MtbGli L3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvMi45NS4yLy4uLy4uLy4uLy4uYGVjaG8gL3Vzci9sb2Nh bC9leGNlZWRfYnVpbGRfdG9vbHMgfCBzZWQgLWUgJ3N8Xi91c3IvbG9jYWwvZXhjZWVkX2J1aWxk X3Rvb2xzfHwnIC1lICdzfC9bXi9dKnwvLi58ZydgL2luY2x1ZGUvZysrLTNcIiAgLURMT0NBTF9J TkNMVURFX0RJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2luY2x1ZGVcIiAgLURD Uk9TU19JTkNMVURFX0RJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xpYi9nY2Mt bGliL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvMi45NS4yLy4uLy4uLy4uLy4uL3Bvd2VycGMtaWJt LWFpeDQuMy4yLjAvc3lzLWluY2x1ZGVcIiAgLURUT09MX0lOQ0xVREVfRElSPVwiL3Vzci9sb2Nh bC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2djYy1saWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8y Ljk1LjIvLi4vLi4vLi4vLi4vcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC9pbmNsdWRlXCIgIC1jIGBl Y2hvIC4vY2NjcC5jIHwgc2VkICdzLF5cLi8sLCdgDQljYyAgLURJTl9HQ0MgLURIQUlGQSAgICAt ZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUg LWMgLi9jZXhwLmMNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19I ICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAgLURMT0NBTEVESVI9XCIvdXNy L2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGVcIiAgLWMgYGVjaG8gLi9pbnRs LmMgfCBzZWQgJ3MsXlwuLywsJ2ANCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZF X0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAgLURQUkVGSVg9 XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29sc1wiICAtYyBgZWNobyAuL3ByZWZpeC5jIHwg c2VkICdzLF5cLi8sLCdgDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9D T05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgdmVyc2lvbi5jDQlj YyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUku IC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgbWJjaGFyLmMNIm1iY2hhci5jIiwgbGluZSAyOTAu Mjk6IDE1MDYtMzU2IChXKSBDb21waWxhdGlvbiB1bml0IGlzIGVtcHR5Lg0Jcm0gLWYgb2JzdGFj ay5jDQlsbiAtcyAuLy4uL2xpYmliZXJ0eS9vYnN0YWNrLmMgb2JzdGFjay5jDQljYyAtYyAgLURJ Tl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25m aWcgLUkuLy4uL2luY2x1ZGUgb2JzdGFjay5jDQlybSAtZiBhbGxvY2EuYw0JbG4gLXMgLi8uLi9s aWJpYmVydHkvYWxsb2NhLmMgYWxsb2NhLmMNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAg LURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAgIC1j IGBlY2hvIGFsbG9jYS5jIHwgc2VkICdzLF5cLi8sLCdgDQl0cnVlDQljYyAgLURJTl9HQ0MgLURI QUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgLW8gY2NjcCBjY2NwLm8gY2V4cC5vIGludGwu byBwcmVmaXgubyB2ZXJzaW9uLm8gIG1iY2hhci5vICBvYnN0YWNrLm8gYWxsb2NhLm8gICAgICAt bGxkIC4uL2xpYmliZXJ0eS9saWJpYmVydHkuYQ0Jcm0gLWYgY3BwDQlsbiBjY2NwIGNwcA0oY2Qg aW50bCAmJiBtYWtlIGFsbCkNVGFyZ2V0ICJhbGwiIGlzIHVwIHRvIGRhdGUuDQljYyAtYyAgLURJ Tl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25m aWcgLUkuLy4uL2luY2x1ZGUgIC4vZ2VuY2hlY2suYw0JY2MgIC1ESU5fR0NDIC1ESEFJRkEgICAg LWcgICAtREhBVkVfQ09ORklHX0ggIC1vIGdlbmNoZWNrICBnZW5jaGVjay5vIGAgY2FzZSAib2Jz dGFjay5vIiBpbiA/KikgZWNobyBvYnN0YWNrLm8gOzsgZXNhYyBgIGAgY2FzZSAiYWxsb2NhLm8i IGluID8qKSBlY2hvIGFsbG9jYS5vIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7 IGVzYWMgYCAgICBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4g PyopIGVjaG8gIDs7IGVzYWMgYCAgLWxsZA0JLi9nZW5jaGVjayA+IHRtcC1jaGVjay5oDQkuL21v dmUtaWYtY2hhbmdlIHRtcC1jaGVjay5oIHRyZWUtY2hlY2suaA0JdG91Y2ggcy1jaGVjaw0JY2Mg LWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAt SS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIC4vZ2VuZ2VucnRsLmMNCWNjICAtRElOX0dDQyAtREhB SUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAtbyBnZW5nZW5ydGwgIGdlbmdlbnJ0bC5vIGAg Y2FzZSAib2JzdGFjay5vIiBpbiA/KikgZWNobyBvYnN0YWNrLm8gOzsgZXNhYyBgIGAgY2FzZSAi YWxsb2NhLm8iIGluID8qKSBlY2hvIGFsbG9jYS5vIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyop IGVjaG8gIDs7IGVzYWMgYCAgICBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCBgIGNh c2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgLWxsZA0JLi9nZW5nZW5ydGwgdG1wLWdlbnJ0 bC5oIHRtcC1nZW5ydGwuYw0JLi9tb3ZlLWlmLWNoYW5nZSB0bXAtZ2VucnRsLmggZ2VucnRsLmgN CS4vbW92ZS1pZi1jaGFuZ2UgdG1wLWdlbnJ0bC5jIGdlbnJ0bC5jDQl0b3VjaCBzLWdlbnJ0bA0J Y2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1J LiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIC4vZ2VuYXR0ci5jDQljYyAtYyAgLURJTl9HQ0Mg LURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUku Ly4uL2luY2x1ZGUgcnRsLmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZF X0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBiaXRtYXAuYw0J Y2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1J LiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIHByaW50LXJ0bC5jDQljYyAgLURJTl9HQ0MgLURI QUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgLW8gZ2VuYXR0ciAgZ2VuYXR0ci5vIHJ0bC5v IGJpdG1hcC5vIHByaW50LXJ0bC5vIGAgY2FzZSAib2JzdGFjay5vIiBpbiA/KikgZWNobyBvYnN0 YWNrLm8gOzsgZXNhYyBgIGAgY2FzZSAiYWxsb2NhLm8iIGluID8qKSBlY2hvIGFsbG9jYS5vIDs7 IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgICBgIGNhc2UgIiIgaW4g PyopIGVjaG8gIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgLWxs ZA0JLi9nZW5hdHRyIC4vY29uZmlnL3JzNjAwMC9yczYwMDAubWQgPiB0bXAtYXR0ci5oDQkuL21v dmUtaWYtY2hhbmdlIHRtcC1hdHRyLmggaW5zbi1hdHRyLmgNCXRvdWNoIHMtYXR0cg0JY2MgLWMg IC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4v Y29uZmlnIC1JLi8uLi9pbmNsdWRlIC4vZ2VuY29kZXMuYw0JY2MgIC1ESU5fR0NDIC1ESEFJRkEg ICAgLWcgICAtREhBVkVfQ09ORklHX0ggIC1vIGdlbmNvZGVzICBnZW5jb2Rlcy5vIHJ0bC5vIGJp dG1hcC5vIHByaW50LXJ0bC5vIGAgY2FzZSAib2JzdGFjay5vIiBpbiA/KikgZWNobyBvYnN0YWNr Lm8gOzsgZXNhYyBgIGAgY2FzZSAiYWxsb2NhLm8iIGluID8qKSBlY2hvIGFsbG9jYS5vIDs7IGVz YWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgICBgIGNhc2UgIiIgaW4gPyop IGVjaG8gIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgLWxsZA0J Li9nZW5jb2RlcyAuL2NvbmZpZy9yczYwMDAvcnM2MDAwLm1kID4gdG1wLWNvZGVzLmgNCS4vbW92 ZS1pZi1jaGFuZ2UgdG1wLWNvZGVzLmggaW5zbi1jb2Rlcy5oDQl0b3VjaCBzLWNvZGVzDQljYyAt YyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1J Li9jb25maWcgLUkuLy4uL2luY2x1ZGUgLi9nZW5jb25maWcuYw0JY2MgIC1ESU5fR0NDIC1ESEFJ RkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggIC1vIGdlbmNvbmZpZyAgZ2VuY29uZmlnLm8gcnRs Lm8gYml0bWFwLm8gcHJpbnQtcnRsLm8gYCBjYXNlICJvYnN0YWNrLm8iIGluID8qKSBlY2hvIG9i c3RhY2subyA7OyBlc2FjIGAgYCBjYXNlICJhbGxvY2EubyIgaW4gPyopIGVjaG8gYWxsb2NhLm8g OzsgZXNhYyBgIGAgY2FzZSAiIiBpbiA/KikgZWNobyAgOzsgZXNhYyBgICAgIGAgY2FzZSAiIiBp biA/KikgZWNobyAgOzsgZXNhYyBgIGAgY2FzZSAiIiBpbiA/KikgZWNobyAgOzsgZXNhYyBgICAt bGxkDQkuL2dlbmNvbmZpZyAuL2NvbmZpZy9yczYwMDAvcnM2MDAwLm1kID4gdG1wLWNvbmZpZy5o DQkuL21vdmUtaWYtY2hhbmdlIHRtcC1jb25maWcuaCBpbnNuLWNvbmZpZy5oDQl0b3VjaCBzLWNv bmZpZw0JY2MgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUku IC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIC1EVVNFX0NPTExFQ1QyICAtRFRBUkdFVF9O QU1FPVwicG93ZXJwYy1pYm0tYWl4NC4zLjIuMFwiICAtYyBgZWNobyAuL3RvcGxldi5jIHwgc2Vk ICdzLF5cLi8sLCdgDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05G SUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgdHJlZS5jDQljYyAtYyAg LURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9j b25maWcgLUkuLy4uL2luY2x1ZGUgcHJpbnQtdHJlZS5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlG QSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2lu Y2x1ZGUgc3Rvci1sYXlvdXQuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhB VkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGZvbGQtY29u c3QuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAg LUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIC4vZ2VuZmxhZ3MuYw0JY2MgIC1ESU5f R0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggIC1vIGdlbmZsYWdzICBnZW5mbGFn cy5vIHJ0bC5vIGJpdG1hcC5vIHByaW50LXJ0bC5vIGAgY2FzZSAib2JzdGFjay5vIiBpbiA/Kikg ZWNobyBvYnN0YWNrLm8gOzsgZXNhYyBgIGAgY2FzZSAiYWxsb2NhLm8iIGluID8qKSBlY2hvIGFs bG9jYS5vIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgICBgIGNh c2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVz YWMgYCAgLWxsZA0JLi9nZW5mbGFncyAuL2NvbmZpZy9yczYwMDAvcnM2MDAwLm1kID4gdG1wLWZs YWdzLmgNCS4vbW92ZS1pZi1jaGFuZ2UgdG1wLWZsYWdzLmggaW5zbi1mbGFncy5oDQl0b3VjaCBz LWZsYWdzDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAg ICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgZnVuY3Rpb24uYw0JY2MgLWMgIC1E SU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29u ZmlnIC1JLi8uLi9pbmNsdWRlIHN0bXQuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcg ICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGV4 Y2VwdC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAg ICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgZXhwci5jDQljYyAtYyAgLURJTl9H Q0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcg LUkuLy4uL2luY2x1ZGUgY2FsbHMuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAt REhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGV4cG1l ZC5jDSJleHBtZWQuYyIsIGxpbmUgMjU3OS4yNTogMTUwNi0yODAgKFcpIEZ1bmN0aW9uIGFyZ3Vt ZW50IGFzc2lnbm1lbnQgYmV0d2VlbiB0eXBlcyAiaW50KiIgYW5kICJ1bnNpZ25lZCBpbnQqIiBp cyBub3QgYWxsb3dlZC4NImV4cG1lZC5jIiwgbGluZSAyNTc5LjM1OiAxNTA2LTI4MCAoVykgRnVu Y3Rpb24gYXJndW1lbnQgYXNzaWdubWVudCBiZXR3ZWVuIHR5cGVzICJpbnQqIiBhbmQgInVuc2ln bmVkIGludCoiIGlzIG5vdCBhbGxvd2VkLg0iZXhwbWVkLmMiLCBsaW5lIDI1NzkuNDU6IDE1MDYt MjgwIChXKSBGdW5jdGlvbiBhcmd1bWVudCBhc3NpZ25tZW50IGJldHdlZW4gdHlwZXMgImludCoi IGFuZCAidW5zaWduZWQgaW50KiIgaXMgbm90IGFsbG93ZWQuDSJleHBtZWQuYyIsIGxpbmUgMjU3 OS41NDogMTUwNi0yODAgKFcpIEZ1bmN0aW9uIGFyZ3VtZW50IGFzc2lnbm1lbnQgYmV0d2VlbiB0 eXBlcyAiaW50KiIgYW5kICJ1bnNpZ25lZCBpbnQqIiBpcyBub3QgYWxsb3dlZC4NImV4cG1lZC5j IiwgbGluZSAyNTg3LjI1OiAxNTA2LTI4MCAoVykgRnVuY3Rpb24gYXJndW1lbnQgYXNzaWdubWVu dCBiZXR3ZWVuIHR5cGVzICJpbnQqIiBhbmQgInVuc2lnbmVkIGludCoiIGlzIG5vdCBhbGxvd2Vk Lg0iZXhwbWVkLmMiLCBsaW5lIDI1ODcuMzY6IDE1MDYtMjgwIChXKSBGdW5jdGlvbiBhcmd1bWVu dCBhc3NpZ25tZW50IGJldHdlZW4gdHlwZXMgImludCoiIGFuZCAidW5zaWduZWQgaW50KiIgaXMg bm90IGFsbG93ZWQuDSJleHBtZWQuYyIsIGxpbmUgMjU4Ny40NzogMTUwNi0yODAgKFcpIEZ1bmN0 aW9uIGFyZ3VtZW50IGFzc2lnbm1lbnQgYmV0d2VlbiB0eXBlcyAiaW50KiIgYW5kICJ1bnNpZ25l ZCBpbnQqIiBpcyBub3QgYWxsb3dlZC4NImV4cG1lZC5jIiwgbGluZSAyNTg3LjU2OiAxNTA2LTI4 MCAoVykgRnVuY3Rpb24gYXJndW1lbnQgYXNzaWdubWVudCBiZXR3ZWVuIHR5cGVzICJpbnQqIiBh bmQgInVuc2lnbmVkIGludCoiIGlzIG5vdCBhbGxvd2VkLg0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJ RkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9p bmNsdWRlIGV4cGxvdy5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9D T05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgb3B0YWJzLmMNCWNj IC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4g LUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSB2YXJhc20uYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJ RkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9p bmNsdWRlIHJ0bGFuYWwuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVf Q09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGVtaXQtcnRsLmMN CWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAt SS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBnZW5ydGwuYw0JY2MgLWMgIC1ESU5fR0NDIC1E SEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8u Li9pbmNsdWRlIHJlYWwuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVf Q09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGRieG91dC5jDQlj YyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUku IC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgc2Rib3V0LmMNCWNjIC1jICAtRElOX0dDQyAtREhB SUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4v aW5jbHVkZSBkd2FyZm91dC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFW RV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgZHdhcmYyb3V0 LmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1J LiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSB4Y29mZm91dC5jDQljYyAtYyAgLURJTl9H Q0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcg LUkuLy4uL2luY2x1ZGUgYWxpYXMuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAt REhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGdjc2Uu Yw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUku IC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGludGVncmF0ZS5jDQljYyAtYyAgLURJTl9H Q0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcg LUkuLy4uL2luY2x1ZGUganVtcC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1E SEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgY3NlLmMN CWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAt SS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBsb29wLmMNImxvb3AuYyIsIGxpbmUgNzAwMi40 NDogMTUwNi0yODAgKFcpIEZ1bmN0aW9uIGFyZ3VtZW50IGFzc2lnbm1lbnQgYmV0d2VlbiB0eXBl cyAiaW50KCopKGNvbnN0IHZvaWQqLGNvbnN0IHZvaWQqKSIgYW5kICJpbnQoKikoKSIgaXMgbm90 IGFsbG93ZWQuDSJsb29wLmMiLCBsaW5lIDcyNDMuNDQ6IDE1MDYtMjgwIChXKSBGdW5jdGlvbiBh cmd1bWVudCBhc3NpZ25tZW50IGJldHdlZW4gdHlwZXMgImludCgqKShjb25zdCB2b2lkKixjb25z dCB2b2lkKikiIGFuZCAiaW50KCopKCkiIGlzIG5vdCBhbGxvd2VkLg0ibG9vcC5jIiwgbGluZSA3 NDE3LjQ0OiAxNTA2LTI4MCAoVykgRnVuY3Rpb24gYXJndW1lbnQgYXNzaWdubWVudCBiZXR3ZWVu IHR5cGVzICJpbnQoKikoY29uc3Qgdm9pZCosY29uc3Qgdm9pZCopIiBhbmQgImludCgqKSgpIiBp cyBub3QgYWxsb3dlZC4NCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NP TkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSB1bnJvbGwuYw0JY2Mg LWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAt SS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGZsb3cuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEg ICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNs dWRlIHN0dXBpZC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05G SUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgY29tYmluZS5jDQljYyAt YyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1J Li9jb25maWcgLUkuLy4uL2luY2x1ZGUgdmFycmF5LmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZB ICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5j bHVkZSByZWdjbGFzcy5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9D T05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgcmVnbW92ZS5jDQlj YyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUku IC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgbG9jYWwtYWxsb2MuYw0JY2MgLWMgIC1ESU5fR0ND IC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1J Li8uLi9pbmNsdWRlIGdsb2JhbC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1E SEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgcmVsb2Fk LmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1J LiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSByZWxvYWQxLmMNCWNjIC1jICAtRElOX0dD QyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAt SS4vLi4vaW5jbHVkZSBjYWxsZXItc2F2ZS5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAt ZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUg Li9nZW5wZWVwLmMNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19I ICAtbyBnZW5wZWVwICBnZW5wZWVwLm8gcnRsLm8gYml0bWFwLm8gcHJpbnQtcnRsLm8gYCBjYXNl ICJvYnN0YWNrLm8iIGluID8qKSBlY2hvIG9ic3RhY2subyA7OyBlc2FjIGAgYCBjYXNlICJhbGxv Y2EubyIgaW4gPyopIGVjaG8gYWxsb2NhLm8gOzsgZXNhYyBgIGAgY2FzZSAiIiBpbiA/KikgZWNo byAgOzsgZXNhYyBgICAgIGAgY2FzZSAiIiBpbiA/KikgZWNobyAgOzsgZXNhYyBgIGAgY2FzZSAi IiBpbiA/KikgZWNobyAgOzsgZXNhYyBgICAtbGxkDQkuL2dlbnBlZXAgLi9jb25maWcvcnM2MDAw L3JzNjAwMC5tZCA+IHRtcC1wZWVwLmMNCS4vbW92ZS1pZi1jaGFuZ2UgdG1wLXBlZXAuYyBpbnNu LXBlZXAuYw0JdG91Y2ggcy1wZWVwDQljYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFW RV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgLWMgaW5zbi1w ZWVwLmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAg IC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSByZW9yZy5jDQljYyAtYyAgLURJTl9H Q0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcg LUkuLy4uL2luY2x1ZGUgaGFpZmEtc2NoZWQuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAg LWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRl IGZpbmFsLmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19I ICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSByZWNvZy5jDQljYyAtYyAgLURJ Tl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25m aWcgLUkuLy4uL2luY2x1ZGUgcmVnLXN0YWNrLmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAg IC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVk ZSAuL2dlbm9waW5pdC5jDSIuL2dlbm9waW5pdC5jIiwgbGluZSA2Ny4zOiAxNTA2LTIzNSAoVykg SW5jb3JyZWN0IGVzY2FwZSBzZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4vZ2Vub3Bpbml0LmMi LCBsaW5lIDY4LjM6IDE1MDYtMjM1IChXKSBJbmNvcnJlY3QgZXNjYXBlIHNlcXVlbmNlIFwlLiAg XCBpZ25vcmVkLg0iLi9nZW5vcGluaXQuYyIsIGxpbmUgNjkuMzogMTUwNi0yMzUgKFcpIEluY29y cmVjdCBlc2NhcGUgc2VxdWVuY2UgXCUuICBcIGlnbm9yZWQuDSIuL2dlbm9waW5pdC5jIiwgbGlu ZSA2OS4zOiAxNTA2LTIzNSAoVykgSW5jb3JyZWN0IGVzY2FwZSBzZXF1ZW5jZSBcJS4gIFwgaWdu b3JlZC4NIi4vZ2Vub3Bpbml0LmMiLCBsaW5lIDcwLjM6IDE1MDYtMjM1IChXKSBJbmNvcnJlY3Qg ZXNjYXBlIHNlcXVlbmNlIFwlLiAgXCBpZ25vcmVkLg0iLi9nZW5vcGluaXQuYyIsIGxpbmUgNzEu MzogMTUwNi0yMzUgKFcpIEluY29ycmVjdCBlc2NhcGUgc2VxdWVuY2UgXCUuICBcIGlnbm9yZWQu DSIuL2dlbm9waW5pdC5jIiwgbGluZSA3MS4zOiAxNTA2LTIzNSAoVykgSW5jb3JyZWN0IGVzY2Fw ZSBzZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4vZ2Vub3Bpbml0LmMiLCBsaW5lIDcyLjM6IDE1 MDYtMjM1IChXKSBJbmNvcnJlY3QgZXNjYXBlIHNlcXVlbmNlIFwlLiAgXCBpZ25vcmVkLg0iLi9n ZW5vcGluaXQuYyIsIGxpbmUgNzIuMzogMTUwNi0yMzUgKFcpIEluY29ycmVjdCBlc2NhcGUgc2Vx dWVuY2UgXCUuICBcIGlnbm9yZWQuDSIuL2dlbm9waW5pdC5jIiwgbGluZSA3My4zOiAxNTA2LTIz NSAoVykgSW5jb3JyZWN0IGVzY2FwZSBzZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4vZ2Vub3Bp bml0LmMiLCBsaW5lIDczLjM6IDE1MDYtMjM1IChXKSBJbmNvcnJlY3QgZXNjYXBlIHNlcXVlbmNl IFwlLiAgXCBpZ25vcmVkLg0iLi9nZW5vcGluaXQuYyIsIGxpbmUgNzQuMzogMTUwNi0yMzUgKFcp IEluY29ycmVjdCBlc2NhcGUgc2VxdWVuY2UgXCUuICBcIGlnbm9yZWQuDSIuL2dlbm9waW5pdC5j IiwgbGluZSA3NC4zOiAxNTA2LTIzNSAoVykgSW5jb3JyZWN0IGVzY2FwZSBzZXF1ZW5jZSBcJS4g IFwgaWdub3JlZC4NIi4vZ2Vub3Bpbml0LmMiLCBsaW5lIDgyLjM6IDE1MDYtMjM1IChXKSBJbmNv cnJlY3QgZXNjYXBlIHNlcXVlbmNlIFwlLiAgXCBpZ25vcmVkLg0iLi9nZW5vcGluaXQuYyIsIGxp bmUgODMuMzogMTUwNi0yMzUgKFcpIEluY29ycmVjdCBlc2NhcGUgc2VxdWVuY2UgXCUuICBcIGln bm9yZWQuDSIuL2dlbm9waW5pdC5jIiwgbGluZSA4OC4zOiAxNTA2LTIzNSAoVykgSW5jb3JyZWN0 IGVzY2FwZSBzZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4vZ2Vub3Bpbml0LmMiLCBsaW5lIDg5 LjM6IDE1MDYtMjM1IChXKSBJbmNvcnJlY3QgZXNjYXBlIHNlcXVlbmNlIFwlLiAgXCBpZ25vcmVk Lg0iLi9nZW5vcGluaXQuYyIsIGxpbmUgOTguMzogMTUwNi0yMzUgKFcpIEluY29ycmVjdCBlc2Nh cGUgc2VxdWVuY2UgXCUuICBcIGlnbm9yZWQuDSIuL2dlbm9waW5pdC5jIiwgbGluZSA5OS4zOiAx NTA2LTIzNSAoVykgSW5jb3JyZWN0IGVzY2FwZSBzZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4v Z2Vub3Bpbml0LmMiLCBsaW5lIDEwMC4zOiAxNTA2LTIzNSAoVykgSW5jb3JyZWN0IGVzY2FwZSBz ZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4vZ2Vub3Bpbml0LmMiLCBsaW5lIDEwMS4zOiAxNTA2 LTIzNSAoVykgSW5jb3JyZWN0IGVzY2FwZSBzZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4vZ2Vu b3Bpbml0LmMiLCBsaW5lIDEwMi4zOiAxNTA2LTIzNSAoVykgSW5jb3JyZWN0IGVzY2FwZSBzZXF1 ZW5jZSBcJS4gIFwgaWdub3JlZC4NIi4vZ2Vub3Bpbml0LmMiLCBsaW5lIDEwMy4zOiAxNTA2LTIz NSAoVykgSW5jb3JyZWN0IGVzY2FwZSBzZXF1ZW5jZSBcJS4gIFwgaWdub3JlZC4NCWNjICAtRElO X0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAtbyBnZW5vcGluaXQgIGdlbm9w aW5pdC5vIHJ0bC5vIGJpdG1hcC5vIHByaW50LXJ0bC5vIGAgY2FzZSAib2JzdGFjay5vIiBpbiA/ KikgZWNobyBvYnN0YWNrLm8gOzsgZXNhYyBgIGAgY2FzZSAiYWxsb2NhLm8iIGluID8qKSBlY2hv IGFsbG9jYS5vIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgICBg IGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7 IGVzYWMgYCAgLWxsZA0JLi9nZW5vcGluaXQgLi9jb25maWcvcnM2MDAwL3JzNjAwMC5tZCA+IHRt cC1vcGluaXQuYw0JLi9tb3ZlLWlmLWNoYW5nZSB0bXAtb3Bpbml0LmMgaW5zbi1vcGluaXQuYw0J dG91Y2ggcy1vcGluaXQNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJ R19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAtYyBpbnNuLW9waW5pdC5j DQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4g LUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgLi9nZW5yZWNvZy5jDQljYyAgLURJTl9HQ0Mg LURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgLW8gZ2VucmVjb2cgIGdlbnJlY29nLm8g cnRsLm8gYml0bWFwLm8gcHJpbnQtcnRsLm8gYCBjYXNlICJvYnN0YWNrLm8iIGluID8qKSBlY2hv IG9ic3RhY2subyA7OyBlc2FjIGAgYCBjYXNlICJhbGxvY2EubyIgaW4gPyopIGVjaG8gYWxsb2Nh Lm8gOzsgZXNhYyBgIGAgY2FzZSAiIiBpbiA/KikgZWNobyAgOzsgZXNhYyBgICAgIGAgY2FzZSAi IiBpbiA/KikgZWNobyAgOzsgZXNhYyBgIGAgY2FzZSAiIiBpbiA/KikgZWNobyAgOzsgZXNhYyBg ICAtbGxkDQkuL2dlbnJlY29nIC4vY29uZmlnL3JzNjAwMC9yczYwMDAubWQgPiB0bXAtcmVjb2cu Yw0JLi9tb3ZlLWlmLWNoYW5nZSB0bXAtcmVjb2cuYyBpbnNuLXJlY29nLmMNCXRvdWNoIHMtcmVj b2cNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAt SS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAtYyBpbnNuLXJlY29nLmMNCWNjIC1jICAtRElO X0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZp ZyAtSS4vLi4vaW5jbHVkZSAuL2dlbmV4dHJhY3QuYw0JY2MgIC1ESU5fR0NDIC1ESEFJRkEgICAg LWcgICAtREhBVkVfQ09ORklHX0ggIC1vIGdlbmV4dHJhY3QgIGdlbmV4dHJhY3QubyBydGwubyBi aXRtYXAubyBwcmludC1ydGwubyBgIGNhc2UgIm9ic3RhY2subyIgaW4gPyopIGVjaG8gb2JzdGFj ay5vIDs7IGVzYWMgYCBgIGNhc2UgImFsbG9jYS5vIiBpbiA/KikgZWNobyBhbGxvY2EubyA7OyBl c2FjIGAgYCBjYXNlICIiIGluID8qKSBlY2hvICA7OyBlc2FjIGAgICAgYCBjYXNlICIiIGluID8q KSBlY2hvICA7OyBlc2FjIGAgYCBjYXNlICIiIGluID8qKSBlY2hvICA7OyBlc2FjIGAgIC1sbGQN CS4vZ2VuZXh0cmFjdCAuL2NvbmZpZy9yczYwMDAvcnM2MDAwLm1kID4gdG1wLWV4dHJhY3QuYw0J Li9tb3ZlLWlmLWNoYW5nZSB0bXAtZXh0cmFjdC5jIGluc24tZXh0cmFjdC5jDQl0b3VjaCBzLWV4 dHJhY3QNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1J LiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAtYyBpbnNuLWV4dHJhY3QuYw0JY2MgLWMg IC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4v Y29uZmlnIC1JLi8uLi9pbmNsdWRlIC4vZ2Vub3V0cHV0LmMNCWNjICAtRElOX0dDQyAtREhBSUZB ICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAtbyBnZW5vdXRwdXQgIGdlbm91dHB1dC5vIHJ0bC5v IGJpdG1hcC5vIHByaW50LXJ0bC5vIGAgY2FzZSAib2JzdGFjay5vIiBpbiA/KikgZWNobyBvYnN0 YWNrLm8gOzsgZXNhYyBgIGAgY2FzZSAiYWxsb2NhLm8iIGluID8qKSBlY2hvIGFsbG9jYS5vIDs7 IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgICBgIGNhc2UgIiIgaW4g PyopIGVjaG8gIDs7IGVzYWMgYCBgIGNhc2UgIiIgaW4gPyopIGVjaG8gIDs7IGVzYWMgYCAgLWxs ZA0JLi9nZW5vdXRwdXQgLi9jb25maWcvcnM2MDAwL3JzNjAwMC5tZCA+IHRtcC1vdXRwdXQuYw0J Li9tb3ZlLWlmLWNoYW5nZSB0bXAtb3V0cHV0LmMgaW5zbi1vdXRwdXQuYw0JdG91Y2ggcy1vdXRw dXQNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAt SS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAtYyBpbnNuLW91dHB1dC5jDQljYyAtYyAgLURJ Tl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25m aWcgLUkuLy4uL2luY2x1ZGUgLi9nZW5lbWl0LmMNCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1n ICAgLURIQVZFX0NPTkZJR19IICAtbyBnZW5lbWl0ICBnZW5lbWl0Lm8gcnRsLm8gYml0bWFwLm8g cHJpbnQtcnRsLm8gYCBjYXNlICJvYnN0YWNrLm8iIGluID8qKSBlY2hvIG9ic3RhY2subyA7OyBl c2FjIGAgYCBjYXNlICJhbGxvY2EubyIgaW4gPyopIGVjaG8gYWxsb2NhLm8gOzsgZXNhYyBgIGAg Y2FzZSAiIiBpbiA/KikgZWNobyAgOzsgZXNhYyBgICAgIGAgY2FzZSAiIiBpbiA/KikgZWNobyAg OzsgZXNhYyBgIGAgY2FzZSAiIiBpbiA/KikgZWNobyAgOzsgZXNhYyBgICAtbGxkDQkuL2dlbmVt aXQgLi9jb25maWcvcnM2MDAwL3JzNjAwMC5tZCA+IHRtcC1lbWl0LmMNCS4vbW92ZS1pZi1jaGFu Z2UgdG1wLWVtaXQuYyBpbnNuLWVtaXQuYw0JdG91Y2ggcy1lbWl0DQljYyAgLURJTl9HQ0MgLURI QUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4u L2luY2x1ZGUgLWMgaW5zbi1lbWl0LmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAg LURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBsY20u Yw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUku IC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIHByb2ZpbGUuYw0JY2MgLWMgIC1ESU5fR0ND IC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1J Li8uLi9pbmNsdWRlIC4vZ2VuYXR0cnRhYi5jDQljYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAg IC1ESEFWRV9DT05GSUdfSCAgLW8gZ2VuYXR0cnRhYiAgZ2VuYXR0cnRhYi5vIHJ0bC5vIGJpdG1h cC5vIHByaW50LXJ0bC5vIHJ0bGFuYWwubyBgIGNhc2UgIm9ic3RhY2subyIgaW4gPyopIGVjaG8g b2JzdGFjay5vIDs7IGVzYWMgYCBgIGNhc2UgImFsbG9jYS5vIiBpbiA/KikgZWNobyBhbGxvY2Eu byA7OyBlc2FjIGAgYCBjYXNlICIiIGluID8qKSBlY2hvICA7OyBlc2FjIGAgICAgYCBjYXNlICIi IGluID8qKSBlY2hvICA7OyBlc2FjIGAgYCBjYXNlICIiIGluID8qKSBlY2hvICA7OyBlc2FjIGAg IC1sbGQNCWlmIGNtcCAtcyBNYWtlZmlsZSAgIC4vY29uZmlnL3JzNjAwMC9yczYwMDAubWQ7CSB0 aGVuCQkJCQkgZWNobyBVc2luZyA7CSBjcCAgdG1wLWF0dHJ0YWIuYzsJIGVsc2UJCQkJCSAuL2dl bmF0dHJ0YWIgLi9jb25maWcvcnM2MDAwL3JzNjAwMC5tZCA+IHRtcC1hdHRydGFiLmM7CSBmaQ0J Li9tb3ZlLWlmLWNoYW5nZSB0bXAtYXR0cnRhYi5jIGluc24tYXR0cnRhYi5jDQl0b3VjaCBzLWF0 dHJ0YWINCWNjICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1J LiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSAtYyBpbnNuLWF0dHJ0YWIuYw0JY2MgLWMg IC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4v Y29uZmlnIC1JLi8uLi9pbmNsdWRlIC4vY29uZmlnL3JzNjAwMC9yczYwMDAuYw0JY2MgLWMgIC1E SU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29u ZmlnIC1JLi8uLi9pbmNsdWRlIGdldHB3ZC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAt ZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUg Y29udmVydC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdf SCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgZHluLXN0cmluZy5jDQlybSAt ZiBzcGxheS10cmVlLmMNCWxuIC1zIC4vLi4vbGliaWJlcnR5L3NwbGF5LXRyZWUuYyBzcGxheS10 cmVlLmMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAg IC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBzcGxheS10cmVlLmMNCWNjIC1jICAt RElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2Nv bmZpZyAtSS4vLi4vaW5jbHVkZSBncmFwaC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAt ZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUg c2JpdG1hcC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdf SCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgcmVzb3VyY2UuYw0JY2MgLWMg IC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4v Y29uZmlnIC1JLi8uLi9pbmNsdWRlIGhhc2guYw0JY2MgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcg ICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIC1j IC4vYy1wYXJzZS5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05G SUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgYy1sYW5nLmMNCWNjIC1j ICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUku L2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBjLWxleC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAg ICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1 ZGUgYy1wcmFnbWEuYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09O RklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlIGMtZGVjbC5jDQljYyAt YyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1J Li9jb25maWcgLUkuLy4uL2luY2x1ZGUgYy10eXBlY2suYw0JY2MgLWMgIC1ESU5fR0NDIC1ESEFJ RkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmlnIC1JLi8uLi9p bmNsdWRlIGMtY29udmVydC5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFW RV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgYy1hdXgtaW5m by5jDQljYyAtYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAt SS4gLUkuIC1JLi9jb25maWcgLUkuLy4uL2luY2x1ZGUgYy1jb21tb24uYw0JY2MgLWMgIC1ESU5f R0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAtSS4vY29uZmln IC1JLi8uLi9pbmNsdWRlIGMtaXRlcmF0ZS5jDQljYyAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAg IC1ESEFWRV9DT05GSUdfSCAgLW8gY2MxIHRvcGxldi5vIHZlcnNpb24ubyB0cmVlLm8gcHJpbnQt dHJlZS5vIHN0b3ItbGF5b3V0Lm8gZm9sZC1jb25zdC5vICBmdW5jdGlvbi5vIHN0bXQubyBleGNl cHQubyBleHByLm8gY2FsbHMubyBleHBtZWQubyBleHBsb3cubyBvcHRhYnMubyAgaW50bC5vIHZh cmFzbS5vIHJ0bC5vIHByaW50LXJ0bC5vIHJ0bGFuYWwubyBlbWl0LXJ0bC5vIGdlbnJ0bC5vIHJl YWwubyAgZGJ4b3V0Lm8gc2Rib3V0Lm8gZHdhcmZvdXQubyBkd2FyZjJvdXQubyB4Y29mZm91dC5v IGJpdG1hcC5vIGFsaWFzLm8gZ2NzZS5vICBpbnRlZ3JhdGUubyBqdW1wLm8gY3NlLm8gbG9vcC5v IHVucm9sbC5vIGZsb3cubyBzdHVwaWQubyBjb21iaW5lLm8gdmFycmF5Lm8gIHJlZ2NsYXNzLm8g cmVnbW92ZS5vIGxvY2FsLWFsbG9jLm8gZ2xvYmFsLm8gcmVsb2FkLm8gcmVsb2FkMS5vIGNhbGxl ci1zYXZlLm8gIGluc24tcGVlcC5vIHJlb3JnLm8gaGFpZmEtc2NoZWQubyBmaW5hbC5vIHJlY29n Lm8gcmVnLXN0YWNrLm8gIGluc24tb3Bpbml0Lm8gaW5zbi1yZWNvZy5vIGluc24tZXh0cmFjdC5v IGluc24tb3V0cHV0Lm8gaW5zbi1lbWl0Lm8gbGNtLm8gIHByb2ZpbGUubyBpbnNuLWF0dHJ0YWIu byByczYwMDAubyBnZXRwd2QubyAgY29udmVydC5vICBtYmNoYXIubyBkeW4tc3RyaW5nLm8gc3Bs YXktdHJlZS5vIGdyYXBoLm8gc2JpdG1hcC5vIHJlc291cmNlLm8gaGFzaC5vIGMtcGFyc2UubyBj LWxhbmcubyBjLWxleC5vIGMtcHJhZ21hLm8gYy1kZWNsLm8gYy10eXBlY2subyBjLWNvbnZlcnQu byAgYy1hdXgtaW5mby5vIGMtY29tbW9uLm8gYy1pdGVyYXRlLm8gIG9ic3RhY2subyBhbGxvY2Eu byAgICAgIC1sbGQgLi4vbGliaWJlcnR5L2xpYmliZXJ0eS5hDQljYyAtYyAgLURJTl9HQ0MgLURI QUlGQSAgICAtZyAgIC1ESEFWRV9DT05GSUdfSCAgICAtSS4gLUkuIC1JLi9jb25maWcgLUkuLy4u L2luY2x1ZGUgIC1ER0NDX0lOQ0xVREVfRElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9v bHMvbGliL2djYy1saWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjIvaW5jbHVkZVwiICAt REdQTFVTUExVU19JTkNMVURFX0RJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xp Yi9nY2MtbGliL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvMi45NS4yLy4uLy4uLy4uLy4uYGVjaG8g L3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMgfCBzZWQgLWUgJ3N8Xi91c3IvbG9jYWwvZXhj ZWVkX2J1aWxkX3Rvb2xzfHwnIC1lICdzfC9bXi9dKnwvLi58ZydgL2luY2x1ZGUvZysrLTNcIiAg LURDUk9TU19JTkNMVURFX0RJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xpYi9n Y2MtbGliL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvMi45NS4yLy4uLy4uLy4uLy4uL3Bvd2VycGMt aWJtLWFpeDQuMy4yLjAvc3lzLWluY2x1ZGVcIiAgLURUT09MX0lOQ0xVREVfRElSPVwiL3Vzci9s b2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2djYy1saWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIu MC8yLjk1LjIvLi4vLi4vLi4vLi4vcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC9pbmNsdWRlXCIgIC1E TE9DQUxfSU5DTFVERV9ESVI9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9pbmNsdWRl XCIgIC1EU1REX1BST1RPX0RJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xpYi9n Y2MtbGliL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvMi45NS4yXCIgIC4vcHJvdG9pemUuYw0JY2Mg IC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggIC1vIHByb3RvaXplIHBy b3RvaXplLm8gZ2V0cHdkLm8gaW50bC5vIHZlcnNpb24ubyAgb2JzdGFjay5vIGFsbG9jYS5vICAg ICAgLWxsZCAuLi9saWJpYmVydHkvbGliaWJlcnR5LmENCWNjIC1jICAtRElOX0dDQyAtREhBSUZB ICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5j bHVkZSAgLURHQ0NfSU5DTFVERV9ESVI9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9s aWIvZ2NjLWxpYi9wb3dlcnBjLWlibS1haXg0LjMuMi4wLzIuOTUuMi9pbmNsdWRlXCIgIC1ER1BM VVNQTFVTX0lOQ0xVREVfRElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2dj Yy1saWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjIvLi4vLi4vLi4vLi5gZWNobyAvdXNy L2xvY2FsL2V4Y2VlZF9idWlsZF90b29scyB8IHNlZCAtZSAnc3xeL3Vzci9sb2NhbC9leGNlZWRf YnVpbGRfdG9vbHN8fCcgLWUgJ3N8L1teL10qfC8uLnxnJ2AvaW5jbHVkZS9nKystM1wiICAtRENS T1NTX0lOQ0xVREVfRElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2djYy1s aWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjIvLi4vLi4vLi4vLi4vcG93ZXJwYy1pYm0t YWl4NC4zLjIuMC9zeXMtaW5jbHVkZVwiICAtRFRPT0xfSU5DTFVERV9ESVI9XCIvdXNyL2xvY2Fs L2V4Y2VlZF9idWlsZF90b29scy9saWIvZ2NjLWxpYi9wb3dlcnBjLWlibS1haXg0LjMuMi4wLzIu OTUuMi8uLi8uLi8uLi8uLi9wb3dlcnBjLWlibS1haXg0LjMuMi4wL2luY2x1ZGVcIiAgLURMT0NB TF9JTkNMVURFX0RJUj1cIi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2luY2x1ZGVcIiAg LURTVERfUFJPVE9fRElSPVwiL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2djYy1s aWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjJcIiAgLi91bnByb3RvaXplLmMNCWNjICAt RElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAtbyB1bnByb3RvaXplIHVu cHJvdG9pemUubyBnZXRwd2QubyBpbnRsLm8gdmVyc2lvbi5vICBvYnN0YWNrLm8gYWxsb2NhLm8g ICAgICAtbGxkIC4uL2xpYmliZXJ0eS9saWJpYmVydHkuYQ0JL2Jpbi9zaCAuL2dlbm11bHRpbGli ICAibXNvZnQtZmxvYXQgIG1jcHU9Y29tbW9uL21jcHU9cG93ZXIvbWNwdT1wb3dlcnBjL21haXg2 NCIgICJzb2Z0LWZsb2F0ICBjb21tb24gcG93ZXIgcG93ZXJwYyBhaXg2NCIgICJtc29mdC1mbG9h dD1tY3B1PzQwMyAgbWFpeDY0PW1haXg2NCAgbWNwdT9wb3dlcj1tcG93ZXIgIG1jcHU/cG93ZXI9 bXJpb3MxICBtY3B1P3Bvd2VyPW1jcHU/cmlvczEgIG1jcHU/cG93ZXI9bWNwdT9yc2MgIG1jcHU/ cG93ZXI9bWNwdT9yc2MxICBtY3B1P3Bvd2VyPW1wb3dlcjIgIG1jcHU/cG93ZXI9bXJpb3MyICBt Y3B1P3Bvd2VyPW1jcHU9cmlvczIgIG1jcHU/cG93ZXJwYz1tY3B1PzYwMSAgbWNwdT9wb3dlcnBj PW1jcHU/NjAyICBtY3B1P3Bvd2VycGM9bWNwdT82MDMgIG1jcHU/cG93ZXJwYz1tY3B1PzYwM2Ug IG1jcHU/cG93ZXJwYz1tY3B1PzYwNCAgbWNwdT9wb3dlcnBjPW1jcHU/NjIwICBtY3B1P3Bvd2Vy cGM9bWNwdT80MDMgIG1jcHU/cG93ZXJwYz1tcG93ZXJwYyAgbWNwdT9wb3dlcnBjPW1wb3dlcnBj LWdwb3B0ICBtY3B1P3Bvd2VycGM9bXBvd2VycGMtZ2Z4b3B0IiAgIiIgICIiID4gdG1wLW1saWIu aA0JLi9tb3ZlLWlmLWNoYW5nZSB0bXAtbWxpYi5oIG11bHRpbGliLmgNCXRvdWNoIHMtbWxpYg0J Y2MgIC1ESU5fR0NDIC1ESEFJRkEgICAgLWcgICAtREhBVkVfQ09ORklHX0ggICAgLUkuIC1JLiAt SS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlICAtRFNUQU5EQVJEX1NUQVJURklMRV9QUkVGSVg9XCIv dXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9saWIvXCIgIC1EU1RBTkRBUkRfRVhFQ19QUkVG SVg9XCIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9saWIvZ2NjLWxpYi9cIiAgLURERUZB VUxUX1RBUkdFVF9WRVJTSU9OPVwiMi45NS4yXCIgIC1EREVGQVVMVF9UQVJHRVRfTUFDSElORT1c InBvd2VycGMtaWJtLWFpeDQuMy4yLjBcIiAgLURUT09MRElSX0JBU0VfUFJFRklYPVwiL3Vzci9s b2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvXCIgIC1jIGBlY2hvIC4vZ2NjLmMgfCBzZWQgJ3MsXlwu LywsJ2ANCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAg IC1JLiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBnY2NzcGVjLmMNCWNjICAtRElOX0dD QyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAtbyB4Z2NjIGdjYy5vIGdjY3NwZWMu byBpbnRsLm8gIHByZWZpeC5vIHZlcnNpb24ubyAgb2JzdGFjay5vIGFsbG9jYS5vICAgICAgLWxs ZCAuLi9saWJpYmVydHkvbGliaWJlcnR5LmENCU1BS0U9Im1ha2UiOyBzcmNkaXI9YGNkIC4vZml4 aW5jOyBwd2RgIDsgIGV4cG9ydCBNQUtFIHNyY2RpciA7ICBjZCAuL2ZpeGluYzsgL2Jpbi9zaCAk e3NyY2Rpcn0vbWtmaXhpbmMuc2ggcG93ZXJwYy1pYm0tYWl4NC4zLjIuMA1jb25zdHJ1Y3Rpbmcg Li4vZml4aW5jLnNoIGZvciBwb3dlcnBjLWlibS1haXg0LjMuMi4wDW1ha2UgU0hFTEw9Ii9iaW4v c2giIGluc3RhbGwNCWNjIC1jIC1nICAgLUkuIC1JLi4gLUkuIC1JLi8uLiAtSS4vLi4vY29uZmln IC1JLi8uLi8uLi9pbmNsdWRlIGZpeGluY2wuYw0JY2MgLWMgLWcgICAtSS4gLUkuLiAtSS4gLUku Ly4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1ZGUgc2VydmVyLmMNCWNjIC1nICAtSS4g LUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1ZGUgLURSRUdFWF9N QUxMT0MgIC1jIC4vZ251LXJlZ2V4LmMNCWNjIC1jIC1nICAgLUkuIC1JLi4gLUkuIC1JLi8uLiAt SS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlIHByb2NvcGVuLmMNY2MgLW8gZml4aW5jbCBm aXhpbmNsLm8gc2VydmVyLm8gZ251LXJlZ2V4Lm8gcHJvY29wZW4ubyAuLi8uLi9saWJpYmVydHkv bGliaWJlcnR5LmENY3AgZml4aW5jbC5zaCAuLi9maXhpbmMuc2gNY3AgZml4aW5jbCAuLg0Jcm0g LXJmIGluY2x1ZGU7IG1rZGlyIGluY2x1ZGUNCVRBUkdFVF9NQUNISU5FPXBvd2VycGMtaWJtLWFp eDQuMy4yLjA7IHNyY2Rpcj1gY2QgLjsgcHdkYDsgIElOU1RBTExfQVNTRVJUX0g9aW5zdGFsbC1h c3NlcnQtaDsgU0hFTEw9L2Jpbi9zaCA7IGV4cG9ydCBUQVJHRVRfTUFDSElORSBzcmNkaXIgSU5T VEFMTF9BU1NFUlRfSCBTSEVMTCA7ICAvYmluL3NoIC4vZml4aW5jLnNoIGBwd2RgL2luY2x1ZGUg L3Vzci9pbmNsdWRlIA1GaXhpbmcgaGVhZGVycyBpbnRvIC9ob21lLzQwMDByZi9nY2MtMi45NS4y L2djYy9pbmNsdWRlIGZvciBwb3dlcnBjLWlibS1haXg0LjMuMi4wIHRhcmdldA1GaW5kaW5nIGRp cmVjdG9yaWVzIGFuZCBsaW5rcyB0byBkaXJlY3Rvcmllcw0gU2VhcmNoaW5nIC91c3IvaW5jbHVk ZS8uDSBTZWFyY2hpbmcgL3Vzci9pbmNsdWRlLy4vWDExDSBTZWFyY2hpbmcgL3Vzci9pbmNsdWRl Ly4vWG0NIFNlYXJjaGluZyAvdXNyL2luY2x1ZGUvLi9Ncm0NIFNlYXJjaGluZyAvdXNyL2luY2x1 ZGUvLi91aWwNQWxsIGRpcmVjdG9yaWVzIChpbmNsdWRpbmcgbGlua3MgdG8gZGlyZWN0b3JpZXMp Og0uL3N5cyAuL2RpYWcgLi9Nb3RpZjEuMiAuL01vdGlmMS4yL1htIC4vTW90aWYxLjIvdWlsIC4v TW90aWYxLjIvTXJtIC4vZ2FpIC4vTW90aWYyLjEgLi9Nb3RpZjIuMS9YbSAuL01vdGlmMi4xL01y bSAuL01vdGlmMi4xL3VpbCAuL01vdGlmMi4xL0R0IC4vZ3JhcGhpY3MgLi9JTiAuL2FpeGlmIC4v YXJwYSAuL2lzYyAuL2pmcyAuL25ldCAuL25ldGluZXQgLi9uZXRpc28gLi9uZXRucyAuL3Byb3Rv Y29scyAuL3JwYyAuL3JwY3N2YyAuL1gxMSAuL1htIC4vTXJtIC4vdWlsIC4vWDExL2JpdG1hcHMg Li9YMTEvYml0bWFwcy9wY21jaWEgLi9YMTEvYml0bWFwcy9wbSAuL1gxMS9leHRlbnNpb25zIC4v WDExL2V4dCAuL1gxMS9JQ0UgLi9YMTEvU00NTWFraW5nIHN5bWJvbGljIGRpcmVjdG9yeSBsaW5r cw0uL1gxMSAtPiByb290L3Vzci9scHAvWDExL2luY2x1ZGUvWDExIDogTWFraW5nIHJvb3RlZCBs aW5rDUR1cGxpY2F0aW5nIC4vWDExJ3MgL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjL2luY2x1 ZGUvcm9vdC91c3IvbHBwL1gxMS9pbmNsdWRlL1gxMS9iaXRtYXBzDUR1cGxpY2F0aW5nIC4vWDEx J3MgL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjL2luY2x1ZGUvcm9vdC91c3IvbHBwL1gxMS9p bmNsdWRlL1gxMS9iaXRtYXBzL3BjbWNpYQ1EdXBsaWNhdGluZyAuL1gxMSdzIC9ob21lLzQwMDBy Zi9nY2MtMi45NS4yL2djYy9pbmNsdWRlL3Jvb3QvdXNyL2xwcC9YMTEvaW5jbHVkZS9YMTEvYml0 bWFwcy9wbQ1EdXBsaWNhdGluZyAuL1gxMSdzIC9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy9p bmNsdWRlL3Jvb3QvdXNyL2xwcC9YMTEvaW5jbHVkZS9YMTEvZXh0ZW5zaW9ucw1EdXBsaWNhdGlu ZyAuL1gxMSdzIC9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy9pbmNsdWRlL3Jvb3QvdXNyL2xw cC9YMTEvaW5jbHVkZS9YMTEvZXh0DUR1cGxpY2F0aW5nIC4vWDExJ3MgL2hvbWUvNDAwMHJmL2dj Yy0yLjk1LjIvZ2NjL2luY2x1ZGUvcm9vdC91c3IvbHBwL1gxMS9pbmNsdWRlL1gxMS9JQ0UNRHVw bGljYXRpbmcgLi9YMTEncyAvaG9tZS80MDAwcmYvZ2NjLTIuOTUuMi9nY2MvaW5jbHVkZS9yb290 L3Vzci9scHAvWDExL2luY2x1ZGUvWDExL1NNDS4vWG0gLT4gTW90aWYyLjEvWG0gOiBNYWtpbmcg bG9jYWwgbGluaw0uL01ybSAtPiBNb3RpZjIuMS9Ncm0gOiBNYWtpbmcgbG9jYWwgbGluaw0uL3Vp bCAtPiBNb3RpZjIuMS91aWwgOiBNYWtpbmcgbG9jYWwgbGluaw1GaXhpbmcgZGlyZWN0b3J5IC91 c3IvaW5jbHVkZSBpbnRvIC9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy9pbmNsdWRlDS4vc3lz L2FjbC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Nk bGlfZW50dXNlci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2V0aF9k ZW11eC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2V0aGNoYW4u aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2NkbGlfZW50dXNl ci5ldGhjaGFuLmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RpYWdleC5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3BkaWFnZXhfZGRzLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3BkaWFnX2RlZi5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2FpeGdzYy5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Rpc3BsYXkuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3B3cl9tZ3IuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL2lucHV0ZGQuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL2xmdF9pb2N0bC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL3JjbWlvY3RsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vc3lzL3JjbS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vc3lzL3JjbV93aW4uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vc3lzL3JjbV9tYWMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vc3lzL3JjbV93Zy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v c3lzL2ZvbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lz L3Zvb19pbmZvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3Zv b19kZWZzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3B0aGRl YnVnLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL0ZQLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL05MY2hhci5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2FjY2Vzcy5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2FjY3JlYy5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2FjY3QuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Fkc3BhY2UuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Fpby5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2F0bXNvY2suaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL2F0b21pY19vcC5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL2F1ZGlvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL2F1ZGl0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vc3lzL2F1ZGl0ay5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vc3lzL2JiZGlyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vc3lzL2Jvb3RyZWNvcmQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vc3lzL2J1Zi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v c3lzL2NhY2hlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lz L2NibG9jay5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Nk ZWZzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2NkbGku aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Nkcm9tLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2NmZ2RiLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2NmZ29kbS5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Nob3dueC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Npb3VzZXIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2NvbWlvLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2NvbmYuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2NvbmZpZ3JlYy5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL2NvbnRleHQuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL2NvcmUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL2NyZWQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vc3lzL2NzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vc3lzL2N0bXAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vc3lzL2N4bWEuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vc3lzL2RiZXhwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v c3lzL2RiZ19jb2Rlcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lz L2Ria2Vyc3ltLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Rk Y29uYy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RkaS5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RlYnVnLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Rldi5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RldmljZS5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RldmljZXEuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RldmluZm8uaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Rpci5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RscGkuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2RscGlzdGF0cy5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL2RscGlfYWl4LmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL2RtYS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL2RvbWFpbi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vc3lzL2R1bXAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vc3lzL2VjcDEyODQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vc3lzL2VjcGlvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vc3lzL2VudGRpc3AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v c3lzL2VudHVzZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lz L2Vycmlkcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Vy cm5vLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Vycl9y ZWMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3Byb2JlLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c3Byb2JlLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2V1Y2lvY3RsLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2V2ZW50cy5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2V4Y2VwdC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2tlcm5leF9leHRlbnNpb24uaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2ZibGsuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2ZjcC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL2ZkLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL2ZpbGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL2ZpbHN5cy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vc3lzL2ZpbmZvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vc3lzL2Zsb2NrLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vc3lzL2ZwX2NwdXN5bmMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vc3lzL2ZwX2lvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v c3lzL2ZzX2hvb2tzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lz L2ZzdHlwZXMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2Z1 bGxzdGF0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2dmcy5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2dwYWkuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2dzd2lvLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2hkX3Bzbi5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2lkLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2lfbWFjaGluZS5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2luaXQuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2lub2RlLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2luby5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL2ludHIuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL2ludHR5cGVzLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL2lvMzI3MC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vc3lzL2lvYWNjLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vc3lzL2lvY2MuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vc3lzL2lvY3RsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DUFwcGx5aW5nIElvX0RlZl9RdW90ZXMgICAgICAgICAgICB0byAuL3N5cy9pb2N0bC5oDS4vc3lz L2lvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2lv c3RhdC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2lwYy5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2lwbGNiLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2pjdHlwZTAuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2pjdHlwZTEuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2tpbmZvLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2xjX2NvcmUuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2xjX2xheW91dC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2xkci5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL2xpbWl0cy5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDUFwcGx5aW5nIElzY19TeXNfTGltaXRzICAgICAgICAgICB0byAu L3N5cy9saW1pdHMuaA0uL3N5cy9sa3VwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL3N5cy9sbGRlYnVnLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL3N5cy9sb2NhbGVkZWYzMS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL3N5cy9sb2NhbGVkZWYuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3N5cy9sb2NrX2FsbG9jLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L3N5cy9sb2NrX2RlZi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5 cy9sb2NrZi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9s b2NrLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9sb2Nr bC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9sb2NrbmFt ZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9sb3cuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9scGlvLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9sdHlwZXMuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9sdmRkLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tYWNoaW5lLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tYWxsb2MuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tYnVmLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tZGlvLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL3N5cy9tX2V4Y2VwdC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL3N5cy9tX2ludHIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL3N5cy9tbWFuLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL3N5cy9tbnRjdGwuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL3N5cy9tb2RlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3N5cy9tX3BhcmFtLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L3N5cy9tX3NldGptcC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5 cy9tX3NpZ25hbC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9t c2didWYuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tc2cu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tc3RzYXZl LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tX3R5cGVzLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9tX3dhaXQuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9uZGQuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9uZGRfdmFyLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9ubGlzdC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wYXJhbS5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBIcHV4X01heGludCAgICAgICAgICAgICAg dG8gLi9zeXMvcGFyYW0uaA0uL3N5cy9wY2wuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL3N5cy9wZm1vZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL3N5cy9waW4uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL3N5cy9wbS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL3N5cy9wbXpvbmUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3N5cy9wbWRldi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L3N5cy9wb2xsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5 cy9wcmkuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9w cml2LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wcm9j ZXNzb3IuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wcm9jLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wcm90b3N3Lmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wc2VnLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wdG1wLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wdHJhY2UuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9wdHkuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9xdWV1ZS5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9yZWJvb3QuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL3N5cy9yZWcuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL3N5cy9yZW1hcC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL3N5cy9yZXNvdXJjZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL3N5cy9yb3NpbmZvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL3N5cy9ycy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL3N5cy9zYWQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3N5cy9zY2FycmF5LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L3N5cy9zY2Rpc2suaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5 cy9zY2hlZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9z Y3Nlcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zY3Np LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zY3NpX2J1 Zi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zZWcuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zZWxlY3QuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zZW0uaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zZXJkYXNkLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zaG0uaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zaWduYWwuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBBaXhfVm9sYXRpbGUgICAgICAgICAgICAg dG8gLi9zeXMvc2lnbmFsLmgNRml4ZWQ6ICAuL3N5cy9zaWduYWwuaA0uL3N5cy9zbGVlcC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zb2NrZXQuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zb2NrZXR2YXIuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zcGFjZS5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zcGVjbm9kZS5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zcmNvYmouaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zdGF0ZnMuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL3N5cy9zdGF0dmZzLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL3N5cy9zdGF0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL3N5cy9zdHJfdHR5LmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL3N5cy9zdHJjb25mLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL3N5cy9zdHJlYW0uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL3N5cy9zdHJpbmZvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3N5cy9zdHJsb2cuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L3N5cy9zdHJvcHRzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBs eWluZyBJb19EZWZfUXVvdGVzICAgICAgICAgICAgdG8gLi9zeXMvc3Ryb3B0cy5oDS4vc3lzL3N0 cnN0YXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c2Nv bmZpZy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c2RtYS5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c2luZm8uaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c2xvZy5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c21hY3Jvcy5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c3Blc3QuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c3RlbWNmZy5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3N5c3RtLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RhY2N0LmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL3RhcGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL3RhcGVkZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL3RjYi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vc3lzL3Rlcm1pby5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vc3lzL3Rlcm1pb3guaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vc3lzL3RocmVhZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vc3lzL3RpaGRyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v c3lzL3RpbWViLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lz L3RpbWUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3Rp bWVyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RpbWVy cy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RpbWVzLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RpbW9kLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RpdXNlci5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3Rtc2NzaS5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3Rva3VzZXIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RyY2N0bC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RyY2hkci5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vc3lzL3RyY2hraWQuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vc3lzL3RyY21hY3Jvcy5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vc3lzL3R0bWFwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vc3lzL3R0eWNoYXJzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDUFwcGx5aW5nIElvY3RsX0ZpeF9DdHJsICAgICAgICAgICB0byAuL3N5cy90dHlj aGFycy5oDUZpeGVkOiAgLi9zeXMvdHR5Y2hhcnMuaA0uL3N5cy90dHlkZXYuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy90eXBlcy5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBJcml4X011bHRpbGluZV9DbW50ICAg ICAgdG8gLi9zeXMvdHlwZXMuaA1BcHBseWluZyBTeXN0eXBlcyAgICAgICAgICAgICAgICAgdG8g Li9zeXMvdHlwZXMuaA1BcHBseWluZyBTeXN0eXBlc19Gb3JfQWl4ICAgICAgICAgdG8gLi9zeXMv dHlwZXMuaA1GaXhlZDogIC4vc3lzL3R5cGVzLmgNLi9zeXMvdWNvbnRleHQuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdWlvLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdW4uaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9zeXMvdW5wY2IuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9zeXMvdXByaW50Zi5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9zeXMvdXNlci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9zeXMvdXN0YXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9zeXMvdXRocmVhZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANLi9zeXMvdXRzbmFtZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9zeXMvdmFyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9zeXMvdmF0dHIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9z eXMvdmZzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMv dmxpbWl0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdm1f dHlwZXMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdm1pbmZv LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdm1vdW50Lmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdm11c2VyLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdm5vZGUuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvdnRpbWVzLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXMvd2FpdC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgTmV4dF9XYWl0X1VuaW9uICAgICAg ICAgIHRvIC4vc3lzL3dhaXQuaA1GaXhlZDogIC4vc3lzL3dhaXQuaA0uL3N5cy93YXRjaGRvZy5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy94Y29mZi5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy94bWFsbG9jLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy94bWVtLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy94dGkuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy94dGlfaW5ldC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL3N5cy9saWJjc3lzLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL2RpYWcvYXR1LmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL2RpYWcvYml0X2RlZi5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL2RpYWcvZGEuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL2RpYWcvZGlhZ19leGl0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL2RpYWcvZGlhZ19kZWZpbmUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL2RpYWcvZGlhZy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL2RpYWcvZGlhZ29kbS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L2RpYWcvZGlhZ28uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2Rp YWcvdG1kZWZzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2RpYWcv dG1faW5wdXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2RpYWcvZGlh Z19lcnJpZHMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2RpYWcvdHVjYi5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Fy cm93Qi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Fycm93 QkcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Fycm93QkdQ LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Fycm93QlAuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0F0b21NZ3IuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Jhc2VDbGFzc1AuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0JpZGlEZWYuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0J1bGxldGluQi5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0J1bGxldGluQlAuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0NhY2hlUC5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Nhc2NhZGVCLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL01vdGlmMS4yL1htL0Nhc2NhZGVCRy5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL01vdGlmMS4yL1htL0Nhc2NhZGVCR1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL01vdGlmMS4yL1htL0Nhc2NhZGVCUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L01vdGlmMS4yL1htL0NvbG9yT2JqLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01v dGlmMS4yL1htL0NvbG9yT2JqUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlm MS4yL1htL0NvbW1hbmQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4y L1htL0NvbW1hbmRQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1ht L0N1dFBhc3RlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0N1 dFBhc3RlUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Rlc2t0 b3BQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0RpYWxvZ1Mu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0RyYWdDLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0RpYWxvZ1NFUC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0RpYWxvZ1NQLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Rpc3BsYXkuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Rpc3BsYXlQLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0RyYWdDUC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0RyYWdEcm9wLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL01vdGlmMS4yL1htL0RyYWdJY29uLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL01vdGlmMS4yL1htL0RyYWdJY29uUC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL01vdGlmMS4yL1htL0RyYWdPdmVyUy5oICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL01vdGlmMS4yL1htL0RyYWdPdmVyU1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L01vdGlmMS4yL1htL0RyYXdQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01v dGlmMS4yL1htL0RyYXdpbmdBLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlm MS4yL1htL0RyYXdpbmdBUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4y L1htL0RyYXduQi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1ht L0RyYXduQlAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Ry b3BTTWdyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Ryb3BT TWdyUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Ryb3BUcmFu cy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Ryb3BUcmFuc1Au aCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0V4dE9iamVjdFAuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0ZpbGVTQi5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0ZpbGVTQlAuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Zvcm0uaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0Zvcm1QLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0ZyYW1lLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL01vdGlmMS4yL1htL0xhYmVsLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL01vdGlmMS4yL1htL0ZyYW1lUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL01vdGlmMS4yL1htL0dhZGdldFAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL01vdGlmMS4yL1htL0ljb25GaWxlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L01vdGlmMS4yL1htL0ljb25GaWxlUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01v dGlmMS4yL1htL0xhYmVsRy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlm MS4yL1htL0xhYmVsR1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4y L1htL0xhYmVsUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1ht L0xpc3QuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL0xp c3RQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01haW5X LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01haW5XUC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01hbmFnZXJQLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01lbnVTaGVsbC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01lbnVTaGVsbFAuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01lbnVVdGlsUC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01lc3NhZ2VCLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL01lc3NhZ2VCUC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL013bVV0aWwuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL01vdGlmMS4yL1htL1BhbmVkVy5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL01vdGlmMS4yL1htL1BhbmVkV1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL01vdGlmMS4yL1htL1ByaW1pdGl2ZVAuaCAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL01vdGlmMS4yL1htL1Byb3RvY29scy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L01vdGlmMS4yL1htL1Byb3RvY29sc1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01v dGlmMS4yL1htL1B1c2hCLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlm MS4yL1htL1B1c2hCRy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4y L1htL1Nhc2hQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1ht L1B1c2hCR1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1B1 c2hCUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1JDVXRp bHNQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1JlcFR5cGUu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1Jvd0NvbHVtbi5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1Jvd0NvbHVtblAuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1NjYWxlLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1NjYWxlUC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1NjcmVlbi5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1NjcmVlblAuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1Njcm9sbEJhci5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL01vdGlmMS4yL1htL1Njcm9sbEJhclAuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL01vdGlmMS4yL1htL1Njcm9sbGVkVy5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL01vdGlmMS4yL1htL1Njcm9sbGVkV1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL01vdGlmMS4yL1htL1NlbGVjdGlvQi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L01vdGlmMS4yL1htL1NlbGVjdGlvQlAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01v dGlmMS4yL1htL1NlcGFyYXRvRy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlm MS4yL1htL1NlcGFyYXRvR1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4y L1htL1NlcGFyYXRvci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1ht L1NlcGFyYXRvclAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1No ZWxsRVAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RlYXJP ZmZCUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RlYXJPZmZQ LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHQuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRGLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRGUC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRGU2VsUC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRJblAuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRPdXRQLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRQLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRTZWxQLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL01vdGlmMS4yL1htL1RleHRTdHJTb1AuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL01vdGlmMS4yL1htL1RvZ2dsZUIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL01vdGlmMS4yL1htL1RvZ2dsZUJHLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L01vdGlmMS4yL1htL1RvZ2dsZUJHUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01v dGlmMS4yL1htL1RvZ2dsZUJQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlm MS4yL1htL1RyYW5zbHRuc1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4y L1htL1ZhU2ltcGxlUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1ht L1ZlbmRvclMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1Zl bmRvclNFUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1ZlbmRv clNQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1ZpcnRLZXlz LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1ZpcnRLZXlzUC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1dvcmxkUC5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1htLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1htQWxsLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1htUC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1htU3RyRGVmcy5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL01vdGlmMS4yL1htL1htb3NQLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA1BcHBseWluZyBNYWNoaW5lX05hbWUgICAgICAgICAgICAgdG8gLi9Nb3RpZjEu Mi9YbS9YbW9zUC5oDUZpeGVkOiAgLi9Nb3RpZjEuMi9YbS9YbW9zUC5oDS4vTW90aWYxLjIvdWls L1VpbC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvdWlsL1Vp bERCRGVmLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvdWlsL1VpbERl Zi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvdWlsL1VpbFN5bURl Zi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvdWlsL1VpbFN5bUdsLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvTXJtL01ybUFwcGwuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvTXJtL01ybURlY2xzLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvTXJtL01ybVB1YmxpYy5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYxLjIvTXJtL01ybVdpZGdldC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vZ2FpL2FkYXB0ZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vZ2FpL2dhaXN0cnVjdC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vZ2FpL21pc2MuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vZ2FpL2dhaS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vQWNjQ29sb3JULmggICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vQWNjVGV4dFQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vQWN0aXZhdGFibGVULmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vQXJyb3dCLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vQXJyb3dCRy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vQXJyb3dCR1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v QXJyb3dCUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQXRv bU1nci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQmFzZUNs YXNzUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQnVsbGV0aW5C LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQnVsbGV0aW5CUC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ2FjaGVQLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ2FyZVZpc3VhbFQuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ2FzY2FkZUIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ2FzY2FkZUJHLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ2FzY2FkZUJHUC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ2FzY2FkZUJQLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ2xpcFdpbmRvd1AuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vQ29sb3JPYmpQLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vQ29sb3JQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vQ29tYm9Cb3guaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vQ29tYm9Cb3hQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vQ29tbWFuZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vQ29tbWFuZFAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vQ29udEl0ZW1ULmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v Q29udGFpbmVyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ29u dGFpbmVyUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ29udGFp bmVyVC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vQ3V0UGFzdGUu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRGVza3RvcFAuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRGlhbG9nUy5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRGlhbG9nU0VQLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRGlhbG9nU1AuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRGlhbG9nU2F2dnlULmggICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRGlzcGxheS5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRGlzcGxheVAuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJhZ0MuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vRHJhZ0NQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vRHJhZ0Ryb3AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vRHJhZ0ljb24uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vRHJhZ0ljb25QLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vRHJhZ092ZXJTLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vRHJhZ092ZXJTUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vRHJhd1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v RHJhd2luZ0EuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJh d2luZ0FQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJhd25C LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJhd25CUC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJvcFNNZ3IuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJvcFNNZ3JQLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJvcFRyYW5zLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRHJvcFRyYW5zUC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRXh0T2JqZWN0UC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRmlsZVNCLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vRmlsZVNCUC5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vRm9ybS5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vRm9ybVAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vRnJhbWUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vRnJhbWVQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vR2FkZ2V0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vR2FkZ2V0UC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vR3JhYlNoZWxsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vR3JhYlNoZWxsUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v SWNvbkZpbGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vSWNv bkZpbGVQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vSWNvbkcu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vSWNvbkdQLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vSWNvbkguaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vSWNvbkhQLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vSm9pblNpZGVULmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTGFiZWwuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTGFiZWxHLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTGFiZWxHUC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTGFiZWxQLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vTGF5b3V0VC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vTGlzdC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vTGlzdFAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vTWFpblcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vTWFpbldQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vTWFuYWdlci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vTWFuYWdlclAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vTWVudVByb2NQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v TWVudVNoZWxsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTWVu dVNoZWxsUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTWVudVN0 YXRlUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTWVudVQuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTWVudVV0aWxQLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTWVzc2FnZUIuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTWVzc2FnZUJQLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTXdtVXRpbC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTmF2aWdhdG9yVC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTm90ZWJvb2suaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vTm90ZWJvb2tQLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vUGFuZWRXLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vUGFuZWRXUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vUG9pbnRJblQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vUHJpbWl0aXZlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vUHJpbWl0aXZlUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vUHJpbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vUHJpbnRTUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vUHJvdG9jb2xzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v UHJvdG9jb2xzUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUHVz aEIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUHVzaEJH LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUHVzaEJHUC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUHVzaEJQLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUkNMYXlvdXRQLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUkNNZW51UC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUmVwVHlwZS5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUmVzSW5kSS5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUm93Q29sdW1uLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vUm93Q29sdW1uUC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vU1NwaW5CLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vU1NwaW5CUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vU2FzaFAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vU2NhbGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vU2NhbGVQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vU2NyZWVuLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vU2NyZWVuUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vU2Nyb2xsQmFyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v U2Nyb2xsQmFyUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2Ny b2xsRnJhbWVULmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2Nyb2xs ZWRXLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2Nyb2xsZWRX UC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2VsZWN0aW9CLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2VsZWN0aW9CUC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2VwYXJhdG9HLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2VwYXJhdG9HUC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2VwYXJhdG9yLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2VwYXJhdG9yUC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vU2hlbGxFUC5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vU3BlY1JlbmRlclQuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vU3BpbkIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vU3BpbkJQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vVGFrZXNEZWZULmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vVGVhck9mZkJQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vVGVhck9mZlAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vVGV4dC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vVGV4dEYuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v VGV4dEZQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVGV4 dEZTZWxQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVGV4dElu UC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVGV4dE91dFAu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVGV4dFAuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVGV4dFNlbFAuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVGV4dFN0clNvUC5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVG9nZ2xlQi5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVG9nZ2xlQkcuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVG9nZ2xlQkdQLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVG9nZ2xlQlAuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vVHJhaXRQLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vVHJhbnNmZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vTW90aWYyLjEvWG0vVHJhbnNmZXJQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vTW90aWYyLjEvWG0vVHJhbnNmZXJULmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v TW90aWYyLjEvWG0vVHJhbnNsdG5zUC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90 aWYyLjEvWG0vVHJhdkNvblQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYy LjEvWG0vVHh0UHJvcEN2LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEv WG0vVW5oaWdobGlnaHRULmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0v VW5pdFR5cGVULmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVmFT aW1wbGVQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVmVuZG9y Uy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVmVuZG9yU0VQ LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVmVuZG9yU1AuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVmlydEtleXMuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vVmlydEtleXNQLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vWG0uaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vWG1BbGwuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vWG1JbS5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vTW90aWYyLjEvWG0vWG1QLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vWG1SZW5kZXJUSS5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vTW90aWYyLjEvWG0vWG1TdHJEZWZzLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgDUFwcGx5aW5nIEVuZF9FbHNlX0xhYmVsICAgICAgICAgICB0byAuL01vdGlmMi4xL1htL1ht U3RyRGVmcy5oDUZpeGVkOiAgLi9Nb3RpZjIuMS9YbS9YbVN0ckRlZnMuaA0uL01vdGlmMi4xL1ht L1htVGFiTGlzdEkuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL01vdGlmMi4xL1htL1ht WE9DLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBNYWNoaW5lX05h bWUgICAgICAgICAgICAgdG8gLi9Nb3RpZjIuMS9YbS9YbVhPQy5oDUZpeGVkOiAgLi9Nb3RpZjIu MS9YbS9YbVhPQy5oDS4vTW90aWYyLjEvWG0vWG1vc0kuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vTW90aWYyLjEvWG0vWG1vc1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDUFwcGx5aW5nIE1hY2hpbmVfTmFtZSAgICAgICAgICAgICB0byAuL01vdGlmMi4xL1ht L1htb3NQLmgNRml4ZWQ6ICAuL01vdGlmMi4xL1htL1htb3NQLmgNLi9Nb3RpZjIuMS9YbS9YcG1Q LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS9Ncm0vTXJtQXBw bC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS9Ncm0vTXJtRGVjbHMu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS9Ncm0vTXJtUHVibGljLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS9Ncm0vTXJtb3NJLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS9Ncm0vTXJtV2lkZ2V0LmggICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS91aWwvVWlsLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS91aWwvVWlsU3ltR2wuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9Nb3RpZjIuMS91aWwvVWlsREJEZWYuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9Nb3RpZjIuMS91aWwvVWlsRGVmLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9Nb3RpZjIuMS91aWwvVWlsU3ltRGVmLmggICAgICAgICAgICAgICAgICAgICAg ICAgICANLi9Nb3RpZjIuMS9EdC9FZGl0b3IuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9Nb3RpZjIuMS9EdC9IZWxwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9Nb3RpZjIuMS9EdC9IZWxwRGlhbG9nLmggICAgICAgICAgICAgICAgICAgICAgICAgICANLi9N b3RpZjIuMS9EdC9IZWxwUXVpY2tELmggICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3Rp ZjIuMS9EdC9NZW51QnV0dG9uLmggICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIu MS9EdC9QcmludC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS9E dC9UZXJtLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9Nb3RpZjIuMS9EdC9U ZXJtUHJpbS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9haXhmb250LmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi91bWFsbG9jLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9vbXAuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9leHRlbnNpb24uaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9ncmFwaGljcy9nc2hraWQuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi82MHhfcmVncy5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9jY20uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9jY21fbWFjcm9zLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9jZGQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9jZGRfaW50ci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9jZGRfaW50cl9tYWNyb3MuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANLi9jZGRfbWFjcm9zLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9mcnMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9mcnNfNjB4LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9m cnNfNjB4X2RmYS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mcnNf ZGlzcGxheS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mcnNfZGlz cGxheV9tYWNzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mcnNfbWFjcy5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9JTi9BRmRlZnMuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9JTi9BUmRlZnMuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9JTi9DU2RlZnMuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9JTi9EUmRlZnMuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9JTi9FUmRlZnMuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9JTi9GU2RlZnMuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9JTi9GU2lvLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9JTi9MU2RlZnMuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9JTi9NU2RlZnMuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9JTi9QQ2RlZnMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9JTi9QRmRlZnMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9JTi9TR2RlZnMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANLi9JTi9iYWNrZW5kLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9JTi9xLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9JTi9zdGFuZGFyZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9J Ti9zdGZpbGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9JTi91 cGFybS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9nc19tb24u aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi92dC5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9jZmdfZ3JhcGhpY3Mu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9jZmdfZ3JhcGhpY3NfZGRf Y2ZnLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9jZmdfZ3JhcGhpY3NfZnJzLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9jZmdfZ3JhcGhpY3NfbWFjcm9zLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9haXhpZi9uZXRfaWYuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9OTGNoYXIuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9OTGN0eXBlLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9OTHJlZ2V4cC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9OTHhpby5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9hY2wuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9haW8uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9hcnBhL2FpeHJjbWRzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANLi9hcnBhL2Z0cC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9hcnBhL2luZXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9hcnBhL25hbWVzZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9h cnBhL25hbWVzZXJfY29tcGF0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlp bmcgTWFjaGluZV9OYW1lICAgICAgICAgICAgIHRvIC4vYXJwYS9uYW1lc2VyX2NvbXBhdC5oDUZp eGVkOiAgLi9hcnBhL25hbWVzZXJfY29tcGF0LmgNLi9hcnBhL29uYW1lc2VyX2NvbXBhdC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1lICAgICAgICAg ICAgIHRvIC4vYXJwYS9vbmFtZXNlcl9jb21wYXQuaA1GaXhlZDogIC4vYXJwYS9vbmFtZXNlcl9j b21wYXQuaA0uL2FycGEvdGVsbmV0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL2FycGEvdGZ0cC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL2Eub3V0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L2FvdXRoZHIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2Fy LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy9l dmVudGxpYi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy9oZWFw LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy9sb2dnaW5n LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy9taXNjLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy90cmVlLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy9saXN0LmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy9tZW1jbHVzdGVyLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2lzYy9hc3NlcnRpb25zLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2FzbC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL2Fzc2VydC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL2Njc2lkLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL2NmLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL2NmZ3Jlc2lkLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL2NmZ2NocnBmdy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL2xvZ2luLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL2NvcmUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL2NwaW8uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L2NyeXB0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N0 eXBlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N1cjAw LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N1cjAxLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N1cjAyLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N1cjAzLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N1cjA0LmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N1cjA1LmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2N1cnNlcy5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBBdm9pZF9Cb29sICAgICAgICAg ICAgICAgdG8gLi9jdXJzZXMuaA1BcHBseWluZyBWb2lkX051bGwgICAgICAgICAgICAgICAgdG8g Li9jdXJzZXMuaA1GaXhlZDogIC4vY3Vyc2VzLmgNLi9kYm0uaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9kYnVnLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9kYnhzdGNsYXNzLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9kZWZlbnYuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9kaXJlbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANQXBwbHlpbmcgQmFkX0x2YWwgICAgICAgICAgICAgICAgIHRvIC4vZGly ZW50LmgNLi9kbGZjbi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9kdW1wcmVzdG9yLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9leGNlcHRhYi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9l eGVjYXJncy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mYXRh bC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mY250bC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9maWxlaGRyLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mbG9hdC5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mbXRtc2cuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mbm1hdGNoLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mcC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mcHRyYXAuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9mcHhjcC5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9mc2hlbHAuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9mc3RhYi5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9mdHcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANQXBwbHlpbmcgQmFkX0x2YWwgICAgICAgICAgICAgICAgIHRvIC4vZnR3 LmgNLi9nbG9iLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9ncnAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBw bHlpbmcgQmFkX0x2YWwgICAgICAgICAgICAgICAgIHRvIC4vZ3JwLmgNLi9pY29udi5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9pbWVycm5vLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9pbS5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9pbWxhbmcuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9pbnVlcnIuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9qZnMvZGlyLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9qZnMvZmlsc3lzLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9qZnMvZnNjbnRsLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9qZnMvZnNkZWZzLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9qZnMvZnNwYXJhbS5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9qZnMvZnN2YXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9qZnMvZ2VuYWxsb2MuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANLi9qZnMvaW5vZGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9qZnMvaW5vLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9qZnMvamZzbW91bnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9q ZnMvcXVvdGEuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9pc282 NDYuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9qY29kZS5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9qY3R5cGUuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvYWYuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvaWZfYXJwLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvaWYuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvaWZfbGxjLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvaWZfc2x2YXIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvaWZfdHlwZXMuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvaWZfZGwuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9uZXQvbmRfbGFuLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9uZXQvbmV0X2dsb2JhbHMuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9uZXQvbmV0aXNyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9uZXQvbmV0X21hbGxvYy5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9uZXQvbmV0b3B0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANLi9uZXQvbmguaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9uZXQvcHJvdG9fbmV0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9uZXQvcHJvdG9fdWlwYy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9u ZXQvcmFkaXguaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQv cmF3X2NiLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvcm91 dGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvc2xjb21w cmVzcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXQvc3BsLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9sYW5naW5mby5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9sZGZjbi5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9saWJfbG9jay5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9saWJfZGF0YS5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9saWJnZW4uaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgQmFkX0x2YWwgICAgICAgICAgICAgICAg IHRvIC4vbGliZ2VuLmgNLi9saW1pdHMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANQXBwbHlpbmcgTGltaXRzX0lmbmRlZnMgICAgICAgICAgIHRvIC4vbGltaXRz LmgNLi9saW5lbnVtLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Li9sb2FkZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9s b2NhbGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlp bmcgVm9pZF9OdWxsICAgICAgICAgICAgICAgIHRvIC4vbG9jYWxlLmgNRml4ZWQ6ICAuL2xvY2Fs ZS5oDS4vbHByaW8uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vbHZtLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v bHZtcmVjLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbWFj cm9zLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbWFsbG9j LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFwcGx5aW5nIFN1 bl9NYWxsb2MgICAgICAgICAgICAgICB0byAuL21hbGxvYy5oDS4vbWF0aC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFwcGx5aW5nIE1hdGhfRXhjZXB0aW9u ICAgICAgICAgICB0byAuL21hdGguaA1BcHBseWluZyBNYXRoX0djY19JZm5kZWZzICAgICAgICAg dG8gLi9tYXRoLmgNQXBwbHlpbmcgUnM2MDAwX0RvdWJsZSAgICAgICAgICAgIHRvIC4vbWF0aC5o DUFwcGx5aW5nIFN1bm9zX01hdGhlcnJfRGVjbCAgICAgICB0byAuL21hdGguaA1BcHBseWluZyBV bHRyaXhfQXRvZl9QYXJhbSAgICAgICAgdG8gLi9tYXRoLmgNRml4ZWQ6ICAuL21hdGguaA0uL21i c3RyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL21lbW9y eS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL21lc2cuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL21vbmV0YXJ5Lmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL21vbi5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL21wLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL21xdWV1ZS5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25kYm0uaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBCYWRfTHZhbCAgICAgICAgICAg ICAgICAgdG8gLi9uZGJtLmgNLi9uZXRpbmV0L2ljbXBfdmFyLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9uZXRpbmV0L2lmXzgwMl81LmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANQXBwbHlpbmcgSW9fRGVmX1F1b3RlcyAgICAgICAgICAgIHRvIC4vbmV0aW5l dC9pZl84MDJfNS5oDUZpeGVkOiAgLi9uZXRpbmV0L2lmXzgwMl81LmgNLi9uZXRpbmV0L2lmX2V0 aGVyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2lmX2ZkZGku aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2lmX29wLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2lnbXAuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2lnbXBfdmFyLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2luLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2luX25ldGFycC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2luX3BjYi5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9uZXRpbmV0L2luX3N5c3RtLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9uZXRpbmV0L2luX3Zhci5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9uZXRpbmV0L2lwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANQXBwbHlpbmcgSXBfTWlzc2luZ19TZW1pICAgICAgICAgIHRvIC4vbmV0aW5ldC9p cC5oDS4vbmV0aW5ldC9pcF9pY21wLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vbmV0aW5ldC9pcF9tcm91dGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v bmV0aW5ldC9pcF92YXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0 aW5ldC9wcm90b19pbmV0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5l dC90Y3AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC90 Y3BfZGVidWcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC90Y3Bf ZnNtLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC90Y3Bfc2Vx LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC90Y3BfdGltZXIu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC90Y3BfdmFyLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC90Y3BpcC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC91ZHAuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC91ZHBfdmFyLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC9pY21wNi5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vbmV0aW5ldC9pY21wNl92YXIuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vbmV0aW5ldC9pZl9ldGhlcjYuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vbmV0aW5ldC9pZl9uZHA2LmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vbmV0aW5ldC9pbjZfdmFyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vbmV0aW5ldC9pcDYuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vbmV0aW5ldC9pcDZfaWNtcC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vbmV0aW5ldC9pcDZfb3B0cy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v bmV0aW5ldC9pcDZfdmFyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0 aW5ldC91ZHA2X3Zhci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0ZGIu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0aXNvL2Fy Z29fZGVidWcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFwcGx5aW5nIEVuZF9F bHNlX0xhYmVsICAgICAgICAgICB0byAuL25ldGlzby9hcmdvX2RlYnVnLmgNRml4ZWQ6ICAuL25l dGlzby9hcmdvX2RlYnVnLmgNLi9uZXRpc28vYXJnb3h0d2VudHlmaXZlLmggICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9uZXRpc28vY2xubC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9uZXRpc28vY2xucC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1lICAgICAgICAgICAgIHRvIC4vbmV0aXNvL2Ns bnAuaA1GaXhlZDogIC4vbmV0aXNvL2NsbnAuaA0uL25ldGlzby9jbG5wX3N0YXQuaCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby9jbHRwX3Zhci5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby9jb25zLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby9jb25zX2lmeDI1LmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL25ldGlzby9jb25zX3BjYi5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA1BcHBseWluZyBFbmRfRWxzZV9MYWJlbCAgICAgICAgICAgdG8gLi9uZXRp c28vY29uc19wY2IuaA1GaXhlZDogIC4vbmV0aXNvL2NvbnNfcGNiLmgNLi9uZXRpc28vZW9udmFy LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpc28vZXNpcy5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1l ICAgICAgICAgICAgIHRvIC4vbmV0aXNvL2VzaXMuaA1GaXhlZDogIC4vbmV0aXNvL2VzaXMuaA0u L25ldGlzby9pc29fZXJybm8uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25l dGlzby9pc28uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlz by9pc29fbWFwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby9p c29fcGNiLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby9pc29f c25wYWMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby9pc29fdmFy LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby90cF9jbG5wLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby90cF9ldmVudHMuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby90cF9pcC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby90cF9tZWFzLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL25ldGlzby90cF9wYXJhbS5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBFbmRfRWxzZV9MYWJlbCAgICAgICAgICAg dG8gLi9uZXRpc28vdHBfcGFyYW0uaA1GaXhlZDogIC4vbmV0aXNvL3RwX3BhcmFtLmgNUXVvdGVk IGluY2x1ZGVzIGluIC4vbmV0aXNvL3RwX3BhcmFtLmgNLi9uZXRpc28vdHBfcGNiLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpc28vdHBfc2VxLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpc28vdHBfc3RhdGVzLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRpc28vdHBfc3RhdC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9uZXRpc28vdHBfdGltZXIuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9uZXRpc28vdHBfdHBkdS5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1lICAgICAgICAgICAgIHRvIC4vbmV0 aXNvL3RwX3RwZHUuaA1GaXhlZDogIC4vbmV0aXNvL3RwX3RwZHUuaA0uL25ldGlzby90cF90cmFj ZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBFbmRfRWxzZV9M YWJlbCAgICAgICAgICAgdG8gLi9uZXRpc28vdHBfdHJhY2UuaA1GaXhlZDogIC4vbmV0aXNvL3Rw X3RyYWNlLmgNUXVvdGVkIGluY2x1ZGVzIGluIC4vbmV0aXNvL3RwX3RyYWNlLmgNLi9uZXRpc28v dHBfdXNlci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgRW5k X0Vsc2VfTGFiZWwgICAgICAgICAgIHRvIC4vbmV0aXNvL3RwX3VzZXIuaA1GaXhlZDogIC4vbmV0 aXNvL3RwX3VzZXIuaA1RdW90ZWQgaW5jbHVkZXMgaW4gLi9uZXRpc28vdHBfdXNlci5oDS4vbmV0 bnMvaWRwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0bnMv aWRwX3Zhci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0bnMvbnNf ZXJyb3IuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vbmV0bnMvbnMuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFwcGx5aW5nIE1hY2hpbmVf TmFtZSAgICAgICAgICAgICB0byAuL25ldG5zL25zLmgNRml4ZWQ6ICAuL25ldG5zL25zLmgNLi9u ZXRucy9uc19pZi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRu cy9uc19wY2IuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRucy9w cm90b19ucy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRucy9zcC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRucy9zcGlkcC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRucy9zcHBfZGVidWcu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRucy9zcHBfdGltZXIuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9uZXRucy9zcHBfdmFyLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1lICAgICAg ICAgICAgIHRvIC4vbmV0bnMvc3BwX3Zhci5oDUZpeGVkOiAgLi9uZXRucy9zcHBfdmFyLmgNLi9w cm90b2NvbHMvZHVtcHJlc3RvcmUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9wcm90 b2NvbHMvcm91dGVkLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9wcm90b2Nv bHMvcndob2QuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9wcm90b2NvbHMv dGFsa2QuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9wcm90b2NvbHMvdGlt ZWQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9ubGlzdC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9ubF90eXBlcy5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9vZG1pLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9wYXRocy5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9waW9zdHJ1Y3QuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9wbWxpYi5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9wb2xsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9wcm9jaW5mby5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9ycGMvYXV0aF9kZXMuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9ycGMvYXV0aC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANQXBwbHlpbmcgSXJpeF9Tb2NrYWRkciAgICAgICAgICAgIHRvIC4vcnBjL2F1dGgu aA1BcHBseWluZyBTdW5fQXV0aF9Qcm90byAgICAgICAgICAgdG8gLi9ycGMvYXV0aC5oDUZpeGVk OiAgLi9ycGMvYXV0aC5oDS4vcnBjL2F1dGhfdW5peC5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vcnBjL2NsbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDUFwcGx5aW5nIFN1bl9BdXRoX1Byb3RvICAgICAgICAgICB0byAuL3JwYy9jbG50 LmgNRml4ZWQ6ICAuL3JwYy9jbG50LmgNLi9ycGMva2V5X3Byb3QuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANLi9ycGMvcG1hcF9jbG50LmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANLi9ycGMvcG1hcF9wcm90LmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9ycGMvcG1hcF9ybXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9ycGMvcnBjLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANQXBwbHlpbmcgTmVzdGVkX0NvbW1lbnQgICAgICAgICAgIHRvIC4vcnBjL3JwYy5o DS4vcnBjL3JwY19tc2cuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v cnBjL3JhYy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBj L2F1dGhfc3lzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL2Ns bnRfc29jLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL25ldHR5 cGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3JwY19jb20u aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3RyYWNlLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3JwY2JfY2xudC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3JwY2VudC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3N2Y19zb2MuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3JwY19zenR5cGVzLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3Jhdy5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vcnBjL3JwY2JfcHJvdC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vcnBjL3N2Y19hdXRoLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vcnBjL3N2Yy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDUFwcGx5aW5nIFN1bl9BdXRoX1Byb3RvICAgICAgICAgICB0byAuL3JwYy9z dmMuaA1BcHBseWluZyBVbHRyaXhfTmVzdGVkX0NtbnQgICAgICAgdG8gLi9ycGMvc3ZjLmgNRml4 ZWQ6ICAuL3JwYy9zdmMuaA0uL3JwYy90eXBlcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA1BcHBseWluZyBDeHhfVW5yZWFkeSAgICAgICAgICAgICAgdG8gLi9ycGMv dHlwZXMuaA1GaXhlZDogIC4vcnBjL3R5cGVzLmgNLi9ycGMveGRyLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgSXJpeF9TdHJ1Y3RfX0ZpbGUgICAg ICAgIHRvIC4vcnBjL3hkci5oDUFwcGx5aW5nIFN1bl9BdXRoX1Byb3RvICAgICAgICAgICB0byAu L3JwYy94ZHIuaA1GaXhlZDogIC4vcnBjL3hkci5oDS4vcHRocmVhZC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFwcGx5aW5nIEJhZF9MdmFsICAgICAgICAgICAg ICAgICB0byAuL3B0aHJlYWQuaA0uL3B3ZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA1BcHBseWluZyBCYWRfTHZhbCAgICAgICAgICAgICAgICAgdG8gLi9w d2QuaA0uL3JlX2NvbXAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3JlZ2V4LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L3JlZ2V4cC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3Jl bG9jLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3Jlc29s di5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3Jlc19keW5k bnMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3JwY3N2Yy95cGNs bnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3JwY3N2Yy95cF9wcm90 LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3JwY3N2Yy95cHVwX3Byb3Qu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3JwY3N2Yy95cHYxX3Byb3QuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL2Vycm5vLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3J0aW5pdC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3NjaGVkLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL3Njbmhkci5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL3NlYXJjaC5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL3NlbWFwaG9yZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL3NldGptcC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL3NndHR5LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL3NpZ25hbC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA1BcHBseWluZyBCYWRfTHZhbCAgICAgICAgICAgICAgICAgdG8gLi9zaWduYWwuaA0uL3Nw Yy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3NyY2Vy cm5vLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N0YW5kYXJk cy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBCYWRf THZhbCAgICAgICAgICAgICAgICAgdG8gLi9zdGFuZGFyZHMuaA0uL3N0ZGFyZy5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N0ZGRlZi5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBTeXN0eXBlcyAgICAgICAg ICAgICAgICAgdG8gLi9zdGRkZWYuaA1GaXhlZDogIC4vc3RkZGVmLmgNLi9zdGRpby5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgSW9fRGVmX1F1 b3RlcyAgICAgICAgICAgIHRvIC4vc3RkaW8uaA1BcHBseWluZyBSczYwMDBfUGFyYW0gICAgICAg ICAgICAgdG8gLi9zdGRpby5oDUFwcGx5aW5nIFN0ZGlvX1ZhX0xpc3QgICAgICAgICAgICB0byAu L3N0ZGlvLmgNQXBwbHlpbmcgVWx0cml4X0NvbnN0ICAgICAgICAgICAgIHRvIC4vc3RkaW8uaA1G aXhlZDogIC4vc3RkaW8uaA0uL3N0ZGxpYi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA1BcHBseWluZyBCYWRfTHZhbCAgICAgICAgICAgICAgICAgdG8gLi9zdGRs aWIuaA1BcHBseWluZyBTeXN0eXBlcyAgICAgICAgICAgICAgICAgdG8gLi9zdGRsaWIuaA1BcHBs eWluZyBTeXN6X1N0ZGxpYl9Gb3JfU3VuICAgICAgdG8gLi9zdGRsaWIuaA1GaXhlZDogIC4vc3Rk bGliLmgNLi9zdG9yY2xhc3MuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICANLi9zdHJpbmcuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN QXBwbHlpbmcgQmFkX0x2YWwgICAgICAgICAgICAgICAgIHRvIC4vc3RyaW5nLmgNQXBwbHlpbmcg U3lzdjY4X1N0cmluZyAgICAgICAgICAgIHRvIC4vc3RyaW5nLmgNRml4ZWQ6ICAuL3N0cmluZy5o DS4vc3RyaW5ncy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFw cGx5aW5nIFN1bm9zX1N0cmxlbiAgICAgICAgICAgICB0byAuL3N0cmluZ3MuaA0uL3N5bXMuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3N0cm9wdHMuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBCYWRfTHZh bCAgICAgICAgICAgICAgICAgdG8gLi9zdHJvcHRzLmgNLi9zeXNleGl0cy5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9zeXNsb2cuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi90YXIuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi90ZXJtLmggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgQXZvaWRfQm9vbCAgICAgICAgICAgICAgIHRv IC4vdGVybS5oDS4vdGVybWlvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vdGVybWlvcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vdGltZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DUFwcGx5aW5nIEJhZF9MdmFsICAgICAgICAgICAgICAgICB0byAuL3RpbWUuaA0uL3RpdXNlci5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3R0eWVudC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3R5cGNoay5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3Vjb250ZXh0LmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3VpbmZvLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3VsaW1pdC5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3VuY3RybC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3VuaXN0ZC5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA1BcHBseWluZyBCYWRfTHZhbCAgICAgICAgICAgICAgICAg dG8gLi91bmlzdGQuaA1BcHBseWluZyBSczYwMDBfUGFyYW0gICAgICAgICAgICAgdG8gLi91bmlz dGQuaA0uL3VzZXJjb25mLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3VzZXJwdy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0u L3VzZXJzZWMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3Vz dGF0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3V0aW1l LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3V0bXAuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3V0bXB4LmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3ZhX2xpc3QuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3ZhbHVlcy5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3ZhcmFyZ3MuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3djaGFyLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3djc3RyLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0uL3djdHlwZS5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0uL3dvcmRleHAuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0uL3dzdHJpbmcuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0uL3hjb2ZmLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0uL3hjb2ZmMzJfNjQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIA0uL3h0aS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0uL3h0aV9pbmV0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0uL2ludHR5cGVzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IA0uL3RpbWViLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1G aXhpbmcgZGlyZWN0b3J5IC91c3IvaW5jbHVkZS9YMTEgaW50byAvaG9tZS80MDAwcmYvZ2NjLTIu OTUuMi9nY2MvaW5jbHVkZS9yb290L3Vzci9scHAvWDExL2luY2x1ZGUvWDExDS4vWDExL2V4dGVu c2lvbnMvWGV4dC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lv bnMvbXVsdGlidWYuaCAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMv c2hhcGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWFNo bS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvTUlUTWlz Yy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWEkuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWElucHV0LmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWElwcm90by5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWFRlc3QuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWElFLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWElFcHJvdG8uaCAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWElFcHJvdG9zdC5oICAgICAgICAgICAgICAg ICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvc3luYy5oICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWEtCLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vWDExL2V4dGVuc2lvbnMvWEtCZ2VvbS5oICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vWDExL2V4dGVuc2lvbnMvWEtCcHJvdG8uaCAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v WDExL2V4dGVuc2lvbnMvWEtCc3RyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDEx L2V4dGVuc2lvbnMvWEtCc3J2LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4 dGVuc2lvbnMvWEtCZmlsZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVu c2lvbnMvWEtNLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lv bnMvWEtNZm9ybWF0LmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMv WEtCY29uZmlnLmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWEtC YmVsbHMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWGRiZS5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvWGRiZXByb3Rv LmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvcmVjb3JkLmggICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvcmVjb3Jkc3RyLmggICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvUHJpbnQuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvUHJpbnRzdHIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvZGJlc3RydWN0LmggICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvYWl4ZGJlc3QuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvbWlkYmUuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vWDExL2V4dGVuc2lvbnMvbWlkYmVzdHJ1Y3QuaCAgICAgICAgICAgICAgICAgICAg ICAgDS4vWDExL2V4dGVuc2lvbnMveHRlc3RzdHIuaCAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vWDExL2V4dGVuc2lvbnMvc2NybnNhdmVyLmggICAgICAgICAgICAgICAgICAgICAgICAgDS4v WDExL2V4dGVuc2lvbnMvc2F2ZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDEx L2V4dGVuc2lvbnMvc2F2ZXJwcm90by5oICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4 dGVuc2lvbnMveHRlc3RleHQxLmggICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVu c2lvbnMvQUlYSW5wdXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lv bnMvZXh0dXRpbC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMv c2htc3RyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dGVuc2lvbnMvbWl0 bWlzY3N0ci5oICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9mb250LmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9jbG9zZXN0ci5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9jbG9zdXJlLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9jb2xvcm1hcC5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9jb2xvcm1hcHN0LmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9jdXJzb3IuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL2V4dC9jdXJzb3JzdHIuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL2V4dC9kaXguaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vWDExL2V4dC9kaXhmb250LmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vWDExL2V4dC9kaXhmb250c3RyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vWDExL2V4dC9kaXhzdHJ1Y3QuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vWDExL2V4dC9leHRlbnNpb24uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v WDExL2V4dC9leHRuc2lvbnN0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDEx L2V4dC9nYy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4 dC9nY3N0cnVjdC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9p bnB1dC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9pbnB1 dHN0ci5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9taXNjLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9taXNjc3RydWN0 LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9vcGFxdWUuaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9vcy5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9waXhtYXAuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9waXhtYXBzdHIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9wcm9wZXJ0eS5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC9wcm9wZXJ0eXN0LmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL2V4dC9yZWdpb24uaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL2V4dC9yZWdpb25zdHIuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vWDExL2V4dC9yZXNvdXJjZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vWDExL2V4dC9zY3JlZW5pbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vWDExL2V4dC9zY3JuaW50c3RyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vWDExL2V4dC9zZWxlY3Rpb24uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v WDExL2V4dC9zZXJ2ZXJtZC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFwcGx5 aW5nIE1hY2hpbmVfTmFtZSAgICAgICAgICAgICB0byAuL1gxMS9leHQvc2VydmVybWQuaA1GaXhl ZDogIC4vWDExL2V4dC9zZXJ2ZXJtZC5oDS4vWDExL2V4dC92YWxpZGF0ZS5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC93aW5kb3cuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL2V4dC93aW5kb3dzdHIuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL2V4dC9haXhJbnB1dC5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL2V4dC9mb250c3RydWN0LmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vWDExL2V4dC90dGZvbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vWDExL2V4dC9yZ2IuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vWDExL2V4dC9zaXRlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vWDExL0lDRS9JQ0UuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v WDExL0lDRS9JQ0Vjb25uLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDEx L0lDRS9JQ0Vwcm90by5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0lD RS9JQ0VsaWIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0lDRS9J Q0Vtc2cuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0lDRS9JQ0V1 dGlsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0FJWC5oICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0FJWGtleW1hcC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0FJWGxpYi5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0FJWGxpYmludC5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0FJWHByb3RvLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0RFQ2tleXN5bS5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1N1bmtleXN5bS5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL1guaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL1hXREZpbGUuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL1hhbGxvY2EuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDUFwcGx5aW5nIE1hY2hpbmVfTmFtZSAgICAgICAgICAgICB0byAuL1gxMS9YYWxs b2NhLmgNRml4ZWQ6ICAuL1gxMS9YYWxsb2NhLmgNLi9YMTEvWGF0b20uaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICANLi9YMTEvWGZ1bmNwcm90by5oICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANLi9YMTEvWGZ1bmNzLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1lICAgICAgICAgICAgIHRv IC4vWDExL1hmdW5jcy5oDUZpeGVkOiAgLi9YMTEvWGZ1bmNzLmgNLi9YMTEvWG1kLmggICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANLi9YMTEvWG9zLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1lICAg ICAgICAgICAgIHRvIC4vWDExL1hvcy5oDUZpeGVkOiAgLi9YMTEvWG9zLmgNLi9YMTEvWG9zX3Iu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANQXBwbHlpbmcgTWFjaGlu ZV9OYW1lICAgICAgICAgICAgIHRvIC4vWDExL1hvc19yLmgNRml4ZWQ6ICAuL1gxMS9Yb3Nfci5o DS4vWDExL1hvc2RlZnMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDUFw cGx5aW5nIE1hY2hpbmVfTmFtZSAgICAgICAgICAgICB0byAuL1gxMS9Yb3NkZWZzLmgNRml4ZWQ6 ICAuL1gxMS9Yb3NkZWZzLmgNLi9YMTEvWHBvbGwuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICANLi9YMTEvWHByb3RvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANLi9YMTEvWHByb3Rvc3RyLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANLi9YMTEvWHRocmVhZHMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANQXBwbHlpbmcgTWFjaGluZV9OYW1lICAgICAgICAgICAgIHRvIC4vWDExL1h0aHJlYWRz LmgNRml4ZWQ6ICAuL1gxMS9YdGhyZWFkcy5oDS4vWDExL1h3MzJkZWZzLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2FwX2tleXN5bS5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2tleXN5bS5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL2tleXN5bWRlZi5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL1hhdXRoLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL1hkbWNwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vWDExL1hsaWIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vWDExL1hyZXNvdXJjZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vWDExL1h1dGlsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vWDExL2N1cnNvcmZvbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v WDExL1hsaWJpbnQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDEx L1hjbXMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1hL QmxpYi5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1hLQmxp YmludC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1hsb2NhbGUu aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2tzX3RhYmxlcy5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2FpeF9rZXlzeW0uaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2FpeFhJTS5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1NNL1NNLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1NNL1NNcHJvdG8uaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1NNL1NNbGliLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDS4vWDExL0NvbXBvc2l0ZS5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDS4vWDExL0NvbXBvc2l0ZVAuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDS4vWDExL0NvbnN0cmFpbnQuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDS4vWDExL0NvbnN0cmFpblAuaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDS4vWDExL0NvcmUuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgDS4vWDExL0NvcmVQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDS4vWDExL0ludHJpbnNpYy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DS4vWDExL0ludHJpbnNpY1AuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4v WDExL09iamVjdC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDEx L09iamVjdFAuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1Jl Y3RPYmouaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1JlY3RP YmpQLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1NoZWxsLmgg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1NoZWxsUC5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1N0cmluZ0RlZnMuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1ZlbmRvci5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL1ZlbmRvclAuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDS4vWDExL2thcHR1cmUuaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDUNvcGllZCAuL25ldGlzby90cF9zdGF0ZXMuaA1Db3Bp ZWQgLi9uZXRpc28vdHBfZXZlbnRzLmgNQ29waWVkIC4vbmV0aXNvLy4uL25ldGlzby90cF9wY2Iu aA1DbGVhbmluZyB1cCBET05FIGZpbGVzLg1SZW1vdmluZyB1bm5lZWRlZCBkaXJlY3RvcmllczoN CXJtIC1mIGluY2x1ZGUvc3lzbGltaXRzLmgNCWlmIFsgLWYgaW5jbHVkZS9saW1pdHMuaCBdOyB0 aGVuICBtdiBpbmNsdWRlL2xpbWl0cy5oIGluY2x1ZGUvc3lzbGltaXRzLmg7ICBlbHNlICBjcCAu L2dzeXNsaW1pdHMuaCBpbmNsdWRlL3N5c2xpbWl0cy5oOyAgZmkNCWNobW9kIGErciBpbmNsdWRl L3N5c2xpbWl0cy5oDQlpZiBbICIvdXNyL2luY2x1ZGUiID0gIi91c3IvbG9jYWwvZXhjZWVkX2J1 aWxkX3Rvb2xzL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvc3lzLWluY2x1ZGUiIF0gICYmIFsgLWQg L3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC9zeXMt aW5jbHVkZSBdOyB0aGVuICBpZiBbIC1kIC91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xp YiBdIDsgdGhlbiB0cnVlIDsgZWxzZSBta2RpciAvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29s cy9saWIgOyBmaTsgIGlmIFsgLWQgL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2dj Yy1saWIgXSA7IHRoZW4gdHJ1ZSA7IGVsc2UgbWtkaXIgL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRf dG9vbHMvbGliL2djYy1saWI7IGZpOyAgaWYgWyAtZCAvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90 b29scy9saWIvZ2NjLWxpYi9wb3dlcnBjLWlibS1haXg0LjMuMi4wIF0gOyB0aGVuIHRydWUgOyBl bHNlIG1rZGlyIC91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xpYi9nY2MtbGliL3Bvd2Vy cGMtaWJtLWFpeDQuMy4yLjAgOyBmaTsgIGlmIFsgLWQgL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRf dG9vbHMvbGliL2djYy1saWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjIgXSA7IHRoZW4g dHJ1ZSA7IGVsc2UgbWtkaXIgL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2djYy1s aWIvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjIgOyBmaTsgIGVsc2UgdHJ1ZTsgZmkNCXRv dWNoIHN0bXAtZml4aW5jDQlpZiBbIC1mIC91c3IvaW5jbHVkZS9saW1pdHMuaCBdIDsgdGhlbiAg Y2F0IC4vbGltaXR4LmggLi9nbGltaXRzLmggLi9saW1pdHkuaCA+IHRtcC14bGltaXRzLmg7ICBl bHNlICBjYXQgLi9nbGltaXRzLmggPiB0bXAteGxpbWl0cy5oOyAgZmkNCW12IHRtcC14bGltaXRz LmggeGxpbWl0cy5oDQlmb3IgZmlsZSBpbiAuLiAuL2dpbmNsdWRlL3N0ZGFyZy5oIC4vZ2luY2x1 ZGUvc3RkZGVmLmggIC4vZ2luY2x1ZGUvdmFyYXJncy5oIC4vZ2luY2x1ZGUvdmEtYWxwaGEuaCAg Li9naW5jbHVkZS92YS1oODMwMC5oIC4vZ2luY2x1ZGUvdmEtaTg2MC5oICAuL2dpbmNsdWRlL3Zh LWk5NjAuaCAuL2dpbmNsdWRlL3ZhLW1pcHMuaCAgLi9naW5jbHVkZS92YS1tODhrLmggLi9naW5j bHVkZS92YS1tbjEwMjAwLmggIC4vZ2luY2x1ZGUvdmEtbW4xMDMwMC5oIC4vZ2luY2x1ZGUvdmEt cGEuaCAgLi9naW5jbHVkZS92YS1weXIuaCAuL2dpbmNsdWRlL3ZhLXNwYXJjLmggIC4vZ2luY2x1 ZGUvdmEtY2xpcHBlci5oIC4vZ2luY2x1ZGUvdmEtc3B1ci5oICAuL2dpbmNsdWRlL3ZhLW0zMnIu aCAuL2dpbmNsdWRlL3ZhLXNoLmggIC4vZ2luY2x1ZGUvdmEtdjg1MC5oIC4vZ2luY2x1ZGUvdmEt YXJjLmggIC4vZ2luY2x1ZGUvaXNvNjQ2LmggLi9naW5jbHVkZS92YS1wcGMuaCAgLi9naW5jbHVk ZS92YS1jNHguaCAgLi9jcC9pbmMvdHlwZWluZm8gLi9jcC9pbmMvZXhjZXB0aW9uICAuL2NwL2lu Yy9uZXcgLi9jcC9pbmMvbmV3LmggIC4vZ2luY2x1ZGUvcHJvdG8uaCAuL2dpbmNsdWRlL3N0ZGJv b2wuaDsgZG8gIGlmIFsgWCRmaWxlICE9IFguLiBdOyB0aGVuICByZWFsZmlsZT1gZWNobyAkZmls ZSB8IHNlZCAtZSAnc3wuKi9cKFteL10qXCkkfFwxfCdgOyAgdG91Y2ggaW5jbHVkZS8kcmVhbGZp bGU7ICBybSAtZiBpbmNsdWRlLyRyZWFsZmlsZTsgIGNwICRmaWxlIGluY2x1ZGU7ICBjaG1vZCBh K3IgaW5jbHVkZS8kcmVhbGZpbGU7ICBmaTsgIGRvbmUNCXJtIC1mIGluY2x1ZGUvbGltaXRzLmgN CWNwIHhsaW1pdHMuaCBpbmNsdWRlL2xpbWl0cy5oDQljaG1vZCBhK3IgaW5jbHVkZS9saW1pdHMu aA0Jcm0gLWYgaW5jbHVkZS9mbG9hdC5oDQlpZiBbIHhNYWtlZmlsZS5pbiAhPSB4TWFrZWZpbGUu aW4gXTsgdGhlbiAgY3AgLi9jb25maWcvTWFrZWZpbGUuaW4gaW5jbHVkZS9mbG9hdC5oICYmICBj aG1vZCBhK3IgaW5jbHVkZS9mbG9hdC5oOyAgZWxzZSA6OyBmaQ0Jcm0gLWYgaW5jbHVkZS9SRUFE TUUNCWNwIC4vUkVBRE1FLWZpeGluYyBpbmNsdWRlL1JFQURNRQ0JY2htb2QgYStyIGluY2x1ZGUv UkVBRE1FDQl0b3VjaCBzdG1wLWludC1oZHJzDQlybSAtZiBTWVNDQUxMUy5jIHRtcC1TWVNDQUxM Uy5zDQljYXQgLi9zeXMtdHlwZXMuaCAuL3N5cy1wcm90b3MuaCA+IFNZU0NBTExTLmMNCS9ob21l LzQwMDByZi9nY2MtMi45NS4yL2djYy94Z2NjIC1CL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2Nj LyAtQi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAv YmluLyAtSS91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3Bvd2VycGMtaWJtLWFpeDQuMy4y LjAvaW5jbHVkZSAgLURJTl9HQ0MgLURIQUlGQSAgICAtZyAtSS4vaW5jbHVkZSAgICAgLUkuIC1J LiAtSS4vY29uZmlnIC1JLi8uLi9pbmNsdWRlICAtYXV4LWluZm8gU1lTQ0FMTFMuYy5YIC1TIC1v IHRtcC1TWVNDQUxMUy5zIFNZU0NBTExTLmMNCXJtIC1mIFNZU0NBTExTLmMgdG1wLVNZU0NBTExT LnMNCWNjIC1jICAtRElOX0dDQyAtREhBSUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICAgIC1J LiAtSS4gLUkuL2NvbmZpZyAtSS4vLi4vaW5jbHVkZSBnY292LmMNCWNjICAtRElOX0dDQyAtREhB SUZBICAgIC1nICAgLURIQVZFX0NPTkZJR19IICBnY292Lm8gaW50bC5vIG9ic3RhY2subyBhbGxv Y2EubyAgICAgIC1sbGQgLi4vbGliaWJlcnR5L2xpYmliZXJ0eS5hIC1vIGdjb3YNCWVjaG8gIiB0 b3BsZXYubyB2ZXJzaW9uLm8gdHJlZS5vIHByaW50LXRyZWUubyBzdG9yLWxheW91dC5vIGZvbGQt Y29uc3QubyAgZnVuY3Rpb24ubyBzdG10Lm8gZXhjZXB0Lm8gZXhwci5vIGNhbGxzLm8gZXhwbWVk Lm8gZXhwbG93Lm8gb3B0YWJzLm8gIGludGwubyB2YXJhc20ubyBydGwubyBwcmludC1ydGwubyBy dGxhbmFsLm8gZW1pdC1ydGwubyBnZW5ydGwubyByZWFsLm8gIGRieG91dC5vIHNkYm91dC5vIGR3 YXJmb3V0Lm8gZHdhcmYyb3V0Lm8geGNvZmZvdXQubyBiaXRtYXAubyBhbGlhcy5vIGdjc2UubyAg aW50ZWdyYXRlLm8ganVtcC5vIGNzZS5vIGxvb3AubyB1bnJvbGwubyBmbG93Lm8gc3R1cGlkLm8g Y29tYmluZS5vIHZhcnJheS5vICByZWdjbGFzcy5vIHJlZ21vdmUubyBsb2NhbC1hbGxvYy5vIGds b2JhbC5vIHJlbG9hZC5vIHJlbG9hZDEubyBjYWxsZXItc2F2ZS5vICBpbnNuLXBlZXAubyByZW9y Zy5vIGhhaWZhLXNjaGVkLm8gZmluYWwubyByZWNvZy5vIHJlZy1zdGFjay5vICBpbnNuLW9waW5p dC5vIGluc24tcmVjb2cubyBpbnNuLWV4dHJhY3QubyBpbnNuLW91dHB1dC5vIGluc24tZW1pdC5v IGxjbS5vICBwcm9maWxlLm8gaW5zbi1hdHRydGFiLm8gcnM2MDAwLm8gZ2V0cHdkLm8gIGNvbnZl cnQubyAgbWJjaGFyLm8gZHluLXN0cmluZy5vIHNwbGF5LXRyZWUubyBncmFwaC5vIHNiaXRtYXAu byByZXNvdXJjZS5vIGhhc2gubyIgfCBzZWQgLWUgJ3MsIFwoW2EtejAtOV1cKSwgLi4vXDEsZycg LWUgJ3MvXC5vLy5vL2cnID5zdGFtcC1vYmpsaXN0DQljZCBjcDsgbWFrZSAiQVJfRkxBR1NfRk9S X1RBUkdFVD1yYyIgICJBUl9GT1JfVEFSR0VUPWFyIC1YMzJfNjQiICAiQklTT049Ymlzb24iICAi QklTT05GTEFHUz0iICAiQ0ZMQUdTPS1nIiAgIkNMSUI9LWxsZCIgICJHQ0NfRk9SX1RBUkdFVD0v aG9tZS80MDAwcmYvZ2NjLTIuOTUuMi9nY2MveGdjYyAtQi9ob21lLzQwMDByZi9nY2MtMi45NS4y L2djYy8gLUIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9wb3dlcnBjLWlibS1haXg0LjMu Mi4wL2Jpbi8gLUkvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9wb3dlcnBjLWlibS1haXg0 LjMuMi4wL2luY2x1ZGUiICAiTERGTEFHUz0iICAiTEVYPWxleCIgICJMRVhGTEFHUz0iICAiTE49 bG4iICAiTE5fUz1sbiAtcyIgICJNQUtFSU5GTz0vaG9tZS80MDAwcmYvZ2NjLTIuOTUuMi90ZXhp bmZvL21ha2VpbmZvL21ha2VpbmZvICIgICJNQUtFSU5GT0ZMQUdTPSIgICJSQU5MSUJfRk9SX1RB UkdFVD1yYW5saWIiICAiUkFOTElCX1RFU1RfRk9SX1RBUkdFVD1bIC1mIHJhbmxpYiBdICB8fCAo IFsgInBvd2VycGMtaWJtLWFpeDQuMy4yLjAiID0gInBvd2VycGMtaWJtLWFpeDQuMy4yLjAiIF0g ICYmIFsgLWYgL3Vzci9iaW4vcmFubGliIC1vIC1mIC9iaW4vcmFubGliIF0gKSIgICJTSEVMTD0v YmluL3NoIiAgIlNUQUdFX1BSRUZJWD0iICAiZXhlZXh0PSIgICJidWlsZF9leGVleHQ9IiAgIm9i amV4dD0ubyIgICJleGVjX3ByZWZpeD0vdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scyIgICJw cmVmaXg9L3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMiICAibG9jYWxfcHJlZml4PS91c3Iv bG9jYWwiICAiZ3h4X2luY2x1ZGVfZGlyPS91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xp Yi9nY2MtbGliL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvMi45NS4yLy4uLy4uLy4uLy4uYGVjaG8g L3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMgfCBzZWQgLWUgJ3N8Xi91c3IvbG9jYWwvZXhj ZWVkX2J1aWxkX3Rvb2xzfHwnIC1lICdzfC9bXi9dKnwvLi58ZydgL2luY2x1ZGUvZysrLTMiICAi dG9vbGRpcj0vdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9wb3dlcnBjLWlibS1haXg0LjMu Mi4wIiAgImdjY190b29sZGlyPS91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2xpYi9nY2Mt bGliL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvMi45NS4yLy4uLy4uLy4uLy4uL3Bvd2VycGMtaWJt LWFpeDQuMy4yLjAiICAiYmluZGlyPS91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL2JpbiIg ICJsaWJzdWJkaXI9L3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvbGliL2djYy1saWIvcG93 ZXJwYy1pYm0tYWl4NC4zLjIuMC8yLjk1LjIiICAiZGF0YWRpcj0vdXNyL2xvY2FsL2V4Y2VlZF9i dWlsZF90b29scy9zaGFyZSIgICJkaXN0ZGlyPS4uL3RtcC9cJChzdWJkaXIpIiAgImxvY2FsZWRp cj0vdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9zaGFyZS9sb2NhbGUiICJDQz1jYyIgIkNY WF9GT1JfQlVJTEQ9YysrIiAgIkNYWEZMQUdTPS1nIC1PMiIgICJDWFhfRk9SX1RBUkdFVD1jKysi IC4uL2NjMXBsdXMNCWNjIC1jICAtRElOX0dDQyAgICAtZyAgICAgLUkuIC1JLi4gLUkuIC1JLi8u LiAtSS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlIGNhbGwuYw0JY2MgLWMgIC1ESU5fR0ND ICAgIC1nICAgICAtSS4gLUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2lu Y2x1ZGUgZGVjbC5jDQljYyAtYyAgLURJTl9HQ0MgICAgLWcgICAgIC1JLiAtSS4uIC1JLiAtSS4v Li4gLUkuLy4uL2NvbmZpZyAtSS4vLi4vLi4vaW5jbHVkZSBlcnJmbi5jDQljYyAtYyAgLURJTl9H Q0MgICAgLWcgICAgIC1JLiAtSS4uIC1JLiAtSS4vLi4gLUkuLy4uL2NvbmZpZyAtSS4vLi4vLi4v aW5jbHVkZSBleHByLmMNCWNjIC1jICAtRElOX0dDQyAgICAtZyAgICAgLUkuIC1JLi4gLUkuIC1J Li8uLiAtSS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlIHB0LmMNInB0LmMiLCBsaW5lIDIw NjYuMTM6IDE1MDYtMDY4IChXKSBPcGVyYXRpb24gYmV0d2VlbiB0eXBlcyAiaW50KiIgYW5kICJ1 bnNpZ25lZCBjaGFyKiIgaXMgbm90IGFsbG93ZWQuDSJwdC5jIiwgbGluZSAyMDY5LjMxOiAxNTA2 LTA2OCAoVykgT3BlcmF0aW9uIGJldHdlZW4gdHlwZXMgImludCoiIGFuZCAidW5zaWduZWQgY2hh cioiIGlzIG5vdCBhbGxvd2VkLg0JY2MgLWMgIC1ESU5fR0NDICAgIC1nICAgICAtSS4gLUkuLiAt SS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1ZGUgc2lnLmMNCWNjIC1jICAt RElOX0dDQyAgICAtZyAgICAgLUkuIC1JLi4gLUkuIC1JLi8uLiAtSS4vLi4vY29uZmlnIC1JLi8u Li8uLi9pbmNsdWRlIHR5cGVjazIuYw0JY2MgLWMgIC1ESU5fR0NDICAgIC1nICAgICAtSS4gLUku LiAtSS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1ZGUgY2xhc3MuYw0JY2Mg LWMgIC1ESU5fR0NDICAgIC1nICAgICAtSS4gLUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9jb25maWcg LUkuLy4uLy4uL2luY2x1ZGUgZGVjbDIuYw0JY2MgLWMgIC1ESU5fR0NDICAgIC1nICAgICAtSS4g LUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1ZGUgZXJyb3IuYw0J Y2MgLWMgIC1ESU5fR0NDICAgIC1nICAgICAtSS4gLUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9jb25m aWcgLUkuLy4uLy4uL2luY2x1ZGUgbGV4LmMNCWNjIC1jICAtRElOX0dDQyAgICAtZyAgICAgLUku IC1JLi4gLUkuIC1JLi8uLiAtSS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlICAgYGVjaG8g Li9wYXJzZS5jIHwgc2VkICdzLF5cLi8sLCdgDQljYyAtYyAgLURJTl9HQ0MgICAgLWcgICAgIC1J LiAtSS4uIC1JLiAtSS4vLi4gLUkuLy4uL2NvbmZpZyAtSS4vLi4vLi4vaW5jbHVkZSBwdHJlZS5j DQljYyAtYyAgLURJTl9HQ0MgICAgLWcgICAgIC1JLiAtSS4uIC1JLiAtSS4vLi4gLUkuLy4uL2Nv bmZpZyAtSS4vLi4vLi4vaW5jbHVkZSBydHRpLmMNCWNjIC1jICAtRElOX0dDQyAgICAtZyAgICAg LUkuIC1JLi4gLUkuIC1JLi8uLiAtSS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlIHNwZXcu Yw0JY2MgLWMgIC1ESU5fR0NDICAgIC1nICAgICAtSS4gLUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9j b25maWcgLUkuLy4uLy4uL2luY2x1ZGUgdHlwZWNrLmMNCWNjIC1jICAtRElOX0dDQyAgICAtZyAg ICAgLUkuIC1JLi4gLUkuIC1JLi8uLiAtSS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlIGN2 dC5jDQljYyAtYyAgLURJTl9HQ0MgICAgLWcgICAgIC1JLiAtSS4uIC1JLiAtSS4vLi4gLUkuLy4u L2NvbmZpZyAtSS4vLi4vLi4vaW5jbHVkZSBleGNlcHQuYw0JY2MgLWMgIC1ESU5fR0NDICAgIC1n ICAgICAtSS4gLUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1ZGUg ZnJpZW5kLmMNCWNjIC1jICAtRElOX0dDQyAgICAtZyAgICAgLUkuIC1JLi4gLUkuIC1JLi8uLiAt SS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlIGluaXQuYw0JY2MgLWMgIC1ESU5fR0NDICAg IC1nICAgICAtSS4gLUkuLiAtSS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1 ZGUgbWV0aG9kLmMNCWNjIC1jICAtRElOX0dDQyAgICAtZyAgICAgLUkuIC1JLi4gLUkuIC1JLi8u LiAtSS4vLi4vY29uZmlnIC1JLi8uLi8uLi9pbmNsdWRlIHNlYXJjaC5jDQljYyAtYyAgLURJTl9H Q0MgICAgLWcgICAgIC1JLiAtSS4uIC1JLiAtSS4vLi4gLUkuLy4uL2NvbmZpZyAtSS4vLi4vLi4v aW5jbHVkZSBzZW1hbnRpY3MuYw0JY2MgLWMgIC1ESU5fR0NDICAgIC1nICAgICAtSS4gLUkuLiAt SS4gLUkuLy4uIC1JLi8uLi9jb25maWcgLUkuLy4uLy4uL2luY2x1ZGUgdHJlZS5jDSJ0cmVlLmMi LCBsaW5lIDIxNTUuMTg6IDE1MDYtMzM0IChTKSBJZGVudGlmaWVyIGNvZGUgaGFzIGFscmVhZHkg YmVlbiBkZWZpbmVkIG9uIGxpbmUgMjE1MiBvZiAidHJlZS5jIi4NInRyZWUuYyIsIGxpbmUgMjE5 My4xODogMTUwNi0zMzQgKFMpIElkZW50aWZpZXIgY29kZSBoYXMgYWxyZWFkeSBiZWVuIGRlZmlu ZWQgb24gbGluZSAyMTkwIG9mICJ0cmVlLmMiLg0idHJlZS5jIiwgbGluZSAyMTk0Ljg6IDE1MDYt MzM0IChTKSBJZGVudGlmaWVyIHR0IGhhcyBhbHJlYWR5IGJlZW4gZGVmaW5lZCBvbiBsaW5lIDIx OTAgb2YgInRyZWUuYyIuDW1ha2U6IDEyNTQtMDA0IFRoZSBlcnJvciBjb2RlIGZyb20gdGhlIGxh c3QgY29tbWFuZCBpcyAxLg0NDVN0b3AuDW1ha2U6IDEyNTQtMDA0IFRoZSBlcnJvciBjb2RlIGZy b20gdGhlIGxhc3QgY29tbWFuZCBpcyAyLg0NDVN0b3AuDW1ha2U6IDEyNTQtMDA0IFRoZSBlcnJv ciBjb2RlIGZyb20gdGhlIGxhc3QgY29tbWFuZCBpcyAyLg0NDVN0b3AuDQxGcm9tIG1ha2UgcGFy dCAyLg0NYXIgLVgzMl82NCByYyBsaWJpby5hIGZpbGVkb2FsbG9jLm8gZmxvYXRjb252Lm8gZ2Vu b3BzLm8gZmlsZW9wcy5vICBpb3ZmcHJpbnRmLm8gIGlvdmZzY2FuZi5vIGlvaWdub3JlLm8gaW9w YWRuLm8gIGlvZmdldHBvcy5vIGlvZnJlYWQubyBpb2ZzY2FuZi5vICBpb2ZzZXRwb3MubyBpb2dl dGRlbGltLm8gaW9nZXRsaW5lLm8gIGlvcHJpbnRmLm8gaW9zZWVrb2ZmLm8gaW9zZWVrcG9zLm8g IG91dGZsb2F0Lm8gc3Ryb3BzLm8gaW9mY2xvc2UubyBpb3BvcGVuLm8gaW91bmdldGMubyBwZWVr Yy5vIGlvZ2V0Yy5vICBpb3B1dGMubyBpb2Zlb2YubyBpb2ZlcnJvci5vIGlvZmRvcGVuLm8gaW9m Zmx1c2gubyBpb2ZnZXRzLm8gaW9mb3Blbi5vIGlvZnByaW50Zi5vIGlvZnB1dHMubyBpb2Z3cml0 ZS5vICBpb2dldHMubyBpb3BlcnJvci5vIGlvcHV0cy5vIGlvc2NhbmYubyBpb3NldGJ1ZmZlci5v IGlvc2V0dmJ1Zi5vICBpb3NwcmludGYubyBpb3NzY2FuZi5vIGlvZnRlbGwubyBpb3Zzc2NhbmYu byBpb3ZzcHJpbnRmLm8gaW9wcmltcy5vIGlvc3RyZXJyb3IubyBjbGVhbnVwLm8gIHN0ZGZpbGVz Lm8NICAgICAgICByYW5saWIgbGliaW8uYQ0gICAgICAgIHRlc3QgeCJubyIgIT0geHllcyB8fCAg L2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjL3hnY2MgLUIvaG9tZS80MDAwcmYvZ2NjLTIuOTUu Mi9nY2MvIC1CL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvcG93ZXJwYy1pYm0tYWl4NC4z LjIuMC9iaW4vIC1jIC1nIC1PMiAtZm5vLWltcGxpY2l0LXRlbXBsYXRlcyAtSS4gLUkuIC1ub3N0 ZGluYysrICAgYnVpbHRpbmJ1Zi5jYyAtbyBwaWMvYnVpbHRpbmJ1Zi5vDSAgICAgICAgL2hvbWUv NDAwMHJmL2djYy0yLjk1LjIvZ2NjL3hnY2MgLUIvaG9tZS80MDAwcmYvZ2NjLTIuOTUuMi9nY2Mv IC1CL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC9i aW4vIC1jIC1nIC1PMiAtZm5vLWltcGxpY2l0LXRlbXBsYXRlcyAtSS4gLUkuIC1ub3N0ZGluYysr ICBidWlsdGluYnVmLmNjDSAgICAgICAgdGVzdCB4Im5vIiAhPSB4eWVzIHx8ICAvaG9tZS80MDAw cmYvZ2NjLTIuOTUuMi9nY2MveGdjYyAtQi9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy8gLUIv dXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9wb3dlcnBjLWlibS1haXg0LjMuMi4wL2Jpbi8g LWMgLWcgLU8yIC1mbm8taW1wbGljaXQtdGVtcGxhdGVzIC1JLiAtSS4gLW5vc3RkaW5jKysgICBm aWxlYnVmLmNjIC1vIHBpYy9maWxlYnVmLm8NICAgICAgICAvaG9tZS80MDAwcmYvZ2NjLTIuOTUu Mi9nY2MveGdjYyAtQi9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy8gLUIvdXNyL2xvY2FsL2V4 Y2VlZF9idWlsZF90b29scy9wb3dlcnBjLWlibS1haXg0LjMuMi4wL2Jpbi8gLWMgLWcgLU8yIC1m bm8taW1wbGljaXQtdGVtcGxhdGVzIC1JLiAtSS4gLW5vc3RkaW5jKysgIGZpbGVidWYuY2MNICAg ICAgICB0ZXN0IHgibm8iICE9IHh5ZXMgfHwgIC9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy94 Z2NjIC1CL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjLyAtQi91c3IvbG9jYWwvZXhjZWVkX2J1 aWxkX3Rvb2xzL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvYmluLyAtYyAtZyAtTzIgLWZuby1pbXBs aWNpdC10ZW1wbGF0ZXMgLUkuIC1JLiAtbm9zdGRpbmMrKyAgIGZzdHJlYW0uY2MgLW8gcGljL2Zz dHJlYW0ubw0gICAgICAgIC9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy94Z2NjIC1CL2hvbWUv NDAwMHJmL2djYy0yLjk1LjIvZ2NjLyAtQi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3Bv d2VycGMtaWJtLWFpeDQuMy4yLjAvYmluLyAtYyAtZyAtTzIgLWZuby1pbXBsaWNpdC10ZW1wbGF0 ZXMgLUkuIC1JLiAtbm9zdGRpbmMrKyAgZnN0cmVhbS5jYw0gICAgICAgIHRlc3QgeCJubyIgIT0g eHllcyB8fCAgL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjL3hnY2MgLUIvaG9tZS80MDAwcmYv Z2NjLTIuOTUuMi9nY2MvIC1CL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvcG93ZXJwYy1p Ym0tYWl4NC4zLjIuMC9iaW4vIC1jIC1nIC1PMiAtZm5vLWltcGxpY2l0LXRlbXBsYXRlcyAtSS4g LUkuIC1ub3N0ZGluYysrICAgaW5kc3RyZWFtLmNjIC1vIHBpYy9pbmRzdHJlYW0ubw0gICAgICAg IC9ob21lLzQwMDByZi9nY2MtMi45NS4yL2djYy94Z2NjIC1CL2hvbWUvNDAwMHJmL2djYy0yLjk1 LjIvZ2NjLyAtQi91c3IvbG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3Bvd2VycGMtaWJtLWFpeDQu My4yLjAvYmluLyAtYyAtZyAtTzIgLWZuby1pbXBsaWNpdC10ZW1wbGF0ZXMgLUkuIC1JLiAtbm9z dGRpbmMrKyAgaW5kc3RyZWFtLmNjDSAgICAgICAgdGVzdCB4Im5vIiAhPSB4eWVzIHx8ICAvaG9t ZS80MDAwcmYvZ2NjLTIuOTUuMi9nY2MveGdjYyAtQi9ob21lLzQwMDByZi9nY2MtMi45NS4yL2dj Yy8gLUIvdXNyL2xvY2FsL2V4Y2VlZF9idWlsZF90b29scy9wb3dlcnBjLWlibS1haXg0LjMuMi4w L2Jpbi8gLWMgLWcgLU8yIC1mbm8taW1wbGljaXQtdGVtcGxhdGVzIC1JLiAtSS4gLW5vc3RkaW5j KysgICBpb2Fzc2lnbi5jYyAtbyBwaWMvaW9hc3NpZ24ubw0gICAgICAgIC9ob21lLzQwMDByZi9n Y2MtMi45NS4yL2djYy94Z2NjIC1CL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjLyAtQi91c3Iv bG9jYWwvZXhjZWVkX2J1aWxkX3Rvb2xzL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvYmluLyAtYyAt ZyAtTzIgLWZuby1pbXBsaWNpdC10ZW1wbGF0ZXMgLUkuIC1JLiAtbm9zdGRpbmMrKyAgaW9hc3Np Z24uY2MNICAgICAgICB0ZXN0IHgibm8iICE9IHh5ZXMgfHwgIC9ob21lLzQwMDByZi9nY2MtMi45 NS4yL2djYy94Z2NjIC1CL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjLyAtQi91c3IvbG9jYWwv ZXhjZWVkX2J1aWxkX3Rvb2xzL3Bvd2VycGMtaWJtLWFpeDQuMy4yLjAvYmluLyAtYyAtZyAtTzIg LWZuby1pbXBsaWNpdC10ZW1wbGF0ZXMgLUkuIC1JLiAtbm9zdGRpbmMrKyAgIGlvZXh0ZW5kLmNj IC1vIHBpYy9pb2V4dGVuZC5vDSAgICAgICAgL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjL3hn Y2MgLUIvaG9tZS80MDAwcmYvZ2NjLTIuOTUuMi9nY2MvIC1CL3Vzci9sb2NhbC9leGNlZWRfYnVp bGRfdG9vbHMvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC9iaW4vIC1jIC1nIC1PMiAtZm5vLWltcGxp Y2l0LXRlbXBsYXRlcyAtSS4gLUkuIC1ub3N0ZGluYysrICBpb2V4dGVuZC5jYw0gICAgICAgIHRl c3QgeCJubyIgIT0geHllcyB8fCAgL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjL3hnY2MgLUIv aG9tZS80MDAwcmYvZ2NjLTIuOTUuMi9nY2MvIC1CL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9v bHMvcG93ZXJwYy1pYm0tYWl4NC4zLjIuMC9iaW4vIC1jIC1nIC1PMiAtZm5vLWltcGxpY2l0LXRl bXBsYXRlcyAtSS4gLUkuIC1ub3N0ZGluYysrICAgaW9tYW5pcC5jYyAtbyBwaWMvaW9tYW5pcC5v DSAgICAgICAgL2hvbWUvNDAwMHJmL2djYy0yLjk1LjIvZ2NjL3hnY2MgLUIvaG9tZS80MDAwcmYv Z2NjLTIuOTUuMi9nY2MvIC1CL3Vzci9sb2NhbC9leGNlZWRfYnVpbGRfdG9vbHMvcG93ZXJwYy1p Ym0tYWl4NC4zLjIuMC9iaW4vIC1jIC1nIC1PMiAtZm5vLWltcGxpY2l0LXRlbXBsYXRlcyAtSS4g LUkuIC1ub3N0ZGluYysrICBpb21hbmlwLmNjDUluIGZpbGUgaW5jbHVkZWQgZnJvbSBpb21hbmlw LmNjOjI5Og1pb21hbmlwLmg6IEluIG1ldGhvZCBgc2FwcDxUUD46OnNhcHAoaW9zICYgKCopKGlv cyAmLCBUUCkpJzoNaW9tYW5pcC5oOjQ3OiBJbnRlcm5hbCBjb21waWxlciBlcnJvci4NaW9tYW5p cC5oOjQ3OiBQbGVhc2Ugc3VibWl0IGEgZnVsbCBidWcgcmVwb3J0Lg1pb21hbmlwLmg6NDc6IFNl ZSA8VVJMOmh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9nY2MvZmFxLmh0bWwjYnVncmVwb3J0 PiBmb3IgaW5zdHJ1Y3Rpb25zLg1tYWtlOiAxMjU0LTAwNCBUaGUgZXJyb3IgY29kZSBmcm9tIHRo ZSBsYXN0IGNvbW1hbmQgaXMgMS4NDQ1TdG9wLg1tYWtlOiAxMjU0LTAwNCBUaGUgZXJyb3IgY29k ZSBmcm9tIHRoZSBsYXN0IGNvbW1hbmQgaXMgMi4NDQ1TdG9wLg0NDQAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAgEAAAVBAAA4jYAAPw2AADJ4wEA2+MBANzjAQDL8wEA zPMBAM3zAQAA/AD88ePxAPH8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAABo1CIFDShQAT0oDAFFKAwBcCIFeSgMAYUoUAAAUQ0oUAE9KAwBR SgMAXkoDAGFKFAAABjUIgVwIgQoABAAAFwQAABgEAABHBAAAhQQAAJ4EAAC9BAAA8QQAACYFAAA8 BQAAWgUAAHEFAACbBQAAvAUAAPgFAAAoBgAARwYAAGcGAACEBgAAoQYAAL4GAADcBgAA+wYAAB4H AABYBwAAjgcAANEHAADtBwAACAgAACUIAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAA AAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAA AAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0A AAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAA AAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAA AAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAA AAAAAAAAAAAAAAAAAAABAAAAHQAEAADN8wEA/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAACAQEBJQgAAD4IAABYCAAAcggAAI0IAACnCAAAwggAAOIIAAD8CAAAFwkA ADIJAABNCQAAaAkAAIQJAACfCQAAuwkAANYJAADxCQAADAoAACcKAABBCgAAYAoAAH8KAACaCgAA tQoAANUKAADxCgAADAsAACcLAABCCwAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAA AAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAA AAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAA AAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9 AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAA AAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAA AAAAAAAAAAAAAAAAAQAAAB1CCwAAXgsAAHkLAACWCwAAswsAAM8LAADsCwAACAwAACwMAABHDAAA bwwAAIkMAACkDAAAxgwAAOYMAAADDQAAIw0AAEENAABcDQAAeA0AAJUNAACyDQAAzg0AAOgNAAAB DgAAIg4AAEEOAABaDgAAbA4AAIgOAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAA AAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA /QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAA AAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAA AAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0A AAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAA AAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AAAAAAAAAAAAAAABAAAAHYgOAACaDgAAsQ4AAM8OAAALDwAAPQ8AAGcPAACPDwAAuA8AAOEPAAAM EAAANRAAAFUQAACLEAAAzhAAAAERAAAnEQAAYBEAAJwRAADDEQAA4xEAAAQSAAAmEgAAcRIAAJkS AADAEgAA5RIAAAITAAAoEwAAThMAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAA AAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9 AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAA AAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAA AAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAA AAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAA AAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA AAAAAAAAAAAAAAEAAAAdThMAAH8TAACbEwAAtRMAANsTAAACFAAAHxQAADwUAABaFAAAgBQAAJ8U AADHFAAA5RQAAA0VAAAsFQAAVBUAAG4VAACeFQAAwBUAAAAWAAAtFgAAURYAAHYWAACSFgAAthYA ANoWAAD9FgAAIRcAAEkXAABpFwAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAA AAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0A AAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAA AAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAA AAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAA AAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAAA AAAAAAAAAAAAAQAAAB1pFwAAkRcAALUXAADaFwAA/hcAACQYAABEGAAAXxgAAIUYAACuGAAAzhgA AOgYAAAFGQAAIhkAAEEZAABeGQAAhBkAAKoZAADHGQAA8BkAABQaAAAvGgAAUxoAAHYaAACUGgAA uBoAAOAaAAAAGwAAJBsAAEMbAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAA AAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAA AAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAA AAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA /QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAA AAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAA AAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAAAA AAAAAAAAAAABAAAAHUMbAABdGwAAfRsAAKYbAADbGwAA+BsAACMcAABBHAAAYBwAAHscAACrHAAA yhwAAOMcAAD1HAAACx0AACIdAAA5HQAATx0AAGodAACCHQAAmR0AAKsdAADZHQAA7B0AAAoeAAAv HgAAVx4AAIseAADBHgAA9h4AAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAA AAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAA AAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9 AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAA AAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAA AAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAAAAAA AAAAAAAAAAEAAAAd9h4AABYfAABMHwAAjx8AAMIfAADxHwAAJCAAAF0gAACTIAAAqyAAAMMgAADd IAAA9iAAABghAAA5IQAAXSEAAHohAAChIQAAuiEAANMhAAAPIgAASCIAAHkiAAC8IgAAACMAAEMj AABpIwAAhiMAAKwjAADTIwAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA /QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAA AAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAA AAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0A AAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAA AAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAQAAAB3TIwAA+SMAABQkAAA5JAAAXyQAAHkkAAChJAAAySQAAPUkAAAeJQAAPiUAAF0l AAB5JQAAlSUAALMlAADPJQAADiYAAC0mAABSJgAAbiYAAJQmAAC4JgAA0iYAAPUmAAAYJwAAOicA AF0nAACBJwAApScAAMonAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9 AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAA AAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAA AAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAA AAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAA AAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA /QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAAAAAAAA AAAAAAABAAAAHconAADjJwAAASgAAB8oAAA4KAAAUCgAAHUoAACRKAAAuygAAOEoAAADKQAAJSkA AEcpAABsKQAApCkAAMcpAADrKQAAFioAAEUqAAB1KgAApCoAANEqAAD/KgAALSsAAForAACIKwAA tysAAOYrAAATLAAAQCwAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0A AAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAA AAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAA AAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAA AAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9 AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAAAAAAAAAA AAAAAAEAAAAdQCwAAG4sAACbLAAAzCwAAPssAAApLQAAXC0AAJItAADKLQAA+S0AACsuAABdLgAA oC4AAMsuAAD9LgAAPC8AAHovAAC6LwAA4i8AAA0wAAA2MAAAWTAAAH0wAACqMAAAzjAAAPQwAAAd MQAARjEAAGkxAACPMQAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAA AAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAA AAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA /QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAA AAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAA AAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0A AAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAAAAAAAAAAA AAAAAQAAAB2PMQAAtTEAAN0xAAADMgAAKTIAAE8yAAB4MgAAnDIAAMAyAADkMgAABzMAAC4zAABS MwAAejMAAJ4zAADHMwAA9DMAABw0AABFNAAAbTQAAJc0AADBNAAA5TQAAAA1AABLNQAAajUAAIM1 AACVNQAArDUAAMQ1AAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAA AAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAA AAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9 AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAA AAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAA AAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAA 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 +QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAA AAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAA AAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkA AAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAA AAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAAAAYAADckADgkAEgk AAAdQWAAAKFgAAAAYQAAQWEAAFJhAAB8YQAA3GEAAOxhAAAUYgAAjWIAAJNiAAAzYwAAPmMAAEtj AABhYwAAfWMAAOFjAAD4ZAAAEmUAAD1lAABMZQAAsGUAAMlmAADwZgAAGGcAAEBnAABQZwAAsmcA AA5oAABtaAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAA AAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5 AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAA AAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAA AAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAA AAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAA AAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAAABgAANyQAOCQASCQA AB1taAAAz2gAAP9pAAAxagAAWmoAAGhqAADLagAA/WsAADFsAABcbAAAa2wAAM9sAAADbgAAOW4A AGZuAAB2bgAAKW8AAIZvAADpbwAATXAAALBwAAATcQAARXIAAHlyAACkcgAAs3IAABRzAABxcwAA 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 APkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAA AAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAA AAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5 AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAAABgAANyQAOCQASCQAAB1juAAA w7gAAFy5AADfuQAAFLoAADG6AAB7ugAAxLoAACG7AABsuwAAwLsAANu7AADpuwAACLwAAN+8AAA5 vQAAZr0AAIC9AACevQAAu70AANm9AAD3vQAAKb4AAJi/AAC4vwAA878AAFDAAAC0wAAAFMEAAHTB AAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAA AAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAA AAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA +QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAA AAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAA AAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkA AAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAAAGAAA3JAA4JABIJAAAHXTBAADN wQAAJsIAAH7CAACmwgAA0MIAAPrCAABBwwAAd8MAAK3DAADjwwAAGcQAAE/EAACFxAAAu8QAAPHE AAAnxQAAXcUAAJPFAADJxQAA/8UAADXGAABrxgAAocYAANfGAAANxwAAQ8cAAHnHAACvxwAA5ccA APkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAA 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 AAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAAAGAAA3JAA4 JABIJAAAHTXiAQCd4gEAAuMBADzjAQA94wEAPuMBAETjAQB+4wEAf+MBAIDjAQCG4wEAwOMBAMHj AQDC4wEAyOMBANvjAQDc4wEAE+YBACrmAQAf5wEA6OcBANfoAQCd6QEAjOoBAFLrAQBF7AEADe0B AP7tAQDF7gEA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAA AAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5 AAAAAAAAAAAAAAAA+QAAAAAAAAAAAAAAAPkAAAAAAAAAAAAAAAD5AAAAAAAAAAAAAAAA+QAAAAAA AAAAAAAAAPkAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPcAAAAAAAAAAAAA AAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA9wAA AAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPcAAAAAAAAA AAAAAAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAYAADckADgk AEgkAAAcxe4BALbvAQB98AEAbPEBADLyAQBX8gEAlPIBALvyAQDq8gEAR/MBAIHzAQCC8wEAg/MB AInzAQDD8wEAxPMBAMXzAQDL8wEAzPMBAM3zAQD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0A AAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAA AAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAA AP0AAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAAAAAAAAAAAAD9AAAA AAAAAAAAAAAA/QAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAAA3JAA4JABIJAAA AQAAABMgADGQaAEfsNAvILDgPSGwCAcisAgHI5CgBSSQoAUlsAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAABQADwAKAAEAaQAPAAMAAAAAAAAAAAA4AABA8f8CADgADAAGAE4AbwByAG0AYQBsAAAAAgAA ABgAQ0oYAF9IAQRhShgAbUgJBHNICQR0SAkEAAAAAAAAAAAAAAAAAAAAAAAAPABBQPL/oQA8AAwA FgBEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0AAAAAAAAAAAAAAAA AAAAAADN7wEABQAAaAQAAAD/////MAAAAAQg//8BAKB6mQAAAAAAACD//wIAoHqZAAAAAAAEIP// AwCgepkAAAAAAAAg//8EAKB6mQAAAAAABCD//wUAoHqZAAAAAAAAIP//BgCgepkAAAAAAAQg//8H AKB6mQAAAAAAACD//wgAoHqZAAAAAAAEIP//CQCgepkAAAAAAAAg//8KAKB6mQAAAAAABCD//wsA oHqZAAAAAAAAIP//DACgepkAAAAAAAQg//8NAKB6mQAAAAAAACD//w4AoHqZAAAAAAAEIP//DwCg epkAAAAAAAAg//8QAKB6mQAAAAAABCD//xEAoHqZAAAAAAAAIP//EgCgepkAAAAAAAQg//8TAKB6 mQAAAAAAACD//xQAoHqZAAAAAAAEIP//FQCgepkAAAAAAAAg//8WAKB6mQAAAAAABCD//xcAoHqZ AAAAAAAAIP//GACgepkAAAAAAAQg//8ZAKB6mQAAAAAAACD//xoAoHqZAAAAAAAEIP//GwCgepkA AAAAAAAg//8cAKB6mQAAAAAABCD//x0AoHqZAAAAAAAAIP//HgCgepkAAAAAAAQg//8fAKB6mQAA AAAAACD//yAAoHqZAAAAAAAEIP//IQCgepkAAAAAAAAg//8iAKB6mQAAAAAABCD//yMAoHqZAAAA AAAAIP//JACgepkAAAAAAAQg//8lAKB6mQAAAAAAACD//yYAoHqZAAAAAAAEIP//JwCgepkAAAAA AAAg//8oAKB6mQAAAAAABCD//ykAoHqZAAAAAAAAIP//KgCgepkAAAAAAAQg//8rAKB6mQAAAAAA ACD//ywAoHqZAAAAAAAEIP//LQCgepkAAAAAAAAg//8uAKB6mQAAAAAABCD//y8AoHqZAAAAAAAA IP//MACgepkAAAAAAAAAAADxBQAAPQsAAHYSAACrGAAAhh8AAMclAAADLgAA9jIAAJs9AAAoSQAA uFUAAOFfAAB2agAAT3YAAPGAAADgigAA5pUAAIWgAACZrAAA27cAAKHCAACnzgAAqNoAAKvmAACP 8gAAKv4AADAKAQA2FgEAKSIBAC8uAQA1OgEACkYBAPRRAQCzXQEAbmkBAAV1AQADgAEAIIsBADiW AQAeogEAD64BAE+5AQCAxAEA6dABAL7bAQDJ3wEAfewBAM3vAQAAABsAAAABACoAAAACABwAAAAD AB8AAAAEACYAAAAFACQAAAAGACYAAAAHAAYAAAAIAGUAAAAJAIMAAAAKAJUAAAALABcBAAAMALMA AAANAGEAAAAOAGAAAAAPAFMAAAAQAGoAAAARAF0AAAASABEDAAATAA4AAAAUADYAAAAVADYAAAAW ADYAAAAXADYAAAAYADYAAAAZADYAAAAaADYAAAAbADYAAAAcADYAAAAdADYAAAAeADYAAAAfADYA AAAgADYAAAAhADYAAAAiAC4AAAAjADYAAAAkADYAAAAlADYAAAAmAC4AAAAnADYAAAAoADYAAAAp ADYAAAAqADIDAAArANcDAAAsAFgAAAAtABIAAAAuAO8AAAAvAAAAAAAAAAAAFwAAABgAAABHAAAA hQAAAJ4AAAC9AAAA8QAAACYBAAA8AQAAWgEAAHEBAACbAQAAvAEAAPgBAAAoAgAARwIAAGcCAACE AgAAoQIAAL4CAADcAgAA+wIAAB4DAABYAwAAjgMAANEDAADtAwAACAQAACUEAAA+BAAAWAQAAHIE AACNBAAApwQAAMIEAADiBAAA/AQAABcFAAAyBQAATQUAAGgFAACEBQAAnwUAALsFAADWBQAA8QUA AAwGAAAnBgAAPQsAAGcLAACPCwAAuAsAAOELAAAMDAAANQwAAFUMAACLDAAAzgwAAAENAAAnDQAA YA0AAJwNAADDDQAA4w0AAAQOAAAmDgAAcQ4AAJkOAADADgAA5Q4AAAIPAAAoDwAATg8AAH8PAACb DwAAtQ8AANsPAAACEAAAHxAAADwQAABaEAAAgBAAAJ8QAADHEAAA5RAAAA0RAAAsEQAAVBEAAG4R AACeEQAAwBEAAAASAAAtEgAAURIAAHYSAACSEgAAthIAANoSAAD9EgAAIRMAAEkTAABpEwAAkRMA ALUTAADaEwAA/hMAACQUAABEFAAAXxQAAIUUAACuFAAAzhQAAOgUAAAFFQAAIhUAAEEVAABeFQAA hBUAAKoVAADHFQAA8BUAABQWAAAvFgAAUxYAAHYWAACUFgAAuBYAAOAWAAAAFwAAJBcAAEMXAABd FwAAfRcAAKYXAADbFwAA+BcAACMYAABBGAAAYBgAAHsYAACrGAAAyhgAAOMYAAD1GAAACxkAACIZ AAA5GQAATxkAAGoZAACCGQAAmRkAAKsZAADZGQAA7BkAAAoaAAAvGgAAVxoAAIsaAADBGgAA9hoA ABYbAABMGwAAjxsAAMIbAADxGwAAJBwAAF0cAACTHAAAqxwAAMMcAADdHAAA9hwAABgdAAA5HQAA XR0AAHodAAChHQAAuh0AANMdAAAPHgAASB4AAHkeAAC8HgAAAB8AAEMfAABpHwAAhh8AAKwfAADT HwAA+R8AABQgAAA5IAAAXyAAAHkgAAChIAAAySAAAPUgAAAeIQAAPiEAAF0hAAB5IQAAlSEAALMh AADPIQAADiIAAC0iAABSIgAAbiIAAJQiAAC4IgAA0iIAAPUiAAAYIwAAOiMAAF0jAACBIwAApSMA AMojAADjIwAAASQAAB8kAAA4JAAAUCQAAHUkAACRJAAAuyQAAOEkAAADJQAAJSUAAEclAABsJQAA pCUAAMclAADrJQAAFiYAAEUmAAB1JgAApCYAANEmAAD/JgAALScAAFonAACIJwAAtycAAOYnAAAT KAAAQCgAAG4oAACbKAAAzCgAAPsoAAApKQAAXCkAAJIpAADKKQAA+SkAACsqAABdKgAAoCoAAMsq AAD9KgAAPCsAAHorAAC6KwAA4isAAA0sAAA2LAAAWSwAAH0sAACqLAAAziwAAPQsAAAdLQAARi0A AGktAACPLQAAtS0AAN0tAAADLgAAKS4AAE8uAAB4LgAAnC4AAMAuAADkLgAABy8AAC4vAABSLwAA ei8AAJ4vAADHLwAA9C8AABwwAABFMAAAbTAAAJcwAADBMAAA5TAAAAAxAABLMQAAajEAAIMxAACV MQAArDEAAMQxAADdMQAA8jEAAAcyAAA1MgAASDIAAFsyAAB5MgAAtTIAAM4yAADgMgAA4TIAAOIy AAD1MgAA/DIAAP4yAABDMwAAVzMAALIzAADnMwAAUDQAAIw0AADrNAAAIjUAAIc1AADBNQAAIjYA AFo2AAC7NgAA8zYAAFI3AACJNwAA6jcAACI4AACJOAAAxDgAAB05AABROQAAujkAAPY5AABZOgAA kjoAAPM6AAArOwAAjjsAAMc7AAAmPAAAXTwAAMQ8AAD/PAAAYj0AAJs9AAAAPgAApkgAAKtJAACu SgAAsEsAALFMAAC1TQAAuU4AAL5PAADCUAAAxVEAAMpSAADbUgAAe1MAAI1TAACpUwAAu1MAAPZT AAAyVAAAblQAAKpUAAC6VAAA81QAAARVAAAgVQAAN1UAALhVAABNVgAAy1YAABZXAAAyVwAATlcA AGpXAACIWgAA51oAAJtbAABBXAAAoVwAAABdAABBXQAAUl0AAHxdAADcXQAA7F0AABReAACNXgAA k14AADNfAAA+XwAAS18AAGFfAAB9XwAA4V8AAPhgAAASYQAAPWEAAExhAACwYQAAyWIAAPBiAAAY YwAAQGMAAFBjAACyYwAADmQAAG1kAADPZAAA/2UAADFmAABaZgAAaGYAAMtmAAD9ZwAAMWgAAFxo AABraAAAz2gAAANqAAA5agAAZmoAAHZqAAApawAAz+8BAJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJoAAAAAAAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJoAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJoAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAA MAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAA AAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAA AACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACA AAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAA gJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgA AAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJgAAAAAMAAAAAAAAACAAAAAgJoAAAAA MAAAAAAAAACAAAAAgAAEAADN8wEA6wEAAAAEAAAlCAAAQgsAAIgOAABOEwAAaRcAAEMbAAD2HgAA 0yMAAMonAABALAAAjzEAAMQ1AAC7OgAAZkMAALlSAABBYAAAbWgAAC10AAASgAAAT4sAAM6VAACd oQAAY7gAAHTBAADlxwAAA84AACHUAAA/2gAAWOAAAHPmAACR7AAAjfIAAIX4AABe/gAAfAQBAJoK AQC4EAEA1hYBAOEcAQD/IgEAHSkBADsvAQBZNQEAdzsBAJVBAQCCRwEAoE0BAMVTAQDAWQEAqV8B ALVlAQCeawEATHEBAGh3AQAefQEAqoIBAGOIAQArjgEA7JMBAC+ZAQAsnwEAfKUBAJqrAQC4sQEA orcBABm9AQA3wwEAis8BADXiAQDF7gEAzfMBAOwBAADuAQAA7wEAAPABAADxAQAA8gEAAPMBAAD0 AQAA9QEAAPYBAAD3AQAA+AEAAPkBAAD6AQAA+wEAAPwBAAD9AQAA/gEAAP8BAAAAAgAAAQIAAAIC AAADAgAABAIAAAUCAAAGAgAABwIAAAgCAAAJAgAACgIAAAsCAAAMAgAADQIAAA4CAAAPAgAAEAIA ABECAAASAgAAEwIAABQCAAAVAgAAFgIAABcCAAAYAgAAGQIAABoCAAAbAgAAHAIAAB0CAAAeAgAA HwIAACACAAAhAgAAIgIAACMCAAAkAgAAJQIAACYCAAAnAgAAKAIAACkCAAAqAgAAKwIAACwCAAAt AgAALgIAAC8CAAAwAgAAMQIAADICAAAzAgAAAAQAAM3zAQDtAQAAAAAAAFAAAABYAAAAfAAAAIMA AACRAAAAmgAAALAAAAC8AAAAMwEAADUBAAA5AQAAOwEAAEkBAABPAQAAUwEAAFkBAABnAQAAagEA AKgBAACxAQAA8gEAAPQBAAA5AgAAPwIAAFgCAABfAgAAdAIAAHwCAACRAgAAmQIAAK4CAAC2AgAA ywIAANQCAADtAgAA8wIAAAwDAAAWAwAALwMAADUDAADeAwAA5gMAAPoDAAAABAAAFQQAAB0EAAAy BAAANgQAAEsEAABQBAAAZQQAAGoEAAB/BAAAhQQAALQEAAC6BAAAzwQAANoEAAAJBQAADwUAACQF AAAqBQAAPwUAAEUFAABaBQAAYAUAAHUFAAB8BQAAkQUAAJcFAACsBQAAtAUAAMgFAADOBQAAGQYA AB8GAAA0BgAAOgYAAE4GAABYBgAAbQYAAHcGAACMBgAAkgYAAKcGAACtBgAAwgYAAM0GAADiBgAA 6QYAAP4GAAAEBwAAGQcAAB8HAAA0BwAAOgcAAE8HAABWBwAAawcAAHEHAACGBwAAjwcAAKMHAACr BwAAwAcAAMcHAADcBwAA5AcAAPkHAAAACAAAHQgAACUIAAA5CAAAPwgAAHwIAACBCAAAlggAAJ0I AAC5CAAAvggAANMIAADeCAAA8wgAAPsIAAAQCQAAGwkAADAJAAA5CQAATgkAAFUJAABpCQAAcAkA AIUJAACNCQAAogkAAKsJAAC/CQAAxgkAAPUJAAD5CQAADgoAABoKAAA0CgAAQAoAAEwKAABZCgAA YwoAAGsKAAB1CgAAhwoAAJEKAACZCgAApgoAAK0KAADCCgAAzgoAAAULAAAHCwAAfAsAAIMLAACk CwAArAsAAM0LAADVCwAA9gsAAAAMAAAhDAAAKQwAAEIMAABFDAAAlg0AAJgNAACpDQAArw0AALwN AADCDQAA0A0AANkNAADwDQAA+Q0AABEOAAAfDgAAYQ4AAGoOAADyDgAA+g4AAA8PAAAUDwAAGQ8A ACEPAAA1DwAAOg8AAD8PAABGDwAAjA8AAJMPAACoDwAArQ8AAMIPAADKDwAA6A8AAPEPAAAPEAAA GBAAACwQAAA0EAAASRAAAFIQAABnEAAAbxAAAJEQAACYEAAAsBAAALYQAADYEAAA3hAAAPYQAAD8 EAAAHhEAACURAAA9EQAAQxEAAGERAABmEQAA0REAANcRAADlEQAA6xEAAO8RAAD1EQAA+REAAP8R AAAVEgAAHRIAADoSAABAEgAAXhIAAGUSAACDEgAAihIAAJ8SAAClEgAAwxIAAMkSAADnEgAA7BIA AAoTAAAQEwAALhMAADgTAABWEwAAYRMAAHYTAACAEwAAnhMAAKQTAADCEwAAyRMAAOcTAADtEwAA CxQAABMUAABRFAAAVxQAAGwUAAB0FAAAkhQAAJ0UAADDFAAAxxQAANsUAADhFAAA9RQAAP0UAAAS FQAAGhUAAC8VAAA5FQAAThUAAFYVAABrFQAAcxUAAJEVAACZFQAAtxUAAL8VAADYFQAA3xUAAP0V AAADFgAAIRYAACcWAAA8FgAAQhYAAGAWAABmFgAAgxYAAIwWAAChFgAApxYAAMUWAADPFgAA7xYA APkWAAAPFwAAHRcAADMXAAA8FwAAUBcAAFYXAADAFwAAxxcAAOgXAADxFwAACRgAABAYAAAwGAAA NhgAADoYAABAGAAAThgAAFUYAABZGAAAXxgAAG0YAAB1GAAAqBgAAKoYAAC9GAAAyRgAANUYAADi GAAA7BgAAPQYAAACGQAAChkAABkZAAAhGQAAKxkAADgZAABGGQAAThkAAFgZAABpGQAAcxkAAIEZ AACLGQAAmBkAAKIZAACqGQAAtRkAAMYZAADKGQAA2BkAAOUZAADoGQAA/RkAAAkaAAADGwAABhsA ALgcAAC8HAAA0BwAANQcAADYHAAA3BwAAPIcAAD1HAAAAx0AAAkdAAAOHQAAEB0AACkdAAArHQAA Sh0AAEwdAACHHQAAjR0AAJodAACgHQAAxx0AAMwdAAAJHgAACx4AAIoeAACQHgAAmR4AAJ8eAADN HgAA1R4AANoeAADjHgAAER8AABcfAABQHwAAWB8AAHYfAAB+HwAAkx8AAJsfAAC5HwAAwh8AAOAf AADoHwAABiAAAAwgAAAhIAAAKCAAAEYgAABOIAAAbCAAAHIgAACKIAAAkCAAALIgAAC4IAAA2iAA AOQgAAAGIQAADSEAAC8hAAA2IQAATyEAAFUhAABqIQAAciEAAIYhAACOIQAAoiEAAKshAADAIQAA yCEAAOAhAADjIQAA9CEAAP0hAAAbIgAAJSIAADoiAABBIgAAXyIAAGYiAAB7IgAAgyIAAKEiAACn IgAAxSIAAMoiAADfIgAA5CIAAAIjAAAHIwAAJSMAACkjAABqIwAAcCMAAI4jAACUIwAAsiMAALkj AADwIwAA+SMAAA4kAAAXJAAARSQAAEkkAABdJAAAZCQAAIIkAACJJAAAniQAAKokAADIJAAA0SQA AO4kAAD7JAAAECUAAB4lAAAyJQAAQCUAAFQlAABbJQAAgSUAAIclAACxJQAAtiUAANQlAADbJQAA ACYAAAUmAAAnJgAALSYAAFYmAABdJgAAhiYAAIwmAADiJgAA5yYAABAnAAAVJwAAPicAAEInAACZ JwAAnycAAMgnAADOJwAA9ycAAPsnAAAkKAAAKCgAAH8oAACDKAAArCgAALQoAADdKAAA4ygAAAwp AAARKQAAOikAAEMpAABtKQAAeikAAKMpAACxKQAA2ykAAOEpAAAKKgAAEyoAADwqAABFKgAAaioA AHUqAACFKgAAjSoAAJEqAACZKgAArCoAALEqAAD2KgAA+yoAAMcrAADPKwAA1CsAANsrAABDLAAA SCwAAGYsAABsLAAAkiwAAJosAAC3LAAAvSwAANssAADjLAAAAS0AAAwtAAAyLQAANi0AAFMtAABZ LQAAdi0AAH4tAACcLQAApC0AAMItAADMLQAA6i0AAPItAAAQLgAAGC4AADYuAAA+LgAAYC4AAGcu AACFLgAAiy4AAKkuAACvLgAAzS4AANMuAADxLgAA9y4AABQvAAAdLwAAOy8AAEEvAABfLwAAaS8A AIcvAACNLwAArS8AALcvAADWLwAA5C8AAAMwAAAMMAAAXTEAAGkxAAB1MQAAgjEAAIwxAACUMQAA njEAAKsxAAC1MQAAwzEAAM0xAADcMQAA6TEAAPExAAAAMgAABjIAABEyAAAiMgAAJjIAADQyAAA+ MgAARzIAAGwyAAB4MgAArzIAALEyAADAMgAAzTIAANcyAADfMgAAAzMAAAczAAALMwAADzMAABwz AAAfMwAAKTMAAC4zAAAvMwAAMjMAAEAzAABCMwAAUDMAAFYzAABdMwAAYTMAAGYzAABqMwAAnTMA AKMzAACnMwAAsTMAAOAzAADmMwAA7TMAAPEzAAD2MwAA+jMAADQ0AAA6NAAAPjQAAE80AACFNAAA izQAAJI0AACWNAAAmzQAAJ80AADSNAAA2jQAAN40AADqNAAAGTUAACE1AAAoNQAALDUAADE1AAA1 NQAAaDUAAHM1AAB3NQAAhjUAALU1AADANQAAxzUAAMs1AADQNQAA1DUAAAc2AAAQNgAAFDYAACE2 AABQNgAAWTYAAGA2AABkNgAAaTYAAG02AACgNgAAqTYAAK02AAC6NgAA6TYAAPI2AAD5NgAA/TYA AAI3AAAGNwAAOTcAAEE3AABFNwAAUTcAAIA3AACINwAAjzcAAJM3AACYNwAAnDcAACg4AAAsOAAA MTgAADU4AABoOAAAdDgAAHg4AACIOAAAtzgAAMM4AADKOAAAzjgAANM4AADXOAAACjkAAA85AAAT OQAAHDkAAEs5AABQOQAAVzkAAFs5AABgOQAAZDkAAJc5AACkOQAAqDkAALk5AADoOQAA9TkAAPw5 AAAAOgAABToAAAk6AAA8OgAARjoAAEo6AABYOgAAhzoAAJE6AACYOgAAnDoAAKE6AAClOgAA2DoA AOE6AADlOgAA8joAACE7AAAqOwAAMTsAADU7AAA6OwAAPjsAAHE7AAB7OwAAfzsAAI07AAC8OwAA xjsAAM07AADROwAA1jsAANo7AAANPAAAFTwAABk8AAAlPAAAVDwAAFw8AABjPAAAZzwAAGw8AABw PAAAqTwAAK88AACzPAAAwzwAAPg8AAD+PAAABT0AAAk9AAAOPQAAEj0AAEU9AABPPQAAUz0AAGE9 AACQPQAAmj0AAKE9AAClPQAAqj0AAK49AADhPQAA7D0AAPA9AAD/PQAALj4AADk+AABAPgAARD4A AEk+AABNPgAAgD4AAIk+AACNPgAAmj4AAMk+AADSPgAA2T4AAN0+AADiPgAA5j4AABk/AAAgPwAA JD8AAC8/AABePwAAZT8AAGw/AABwPwAAdT8AAHk/AACsPwAAtT8AALk/AADGPwAA9T8AAP4/AAAF QAAACUAAAA5AAAASQAAARUAAAE5AAABSQAAAX0AAAI5AAACXQAAAnkAAAKJAAACnQAAAq0AAAN5A AADpQAAA7UAAAPxAAAArQQAANkEAAD1BAABBQQAARkEAAEpBAAB9QQAAh0EAAItBAACZQQAAyEEA ANJBAADZQQAA3UEAAOJBAADmQQAAGUIAACNCAAAnQgAANUIAAGRCAABuQgAAdUIAAHlCAAB+QgAA gkIAALVCAAC9QgAAwUIAAM1CAAD8QgAABEMAAAtDAAAPQwAAFEMAABhDAABLQwAAVkMAAFpDAABp QwAAmEMAAKNDAAClQwAAp0MAAKtDAAC2QwAAuEMAALpDAAC7QwAAvUMAAL5DAADJQwAAy0MAANFD AADZQwAA30MAAOBDAADoQwAA6UMAAPRDAAD2QwAA/0MAAABEAAAJRAAACkQAABJEAAAdRAAAKUQA ACpEAAAvRAAAMUQAAD5EAAA/RAAASUQAAEpEAABTRAAAVEQAAF5EAABfRAAAZ0QAAG9EAAB1RAAA dkQAAIBEAACBRAAAjEQAAI1EAACWRAAAl0QAAJ5EAACfRAAAqEQAAKpEAACzRAAAtEQAAL9EAADB RAAAy0QAAMxEAADWRAAA10QAAN9EAADgRAAA60QAAO5EAAD0RAAA9UQAAABFAAACRQAABEUAADJF AAA4RQAAOUUAAD9FAABARQAARkUAAEdFAABNRQAATkUAAFRFAABVRQAAXEUAAF1FAABjRQAAa0UA AHFFAABzRQAAe0UAAHxFAACDRQAAhEUAAIpFAACLRQAAkUUAAJJFAACZRQAAmkUAAKBFAAChRQAA qUUAAKpFAACxRQAAs0UAALhFAAC5RQAAwEUAAMFFAADFRQAAxkUAAMtFAADMRQAA0UUAAOBFAADq RQAA60UAAPVFAAD2RQAA/kUAAP9FAAAKRgAAQEYAAERGAABZRgAAX0YAAGdGAABtRgAAbkYAAHZG AAB3RgAAgkYAAIRGAACNRgAAjkYAAJdGAACYRgAAoEYAAKtGAAC3RgAAuEYAAL1GAAC/RgAAzEYA AM1GAADXRgAA2EYAAOFGAADiRgAA7EYAAO1GAAD1RgAA/UYAAANHAAAERwAADkcAAA9HAAAaRwAA G0cAACRHAAAlRwAALEcAAC1HAAA2RwAAOEcAAEFHAABCRwAATUcAAJxHAACgRwAAt0cAAOBHAAD1 RwAAHkgAAIVIAACJSAAAmEgAAKVIAAC8SAAA5UgAAPpIAAAjSQAAikkAAI5JAACdSQAAqkkAAMFJ AADqSQAA/0kAAChKAACPSgAAk0oAAKJKAACtSgAAxEoAAO1KAAACSwAAK0sAAJJLAACWSwAApUsA AK9LAADGSwAA70sAAARMAAAtTAAAlEwAAJhMAACnTAAAsEwAAMdMAADwTAAABU0AAC5NAACVTQAA mU0AAKhNAAC0TQAAy00AAPRNAAAJTgAAMk4AAJlOAACdTgAArE4AALhOAADPTgAA+E4AAA1PAAA2 TwAAnU8AAKFPAACwTwAAvU8AANRPAAD9TwAAElAAADtQAACiUAAAplAAALVQAADBUAAA2FAAAAFR AAAWUQAAP1EAAKZRAACqUQAA21EAAARSAAAZUgAAQlIAAKlSAACtUgAAvFIAAMlSAADLUgAAzVIA ANFSAADaUgAA3FIAAN5SAADjUgAA7FIAAO1SAAD6UgAA+1IAAAhTAAAJUwAAFFMAABVTAAAfUwAA IFMAAClTAAArUwAAN1MAADhTAABEUwAARVMAAFJTAABTUwAAX1MAAG1TAAB6UwAAfFMAAIJTAACD UwAAjFMAAOFTAADlUwAA7VMAAPVTAAAcVAAAIFQAAFhUAABcVAAAZFQAAG1UAACUVAAAmFQAAKBU AACpVAAAq1QAAK1UAACxVAAAuVQAALtUAAC9VAAAwlQAAMpUAADLVAAA01QAAN5UAADnVAAA6FQA APFUAAD0VAAA+lQAAPtUAAADVQAALlUAADZVAABmVQAAalUAAHpVAACjVQAArVUAALdVAAC5VQAA w1UAAA1WAAAQVgAAM1YAADZWAAB8VgAAgFYAAJBWAAC5VgAAw1YAAMpWAADWVgAA3lYAAOBWAADq VgAA61YAAPJWAAD6VgAAAlcAAAZXAAAUVwAAp1cAAK1XAACZWAAAtVgAALhYAAC7WAAAxFgAAOBY AAAhWQAARVkAAG9aAAB1WgAAeFoAAHtaAADFWgAAy1oAAOBaAADmWgAAJFsAACpbAABKWwAAc1sA AIJbAACIWwAAi1sAAI5bAADYWwAA3lsAAPtbAAAXXAAAJlwAAC5cAAAxXAAANFwAAIFcAACHXAAA l1wAAKBcAADhXAAA51wAAPdcAAD/XAAAAV0AAAldAABCXQAARF0AAEhdAABRXQAAU10AAFVdAABe XQAAcV0AAHJdAAB7XQAAvF0AAMJdAADSXQAA210AAN1dAADfXQAA410AAOtdAADtXQAA710AAPhd AAAKXgAAC14AABNeAABRXgAAV14AAHJeAAB6XgAAfV4AAIBeAADFXgAAyV4AAMpeAADQXgAA0V4A ANdeAADYXgAA3l4AAN9eAADnXgAA6F4AAPFeAADzXgAA+14AAP1eAAAGXwAAB18AAA9fAAAWXwAA GV8AAB1fAAAyXwAANF8AADZfAAA6XwAAPV8AAD9fAABBXwAAQl8AAEZfAABHXwAASl8AAExfAABO XwAAT18AAFNfAAC9XwAAw18AANZfAADgXwAAE2AAABtgAAAdYAAAJ2AAADBgAAA5YAAAR2AAAFBg AABUYAAAWGAAAGNgAABrYAAAeWAAAIFgAACFYAAAiWAAAKZgAACqYAAAymAAAM5gAADrYAAA72AA APRgAAD3YAAA+2AAAANhAAAGYQAAEWEAACRhAAAvYQAANWEAADxhAACMYQAAkmEAAKRhAACvYQAA 4mEAAOthAADtYQAA+GEAAAFiAAAKYgAAGGIAACFiAAAlYgAAKWIAADRiAAA8YgAASmIAAFJiAABW YgAAWmIAAHdiAAB7YgAAm2IAAJ9iAAC8YgAAwGIAAMViAADIYgAAzGIAANViAADWYgAA4mIAAONi AADvYgAAAmMAAA5jAAAPYwAAF2MAACpjAAA2YwAAN2MAAD9jAABJYwAAT2MAAJBjAACWYwAAqGMA ALFjAADyYwAA+GMAAAhkAAANZAAATmQAAFRkAABkZAAAbGQAAK1kAACzZAAAyWQAAM5kAAABZQAA CGUAAAplAAATZQAAFGUAABllAAAaZQAAImUAACllAAAuZQAAN2UAAEBlAABOZQAAV2UAAFtlAABf ZQAAamUAAHJlAACAZQAAiGUAAIxlAACQZQAArWUAALFlAADRZQAA1WUAAPJlAAD2ZQAA+2UAAP5l AAACZgAACWYAACZmAAAwZgAAQ2YAAE1mAABOZgAAWWYAAGNmAABnZgAAqGYAAK5mAADAZgAAymYA AP1mAAAFZwAAB2cAABFnAAASZwAAF2cAABhnAAAgZwAAJ2cAACxnAAA1ZwAAPmcAAExnAABVZwAA WWcAAF1nAABoZwAAcGcAAH5nAACGZwAAimcAAI5nAACrZwAAr2cAAM9nAADTZwAA8GcAAPRnAAD5 ZwAA/GcAAABoAAAIaAAAJWgAADBoAABDaAAATmgAAE9oAABbaAAAq2gAALFoAADDaAAAzmgAAAFp AAAKaQAADGkAABdpAAAYaQAAHWkAAB5pAAAmaQAALWkAADJpAAA7aQAARGkAAFJpAABbaQAAX2kA AGNpAABuaQAAdmkAAIRpAACMaQAAkGkAAJRpAACxaQAAtWkAANVpAADZaQAA9mkAAPppAAD/aQAA AmoAAAZqAAAPagAALGoAADhqAABLagAAV2oAAFhqAABlagAAb2oAAHVqAACzagAAuWoAAA5rAAAW awAAGWsAABxrAABpawAAb2sAAH9rAACFawAAxmsAAMxrAADiawAA6GsAAClsAAAvbAAAP2wAAExs AACNbAAAk2wAAKhsAACvbAAA8GwAAPZsAAAIbQAAEm0AAEVtAABNbQAAT20AAFltAABabQAAX20A AGBtAABobQAAb20AAHRtAAB9bQAAhm0AAJRtAACdbQAAoW0AAKVtAACwbQAAuG0AAMZtAADObQAA 0m0AANZtAADzbQAA920AABduAAAbbgAAOG4AADxuAABBbgAARG4AAEhuAABQbgAAbW4AAHhuAACL bgAAlm4AAJduAACjbgAA824AAPluAAAJbwAAE28AAFRvAABabwAAam8AAHBvAACxbwAAt28AAMdv AADPbwAAEHAAABZwAAAmcAAALHAAAG1wAABzcAAAg3AAAIpwAADLcAAA0XAAAOFwAADpcAAA63AA APNwAAA9cQAAQHEAAFFxAABUcQAAaHEAAHBxAAC6cQAAvXEAAM5xAADRcQAA5XEAAO1xAAA3cgAA OnIAAEtyAABOcgAAYnIAAGpyAAC0cgAAt3IAAMhyAADLcgAA33IAAOdyAAAxcwAANHMAAEVzAABI cwAAXHMAAGRzAACucwAAsXMAAMJzAADFcwAA2XMAAOFzAAArdAAALnQAAD90AABCdAAAVnQAAF50 AACodAAAq3QAALx0AAC/dAAAEnUAABh1AAAodQAAMHUAAHF1AAB3dQAAh3UAAI91AADQdQAA1nUA AOZ1AADudQAAL3YAADV2AABFdgAATnYAAI92AACVdgAAqnYAAK92AADwdgAA9nYAAAZ3AAAOdwAA T3cAAFV3AABldwAAa3cAAKx3AACydwAAwncAAMp3AAALeAAAEXgAACF4AAApeAAAangAAHB4AACA eAAAingAAMt4AADReAAALXkAADN5AABDeQAATXkAAI55AACUeQAApHkAAKt5AADseQAA8nkAAAJ6 AAAIegAASXoAAE96AABfegAAanoAAKt6AACxegAAwXoAAMd6AAAIewAADnsAAB57AAAjewAAZHsA AGp7AAB6ewAAgHsAAIJ7AACIewAA0nsAANV7AAD4ewAA+3sAABN8AAAZfAAAY3wAAGZ8AACJfAAA jHwAAKR8AACqfAAA9HwAAPd8AAAafQAAHX0AAHR9AAB6fQAAin0AAJJ9AADTfQAA2X0AAOl9AADv fQAAMH4AADZ+AABGfgAATn4AAI9+AACVfgAApX4AAK5+AADvfgAA9X4AAAV/AAANfwAATn8AAFR/ AABkfwAAbn8AAK9/AAC1fwAAxX8AAM5/AAAPgAAAFYAAACuAAAAygAAAc4AAAHmAAACJgAAAkYAA ANKAAADYgAAA6IAAAPCAAAAxgQAAN4EAAJGBAACXgQAAroEAALSBAAD1gQAA+4EAAA2CAAAWggAA SYIAAFCCAABSggAAW4IAAFyCAABhggAAYoIAAGqCAABxggAAdoIAAH+CAACIggAAloIAAJ+CAACj ggAAp4IAALKCAAC6ggAAyIIAANCCAADUggAA2IIAAPWCAAD5ggAAGYMAAB2DAAA6gwAAPoMAAEOD AABGgwAASoMAAFGDAABugwAAeIMAAIuDAACVgwAAloMAAKGDAADtgwAA84MAAAaEAAARhAAAUoQA AFiEAABohAAAb4QAALCEAAC2hAAAxoQAANOEAAAUhQAAGoUAACqFAAAxhQAAcoUAAHiFAACIhQAA j4UAANCFAADWhQAA5oUAAPGFAAAyhgAAOIYAAEqGAABVhgAAWYYAAGSGAACshgAAt4YAAP+GAAAK hwAAUocAAF2HAAClhwAAsIcAAPiHAAADiAAAS4gAAFaIAACeiAAAqYgAAPGIAAD8iAAARIkAAE+J AACXiQAAookAAOqJAAD1iQAAPYoAAEiKAACQigAAm4oAAOOKAADuigAANosAAEGLAACJiwAAlIsA ANyLAADniwAAL4wAADqMAACCjAAAjYwAANaMAADhjAAAKo0AADWNAAB+jQAAiY0AAAGOAAAKjgAA DI4AABeOAAAYjgAAHY4AAB6OAAAmjgAALY4AADKOAAA7jgAARI4AAFKOAABbjgAAX44AAGOOAABu jgAAdo4AAISOAACMjgAAkI4AAJSOAACxjgAAtY4AANWOAADZjgAA9o4AAPqOAAD/jgAAAo8AANW3 AQB2vwEAiL8BAJK/AQCkvwEArr8BAMe/AQAAwAEAAsABAIDEAQCSxAEAo8QBAKbEAQC3xAEAu8QB AM3EAQDQxAEA48QBACjFAQA6xQEAhMUBAJTFAQCYxQEAqcUBAKzFAQC/xQEAw8UBANjFAQDbxQEA 7cUBAAbGAQAWxgEAL8YBAEDGAQBYxgEAacYBAInGAQCRxgEAissBAJLLAQCaywEAm8sBAKTLAQCl ywEAq8sBALLLAQC4ywEAucsBAMbLAQDMywEA08sBANXLAQDfywEA4MsBAObLAQDnywEA78sBAPDL AQD2ywEA98sBAP7LAQD/ywEAB8wBAAjMAQAQzAEAEcwBABnMAQAbzAEAIcwBACLMAQAqzAEAK8wB ADDMAQA3zAEAPMwBAD3MAQBGzAEATMwBAFHMAQBSzAEAWswBAFvMAQBhzAEAY8wBAGvMAQBszAEA dMwBAHXMAQB/zAEAjMwBAJbMAQCXzAEAn8wBAKDMAQCnzAEAqMwBAK7MAQCwzAEAu8wBALzMAQDC zAEAw8wBAMjMAQCXzgEAmM4BAJrOAQC5zgEAu84BAM3OAQDPzgEADM8BAA/PAQDwzwEA888BAAfQ AQAJ0AEAEtABABTQAQB+0AEAhNABAKTQAQCq0AEA9dABAAPRAQAP0QEAFdEBACjRAQAq0QEAP9EB AEXRAQBK0QEAVtEBAFvRAQBh0QEAaNEBAHPRAQB10QEAkdEBAJ3RAQC50QEAvdEBAMnRAQDL0QEA ztEBAELSAQBe0gEAYdIBAGTSAQBt0gEAidIBALPSAQC60gEAbdMBAHPTAQB10wEAldMBAO7TAQD1 0wEA99MBABnUAQAd1AEAJNQBACjUAQAr1AEAL9QBADXUAQA61AEAQ9QBAEXUAQBu1AEA9tQBAPzU AQAP1QEAFdUBAEzVAQBS1QEAZdUBAGvVAQCi1QEAqNUBAGzcAQCi3AEAqNwBALvcAQDD3AEA+twB AADdAQAT3QEAG90BAFLdAQBY3QEAa90BAHbdAQCt3QEAs90BAMbdAQDM3QEAzt0BANTdAQAs3gEA Mt4BADbeAQA83gEAlN4BAJreAQCe3gEApN4BAMzeAQDO3gEA+d4BAP/eAQDY3wEA2d8BANzfAQDe 3wEA598BAOnfAQDq3wEA8d8BAPLfAQD/3wEAAOABAAvgAQAM4AEAFOABABXgAQAe4AEAIOABACzg AQAu4AEAOeABADrgAQBE4AEAReABAE3gAQBP4AEAWuABAFvgAQBk4AEAZeABAG/gAQBx4AEAfOAB AH3gAQCJ4AEAiuABAJXgAQCX4AEAoeABAKLgAQCt4AEAruABALngAQC74AEAxeABAMbgAQDO4AEA z+ABANngAQDa4AEA4+ABAOTgAQDu4AEA7+ABAPbgAQD34AEA/+ABAAHhAQAJ4QEACuEBABLhAQAT 4QEAHeEBAB7hAQAo4QEAKeEBADPhAQA04QEAPeEBAD7hAQBH4QEASOEBAFPhAQBU4QEAXeEBAF7h AQBo4QEAauEBAHLhAQBz4QEAfeEBAH7hAQCG4QEAh+EBAJDhAQCR4QEAnuEBAJ/hAQCq4QEArOEB ALfhAQC44QEAwuEBAMPhAQDM4QEAzeEBANjhAQDZ4QEA5eEBAObhAQDv4QEA8OEBAPzhAQD94QEA BuIBAAjiAQAS4gEAG+IBACHiAQAi4gEAKeIBADfiAQA74gEAQOIBAETiAQDQ4gEA0+IBAPDiAQD4 4gEA/eIBAArjAQAO4wEAHuMBAK7jAQCx4wEAzuMBANbjAQDa4wEA5+MBAPXjAQD54wEA/uMBAALk AQBG5AEAfewBAIrsAQCO7AEAk+wBAJfsAQAj7QEAJu0BAEPtAQBL7QEAUO0BAFrtAQBe7QEAa+0B APvtAQD+7QEAG+4BACPuAQAn7gEAMe4BAFfuAQBg7gEAbe4BAHHuAQB37gEAe+4BAHzuAQB/7gEA hu4BAInuAQDP7wEABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwAAwAHABwABwAcAAcAHAAHABwAAwAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAMABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAADAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwAAwAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHAAQABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwA BwAcAAcAHAAHABwABwAcAAcAHAAHAAMABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH ABwABwAcAAcAHAAHABwABwAcAAcAHAAHAP//AgAAAAwAUABhAHUAbAAgAFcAaQBlAGwAYQByAGQA CgBBADoAXABHAE4AVQAuAGQAbwBjAAAAAADL7wEAz+8BAAAAAAABAAAA/0ABgAEA2t8BANrfAQCM cCsDAQABANrfAQAAAAAAyd8BAAAAAAACEAAAAAAAAADN7wEAUAAACABAAAD//wEAAAAHAFUAbgBr AG4AbwB3AG4A//8BAAgAAAAAAAAAAAAAAP//AQAAAAAA//8AAAIA//8AAAAA//8AAAIA//8AAAAA BAAAAEcWkAEAAAICBgMFBAUCAwSHOgAAAAAAAAAAAAAAAAAA/wAAAAAAAABUAGkAbQBlAHMAIABO AGUAdwAgAFIAbwBtAGEAbgAAADUWkAECAAUFAQIBBwYCBQcAAAAAAAAAEAAAAAAAAAAAAAAAgAAA AABTAHkAbQBiAG8AbAAAADMmkAEAAAILBgQCAgICAgSHOgAAAAAAAAAAAAAAAAAA/wAAAAAAAABB AHIAaQBhAGwAAAA/NZABAAACBwMJAgIFAgQEhzoAAAAAAAAAAAAAAAAAAP8AAAAAAAAAQwBvAHUA cgBpAGUAcgAgAE4AZQB3AAAAIgAEADEIiBgA8NACAABoAQAAAADl20xm6ttMZgAAAAABAAQAAAC4 RwAA0ZgBADAA0QAAAAQAAxBoAwAAAAAAAAAAAAAwAAEAAAABAAAAAAAAANECAPAQAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAgHoAW0ALQAgYESMAAAAAAAAAAAAAAAAAAADvYBAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC AAAAYQIAAAAAADKDEQDwEAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//EgAAAAAA AAAWAEYAbwByACAAdABoAGUAIABjAG8AbgBmAGkAZwB1AHIAYQB0AGkAbwBuADoAAAAAAAAADABQ AGEAdQBsACAAVwBpAGUAbABhAHIAZAAMAFAAYQB1AGwAIABXAGkAZQBsAGEAcgBkAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAD+/wAABAoCAAAAAAAAAAAAAAAAAAAAAAABAAAA4IWf8vlPaBCrkQgAKyez2TAAAACI AQAAEQAAAAEAAACQAAAAAgAAAJgAAAADAAAAuAAAAAQAAADEAAAABQAAANwAAAAGAAAA6AAAAAcA AAD0AAAACAAAAAQBAAAJAAAAHAEAABIAAAAoAQAACgAAAEQBAAAMAAAAUAEAAA0AAABcAQAADgAA AGgBAAAPAAAAcAEAABAAAAB4AQAAEwAAAIABAAACAAAA5AQAAB4AAAAXAAAARm9yIHRoZSBjb25m aWd1cmF0aW9uOgAAHgAAAAEAAAAAb3IgHgAAAA0AAABQYXVsIFdpZWxhcmQAZ3VyHgAAAAEAAAAA YXVsHgAAAAEAAAAAYXVsHgAAAAcAAABOb3JtYWwAZR4AAAANAAAAUGF1bCBXaWVsYXJkAGd1ch4A AAACAAAAMQB1bB4AAAATAAAATWljcm9zb2Z0IFdvcmQgOS4wAG9AAAAAABgNjwAAAABAAAAAAKbi JE1wwAFAAAAAAASz101wwAEDAAAAMAAAAAMAAAC4RwAAAwAAANGYAQADAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA /v8AAAQKAgAAAAAAAAAAAAAAAAAAAAAAAQAAAALVzdWcLhsQk5cIACss+a4wAAAABAEAAAwAAAAB AAAAaAAAAA8AAABwAAAABQAAAIAAAAAGAAAAiAAAABEAAACQAAAAFwAAAJgAAAALAAAAoAAAABAA AACoAAAAEwAAALAAAAAWAAAAuAAAAA0AAADAAAAADAAAAOMAAAACAAAA5AQAAB4AAAAFAAAASG9t ZQAAIAADAAAAaAMAAAMAAADRAAAAAwAAAA72AQADAAAAoAoJAAsAAAAAAAAACwAAAAAAAAALAAAA AAAAAAsAAAAAAAAAHhAAAAEAAAAXAAAARm9yIHRoZSBjb25maWd1cmF0aW9uOgAMEAAAAgAAAB4A AAAGAAAAVGl0bGUAAwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAA AwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAAR AAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8A AAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAAAmAAAAJwAAACgAAAApAAAAKgAAACsAAAAsAAAALQAA AC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADoAAAA7AAAA PAAAAD0AAAA+AAAAPwAAAEAAAABBAAAAQgAAAEMAAABEAAAARQAAAEYAAABHAAAASAAAAEkAAABK AAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAUQAAAFIAAABTAAAAVAAAAFUAAABWAAAAVwAAAFgA AABZAAAAWgAAAFsAAABcAAAAXQAAAF4AAABfAAAAYAAAAGEAAABiAAAAYwAAAGQAAABlAAAAZgAA AGcAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB0AAAA dQAAAHYAAAB3AAAAeAAAAHkAAAB6AAAAewAAAHwAAAB9AAAAfgAAAH8AAACAAAAAgQAAAIIAAACD AAAAhAAAAIUAAACGAAAAhwAAAIgAAACJAAAAigAAAIsAAACMAAAAjQAAAI4AAACPAAAAkAAAAJEA AACSAAAAkwAAAJQAAACVAAAAlgAAAJcAAACYAAAAmQAAAJoAAACbAAAAnAAAAJ0AAACeAAAAnwAA AKAAAAChAAAAogAAAKMAAACkAAAApQAAAKYAAACnAAAAqAAAAKkAAACqAAAAqwAAAKwAAACtAAAA rgAAAK8AAACwAAAAsQAAALIAAACzAAAAtAAAALUAAAC2AAAAtwAAALgAAAC5AAAAugAAALsAAAC8 AAAAvQAAAL4AAAC/AAAAwAAAAMEAAADCAAAAwwAAAMQAAADFAAAAxgAAAMcAAADIAAAAyQAAAMoA AADLAAAAzAAAAM0AAADOAAAAzwAAANAAAADRAAAA0gAAANMAAADUAAAA1QAAANYAAADXAAAA2AAA ANkAAADaAAAA2wAAANwAAADdAAAA3gAAAN8AAADgAAAA4QAAAOIAAADjAAAA5AAAAOUAAADmAAAA 5wAAAOgAAADpAAAA6gAAAOsAAADsAAAA7QAAAO4AAADvAAAA8AAAAPEAAADyAAAA8wAAAPQAAAD1 AAAA9gAAAPcAAAD4AAAA+QAAAPoAAAD7AAAA/AAAAP0AAAD+AAAA/wAAAAABAAABAQAAAgEAAAMB AAAEAQAABQEAAAYBAAAHAQAACAEAAAkBAAAKAQAACwEAAAwBAAANAQAADgEAAA8BAAAQAQAAEQEA ABIBAAATAQAAFAEAABUBAAAWAQAAFwEAABgBAAAZAQAAGgEAABsBAAAcAQAAHQEAAB4BAAAfAQAA IAEAACEBAAAiAQAAIwEAACQBAAAlAQAAJgEAACcBAAAoAQAAKQEAACoBAAArAQAALAEAAC0BAAAu AQAALwEAADABAAAxAQAAMgEAADMBAAA0AQAANQEAADYBAAA3AQAAOAEAADkBAAA6AQAAOwEAADwB AAA9AQAAPgEAAD8BAABAAQAAQQEAAEIBAABDAQAARAEAAEUBAABGAQAARwEAAEgBAABJAQAASgEA AEsBAABMAQAATQEAAE4BAABPAQAAUAEAAFEBAABSAQAAUwEAAFQBAABVAQAAVgEAAFcBAABYAQAA WQEAAFoBAABbAQAAXAEAAF0BAABeAQAAXwEAAGABAABhAQAAYgEAAGMBAABkAQAAZQEAAGYBAABn AQAAaAEAAGkBAABqAQAAawEAAGwBAABtAQAAbgEAAG8BAABwAQAAcQEAAHIBAABzAQAAdAEAAHUB AAB2AQAAdwEAAHgBAAB5AQAAegEAAHsBAAB8AQAAfQEAAH4BAAB/AQAAgAEAAIEBAACCAQAAgwEA AIQBAACFAQAAhgEAAIcBAACIAQAAiQEAAIoBAACLAQAAjAEAAI0BAACOAQAAjwEAAJABAACRAQAA kgEAAJMBAACUAQAAlQEAAJYBAACXAQAAmAEAAJkBAACaAQAAmwEAAJwBAACdAQAAngEAAJ8BAACg AQAAoQEAAKIBAACjAQAApAEAAKUBAACmAQAApwEAAKgBAACpAQAAqgEAAKsBAACsAQAArQEAAK4B AACvAQAAsAEAALEBAACyAQAAswEAALQBAAC1AQAAtgEAALcBAAC4AQAAuQEAALoBAAC7AQAAvAEA AL0BAAC+AQAAvwEAAMABAADBAQAAwgEAAMMBAADEAQAAxQEAAMYBAADHAQAAyAEAAMkBAADKAQAA ywEAAMwBAADNAQAAzgEAAM8BAADQAQAA0QEAANIBAADTAQAA1AEAANUBAADWAQAA1wEAANgBAADZ AQAA2gEAANsBAADcAQAA3QEAAN4BAADfAQAA4AEAAOEBAADiAQAA4wEAAOQBAADlAQAA5gEAAOcB AADoAQAA6QEAAOoBAADrAQAA7AEAAO0BAADuAQAA7wEAAPABAADxAQAA8gEAAPMBAAD0AQAA9QEA APYBAAD3AQAA+AEAAPkBAAD6AQAA+wEAAPwBAAD9AQAA/gEAAP8BAAAAAgAAAQIAAAICAAADAgAA BAIAAAUCAAAGAgAABwIAAAgCAAAJAgAACgIAAAsCAAAMAgAADQIAAA4CAAAPAgAAEAIAABECAAAS AgAAEwIAABQCAAAVAgAAFgIAABcCAAAYAgAAGQIAABoCAAAbAgAAHAIAAB0CAAAeAgAAHwIAACAC AAAhAgAAIgIAACMCAAAkAgAAJQIAACYCAAAnAgAAKAIAACkCAAAqAgAAKwIAACwCAAAtAgAALgIA AC8CAAAwAgAAMQIAADICAAAzAgAANAIAAP7///82AgAANwIAADgCAAA5AgAAOgIAADsCAAA8AgAA PQIAAD4CAAA/AgAAQAIAAEECAABCAgAAQwIAAEQCAABFAgAARgIAAEcCAABIAgAASQIAAEoCAABL AgAATAIAAE0CAABOAgAATwIAAFACAABRAgAAUgIAAFMCAABUAgAAVQIAAFYCAABXAgAAWAIAAFkC AABaAgAAWwIAAFwCAABdAgAAXgIAAF8CAABgAgAAYQIAAGICAABjAgAAZAIAAGUCAABmAgAAZwIA AGgCAABpAgAA/v///2sCAABsAgAAbQIAAG4CAABvAgAAcAIAAHECAAD+////cwIAAHQCAAB1AgAA dgIAAHcCAAB4AgAAeQIAAP7////9/////f////3////9/////f////3///+BAgAA/v////7////+ //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4A dAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUB//// //////8DAAAABgkCAAAAAADAAAAAAAAARgAAAAAAAAAAAAAAAIBJW+JNcMABgwIAAIAAAAAAAAAA MQBUAGEAYgBsAGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAA4AAgD///////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAA1AgAAWWkAAAAAAABXAG8AcgBkAEQAbwBjAHUAbQBlAG4AdAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAGgACAQUAAAD//////////wAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAiaAQAAAAAAAUAUwB1AG0AbQBhAHIAeQBJAG4AZgBvAHIAbQBh AHQAaQBvAG4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAIBAgAAAAQAAAD/////AAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagIAAAAQAAAAAAAABQBEAG8AYwB1AG0AZQBu AHQAUwB1AG0AbQBhAHIAeQBJAG4AZgBvAHIAbQBhAHQAaQBvAG4AAAAAAAAAAAAAADgAAgH///// //////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByAgAAABAAAAAAAAAB AEMAbwBtAHAATwBiAGoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAEgACAQEAAAAGAAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAABqAAAAAAAAAE8AYgBqAGUAYwB0AFAAbwBvAGwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAWAAEA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAACA SVviTXDAAYBJW+JNcMABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////8AAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA/v////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////wEA/v8DCgAA/////wYJAgAA AAAAwAAAAAAAAEYYAAAATWljcm9zb2Z0IFdvcmQgRG9jdW1lbnQACgAAAE1TV29yZERvYwAQAAAA V29yZC5Eb2N1bWVudC44APQ5snEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA >>From johnspooner@earthlink.net Wed Dec 27 18:46:00 2000 From: johnspooner@earthlink.net To: gcc-gnats@gcc.gnu.org Subject: c++/1519: compiler error while building qt program under rh7.0 Date: Wed, 27 Dec 2000 18:46:00 -0000 Message-id: <20001228023741.30816.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01341.html Content-length: 321052 >Number: 1519 >Category: c++ >Synopsis: compiler error while building qt program under rh7.0 >Confidential: no >Severity: critical >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Wed Dec 27 18:46:01 PST 2000 >Closed-Date: >Last-Modified: >Originator: John Spooner >Release: 2.96 20000731 Red Hat 7.0 >Organization: >Environment: Red Hat 7. (Digital Hi Note Pentium ii laptop) >Description: I cannot build the program when adding a slot and including the .moc fle internal error 20000116 at class.c line 5102 >How-To-Repeat: g++ -save-temps -lqt -slots.cpp -o slots >Fix: chuck gcc and use java >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="slots.ii" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="slots.ii" IyAxICJzbG90cy5jcHAiCgojIDIgInNsb3RzLmgiIDEKIyAyNiAiL3Vzci9pbmNsdWRlL3N0ZGxp Yi5oIiAxIDMKIyAyODMgIi91c3IvaW5jbHVkZS9mZWF0dXJlcy5oIiAxIDMKIyAzMTEgIi91c3Iv aW5jbHVkZS9mZWF0dXJlcy5oIiAzCiMgMjYgIi91c3IvaW5jbHVkZS9zdGRsaWIuaCIgMiAzCiMg MzQgIi91c3IvaW5jbHVkZS9zdGRsaWIuaCIgMwojIDE5OSAiL3Vzci9saWIvZ2NjLWxpYi9pMzg2 LXJlZGhhdC1saW51eC8yLjk2L2luY2x1ZGUvc3RkZGVmLmgiIDEgMwp0eXBlZGVmIHVuc2lnbmVk IGludCBzaXplX3Q7CiMgMzQgIi91c3IvaW5jbHVkZS9zdGRsaWIuaCIgMiAzCgpleHRlcm4gIkMi IHsKCiMgOTQgIi91c3IvaW5jbHVkZS9zdGRsaWIuaCIgMwp0eXBlZGVmIHN0cnVjdAogIHsKICAg IGludCBxdW90OwogICAgaW50IHJlbTsKICB9IGRpdl90OwoKCgp0eXBlZGVmIHN0cnVjdAogIHsK ICAgIGxvbmcgaW50IHF1b3Q7CiAgICBsb25nIGludCByZW07CiAgfSBsZGl2X3Q7CiMgMTMzICIv dXNyL2luY2x1ZGUvc3RkbGliLmgiIDMKZXh0ZXJuIHNpemVfdCBfX2N0eXBlX2dldF9tYl9jdXJf bWF4ICh2b2lkKSB0aHJvdyAoKTsKCgoKZXh0ZXJuIGRvdWJsZSBhdG9mIChfX2NvbnN0IGNoYXIg Kl9fbnB0cikgdGhyb3cgKCkgX19hdHRyaWJ1dGVfXyAoKF9fcHVyZV9fKSk7CgpleHRlcm4gaW50 IGF0b2kgKF9fY29uc3QgY2hhciAqX19ucHRyKSB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19w dXJlX18pKTsKCmV4dGVybiBsb25nIGludCBhdG9sIChfX2NvbnN0IGNoYXIgKl9fbnB0cikgdGhy b3cgKCkgX19hdHRyaWJ1dGVfXyAoKF9fcHVyZV9fKSk7CgoKCl9fZXh0ZW5zaW9uX18gZXh0ZXJu IGxvbmcgbG9uZyBpbnQgYXRvbGwgKF9fY29uc3QgY2hhciAqX19ucHRyKQogICAgIHRocm93ICgp IF9fYXR0cmlidXRlX18gKChfX3B1cmVfXykpOwoKCgpleHRlcm4gZG91YmxlIHN0cnRvZCAoX19j b25zdCBjaGFyICpfX3Jlc3RyaWN0IF9fbnB0ciwKICAgICAgICAgICAgICAgICAgICAgIGNoYXIg KipfX3Jlc3RyaWN0IF9fZW5kcHRyKSB0aHJvdyAoKTsKCiMgMTYzICIvdXNyL2luY2x1ZGUvc3Rk bGliLmgiIDMKZXh0ZXJuIGxvbmcgaW50IHN0cnRvbCAoX19jb25zdCBjaGFyICpfX3Jlc3RyaWN0 IF9fbnB0ciwKICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19lbmRw dHIsIGludCBfX2Jhc2UpIHRocm93ICgpOwoKZXh0ZXJuIHVuc2lnbmVkIGxvbmcgaW50IHN0cnRv dWwgKF9fY29uc3QgY2hhciAqX19yZXN0cmljdCBfX25wdHIsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjaGFyICoqX19yZXN0cmljdCBfX2VuZHB0ciwgaW50IF9fYmFzZSkKICAg ICB0aHJvdyAoKTsKCgoKX19leHRlbnNpb25fXwpleHRlcm4gbG9uZyBsb25nIGludCBzdHJ0b3Eg KF9fY29uc3QgY2hhciAqX19yZXN0cmljdCBfX25wdHIsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19lbmRwdHIsIGludCBfX2Jhc2UpIHRocm93ICgpOwoK X19leHRlbnNpb25fXwpleHRlcm4gdW5zaWduZWQgbG9uZyBsb25nIGludCBzdHJ0b3VxIChfX2Nv bnN0IGNoYXIgKl9fcmVzdHJpY3QgX19ucHRyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjaGFyICoqX19yZXN0cmljdCBfX2VuZHB0ciwgaW50IF9fYmFzZSkKICAgICB0 aHJvdyAoKTsKCgoKCgoKX19leHRlbnNpb25fXwpleHRlcm4gbG9uZyBsb25nIGludCBzdHJ0b2xs IChfX2NvbnN0IGNoYXIgKl9fcmVzdHJpY3QgX19ucHRyLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjaGFyICoqX19yZXN0cmljdCBfX2VuZHB0ciwgaW50IF9fYmFzZSkgdGhyb3cgKCk7 CgpfX2V4dGVuc2lvbl9fCmV4dGVybiB1bnNpZ25lZCBsb25nIGxvbmcgaW50IHN0cnRvdWxsIChf X2NvbnN0IGNoYXIgKl9fcmVzdHJpY3QgX19ucHRyLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19lbmRwdHIsIGludCBfX2Jhc2UpCiAg ICAgdGhyb3cgKCk7CiMgMjUwICIvdXNyL2luY2x1ZGUvc3RkbGliLmgiIDMKZXh0ZXJuIGRvdWJs ZSBfX3N0cnRvZF9pbnRlcm5hbCAoX19jb25zdCBjaGFyICpfX3Jlc3RyaWN0IF9fbnB0ciwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19lbmRwdHIs IGludCBfX2dyb3VwKQogICAgIHRocm93ICgpOwpleHRlcm4gZmxvYXQgX19zdHJ0b2ZfaW50ZXJu YWwgKF9fY29uc3QgY2hhciAqX19yZXN0cmljdCBfX25wdHIsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19lbmRwdHIsIGludCBfX2dyb3VwKQogICAg IHRocm93ICgpOwpleHRlcm4gbG9uZyBkb3VibGUgX19zdHJ0b2xkX2ludGVybmFsIChfX2NvbnN0 IGNoYXIgKl9fcmVzdHJpY3QgX19ucHRyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjaGFyICoqX19yZXN0cmljdCBfX2VuZHB0ciwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50IF9fZ3JvdXApIHRocm93ICgpOwoKZXh0ZXJuIGxvbmcgaW50 IF9fc3RydG9sX2ludGVybmFsIChfX2NvbnN0IGNoYXIgKl9fcmVzdHJpY3QgX19ucHRyLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKipfX3Jlc3RyaWN0IF9fZW5kcHRy LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBfX2Jhc2UsIGludCBfX2dy b3VwKSB0aHJvdyAoKTsKCgoKZXh0ZXJuIHVuc2lnbmVkIGxvbmcgaW50IF9fc3RydG91bF9pbnRl cm5hbCAoX19jb25zdCBjaGFyICpfX3Jlc3RyaWN0IF9fbnB0ciwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19lbmRwdHIsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBfX2Jhc2UsIGlu dCBfX2dyb3VwKSB0aHJvdyAoKTsKCgoKCl9fZXh0ZW5zaW9uX18KZXh0ZXJuIGxvbmcgbG9uZyBp bnQgX19zdHJ0b2xsX2ludGVybmFsIChfX2NvbnN0IGNoYXIgKl9fcmVzdHJpY3QgX19ucHRyLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKipfX3Jlc3RyaWN0 IF9fZW5kcHRyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBf X2Jhc2UsIGludCBfX2dyb3VwKSB0aHJvdyAoKTsKCgoKX19leHRlbnNpb25fXwpleHRlcm4gdW5z aWduZWQgbG9uZyBsb25nIGludCBfX3N0cnRvdWxsX2ludGVybmFsIChfX2NvbnN0IGNoYXIgKgog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfX3Jlc3Ry aWN0IF9fbnB0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19lbmRwdHIsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBfX2Jhc2UsIGludCBfX2dyb3VwKQogICAg IHRocm93ICgpOwojIDM4NSAiL3Vzci9pbmNsdWRlL3N0ZGxpYi5oIiAzCmV4dGVybiBjaGFyICps NjRhIChsb25nIGludCBfX24pIHRocm93ICgpOwoKCmV4dGVybiBsb25nIGludCBhNjRsIChfX2Nv bnN0IGNoYXIgKl9fcykgdGhyb3cgKCkgX19hdHRyaWJ1dGVfXyAoKF9fcHVyZV9fKSk7CgoKCiMg MjggIi91c3IvaW5jbHVkZS9zeXMvdHlwZXMuaCIgMSAzCmV4dGVybiAiQyIgewoKCiMgMzAgIi91 c3IvaW5jbHVkZS9iaXRzL3R5cGVzLmgiIDEgMwoKCnR5cGVkZWYgdW5zaWduZWQgY2hhciBfX3Vf Y2hhcjsKdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBfX3Vfc2hvcnQ7CnR5cGVkZWYgdW5zaWduZWQg aW50IF9fdV9pbnQ7CnR5cGVkZWYgdW5zaWduZWQgbG9uZyBfX3VfbG9uZzsKCl9fZXh0ZW5zaW9u X18gdHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgaW50IF9fdV9xdWFkX3Q7Cl9fZXh0ZW5zaW9u X18gdHlwZWRlZiBsb25nIGxvbmcgaW50IF9fcXVhZF90OwojIDQ5ICIvdXNyL2luY2x1ZGUvYml0 cy90eXBlcy5oIiAzCnR5cGVkZWYgc2lnbmVkIGNoYXIgX19pbnQ4X3Q7CnR5cGVkZWYgdW5zaWdu ZWQgY2hhciBfX3VpbnQ4X3Q7CnR5cGVkZWYgc2lnbmVkIHNob3J0IGludCBfX2ludDE2X3Q7CnR5 cGVkZWYgdW5zaWduZWQgc2hvcnQgaW50IF9fdWludDE2X3Q7CnR5cGVkZWYgc2lnbmVkIGludCBf X2ludDMyX3Q7CnR5cGVkZWYgdW5zaWduZWQgaW50IF9fdWludDMyX3Q7CgpfX2V4dGVuc2lvbl9f IHR5cGVkZWYgc2lnbmVkIGxvbmcgbG9uZyBpbnQgX19pbnQ2NF90OwpfX2V4dGVuc2lvbl9fIHR5 cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIGludCBfX3VpbnQ2NF90OwoKdHlwZWRlZiBfX3F1YWRf dCAqX19xYWRkcl90OwoKdHlwZWRlZiBfX3VfcXVhZF90IF9fZGV2X3Q7CnR5cGVkZWYgX191X2lu dCBfX3VpZF90Owp0eXBlZGVmIF9fdV9pbnQgX19naWRfdDsKdHlwZWRlZiBfX3VfbG9uZyBfX2lu b190Owp0eXBlZGVmIF9fdV9pbnQgX19tb2RlX3Q7CnR5cGVkZWYgX191X2ludCBfX25saW5rX3Q7 CnR5cGVkZWYgbG9uZyBpbnQgX19vZmZfdDsKdHlwZWRlZiBfX3F1YWRfdCBfX2xvZmZfdDsKdHlw ZWRlZiBpbnQgX19waWRfdDsKdHlwZWRlZiBpbnQgX19zc2l6ZV90Owp0eXBlZGVmIF9fdV9sb25n IF9fcmxpbV90Owp0eXBlZGVmIF9fdV9xdWFkX3QgX19ybGltNjRfdDsKdHlwZWRlZiBfX3VfaW50 IF9faWRfdDsKCnR5cGVkZWYgc3RydWN0CiAgewogICAgaW50IF9fdmFsWzJdOwogIH0gX19mc2lk X3Q7CgoKdHlwZWRlZiBpbnQgX19kYWRkcl90Owp0eXBlZGVmIGNoYXIgKl9fY2FkZHJfdDsKdHlw ZWRlZiBsb25nIGludCBfX3RpbWVfdDsKdHlwZWRlZiB1bnNpZ25lZCBpbnQgX191c2Vjb25kc190 Owp0eXBlZGVmIGxvbmcgaW50IF9fc3VzZWNvbmRzX3Q7CnR5cGVkZWYgbG9uZyBpbnQgX19zd2Js a190OwoKdHlwZWRlZiBsb25nIGludCBfX2Nsb2NrX3Q7CgoKdHlwZWRlZiBpbnQgX19jbG9ja2lk X3Q7CgoKdHlwZWRlZiBpbnQgX190aW1lcl90OwoKCgp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgaW50 IF9fZmRfbWFzazsKCgojIDEwOSAiL3Vzci9pbmNsdWRlL2JpdHMvdHlwZXMuaCIgMwp0eXBlZGVm IHN0cnVjdAogIHsKCgoKCgoKICAgIF9fZmRfbWFzayBfX2Zkc19iaXRzWzEwMjQgLyAoOCAqIHNp emVvZiAoX19mZF9tYXNrKSldOwoKCiAgfSBfX2ZkX3NldDsKCgp0eXBlZGVmIGludCBfX2tleV90 OwoKCnR5cGVkZWYgdW5zaWduZWQgc2hvcnQgaW50IF9faXBjX3BpZF90OwoKCgp0eXBlZGVmIGxv bmcgaW50IF9fYmxrc2l6ZV90OwoKCgoKdHlwZWRlZiBsb25nIGludCBfX2Jsa2NudF90Owp0eXBl ZGVmIF9fcXVhZF90IF9fYmxrY250NjRfdDsKCgp0eXBlZGVmIF9fdV9sb25nIF9fZnNibGtjbnRf dDsKdHlwZWRlZiBfX3VfcXVhZF90IF9fZnNibGtjbnQ2NF90OwoKCnR5cGVkZWYgX191X2xvbmcg X19mc2ZpbGNudF90Owp0eXBlZGVmIF9fdV9xdWFkX3QgX19mc2ZpbGNudDY0X3Q7CgoKdHlwZWRl ZiBfX3VfcXVhZF90IF9faW5vNjRfdDsKCgp0eXBlZGVmIF9fbG9mZl90IF9fb2ZmNjRfdDsKCgp0 eXBlZGVmIGxvbmcgaW50IF9fdF9zY2FsYXJfdDsKdHlwZWRlZiB1bnNpZ25lZCBsb25nIGludCBf X3RfdXNjYWxhcl90OwoKCnR5cGVkZWYgaW50IF9faW50cHRyX3Q7CgoKdHlwZWRlZiB1bnNpZ25l ZCBpbnQgX19zb2NrbGVuX3Q7CgoKCgoKIyAyNCAiL3Vzci9pbmNsdWRlL2JpdHMvcHRocmVhZHR5 cGVzLmgiIDEgMwojIDY4ICIvdXNyL2luY2x1ZGUvYml0cy9zY2hlZC5oIiAxIDMKc3RydWN0IF9f c2NoZWRfcGFyYW0KICB7CiAgICBpbnQgc2NoZWRfcHJpb3JpdHk7CiAgfTsKIyAyNCAiL3Vzci9p bmNsdWRlL2JpdHMvcHRocmVhZHR5cGVzLmgiIDIgMwoKCnN0cnVjdCBfcHRocmVhZF9mYXN0bG9j awp7CiAgbG9uZyBpbnQgX19zdGF0dXM7CiAgaW50IF9fc3BpbmxvY2s7Cgp9OwoKCgp0eXBlZGVm IHN0cnVjdCBfcHRocmVhZF9kZXNjcl9zdHJ1Y3QgKl9wdGhyZWFkX2Rlc2NyOwoKCgoKCnR5cGVk ZWYgc3RydWN0CnsKICBpbnQgX19kZXRhY2hzdGF0ZTsKICBpbnQgX19zY2hlZHBvbGljeTsKICBz dHJ1Y3QgX19zY2hlZF9wYXJhbSBfX3NjaGVkcGFyYW07CiAgaW50IF9faW5oZXJpdHNjaGVkOwog IGludCBfX3Njb3BlOwogIHNpemVfdCBfX2d1YXJkc2l6ZTsKICBpbnQgX19zdGFja2FkZHJfc2V0 OwogIHZvaWQgKl9fc3RhY2thZGRyOwogIHNpemVfdCBfX3N0YWNrc2l6ZTsKfSBwdGhyZWFkX2F0 dHJfdDsKCgoKdHlwZWRlZiBzdHJ1Y3QKewogIHN0cnVjdCBfcHRocmVhZF9mYXN0bG9jayBfX2Nf bG9jazsKICBfcHRocmVhZF9kZXNjciBfX2Nfd2FpdGluZzsKfSBwdGhyZWFkX2NvbmRfdDsKCgoK dHlwZWRlZiBzdHJ1Y3QKewogIGludCBfX2R1bW15Owp9IHB0aHJlYWRfY29uZGF0dHJfdDsKCgp0 eXBlZGVmIHVuc2lnbmVkIGludCBwdGhyZWFkX2tleV90OwoKCgoKCnR5cGVkZWYgc3RydWN0CnsK ICBpbnQgX19tX3Jlc2VydmVkOwogIGludCBfX21fY291bnQ7CiAgX3B0aHJlYWRfZGVzY3IgX19t X293bmVyOwogIGludCBfX21fa2luZDsKICBzdHJ1Y3QgX3B0aHJlYWRfZmFzdGxvY2sgX19tX2xv Y2s7Cn0gcHRocmVhZF9tdXRleF90OwoKCgp0eXBlZGVmIHN0cnVjdAp7CiAgaW50IF9fbXV0ZXhr aW5kOwp9IHB0aHJlYWRfbXV0ZXhhdHRyX3Q7CgoKCnR5cGVkZWYgaW50IHB0aHJlYWRfb25jZV90 OwoKCiMgMTQwICIvdXNyL2luY2x1ZGUvYml0cy9wdGhyZWFkdHlwZXMuaCIgMwp0eXBlZGVmIHVu c2lnbmVkIGxvbmcgaW50IHB0aHJlYWRfdDsKCiMgMTY2ICIvdXNyL2luY2x1ZGUvYml0cy90eXBl cy5oIiAyIDMKIyAzMSAiL3Vzci9pbmNsdWRlL3N5cy90eXBlcy5oIiAyIDMKCgp0eXBlZGVmIF9f dV9jaGFyIHVfY2hhcjsKdHlwZWRlZiBfX3Vfc2hvcnQgdV9zaG9ydDsKdHlwZWRlZiBfX3VfaW50 IHVfaW50Owp0eXBlZGVmIF9fdV9sb25nIHVfbG9uZzsKdHlwZWRlZiBfX3F1YWRfdCBxdWFkX3Q7 CnR5cGVkZWYgX191X3F1YWRfdCB1X3F1YWRfdDsKdHlwZWRlZiBfX2ZzaWRfdCBmc2lkX3Q7CgoK dHlwZWRlZiBfX2xvZmZfdCBsb2ZmX3Q7CgoKCnR5cGVkZWYgX19pbm9fdCBpbm9fdDsKIyA1OCAi L3Vzci9pbmNsdWRlL3N5cy90eXBlcy5oIiAzCnR5cGVkZWYgX19kZXZfdCBkZXZfdDsKCgoKCnR5 cGVkZWYgX19naWRfdCBnaWRfdDsKCgoKCnR5cGVkZWYgX19tb2RlX3QgbW9kZV90OwoKCgoKdHlw ZWRlZiBfX25saW5rX3QgbmxpbmtfdDsKCgoKCnR5cGVkZWYgX191aWRfdCB1aWRfdDsKCgoKCgp0 eXBlZGVmIF9fb2ZmX3Qgb2ZmX3Q7CiMgOTYgIi91c3IvaW5jbHVkZS9zeXMvdHlwZXMuaCIgMwp0 eXBlZGVmIF9fcGlkX3QgcGlkX3Q7CgoKCgp0eXBlZGVmIF9faWRfdCBpZF90OwoKCgoKdHlwZWRl ZiBfX3NzaXplX3Qgc3NpemVfdDsKCgoKCnR5cGVkZWYgX19kYWRkcl90IGRhZGRyX3Q7CnR5cGVk ZWYgX19jYWRkcl90IGNhZGRyX3Q7CgoKCnR5cGVkZWYgX19rZXlfdCBrZXlfdDsKIyAxMjcgIi91 c3IvaW5jbHVkZS9zeXMvdHlwZXMuaCIgMwojIDcxICIvdXNyL2luY2x1ZGUvdGltZS5oIiAxIDMK dHlwZWRlZiBfX3RpbWVfdCB0aW1lX3Q7CgojIDgyICIvdXNyL2luY2x1ZGUvdGltZS5oIiAzCnR5 cGVkZWYgX19jbG9ja2lkX3QgY2xvY2tpZF90OwoKIyA5MyAiL3Vzci9pbmNsdWRlL3RpbWUuaCIg Mwp0eXBlZGVmIF9fdGltZXJfdCB0aW1lcl90OwoKIyAxMjcgIi91c3IvaW5jbHVkZS9zeXMvdHlw ZXMuaCIgMiAzCiMgMTQxICIvdXNyL2luY2x1ZGUvc3lzL3R5cGVzLmgiIDMKCgoKdHlwZWRlZiB1 bnNpZ25lZCBsb25nIGludCB1bG9uZzsKdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBpbnQgdXNob3J0 Owp0eXBlZGVmIHVuc2lnbmVkIGludCB1aW50OwojIDE4NCAiL3Vzci9pbmNsdWRlL3N5cy90eXBl cy5oIiAzCnR5cGVkZWYgaW50IGludDhfdCBfX2F0dHJpYnV0ZV9fICgoX19tb2RlX18gKF9fUUlf XykpKTsKdHlwZWRlZiBpbnQgaW50MTZfdCBfX2F0dHJpYnV0ZV9fICgoX19tb2RlX18gKF9fSElf XykpKTsKdHlwZWRlZiBpbnQgaW50MzJfdCBfX2F0dHJpYnV0ZV9fICgoX19tb2RlX18gKF9fU0lf XykpKTsKdHlwZWRlZiBpbnQgaW50NjRfdCBfX2F0dHJpYnV0ZV9fICgoX19tb2RlX18gKF9fRElf XykpKTsKCgp0eXBlZGVmIHVuc2lnbmVkIGludCB1X2ludDhfdCBfX2F0dHJpYnV0ZV9fICgoX19t b2RlX18gKF9fUUlfXykpKTsKdHlwZWRlZiB1bnNpZ25lZCBpbnQgdV9pbnQxNl90IF9fYXR0cmli dXRlX18gKChfX21vZGVfXyAoX19ISV9fKSkpOwp0eXBlZGVmIHVuc2lnbmVkIGludCB1X2ludDMy X3QgX19hdHRyaWJ1dGVfXyAoKF9fbW9kZV9fIChfX1NJX18pKSk7CnR5cGVkZWYgdW5zaWduZWQg aW50IHVfaW50NjRfdCBfX2F0dHJpYnV0ZV9fICgoX19tb2RlX18gKF9fRElfXykpKTsKCnR5cGVk ZWYgaW50IHJlZ2lzdGVyX3QgX19hdHRyaWJ1dGVfXyAoKF9fbW9kZV9fIChfX3dvcmRfXykpKTsK CgoKCgoKCgoKCgojIDM4ICIvdXNyL2luY2x1ZGUvZW5kaWFuLmgiIDEgMwojIDIwNyAiL3Vzci9p bmNsdWRlL3N5cy90eXBlcy5oIiAyIDMKCgoKIyAzMiAiL3Vzci9pbmNsdWRlL3N5cy9zZWxlY3Qu aCIgMSAzCgoKCiMgMjMgIi91c3IvaW5jbHVkZS9iaXRzL3NpZ3NldC5oIiAxIDMKdHlwZWRlZiBp bnQgX19zaWdfYXRvbWljX3Q7CgoKCgp0eXBlZGVmIHN0cnVjdAogIHsKICAgIHVuc2lnbmVkIGxv bmcgaW50IF9fdmFsWygxMDI0IC8gKDggKiBzaXplb2YgKHVuc2lnbmVkIGxvbmcgaW50KSkpXTsK ICB9IF9fc2lnc2V0X3Q7CgojIDM1ICIvdXNyL2luY2x1ZGUvc3lzL3NlbGVjdC5oIiAyIDMKCgoK CiMgMTA1ICIvdXNyL2luY2x1ZGUvdGltZS5oIiAxIDMKc3RydWN0IHRpbWVzcGVjCiAgewogICAg bG9uZyBpbnQgdHZfc2VjOwogICAgbG9uZyBpbnQgdHZfbnNlYzsKICB9OwoKIyAzOSAiL3Vzci9p bmNsdWRlL3N5cy9zZWxlY3QuaCIgMiAzCgpleHRlcm4gIkMiIHsKCgoKCgpzdHJ1Y3QgdGltZXZh bDsKCnR5cGVkZWYgX19mZF9tYXNrIGZkX21hc2s7CgoKdHlwZWRlZiBfX2ZkX3NldCBmZF9zZXQ7 CgoKIyA3NCAiL3Vzci9pbmNsdWRlL3N5cy9zZWxlY3QuaCIgMwpleHRlcm4gaW50IHNlbGVjdCAo aW50IF9fbmZkcywgX19mZF9zZXQgKl9fcmVzdHJpY3QgX19yZWFkZmRzLAogICAgICAgICAgICAg ICAgICAgX19mZF9zZXQgKl9fcmVzdHJpY3QgX193cml0ZWZkcywKICAgICAgICAgICAgICAgICAg IF9fZmRfc2V0ICpfX3Jlc3RyaWN0IF9fZXhjZXB0ZmRzLAogICAgICAgICAgICAgICAgICAgc3Ry dWN0IHRpbWV2YWwgKl9fcmVzdHJpY3QgX190aW1lb3V0KSB0aHJvdyAoKTsKCiMgOTIgIi91c3Iv aW5jbHVkZS9zeXMvc2VsZWN0LmgiIDMKfQoKIyAyMTAgIi91c3IvaW5jbHVkZS9zeXMvdHlwZXMu aCIgMiAzCgoKCiMgMjI0ICIvdXNyL2luY2x1ZGUvc3lzL3R5cGVzLmgiIDMKdHlwZWRlZiBfX2Js a2NudF90IGJsa2NudF90OwoKCgp0eXBlZGVmIF9fZnNibGtjbnRfdCBmc2Jsa2NudF90OwoKCgp0 eXBlZGVmIF9fZnNmaWxjbnRfdCBmc2ZpbGNudF90OwojIDI1NiAiL3Vzci9pbmNsdWRlL3N5cy90 eXBlcy5oIiAzCn0KCiMgMzkyICIvdXNyL2luY2x1ZGUvc3RkbGliLmgiIDIgMwoKCgoKCgpleHRl cm4gaW50MzJfdCByYW5kb20gKHZvaWQpIHRocm93ICgpOwoKCmV4dGVybiB2b2lkIHNyYW5kb20g KHVuc2lnbmVkIGludCBfX3NlZWQpIHRocm93ICgpOwoKCgoKCmV4dGVybiBjaGFyICppbml0c3Rh dGUgKHVuc2lnbmVkIGludCBfX3NlZWQsIGNoYXIgKl9fc3RhdGVidWYsCiAgICAgICAgICAgICAg ICAgICAgICAgIHNpemVfdCBfX3N0YXRlbGVuKSB0aHJvdyAoKTsKCgoKZXh0ZXJuIGNoYXIgKnNl dHN0YXRlIChjaGFyICpfX3N0YXRlYnVmKSB0aHJvdyAoKTsKCgoKCgoKCnN0cnVjdCByYW5kb21f ZGF0YQogIHsKICAgIGludDMyX3QgKmZwdHI7CiAgICBpbnQzMl90ICpycHRyOwogICAgaW50MzJf dCAqc3RhdGU7CiAgICBpbnQgcmFuZF90eXBlOwogICAgaW50IHJhbmRfZGVnOwogICAgaW50IHJh bmRfc2VwOwogICAgaW50MzJfdCAqZW5kX3B0cjsKICB9OwoKZXh0ZXJuIGludCByYW5kb21fciAo c3RydWN0IHJhbmRvbV9kYXRhICpfX3Jlc3RyaWN0IF9fYnVmLAogICAgICAgICAgICAgICAgICAg ICBpbnQzMl90ICpfX3Jlc3RyaWN0IF9fcmVzdWx0KSB0aHJvdyAoKTsKCmV4dGVybiBpbnQgc3Jh bmRvbV9yICh1bnNpZ25lZCBpbnQgX19zZWVkLCBzdHJ1Y3QgcmFuZG9tX2RhdGEgKl9fYnVmKSB0 aHJvdyAoKTsKCmV4dGVybiBpbnQgaW5pdHN0YXRlX3IgKHVuc2lnbmVkIGludCBfX3NlZWQsIGNo YXIgKl9fcmVzdHJpY3QgX19zdGF0ZWJ1ZiwKICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90 IF9fc3RhdGVsZW4sCiAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCByYW5kb21fZGF0YSAq X19yZXN0cmljdCBfX2J1ZikgdGhyb3cgKCk7CgpleHRlcm4gaW50IHNldHN0YXRlX3IgKGNoYXIg Kl9fcmVzdHJpY3QgX19zdGF0ZWJ1ZiwKICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcmFu ZG9tX2RhdGEgKl9fcmVzdHJpY3QgX19idWYpIHRocm93ICgpOwoKCgoKCmV4dGVybiBpbnQgcmFu ZCAodm9pZCkgdGhyb3cgKCk7CgpleHRlcm4gdm9pZCBzcmFuZCAodW5zaWduZWQgaW50IF9fc2Vl ZCkgdGhyb3cgKCk7CgoKCmV4dGVybiBpbnQgcmFuZF9yICh1bnNpZ25lZCBpbnQgKl9fc2VlZCkg dGhyb3cgKCk7CgoKCgoKCgpleHRlcm4gZG91YmxlIGRyYW5kNDggKHZvaWQpIHRocm93ICgpOwpl eHRlcm4gZG91YmxlIGVyYW5kNDggKHVuc2lnbmVkIHNob3J0IGludCBfX3hzdWJpWzNdKSB0aHJv dyAoKTsKCgpleHRlcm4gbG9uZyBpbnQgbHJhbmQ0OCAodm9pZCkgdGhyb3cgKCk7CmV4dGVybiBs b25nIGludCBucmFuZDQ4ICh1bnNpZ25lZCBzaG9ydCBpbnQgX194c3ViaVszXSkgdGhyb3cgKCk7 CgoKZXh0ZXJuIGxvbmcgaW50IG1yYW5kNDggKHZvaWQpIHRocm93ICgpOwpleHRlcm4gbG9uZyBp bnQganJhbmQ0OCAodW5zaWduZWQgc2hvcnQgaW50IF9feHN1YmlbM10pIHRocm93ICgpOwoKCmV4 dGVybiB2b2lkIHNyYW5kNDggKGxvbmcgaW50IF9fc2VlZHZhbCkgdGhyb3cgKCk7CmV4dGVybiB1 bnNpZ25lZCBzaG9ydCBpbnQgKnNlZWQ0OCAodW5zaWduZWQgc2hvcnQgaW50IF9fc2VlZDE2dlsz XSkgdGhyb3cgKCk7CmV4dGVybiB2b2lkIGxjb25nNDggKHVuc2lnbmVkIHNob3J0IGludCBfX3Bh cmFtWzddKSB0aHJvdyAoKTsKCgpzdHJ1Y3QgZHJhbmQ0OF9kYXRhCiAgewogICAgdW5zaWduZWQg c2hvcnQgaW50IHhbM107CiAgICB1bnNpZ25lZCBzaG9ydCBpbnQgYVszXTsKICAgIHVuc2lnbmVk IHNob3J0IGludCBjOwogICAgdW5zaWduZWQgc2hvcnQgaW50IG9sZF94WzNdOwogICAgaW50IGlu aXQ7CiAgfTsKCgoKZXh0ZXJuIGludCBkcmFuZDQ4X3IgKHN0cnVjdCBkcmFuZDQ4X2RhdGEgKl9f cmVzdHJpY3QgX19idWZmZXIsCiAgICAgICAgICAgICAgICAgICAgICBkb3VibGUgKl9fcmVzdHJp Y3QgX19yZXN1bHQpIHRocm93ICgpOwpleHRlcm4gaW50IGVyYW5kNDhfciAodW5zaWduZWQgc2hv cnQgaW50IF9feHN1YmlbM10sCiAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJhbmQ0OF9k YXRhICpfX3Jlc3RyaWN0IF9fYnVmZmVyLAogICAgICAgICAgICAgICAgICAgICAgZG91YmxlICpf X3Jlc3RyaWN0IF9fcmVzdWx0KSB0aHJvdyAoKTsKCgpleHRlcm4gaW50IGxyYW5kNDhfciAoc3Ry dWN0IGRyYW5kNDhfZGF0YSAqX19yZXN0cmljdCBfX2J1ZmZlciwKICAgICAgICAgICAgICAgICAg ICAgIGxvbmcgaW50ICpfX3Jlc3RyaWN0IF9fcmVzdWx0KSB0aHJvdyAoKTsKZXh0ZXJuIGludCBu cmFuZDQ4X3IgKHVuc2lnbmVkIHNob3J0IGludCBfX3hzdWJpWzNdLAogICAgICAgICAgICAgICAg ICAgICAgc3RydWN0IGRyYW5kNDhfZGF0YSAqX19yZXN0cmljdCBfX2J1ZmZlciwKICAgICAgICAg ICAgICAgICAgICAgIGxvbmcgaW50ICpfX3Jlc3RyaWN0IF9fcmVzdWx0KSB0aHJvdyAoKTsKCgpl eHRlcm4gaW50IG1yYW5kNDhfciAoc3RydWN0IGRyYW5kNDhfZGF0YSAqX19yZXN0cmljdCBfX2J1 ZmZlciwKICAgICAgICAgICAgICAgICAgICAgIGxvbmcgaW50ICpfX3Jlc3RyaWN0IF9fcmVzdWx0 KSB0aHJvdyAoKTsKZXh0ZXJuIGludCBqcmFuZDQ4X3IgKHVuc2lnbmVkIHNob3J0IGludCBfX3hz dWJpWzNdLAogICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRyYW5kNDhfZGF0YSAqX19yZXN0 cmljdCBfX2J1ZmZlciwKICAgICAgICAgICAgICAgICAgICAgIGxvbmcgaW50ICpfX3Jlc3RyaWN0 IF9fcmVzdWx0KSB0aHJvdyAoKTsKCgpleHRlcm4gaW50IHNyYW5kNDhfciAobG9uZyBpbnQgX19z ZWVkdmFsLCBzdHJ1Y3QgZHJhbmQ0OF9kYXRhICpfX2J1ZmZlcikKICAgICB0aHJvdyAoKTsKCmV4 dGVybiBpbnQgc2VlZDQ4X3IgKHVuc2lnbmVkIHNob3J0IGludCBfX3NlZWQxNnZbM10sCiAgICAg ICAgICAgICAgICAgICAgIHN0cnVjdCBkcmFuZDQ4X2RhdGEgKl9fYnVmZmVyKSB0aHJvdyAoKTsK CmV4dGVybiBpbnQgbGNvbmc0OF9yICh1bnNpZ25lZCBzaG9ydCBpbnQgX19wYXJhbVs3XSwKICAg ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBkcmFuZDQ4X2RhdGEgKl9fYnVmZmVyKSB0aHJvdyAo KTsKIyA1MjYgIi91c3IvaW5jbHVkZS9zdGRsaWIuaCIgMwpleHRlcm4gdm9pZCAqbWFsbG9jIChz aXplX3QgX19zaXplKSB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19tYWxsb2NfXykpOwoKZXh0 ZXJuIHZvaWQgKmNhbGxvYyAoc2l6ZV90IF9fbm1lbWIsIHNpemVfdCBfX3NpemUpCiAgICAgdGhy b3cgKCkgX19hdHRyaWJ1dGVfXyAoKF9fbWFsbG9jX18pKTsKCgoKCgpleHRlcm4gdm9pZCAqcmVh bGxvYyAodm9pZCAqX19wdHIsIHNpemVfdCBfX3NpemUpIHRocm93ICgpIF9fYXR0cmlidXRlX18g KChfX21hbGxvY19fKSk7CgpleHRlcm4gdm9pZCBmcmVlICh2b2lkICpfX3B0cikgdGhyb3cgKCk7 CgoKCmV4dGVybiB2b2lkIGNmcmVlICh2b2lkICpfX3B0cikgdGhyb3cgKCk7CgoKCgojIDI2ICIv dXNyL2luY2x1ZGUvYWxsb2NhLmgiIDEgMwoKZXh0ZXJuICJDIiB7CgoKCgoKZXh0ZXJuIHZvaWQg KmFsbG9jYSAoc2l6ZV90IF9fc2l6ZSkgdGhyb3cgKCk7CgoKCgoKfQoKIyA1NDYgIi91c3IvaW5j bHVkZS9zdGRsaWIuaCIgMiAzCgoKCgpleHRlcm4gdm9pZCAqdmFsbG9jIChzaXplX3QgX19zaXpl KSB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19tYWxsb2NfXykpOwojIDU2MCAiL3Vzci9pbmNs dWRlL3N0ZGxpYi5oIiAzCmV4dGVybiB2b2lkIGFib3J0ICh2b2lkKSB0aHJvdyAoKSBfX2F0dHJp YnV0ZV9fICgoX19ub3JldHVybl9fKSk7CgoKCmV4dGVybiBpbnQgYXRleGl0ICh2b2lkICgqX19m dW5jKSAodm9pZCkpIHRocm93ICgpOwoKCgoKZXh0ZXJuIGludCBfX29uX2V4aXQgKHZvaWQgKCpf X2Z1bmMpIChpbnQgX19zdGF0dXMsIHZvaWQgKl9fYXJnKSwgdm9pZCAqX19hcmcpCiAgICAgdGhy b3cgKCk7CmV4dGVybiBpbnQgb25fZXhpdCAodm9pZCAoKl9fZnVuYykgKGludCBfX3N0YXR1cywg dm9pZCAqX19hcmcpLCB2b2lkICpfX2FyZykKICAgICB0aHJvdyAoKTsKCgoKCgpleHRlcm4gdm9p ZCBleGl0IChpbnQgX19zdGF0dXMpIHRocm93ICgpIF9fYXR0cmlidXRlX18gKChfX25vcmV0dXJu X18pKTsKCiMgNTg4ICIvdXNyL2luY2x1ZGUvc3RkbGliLmgiIDMKZXh0ZXJuIGNoYXIgKmdldGVu diAoX19jb25zdCBjaGFyICpfX25hbWUpIHRocm93ICgpOwoKCgpleHRlcm4gY2hhciAqX19zZWN1 cmVfZ2V0ZW52IChfX2NvbnN0IGNoYXIgKl9fbmFtZSkgdGhyb3cgKCk7CgoKCgoKZXh0ZXJuIGlu dCBwdXRlbnYgKGNoYXIgKl9fc3RyaW5nKSB0aHJvdyAoKTsKCgoKCgpleHRlcm4gaW50IHNldGVu diAoX19jb25zdCBjaGFyICpfX25hbWUsIF9fY29uc3QgY2hhciAqX192YWx1ZSwgaW50IF9fcmVw bGFjZSkKICAgICB0aHJvdyAoKTsKCgpleHRlcm4gdm9pZCB1bnNldGVudiAoX19jb25zdCBjaGFy ICpfX25hbWUpIHRocm93ICgpOwoKCgoKCgpleHRlcm4gaW50IGNsZWFyZW52ICh2b2lkKSB0aHJv dyAoKTsKIyA2MjQgIi91c3IvaW5jbHVkZS9zdGRsaWIuaCIgMwpleHRlcm4gY2hhciAqbWt0ZW1w IChjaGFyICpfX3RlbXBsYXRlKSB0aHJvdyAoKTsKCgoKCgoKZXh0ZXJuIGludCBta3N0ZW1wIChj aGFyICpfX3RlbXBsYXRlKSB0aHJvdyAoKTsKIyA2NDAgIi91c3IvaW5jbHVkZS9zdGRsaWIuaCIg MwpleHRlcm4gY2hhciAqbWtkdGVtcCAoY2hhciAqX190ZW1wbGF0ZSkgdGhyb3cgKCk7CgoKCgpl eHRlcm4gaW50IHN5c3RlbSAoX19jb25zdCBjaGFyICpfX2NvbW1hbmQpIHRocm93ICgpOwoKCiMg NjYyICIvdXNyL2luY2x1ZGUvc3RkbGliLmgiIDMKZXh0ZXJuIGNoYXIgKnJlYWxwYXRoIChfX2Nv bnN0IGNoYXIgKl9fcmVzdHJpY3QgX19uYW1lLAogICAgICAgICAgICAgICAgICAgICAgIGNoYXIg Kl9fcmVzdHJpY3QgX19yZXNvbHZlZCkgdGhyb3cgKCk7CgoKCgoKCnR5cGVkZWYgaW50ICgqX19j b21wYXJfZm5fdCkgKF9fY29uc3Qgdm9pZCAqLCBfX2NvbnN0IHZvaWQgKik7CgoKCgoKCgoKZXh0 ZXJuIHZvaWQgKmJzZWFyY2ggKF9fY29uc3Qgdm9pZCAqX19rZXksIF9fY29uc3Qgdm9pZCAqX19i YXNlLAogICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IF9fbm1lbWIsIHNpemVfdCBfX3NpemUs IF9fY29tcGFyX2ZuX3QgX19jb21wYXIpOwoKCgpleHRlcm4gdm9pZCBxc29ydCAodm9pZCAqX19i YXNlLCBzaXplX3QgX19ubWVtYiwgc2l6ZV90IF9fc2l6ZSwKICAgICAgICAgICAgICAgICAgIF9f Y29tcGFyX2ZuX3QgX19jb21wYXIpOwoKCgpleHRlcm4gaW50IGFicyAoaW50IF9feCkgdGhyb3cg KCkgX19hdHRyaWJ1dGVfXyAoKF9fY29uc3RfXykpOwpleHRlcm4gbG9uZyBpbnQgbGFicyAobG9u ZyBpbnQgX194KSB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19jb25zdF9fKSk7CiMgNzAwICIv dXNyL2luY2x1ZGUvc3RkbGliLmgiIDMKZXh0ZXJuIGRpdl90IGRpdiAoaW50IF9fbnVtZXIsIGlu dCBfX2Rlbm9tKQogICAgIHRocm93ICgpIF9fYXR0cmlidXRlX18gKChfX2NvbnN0X18pKTsKZXh0 ZXJuIGxkaXZfdCBsZGl2IChsb25nIGludCBfX251bWVyLCBsb25nIGludCBfX2Rlbm9tKQogICAg IHRocm93ICgpIF9fYXR0cmlidXRlX18gKChfX2NvbnN0X18pKTsKIyA3MTggIi91c3IvaW5jbHVk ZS9zdGRsaWIuaCIgMwpleHRlcm4gY2hhciAqZWN2dCAoZG91YmxlIF9fdmFsdWUsIGludCBfX25k aWdpdCwgaW50ICpfX3Jlc3RyaWN0IF9fZGVjcHQsCiAgICAgICAgICAgICAgICAgICBpbnQgKl9f cmVzdHJpY3QgX19zaWduKSB0aHJvdyAoKTsKCgoKCmV4dGVybiBjaGFyICpmY3Z0IChkb3VibGUg X192YWx1ZSwgaW50IF9fbmRpZ2l0LCBpbnQgKl9fcmVzdHJpY3QgX19kZWNwdCwKICAgICAgICAg ICAgICAgICAgIGludCAqX19yZXN0cmljdCBfX3NpZ24pIHRocm93ICgpOwoKCgoKZXh0ZXJuIGNo YXIgKmdjdnQgKGRvdWJsZSBfX3ZhbHVlLCBpbnQgX19uZGlnaXQsIGNoYXIgKl9fYnVmKSB0aHJv dyAoKTsKCgpleHRlcm4gY2hhciAqcWVjdnQgKGxvbmcgZG91YmxlIF9fdmFsdWUsIGludCBfX25k aWdpdCwKICAgICAgICAgICAgICAgICAgICBpbnQgKl9fcmVzdHJpY3QgX19kZWNwdCwgaW50ICpf X3Jlc3RyaWN0IF9fc2lnbikgdGhyb3cgKCk7CmV4dGVybiBjaGFyICpxZmN2dCAobG9uZyBkb3Vi bGUgX192YWx1ZSwgaW50IF9fbmRpZ2l0LAogICAgICAgICAgICAgICAgICAgIGludCAqX19yZXN0 cmljdCBfX2RlY3B0LCBpbnQgKl9fcmVzdHJpY3QgX19zaWduKSB0aHJvdyAoKTsKZXh0ZXJuIGNo YXIgKnFnY3Z0IChsb25nIGRvdWJsZSBfX3ZhbHVlLCBpbnQgX19uZGlnaXQsIGNoYXIgKl9fYnVm KSB0aHJvdyAoKTsKCgoKCgpleHRlcm4gaW50IGVjdnRfciAoZG91YmxlIF9fdmFsdWUsIGludCBf X25kaWdpdCwgaW50ICpfX3Jlc3RyaWN0IF9fZGVjcHQsCiAgICAgICAgICAgICAgICAgICBpbnQg Kl9fcmVzdHJpY3QgX19zaWduLCBjaGFyICpfX3Jlc3RyaWN0IF9fYnVmLAogICAgICAgICAgICAg ICAgICAgc2l6ZV90IF9fbGVuKSB0aHJvdyAoKTsKZXh0ZXJuIGludCBmY3Z0X3IgKGRvdWJsZSBf X3ZhbHVlLCBpbnQgX19uZGlnaXQsIGludCAqX19yZXN0cmljdCBfX2RlY3B0LAogICAgICAgICAg ICAgICAgICAgaW50ICpfX3Jlc3RyaWN0IF9fc2lnbiwgY2hhciAqX19yZXN0cmljdCBfX2J1ZiwK ICAgICAgICAgICAgICAgICAgIHNpemVfdCBfX2xlbikgdGhyb3cgKCk7CgpleHRlcm4gaW50IHFl Y3Z0X3IgKGxvbmcgZG91YmxlIF9fdmFsdWUsIGludCBfX25kaWdpdCwKICAgICAgICAgICAgICAg ICAgICBpbnQgKl9fcmVzdHJpY3QgX19kZWNwdCwgaW50ICpfX3Jlc3RyaWN0IF9fc2lnbiwKICAg ICAgICAgICAgICAgICAgICBjaGFyICpfX3Jlc3RyaWN0IF9fYnVmLCBzaXplX3QgX19sZW4pIHRo cm93ICgpOwpleHRlcm4gaW50IHFmY3Z0X3IgKGxvbmcgZG91YmxlIF9fdmFsdWUsIGludCBfX25k aWdpdCwKICAgICAgICAgICAgICAgICAgICBpbnQgKl9fcmVzdHJpY3QgX19kZWNwdCwgaW50ICpf X3Jlc3RyaWN0IF9fc2lnbiwKICAgICAgICAgICAgICAgICAgICBjaGFyICpfX3Jlc3RyaWN0IF9f YnVmLCBzaXplX3QgX19sZW4pIHRocm93ICgpOwoKCgoKCgpleHRlcm4gaW50IG1ibGVuIChfX2Nv bnN0IGNoYXIgKl9fcywgc2l6ZV90IF9fbikgdGhyb3cgKCk7CgoKZXh0ZXJuIGludCBtYnRvd2Mg KHdjaGFyX3QgKl9fcmVzdHJpY3QgX19wd2MsCiAgICAgICAgICAgICAgICAgICBfX2NvbnN0IGNo YXIgKl9fcmVzdHJpY3QgX19zLCBzaXplX3QgX19uKSB0aHJvdyAoKTsKCgpleHRlcm4gaW50IHdj dG9tYiAoY2hhciAqX19zLCB3Y2hhcl90IF9fd2NoYXIpIHRocm93ICgpOwoKCgpleHRlcm4gc2l6 ZV90IG1ic3Rvd2NzICh3Y2hhcl90ICpfX3Jlc3RyaWN0IF9fcHdjcywKICAgICAgICAgICAgICAg ICAgICAgICAgX19jb25zdCBjaGFyICpfX3Jlc3RyaWN0IF9fcywgc2l6ZV90IF9fbikgdGhyb3cg KCk7CgpleHRlcm4gc2l6ZV90IHdjc3RvbWJzIChjaGFyICpfX3Jlc3RyaWN0IF9fcywKICAgICAg ICAgICAgICAgICAgICAgICAgX19jb25zdCB3Y2hhcl90ICpfX3Jlc3RyaWN0IF9fcHdjcywgc2l6 ZV90IF9fbikKICAgICB0aHJvdyAoKTsKCgoKCgoKCmV4dGVybiBpbnQgcnBtYXRjaCAoX19jb25z dCBjaGFyICpfX3Jlc3BvbnNlKSB0aHJvdyAoKTsKIyA4NDAgIi91c3IvaW5jbHVkZS9zdGRsaWIu aCIgMwpleHRlcm4gaW50IGdldGxvYWRhdmcgKGRvdWJsZSBfX2xvYWRhdmdbXSwgaW50IF9fbmVs ZW0pIHRocm93ICgpOwoKCgoKCn0KCiMgMiAic2xvdHMuaCIgMgoKIyAzMyAiL3Vzci9saWIvcXQt Mi4yLjAvaW5jbHVkZS9xYXBwbGljYXRpb24uaCIgMSAzCiMgMzMgIi91c3IvbGliL3F0LTIuMi4w L2luY2x1ZGUvcXdpZGdldC5oIiAxIDMKIyAzNCAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9x d2luZG93ZGVmcy5oIiAxIDMKIyAzMyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xb2JqZWN0 ZGVmcy5oIiAxIDMKIyAzMTIgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWdsb2JhbC5oIiAx IDMKdHlwZWRlZiB1bnNpZ25lZCBjaGFyIHVjaGFyOwp0eXBlZGVmIHVuc2lnbmVkIHNob3J0IHVz aG9ydDsKdHlwZWRlZiB1bnNpZ25lZCB1aW50Owp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgdWxvbmc7 CnR5cGVkZWYgY2hhciAqcGNoYXI7CnR5cGVkZWYgdWNoYXIgKnB1Y2hhcjsKdHlwZWRlZiBjb25z dCBjaGFyICpwY2NoYXI7CgoKCgoKCgpjb25zdCBib29sIEZBTFNFID0gMDsKY29uc3QgYm9vbCBU UlVFID0gITA7CiMgMzUwICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FnbG9iYWwuaCIgMwpp bmxpbmUgaW50IHFSb3VuZCggZG91YmxlIGQgKQp7CiAgICByZXR1cm4gZCA+IDAuMCA/IGludChk KzAuNSkgOiBpbnQoZC0wLjUpOwp9CiMgMzYyICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3Fn bG9iYWwuaCIgMwoKdHlwZWRlZiBzaWduZWQgY2hhciBJTlQ4Owp0eXBlZGVmIHVuc2lnbmVkIGNo YXIgVUlOVDg7CnR5cGVkZWYgc2hvcnQgSU5UMTY7CnR5cGVkZWYgdW5zaWduZWQgc2hvcnQgVUlO VDE2Owp0eXBlZGVmIGludCBJTlQzMjsKdHlwZWRlZiB1bnNpZ25lZCBpbnQgVUlOVDMyOwoKCnR5 cGVkZWYgc2lnbmVkIGNoYXIgUV9JTlQ4Owp0eXBlZGVmIHVuc2lnbmVkIGNoYXIgUV9VSU5UODsK dHlwZWRlZiBzaG9ydCBRX0lOVDE2Owp0eXBlZGVmIHVuc2lnbmVkIHNob3J0IFFfVUlOVDE2Owp0 eXBlZGVmIGludCBRX0lOVDMyOwp0eXBlZGVmIHVuc2lnbmVkIGludCBRX1VJTlQzMjsKdHlwZWRl ZiBsb25nIFFfSU5UNjQ7CnR5cGVkZWYgdW5zaWduZWQgbG9uZyBRX1VJTlQ2NDsKCgoKCgpjbGFz cyBRRGF0YVN0cmVhbTsKCgoKCgoKCgoKIyAzNiAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9x ZmVhdHVyZXMuaCIgMSAzCiMgMzk0ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FnbG9iYWwu aCIgMiAzCiMgNDMxICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FnbG9iYWwuaCIgMwogY29u c3QgY2hhciAqcVZlcnNpb24oKTsKIGJvb2wgcVN5c0luZm8oIGludCAqd29yZFNpemUsIGJvb2wg KmJpZ0VuZGlhbiApOwoKCgoKCgojIDQ5MyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xZ2xv YmFsLmgiIDMKIHZvaWQgcURlYnVnKCBjb25zdCBjaGFyICosIC4uLiApCgogICAgX19hdHRyaWJ1 dGVfXyAoKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpCgo7Cgogdm9pZCBxV2FybmluZyggY29uc3Qg Y2hhciAqLCAuLi4gKQoKICAgIF9fYXR0cmlidXRlX18gKChmb3JtYXQgKHByaW50ZiwgMSwgMikp KQoKOwoKIHZvaWQgcUZhdGFsKCBjb25zdCBjaGFyICosIC4uLiApCgogICAgX19hdHRyaWJ1dGVf XyAoKGZvcm1hdCAocHJpbnRmLCAxLCAyKSkpCgo7CgoKCgoKCgogdm9pZCBkZWJ1ZyggY29uc3Qg Y2hhciAqLCAuLi4gKQoKICAgIF9fYXR0cmlidXRlX18gKChmb3JtYXQgKHByaW50ZiwgMSwgMikp KQoKOwoKIHZvaWQgd2FybmluZyggY29uc3QgY2hhciAqLCAuLi4gKQoKICAgIF9fYXR0cmlidXRl X18gKChmb3JtYXQgKHByaW50ZiwgMSwgMikpKQoKOwoKIHZvaWQgZmF0YWwoIGNvbnN0IGNoYXIg KiwgLi4uICkKCiAgICBfX2F0dHJpYnV0ZV9fICgoZm9ybWF0IChwcmludGYsIDEsIDIpKSkKCjsK CgojIDU1MiAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xZ2xvYmFsLmgiIDMKIGJvb2wgcXRf Y2hlY2tfcG9pbnRlciggYm9vbCBjLCBjb25zdCBjaGFyICosIGludCApOwoKCgoKCgoKZW51bSBR dE1zZ1R5cGUgeyBRdERlYnVnTXNnLCBRdFdhcm5pbmdNc2csIFF0RmF0YWxNc2cgfTsKCnR5cGVk ZWYgdm9pZCAoKm1zZ19oYW5kbGVyKShRdE1zZ1R5cGUsIGNvbnN0IGNoYXIgKik7CiBtc2dfaGFu ZGxlciBxSW5zdGFsbE1zZ0hhbmRsZXIoIG1zZ19oYW5kbGVyICk7CgoKIHZvaWQgcVN1cHByZXNz T2Jzb2xldGVXYXJuaW5ncyggYm9vbCA9IFRSVUUgKTsKCgoKIHZvaWQgcU9ic29sZXRlKCBjb25z dCBjaGFyICpvYmosIGNvbnN0IGNoYXIgKm9sZGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICpuZXdmdW5jICk7CiB2b2lkIHFPYnNvbGV0ZSggY29uc3QgY2hhciAqb2Jq LCBjb25zdCBjaGFyICpvbGRmdW5jICk7CiB2b2lkIHFPYnNvbGV0ZSggY29uc3QgY2hhciAqbWVz c2FnZSApOwojIDMzICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FvYmplY3RkZWZzLmgiIDIg MwojIDEwNiAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xb2JqZWN0ZGVmcy5oIiAzCmNsYXNz IFFPYmplY3Q7CmNsYXNzIFFNZXRhT2JqZWN0OwpjbGFzcyBRU2lnbmFsOwpjbGFzcyBRQ29ubmVj dGlvbjsKY2xhc3MgUUV2ZW50OwpzdHJ1Y3QgUU1ldGFEYXRhOwpjbGFzcyBRQ29ubmVjdGlvbkxp c3Q7CmNsYXNzIFFDb25uZWN0aW9uTGlzdEl0OwpjbGFzcyBRU2lnbmFsRGljdDsKY2xhc3MgUVNp Z25hbERpY3RJdDsKY2xhc3MgUU9iamVjdExpc3Q7CmNsYXNzIFFPYmplY3RMaXN0SXQ7CmNsYXNz IFFNZW1iZXJEaWN0OwoKCiMgMzQgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXdpbmRvd2Rl ZnMuaCIgMiAzCgojIDM0ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FzdHJpbmcuaCIgMSAz CiMgMzQgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWNzdHJpbmcuaCIgMSAzCiMgMzMgIi91 c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWFycmF5LmgiIDEgMwojIDMzICIvdXNyL2xpYi9xdC0y LjIuMC9pbmNsdWRlL3FnYXJyYXkuaCIgMSAzCiMgMzYgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1 ZGUvcXNoYXJlZC5oIiAxIDMKc3RydWN0IFFTaGFyZWQKewogICAgUVNoYXJlZCgpIHsgY291bnQg PSAxOyB9CiAgICB2b2lkIHJlZigpIHsgY291bnQrKzsgfQogICAgYm9vbCBkZXJlZigpIHsgcmV0 dXJuICEtLWNvdW50OyB9CiAgICB1aW50IGNvdW50Owp9OwoKCiMgMzMgIi91c3IvbGliL3F0LTIu Mi4wL2luY2x1ZGUvcWdhcnJheS5oIiAyIDMKCgoKY2xhc3MgUUdBcnJheQp7CmZyaWVuZCBjbGFz cyBRQnVmZmVyOwpwdWJsaWM6CgogICAgc3RydWN0IGFycmF5X2RhdGEgOiBwdWJsaWMgUVNoYXJl ZCB7CiAgICAgICAgYXJyYXlfZGF0YSgpIHsgZGF0YT0wOyBsZW49MDsgfQogICAgICAgIGNoYXIg KmRhdGE7CiAgICAgICAgdWludCBsZW47CiAgICB9OwogICAgUUdBcnJheSgpOwpwcm90ZWN0ZWQ6 CiAgICBRR0FycmF5KCBpbnQsIGludCApOwogICAgUUdBcnJheSggaW50IHNpemUgKTsKICAgIFFH QXJyYXkoIGNvbnN0IFFHQXJyYXkgJmEgKTsKICAgIHZpcnR1YWwgflFHQXJyYXkoKTsKCiAgICBR R0FycmF5ICZvcGVyYXRvcj0oIGNvbnN0IFFHQXJyYXkgJmEgKSB7IHJldHVybiBhc3NpZ24oIGEg KTsgfQoKICAgIHZpcnR1YWwgdm9pZCBkZXRhY2goKSB7IGR1cGxpY2F0ZSgqdGhpcyk7IH0KCiAg ICBjaGFyICpkYXRhKCkgY29uc3QgeyByZXR1cm4gc2hkLT5kYXRhOyB9CiAgICB1aW50IG5yZWZz KCkgY29uc3QgeyByZXR1cm4gc2hkLT5jb3VudDsgfQogICAgdWludCBzaXplKCkgY29uc3QgeyBy ZXR1cm4gc2hkLT5sZW47IH0KICAgIGJvb2wgaXNFcXVhbCggY29uc3QgUUdBcnJheSAmYSApIGNv bnN0OwoKICAgIGJvb2wgcmVzaXplKCB1aW50IG5ld3NpemUgKTsKCiAgICBib29sIGZpbGwoIGNv bnN0IGNoYXIgKmQsIGludCBsZW4sIHVpbnQgc3ogKTsKCiAgICBRR0FycmF5ICZhc3NpZ24oIGNv bnN0IFFHQXJyYXkgJmEgKTsKICAgIFFHQXJyYXkgJmFzc2lnbiggY29uc3QgY2hhciAqZCwgdWlu dCBsZW4gKTsKICAgIFFHQXJyYXkgJmR1cGxpY2F0ZSggY29uc3QgUUdBcnJheSAmYSApOwogICAg UUdBcnJheSAmZHVwbGljYXRlKCBjb25zdCBjaGFyICpkLCB1aW50IGxlbiApOwogICAgdm9pZCBz dG9yZSggY29uc3QgY2hhciAqZCwgdWludCBsZW4gKTsKCiAgICBhcnJheV9kYXRhICpzaGFyZWRC bG9jaygpIGNvbnN0IHsgcmV0dXJuIHNoZDsgfQogICAgdm9pZCBzZXRTaGFyZWRCbG9jayggYXJy YXlfZGF0YSAqcCApIHsgc2hkPShhcnJheV9kYXRhKilwOyB9CgogICAgUUdBcnJheSAmc2V0UmF3 RGF0YSggY29uc3QgY2hhciAqZCwgdWludCBsZW4gKTsKICAgIHZvaWQgcmVzZXRSYXdEYXRhKCBj b25zdCBjaGFyICpkLCB1aW50IGxlbiApOwoKICAgIGludCBmaW5kKCBjb25zdCBjaGFyICpkLCB1 aW50IGluZGV4LCB1aW50IHN6ICkgY29uc3Q7CiAgICBpbnQgY29udGFpbnMoIGNvbnN0IGNoYXIg KmQsIHVpbnQgc3ogKSBjb25zdDsKCiAgICB2b2lkIHNvcnQoIHVpbnQgc3ogKTsKICAgIGludCBi c2VhcmNoKCBjb25zdCBjaGFyICpkLCB1aW50IHN6ICkgY29uc3Q7CgogICAgY2hhciAqYXQoIHVp bnQgaW5kZXggKSBjb25zdDsKCiAgICBib29sIHNldEV4cGFuZCggdWludCBpbmRleCwgY29uc3Qg Y2hhciAqZCwgdWludCBzeiApOwoKcHJvdGVjdGVkOgogICAgdmlydHVhbCBhcnJheV9kYXRhICpu ZXdEYXRhKCk7CiAgICB2aXJ0dWFsIHZvaWQgZGVsZXRlRGF0YSggYXJyYXlfZGF0YSAqcCApOwoK cHJpdmF0ZToKICAgIHN0YXRpYyB2b2lkIG1zZ19pbmRleCggdWludCApOwogICAgYXJyYXlfZGF0 YSAqc2hkOwp9OwoKCmlubGluZSBjaGFyICpRR0FycmF5OjphdCggdWludCBpbmRleCApIGNvbnN0 CnsKCiAgICBpZiAoIGluZGV4ID49IHNpemUoKSApIHsKICAgICAgICBtc2dfaW5kZXgoIGluZGV4 ICk7CiAgICAgICAgaW5kZXggPSAwOwogICAgfQoKICAgIHJldHVybiAmc2hkLT5kYXRhW2luZGV4 XTsKfQoKCiMgMzMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWFycmF5LmgiIDIgMwoKCgp0 ZW1wbGF0ZTxjbGFzcyB0eXBlPiBjbGFzcyBRQXJyYXkgOiBwdWJsaWMgUUdBcnJheQp7CnB1Ymxp YzoKICAgIHR5cGVkZWYgdHlwZSogSXRlcmF0b3I7CiAgICB0eXBlZGVmIGNvbnN0IHR5cGUqIENv bnN0SXRlcmF0b3I7CiAgICB0eXBlZGVmIHR5cGUgVmFsdWVUeXBlOwoKcHJvdGVjdGVkOgogICAg UUFycmF5KCBpbnQsIGludCApIDogUUdBcnJheSggMCwgMCApIHt9CgpwdWJsaWM6CiAgICBRQXJy YXkoKSB7fQogICAgUUFycmF5KCBpbnQgc2l6ZSApIDogUUdBcnJheShzaXplKnNpemVvZih0eXBl KSkge30KICAgIFFBcnJheSggY29uc3QgUUFycmF5PHR5cGU+ICZhICkgOiBRR0FycmF5KGEpIHt9 CiAgIH5RQXJyYXkoKSB7fQogICAgUUFycmF5PHR5cGU+ICZvcGVyYXRvcj0oY29uc3QgUUFycmF5 PHR5cGU+ICZhKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgcmV0dXJuIChRQXJy YXk8dHlwZT4mKVFHQXJyYXk6OmFzc2lnbihhKTsgfQogICAgdHlwZSAqZGF0YSgpIGNvbnN0IHsg cmV0dXJuICh0eXBlICopUUdBcnJheTo6ZGF0YSgpOyB9CiAgICB1aW50IG5yZWZzKCkgY29uc3Qg eyByZXR1cm4gUUdBcnJheTo6bnJlZnMoKTsgfQogICAgdWludCBzaXplKCkgY29uc3QgeyByZXR1 cm4gUUdBcnJheTo6c2l6ZSgpL3NpemVvZih0eXBlKTsgfQogICAgdWludCBjb3VudCgpIGNvbnN0 IHsgcmV0dXJuIHNpemUoKTsgfQogICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gUUdB cnJheTo6c2l6ZSgpID09IDA7IH0KICAgIGJvb2wgaXNOdWxsKCkgY29uc3QgeyByZXR1cm4gUUdB cnJheTo6ZGF0YSgpID09IDA7IH0KICAgIGJvb2wgcmVzaXplKCB1aW50IHNpemUgKSB7IHJldHVy biBRR0FycmF5OjpyZXNpemUoc2l6ZSpzaXplb2YodHlwZSkpOyB9CiAgICBib29sIHRydW5jYXRl KCB1aW50IHBvcyApIHsgcmV0dXJuIFFHQXJyYXk6OnJlc2l6ZShwb3Mqc2l6ZW9mKHR5cGUpKTsg fQogICAgYm9vbCBmaWxsKCBjb25zdCB0eXBlICZkLCBpbnQgc2l6ZSA9IC0xICkKICAgICAgICB7 IHJldHVybiBRR0FycmF5OjpmaWxsKChjaGFyKikmZCxzaXplLHNpemVvZih0eXBlKSApOyB9CiAg ICB2b2lkIGRldGFjaCgpIHsgUUdBcnJheTo6ZGV0YWNoKCk7IH0KICAgIFFBcnJheTx0eXBlPiBj b3B5KCkgY29uc3QKICAgICAgICB7IFFBcnJheTx0eXBlPiB0bXA7IHJldHVybiB0bXAuZHVwbGlj YXRlKCp0aGlzKTsgfQogICAgUUFycmF5PHR5cGU+JiBhc3NpZ24oIGNvbnN0IFFBcnJheTx0eXBl PiYgYSApCiAgICAgICAgeyByZXR1cm4gKFFBcnJheTx0eXBlPiYpUUdBcnJheTo6YXNzaWduKGEp OyB9CiAgICBRQXJyYXk8dHlwZT4mIGFzc2lnbiggY29uc3QgdHlwZSAqYSwgdWludCBuICkKICAg ICAgICB7IHJldHVybiAoUUFycmF5PHR5cGU+JilRR0FycmF5Ojphc3NpZ24oKGNoYXIqKWEsbipz aXplb2YodHlwZSkpOyB9CiAgICBRQXJyYXk8dHlwZT4mIGR1cGxpY2F0ZSggY29uc3QgUUFycmF5 PHR5cGU+JiBhICkKICAgICAgICB7IHJldHVybiAoUUFycmF5PHR5cGU+JilRR0FycmF5OjpkdXBs aWNhdGUoYSk7IH0KICAgIFFBcnJheTx0eXBlPiYgZHVwbGljYXRlKCBjb25zdCB0eXBlICphLCB1 aW50IG4gKQogICAgICAgIHsgcmV0dXJuIChRQXJyYXk8dHlwZT4mKVFHQXJyYXk6OmR1cGxpY2F0 ZSgoY2hhciopYSxuKnNpemVvZih0eXBlKSk7IH0KICAgIFFBcnJheTx0eXBlPiYgc2V0UmF3RGF0 YSggY29uc3QgdHlwZSAqYSwgdWludCBuICkKICAgICAgICB7IHJldHVybiAoUUFycmF5PHR5cGU+ JilRR0FycmF5OjpzZXRSYXdEYXRhKChjaGFyKilhLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4qc2l6ZW9mKHR5cGUpKTsgfQogICAgdm9pZCBy ZXNldFJhd0RhdGEoIGNvbnN0IHR5cGUgKmEsIHVpbnQgbiApCiAgICAgICAgeyBRR0FycmF5Ojpy ZXNldFJhd0RhdGEoKGNoYXIqKWEsbipzaXplb2YodHlwZSkpOyB9CiAgICBpbnQgZmluZCggY29u c3QgdHlwZSAmZCwgdWludCBpPTAgKSBjb25zdAogICAgICAgIHsgcmV0dXJuIFFHQXJyYXk6OmZp bmQoKGNoYXIqKSZkLGksc2l6ZW9mKHR5cGUpKTsgfQogICAgaW50IGNvbnRhaW5zKCBjb25zdCB0 eXBlICZkICkgY29uc3QKICAgICAgICB7IHJldHVybiBRR0FycmF5Ojpjb250YWlucygoY2hhciop JmQsc2l6ZW9mKHR5cGUpKTsgfQogICAgdm9pZCBzb3J0KCkgeyBRR0FycmF5Ojpzb3J0KHNpemVv Zih0eXBlKSk7IH0KICAgIGludCBic2VhcmNoKCBjb25zdCB0eXBlICZkICkgY29uc3QKICAgICAg ICB7IHJldHVybiBRR0FycmF5Ojpic2VhcmNoKChjb25zdCBjaGFyKikmZCxzaXplb2YodHlwZSkp OyB9CiAgICB0eXBlJiBvcGVyYXRvcltdKCBpbnQgaSApIGNvbnN0CiAgICAgICAgeyByZXR1cm4g KHR5cGUgJikoKih0eXBlICopUUdBcnJheTo6YXQoaSpzaXplb2YodHlwZSkpKTsgfQogICAgdHlw ZSYgYXQoIHVpbnQgaSApIGNvbnN0CiAgICAgICAgeyByZXR1cm4gKHR5cGUgJikoKih0eXBlICop UUdBcnJheTo6YXQoaSpzaXplb2YodHlwZSkpKTsgfQogICAgICAgICBvcGVyYXRvciBjb25zdCB0 eXBlKigpIGNvbnN0IHsgcmV0dXJuIChjb25zdCB0eXBlICopUUdBcnJheTo6ZGF0YSgpOyB9CiAg ICBib29sIG9wZXJhdG9yPT0oIGNvbnN0IFFBcnJheTx0eXBlPiAmYSApIGNvbnN0IHsgcmV0dXJu IGlzRXF1YWwoYSk7IH0KICAgIGJvb2wgb3BlcmF0b3IhPSggY29uc3QgUUFycmF5PHR5cGU+ICZh ICkgY29uc3QgeyByZXR1cm4gIWlzRXF1YWwoYSk7IH0KICAgIEl0ZXJhdG9yIGJlZ2luKCkgeyBy ZXR1cm4gZGF0YSgpOyB9CiAgICBJdGVyYXRvciBlbmQoKSB7IHJldHVybiBkYXRhKCkgKyBzaXpl KCk7IH0KICAgIENvbnN0SXRlcmF0b3IgYmVnaW4oKSBjb25zdCB7IHJldHVybiBkYXRhKCk7IH0K ICAgIENvbnN0SXRlcmF0b3IgZW5kKCkgY29uc3QgeyByZXR1cm4gZGF0YSgpICsgc2l6ZSgpOyB9 Cn07CgoKIyAzNCAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xY3N0cmluZy5oIiAyIDMKCgoK IyAyOCAiL3Vzci9pbmNsdWRlL3N0cmluZy5oIiAxIDMKZXh0ZXJuICJDIiB7CgoKCgoKCgoKZXh0 ZXJuIHZvaWQgKm1lbWNweSAodm9pZCAqX19yZXN0cmljdCBfX2Rlc3QsCiAgICAgICAgICAgICAg ICAgICAgIF9fY29uc3Qgdm9pZCAqX19yZXN0cmljdCBfX3NyYywgc2l6ZV90IF9fbikgdGhyb3cg KCk7CgoKZXh0ZXJuIHZvaWQgKm1lbW1vdmUgKHZvaWQgKl9fZGVzdCwgX19jb25zdCB2b2lkICpf X3NyYywgc2l6ZV90IF9fbikKICAgICB0aHJvdyAoKTsKCgoKCgpleHRlcm4gdm9pZCAqbWVtY2Nw eSAodm9pZCAqX19yZXN0cmljdCBfX2Rlc3QsIF9fY29uc3Qgdm9pZCAqX19yZXN0cmljdCBfX3Ny YywKICAgICAgICAgICAgICAgICAgICAgIGludCBfX2MsIHNpemVfdCBfX24pCiAgICAgdGhyb3cg KCk7CgoKCgpleHRlcm4gdm9pZCAqbWVtc2V0ICh2b2lkICpfX3MsIGludCBfX2MsIHNpemVfdCBf X24pIHRocm93ICgpOwoKCmV4dGVybiBpbnQgbWVtY21wIChfX2NvbnN0IHZvaWQgKl9fczEsIF9f Y29uc3Qgdm9pZCAqX19zMiwgc2l6ZV90IF9fbikKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9f ICgoX19wdXJlX18pKTsKCgpleHRlcm4gdm9pZCAqbWVtY2hyIChfX2NvbnN0IHZvaWQgKl9fcywg aW50IF9fYywgc2l6ZV90IF9fbikKICAgICAgdGhyb3cgKCkgX19hdHRyaWJ1dGVfXyAoKF9fcHVy ZV9fKSk7CgojIDc3ICIvdXNyL2luY2x1ZGUvc3RyaW5nLmgiIDMKZXh0ZXJuIGNoYXIgKnN0cmNw eSAoY2hhciAqX19yZXN0cmljdCBfX2Rlc3QsIF9fY29uc3QgY2hhciAqX19yZXN0cmljdCBfX3Ny YykKICAgICB0aHJvdyAoKTsKCmV4dGVybiBjaGFyICpzdHJuY3B5IChjaGFyICpfX3Jlc3RyaWN0 IF9fZGVzdCwKICAgICAgICAgICAgICAgICAgICAgIF9fY29uc3QgY2hhciAqX19yZXN0cmljdCBf X3NyYywgc2l6ZV90IF9fbikgdGhyb3cgKCk7CgoKZXh0ZXJuIGNoYXIgKnN0cmNhdCAoY2hhciAq X19yZXN0cmljdCBfX2Rlc3QsIF9fY29uc3QgY2hhciAqX19yZXN0cmljdCBfX3NyYykKICAgICB0 aHJvdyAoKTsKCmV4dGVybiBjaGFyICpzdHJuY2F0IChjaGFyICpfX3Jlc3RyaWN0IF9fZGVzdCwg X19jb25zdCBjaGFyICpfX3Jlc3RyaWN0IF9fc3JjLAogICAgICAgICAgICAgICAgICAgICAgc2l6 ZV90IF9fbikgdGhyb3cgKCk7CgoKZXh0ZXJuIGludCBzdHJjbXAgKF9fY29uc3QgY2hhciAqX19z MSwgX19jb25zdCBjaGFyICpfX3MyKQogICAgIHRocm93ICgpIF9fYXR0cmlidXRlX18gKChfX3B1 cmVfXykpOwoKZXh0ZXJuIGludCBzdHJuY21wIChfX2NvbnN0IGNoYXIgKl9fczEsIF9fY29uc3Qg Y2hhciAqX19zMiwgc2l6ZV90IF9fbikKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19w dXJlX18pKTsKCgpleHRlcm4gaW50IHN0cmNvbGwgKF9fY29uc3QgY2hhciAqX19zMSwgX19jb25z dCBjaGFyICpfX3MyKQogICAgIHRocm93ICgpIF9fYXR0cmlidXRlX18gKChfX3B1cmVfXykpOwoK ZXh0ZXJuIHNpemVfdCBzdHJ4ZnJtIChjaGFyICpfX3Jlc3RyaWN0IF9fZGVzdCwKICAgICAgICAg ICAgICAgICAgICAgICBfX2NvbnN0IGNoYXIgKl9fcmVzdHJpY3QgX19zcmMsIHNpemVfdCBfX24p IHRocm93ICgpOwoKIyAxMjAgIi91c3IvaW5jbHVkZS9zdHJpbmcuaCIgMwpleHRlcm4gY2hhciAq c3RyZHVwIChfX2NvbnN0IGNoYXIgKl9fcykgdGhyb3cgKCkgX19hdHRyaWJ1dGVfXyAoKF9fbWFs bG9jX18pKTsKIyAxNTUgIi91c3IvaW5jbHVkZS9zdHJpbmcuaCIgMwpleHRlcm4gY2hhciAqc3Ry Y2hyIChfX2NvbnN0IGNoYXIgKl9fcywgaW50IF9fYykgdGhyb3cgKCkgX19hdHRyaWJ1dGVfXyAo KF9fcHVyZV9fKSk7CgpleHRlcm4gY2hhciAqc3RycmNociAoX19jb25zdCBjaGFyICpfX3MsIGlu dCBfX2MpIHRocm93ICgpIF9fYXR0cmlidXRlX18gKChfX3B1cmVfXykpOwoKIyAxNjcgIi91c3Iv aW5jbHVkZS9zdHJpbmcuaCIgMwpleHRlcm4gc2l6ZV90IHN0cmNzcG4gKF9fY29uc3QgY2hhciAq X19zLCBfX2NvbnN0IGNoYXIgKl9fcmVqZWN0KQogICAgIHRocm93ICgpIF9fYXR0cmlidXRlX18g KChfX3B1cmVfXykpOwoKCmV4dGVybiBzaXplX3Qgc3Ryc3BuIChfX2NvbnN0IGNoYXIgKl9fcywg X19jb25zdCBjaGFyICpfX2FjY2VwdCkKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19w dXJlX18pKTsKCmV4dGVybiBjaGFyICpzdHJwYnJrIChfX2NvbnN0IGNoYXIgKl9fcywgX19jb25z dCBjaGFyICpfX2FjY2VwdCkKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18p KTsKCmV4dGVybiBjaGFyICpzdHJzdHIgKF9fY29uc3QgY2hhciAqX19oYXlzdGFjaywgX19jb25z dCBjaGFyICpfX25lZWRsZSkKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18p KTsKCiMgMTg5ICIvdXNyL2luY2x1ZGUvc3RyaW5nLmgiIDMKZXh0ZXJuIGNoYXIgKnN0cnRvayAo Y2hhciAqX19yZXN0cmljdCBfX3MsIF9fY29uc3QgY2hhciAqX19yZXN0cmljdCBfX2RlbGltKQog ICAgIHRocm93ICgpOwoKCgpleHRlcm4gY2hhciAqX19zdHJ0b2tfciAoY2hhciAqX19yZXN0cmlj dCBfX3MsCiAgICAgICAgICAgICAgICAgICAgICAgICBfX2NvbnN0IGNoYXIgKl9fcmVzdHJpY3Qg X19kZWxpbSwKICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKipfX3Jlc3RyaWN0IF9fc2F2 ZV9wdHIpIHRocm93ICgpOwoKZXh0ZXJuIGNoYXIgKnN0cnRva19yIChjaGFyICpfX3Jlc3RyaWN0 IF9fcywgX19jb25zdCBjaGFyICpfX3Jlc3RyaWN0IF9fZGVsaW0sCiAgICAgICAgICAgICAgICAg ICAgICAgY2hhciAqKl9fcmVzdHJpY3QgX19zYXZlX3B0cikgdGhyb3cgKCk7CiMgMjIwICIvdXNy L2luY2x1ZGUvc3RyaW5nLmgiIDMKZXh0ZXJuIHNpemVfdCBzdHJsZW4gKF9fY29uc3QgY2hhciAq X19zKSB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18pKTsKCiMgMjMxICIvdXNyL2lu Y2x1ZGUvc3RyaW5nLmgiIDMKZXh0ZXJuIGNoYXIgKnN0cmVycm9yIChpbnQgX19lcnJudW0pIHRo cm93ICgpOwoKCgpleHRlcm4gY2hhciAqX19zdHJlcnJvcl9yIChpbnQgX19lcnJudW0sIGNoYXIg Kl9fYnVmLCBzaXplX3QgX19idWZsZW4pIHRocm93ICgpOwpleHRlcm4gY2hhciAqc3RyZXJyb3Jf ciAoaW50IF9fZXJybnVtLCBjaGFyICpfX2J1Ziwgc2l6ZV90IF9fYnVmbGVuKSB0aHJvdyAoKTsK CgoKCmV4dGVybiB2b2lkIF9fYnplcm8gKHZvaWQgKl9fcywgc2l6ZV90IF9fbikgdGhyb3cgKCk7 CgoKCmV4dGVybiB2b2lkIGJjb3B5IChfX2NvbnN0IHZvaWQgKl9fc3JjLCB2b2lkICpfX2Rlc3Qs IHNpemVfdCBfX24pIHRocm93ICgpOwoKCmV4dGVybiB2b2lkIGJ6ZXJvICh2b2lkICpfX3MsIHNp emVfdCBfX24pIHRocm93ICgpOwoKCmV4dGVybiBpbnQgYmNtcCAoX19jb25zdCB2b2lkICpfX3Mx LCBfX2NvbnN0IHZvaWQgKl9fczIsIHNpemVfdCBfX24pCiAgICAgdGhyb3cgKCkgX19hdHRyaWJ1 dGVfXyAoKF9fcHVyZV9fKSk7CgoKZXh0ZXJuIGNoYXIgKmluZGV4IChfX2NvbnN0IGNoYXIgKl9f cywgaW50IF9fYykgdGhyb3cgKCkgX19hdHRyaWJ1dGVfXyAoKF9fcHVyZV9fKSk7CgoKZXh0ZXJu IGNoYXIgKnJpbmRleCAoX19jb25zdCBjaGFyICpfX3MsIGludCBfX2MpIHRocm93ICgpIF9fYXR0 cmlidXRlX18gKChfX3B1cmVfXykpOwoKCgpleHRlcm4gaW50IF9fZmZzIChpbnQgX19pKSB0aHJv dyAoKSBfX2F0dHJpYnV0ZV9fICgoY29uc3QpKTsKZXh0ZXJuIGludCBmZnMgKGludCBfX2kpIHRo cm93ICgpIF9fYXR0cmlidXRlX18gKChjb25zdCkpOwoKCgojIDI3NiAiL3Vzci9pbmNsdWRlL3N0 cmluZy5oIiAzCmV4dGVybiBpbnQgX19zdHJjYXNlY21wIChfX2NvbnN0IGNoYXIgKl9fczEsIF9f Y29uc3QgY2hhciAqX19zMikKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18p KTsKZXh0ZXJuIGludCBzdHJjYXNlY21wIChfX2NvbnN0IGNoYXIgKl9fczEsIF9fY29uc3QgY2hh ciAqX19zMikKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18pKTsKCgpleHRl cm4gaW50IHN0cm5jYXNlY21wIChfX2NvbnN0IGNoYXIgKl9fczEsIF9fY29uc3QgY2hhciAqX19z Miwgc2l6ZV90IF9fbikKICAgICB0aHJvdyAoKSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18pKTsK IyAzMDAgIi91c3IvaW5jbHVkZS9zdHJpbmcuaCIgMwpleHRlcm4gY2hhciAqc3Ryc2VwIChjaGFy ICoqX19yZXN0cmljdCBfX3N0cmluZ3AsCiAgICAgICAgICAgICAgICAgICAgIF9fY29uc3QgY2hh ciAqX19yZXN0cmljdCBfX2RlbGltKSB0aHJvdyAoKTsKIyAzNjkgIi91c3IvaW5jbHVkZS9zdHJp bmcuaCIgMwp9CgojIDM3ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3Fjc3RyaW5nLmgiIDIg MwojIDY4ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3Fjc3RyaW5nLmgiIDMKIHZvaWQgKnFt ZW1tb3ZlKCB2b2lkICpkc3QsIGNvbnN0IHZvaWQgKnNyYywgdWludCBsZW4gKTsKCgoKCgogY2hh ciAqcXN0cmR1cCggY29uc3QgY2hhciAqICk7CgogaW5saW5lIHVpbnQgY3N0cmxlbiggY29uc3Qg Y2hhciAqc3RyICkKeyByZXR1cm4gc3RybGVuKHN0cik7IH0KCiBpbmxpbmUgdWludCBxc3RybGVu KCBjb25zdCBjaGFyICpzdHIgKQp7IHJldHVybiBzdHIgPyBzdHJsZW4oc3RyKSA6IDA7IH0KCiBp bmxpbmUgY2hhciAqY3N0cmNweSggY2hhciAqZHN0LCBjb25zdCBjaGFyICpzcmMgKQp7IHJldHVy biBzdHJjcHkoZHN0LHNyYyk7IH0KCiBpbmxpbmUgY2hhciAqcXN0cmNweSggY2hhciAqZHN0LCBj b25zdCBjaGFyICpzcmMgKQp7IHJldHVybiBzcmMgPyBzdHJjcHkoZHN0LCBzcmMpIDogMDsgfQoK IGNoYXIgKnFzdHJuY3B5KCBjaGFyICpkc3QsIGNvbnN0IGNoYXIgKnNyYywgdWludCBsZW4gKTsK CiBpbmxpbmUgaW50IGNzdHJjbXAoIGNvbnN0IGNoYXIgKnN0cjEsIGNvbnN0IGNoYXIgKnN0cjIg KQp7IHJldHVybiBzdHJjbXAoc3RyMSxzdHIyKTsgfQoKIGlubGluZSBpbnQgcXN0cmNtcCggY29u c3QgY2hhciAqc3RyMSwgY29uc3QgY2hhciAqc3RyMiApCnsgcmV0dXJuIChzdHIxICYmIHN0cjIp ID8gc3RyY21wKHN0cjEsc3RyMikgOiAoaW50KSgobG9uZylzdHIyIC0gKGxvbmcpc3RyMSk7IH0K CiBpbmxpbmUgaW50IGNzdHJuY21wKCBjb25zdCBjaGFyICpzdHIxLCBjb25zdCBjaGFyICpzdHIy LCB1aW50IGxlbiApCnsgcmV0dXJuIHN0cm5jbXAoc3RyMSxzdHIyLGxlbik7IH0KCiBpbmxpbmUg aW50IHFzdHJuY21wKCBjb25zdCBjaGFyICpzdHIxLCBjb25zdCBjaGFyICpzdHIyLCB1aW50IGxl biApCnsgcmV0dXJuIChzdHIxICYmIHN0cjIpID8gc3RybmNtcChzdHIxLHN0cjIsbGVuKSA6CiAg ICAgICAgICAgICAgICAgICAgICAgICAgKGludCkoKGxvbmcpc3RyMiAtIChsb25nKXN0cjEpOyB9 CgogaW50IHFzdHJpY21wKCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiApOwoKIGludCBxc3Ry bmljbXAoIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCB1aW50IGxlbiApOwoKCgoKCgojIDEz NyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xY3N0cmluZy5oIiAzCiBRX1VJTlQxNiBxQ2hl Y2tzdW0oIGNvbnN0IGNoYXIgKnMsIHVpbnQgbGVuICk7CgoKCgoKCgoKdHlwZWRlZiBRQXJyYXk8 Y2hhcj4gUUJ5dGVBcnJheTsKCgoKCgoKIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRRGF0YVN0 cmVhbSAmLCBjb25zdCBRQnl0ZUFycmF5ICYgKTsKIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+KCBR RGF0YVN0cmVhbSAmLCBRQnl0ZUFycmF5ICYgKTsKIyAxNjMgIi91c3IvbGliL3F0LTIuMi4wL2lu Y2x1ZGUvcWNzdHJpbmcuaCIgMwpjbGFzcyBRUmVnRXhwOwoKY2xhc3MgUUNTdHJpbmcgOiBwdWJs aWMgUUJ5dGVBcnJheQp7CnB1YmxpYzoKICAgIFFDU3RyaW5nKCkge30KICAgIFFDU3RyaW5nKCBp bnQgc2l6ZSApOwogICAgUUNTdHJpbmcoIGNvbnN0IFFDU3RyaW5nICZzICkgOiBRQnl0ZUFycmF5 KCBzICkge30KICAgIFFDU3RyaW5nKCBjb25zdCBjaGFyICpzdHIgKTsKICAgIFFDU3RyaW5nKCBj b25zdCBjaGFyICpzdHIsIHVpbnQgbWF4bGVuICk7CgogICAgUUNTdHJpbmcgJm9wZXJhdG9yPSgg Y29uc3QgUUNTdHJpbmcgJnMgKTsKICAgIFFDU3RyaW5nICZvcGVyYXRvcj0oIGNvbnN0IGNoYXIg KnN0ciApOwoKICAgIGJvb2wgaXNOdWxsKCkgY29uc3Q7CiAgICBib29sIGlzRW1wdHkoKSBjb25z dDsKICAgIHVpbnQgbGVuZ3RoKCkgY29uc3Q7CiAgICBib29sIHJlc2l6ZSggdWludCBuZXdsZW4g KTsKICAgIGJvb2wgdHJ1bmNhdGUoIHVpbnQgcG9zICk7CiAgICBib29sIGZpbGwoIGNoYXIgYywg aW50IGxlbiA9IC0xICk7CgogICAgUUNTdHJpbmcgY29weSgpIGNvbnN0OwoKICAgIFFDU3RyaW5n ICZzcHJpbnRmKCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLiApOwoKICAgIGludCBmaW5kKCBjaGFy IGMsIGludCBpbmRleD0wLCBib29sIGNzPVRSVUUgKSBjb25zdDsKICAgIGludCBmaW5kKCBjb25z dCBjaGFyICpzdHIsIGludCBpbmRleD0wLCBib29sIGNzPVRSVUUgKSBjb25zdDsKICAgIGludCBm aW5kKCBjb25zdCBRUmVnRXhwICYsIGludCBpbmRleD0wICkgY29uc3Q7CiAgICBpbnQgZmluZFJl diggY2hhciBjLCBpbnQgaW5kZXg9LTEsIGJvb2wgY3M9VFJVRSkgY29uc3Q7CiAgICBpbnQgZmlu ZFJldiggY29uc3QgY2hhciAqc3RyLCBpbnQgaW5kZXg9LTEsIGJvb2wgY3M9VFJVRSkgY29uc3Q7 CiAgICBpbnQgZmluZFJldiggY29uc3QgUVJlZ0V4cCAmLCBpbnQgaW5kZXg9LTEgKSBjb25zdDsK ICAgIGludCBjb250YWlucyggY2hhciBjLCBib29sIGNzPVRSVUUgKSBjb25zdDsKICAgIGludCBj b250YWlucyggY29uc3QgY2hhciAqc3RyLCBib29sIGNzPVRSVUUgKSBjb25zdDsKICAgIGludCBj b250YWlucyggY29uc3QgUVJlZ0V4cCAmICkgY29uc3Q7CgogICAgUUNTdHJpbmcgbGVmdCggdWlu dCBsZW4gKSBjb25zdDsKICAgIFFDU3RyaW5nIHJpZ2h0KCB1aW50IGxlbiApIGNvbnN0OwogICAg UUNTdHJpbmcgbWlkKCB1aW50IGluZGV4LCB1aW50IGxlbj0weGZmZmZmZmZmKSBjb25zdDsKCiAg ICBRQ1N0cmluZyBsZWZ0SnVzdGlmeSggdWludCB3aWR0aCwgY2hhciBmaWxsPScgJywgYm9vbCB0 cnVuYz1GQUxTRSljb25zdDsKICAgIFFDU3RyaW5nIHJpZ2h0SnVzdGlmeSggdWludCB3aWR0aCwg Y2hhciBmaWxsPScgJyxib29sIHRydW5jPUZBTFNFKWNvbnN0OwoKICAgIFFDU3RyaW5nIGxvd2Vy KCkgY29uc3Q7CiAgICBRQ1N0cmluZyB1cHBlcigpIGNvbnN0OwoKICAgIFFDU3RyaW5nIHN0cmlw V2hpdGVTcGFjZSgpIGNvbnN0OwogICAgUUNTdHJpbmcgc2ltcGxpZnlXaGl0ZVNwYWNlKCkgY29u c3Q7CgogICAgUUNTdHJpbmcgJmluc2VydCggdWludCBpbmRleCwgY29uc3QgY2hhciAqICk7CiAg ICBRQ1N0cmluZyAmaW5zZXJ0KCB1aW50IGluZGV4LCBjaGFyICk7CiAgICBRQ1N0cmluZyAmYXBw ZW5kKCBjb25zdCBjaGFyICogKTsKICAgIFFDU3RyaW5nICZwcmVwZW5kKCBjb25zdCBjaGFyICog KTsKICAgIFFDU3RyaW5nICZyZW1vdmUoIHVpbnQgaW5kZXgsIHVpbnQgbGVuICk7CiAgICBRQ1N0 cmluZyAmcmVwbGFjZSggdWludCBpbmRleCwgdWludCBsZW4sIGNvbnN0IGNoYXIgKiApOwogICAg UUNTdHJpbmcgJnJlcGxhY2UoIGNvbnN0IFFSZWdFeHAgJiwgY29uc3QgY2hhciAqICk7CgogICAg c2hvcnQgdG9TaG9ydCggYm9vbCAqb2s9MCApIGNvbnN0OwogICAgdXNob3J0IHRvVVNob3J0KCBi b29sICpvaz0wICkgY29uc3Q7CiAgICBpbnQgdG9JbnQoIGJvb2wgKm9rPTAgKSBjb25zdDsKICAg IHVpbnQgdG9VSW50KCBib29sICpvaz0wICkgY29uc3Q7CiAgICBsb25nIHRvTG9uZyggYm9vbCAq b2s9MCApIGNvbnN0OwogICAgdWxvbmcgdG9VTG9uZyggYm9vbCAqb2s9MCApIGNvbnN0OwogICAg ZmxvYXQgdG9GbG9hdCggYm9vbCAqb2s9MCApIGNvbnN0OwogICAgZG91YmxlIHRvRG91YmxlKCBi b29sICpvaz0wICkgY29uc3Q7CgogICAgUUNTdHJpbmcgJnNldFN0ciggY29uc3QgY2hhciAqcyAp OwogICAgUUNTdHJpbmcgJnNldE51bSggc2hvcnQgKTsKICAgIFFDU3RyaW5nICZzZXROdW0oIHVz aG9ydCApOwogICAgUUNTdHJpbmcgJnNldE51bSggaW50ICk7CiAgICBRQ1N0cmluZyAmc2V0TnVt KCB1aW50ICk7CiAgICBRQ1N0cmluZyAmc2V0TnVtKCBsb25nICk7CiAgICBRQ1N0cmluZyAmc2V0 TnVtKCB1bG9uZyApOwogICAgUUNTdHJpbmcgJnNldE51bSggZmxvYXQsIGNoYXIgZj0nZycsIGlu dCBwcmVjPTYgKTsKICAgIFFDU3RyaW5nICZzZXROdW0oIGRvdWJsZSwgY2hhciBmPSdnJywgaW50 IHByZWM9NiApOwoKICAgIGJvb2wgc2V0RXhwYW5kKCB1aW50IGluZGV4LCBjaGFyIGMgKTsKCiAg ICAgICAgICAgICAgICBvcGVyYXRvciBjb25zdCBjaGFyICooKSBjb25zdDsKICAgIFFDU3RyaW5n ICZvcGVyYXRvcis9KCBjb25zdCBjaGFyICpzdHIgKTsKICAgIFFDU3RyaW5nICZvcGVyYXRvcis9 KCBjaGFyIGMgKTsKfTsKCgoKCgoKIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRRGF0YVN0cmVh bSAmLCBjb25zdCBRQ1N0cmluZyAmICk7CiBRRGF0YVN0cmVhbSAmb3BlcmF0b3I+PiggUURhdGFT dHJlYW0gJiwgUUNTdHJpbmcgJiApOwoKCgoKCgppbmxpbmUgUUNTdHJpbmcgJlFDU3RyaW5nOjpv cGVyYXRvcj0oIGNvbnN0IFFDU3RyaW5nICZzICkKeyByZXR1cm4gKFFDU3RyaW5nJilhc3NpZ24o IHMgKTsgfQoKaW5saW5lIFFDU3RyaW5nICZRQ1N0cmluZzo6b3BlcmF0b3I9KCBjb25zdCBjaGFy ICpzdHIgKQp7IHJldHVybiAoUUNTdHJpbmcmKWR1cGxpY2F0ZSggc3RyLCBxc3RybGVuKHN0cikr MSApOyB9CgppbmxpbmUgYm9vbCBRQ1N0cmluZzo6aXNOdWxsKCkgY29uc3QKeyByZXR1cm4gZGF0 YSgpID09IDA7IH0KCmlubGluZSBib29sIFFDU3RyaW5nOjppc0VtcHR5KCkgY29uc3QKeyByZXR1 cm4gZGF0YSgpID09IDAgfHwgKmRhdGEoKSA9PSAnXDAnOyB9CgppbmxpbmUgdWludCBRQ1N0cmlu Zzo6bGVuZ3RoKCkgY29uc3QKeyByZXR1cm4gcXN0cmxlbiggZGF0YSgpICk7IH0KCmlubGluZSBi b29sIFFDU3RyaW5nOjp0cnVuY2F0ZSggdWludCBwb3MgKQp7IHJldHVybiByZXNpemUocG9zKzEp OyB9CgppbmxpbmUgUUNTdHJpbmcgUUNTdHJpbmc6OmNvcHkoKSBjb25zdAp7IHJldHVybiBRQ1N0 cmluZyggZGF0YSgpICk7IH0KCmlubGluZSBRQ1N0cmluZyAmUUNTdHJpbmc6OnByZXBlbmQoIGNv bnN0IGNoYXIgKnMgKQp7IHJldHVybiBpbnNlcnQoMCxzKTsgfQoKaW5saW5lIFFDU3RyaW5nICZR Q1N0cmluZzo6YXBwZW5kKCBjb25zdCBjaGFyICpzICkKeyByZXR1cm4gb3BlcmF0b3IrPShzKTsg fQoKaW5saW5lIFFDU3RyaW5nICZRQ1N0cmluZzo6c2V0TnVtKCBzaG9ydCBuICkKeyByZXR1cm4g c2V0TnVtKChsb25nKW4pOyB9CgppbmxpbmUgUUNTdHJpbmcgJlFDU3RyaW5nOjpzZXROdW0oIHVz aG9ydCBuICkKeyByZXR1cm4gc2V0TnVtKCh1bG9uZyluKTsgfQoKaW5saW5lIFFDU3RyaW5nICZR Q1N0cmluZzo6c2V0TnVtKCBpbnQgbiApCnsgcmV0dXJuIHNldE51bSgobG9uZyluKTsgfQoKaW5s aW5lIFFDU3RyaW5nICZRQ1N0cmluZzo6c2V0TnVtKCB1aW50IG4gKQp7IHJldHVybiBzZXROdW0o KHVsb25nKW4pOyB9CgppbmxpbmUgUUNTdHJpbmcgJlFDU3RyaW5nOjpzZXROdW0oIGZsb2F0IG4s IGNoYXIgZiwgaW50IHByZWMgKQp7IHJldHVybiBzZXROdW0oKGRvdWJsZSluLGYscHJlYyk7IH0K CmlubGluZSBRQ1N0cmluZzo6b3BlcmF0b3IgY29uc3QgY2hhciAqKCkgY29uc3QKeyByZXR1cm4g KGNvbnN0IGNoYXIgKilkYXRhKCk7IH0KCgoKCgoKIGlubGluZSBib29sIG9wZXJhdG9yPT0oIGNv bnN0IFFDU3RyaW5nICZzMSwgY29uc3QgUUNTdHJpbmcgJnMyICkKeyByZXR1cm4gcXN0cmNtcChz MS5kYXRhKCksczIuZGF0YSgpKSA9PSAwOyB9CgogaW5saW5lIGJvb2wgb3BlcmF0b3I9PSggY29u c3QgUUNTdHJpbmcgJnMxLCBjb25zdCBjaGFyICpzMiApCnsgcmV0dXJuIHFzdHJjbXAoczEuZGF0 YSgpLHMyKSA9PSAwOyB9CgogaW5saW5lIGJvb2wgb3BlcmF0b3I9PSggY29uc3QgY2hhciAqczEs IGNvbnN0IFFDU3RyaW5nICZzMiApCnsgcmV0dXJuIHFzdHJjbXAoczEsczIuZGF0YSgpKSA9PSAw OyB9CgogaW5saW5lIGJvb2wgb3BlcmF0b3IhPSggY29uc3QgUUNTdHJpbmcgJnMxLCBjb25zdCBR Q1N0cmluZyAmczIgKQp7IHJldHVybiBxc3RyY21wKHMxLmRhdGEoKSxzMi5kYXRhKCkpICE9IDA7 IH0KCiBpbmxpbmUgYm9vbCBvcGVyYXRvciE9KCBjb25zdCBRQ1N0cmluZyAmczEsIGNvbnN0IGNo YXIgKnMyICkKeyByZXR1cm4gcXN0cmNtcChzMS5kYXRhKCksczIpICE9IDA7IH0KCiBpbmxpbmUg Ym9vbCBvcGVyYXRvciE9KCBjb25zdCBjaGFyICpzMSwgY29uc3QgUUNTdHJpbmcgJnMyICkKeyBy ZXR1cm4gcXN0cmNtcChzMSxzMi5kYXRhKCkpICE9IDA7IH0KCiBpbmxpbmUgYm9vbCBvcGVyYXRv cjwoIGNvbnN0IFFDU3RyaW5nICZzMSwgY29uc3QgUUNTdHJpbmcmIHMyICkKeyByZXR1cm4gcXN0 cmNtcChzMS5kYXRhKCksczIuZGF0YSgpKSA8IDA7IH0KCiBpbmxpbmUgYm9vbCBvcGVyYXRvcjwo IGNvbnN0IFFDU3RyaW5nICZzMSwgY29uc3QgY2hhciAqczIgKQp7IHJldHVybiBxc3RyY21wKHMx LmRhdGEoKSxzMikgPCAwOyB9CgogaW5saW5lIGJvb2wgb3BlcmF0b3I8KCBjb25zdCBjaGFyICpz MSwgY29uc3QgUUNTdHJpbmcgJnMyICkKeyByZXR1cm4gcXN0cmNtcChzMSxzMi5kYXRhKCkpIDwg MDsgfQoKIGlubGluZSBib29sIG9wZXJhdG9yPD0oIGNvbnN0IFFDU3RyaW5nICZzMSwgY29uc3Qg Y2hhciAqczIgKQp7IHJldHVybiBxc3RyY21wKHMxLmRhdGEoKSxzMikgPD0gMDsgfQoKIGlubGlu ZSBib29sIG9wZXJhdG9yPD0oIGNvbnN0IGNoYXIgKnMxLCBjb25zdCBRQ1N0cmluZyAmczIgKQp7 IHJldHVybiBxc3RyY21wKHMxLHMyLmRhdGEoKSkgPD0gMDsgfQoKIGlubGluZSBib29sIG9wZXJh dG9yPiggY29uc3QgUUNTdHJpbmcgJnMxLCBjb25zdCBjaGFyICpzMiApCnsgcmV0dXJuIHFzdHJj bXAoczEuZGF0YSgpLHMyKSA+IDA7IH0KCiBpbmxpbmUgYm9vbCBvcGVyYXRvcj4oIGNvbnN0IGNo YXIgKnMxLCBjb25zdCBRQ1N0cmluZyAmczIgKQp7IHJldHVybiBxc3RyY21wKHMxLHMyLmRhdGEo KSkgPiAwOyB9CgogaW5saW5lIGJvb2wgb3BlcmF0b3I+PSggY29uc3QgUUNTdHJpbmcgJnMxLCBj b25zdCBjaGFyICpzMiApCnsgcmV0dXJuIHFzdHJjbXAoczEuZGF0YSgpLHMyKSA+PSAwOyB9Cgog aW5saW5lIGJvb2wgb3BlcmF0b3I+PSggY29uc3QgY2hhciAqczEsIGNvbnN0IFFDU3RyaW5nICZz MiApCnsgcmV0dXJuIHFzdHJjbXAoczEsczIuZGF0YSgpKSA+PSAwOyB9CgogaW5saW5lIFFDU3Ry aW5nIG9wZXJhdG9yKyggY29uc3QgUUNTdHJpbmcgJnMxLCBjb25zdCBRQ1N0cmluZyAmczIgKQp7 CiAgICBRQ1N0cmluZyB0bXAoIHMxLmRhdGEoKSApOwogICAgdG1wICs9IHMyOwogICAgcmV0dXJu IHRtcDsKfQoKIGlubGluZSBRQ1N0cmluZyBvcGVyYXRvcisoIGNvbnN0IFFDU3RyaW5nICZzMSwg Y29uc3QgY2hhciAqczIgKQp7CiAgICBRQ1N0cmluZyB0bXAoIHMxLmRhdGEoKSApOwogICAgdG1w ICs9IHMyOwogICAgcmV0dXJuIHRtcDsKfQoKIGlubGluZSBRQ1N0cmluZyBvcGVyYXRvcisoIGNv bnN0IGNoYXIgKnMxLCBjb25zdCBRQ1N0cmluZyAmczIgKQp7CiAgICBRQ1N0cmluZyB0bXAoIHMx ICk7CiAgICB0bXAgKz0gczI7CiAgICByZXR1cm4gdG1wOwp9CgogaW5saW5lIFFDU3RyaW5nIG9w ZXJhdG9yKyggY29uc3QgUUNTdHJpbmcgJnMxLCBjaGFyIGMyICkKewogICAgUUNTdHJpbmcgdG1w KCBzMS5kYXRhKCkgKTsKICAgIHRtcCArPSBjMjsKICAgIHJldHVybiB0bXA7Cn0KCiBpbmxpbmUg UUNTdHJpbmcgb3BlcmF0b3IrKCBjaGFyIGMxLCBjb25zdCBRQ1N0cmluZyAmczIgKQp7CiAgICBR Q1N0cmluZyB0bXA7CiAgICB0bXAgKz0gYzE7CiAgICB0bXAgKz0gczI7CiAgICByZXR1cm4gdG1w Owp9CgojIDM0ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FzdHJpbmcuaCIgMiAzCgoKCgoK CgpjbGFzcyBRUmVnRXhwOwpjbGFzcyBRU3RyaW5nOwpjbGFzcyBRQ2hhclJlZjsKCmNsYXNzIFFD aGFyIHsKcHVibGljOgogICAgUUNoYXIoKTsKICAgIFFDaGFyKCBjaGFyIGMgKTsKICAgIFFDaGFy KCB1Y2hhciBjICk7CiAgICBRQ2hhciggdWNoYXIgYywgdWNoYXIgciApOwogICAgUUNoYXIoIGNv bnN0IFFDaGFyJiBjICk7CiAgICBRQ2hhciggdXNob3J0IHJjICk7CiAgICBRQ2hhciggc2hvcnQg cmMgKTsKICAgIFFDaGFyKCB1aW50IHJjICk7CiAgICBRQ2hhciggaW50IHJjICk7CgogICAgc3Rh dGljIGNvbnN0IFFDaGFyIG51bGw7CiAgICBzdGF0aWMgY29uc3QgUUNoYXIgcmVwbGFjZW1lbnQ7 CiAgICBzdGF0aWMgY29uc3QgUUNoYXIgYnl0ZU9yZGVyTWFyazsKICAgIHN0YXRpYyBjb25zdCBR Q2hhciBieXRlT3JkZXJTd2FwcGVkOwogICAgc3RhdGljIGNvbnN0IFFDaGFyIG5ic3A7CgoKCiAg ICBlbnVtIENhdGVnb3J5CiAgICB7CiAgICAgICAgTm9DYXRlZ29yeSwKCiAgICAgICAgTWFya19O b25TcGFjaW5nLAogICAgICAgIE1hcmtfU3BhY2luZ0NvbWJpbmluZywKICAgICAgICBNYXJrX0Vu Y2xvc2luZywKCiAgICAgICAgTnVtYmVyX0RlY2ltYWxEaWdpdCwKICAgICAgICBOdW1iZXJfTGV0 dGVyLAogICAgICAgIE51bWJlcl9PdGhlciwKCiAgICAgICAgU2VwYXJhdG9yX1NwYWNlLAogICAg ICAgIFNlcGFyYXRvcl9MaW5lLAogICAgICAgIFNlcGFyYXRvcl9QYXJhZ3JhcGgsCgogICAgICAg IE90aGVyX0NvbnRyb2wsCiAgICAgICAgT3RoZXJfRm9ybWF0LAogICAgICAgIE90aGVyX1N1cnJv Z2F0ZSwKICAgICAgICBPdGhlcl9Qcml2YXRlVXNlLAogICAgICAgIE90aGVyX05vdEFzc2lnbmVk LAoKICAgICAgICBMZXR0ZXJfVXBwZXJjYXNlLAogICAgICAgIExldHRlcl9Mb3dlcmNhc2UsCiAg ICAgICAgTGV0dGVyX1RpdGxlY2FzZSwKICAgICAgICBMZXR0ZXJfTW9kaWZpZXIsCiAgICAgICAg TGV0dGVyX090aGVyLAoKICAgICAgICBQdW5jdHVhdGlvbl9Db25uZWN0b3IsCiAgICAgICAgUHVu Y3R1YXRpb25fRGFzaywKICAgICAgICBQdW5jdHVhdGlvbl9PcGVuLAogICAgICAgIFB1bmN0dWF0 aW9uX0Nsb3NlLAogICAgICAgIFB1bmN0dWF0aW9uX0luaXRpYWxRdW90ZSwKICAgICAgICBQdW5j dHVhdGlvbl9GaW5hbFF1b3RlLAogICAgICAgIFB1bmN0dWF0aW9uX090aGVyLAoKICAgICAgICBT eW1ib2xfTWF0aCwKICAgICAgICBTeW1ib2xfQ3VycmVuY3ksCiAgICAgICAgU3ltYm9sX01vZGlm aWVyLAogICAgICAgIFN5bWJvbF9PdGhlcgogICAgfTsKCiAgICBlbnVtIERpcmVjdGlvbgogICAg ewogICAgICAgIERpckwsIERpclIsIERpckVOLCBEaXJFUywgRGlyRVQsIERpckFOLCBEaXJDUywg RGlyQiwgRGlyUywgRGlyV1MsIERpck9OLAogICAgICAgIERpckxSRSwgRGlyTFJPLCBEaXJBTCwg RGlyUkxFLCBEaXJSTE8sIERpclBERiwgRGlyTlNNLCBEaXJCTgogICAgfTsKCiAgICBlbnVtIERl Y29tcG9zaXRpb24KICAgIHsKICAgICAgICBTaW5nbGUsIENhbm9uaWNhbCwgRm9udCwgTm9CcmVh aywgSW5pdGlhbCwgTWVkaWFsLAogICAgICAgIEZpbmFsLCBJc29sYXRlZCwgQ2lyY2xlLCBTdXBl ciwgU3ViLCBWZXJ0aWNhbCwKICAgICAgICBXaWRlLCBOYXJyb3csIFNtYWxsLCBTcXVhcmUsIENv bXBhdCwgRnJhY3Rpb24KICAgIH07CgogICAgZW51bSBKb2luaW5nCiAgICB7CiAgICAgICAgT3Ro ZXJKb2luaW5nLCBEdWFsLCBSaWdodCwgQ2VudGVyCiAgICB9OwoKCgogICAgaW50IGRpZ2l0VmFs dWUoKSBjb25zdDsKICAgIFFDaGFyIGxvd2VyKCkgY29uc3Q7CiAgICBRQ2hhciB1cHBlcigpIGNv bnN0OwoKICAgIENhdGVnb3J5IGNhdGVnb3J5KCkgY29uc3Q7CiAgICBEaXJlY3Rpb24gZGlyZWN0 aW9uKCkgY29uc3Q7CiAgICBKb2luaW5nIGpvaW5pbmcoKSBjb25zdDsKICAgIGJvb2wgbWlycm9y ZWQoKSBjb25zdDsKICAgIFFDaGFyIG1pcnJvcmVkQ2hhcigpIGNvbnN0OwogICAgUVN0cmluZyBk ZWNvbXBvc2l0aW9uKCkgY29uc3Q7CiAgICBEZWNvbXBvc2l0aW9uIGRlY29tcG9zaXRpb25UYWco KSBjb25zdDsKCiAgICBjaGFyIGxhdGluMSgpIGNvbnN0IHsgcmV0dXJuIHJ3ID8gMCA6IGNsOyB9 CiAgICB1c2hvcnQgdW5pY29kZSgpIGNvbnN0IHsgcmV0dXJuIChydyA8PCA4KSB8IGNsOyB9CgoK ICAgIG9wZXJhdG9yIGNoYXIoKSBjb25zdCB7IHJldHVybiBsYXRpbjEoKTsgfQoKCiAgICBib29s IGlzTnVsbCgpIGNvbnN0IHsgcmV0dXJuIHVuaWNvZGUoKT09MDsgfQogICAgYm9vbCBpc1ByaW50 KCkgY29uc3Q7CiAgICBib29sIGlzUHVuY3QoKSBjb25zdDsKICAgIGJvb2wgaXNTcGFjZSgpIGNv bnN0OwogICAgYm9vbCBpc01hcmsoKSBjb25zdDsKICAgIGJvb2wgaXNMZXR0ZXIoKSBjb25zdDsK ICAgIGJvb2wgaXNOdW1iZXIoKSBjb25zdDsKICAgIGJvb2wgaXNMZXR0ZXJPck51bWJlcigpIGNv bnN0OwogICAgYm9vbCBpc0RpZ2l0KCkgY29uc3Q7CgogICAgdWNoYXImIGNlbGwoKSB7IHJldHVy biBjbDsgfQogICAgdWNoYXImIHJvdygpIHsgcmV0dXJuIHJ3OyB9CiAgICB1Y2hhciBjZWxsKCkg Y29uc3QgeyByZXR1cm4gY2w7IH0KICAgIHVjaGFyIHJvdygpIGNvbnN0IHsgcmV0dXJuIHJ3OyB9 CgogICAgc3RhdGljIGJvb2wgbmV0d29ya09yZGVyZWQoKSB7IHJldHVybiAoaW50KW5ldF9vcmRl cmVkID09IDE7IH0KCiAgICBmcmllbmQgaW5saW5lIGludCBvcGVyYXRvcj09KCBjaGFyIGNoLCBR Q2hhciBjICk7CiAgICBmcmllbmQgaW5saW5lIGludCBvcGVyYXRvcj09KCBRQ2hhciBjLCBjaGFy IGNoICk7CiAgICBmcmllbmQgaW5saW5lIGludCBvcGVyYXRvcj09KCBRQ2hhciBjMSwgUUNoYXIg YzIgKTsKICAgIGZyaWVuZCBpbmxpbmUgaW50IG9wZXJhdG9yIT0oIFFDaGFyIGMxLCBRQ2hhciBj MiApOwogICAgZnJpZW5kIGlubGluZSBpbnQgb3BlcmF0b3IhPSggY2hhciBjaCwgUUNoYXIgYyAp OwogICAgZnJpZW5kIGlubGluZSBpbnQgb3BlcmF0b3IhPSggUUNoYXIgYywgY2hhciBjaCApOwog ICAgZnJpZW5kIGlubGluZSBpbnQgb3BlcmF0b3I8PSggUUNoYXIgYywgY2hhciBjaCApOwogICAg ZnJpZW5kIGlubGluZSBpbnQgb3BlcmF0b3I8PSggY2hhciBjaCwgUUNoYXIgYyApOwogICAgZnJp ZW5kIGlubGluZSBpbnQgb3BlcmF0b3I8PSggUUNoYXIgYzEsIFFDaGFyIGMyICk7Cgpwcml2YXRl OgoKCgogICAgdWNoYXIgcnc7CiAgICB1Y2hhciBjbDsKCgoKICAgIGVudW0geyBuZXRfb3JkZXJl ZCA9IDEgfTsKIyAxOTIgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXN0cmluZy5oIiAzCn07 CgppbmxpbmUgUUNoYXI6OlFDaGFyKCkKewogICAgcncgPSAwOyBjbCA9IDA7CgoKCn0KaW5saW5l IFFDaGFyOjpRQ2hhciggY2hhciBjICkKewogICAgcncgPSAwOyBjbCA9ICh1Y2hhciljOwoKCgp9 CmlubGluZSBRQ2hhcjo6UUNoYXIoIHVjaGFyIGMgKQp7CiAgICBydyA9IDA7IGNsID0gYzsKCgoK fQppbmxpbmUgUUNoYXI6OlFDaGFyKCB1Y2hhciBjLCB1Y2hhciByICkKewogICAgcncgPSByOyBj bCA9IGM7CgoKCn0KaW5saW5lIFFDaGFyOjpRQ2hhciggY29uc3QgUUNoYXImIGMgKQp7CiAgICBy dyA9IGMucnc7IGNsID0gYy5jbDsKCgoKfQppbmxpbmUgUUNoYXI6OlFDaGFyKCB1c2hvcnQgcmMg KQp7CiAgICBydyA9ICh1Y2hhcikoKHJjPj44KSYweGZmKTsgY2wgPSAodWNoYXIpKHJjJjB4ZmYp OwoKCgp9CmlubGluZSBRQ2hhcjo6UUNoYXIoIHNob3J0IHJjICkKewogICAgcncgPSAodWNoYXIp KChyYz4+OCkmMHhmZik7IGNsID0gKHVjaGFyKShyYyYweGZmKTsKCgoKfQppbmxpbmUgUUNoYXI6 OlFDaGFyKCB1aW50IHJjICkKewogICAgcncgPSAodWNoYXIpKChyYz4+OCkmMHhmZik7IGNsID0g KHVjaGFyKShyYyYweGZmKTsKCgoKfQppbmxpbmUgUUNoYXI6OlFDaGFyKCBpbnQgcmMgKQp7CiAg ICBydyA9ICh1Y2hhcikoKHJjPj44KSYweGZmKTsgY2wgPSAodWNoYXIpKHJjJjB4ZmYpOwoKCgp9 CgoKaW5saW5lIGludCBvcGVyYXRvcj09KCBjaGFyIGNoLCBRQ2hhciBjICkKewogICAgcmV0dXJu IGNoID09IGMuY2wgJiYgIWMucnc7Cn0KCmlubGluZSBpbnQgb3BlcmF0b3I9PSggUUNoYXIgYywg Y2hhciBjaCApCnsKICAgIHJldHVybiBjaCA9PSBjLmNsICYmICFjLnJ3Owp9CgppbmxpbmUgaW50 IG9wZXJhdG9yPT0oIFFDaGFyIGMxLCBRQ2hhciBjMiApCnsKICAgIHJldHVybiBjMS5jbCA9PSBj Mi5jbAogICAgICAgICYmIGMxLnJ3ID09IGMyLnJ3Owp9CgppbmxpbmUgaW50IG9wZXJhdG9yIT0o IFFDaGFyIGMxLCBRQ2hhciBjMiApCnsKICAgIHJldHVybiBjMS5jbCAhPSBjMi5jbAogICAgICAg IHx8IGMxLnJ3ICE9IGMyLnJ3Owp9CgppbmxpbmUgaW50IG9wZXJhdG9yIT0oIGNoYXIgY2gsIFFD aGFyIGMgKQp7CiAgICByZXR1cm4gY2ggIT0gYy5jbCB8fCBjLnJ3Owp9CgppbmxpbmUgaW50IG9w ZXJhdG9yIT0oIFFDaGFyIGMsIGNoYXIgY2ggKQp7CiAgICByZXR1cm4gY2ggIT0gYy5jbCB8fCBj LnJ3Owp9CgppbmxpbmUgaW50IG9wZXJhdG9yPD0oIFFDaGFyIGMsIGNoYXIgY2ggKQp7CiAgICBy ZXR1cm4gIShjaCA8IGMuY2wgfHwgYy5ydyk7Cn0KCmlubGluZSBpbnQgb3BlcmF0b3I8PSggY2hh ciBjaCwgUUNoYXIgYyApCnsKICAgIHJldHVybiBjaCA8PSBjLmNsIHx8IGMucnc7Cn0KCmlubGlu ZSBpbnQgb3BlcmF0b3I8PSggUUNoYXIgYzEsIFFDaGFyIGMyICkKewogICAgcmV0dXJuIGMxLnJ3 ID4gYzIucncKICAgICAgICA/IEZBTFNFCiAgICAgICAgOiBjMS5ydyA8IGMyLnJ3CiAgICAgICAg ICAgID8gVFJVRQogICAgICAgICAgICA6IGMxLmNsIDw9IGMyLmNsOwp9CgppbmxpbmUgaW50IG9w ZXJhdG9yPj0oIFFDaGFyIGMsIGNoYXIgY2ggKSB7IHJldHVybiBjaCA8PSBjOyB9CmlubGluZSBp bnQgb3BlcmF0b3I+PSggY2hhciBjaCwgUUNoYXIgYyApIHsgcmV0dXJuIGMgPD0gY2g7IH0KaW5s aW5lIGludCBvcGVyYXRvcj49KCBRQ2hhciBjMSwgUUNoYXIgYzIgKSB7IHJldHVybiBjMiA8PSBj MTsgfQppbmxpbmUgaW50IG9wZXJhdG9yPCggUUNoYXIgYywgY2hhciBjaCApIHsgcmV0dXJuICEo Y2g8PWMpOyB9CmlubGluZSBpbnQgb3BlcmF0b3I8KCBjaGFyIGNoLCBRQ2hhciBjICkgeyByZXR1 cm4gIShjPD1jaCk7IH0KaW5saW5lIGludCBvcGVyYXRvcjwoIFFDaGFyIGMxLCBRQ2hhciBjMiAp IHsgcmV0dXJuICEoYzI8PWMxKTsgfQppbmxpbmUgaW50IG9wZXJhdG9yPiggUUNoYXIgYywgY2hh ciBjaCApIHsgcmV0dXJuICEoY2g+PWMpOyB9CmlubGluZSBpbnQgb3BlcmF0b3I+KCBjaGFyIGNo LCBRQ2hhciBjICkgeyByZXR1cm4gIShjPj1jaCk7IH0KaW5saW5lIGludCBvcGVyYXRvcj4oIFFD aGFyIGMxLCBRQ2hhciBjMiApIHsgcmV0dXJuICEoYzI+PWMxKTsgfQoKCnN0cnVjdCBRU3RyaW5n RGF0YSA6IHB1YmxpYyBRU2hhcmVkIHsKICAgIFFTdHJpbmdEYXRhKCkgOgogICAgICAgIHVuaWNv ZGUoMCksIGFzY2lpKDApLCBsZW4oMCksIG1heGwoMCksIGRpcnR5YXNjaWkoMCkgeyByZWYoKTsg fQogICAgUVN0cmluZ0RhdGEoUUNoYXIgKnUsIHVpbnQgbCwgdWludCBtKSA6CiAgICAgICAgdW5p Y29kZSh1KSwgYXNjaWkoMCksIGxlbihsKSwgbWF4bChtKSwgZGlydHlhc2NpaSgwKSB7IH0KCiAg ICB+UVN0cmluZ0RhdGEoKSB7IGlmICggdW5pY29kZSApIGRlbGV0ZVtdICgoY2hhciopdW5pY29k ZSk7CiAgICAgICAgICAgICAgICAgICAgIGlmICggYXNjaWkgKSBkZWxldGVbXSBhc2NpaTsgfQoK ICAgIHZvaWQgZGVsZXRlU2VsZigpOwogICAgUUNoYXIgKnVuaWNvZGU7CiAgICBjaGFyICphc2Np aTsKICAgIHVpbnQgbGVuOwogICAgdWludCBtYXhsOjMwOwogICAgdWludCBkaXJ0eWFzY2lpOjE7 Cn07CgoKY2xhc3MgUVN0cmluZwp7CnB1YmxpYzoKICAgIFFTdHJpbmcoKTsKICAgIFFTdHJpbmco IFFDaGFyICk7CiAgICBRU3RyaW5nKCBjb25zdCBRU3RyaW5nICYgKTsKICAgIFFTdHJpbmcoIGNv bnN0IFFCeXRlQXJyYXkmICk7CiAgICBRU3RyaW5nKCBjb25zdCBRQ2hhciogdW5pY29kZSwgdWlu dCBsZW5ndGggKTsKCiAgICBRU3RyaW5nKCBjb25zdCBjaGFyICpzdHIgKTsKCiAgICB+UVN0cmlu ZygpOwoKICAgIFFTdHJpbmcgJm9wZXJhdG9yPSggY29uc3QgUVN0cmluZyAmICk7CgogICAgUVN0 cmluZyAmb3BlcmF0b3I9KCBjb25zdCBjaGFyICogKTsKCiAgICBRU3RyaW5nICZvcGVyYXRvcj0o IGNvbnN0IFFDU3RyaW5nJiApOwogICAgUVN0cmluZyAmb3BlcmF0b3I9KCBRQ2hhciBjICk7CiAg ICBRU3RyaW5nICZvcGVyYXRvcj0oIGNoYXIgYyApOwoKICAgIHN0YXRpYyBjb25zdCBRU3RyaW5n IG51bGw7CgogICAgYm9vbCBpc051bGwoKSBjb25zdDsKICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0 OwogICAgdWludCBsZW5ndGgoKSBjb25zdDsKICAgIHZvaWQgdHJ1bmNhdGUoIHVpbnQgcG9zICk7 CgoKCgogICAgdm9pZCBmaWxsKCBRQ2hhciBjLCBpbnQgbGVuID0gLTEgKTsKCiAgICBRU3RyaW5n IGNvcHkoKSBjb25zdDsKCiAgICBRU3RyaW5nIGFyZyhsb25nIGEsIGludCBmaWVsZHdpZHRoPTAs IGludCBiYXNlPTEwKSBjb25zdDsKICAgIFFTdHJpbmcgYXJnKHVsb25nIGEsIGludCBmaWVsZHdp ZHRoPTAsIGludCBiYXNlPTEwKSBjb25zdDsKICAgIFFTdHJpbmcgYXJnKGludCBhLCBpbnQgZmll bGR3aWR0aD0wLCBpbnQgYmFzZT0xMCkgY29uc3Q7CiAgICBRU3RyaW5nIGFyZyh1aW50IGEsIGlu dCBmaWVsZHdpZHRoPTAsIGludCBiYXNlPTEwKSBjb25zdDsKICAgIFFTdHJpbmcgYXJnKHNob3J0 IGEsIGludCBmaWVsZHdpZHRoPTAsIGludCBiYXNlPTEwKSBjb25zdDsKICAgIFFTdHJpbmcgYXJn KHVzaG9ydCBhLCBpbnQgZmllbGR3aWR0aD0wLCBpbnQgYmFzZT0xMCkgY29uc3Q7CiAgICBRU3Ry aW5nIGFyZyhjaGFyIGEsIGludCBmaWVsZHdpZHRoPTApIGNvbnN0OwogICAgUVN0cmluZyBhcmco UUNoYXIgYSwgaW50IGZpZWxkd2lkdGg9MCkgY29uc3Q7CiAgICBRU3RyaW5nIGFyZyhjb25zdCBR U3RyaW5nJiBhLCBpbnQgZmllbGR3aWR0aD0wKSBjb25zdDsKICAgIFFTdHJpbmcgYXJnKGRvdWJs ZSBhLCBpbnQgZmllbGR3aWR0aD0wLCBjaGFyIGZtdD0nZycsIGludCBwcmVjPS0xKSBjb25zdDsK CiAgICBRU3RyaW5nICZzcHJpbnRmKCBjb25zdCBjaGFyKiBmb3JtYXQsIC4uLiApCgogICAgICAg IF9fYXR0cmlidXRlX18gKChmb3JtYXQgKHByaW50ZiwgMiwgMykpKQoKICAgICAgICA7CgogICAg aW50IGZpbmQoIFFDaGFyIGMsIGludCBpbmRleD0wLCBib29sIGNzPVRSVUUgKSBjb25zdDsKICAg IGludCBmaW5kKCBjaGFyIGMsIGludCBpbmRleD0wLCBib29sIGNzPVRSVUUgKSBjb25zdDsKICAg IGludCBmaW5kKCBjb25zdCBRU3RyaW5nICZzdHIsIGludCBpbmRleD0wLCBib29sIGNzPVRSVUUg KSBjb25zdDsKICAgIGludCBmaW5kKCBjb25zdCBRUmVnRXhwICYsIGludCBpbmRleD0wICkgY29u c3Q7CgogICAgaW50IGZpbmQoIGNvbnN0IGNoYXIqIHN0ciwgaW50IGluZGV4PTAgKSBjb25zdDsK CiAgICBpbnQgZmluZFJldiggUUNoYXIgYywgaW50IGluZGV4PS0xLCBib29sIGNzPVRSVUUpIGNv bnN0OwogICAgaW50IGZpbmRSZXYoIGNoYXIgYywgaW50IGluZGV4PS0xLCBib29sIGNzPVRSVUUp IGNvbnN0OwogICAgaW50IGZpbmRSZXYoIGNvbnN0IFFTdHJpbmcgJnN0ciwgaW50IGluZGV4PS0x LCBib29sIGNzPVRSVUUpIGNvbnN0OwogICAgaW50IGZpbmRSZXYoIGNvbnN0IFFSZWdFeHAgJiwg aW50IGluZGV4PS0xICkgY29uc3Q7CgogICAgaW50IGZpbmRSZXYoIGNvbnN0IGNoYXIqIHN0ciwg aW50IGluZGV4PS0xICkgY29uc3Q7CgogICAgaW50IGNvbnRhaW5zKCBRQ2hhciBjLCBib29sIGNz PVRSVUUgKSBjb25zdDsKICAgIGludCBjb250YWlucyggY2hhciBjLCBib29sIGNzPVRSVUUgKSBj b25zdAogICAgICAgICAgICAgICAgICAgIHsgcmV0dXJuIGNvbnRhaW5zKFFDaGFyKGMpLCBjcyk7 IH0KCiAgICBpbnQgY29udGFpbnMoIGNvbnN0IGNoYXIqIHN0ciwgYm9vbCBjcz1UUlVFICkgY29u c3Q7CgogICAgaW50IGNvbnRhaW5zKCBjb25zdCBRU3RyaW5nICZzdHIsIGJvb2wgY3M9VFJVRSAp IGNvbnN0OwogICAgaW50IGNvbnRhaW5zKCBjb25zdCBRUmVnRXhwICYgKSBjb25zdDsKCiAgICBR U3RyaW5nIGxlZnQoIHVpbnQgbGVuICkgY29uc3Q7CiAgICBRU3RyaW5nIHJpZ2h0KCB1aW50IGxl biApIGNvbnN0OwogICAgUVN0cmluZyBtaWQoIHVpbnQgaW5kZXgsIHVpbnQgbGVuPTB4ZmZmZmZm ZmYpIGNvbnN0OwoKICAgIFFTdHJpbmcgbGVmdEp1c3RpZnkoIHVpbnQgd2lkdGgsIFFDaGFyIGZp bGw9JyAnLCBib29sIHRydW5jPUZBTFNFKWNvbnN0OwogICAgUVN0cmluZyByaWdodEp1c3RpZnko IHVpbnQgd2lkdGgsIFFDaGFyIGZpbGw9JyAnLGJvb2wgdHJ1bmM9RkFMU0UpY29uc3Q7CgogICAg UVN0cmluZyBsb3dlcigpIGNvbnN0OwogICAgUVN0cmluZyB1cHBlcigpIGNvbnN0OwoKICAgIFFT dHJpbmcgc3RyaXBXaGl0ZVNwYWNlKCkgY29uc3Q7CiAgICBRU3RyaW5nIHNpbXBsaWZ5V2hpdGVT cGFjZSgpIGNvbnN0OwoKICAgIFFTdHJpbmcgJmluc2VydCggdWludCBpbmRleCwgY29uc3QgUVN0 cmluZyAmICk7CiAgICBRU3RyaW5nICZpbnNlcnQoIHVpbnQgaW5kZXgsIGNvbnN0IFFDaGFyKiwg dWludCBsZW4gKTsKICAgIFFTdHJpbmcgJmluc2VydCggdWludCBpbmRleCwgUUNoYXIgKTsKICAg IFFTdHJpbmcgJmluc2VydCggdWludCBpbmRleCwgY2hhciBjICkgeyByZXR1cm4gaW5zZXJ0KGlu ZGV4LFFDaGFyKGMpKTsgfQogICAgUVN0cmluZyAmYXBwZW5kKCBjaGFyICk7CiAgICBRU3RyaW5n ICZhcHBlbmQoIFFDaGFyICk7CiAgICBRU3RyaW5nICZhcHBlbmQoIGNvbnN0IFFTdHJpbmcgJiAp OwogICAgUVN0cmluZyAmcHJlcGVuZCggY2hhciApOwogICAgUVN0cmluZyAmcHJlcGVuZCggUUNo YXIgKTsKICAgIFFTdHJpbmcgJnByZXBlbmQoIGNvbnN0IFFTdHJpbmcgJiApOwogICAgUVN0cmlu ZyAmcmVtb3ZlKCB1aW50IGluZGV4LCB1aW50IGxlbiApOwogICAgUVN0cmluZyAmcmVwbGFjZSgg dWludCBpbmRleCwgdWludCBsZW4sIGNvbnN0IFFTdHJpbmcgJiApOwogICAgUVN0cmluZyAmcmVw bGFjZSggdWludCBpbmRleCwgdWludCBsZW4sIGNvbnN0IFFDaGFyKiwgdWludCBjbGVuICk7CiAg ICBRU3RyaW5nICZyZXBsYWNlKCBjb25zdCBRUmVnRXhwICYsIGNvbnN0IFFTdHJpbmcgJiApOwoK ICAgIHNob3J0IHRvU2hvcnQoIGJvb2wgKm9rPTAsIGludCBiYXNlPTEwICkgY29uc3Q7CiAgICB1 c2hvcnQgdG9VU2hvcnQoIGJvb2wgKm9rPTAsIGludCBiYXNlPTEwICkgY29uc3Q7CiAgICBpbnQg dG9JbnQoIGJvb2wgKm9rPTAsIGludCBiYXNlPTEwICkgY29uc3Q7CiAgICB1aW50IHRvVUludCgg Ym9vbCAqb2s9MCwgaW50IGJhc2U9MTAgKSBjb25zdDsKICAgIGxvbmcgdG9Mb25nKCBib29sICpv az0wLCBpbnQgYmFzZT0xMCApIGNvbnN0OwogICAgdWxvbmcgdG9VTG9uZyggYm9vbCAqb2s9MCwg aW50IGJhc2U9MTAgKSBjb25zdDsKICAgIGZsb2F0IHRvRmxvYXQoIGJvb2wgKm9rPTAgKSBjb25z dDsKICAgIGRvdWJsZSB0b0RvdWJsZSggYm9vbCAqb2s9MCApIGNvbnN0OwoKICAgIFFTdHJpbmcg JnNldE51bSggc2hvcnQsIGludCBiYXNlPTEwICk7CiAgICBRU3RyaW5nICZzZXROdW0oIHVzaG9y dCwgaW50IGJhc2U9MTAgKTsKICAgIFFTdHJpbmcgJnNldE51bSggaW50LCBpbnQgYmFzZT0xMCAp OwogICAgUVN0cmluZyAmc2V0TnVtKCB1aW50LCBpbnQgYmFzZT0xMCApOwogICAgUVN0cmluZyAm c2V0TnVtKCBsb25nLCBpbnQgYmFzZT0xMCApOwogICAgUVN0cmluZyAmc2V0TnVtKCB1bG9uZywg aW50IGJhc2U9MTAgKTsKICAgIFFTdHJpbmcgJnNldE51bSggZmxvYXQsIGNoYXIgZj0nZycsIGlu dCBwcmVjPTYgKTsKICAgIFFTdHJpbmcgJnNldE51bSggZG91YmxlLCBjaGFyIGY9J2cnLCBpbnQg cHJlYz02ICk7CgogICAgc3RhdGljIFFTdHJpbmcgbnVtYmVyKCBsb25nLCBpbnQgYmFzZT0xMCAp OwogICAgc3RhdGljIFFTdHJpbmcgbnVtYmVyKCB1bG9uZywgaW50IGJhc2U9MTApOwogICAgc3Rh dGljIFFTdHJpbmcgbnVtYmVyKCBpbnQsIGludCBiYXNlPTEwICk7CiAgICBzdGF0aWMgUVN0cmlu ZyBudW1iZXIoIHVpbnQsIGludCBiYXNlPTEwKTsKICAgIHN0YXRpYyBRU3RyaW5nIG51bWJlcigg ZG91YmxlLCBjaGFyIGY9J2cnLCBpbnQgcHJlYz02ICk7CgogICAgdm9pZCBzZXRFeHBhbmQoIHVp bnQgaW5kZXgsIFFDaGFyIGMgKTsKCiAgICBRU3RyaW5nICZvcGVyYXRvcis9KCBjb25zdCBRU3Ry aW5nICZzdHIgKTsKICAgIFFTdHJpbmcgJm9wZXJhdG9yKz0oIFFDaGFyIGMgKTsKICAgIFFTdHJp bmcgJm9wZXJhdG9yKz0oIGNoYXIgYyApOwoKCiAgICBRQ2hhciBhdCggdWludCBpICkgY29uc3QK ICAgICAgICB7IHJldHVybiBpPGQtPmxlbiA/IGQtPnVuaWNvZGVbaV0gOiBRQ2hhcjo6bnVsbDsg fQogICAgUUNoYXIgb3BlcmF0b3JbXSggaW50IGkgKSBjb25zdCB7IHJldHVybiBhdCgodWludClp KTsgfQogICAgUUNoYXJSZWYgYXQoIHVpbnQgaSApOwogICAgUUNoYXJSZWYgb3BlcmF0b3JbXSgg aW50IGkgKTsKCiAgICBRQ2hhciBjb25zdHJlZih1aW50IGkpIGNvbnN0CiAgICAgICAgeyByZXR1 cm4gYXQoaSk7IH0KICAgIFFDaGFyJiByZWYodWludCBpKQogICAgICAgIHsKICAgICAgICAgICAg aWYgKGQtPmNvdW50IT0xIHx8IGk+PWQtPmxlbikKICAgICAgICAgICAgICAgIHN1YmF0KGkpOwog ICAgICAgICAgICBkLT5kaXJ0eWFzY2lpPTE7CiAgICAgICAgICAgIHJldHVybiBkLT51bmljb2Rl W2ldOwogICAgICAgIH0KCiAgICBjb25zdCBRQ2hhciogdW5pY29kZSgpIGNvbnN0IHsgcmV0dXJu IGQtPnVuaWNvZGU7IH0KICAgIGNvbnN0IGNoYXIqIGFzY2lpKCkgY29uc3Q7CiAgICBjb25zdCBj aGFyKiBsYXRpbjEoKSBjb25zdDsKICAgIHN0YXRpYyBRU3RyaW5nIGZyb21MYXRpbjEoY29uc3Qg Y2hhciosIGludCBsZW49LTEpOwoKICAgIFFDU3RyaW5nIHV0ZjgoKSBjb25zdDsKICAgIHN0YXRp YyBRU3RyaW5nIGZyb21VdGY4KGNvbnN0IGNoYXIqLCBpbnQgbGVuPS0xKTsKCiAgICBRQ1N0cmlu ZyBsb2NhbDhCaXQoKSBjb25zdDsKICAgIHN0YXRpYyBRU3RyaW5nIGZyb21Mb2NhbDhCaXQoY29u c3QgY2hhciosIGludCBsZW49LTEpOwogICAgYm9vbCBvcGVyYXRvciEoKSBjb25zdDsKCiAgICBv cGVyYXRvciBjb25zdCBjaGFyICooKSBjb25zdCB7IHJldHVybiBsYXRpbjEoKTsgfQoKCiAgICBR U3RyaW5nICZzZXRVbmljb2RlKCBjb25zdCBRQ2hhciogdW5pY29kZSwgdWludCBsZW4gKTsKICAg IFFTdHJpbmcgJnNldFVuaWNvZGVDb2RlcyggY29uc3QgdXNob3J0KiB1bmljb2RlX2FzX3VzaG9y dHMsIHVpbnQgbGVuICk7CiAgICBRU3RyaW5nICZzZXRMYXRpbjEoIGNvbnN0IGNoYXIqLCBpbnQg bGVuPS0xICk7CgogICAgaW50IGNvbXBhcmUoIGNvbnN0IFFTdHJpbmcmIHMgKSBjb25zdDsKICAg IHN0YXRpYyBpbnQgY29tcGFyZSggY29uc3QgUVN0cmluZyYgczEsIGNvbnN0IFFTdHJpbmcmIHMy ICkKICAgICAgICB7IHJldHVybiBzMS5jb21wYXJlKHMyKTsgfQoKCiAgICBmcmllbmQgUURhdGFT dHJlYW0gJm9wZXJhdG9yPj4oIFFEYXRhU3RyZWFtICYsIFFTdHJpbmcgJiApOwoKCiAgICB2b2lk IGNvbXBvc2UoKTsKICAgIFFDaGFyOjpEaXJlY3Rpb24gYmFzaWNEaXJlY3Rpb24oKTsKICAgIFFT dHJpbmcgdmlzdWFsKGludCBpbmRleCA9IDAsIGludCBsZW4gPSAtMSk7CgoKICAgIGNvbnN0IGNo YXIqIGRhdGEoKSBjb25zdCB7IHJldHVybiBsYXRpbjEoKTsgfQoKCiAgICBib29sIHN0YXJ0c1dp dGgoIGNvbnN0IFFTdHJpbmcmICkgY29uc3Q7Cgpwcml2YXRlOgogICAgUVN0cmluZyggaW50IHNp emUsIGJvb2wgZHVtbXkgKTsKCiAgICB2b2lkIGRlcmVmKCk7CiAgICB2b2lkIHJlYWxfZGV0YWNo KCk7CiAgICB2b2lkIHNldExlbmd0aCggdWludCBwb3MgKTsKICAgIHZvaWQgc3ViYXQoIHVpbnQg KTsKICAgIGJvb2wgZmluZEFyZyhpbnQmIHBvcywgaW50JiBsZW4pIGNvbnN0OwoKICAgIHN0YXRp YyBRQ2hhciogYXNjaWlUb1VuaWNvZGUoIGNvbnN0IGNoYXIqLCB1aW50ICogbGVuLCB1aW50IG1h eGxlbj0odWludCktMSApOwogICAgc3RhdGljIFFDaGFyKiBhc2NpaVRvVW5pY29kZSggY29uc3Qg UUJ5dGVBcnJheSYsIHVpbnQgKiBsZW4gKTsKICAgIHN0YXRpYyBjaGFyKiB1bmljb2RlVG9Bc2Np aSggY29uc3QgUUNoYXIqLCB1aW50IGxlbiApOwoKICAgIFFTdHJpbmdEYXRhICpkOwogICAgc3Rh dGljIFFTdHJpbmdEYXRhKiBzaGFyZWRfbnVsbDsKICAgIHN0YXRpYyBRU3RyaW5nRGF0YSogbWFr ZVNoYXJlZE51bGwoKTsKCiAgICBmcmllbmQgY2xhc3MgUUNvbnN0U3RyaW5nOwogICAgUVN0cmlu ZyhRU3RyaW5nRGF0YSogZGQsIGJvb2wgKSA6IGQoZGQpIHsgfQp9OwoKY2xhc3MgUUNoYXJSZWYg ewogICAgZnJpZW5kIGNsYXNzIFFTdHJpbmc7CiAgICBRU3RyaW5nJiBzOwogICAgdWludCBwOwog ICAgUUNoYXJSZWYoUVN0cmluZyogc3RyLCB1aW50IHBvcykgOiBzKCpzdHIpLCBwKHBvcykgeyB9 CgpwdWJsaWM6CgoKCgogICAgdXNob3J0IHVuaWNvZGUoKSBjb25zdCB7IHJldHVybiBzLmNvbnN0 cmVmKHApLnVuaWNvZGUoKTsgfQogICAgY2hhciBsYXRpbjEoKSBjb25zdCB7IHJldHVybiBzLmNv bnN0cmVmKHApLmxhdGluMSgpOyB9CgoKICAgIFFDaGFyUmVmIG9wZXJhdG9yPShjaGFyIGMgKSB7 IHMucmVmKHApPWM7IHJldHVybiAqdGhpczsgfQogICAgUUNoYXJSZWYgb3BlcmF0b3I9KHVjaGFy IGMgKSB7IHMucmVmKHApPWM7IHJldHVybiAqdGhpczsgfQogICAgUUNoYXJSZWYgb3BlcmF0b3I9 KFFDaGFyIGMgKSB7IHMucmVmKHApPWM7IHJldHVybiAqdGhpczsgfQogICAgUUNoYXJSZWYgb3Bl cmF0b3I9KGNvbnN0IFFDaGFyUmVmJiBjICkgeyBzLnJlZihwKT1jLnVuaWNvZGUoKTsgcmV0dXJu ICp0aGlzOyB9CiAgICBRQ2hhclJlZiBvcGVyYXRvcj0odXNob3J0IHJjICkgeyBzLnJlZihwKT1y YzsgcmV0dXJuICp0aGlzOyB9CiAgICBRQ2hhclJlZiBvcGVyYXRvcj0oc2hvcnQgcmMgKSB7IHMu cmVmKHApPXJjOyByZXR1cm4gKnRoaXM7IH0KICAgIFFDaGFyUmVmIG9wZXJhdG9yPSh1aW50IHJj ICkgeyBzLnJlZihwKT1yYzsgcmV0dXJuICp0aGlzOyB9CiAgICBRQ2hhclJlZiBvcGVyYXRvcj0o aW50IHJjICkgeyBzLnJlZihwKT1yYzsgcmV0dXJuICp0aGlzOyB9CgogICAgb3BlcmF0b3IgUUNo YXIgKCkgY29uc3QgeyByZXR1cm4gcy5jb25zdHJlZihwKTsgfQoKCiAgICBib29sIGlzTnVsbCgp IGNvbnN0IHsgcmV0dXJuIHVuaWNvZGUoKT09MDsgfQogICAgYm9vbCBpc1ByaW50KCkgY29uc3Qg eyByZXR1cm4gcy5jb25zdHJlZihwKS5pc1ByaW50KCk7IH0KICAgIGJvb2wgaXNQdW5jdCgpIGNv bnN0IHsgcmV0dXJuIHMuY29uc3RyZWYocCkuaXNQdW5jdCgpOyB9CiAgICBib29sIGlzU3BhY2Uo KSBjb25zdCB7IHJldHVybiBzLmNvbnN0cmVmKHApLmlzU3BhY2UoKTsgfQogICAgYm9vbCBpc01h cmsoKSBjb25zdCB7IHJldHVybiBzLmNvbnN0cmVmKHApLmlzTWFyaygpOyB9CiAgICBib29sIGlz TGV0dGVyKCkgY29uc3QgeyByZXR1cm4gcy5jb25zdHJlZihwKS5pc0xldHRlcigpOyB9CiAgICBi b29sIGlzTnVtYmVyKCkgY29uc3QgeyByZXR1cm4gcy5jb25zdHJlZihwKS5pc051bWJlcigpOyB9 CiAgICBib29sIGlzTGV0dGVyT3JOdW1iZXIoKSB7IHJldHVybiBzLmNvbnN0cmVmKHApLmlzTGV0 dGVyT3JOdW1iZXIoKTsgfQogICAgYm9vbCBpc0RpZ2l0KCkgY29uc3QgeyByZXR1cm4gcy5jb25z dHJlZihwKS5pc0RpZ2l0KCk7IH0KCiAgICBpbnQgZGlnaXRWYWx1ZSgpIGNvbnN0IHsgcmV0dXJu IHMuY29uc3RyZWYocCkuZGlnaXRWYWx1ZSgpOyB9CiAgICBRQ2hhciBsb3dlcigpIHsgcmV0dXJu IHMuY29uc3RyZWYocCkubG93ZXIoKTsgfQogICAgUUNoYXIgdXBwZXIoKSB7IHJldHVybiBzLmNv bnN0cmVmKHApLnVwcGVyKCk7IH0KCiAgICBRQ2hhcjo6Q2F0ZWdvcnkgY2F0ZWdvcnkoKSBjb25z dCB7IHJldHVybiBzLmNvbnN0cmVmKHApLmNhdGVnb3J5KCk7IH0KICAgIFFDaGFyOjpEaXJlY3Rp b24gZGlyZWN0aW9uKCkgY29uc3QgeyByZXR1cm4gcy5jb25zdHJlZihwKS5kaXJlY3Rpb24oKTsg fQogICAgUUNoYXI6OkpvaW5pbmcgam9pbmluZygpIGNvbnN0IHsgcmV0dXJuIHMuY29uc3RyZWYo cCkuam9pbmluZygpOyB9CiAgICBib29sIG1pcnJvcmVkKCkgY29uc3QgeyByZXR1cm4gcy5jb25z dHJlZihwKS5taXJyb3JlZCgpOyB9CiAgICBRQ2hhciBtaXJyb3JlZENoYXIoKSBjb25zdCB7IHJl dHVybiBzLmNvbnN0cmVmKHApLm1pcnJvcmVkQ2hhcigpOyB9CiAgICBRU3RyaW5nIGRlY29tcG9z aXRpb24oKSBjb25zdCB7IHJldHVybiBzLmNvbnN0cmVmKHApLmRlY29tcG9zaXRpb24oKTsgfQog ICAgUUNoYXI6OkRlY29tcG9zaXRpb24gZGVjb21wb3NpdGlvblRhZygpIGNvbnN0IHsgcmV0dXJu IHMuY29uc3RyZWYocCkuZGVjb21wb3NpdGlvblRhZygpOyB9CgoKICAgIHVjaGFyIGNlbGwoKSBj b25zdCB7IHJldHVybiBzLmNvbnN0cmVmKHApLmNlbGwoKTsgfQogICAgdWNoYXIgcm93KCkgY29u c3QgeyByZXR1cm4gcy5jb25zdHJlZihwKS5yb3coKTsgfQoKfTsKCmlubGluZSBRQ2hhclJlZiBR U3RyaW5nOjphdCggdWludCBpICkgeyByZXR1cm4gUUNoYXJSZWYodGhpcyxpKTsgfQppbmxpbmUg UUNoYXJSZWYgUVN0cmluZzo6b3BlcmF0b3JbXSggaW50IGkgKSB7IHJldHVybiBhdCgodWludClp KTsgfQoKCmNsYXNzIFFDb25zdFN0cmluZyA6IHByaXZhdGUgUVN0cmluZyB7CnB1YmxpYzoKICAg IFFDb25zdFN0cmluZyggUUNoYXIqIHVuaWNvZGUsIHVpbnQgbGVuZ3RoICk7CiAgICB+UUNvbnN0 U3RyaW5nKCk7CiAgICBjb25zdCBRU3RyaW5nJiBzdHJpbmcoKSBjb25zdCB7IHJldHVybiAqdGhp czsgfQp9OwoKCgoKCgogUURhdGFTdHJlYW0gJm9wZXJhdG9yPDwoIFFEYXRhU3RyZWFtICYsIGNv bnN0IFFTdHJpbmcgJiApOwogUURhdGFTdHJlYW0gJm9wZXJhdG9yPj4oIFFEYXRhU3RyZWFtICYs IFFTdHJpbmcgJiApOwojIDYzMSAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xc3RyaW5nLmgi IDMKaW5saW5lIFFTdHJpbmc6OlFTdHJpbmcoKSA6CiAgICBkKHNoYXJlZF9udWxsID8gc2hhcmVk X251bGwgOiBtYWtlU2hhcmVkTnVsbCgpKQp7CiAgICBkLT5yZWYoKTsKfQoKaW5saW5lIFFTdHJp bmc6On5RU3RyaW5nKCkKewogICAgaWYgKCBkLT5kZXJlZigpICkKICAgICAgICBkLT5kZWxldGVT ZWxmKCk7Cn0KCmlubGluZSBRU3RyaW5nICZRU3RyaW5nOjpvcGVyYXRvcj0oIFFDaGFyIGMgKQp7 IHJldHVybiAqdGhpcyA9IFFTdHJpbmcoYyk7IH0KCmlubGluZSBRU3RyaW5nICZRU3RyaW5nOjpv cGVyYXRvcj0oIGNoYXIgYyApCnsgcmV0dXJuICp0aGlzID0gUVN0cmluZyhRQ2hhcihjKSk7IH0K CmlubGluZSBib29sIFFTdHJpbmc6OmlzTnVsbCgpIGNvbnN0CnsgcmV0dXJuIHVuaWNvZGUoKSA9 PSAwOyB9CgppbmxpbmUgYm9vbCBRU3RyaW5nOjpvcGVyYXRvciEoKSBjb25zdAp7IHJldHVybiBp c051bGwoKTsgfQoKaW5saW5lIHVpbnQgUVN0cmluZzo6bGVuZ3RoKCkgY29uc3QKeyByZXR1cm4g ZC0+bGVuOyB9CgppbmxpbmUgYm9vbCBRU3RyaW5nOjppc0VtcHR5KCkgY29uc3QKeyByZXR1cm4g bGVuZ3RoKCkgPT0gMDsgfQoKaW5saW5lIFFTdHJpbmcgUVN0cmluZzo6Y29weSgpIGNvbnN0Cnsg cmV0dXJuIFFTdHJpbmcoICp0aGlzICk7IH0KCmlubGluZSBRU3RyaW5nICZRU3RyaW5nOjpwcmVw ZW5kKCBjb25zdCBRU3RyaW5nICYgcyApCnsgcmV0dXJuIGluc2VydCgwLHMpOyB9CgppbmxpbmUg UVN0cmluZyAmUVN0cmluZzo6cHJlcGVuZCggUUNoYXIgYyApCnsgcmV0dXJuIGluc2VydCgwLGMp OyB9CgppbmxpbmUgUVN0cmluZyAmUVN0cmluZzo6cHJlcGVuZCggY2hhciBjICkKeyByZXR1cm4g aW5zZXJ0KDAsYyk7IH0KCmlubGluZSBRU3RyaW5nICZRU3RyaW5nOjphcHBlbmQoIGNvbnN0IFFT dHJpbmcgJiBzICkKeyByZXR1cm4gb3BlcmF0b3IrPShzKTsgfQoKaW5saW5lIFFTdHJpbmcgJlFT dHJpbmc6OmFwcGVuZCggUUNoYXIgYyApCnsgcmV0dXJuIG9wZXJhdG9yKz0oYyk7IH0KCmlubGlu ZSBRU3RyaW5nICZRU3RyaW5nOjphcHBlbmQoIGNoYXIgYyApCnsgcmV0dXJuIG9wZXJhdG9yKz0o Yyk7IH0KCmlubGluZSBRU3RyaW5nICZRU3RyaW5nOjpzZXROdW0oIHNob3J0IG4sIGludCBiYXNl ICkKeyByZXR1cm4gc2V0TnVtKChsb25nKW4sIGJhc2UpOyB9CgppbmxpbmUgUVN0cmluZyAmUVN0 cmluZzo6c2V0TnVtKCB1c2hvcnQgbiwgaW50IGJhc2UgKQp7IHJldHVybiBzZXROdW0oKHVsb25n KW4sIGJhc2UpOyB9CgppbmxpbmUgUVN0cmluZyAmUVN0cmluZzo6c2V0TnVtKCBpbnQgbiwgaW50 IGJhc2UgKQp7IHJldHVybiBzZXROdW0oKGxvbmcpbiwgYmFzZSk7IH0KCmlubGluZSBRU3RyaW5n ICZRU3RyaW5nOjpzZXROdW0oIHVpbnQgbiwgaW50IGJhc2UgKQp7IHJldHVybiBzZXROdW0oKHVs b25nKW4sIGJhc2UpOyB9CgppbmxpbmUgUVN0cmluZyAmUVN0cmluZzo6c2V0TnVtKCBmbG9hdCBu LCBjaGFyIGYsIGludCBwcmVjICkKeyByZXR1cm4gc2V0TnVtKChkb3VibGUpbixmLHByZWMpOyB9 CgppbmxpbmUgUVN0cmluZyBRU3RyaW5nOjphcmcoaW50IGEsIGludCBmaWVsZHdpZHRoLCBpbnQg YmFzZSkgY29uc3QKeyByZXR1cm4gYXJnKChsb25nKWEsIGZpZWxkd2lkdGgsIGJhc2UpOyB9Cgpp bmxpbmUgUVN0cmluZyBRU3RyaW5nOjphcmcodWludCBhLCBpbnQgZmllbGR3aWR0aCwgaW50IGJh c2UpIGNvbnN0CnsgcmV0dXJuIGFyZygodWxvbmcpYSwgZmllbGR3aWR0aCwgYmFzZSk7IH0KCmlu bGluZSBRU3RyaW5nIFFTdHJpbmc6OmFyZyhzaG9ydCBhLCBpbnQgZmllbGR3aWR0aCwgaW50IGJh c2UpIGNvbnN0CnsgcmV0dXJuIGFyZygobG9uZylhLCBmaWVsZHdpZHRoLCBiYXNlKTsgfQoKaW5s aW5lIFFTdHJpbmcgUVN0cmluZzo6YXJnKHVzaG9ydCBhLCBpbnQgZmllbGR3aWR0aCwgaW50IGJh c2UpIGNvbnN0CnsgcmV0dXJuIGFyZygodWxvbmcpYSwgZmllbGR3aWR0aCwgYmFzZSk7IH0KCmlu bGluZSBpbnQgUVN0cmluZzo6ZmluZCggY2hhciBjLCBpbnQgaW5kZXgsIGJvb2wgY3MgKSBjb25z dAp7IHJldHVybiBmaW5kKFFDaGFyKGMpLCBpbmRleCwgY3MpOyB9CgppbmxpbmUgaW50IFFTdHJp bmc6OmZpbmRSZXYoIGNoYXIgYywgaW50IGluZGV4LCBib29sIGNzKSBjb25zdAp7IHJldHVybiBm aW5kUmV2KCBRQ2hhcihjKSwgaW5kZXgsIGNzICk7IH0KCgoKaW5saW5lIGludCBRU3RyaW5nOjpm aW5kKCBjb25zdCBjaGFyKiBzdHIsIGludCBpbmRleCApIGNvbnN0CnsgcmV0dXJuIGZpbmQoUVN0 cmluZzo6ZnJvbUxhdGluMShzdHIpLCBpbmRleCk7IH0KCmlubGluZSBpbnQgUVN0cmluZzo6Zmlu ZFJldiggY29uc3QgY2hhciogc3RyLCBpbnQgaW5kZXggKSBjb25zdAp7IHJldHVybiBmaW5kUmV2 KFFTdHJpbmc6OmZyb21MYXRpbjEoc3RyKSwgaW5kZXgpOyB9CgoKCgoKCgogYm9vbCBvcGVyYXRv ciE9KCBjb25zdCBRU3RyaW5nICZzMSwgY29uc3QgUVN0cmluZyAmczIgKTsKIGJvb2wgb3BlcmF0 b3I8KCBjb25zdCBRU3RyaW5nICZzMSwgY29uc3QgUVN0cmluZyAmczIgKTsKIGJvb2wgb3BlcmF0 b3I8PSggY29uc3QgUVN0cmluZyAmczEsIGNvbnN0IFFTdHJpbmcgJnMyICk7CiBib29sIG9wZXJh dG9yPT0oIGNvbnN0IFFTdHJpbmcgJnMxLCBjb25zdCBRU3RyaW5nICZzMiApOwogYm9vbCBvcGVy YXRvcj4oIGNvbnN0IFFTdHJpbmcgJnMxLCBjb25zdCBRU3RyaW5nICZzMiApOwogYm9vbCBvcGVy YXRvcj49KCBjb25zdCBRU3RyaW5nICZzMSwgY29uc3QgUVN0cmluZyAmczIgKTsKCiBib29sIG9w ZXJhdG9yIT0oIGNvbnN0IFFTdHJpbmcgJnMxLCBjb25zdCBjaGFyICpzMiApOwogYm9vbCBvcGVy YXRvcjwoIGNvbnN0IFFTdHJpbmcgJnMxLCBjb25zdCBjaGFyICpzMiApOwogYm9vbCBvcGVyYXRv cjw9KCBjb25zdCBRU3RyaW5nICZzMSwgY29uc3QgY2hhciAqczIgKTsKIGJvb2wgb3BlcmF0b3I9 PSggY29uc3QgUVN0cmluZyAmczEsIGNvbnN0IGNoYXIgKnMyICk7CiBib29sIG9wZXJhdG9yPigg Y29uc3QgUVN0cmluZyAmczEsIGNvbnN0IGNoYXIgKnMyICk7CiBib29sIG9wZXJhdG9yPj0oIGNv bnN0IFFTdHJpbmcgJnMxLCBjb25zdCBjaGFyICpzMiApOwogYm9vbCBvcGVyYXRvciE9KCBjb25z dCBjaGFyICpzMSwgY29uc3QgUVN0cmluZyAmczIgKTsKIGJvb2wgb3BlcmF0b3I8KCBjb25zdCBj aGFyICpzMSwgY29uc3QgUVN0cmluZyAmczIgKTsKIGJvb2wgb3BlcmF0b3I8PSggY29uc3QgY2hh ciAqczEsIGNvbnN0IFFTdHJpbmcgJnMyICk7CiBib29sIG9wZXJhdG9yPT0oIGNvbnN0IGNoYXIg KnMxLCBjb25zdCBRU3RyaW5nICZzMiApOwoKIGJvb2wgb3BlcmF0b3I+PSggY29uc3QgY2hhciAq czEsIGNvbnN0IFFTdHJpbmcgJnMyICk7CgoKIGlubGluZSBRU3RyaW5nIG9wZXJhdG9yKyggY29u c3QgUVN0cmluZyAmczEsIGNvbnN0IFFTdHJpbmcgJnMyICkKewogICAgUVN0cmluZyB0bXAoIHMx ICk7CiAgICB0bXAgKz0gczI7CiAgICByZXR1cm4gdG1wOwp9CgoKIGlubGluZSBRU3RyaW5nIG9w ZXJhdG9yKyggY29uc3QgUVN0cmluZyAmczEsIGNvbnN0IGNoYXIgKnMyICkKewogICAgUVN0cmlu ZyB0bXAoIHMxICk7CiAgICB0bXAgKz0gUVN0cmluZzo6ZnJvbUxhdGluMShzMik7CiAgICByZXR1 cm4gdG1wOwp9CgogaW5saW5lIFFTdHJpbmcgb3BlcmF0b3IrKCBjb25zdCBjaGFyICpzMSwgY29u c3QgUVN0cmluZyAmczIgKQp7CiAgICBRU3RyaW5nIHRtcCA9IFFTdHJpbmc6OmZyb21MYXRpbjEo IHMxICk7CiAgICB0bXAgKz0gczI7CiAgICByZXR1cm4gdG1wOwp9CgoKIGlubGluZSBRU3RyaW5n IG9wZXJhdG9yKyggY29uc3QgUVN0cmluZyAmczEsIFFDaGFyIGMyICkKewogICAgUVN0cmluZyB0 bXAoIHMxICk7CiAgICB0bXAgKz0gYzI7CiAgICByZXR1cm4gdG1wOwp9CgogaW5saW5lIFFTdHJp bmcgb3BlcmF0b3IrKCBjb25zdCBRU3RyaW5nICZzMSwgY2hhciBjMiApCnsKICAgIFFTdHJpbmcg dG1wKCBzMSApOwogICAgdG1wICs9IGMyOwogICAgcmV0dXJuIHRtcDsKfQoKIGlubGluZSBRU3Ry aW5nIG9wZXJhdG9yKyggUUNoYXIgYzEsIGNvbnN0IFFTdHJpbmcgJnMyICkKewogICAgUVN0cmlu ZyB0bXA7CiAgICB0bXAgKz0gYzE7CiAgICB0bXAgKz0gczI7CiAgICByZXR1cm4gdG1wOwp9Cgog aW5saW5lIFFTdHJpbmcgb3BlcmF0b3IrKCBjaGFyIGMxLCBjb25zdCBRU3RyaW5nICZzMiApCnsK ICAgIFFTdHJpbmcgdG1wOwogICAgdG1wICs9IGMxOwogICAgdG1wICs9IHMyOwogICAgcmV0dXJu IHRtcDsKfQoKIyAzNSAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xd2luZG93ZGVmcy5oIiAy IDMKCiMgMzYgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcW5hbWVzcGFjZS5oIiAxIDMKY2xh c3MgUUNvbG9yOwpjbGFzcyBRQ3Vyc29yOwoKCmNsYXNzIFF0IHsKcHVibGljOgogICAgc3RhdGlj IGNvbnN0IFFDb2xvciAmIGNvbG9yMDsKICAgIHN0YXRpYyBjb25zdCBRQ29sb3IgJiBjb2xvcjE7 CiAgICBzdGF0aWMgY29uc3QgUUNvbG9yICYgYmxhY2s7CiAgICBzdGF0aWMgY29uc3QgUUNvbG9y ICYgd2hpdGU7CiAgICBzdGF0aWMgY29uc3QgUUNvbG9yICYgZGFya0dyYXk7CiAgICBzdGF0aWMg Y29uc3QgUUNvbG9yICYgZ3JheTsKICAgIHN0YXRpYyBjb25zdCBRQ29sb3IgJiBsaWdodEdyYXk7 CiAgICBzdGF0aWMgY29uc3QgUUNvbG9yICYgcmVkOwogICAgc3RhdGljIGNvbnN0IFFDb2xvciAm IGdyZWVuOwogICAgc3RhdGljIGNvbnN0IFFDb2xvciAmIGJsdWU7CiAgICBzdGF0aWMgY29uc3Qg UUNvbG9yICYgY3lhbjsKICAgIHN0YXRpYyBjb25zdCBRQ29sb3IgJiBtYWdlbnRhOwogICAgc3Rh dGljIGNvbnN0IFFDb2xvciAmIHllbGxvdzsKICAgIHN0YXRpYyBjb25zdCBRQ29sb3IgJiBkYXJr UmVkOwogICAgc3RhdGljIGNvbnN0IFFDb2xvciAmIGRhcmtHcmVlbjsKICAgIHN0YXRpYyBjb25z dCBRQ29sb3IgJiBkYXJrQmx1ZTsKICAgIHN0YXRpYyBjb25zdCBRQ29sb3IgJiBkYXJrQ3lhbjsK ICAgIHN0YXRpYyBjb25zdCBRQ29sb3IgJiBkYXJrTWFnZW50YTsKICAgIHN0YXRpYyBjb25zdCBR Q29sb3IgJiBkYXJrWWVsbG93OwoKCiAgICBlbnVtIEJ1dHRvblN0YXRlIHsKICAgICAgICBOb0J1 dHRvbiA9IDB4MDAwMCwKICAgICAgICBMZWZ0QnV0dG9uID0gMHgwMDAxLAogICAgICAgIFJpZ2h0 QnV0dG9uID0gMHgwMDAyLAogICAgICAgIE1pZEJ1dHRvbiA9IDB4MDAwNCwKICAgICAgICBNb3Vz ZUJ1dHRvbk1hc2sgPSAweDAwMDcsCiAgICAgICAgU2hpZnRCdXR0b24gPSAweDAwMDgsCiAgICAg ICAgQ29udHJvbEJ1dHRvbiA9IDB4MDAxMCwKICAgICAgICBBbHRCdXR0b24gPSAweDAwMjAsCiAg ICAgICAgS2V5QnV0dG9uTWFzayA9IDB4MDAzOCwKICAgICAgICBLZXlwYWQgPSAweDQwMDAKICAg IH07CgoKICAgIGVudW0gT3JpZW50YXRpb24gewogICAgICAgIEhvcml6b250YWwsCiAgICAgICAg VmVydGljYWwKICAgIH07CgoKCgogICAgZW51bSBBbGlnbm1lbnRGbGFncyB7CiAgICAgICAgQWxp Z25MZWZ0ID0gMHgwMDAxLAogICAgICAgIEFsaWduUmlnaHQgPSAweDAwMDIsCiAgICAgICAgQWxp Z25IQ2VudGVyID0gMHgwMDA0LAogICAgICAgIEFsaWduVG9wID0gMHgwMDA4LAogICAgICAgIEFs aWduQm90dG9tID0gMHgwMDEwLAogICAgICAgIEFsaWduVkNlbnRlciA9IDB4MDAyMCwKICAgICAg ICBBbGlnbkNlbnRlciA9IEFsaWduVkNlbnRlciB8IEFsaWduSENlbnRlciwKCiAgICAgICAgU2lu Z2xlTGluZSA9IDB4MDA0MCwKICAgICAgICBEb250Q2xpcCA9IDB4MDA4MCwKICAgICAgICBFeHBh bmRUYWJzID0gMHgwMTAwLAogICAgICAgIFNob3dQcmVmaXggPSAweDAyMDAsCiAgICAgICAgV29y ZEJyZWFrID0gMHgwNDAwLAogICAgICAgIERvbnRQcmludCA9IDB4MTAwMAogICAgfTsKCgogICAg ZW51bSBXaWRnZXRTdGF0ZSB7CiAgICAgICAgV1N0YXRlX0NyZWF0ZWQgPSAweDAwMDAwMDAxLAog ICAgICAgIFdTdGF0ZV9EaXNhYmxlZCA9IDB4MDAwMDAwMDIsCiAgICAgICAgV1N0YXRlX1Zpc2li bGUgPSAweDAwMDAwMDA0LAogICAgICAgIFdTdGF0ZV9Gb3JjZUhpZGUgPSAweDAwMDAwMDA4LAog ICAgICAgIFdTdGF0ZV9Pd25DdXJzb3IgPSAweDAwMDAwMDEwLAogICAgICAgIFdTdGF0ZV9Nb3Vz ZVRyYWNraW5nID0gMHgwMDAwMDAyMCwKICAgICAgICBXU3RhdGVfQ29tcHJlc3NLZXlzID0gMHgw MDAwMDA0MCwKICAgICAgICBXU3RhdGVfQmxvY2tVcGRhdGVzID0gMHgwMDAwMDA4MCwKICAgICAg ICBXU3RhdGVfSW5QYWludEV2ZW50ID0gMHgwMDAwMDEwMCwKICAgICAgICBXU3RhdGVfUmVwYXJl bnRlZCA9IDB4MDAwMDAyMDAsCiAgICAgICAgV1N0YXRlX0NvbmZpZ1BlbmRpbmcgPSAweDAwMDAw NDAwLAogICAgICAgIFdTdGF0ZV9SZXNpemVkID0gMHgwMDAwMDgwMCwKICAgICAgICBXU3RhdGVf QXV0b01hc2sgPSAweDAwMDAxMDAwLAogICAgICAgIFdTdGF0ZV9Qb2xpc2hlZCA9IDB4MDAwMDIw MDAsCiAgICAgICAgV1N0YXRlX0RORCA9IDB4MDAwMDQwMDAsCiAgICAgICAgV1N0YXRlX01vZGFs ID0gMHgwMDAwODAwMCwKICAgICAgICBXU3RhdGVfUmVzZXJ2ZWQxID0gMHgwMDAxMDAwMCwKICAg ICAgICBXU3RhdGVfUmVzZXJ2ZWQyID0gMHgwMDAyMDAwMCwKICAgICAgICBXU3RhdGVfUmVzZXJ2 ZWQzID0gMHgwMDA0MDAwMCwKICAgICAgICBXU3RhdGVfTWF4aW1pemVkID0gMHgwMDA4MDAwMCwK ICAgICAgICBXU3RhdGVfVHJhbnNsYXRlQmFja2dyb3VuZCA9IDB4MDAxMDAwMDAsCiAgICAgICAg V1N0YXRlX0ZvcmNlRGlzYWJsZWQgPSAweDAwMjAwMDAwLAogICAgICAgIFdTdGF0ZV9FeHBvc2Vk ID0gMHgwMDQwMDAwMAogICAgfTsKCgogICAgdHlwZWRlZiB1aW50IFdGbGFnczsKCgogICAgZW51 bSBXaWRnZXRGbGFncyB7CiAgICAgICAgV1R5cGVfVG9wTGV2ZWwgPSAweDAwMDAwMDAxLAogICAg ICAgIFdUeXBlX01vZGFsID0gMHgwMDAwMDAwMiwKICAgICAgICBXVHlwZV9Qb3B1cCA9IDB4MDAw MDAwMDQsCiAgICAgICAgV1R5cGVfRGVza3RvcCA9IDB4MDAwMDAwMDgsCiAgICAgICAgV1R5cGVf TWFzayA9IDB4MDAwMDAwMGYsCgogICAgICAgIFdTdHlsZV9DdXN0b21pemUgPSAweDAwMDAwMDEw LAogICAgICAgIFdTdHlsZV9Ob3JtYWxCb3JkZXIgPSAweDAwMDAwMDIwLAogICAgICAgIFdTdHls ZV9EaWFsb2dCb3JkZXIgPSAweDAwMDAwMDQwLAogICAgICAgIFdTdHlsZV9Ob0JvcmRlciA9IDB4 MDAwMDAwMDAsCiAgICAgICAgV1N0eWxlX1RpdGxlID0gMHgwMDAwMDA4MCwKICAgICAgICBXU3R5 bGVfU3lzTWVudSA9IDB4MDAwMDAxMDAsCiAgICAgICAgV1N0eWxlX01pbmltaXplID0gMHgwMDAw MDIwMCwKICAgICAgICBXU3R5bGVfTWF4aW1pemUgPSAweDAwMDAwNDAwLAogICAgICAgIFdTdHls ZV9NaW5NYXggPSBXU3R5bGVfTWluaW1pemUgfCBXU3R5bGVfTWF4aW1pemUsCiAgICAgICAgV1N0 eWxlX1Rvb2wgPSAweDAwMDAwODAwLAogICAgICAgIFdTdHlsZV9TdGF5c09uVG9wID0gMHgwMDAw MTAwMCwKICAgICAgICBXU3R5bGVfRGlhbG9nID0gMHgwMDAwMjAwMCwKICAgICAgICBXU3R5bGVf Q29udGV4dEhlbHAgPSAweDAwMDA0MDAwLAogICAgICAgIFdTdHlsZV9Ob0JvcmRlckV4ID0gMHgw MDAwODAwMCwKICAgICAgICBXU3R5bGVfTWFzayA9IDB4MDAwMGZmZjAsCgogICAgICAgIFdEZXN0 cnVjdGl2ZUNsb3NlID0gMHgwMDAxMDAwMCwKICAgICAgICBXUGFpbnREZXNrdG9wID0gMHgwMDAy MDAwMCwKICAgICAgICBXUGFpbnRVbmNsaXBwZWQgPSAweDAwMDQwMDAwLAogICAgICAgIFdQYWlu dENsZXZlciA9IDB4MDAwODAwMDAsCiAgICAgICAgV1Jlc2l6ZU5vRXJhc2UgPSAweDAwMTAwMDAw LAogICAgICAgIFdNb3VzZU5vTWFzayA9IDB4MDAyMDAwMDAsCiAgICAgICAgV05vcnRoV2VzdEdy YXZpdHkgPSAweDAwNDAwMDAwLAogICAgICAgIFdSZXBhaW50Tm9FcmFzZSA9IDB4MDA4MDAwMDAs CiAgICAgICAgV1gxMUJ5cGFzc1dNID0gMHgwMTAwMDAwMAogICAgfTsKCgoKCiAgICBlbnVtIElt YWdlQ29udmVyc2lvbkZsYWdzIHsKICAgICAgICBDb2xvck1vZGVfTWFzayA9IDB4MDAwMDAwMDMs CiAgICAgICAgQXV0b0NvbG9yID0gMHgwMDAwMDAwMCwKICAgICAgICBDb2xvck9ubHkgPSAweDAw MDAwMDAzLAogICAgICAgIE1vbm9Pbmx5ID0gMHgwMDAwMDAwMiwKCgogICAgICAgIEFscGhhRGl0 aGVyX01hc2sgPSAweDAwMDAwMDBjLAogICAgICAgIFRocmVzaG9sZEFscGhhRGl0aGVyID0gMHgw MDAwMDAwMCwKICAgICAgICBPcmRlcmVkQWxwaGFEaXRoZXIgPSAweDAwMDAwMDA0LAogICAgICAg IERpZmZ1c2VBbHBoYURpdGhlciA9IDB4MDAwMDAwMDgsCiAgICAgICAgTm9BbHBoYSA9IDB4MDAw MDAwMGMsCgogICAgICAgIERpdGhlcl9NYXNrID0gMHgwMDAwMDAzMCwKICAgICAgICBEaWZmdXNl RGl0aGVyID0gMHgwMDAwMDAwMCwKICAgICAgICBPcmRlcmVkRGl0aGVyID0gMHgwMDAwMDAxMCwK ICAgICAgICBUaHJlc2hvbGREaXRoZXIgPSAweDAwMDAwMDIwLAoKCiAgICAgICAgRGl0aGVyTW9k ZV9NYXNrID0gMHgwMDAwMDBjMCwKICAgICAgICBBdXRvRGl0aGVyID0gMHgwMDAwMDAwMCwKICAg ICAgICBQcmVmZXJEaXRoZXIgPSAweDAwMDAwMDQwLAogICAgICAgIEF2b2lkRGl0aGVyID0gMHgw MDAwMDA4MAogICAgfTsKCiAgICBlbnVtIEJHTW9kZSB7CiAgICAgICAgVHJhbnNwYXJlbnRNb2Rl LAogICAgICAgIE9wYXF1ZU1vZGUKICAgIH07CgogICAgZW51bSBQYWludFVuaXQgewogICAgICAg IFBpeGVsVW5pdCwKICAgICAgICBMb01ldHJpY1VuaXQsCiAgICAgICAgSGlNZXRyaWNVbml0LAog ICAgICAgIExvRW5nbGlzaFVuaXQsCiAgICAgICAgSGlFbmdsaXNoVW5pdCwKICAgICAgICBUd2lw c1VuaXQKICAgIH07CgogICAgZW51bSBHVUlTdHlsZSB7CiAgICAgICAgTWFjU3R5bGUsCiAgICAg ICAgV2luZG93c1N0eWxlLAogICAgICAgIFdpbjNTdHlsZSwKICAgICAgICBQTVN0eWxlLAogICAg ICAgIE1vdGlmU3R5bGUKICAgIH07CgogICAgZW51bSBNb2RpZmllciB7CiAgICAgICAgU0hJRlQg PSAweDAwMjAwMDAwLAogICAgICAgIENUUkwgPSAweDAwNDAwMDAwLAogICAgICAgIEFMVCA9IDB4 MDA4MDAwMDAsCiAgICAgICAgTU9ESUZJRVJfTUFTSyA9IDB4MDBlMDAwMDAsCiAgICAgICAgVU5J Q09ERV9BQ0NFTCA9IDB4MTAwMDAwMDAsCgogICAgICAgIEFTQ0lJX0FDQ0VMID0gVU5JQ09ERV9B Q0NFTAogICAgfTsKCiAgICBlbnVtIEtleSB7CiAgICAgICAgS2V5X0VzY2FwZSA9IDB4MTAwMCwK ICAgICAgICBLZXlfVGFiID0gMHgxMDAxLAogICAgICAgIEtleV9CYWNrdGFiID0gMHgxMDAyLCBL ZXlfQmFja1RhYiA9IEtleV9CYWNrdGFiLAogICAgICAgIEtleV9CYWNrc3BhY2UgPSAweDEwMDMs IEtleV9CYWNrU3BhY2UgPSBLZXlfQmFja3NwYWNlLAogICAgICAgIEtleV9SZXR1cm4gPSAweDEw MDQsCiAgICAgICAgS2V5X0VudGVyID0gMHgxMDA1LAogICAgICAgIEtleV9JbnNlcnQgPSAweDEw MDYsCiAgICAgICAgS2V5X0RlbGV0ZSA9IDB4MTAwNywKICAgICAgICBLZXlfUGF1c2UgPSAweDEw MDgsCiAgICAgICAgS2V5X1ByaW50ID0gMHgxMDA5LAogICAgICAgIEtleV9TeXNSZXEgPSAweDEw MGEsCiAgICAgICAgS2V5X0hvbWUgPSAweDEwMTAsCiAgICAgICAgS2V5X0VuZCA9IDB4MTAxMSwK ICAgICAgICBLZXlfTGVmdCA9IDB4MTAxMiwKICAgICAgICBLZXlfVXAgPSAweDEwMTMsCiAgICAg ICAgS2V5X1JpZ2h0ID0gMHgxMDE0LAogICAgICAgIEtleV9Eb3duID0gMHgxMDE1LAogICAgICAg IEtleV9QcmlvciA9IDB4MTAxNiwgS2V5X1BhZ2VVcCA9IEtleV9QcmlvciwKICAgICAgICBLZXlf TmV4dCA9IDB4MTAxNywgS2V5X1BhZ2VEb3duID0gS2V5X05leHQsCiAgICAgICAgS2V5X1NoaWZ0 ID0gMHgxMDIwLAogICAgICAgIEtleV9Db250cm9sID0gMHgxMDIxLAogICAgICAgIEtleV9NZXRh ID0gMHgxMDIyLAogICAgICAgIEtleV9BbHQgPSAweDEwMjMsCiAgICAgICAgS2V5X0NhcHNMb2Nr ID0gMHgxMDI0LAogICAgICAgIEtleV9OdW1Mb2NrID0gMHgxMDI1LAogICAgICAgIEtleV9TY3Jv bGxMb2NrID0gMHgxMDI2LAogICAgICAgIEtleV9GMSA9IDB4MTAzMCwKICAgICAgICBLZXlfRjIg PSAweDEwMzEsCiAgICAgICAgS2V5X0YzID0gMHgxMDMyLAogICAgICAgIEtleV9GNCA9IDB4MTAz MywKICAgICAgICBLZXlfRjUgPSAweDEwMzQsCiAgICAgICAgS2V5X0Y2ID0gMHgxMDM1LAogICAg ICAgIEtleV9GNyA9IDB4MTAzNiwKICAgICAgICBLZXlfRjggPSAweDEwMzcsCiAgICAgICAgS2V5 X0Y5ID0gMHgxMDM4LAogICAgICAgIEtleV9GMTAgPSAweDEwMzksCiAgICAgICAgS2V5X0YxMSA9 IDB4MTAzYSwKICAgICAgICBLZXlfRjEyID0gMHgxMDNiLAogICAgICAgIEtleV9GMTMgPSAweDEw M2MsCiAgICAgICAgS2V5X0YxNCA9IDB4MTAzZCwKICAgICAgICBLZXlfRjE1ID0gMHgxMDNlLAog ICAgICAgIEtleV9GMTYgPSAweDEwM2YsCiAgICAgICAgS2V5X0YxNyA9IDB4MTA0MCwKICAgICAg ICBLZXlfRjE4ID0gMHgxMDQxLAogICAgICAgIEtleV9GMTkgPSAweDEwNDIsCiAgICAgICAgS2V5 X0YyMCA9IDB4MTA0MywKICAgICAgICBLZXlfRjIxID0gMHgxMDQ0LAogICAgICAgIEtleV9GMjIg PSAweDEwNDUsCiAgICAgICAgS2V5X0YyMyA9IDB4MTA0NiwKICAgICAgICBLZXlfRjI0ID0gMHgx MDQ3LAogICAgICAgIEtleV9GMjUgPSAweDEwNDgsCiAgICAgICAgS2V5X0YyNiA9IDB4MTA0OSwK ICAgICAgICBLZXlfRjI3ID0gMHgxMDRhLAogICAgICAgIEtleV9GMjggPSAweDEwNGIsCiAgICAg ICAgS2V5X0YyOSA9IDB4MTA0YywKICAgICAgICBLZXlfRjMwID0gMHgxMDRkLAogICAgICAgIEtl eV9GMzEgPSAweDEwNGUsCiAgICAgICAgS2V5X0YzMiA9IDB4MTA0ZiwKICAgICAgICBLZXlfRjMz ID0gMHgxMDUwLAogICAgICAgIEtleV9GMzQgPSAweDEwNTEsCiAgICAgICAgS2V5X0YzNSA9IDB4 MTA1MiwKICAgICAgICBLZXlfU3VwZXJfTCA9IDB4MTA1MywKICAgICAgICBLZXlfU3VwZXJfUiA9 IDB4MTA1NCwKICAgICAgICBLZXlfTWVudSA9IDB4MTA1NSwKICAgICAgICBLZXlfSHlwZXJfTCA9 IDB4MTA1NiwKICAgICAgICBLZXlfSHlwZXJfUiA9IDB4MTA1NywKICAgICAgICBLZXlfSGVscCA9 IDB4MTA1OCwKICAgICAgICBLZXlfU3BhY2UgPSAweDIwLAogICAgICAgIEtleV9BbnkgPSBLZXlf U3BhY2UsCiAgICAgICAgS2V5X0V4Y2xhbSA9IDB4MjEsCiAgICAgICAgS2V5X1F1b3RlRGJsID0g MHgyMiwKICAgICAgICBLZXlfTnVtYmVyU2lnbiA9IDB4MjMsCiAgICAgICAgS2V5X0RvbGxhciA9 IDB4MjQsCiAgICAgICAgS2V5X1BlcmNlbnQgPSAweDI1LAogICAgICAgIEtleV9BbXBlcnNhbmQg PSAweDI2LAogICAgICAgIEtleV9BcG9zdHJvcGhlID0gMHgyNywKICAgICAgICBLZXlfUGFyZW5M ZWZ0ID0gMHgyOCwKICAgICAgICBLZXlfUGFyZW5SaWdodCA9IDB4MjksCiAgICAgICAgS2V5X0Fz dGVyaXNrID0gMHgyYSwKICAgICAgICBLZXlfUGx1cyA9IDB4MmIsCiAgICAgICAgS2V5X0NvbW1h ID0gMHgyYywKICAgICAgICBLZXlfTWludXMgPSAweDJkLAogICAgICAgIEtleV9QZXJpb2QgPSAw eDJlLAogICAgICAgIEtleV9TbGFzaCA9IDB4MmYsCiAgICAgICAgS2V5XzAgPSAweDMwLAogICAg ICAgIEtleV8xID0gMHgzMSwKICAgICAgICBLZXlfMiA9IDB4MzIsCiAgICAgICAgS2V5XzMgPSAw eDMzLAogICAgICAgIEtleV80ID0gMHgzNCwKICAgICAgICBLZXlfNSA9IDB4MzUsCiAgICAgICAg S2V5XzYgPSAweDM2LAogICAgICAgIEtleV83ID0gMHgzNywKICAgICAgICBLZXlfOCA9IDB4Mzgs CiAgICAgICAgS2V5XzkgPSAweDM5LAogICAgICAgIEtleV9Db2xvbiA9IDB4M2EsCiAgICAgICAg S2V5X1NlbWljb2xvbiA9IDB4M2IsCiAgICAgICAgS2V5X0xlc3MgPSAweDNjLAogICAgICAgIEtl eV9FcXVhbCA9IDB4M2QsCiAgICAgICAgS2V5X0dyZWF0ZXIgPSAweDNlLAogICAgICAgIEtleV9R dWVzdGlvbiA9IDB4M2YsCiAgICAgICAgS2V5X0F0ID0gMHg0MCwKICAgICAgICBLZXlfQSA9IDB4 NDEsCiAgICAgICAgS2V5X0IgPSAweDQyLAogICAgICAgIEtleV9DID0gMHg0MywKICAgICAgICBL ZXlfRCA9IDB4NDQsCiAgICAgICAgS2V5X0UgPSAweDQ1LAogICAgICAgIEtleV9GID0gMHg0NiwK ICAgICAgICBLZXlfRyA9IDB4NDcsCiAgICAgICAgS2V5X0ggPSAweDQ4LAogICAgICAgIEtleV9J ID0gMHg0OSwKICAgICAgICBLZXlfSiA9IDB4NGEsCiAgICAgICAgS2V5X0sgPSAweDRiLAogICAg ICAgIEtleV9MID0gMHg0YywKICAgICAgICBLZXlfTSA9IDB4NGQsCiAgICAgICAgS2V5X04gPSAw eDRlLAogICAgICAgIEtleV9PID0gMHg0ZiwKICAgICAgICBLZXlfUCA9IDB4NTAsCiAgICAgICAg S2V5X1EgPSAweDUxLAogICAgICAgIEtleV9SID0gMHg1MiwKICAgICAgICBLZXlfUyA9IDB4NTMs CiAgICAgICAgS2V5X1QgPSAweDU0LAogICAgICAgIEtleV9VID0gMHg1NSwKICAgICAgICBLZXlf ViA9IDB4NTYsCiAgICAgICAgS2V5X1cgPSAweDU3LAogICAgICAgIEtleV9YID0gMHg1OCwKICAg ICAgICBLZXlfWSA9IDB4NTksCiAgICAgICAgS2V5X1ogPSAweDVhLAogICAgICAgIEtleV9CcmFj a2V0TGVmdCA9IDB4NWIsCiAgICAgICAgS2V5X0JhY2tzbGFzaCA9IDB4NWMsCiAgICAgICAgS2V5 X0JyYWNrZXRSaWdodCA9IDB4NWQsCiAgICAgICAgS2V5X0FzY2lpQ2lyY3VtID0gMHg1ZSwKICAg ICAgICBLZXlfVW5kZXJzY29yZSA9IDB4NWYsCiAgICAgICAgS2V5X1F1b3RlTGVmdCA9IDB4NjAs CiAgICAgICAgS2V5X0JyYWNlTGVmdCA9IDB4N2IsCiAgICAgICAgS2V5X0JhciA9IDB4N2MsCiAg ICAgICAgS2V5X0JyYWNlUmlnaHQgPSAweDdkLAogICAgICAgIEtleV9Bc2NpaVRpbGRlID0gMHg3 ZSwKCgoKICAgICAgICBLZXlfbm9icmVha3NwYWNlID0gMHgwYTAsCiAgICAgICAgS2V5X2V4Y2xh bWRvd24gPSAweDBhMSwKICAgICAgICBLZXlfY2VudCA9IDB4MGEyLAogICAgICAgIEtleV9zdGVy bGluZyA9IDB4MGEzLAogICAgICAgIEtleV9jdXJyZW5jeSA9IDB4MGE0LAogICAgICAgIEtleV95 ZW4gPSAweDBhNSwKICAgICAgICBLZXlfYnJva2VuYmFyID0gMHgwYTYsCiAgICAgICAgS2V5X3Nl Y3Rpb24gPSAweDBhNywKICAgICAgICBLZXlfZGlhZXJlc2lzID0gMHgwYTgsCiAgICAgICAgS2V5 X2NvcHlyaWdodCA9IDB4MGE5LAogICAgICAgIEtleV9vcmRmZW1pbmluZSA9IDB4MGFhLAogICAg ICAgIEtleV9ndWlsbGVtb3RsZWZ0ID0gMHgwYWIsCiAgICAgICAgS2V5X25vdHNpZ24gPSAweDBh YywKICAgICAgICBLZXlfaHlwaGVuID0gMHgwYWQsCiAgICAgICAgS2V5X3JlZ2lzdGVyZWQgPSAw eDBhZSwKICAgICAgICBLZXlfbWFjcm9uID0gMHgwYWYsCiAgICAgICAgS2V5X2RlZ3JlZSA9IDB4 MGIwLAogICAgICAgIEtleV9wbHVzbWludXMgPSAweDBiMSwKICAgICAgICBLZXlfdHdvc3VwZXJp b3IgPSAweDBiMiwKICAgICAgICBLZXlfdGhyZWVzdXBlcmlvciA9IDB4MGIzLAogICAgICAgIEtl eV9hY3V0ZSA9IDB4MGI0LAogICAgICAgIEtleV9tdSA9IDB4MGI1LAogICAgICAgIEtleV9wYXJh Z3JhcGggPSAweDBiNiwKICAgICAgICBLZXlfcGVyaW9kY2VudGVyZWQgPSAweDBiNywKICAgICAg ICBLZXlfY2VkaWxsYSA9IDB4MGI4LAogICAgICAgIEtleV9vbmVzdXBlcmlvciA9IDB4MGI5LAog ICAgICAgIEtleV9tYXNjdWxpbmUgPSAweDBiYSwKICAgICAgICBLZXlfZ3VpbGxlbW90cmlnaHQg PSAweDBiYiwKICAgICAgICBLZXlfb25lcXVhcnRlciA9IDB4MGJjLAogICAgICAgIEtleV9vbmVo YWxmID0gMHgwYmQsCiAgICAgICAgS2V5X3RocmVlcXVhcnRlcnMgPSAweDBiZSwKICAgICAgICBL ZXlfcXVlc3Rpb25kb3duID0gMHgwYmYsCiAgICAgICAgS2V5X0FncmF2ZSA9IDB4MGMwLAogICAg ICAgIEtleV9BYWN1dGUgPSAweDBjMSwKICAgICAgICBLZXlfQWNpcmN1bWZsZXggPSAweDBjMiwK ICAgICAgICBLZXlfQXRpbGRlID0gMHgwYzMsCiAgICAgICAgS2V5X0FkaWFlcmVzaXMgPSAweDBj NCwKICAgICAgICBLZXlfQXJpbmcgPSAweDBjNSwKICAgICAgICBLZXlfQUUgPSAweDBjNiwKICAg ICAgICBLZXlfQ2NlZGlsbGEgPSAweDBjNywKICAgICAgICBLZXlfRWdyYXZlID0gMHgwYzgsCiAg ICAgICAgS2V5X0VhY3V0ZSA9IDB4MGM5LAogICAgICAgIEtleV9FY2lyY3VtZmxleCA9IDB4MGNh LAogICAgICAgIEtleV9FZGlhZXJlc2lzID0gMHgwY2IsCiAgICAgICAgS2V5X0lncmF2ZSA9IDB4 MGNjLAogICAgICAgIEtleV9JYWN1dGUgPSAweDBjZCwKICAgICAgICBLZXlfSWNpcmN1bWZsZXgg PSAweDBjZSwKICAgICAgICBLZXlfSWRpYWVyZXNpcyA9IDB4MGNmLAogICAgICAgIEtleV9FVEgg PSAweDBkMCwKICAgICAgICBLZXlfTnRpbGRlID0gMHgwZDEsCiAgICAgICAgS2V5X09ncmF2ZSA9 IDB4MGQyLAogICAgICAgIEtleV9PYWN1dGUgPSAweDBkMywKICAgICAgICBLZXlfT2NpcmN1bWZs ZXggPSAweDBkNCwKICAgICAgICBLZXlfT3RpbGRlID0gMHgwZDUsCiAgICAgICAgS2V5X09kaWFl cmVzaXMgPSAweDBkNiwKICAgICAgICBLZXlfbXVsdGlwbHkgPSAweDBkNywKICAgICAgICBLZXlf T29ibGlxdWUgPSAweDBkOCwKICAgICAgICBLZXlfVWdyYXZlID0gMHgwZDksCiAgICAgICAgS2V5 X1VhY3V0ZSA9IDB4MGRhLAogICAgICAgIEtleV9VY2lyY3VtZmxleCA9IDB4MGRiLAogICAgICAg IEtleV9VZGlhZXJlc2lzID0gMHgwZGMsCiAgICAgICAgS2V5X1lhY3V0ZSA9IDB4MGRkLAogICAg ICAgIEtleV9USE9STiA9IDB4MGRlLAogICAgICAgIEtleV9zc2hhcnAgPSAweDBkZiwKICAgICAg ICBLZXlfYWdyYXZlID0gMHgwZTAsCiAgICAgICAgS2V5X2FhY3V0ZSA9IDB4MGUxLAogICAgICAg IEtleV9hY2lyY3VtZmxleCA9IDB4MGUyLAogICAgICAgIEtleV9hdGlsZGUgPSAweDBlMywKICAg ICAgICBLZXlfYWRpYWVyZXNpcyA9IDB4MGU0LAogICAgICAgIEtleV9hcmluZyA9IDB4MGU1LAog ICAgICAgIEtleV9hZSA9IDB4MGU2LAogICAgICAgIEtleV9jY2VkaWxsYSA9IDB4MGU3LAogICAg ICAgIEtleV9lZ3JhdmUgPSAweDBlOCwKICAgICAgICBLZXlfZWFjdXRlID0gMHgwZTksCiAgICAg ICAgS2V5X2VjaXJjdW1mbGV4ID0gMHgwZWEsCiAgICAgICAgS2V5X2VkaWFlcmVzaXMgPSAweDBl YiwKICAgICAgICBLZXlfaWdyYXZlID0gMHgwZWMsCiAgICAgICAgS2V5X2lhY3V0ZSA9IDB4MGVk LAogICAgICAgIEtleV9pY2lyY3VtZmxleCA9IDB4MGVlLAogICAgICAgIEtleV9pZGlhZXJlc2lz ID0gMHgwZWYsCiAgICAgICAgS2V5X2V0aCA9IDB4MGYwLAogICAgICAgIEtleV9udGlsZGUgPSAw eDBmMSwKICAgICAgICBLZXlfb2dyYXZlID0gMHgwZjIsCiAgICAgICAgS2V5X29hY3V0ZSA9IDB4 MGYzLAogICAgICAgIEtleV9vY2lyY3VtZmxleCA9IDB4MGY0LAogICAgICAgIEtleV9vdGlsZGUg PSAweDBmNSwKICAgICAgICBLZXlfb2RpYWVyZXNpcyA9IDB4MGY2LAogICAgICAgIEtleV9kaXZp c2lvbiA9IDB4MGY3LAogICAgICAgIEtleV9vc2xhc2ggPSAweDBmOCwKICAgICAgICBLZXlfdWdy YXZlID0gMHgwZjksCiAgICAgICAgS2V5X3VhY3V0ZSA9IDB4MGZhLAogICAgICAgIEtleV91Y2ly Y3VtZmxleCA9IDB4MGZiLAogICAgICAgIEtleV91ZGlhZXJlc2lzID0gMHgwZmMsCiAgICAgICAg S2V5X3lhY3V0ZSA9IDB4MGZkLAogICAgICAgIEtleV90aG9ybiA9IDB4MGZlLAogICAgICAgIEtl eV95ZGlhZXJlc2lzID0gMHgwZmYsCgogICAgICAgIEtleV91bmtub3duID0gMHhmZmZmCiAgICB9 OwoKICAgIGVudW0gQXJyb3dUeXBlIHsKICAgICAgICBVcEFycm93LAogICAgICAgIERvd25BcnJv dywKICAgICAgICBMZWZ0QXJyb3csCiAgICAgICAgUmlnaHRBcnJvdwogICAgfTsKCgogICAgZW51 bSBSYXN0ZXJPcCB7CiAgICAgICAgQ29weVJPUCwKICAgICAgICBPclJPUCwKICAgICAgICBYb3JS T1AsCiAgICAgICAgTm90QW5kUk9QLAogICAgICAgIEVyYXNlUk9QPU5vdEFuZFJPUCwKICAgICAg ICBOb3RDb3B5Uk9QLAogICAgICAgIE5vdE9yUk9QLAogICAgICAgIE5vdFhvclJPUCwKICAgICAg ICBBbmRST1AsIE5vdEVyYXNlUk9QPUFuZFJPUCwKICAgICAgICBOb3RST1AsCiAgICAgICAgQ2xl YXJST1AsCiAgICAgICAgU2V0Uk9QLAogICAgICAgIE5vcFJPUCwKICAgICAgICBBbmROb3RST1As CiAgICAgICAgT3JOb3RST1AsCiAgICAgICAgTmFuZFJPUCwKICAgICAgICBOb3JST1AsIExhc3RS T1A9Tm9yUk9QCiAgICB9OwoKCiAgICBlbnVtIFBlblN0eWxlIHsKICAgICAgICBOb1BlbiwKICAg ICAgICBTb2xpZExpbmUsCiAgICAgICAgRGFzaExpbmUsCiAgICAgICAgRG90TGluZSwKICAgICAg ICBEYXNoRG90TGluZSwKICAgICAgICBEYXNoRG90RG90TGluZSwKICAgICAgICBNUGVuU3R5bGUg PSAweDBmCiAgICB9OwoKICAgIGVudW0gUGVuQ2FwU3R5bGUgewogICAgICAgIEZsYXRDYXAgPSAw eDAwLAogICAgICAgIFNxdWFyZUNhcCA9IDB4MTAsCiAgICAgICAgUm91bmRDYXAgPSAweDIwLAog ICAgICAgIE1QZW5DYXBTdHlsZSA9IDB4MzAKICAgIH07CgogICAgZW51bSBQZW5Kb2luU3R5bGUg ewogICAgICAgIE1pdGVySm9pbiA9IDB4MDAsCiAgICAgICAgQmV2ZWxKb2luID0gMHg0MCwKICAg ICAgICBSb3VuZEpvaW4gPSAweDgwLAogICAgICAgIE1QZW5Kb2luU3R5bGUgPSAweGMwCiAgICB9 OwoKICAgIGVudW0gQnJ1c2hTdHlsZSB7CiAgICAgICAgTm9CcnVzaCwKICAgICAgICBTb2xpZFBh dHRlcm4sCiAgICAgICAgRGVuc2UxUGF0dGVybiwKICAgICAgICBEZW5zZTJQYXR0ZXJuLAogICAg ICAgIERlbnNlM1BhdHRlcm4sCiAgICAgICAgRGVuc2U0UGF0dGVybiwKICAgICAgICBEZW5zZTVQ YXR0ZXJuLAogICAgICAgIERlbnNlNlBhdHRlcm4sCiAgICAgICAgRGVuc2U3UGF0dGVybiwKICAg ICAgICBIb3JQYXR0ZXJuLAogICAgICAgIFZlclBhdHRlcm4sCiAgICAgICAgQ3Jvc3NQYXR0ZXJu LAogICAgICAgIEJEaWFnUGF0dGVybiwKICAgICAgICBGRGlhZ1BhdHRlcm4sCiAgICAgICAgRGlh Z0Nyb3NzUGF0dGVybiwKICAgICAgICBDdXN0b21QYXR0ZXJuPTI0CiAgICB9OwoKICAgIGVudW0g V2luZG93c1ZlcnNpb24gewogICAgICAgIFdWXzMycyA9IDB4MDAwMSwKICAgICAgICBXVl85NSA9 IDB4MDAwMiwKICAgICAgICBXVl85OCA9IDB4MDAwMywKICAgICAgICBXVl9ET1NfYmFzZWQgPSAw eDAwMGYsCgogICAgICAgIFdWX05UID0gMHgwMDEwLAogICAgICAgIFdWXzIwMDAgPSAweDAwMjAs CiAgICAgICAgV1ZfTlRfYmFzZWQgPSAweDAwZjAKICAgIH07CgogICAgZW51bSBVSUVmZmVjdCB7 CiAgICAgICAgVUlfR2VuZXJhbCwKICAgICAgICBVSV9BbmltYXRlTWVudSwKICAgICAgICBVSV9G YWRlTWVudSwKICAgICAgICBVSV9BbmltYXRlQ29tYm8sCiAgICAgICAgVUlfQW5pbWF0ZVRvb2x0 aXAsCiAgICAgICAgVUlfRmFkZVRvb2x0aXAKICAgIH07CgoKCgogICAgc3RhdGljIGNvbnN0IFFD dXJzb3IgJiBhcnJvd0N1cnNvcjsKICAgIHN0YXRpYyBjb25zdCBRQ3Vyc29yICYgdXBBcnJvd0N1 cnNvcjsKICAgIHN0YXRpYyBjb25zdCBRQ3Vyc29yICYgY3Jvc3NDdXJzb3I7CiAgICBzdGF0aWMg Y29uc3QgUUN1cnNvciAmIHdhaXRDdXJzb3I7CiAgICBzdGF0aWMgY29uc3QgUUN1cnNvciAmIGli ZWFtQ3Vyc29yOwogICAgc3RhdGljIGNvbnN0IFFDdXJzb3IgJiBzaXplVmVyQ3Vyc29yOwogICAg c3RhdGljIGNvbnN0IFFDdXJzb3IgJiBzaXplSG9yQ3Vyc29yOwogICAgc3RhdGljIGNvbnN0IFFD dXJzb3IgJiBzaXplQkRpYWdDdXJzb3I7CiAgICBzdGF0aWMgY29uc3QgUUN1cnNvciAmIHNpemVG RGlhZ0N1cnNvcjsKICAgIHN0YXRpYyBjb25zdCBRQ3Vyc29yICYgc2l6ZUFsbEN1cnNvcjsKICAg IHN0YXRpYyBjb25zdCBRQ3Vyc29yICYgYmxhbmtDdXJzb3I7CiAgICBzdGF0aWMgY29uc3QgUUN1 cnNvciAmIHNwbGl0VkN1cnNvcjsKCiAgICBzdGF0aWMgY29uc3QgUUN1cnNvciAmIHNwbGl0SEN1 cnNvcjsKCiAgICBzdGF0aWMgY29uc3QgUUN1cnNvciAmIHBvaW50aW5nSGFuZEN1cnNvcjsKICAg IHN0YXRpYyBjb25zdCBRQ3Vyc29yICYgZm9yYmlkZGVuQ3Vyc29yOwoKCiAgICBlbnVtIFRleHRG b3JtYXQgewogICAgICAgIFBsYWluVGV4dCwKICAgICAgICBSaWNoVGV4dCwKICAgICAgICBBdXRv VGV4dAogICAgfTsKfTsKCgpjbGFzcyBRSW50ZXJuYWwgewpwdWJsaWM6CiAgICBlbnVtIFBhaW50 RGV2aWNlRmxhZ3MgewogICAgICAgIFVuZGVmaW5lZERldmljZSA9IDB4MDAsCiAgICAgICAgV2lk Z2V0ID0gMHgwMSwKICAgICAgICBQaXhtYXAgPSAweDAyLAogICAgICAgIFByaW50ZXIgPSAweDAz LAogICAgICAgIFBpY3R1cmUgPSAweDA0LAogICAgICAgIFN5c3RlbSA9IDB4MDUsCiAgICAgICAg RGV2aWNlVHlwZU1hc2sgPSAweDBmLAogICAgICAgIEV4dGVybmFsRGV2aWNlID0gMHgxMAogICAg fTsKfTsKCiMgMzYgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXdpbmRvd2RlZnMuaCIgMiAz CgoKCiMgMTIgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGludXgvMi45Ni9pbmNsdWRl L2xpbWl0cy5oIiAxIDMKIyA4ICIvdXNyL2xpYi9nY2MtbGliL2kzODYtcmVkaGF0LWxpbnV4LzIu OTYvaW5jbHVkZS9zeXNsaW1pdHMuaCIgMSAzCiMgMTMxICIvdXNyL2xpYi9nY2MtbGliL2kzODYt cmVkaGF0LWxpbnV4LzIuOTYvaW5jbHVkZS9saW1pdHMuaCIgMSAzCiMgMzEgIi91c3IvaW5jbHVk ZS9saW1pdHMuaCIgMSAzCiMgMTI3ICIvdXNyL2luY2x1ZGUvYml0cy9wb3NpeDFfbGltLmgiIDEg MwojIDM3ICIvdXNyL2luY2x1ZGUvYml0cy9sb2NhbF9saW0uaCIgMSAzCiMgMTI3ICIvdXNyL2lu Y2x1ZGUvYml0cy9wb3NpeDFfbGltLmgiIDIgMwojIDMxICIvdXNyL2luY2x1ZGUvbGltaXRzLmgi IDIgMwoKCgoKIyAxMzEgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGludXgvMi45Ni9p bmNsdWRlL2xpbWl0cy5oIiAyIDMKIyA4ICIvdXNyL2xpYi9nY2MtbGliL2kzODYtcmVkaGF0LWxp bnV4LzIuOTYvaW5jbHVkZS9zeXNsaW1pdHMuaCIgMiAzCiMgMTIgIi91c3IvbGliL2djYy1saWIv aTM4Ni1yZWRoYXQtbGludXgvMi45Ni9pbmNsdWRlL2xpbWl0cy5oIiAyIDMKIyAzOSAiL3Vzci9s aWIvcXQtMi4yLjAvaW5jbHVkZS9xd2luZG93ZGVmcy5oIiAyIDMKCgoKY2xhc3MgUVBhaW50RGV2 aWNlOwpjbGFzcyBRUGFpbnREZXZpY2VNZXRyaWNzOwpjbGFzcyBRV2lkZ2V0OwpjbGFzcyBRV2lk Z2V0TWFwcGVyOwpjbGFzcyBRRGlhbG9nOwpjbGFzcyBRQ29sb3I7CmNsYXNzIFFDb2xvckdyb3Vw OwpjbGFzcyBRUGFsZXR0ZTsKY2xhc3MgUUN1cnNvcjsKY2xhc3MgUVBvaW50OwpjbGFzcyBRU2l6 ZTsKY2xhc3MgUVJlY3Q7CmNsYXNzIFFQb2ludEFycmF5OwpjbGFzcyBRUGFpbnRlcjsKY2xhc3Mg UVJlZ2lvbjsKY2xhc3MgUUZvbnQ7CmNsYXNzIFFGb250TWV0cmljczsKY2xhc3MgUUZvbnRJbmZv OwpjbGFzcyBRUGVuOwpjbGFzcyBRQnJ1c2g7CmNsYXNzIFFXTWF0cml4OwpjbGFzcyBRUGl4bWFw OwpjbGFzcyBRQml0bWFwOwpjbGFzcyBRTW92aWU7CmNsYXNzIFFJbWFnZTsKY2xhc3MgUUltYWdl SU87CmNsYXNzIFFQaWN0dXJlOwpjbGFzcyBRUHJpbnRlcjsKY2xhc3MgUUFjY2VsOwpjbGFzcyBR VGltZXI7CmNsYXNzIFFUaW1lOwpjbGFzcyBRQ2xpcGJvYXJkOwoKCgoKY2xhc3MgUVdpZGdldExp c3Q7CmNsYXNzIFFXaWRnZXRMaXN0SXQ7CgoKCgojIDEwOCAiL3Vzci9saWIvcXQtMi4yLjAvaW5j bHVkZS9xd2luZG93ZGVmcy5oIiAzCnR5cGVkZWYgdW5zaWduZWQgaW50IFdJZDsKdHlwZWRlZiB1 bnNpZ25lZCBpbnQgSEFORExFOwoKCnR5cGVkZWYgc3RydWN0IF9YRGlzcGxheSBEaXNwbGF5Owp0 eXBlZGVmIHVuaW9uIF9YRXZlbnQgWEV2ZW50Owp0eXBlZGVmIHN0cnVjdCBfWEdDICpHQzsKdHlw ZWRlZiBzdHJ1Y3QgX1hSZWdpb24gKlJlZ2lvbjsKCiBEaXNwbGF5ICpxdF94ZGlzcGxheSgpOwog aW50IHF0X3hzY3JlZW4oKTsKIFdJZCBxdF94cm9vdHdpbigpOwogR0MgcXRfeGdldF9yZWFkb25s eV9nYyggYm9vbCBtb25vY2hyb21lPUZBTFNFICk7CiBHQyBxdF94Z2V0X3RlbXBfZ2MoIGJvb2wg bW9ub2Nocm9tZT1GQUxTRSApOwoKIyAxMzQgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXdp bmRvd2RlZnMuaCIgMwpjbGFzcyBRQXBwbGljYXRpb247CgoKCgoKCgoKdHlwZWRlZiBRX0lOVDMy IFFDT09SRDsKY29uc3QgUUNPT1JEIFFDT09SRF9NQVggPSAyMTQ3NDgzNjQ3Owpjb25zdCBRQ09P UkQgUUNPT1JEX01JTiA9IC1RQ09PUkRfTUFYIC0gMTsKCnR5cGVkZWYgdW5zaWduZWQgaW50IFFS Z2I7CgogY2hhciAqcUFwcE5hbWUoKTsKCgoKCnR5cGVkZWYgdm9pZCAoKlFfQ2xlYW5VcEZ1bmN0 aW9uKSgpOwogdm9pZCBxQWRkUG9zdFJvdXRpbmUoIFFfQ2xlYW5VcEZ1bmN0aW9uICk7CiB2b2lk IHFSZW1vdmVQb3N0Um91dGluZSggUV9DbGVhblVwRnVuY3Rpb24gKTsKCgogdm9pZCAqcXRfZmlu ZF9vYmpfY2hpbGQoIFFPYmplY3QgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICogKTsKIyAz MyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xd2lkZ2V0LmgiIDIgMwoKIyAzNiAiL3Vzci9s aWIvcXQtMi4yLjAvaW5jbHVkZS9xb2JqZWN0LmgiIDEgMwojIDM0ICIvdXNyL2xpYi9xdC0yLjIu MC9pbmNsdWRlL3FldmVudC5oIiAxIDMKIyAzNCAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9x cmVnaW9uLmgiIDEgMwojIDMzICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FyZWN0LmgiIDEg MwojIDMzICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FzaXplLmgiIDEgMwojIDM2ICIvdXNy L2xpYi9xdC0yLjIuMC9pbmNsdWRlL3Fwb2ludC5oIiAxIDMKY2xhc3MgUVBvaW50CnsKcHVibGlj OgogICAgUVBvaW50KCk7CiAgICBRUG9pbnQoIGludCB4cG9zLCBpbnQgeXBvcyApOwoKICAgIGJv b2wgaXNOdWxsKCkgY29uc3Q7CgogICAgaW50IHgoKSBjb25zdDsKICAgIGludCB5KCkgY29uc3Q7 CiAgICB2b2lkIHNldFgoIGludCB4ICk7CiAgICB2b2lkIHNldFkoIGludCB5ICk7CgogICAgaW50 IG1hbmhhdHRhbkxlbmd0aCgpIGNvbnN0OwoKICAgIFFDT09SRCAmcngoKTsKICAgIFFDT09SRCAm cnkoKTsKCiAgICBRUG9pbnQgJm9wZXJhdG9yKz0oIGNvbnN0IFFQb2ludCAmcCApOwogICAgUVBv aW50ICZvcGVyYXRvci09KCBjb25zdCBRUG9pbnQgJnAgKTsKICAgIFFQb2ludCAmb3BlcmF0b3Iq PSggaW50IGMgKTsKICAgIFFQb2ludCAmb3BlcmF0b3IqPSggZG91YmxlIGMgKTsKICAgIFFQb2lu dCAmb3BlcmF0b3IvPSggaW50IGMgKTsKICAgIFFQb2ludCAmb3BlcmF0b3IvPSggZG91YmxlIGMg KTsKCiAgICBmcmllbmQgaW5saW5lIGJvb2wgb3BlcmF0b3I9PSggY29uc3QgUVBvaW50ICYsIGNv bnN0IFFQb2ludCAmICk7CiAgICBmcmllbmQgaW5saW5lIGJvb2wgb3BlcmF0b3IhPSggY29uc3Qg UVBvaW50ICYsIGNvbnN0IFFQb2ludCAmICk7CiAgICBmcmllbmQgaW5saW5lIFFQb2ludCBvcGVy YXRvcisoIGNvbnN0IFFQb2ludCAmLCBjb25zdCBRUG9pbnQgJiApOwogICAgZnJpZW5kIGlubGlu ZSBRUG9pbnQgb3BlcmF0b3ItKCBjb25zdCBRUG9pbnQgJiwgY29uc3QgUVBvaW50ICYgKTsKICAg IGZyaWVuZCBpbmxpbmUgUVBvaW50IG9wZXJhdG9yKiggY29uc3QgUVBvaW50ICYsIGludCApOwog ICAgZnJpZW5kIGlubGluZSBRUG9pbnQgb3BlcmF0b3IqKCBpbnQsIGNvbnN0IFFQb2ludCAmICk7 CiAgICBmcmllbmQgaW5saW5lIFFQb2ludCBvcGVyYXRvciooIGNvbnN0IFFQb2ludCAmLCBkb3Vi bGUgKTsKICAgIGZyaWVuZCBpbmxpbmUgUVBvaW50IG9wZXJhdG9yKiggZG91YmxlLCBjb25zdCBR UG9pbnQgJiApOwogICAgZnJpZW5kIGlubGluZSBRUG9pbnQgb3BlcmF0b3ItKCBjb25zdCBRUG9p bnQgJiApOwogICAgZnJpZW5kIGlubGluZSBRUG9pbnQgb3BlcmF0b3IvKCBjb25zdCBRUG9pbnQg JiwgaW50ICk7CiAgICBmcmllbmQgaW5saW5lIFFQb2ludCBvcGVyYXRvci8oIGNvbnN0IFFQb2lu dCAmLCBkb3VibGUgKTsKCnByaXZhdGU6CiAgICBzdGF0aWMgdm9pZCB3YXJuaW5nRGl2QnlaZXJv KCk7CgoKCgoKICAgIFFDT09SRCB4cDsKICAgIFFDT09SRCB5cDsKCn07CgoKCgoKCiBRRGF0YVN0 cmVhbSAmb3BlcmF0b3I8PCggUURhdGFTdHJlYW0gJiwgY29uc3QgUVBvaW50ICYgKTsKIFFEYXRh U3RyZWFtICZvcGVyYXRvcj4+KCBRRGF0YVN0cmVhbSAmLCBRUG9pbnQgJiApOwoKCgoKCgppbmxp bmUgUVBvaW50OjpRUG9pbnQoKQp7IHhwPTA7IHlwPTA7IH0KCmlubGluZSBRUG9pbnQ6OlFQb2lu dCggaW50IHhwb3MsIGludCB5cG9zICkKeyB4cD0oUUNPT1JEKXhwb3M7IHlwPShRQ09PUkQpeXBv czsgfQoKaW5saW5lIGJvb2wgUVBvaW50Ojppc051bGwoKSBjb25zdAp7IHJldHVybiB4cCA9PSAw ICYmIHlwID09IDA7IH0KCmlubGluZSBpbnQgUVBvaW50Ojp4KCkgY29uc3QKeyByZXR1cm4geHA7 IH0KCmlubGluZSBpbnQgUVBvaW50Ojp5KCkgY29uc3QKeyByZXR1cm4geXA7IH0KCmlubGluZSB2 b2lkIFFQb2ludDo6c2V0WCggaW50IHggKQp7IHhwID0gKFFDT09SRCl4OyB9CgppbmxpbmUgdm9p ZCBRUG9pbnQ6OnNldFkoIGludCB5ICkKeyB5cCA9IChRQ09PUkQpeTsgfQoKaW5saW5lIFFDT09S RCAmUVBvaW50OjpyeCgpCnsgcmV0dXJuIHhwOyB9CgppbmxpbmUgUUNPT1JEICZRUG9pbnQ6OnJ5 KCkKeyByZXR1cm4geXA7IH0KCmlubGluZSBRUG9pbnQgJlFQb2ludDo6b3BlcmF0b3IrPSggY29u c3QgUVBvaW50ICZwICkKeyB4cCs9cC54cDsgeXArPXAueXA7IHJldHVybiAqdGhpczsgfQoKaW5s aW5lIFFQb2ludCAmUVBvaW50OjpvcGVyYXRvci09KCBjb25zdCBRUG9pbnQgJnAgKQp7IHhwLT1w LnhwOyB5cC09cC55cDsgcmV0dXJuICp0aGlzOyB9CgppbmxpbmUgUVBvaW50ICZRUG9pbnQ6Om9w ZXJhdG9yKj0oIGludCBjICkKeyB4cCo9KFFDT09SRCljOyB5cCo9KFFDT09SRCljOyByZXR1cm4g KnRoaXM7IH0KCmlubGluZSBRUG9pbnQgJlFQb2ludDo6b3BlcmF0b3IqPSggZG91YmxlIGMgKQp7 IHhwPShRQ09PUkQpKHhwKmMpOyB5cD0oUUNPT1JEKSh5cCpjKTsgcmV0dXJuICp0aGlzOyB9Cgpp bmxpbmUgYm9vbCBvcGVyYXRvcj09KCBjb25zdCBRUG9pbnQgJnAxLCBjb25zdCBRUG9pbnQgJnAy ICkKeyByZXR1cm4gcDEueHAgPT0gcDIueHAgJiYgcDEueXAgPT0gcDIueXA7IH0KCmlubGluZSBi b29sIG9wZXJhdG9yIT0oIGNvbnN0IFFQb2ludCAmcDEsIGNvbnN0IFFQb2ludCAmcDIgKQp7IHJl dHVybiBwMS54cCAhPSBwMi54cCB8fCBwMS55cCAhPSBwMi55cDsgfQoKaW5saW5lIFFQb2ludCBv cGVyYXRvcisoIGNvbnN0IFFQb2ludCAmcDEsIGNvbnN0IFFQb2ludCAmcDIgKQp7IHJldHVybiBR UG9pbnQocDEueHArcDIueHAsIHAxLnlwK3AyLnlwKTsgfQoKaW5saW5lIFFQb2ludCBvcGVyYXRv ci0oIGNvbnN0IFFQb2ludCAmcDEsIGNvbnN0IFFQb2ludCAmcDIgKQp7IHJldHVybiBRUG9pbnQo cDEueHAtcDIueHAsIHAxLnlwLXAyLnlwKTsgfQoKaW5saW5lIFFQb2ludCBvcGVyYXRvciooIGNv bnN0IFFQb2ludCAmcCwgaW50IGMgKQp7IHJldHVybiBRUG9pbnQocC54cCpjLCBwLnlwKmMpOyB9 CgppbmxpbmUgUVBvaW50IG9wZXJhdG9yKiggaW50IGMsIGNvbnN0IFFQb2ludCAmcCApCnsgcmV0 dXJuIFFQb2ludChwLnhwKmMsIHAueXAqYyk7IH0KCmlubGluZSBRUG9pbnQgb3BlcmF0b3IqKCBj b25zdCBRUG9pbnQgJnAsIGRvdWJsZSBjICkKeyByZXR1cm4gUVBvaW50KChRQ09PUkQpKHAueHAq YyksIChRQ09PUkQpKHAueXAqYykpOyB9CgppbmxpbmUgUVBvaW50IG9wZXJhdG9yKiggZG91Ymxl IGMsIGNvbnN0IFFQb2ludCAmcCApCnsgcmV0dXJuIFFQb2ludCgoUUNPT1JEKShwLnhwKmMpLCAo UUNPT1JEKShwLnlwKmMpKTsgfQoKaW5saW5lIFFQb2ludCBvcGVyYXRvci0oIGNvbnN0IFFQb2lu dCAmcCApCnsgcmV0dXJuIFFQb2ludCgtcC54cCwgLXAueXApOyB9CgppbmxpbmUgUVBvaW50ICZR UG9pbnQ6Om9wZXJhdG9yLz0oIGludCBjICkKewoKICAgIGlmICggYyA9PSAwICkKICAgICAgICB3 YXJuaW5nRGl2QnlaZXJvKCk7CgogICAgeHAvPShRQ09PUkQpYzsKICAgIHlwLz0oUUNPT1JEKWM7 CiAgICByZXR1cm4gKnRoaXM7Cn0KCmlubGluZSBRUG9pbnQgJlFQb2ludDo6b3BlcmF0b3IvPSgg ZG91YmxlIGMgKQp7CgogICAgaWYgKCBjID09IDAuMCApCiAgICAgICAgd2FybmluZ0RpdkJ5WmVy bygpOwoKICAgIHhwPShRQ09PUkQpKHhwL2MpOwogICAgeXA9KFFDT09SRCkoeXAvYyk7CiAgICBy ZXR1cm4gKnRoaXM7Cn0KCmlubGluZSBRUG9pbnQgb3BlcmF0b3IvKCBjb25zdCBRUG9pbnQgJnAs IGludCBjICkKewoKICAgIGlmICggYyA9PSAwICkKICAgICAgICBRUG9pbnQ6Ondhcm5pbmdEaXZC eVplcm8oKTsKCiAgICByZXR1cm4gUVBvaW50KHAueHAvYywgcC55cC9jKTsKfQoKaW5saW5lIFFQ b2ludCBvcGVyYXRvci8oIGNvbnN0IFFQb2ludCAmcCwgZG91YmxlIGMgKQp7CgogICAgaWYgKCBj ID09IDAuMCApCiAgICAgICAgUVBvaW50Ojp3YXJuaW5nRGl2QnlaZXJvKCk7CgogICAgcmV0dXJu IFFQb2ludCgoUUNPT1JEKShwLnhwL2MpLCAoUUNPT1JEKShwLnlwL2MpKTsKfQoKCiMgMzMgIi91 c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXNpemUuaCIgMiAzCgoKCmNsYXNzIFFTaXplCnsKcHVi bGljOgogICAgUVNpemUoKTsKICAgIFFTaXplKCBpbnQgdywgaW50IGggKTsKCiAgICBib29sIGlz TnVsbCgpIGNvbnN0OwogICAgYm9vbCBpc0VtcHR5KCkgY29uc3Q7CiAgICBib29sIGlzVmFsaWQo KSBjb25zdDsKCiAgICBpbnQgd2lkdGgoKSBjb25zdDsKICAgIGludCBoZWlnaHQoKSBjb25zdDsK ICAgIHZvaWQgc2V0V2lkdGgoIGludCB3ICk7CiAgICB2b2lkIHNldEhlaWdodCggaW50IGggKTsK ICAgIHZvaWQgdHJhbnNwb3NlKCk7CgogICAgUVNpemUgZXhwYW5kZWRUbyggY29uc3QgUVNpemUg JiApIGNvbnN0OwogICAgUVNpemUgYm91bmRlZFRvKCBjb25zdCBRU2l6ZSAmICkgY29uc3Q7Cgog ICAgUUNPT1JEICZyd2lkdGgoKTsKICAgIFFDT09SRCAmcmhlaWdodCgpOwoKICAgIFFTaXplICZv cGVyYXRvcis9KCBjb25zdCBRU2l6ZSAmICk7CiAgICBRU2l6ZSAmb3BlcmF0b3ItPSggY29uc3Qg UVNpemUgJiApOwogICAgUVNpemUgJm9wZXJhdG9yKj0oIGludCBjICk7CiAgICBRU2l6ZSAmb3Bl cmF0b3IqPSggZG91YmxlIGMgKTsKICAgIFFTaXplICZvcGVyYXRvci89KCBpbnQgYyApOwogICAg UVNpemUgJm9wZXJhdG9yLz0oIGRvdWJsZSBjICk7CgogICAgZnJpZW5kIGlubGluZSBib29sIG9w ZXJhdG9yPT0oIGNvbnN0IFFTaXplICYsIGNvbnN0IFFTaXplICYgKTsKICAgIGZyaWVuZCBpbmxp bmUgYm9vbCBvcGVyYXRvciE9KCBjb25zdCBRU2l6ZSAmLCBjb25zdCBRU2l6ZSAmICk7CiAgICBm cmllbmQgaW5saW5lIFFTaXplIG9wZXJhdG9yKyggY29uc3QgUVNpemUgJiwgY29uc3QgUVNpemUg JiApOwogICAgZnJpZW5kIGlubGluZSBRU2l6ZSBvcGVyYXRvci0oIGNvbnN0IFFTaXplICYsIGNv bnN0IFFTaXplICYgKTsKICAgIGZyaWVuZCBpbmxpbmUgUVNpemUgb3BlcmF0b3IqKCBjb25zdCBR U2l6ZSAmLCBpbnQgKTsKICAgIGZyaWVuZCBpbmxpbmUgUVNpemUgb3BlcmF0b3IqKCBpbnQsIGNv bnN0IFFTaXplICYgKTsKICAgIGZyaWVuZCBpbmxpbmUgUVNpemUgb3BlcmF0b3IqKCBjb25zdCBR U2l6ZSAmLCBkb3VibGUgKTsKICAgIGZyaWVuZCBpbmxpbmUgUVNpemUgb3BlcmF0b3IqKCBkb3Vi bGUsIGNvbnN0IFFTaXplICYgKTsKICAgIGZyaWVuZCBpbmxpbmUgUVNpemUgb3BlcmF0b3IvKCBj b25zdCBRU2l6ZSAmLCBpbnQgKTsKICAgIGZyaWVuZCBpbmxpbmUgUVNpemUgb3BlcmF0b3IvKCBj b25zdCBRU2l6ZSAmLCBkb3VibGUgKTsKCnByaXZhdGU6CiAgICBzdGF0aWMgdm9pZCB3YXJuaW5n RGl2QnlaZXJvKCk7CgogICAgUUNPT1JEIHdkOwogICAgUUNPT1JEIGh0Owp9OwoKCgoKCgogUURh dGFTdHJlYW0gJm9wZXJhdG9yPDwoIFFEYXRhU3RyZWFtICYsIGNvbnN0IFFTaXplICYgKTsKIFFE YXRhU3RyZWFtICZvcGVyYXRvcj4+KCBRRGF0YVN0cmVhbSAmLCBRU2l6ZSAmICk7CgoKCgoKCmlu bGluZSBRU2l6ZTo6UVNpemUoKQp7IHdkID0gaHQgPSAtMTsgfQoKaW5saW5lIFFTaXplOjpRU2l6 ZSggaW50IHcsIGludCBoICkKeyB3ZD0oUUNPT1JEKXc7IGh0PShRQ09PUkQpaDsgfQoKaW5saW5l IGJvb2wgUVNpemU6OmlzTnVsbCgpIGNvbnN0CnsgcmV0dXJuIHdkPT0wICYmIGh0PT0wOyB9Cgpp bmxpbmUgYm9vbCBRU2l6ZTo6aXNFbXB0eSgpIGNvbnN0CnsgcmV0dXJuIHdkPDEgfHwgaHQ8MTsg fQoKaW5saW5lIGJvb2wgUVNpemU6OmlzVmFsaWQoKSBjb25zdAp7IHJldHVybiB3ZD49MCAmJiBo dD49MDsgfQoKaW5saW5lIGludCBRU2l6ZTo6d2lkdGgoKSBjb25zdAp7IHJldHVybiB3ZDsgfQoK aW5saW5lIGludCBRU2l6ZTo6aGVpZ2h0KCkgY29uc3QKeyByZXR1cm4gaHQ7IH0KCmlubGluZSB2 b2lkIFFTaXplOjpzZXRXaWR0aCggaW50IHcgKQp7IHdkPShRQ09PUkQpdzsgfQoKaW5saW5lIHZv aWQgUVNpemU6OnNldEhlaWdodCggaW50IGggKQp7IGh0PShRQ09PUkQpaDsgfQoKaW5saW5lIFFD T09SRCAmUVNpemU6OnJ3aWR0aCgpCnsgcmV0dXJuIHdkOyB9CgppbmxpbmUgUUNPT1JEICZRU2l6 ZTo6cmhlaWdodCgpCnsgcmV0dXJuIGh0OyB9CgppbmxpbmUgUVNpemUgJlFTaXplOjpvcGVyYXRv cis9KCBjb25zdCBRU2l6ZSAmcyApCnsgd2QrPXMud2Q7IGh0Kz1zLmh0OyByZXR1cm4gKnRoaXM7 IH0KCmlubGluZSBRU2l6ZSAmUVNpemU6Om9wZXJhdG9yLT0oIGNvbnN0IFFTaXplICZzICkKeyB3 ZC09cy53ZDsgaHQtPXMuaHQ7IHJldHVybiAqdGhpczsgfQoKaW5saW5lIFFTaXplICZRU2l6ZTo6 b3BlcmF0b3IqPSggaW50IGMgKQp7IHdkKj0oUUNPT1JEKWM7IGh0Kj0oUUNPT1JEKWM7IHJldHVy biAqdGhpczsgfQoKaW5saW5lIFFTaXplICZRU2l6ZTo6b3BlcmF0b3IqPSggZG91YmxlIGMgKQp7 IHdkPShRQ09PUkQpKHdkKmMpOyBodD0oUUNPT1JEKShodCpjKTsgcmV0dXJuICp0aGlzOyB9Cgpp bmxpbmUgYm9vbCBvcGVyYXRvcj09KCBjb25zdCBRU2l6ZSAmczEsIGNvbnN0IFFTaXplICZzMiAp CnsgcmV0dXJuIHMxLndkID09IHMyLndkICYmIHMxLmh0ID09IHMyLmh0OyB9CgppbmxpbmUgYm9v bCBvcGVyYXRvciE9KCBjb25zdCBRU2l6ZSAmczEsIGNvbnN0IFFTaXplICZzMiApCnsgcmV0dXJu IHMxLndkICE9IHMyLndkIHx8IHMxLmh0ICE9IHMyLmh0OyB9CgppbmxpbmUgUVNpemUgb3BlcmF0 b3IrKCBjb25zdCBRU2l6ZSAmIHMxLCBjb25zdCBRU2l6ZSAmIHMyICkKeyByZXR1cm4gUVNpemUo czEud2QrczIud2QsIHMxLmh0K3MyLmh0KTsgfQoKaW5saW5lIFFTaXplIG9wZXJhdG9yLSggY29u c3QgUVNpemUgJnMxLCBjb25zdCBRU2l6ZSAmczIgKQp7IHJldHVybiBRU2l6ZShzMS53ZC1zMi53 ZCwgczEuaHQtczIuaHQpOyB9CgppbmxpbmUgUVNpemUgb3BlcmF0b3IqKCBjb25zdCBRU2l6ZSAm cywgaW50IGMgKQp7IHJldHVybiBRU2l6ZShzLndkKmMsIHMuaHQqYyk7IH0KCmlubGluZSBRU2l6 ZSBvcGVyYXRvciooIGludCBjLCBjb25zdCBRU2l6ZSAmcyApCnsgcmV0dXJuIFFTaXplKHMud2Qq Yywgcy5odCpjKTsgfQoKaW5saW5lIFFTaXplIG9wZXJhdG9yKiggY29uc3QgUVNpemUgJnMsIGRv dWJsZSBjICkKeyByZXR1cm4gUVNpemUoKFFDT09SRCkocy53ZCpjKSwgKFFDT09SRCkocy5odCpj KSk7IH0KCmlubGluZSBRU2l6ZSBvcGVyYXRvciooIGRvdWJsZSBjLCBjb25zdCBRU2l6ZSAmcyAp CnsgcmV0dXJuIFFTaXplKChRQ09PUkQpKHMud2QqYyksIChRQ09PUkQpKHMuaHQqYykpOyB9Cgpp bmxpbmUgUVNpemUgJlFTaXplOjpvcGVyYXRvci89KCBpbnQgYyApCnsKCiAgICBpZiAoIGMgPT0g MCApCiAgICAgICAgd2FybmluZ0RpdkJ5WmVybygpOwoKICAgIHdkLz0oUUNPT1JEKWM7IGh0Lz0o UUNPT1JEKWM7CiAgICByZXR1cm4gKnRoaXM7Cn0KCmlubGluZSBRU2l6ZSAmUVNpemU6Om9wZXJh dG9yLz0oIGRvdWJsZSBjICkKewoKICAgIGlmICggYyA9PSAwLjAgKQogICAgICAgIHdhcm5pbmdE aXZCeVplcm8oKTsKCiAgICB3ZD0oUUNPT1JEKSh3ZC9jKTsgaHQ9KFFDT09SRCkoaHQvYyk7CiAg ICByZXR1cm4gKnRoaXM7Cn0KCmlubGluZSBRU2l6ZSBvcGVyYXRvci8oIGNvbnN0IFFTaXplICZz LCBpbnQgYyApCnsKCiAgICBpZiAoIGMgPT0gMCApCiAgICAgICAgUVNpemU6Ondhcm5pbmdEaXZC eVplcm8oKTsKCiAgICByZXR1cm4gUVNpemUocy53ZC9jLCBzLmh0L2MpOwp9CgppbmxpbmUgUVNp emUgb3BlcmF0b3IvKCBjb25zdCBRU2l6ZSAmcywgZG91YmxlIGMgKQp7CgogICAgaWYgKCBjID09 IDAuMCApCiAgICAgICAgUVNpemU6Ondhcm5pbmdEaXZCeVplcm8oKTsKCiAgICByZXR1cm4gUVNp emUoKFFDT09SRCkocy53ZC9jKSwgKFFDT09SRCkocy5odC9jKSk7Cn0KCmlubGluZSBRU2l6ZSBR U2l6ZTo6ZXhwYW5kZWRUbyggY29uc3QgUVNpemUgJiBvdGhlclNpemUgKSBjb25zdAp7CiAgICBy ZXR1cm4gUVNpemUoICgod2QpID4gKG90aGVyU2l6ZS53ZCkgPyAod2QpIDogKG90aGVyU2l6ZS53 ZCkpLCAoKGh0KSA+IChvdGhlclNpemUuaHQpID8gKGh0KSA6IChvdGhlclNpemUuaHQpKSApOwp9 CgppbmxpbmUgUVNpemUgUVNpemU6OmJvdW5kZWRUbyggY29uc3QgUVNpemUgJiBvdGhlclNpemUg KSBjb25zdAp7CiAgICByZXR1cm4gUVNpemUoICgod2QpIDwgKG90aGVyU2l6ZS53ZCkgPyAod2Qp IDogKG90aGVyU2l6ZS53ZCkpLCAoKGh0KSA8IChvdGhlclNpemUuaHQpID8gKGh0KSA6IChvdGhl clNpemUuaHQpKSApOwp9CgoKIyAzMyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xcmVjdC5o IiAyIDMKCgoKCgoKCmNsYXNzIFFSZWN0CnsKcHVibGljOgogICAgUVJlY3QoKSB7IHgxID0geTEg PSAwOyB4MiA9IHkyID0gLTE7IH0KICAgIFFSZWN0KCBjb25zdCBRUG9pbnQgJnRvcGxlZnQsIGNv bnN0IFFQb2ludCAmYm90dG9tcmlnaHQgKTsKICAgIFFSZWN0KCBjb25zdCBRUG9pbnQgJnRvcGxl ZnQsIGNvbnN0IFFTaXplICZzaXplICk7CiAgICBRUmVjdCggaW50IGxlZnQsIGludCB0b3AsIGlu dCB3aWR0aCwgaW50IGhlaWdodCApOwoKICAgIGJvb2wgaXNOdWxsKCkgY29uc3Q7CiAgICBib29s IGlzRW1wdHkoKSBjb25zdDsKICAgIGJvb2wgaXNWYWxpZCgpIGNvbnN0OwogICAgUVJlY3Qgbm9y bWFsaXplKCkgY29uc3Q7CgogICAgaW50IGxlZnQoKSBjb25zdDsKICAgIGludCB0b3AoKSBjb25z dDsKICAgIGludCByaWdodCgpIGNvbnN0OwogICAgaW50IGJvdHRvbSgpIGNvbnN0OwoKICAgIFFD T09SRCAmckxlZnQoKTsKICAgIFFDT09SRCAmclRvcCgpOwogICAgUUNPT1JEICZyUmlnaHQoKTsK ICAgIFFDT09SRCAmckJvdHRvbSgpOwoKICAgIGludCB4KCkgY29uc3Q7CiAgICBpbnQgeSgpIGNv bnN0OwogICAgdm9pZCBzZXRMZWZ0KCBpbnQgcG9zICk7CiAgICB2b2lkIHNldFRvcCggaW50IHBv cyApOwogICAgdm9pZCBzZXRSaWdodCggaW50IHBvcyApOwogICAgdm9pZCBzZXRCb3R0b20oIGlu dCBwb3MgKTsKICAgIHZvaWQgc2V0WCggaW50IHggKTsKICAgIHZvaWQgc2V0WSggaW50IHkgKTsK CiAgICBRUG9pbnQgdG9wTGVmdCgpIGNvbnN0OwogICAgUVBvaW50IGJvdHRvbVJpZ2h0KCkgY29u c3Q7CiAgICBRUG9pbnQgdG9wUmlnaHQoKSBjb25zdDsKICAgIFFQb2ludCBib3R0b21MZWZ0KCkg Y29uc3Q7CiAgICBRUG9pbnQgY2VudGVyKCkgY29uc3Q7CgogICAgdm9pZCByZWN0KCBpbnQgKngs IGludCAqeSwgaW50ICp3LCBpbnQgKmggKSBjb25zdDsKICAgIHZvaWQgY29vcmRzKCBpbnQgKngx LCBpbnQgKnkxLCBpbnQgKngyLCBpbnQgKnkyICkgY29uc3Q7CgogICAgdm9pZCBtb3ZlVG9wTGVm dCggY29uc3QgUVBvaW50ICZwICk7CiAgICB2b2lkIG1vdmVCb3R0b21SaWdodCggY29uc3QgUVBv aW50ICZwICk7CiAgICB2b2lkIG1vdmVUb3BSaWdodCggY29uc3QgUVBvaW50ICZwICk7CiAgICB2 b2lkIG1vdmVCb3R0b21MZWZ0KCBjb25zdCBRUG9pbnQgJnAgKTsKICAgIHZvaWQgbW92ZUNlbnRl ciggY29uc3QgUVBvaW50ICZwICk7CiAgICB2b2lkIG1vdmVCeSggaW50IGR4LCBpbnQgZHkgKTsK CiAgICB2b2lkIHNldFJlY3QoIGludCB4LCBpbnQgeSwgaW50IHcsIGludCBoICk7CiAgICB2b2lk IHNldENvb3JkcyggaW50IHgxLCBpbnQgeTEsIGludCB4MiwgaW50IHkyICk7CgogICAgUVNpemUg c2l6ZSgpIGNvbnN0OwogICAgaW50IHdpZHRoKCkgY29uc3Q7CiAgICBpbnQgaGVpZ2h0KCkgY29u c3Q7CiAgICB2b2lkIHNldFdpZHRoKCBpbnQgdyApOwogICAgdm9pZCBzZXRIZWlnaHQoIGludCBo ICk7CiAgICB2b2lkIHNldFNpemUoIGNvbnN0IFFTaXplICZzICk7CgogICAgUVJlY3Qgb3BlcmF0 b3J8KGNvbnN0IFFSZWN0ICZyKSBjb25zdDsKICAgIFFSZWN0IG9wZXJhdG9yJihjb25zdCBRUmVj dCAmcikgY29uc3Q7CiAgICBRUmVjdCYgb3BlcmF0b3J8PShjb25zdCBRUmVjdCAmcik7CiAgICBR UmVjdCYgb3BlcmF0b3ImPShjb25zdCBRUmVjdCAmcik7CgogICAgYm9vbCBjb250YWlucyggY29u c3QgUVBvaW50ICZwLCBib29sIHByb3Blcj1GQUxTRSApIGNvbnN0OwogICAgYm9vbCBjb250YWlu cyggaW50IHgsIGludCB5LCBib29sIHByb3Blcj1GQUxTRSApIGNvbnN0OwogICAgYm9vbCBjb250 YWlucyggY29uc3QgUVJlY3QgJnIsIGJvb2wgcHJvcGVyPUZBTFNFICkgY29uc3Q7CiAgICBRUmVj dCB1bml0ZSggY29uc3QgUVJlY3QgJnIgKSBjb25zdDsKICAgIFFSZWN0IGludGVyc2VjdCggY29u c3QgUVJlY3QgJnIgKSBjb25zdDsKICAgIGJvb2wgaW50ZXJzZWN0cyggY29uc3QgUVJlY3QgJnIg KSBjb25zdDsKCiAgICBmcmllbmQgYm9vbCBvcGVyYXRvcj09KCBjb25zdCBRUmVjdCAmLCBjb25z dCBRUmVjdCAmICk7CiAgICBmcmllbmQgYm9vbCBvcGVyYXRvciE9KCBjb25zdCBRUmVjdCAmLCBj b25zdCBRUmVjdCAmICk7Cgpwcml2YXRlOgoKCgoKCgogICAgUUNPT1JEIHgxOwogICAgUUNPT1JE IHkxOwogICAgUUNPT1JEIHgyOwogICAgUUNPT1JEIHkyOwoKfTsKCiBib29sIG9wZXJhdG9yPT0o IGNvbnN0IFFSZWN0ICYsIGNvbnN0IFFSZWN0ICYgKTsKIGJvb2wgb3BlcmF0b3IhPSggY29uc3Qg UVJlY3QgJiwgY29uc3QgUVJlY3QgJiApOwoKCgoKCgogUURhdGFTdHJlYW0gJm9wZXJhdG9yPDwo IFFEYXRhU3RyZWFtICYsIGNvbnN0IFFSZWN0ICYgKTsKIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+ KCBRRGF0YVN0cmVhbSAmLCBRUmVjdCAmICk7CgoKCgoKCmlubGluZSBRUmVjdDo6UVJlY3QoIGlu dCBsZWZ0LCBpbnQgdG9wLCBpbnQgd2lkdGgsIGludCBoZWlnaHQgKQp7CiAgICB4MSA9IChRQ09P UkQpbGVmdDsKICAgIHkxID0gKFFDT09SRCl0b3A7CiAgICB4MiA9IChRQ09PUkQpKGxlZnQrd2lk dGgtMSk7CiAgICB5MiA9IChRQ09PUkQpKHRvcCtoZWlnaHQtMSk7Cn0KCmlubGluZSBib29sIFFS ZWN0Ojppc051bGwoKSBjb25zdAp7IHJldHVybiB4MiA9PSB4MS0xICYmIHkyID09IHkxLTE7IH0K CmlubGluZSBib29sIFFSZWN0Ojppc0VtcHR5KCkgY29uc3QKeyByZXR1cm4geDEgPiB4MiB8fCB5 MSA+IHkyOyB9CgppbmxpbmUgYm9vbCBRUmVjdDo6aXNWYWxpZCgpIGNvbnN0CnsgcmV0dXJuIHgx IDw9IHgyICYmIHkxIDw9IHkyOyB9CgppbmxpbmUgaW50IFFSZWN0OjpsZWZ0KCkgY29uc3QKeyBy ZXR1cm4geDE7IH0KCmlubGluZSBpbnQgUVJlY3Q6OnRvcCgpIGNvbnN0CnsgcmV0dXJuIHkxOyB9 CgppbmxpbmUgaW50IFFSZWN0OjpyaWdodCgpIGNvbnN0CnsgcmV0dXJuIHgyOyB9CgppbmxpbmUg aW50IFFSZWN0Ojpib3R0b20oKSBjb25zdAp7IHJldHVybiB5MjsgfQoKaW5saW5lIFFDT09SRCAm UVJlY3Q6OnJMZWZ0KCkKeyByZXR1cm4geDE7IH0KCmlubGluZSBRQ09PUkQgJiBRUmVjdDo6clRv cCgpCnsgcmV0dXJuIHkxOyB9CgppbmxpbmUgUUNPT1JEICYgUVJlY3Q6OnJSaWdodCgpCnsgcmV0 dXJuIHgyOyB9CgppbmxpbmUgUUNPT1JEICYgUVJlY3Q6OnJCb3R0b20oKQp7IHJldHVybiB5Mjsg fQoKaW5saW5lIGludCBRUmVjdDo6eCgpIGNvbnN0CnsgcmV0dXJuIHgxOyB9CgppbmxpbmUgaW50 IFFSZWN0Ojp5KCkgY29uc3QKeyByZXR1cm4geTE7IH0KCmlubGluZSB2b2lkIFFSZWN0OjpzZXRM ZWZ0KCBpbnQgcG9zICkKeyB4MSA9IChRQ09PUkQpcG9zOyB9CgppbmxpbmUgdm9pZCBRUmVjdDo6 c2V0VG9wKCBpbnQgcG9zICkKeyB5MSA9IChRQ09PUkQpcG9zOyB9CgppbmxpbmUgdm9pZCBRUmVj dDo6c2V0UmlnaHQoIGludCBwb3MgKQp7IHgyID0gKFFDT09SRClwb3M7IH0KCmlubGluZSB2b2lk IFFSZWN0OjpzZXRCb3R0b20oIGludCBwb3MgKQp7IHkyID0gKFFDT09SRClwb3M7IH0KCmlubGlu ZSB2b2lkIFFSZWN0OjpzZXRYKCBpbnQgeCApCnsgeDEgPSAoUUNPT1JEKXg7IH0KCmlubGluZSB2 b2lkIFFSZWN0OjpzZXRZKCBpbnQgeSApCnsgeTEgPSAoUUNPT1JEKXk7IH0KCmlubGluZSBRUG9p bnQgUVJlY3Q6OnRvcExlZnQoKSBjb25zdAp7IHJldHVybiBRUG9pbnQoeDEsIHkxKTsgfQoKaW5s aW5lIFFQb2ludCBRUmVjdDo6Ym90dG9tUmlnaHQoKSBjb25zdAp7IHJldHVybiBRUG9pbnQoeDIs IHkyKTsgfQoKaW5saW5lIFFQb2ludCBRUmVjdDo6dG9wUmlnaHQoKSBjb25zdAp7IHJldHVybiBR UG9pbnQoeDIsIHkxKTsgfQoKaW5saW5lIFFQb2ludCBRUmVjdDo6Ym90dG9tTGVmdCgpIGNvbnN0 CnsgcmV0dXJuIFFQb2ludCh4MSwgeTIpOyB9CgppbmxpbmUgUVBvaW50IFFSZWN0OjpjZW50ZXIo KSBjb25zdAp7IHJldHVybiBRUG9pbnQoKHgxK3gyKS8yLCAoeTEreTIpLzIpOyB9CgppbmxpbmUg aW50IFFSZWN0Ojp3aWR0aCgpIGNvbnN0CnsgcmV0dXJuIHgyIC0geDEgKyAxOyB9CgppbmxpbmUg aW50IFFSZWN0OjpoZWlnaHQoKSBjb25zdAp7IHJldHVybiB5MiAtIHkxICsgMTsgfQoKaW5saW5l IFFTaXplIFFSZWN0OjpzaXplKCkgY29uc3QKeyByZXR1cm4gUVNpemUoeDIteDErMSwgeTIteTEr MSk7IH0KCgppbmxpbmUgYm9vbCBRUmVjdDo6Y29udGFpbnMoIGNvbnN0IFFQb2ludCAmcCwgYm9v bCBwcm9wZXIgKSBjb25zdAp7CiAgICBpZiAoIHByb3BlciApCiAgICAgICAgcmV0dXJuIHAueCgp ID4geDEgJiYgcC54KCkgPCB4MiAmJgogICAgICAgICAgICAgICBwLnkoKSA+IHkxICYmIHAueSgp IDwgeTI7CiAgICBlbHNlCiAgICAgICAgcmV0dXJuIHAueCgpID49IHgxICYmIHAueCgpIDw9IHgy ICYmCiAgICAgICAgICAgICAgIHAueSgpID49IHkxICYmIHAueSgpIDw9IHkyOwp9CgoKaW5saW5l IGJvb2wgUVJlY3Q6OmNvbnRhaW5zKCBpbnQgeCwgaW50IHksIGJvb2wgcHJvcGVyICkgY29uc3QK ewogICAgaWYgKCBwcm9wZXIgKQogICAgICAgIHJldHVybiB4ID4geDEgJiYgeCA8IHgyICYmCiAg ICAgICAgICAgICAgIHkgPiB5MSAmJiB5IDwgeTI7CiAgICBlbHNlCiAgICAgICAgcmV0dXJuIHgg Pj0geDEgJiYgeCA8PSB4MiAmJgogICAgICAgICAgICAgICB5ID49IHkxICYmIHkgPD0geTI7Cn0K CiMgMzQgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXJlZ2lvbi5oIiAyIDMKCgoKCmNsYXNz IFFSZWdpb24KewpwdWJsaWM6CiAgICBlbnVtIFJlZ2lvblR5cGUgeyBSZWN0YW5nbGUsIEVsbGlw c2UgfTsKCiAgICBRUmVnaW9uKCk7CiAgICBRUmVnaW9uKCBpbnQgeCwgaW50IHksIGludCB3LCBp bnQgaCwgUmVnaW9uVHlwZSA9IFJlY3RhbmdsZSApOwogICAgUVJlZ2lvbiggY29uc3QgUVJlY3Qg JiwgUmVnaW9uVHlwZSA9IFJlY3RhbmdsZSApOwogICAgUVJlZ2lvbiggY29uc3QgUVBvaW50QXJy YXkgJiwgYm9vbCB3aW5kaW5nPUZBTFNFICk7CiAgICBRUmVnaW9uKCBjb25zdCBRUmVnaW9uICYg KTsKICAgIFFSZWdpb24oIGNvbnN0IFFCaXRtYXAgJiApOwogICB+UVJlZ2lvbigpOwogICAgUVJl Z2lvbiAmb3BlcmF0b3I9KCBjb25zdCBRUmVnaW9uICYgKTsKCiAgICBib29sIGlzTnVsbCgpIGNv bnN0OwogICAgYm9vbCBpc0VtcHR5KCkgY29uc3Q7CgogICAgYm9vbCBjb250YWlucyggY29uc3Qg UVBvaW50ICZwICkgY29uc3Q7CiAgICBib29sIGNvbnRhaW5zKCBjb25zdCBRUmVjdCAmciApIGNv bnN0OwoKICAgIHZvaWQgdHJhbnNsYXRlKCBpbnQgZHgsIGludCBkeSApOwoKICAgIFFSZWdpb24g dW5pdGUoIGNvbnN0IFFSZWdpb24gJiApIGNvbnN0OwogICAgUVJlZ2lvbiBpbnRlcnNlY3QoIGNv bnN0IFFSZWdpb24gJikgY29uc3Q7CiAgICBRUmVnaW9uIHN1YnRyYWN0KCBjb25zdCBRUmVnaW9u ICYgKSBjb25zdDsKICAgIFFSZWdpb24gZW9yKCBjb25zdCBRUmVnaW9uICYgKSBjb25zdDsKCiAg ICBRUmVjdCBib3VuZGluZ1JlY3QoKSBjb25zdDsKICAgIFFBcnJheTxRUmVjdD4gcmVjdHMoKSBj b25zdDsKICAgIHZvaWQgc2V0UmVjdHMoIGNvbnN0IFFSZWN0ICosIGludCApOwoKICAgIFFSZWdp b24gb3BlcmF0b3J8KCBjb25zdCBRUmVnaW9uICYgKSBjb25zdDsKICAgIFFSZWdpb24gb3BlcmF0 b3IrKCBjb25zdCBRUmVnaW9uICYgKSBjb25zdDsKICAgIFFSZWdpb24gb3BlcmF0b3ImKCBjb25z dCBRUmVnaW9uICYgKSBjb25zdDsKICAgIFFSZWdpb24gb3BlcmF0b3ItKCBjb25zdCBRUmVnaW9u ICYgKSBjb25zdDsKICAgIFFSZWdpb24gb3BlcmF0b3JeKCBjb25zdCBRUmVnaW9uICYgKSBjb25z dDsKICAgIFFSZWdpb24mIG9wZXJhdG9yfD0oIGNvbnN0IFFSZWdpb24gJiApOwogICAgUVJlZ2lv biYgb3BlcmF0b3IrPSggY29uc3QgUVJlZ2lvbiAmICk7CiAgICBRUmVnaW9uJiBvcGVyYXRvciY9 KCBjb25zdCBRUmVnaW9uICYgKTsKICAgIFFSZWdpb24mIG9wZXJhdG9yLT0oIGNvbnN0IFFSZWdp b24gJiApOwogICAgUVJlZ2lvbiYgb3BlcmF0b3JePSggY29uc3QgUVJlZ2lvbiAmICk7CgogICAg Ym9vbCBvcGVyYXRvcj09KCBjb25zdCBRUmVnaW9uICYgKSBjb25zdDsKICAgIGJvb2wgb3BlcmF0 b3IhPSggY29uc3QgUVJlZ2lvbiAmciApIGNvbnN0CiAgICAgICAgICAgICAgICAgICAgICAgIHsg cmV0dXJuICEob3BlcmF0b3I9PShyKSk7IH0KCgoKCiAgICBSZWdpb24gaGFuZGxlKCkgY29uc3Qg eyByZXR1cm4gZGF0YS0+cmduOyB9CiMgOTYgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXJl Z2lvbi5oIiAzCiAgICBmcmllbmQgUURhdGFTdHJlYW0gJm9wZXJhdG9yPDwoIFFEYXRhU3RyZWFt ICYsIGNvbnN0IFFSZWdpb24gJiApOwogICAgZnJpZW5kIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+ KCBRRGF0YVN0cmVhbSAmLCBRUmVnaW9uICYgKTsKCnByaXZhdGU6CiAgICBRUmVnaW9uKCBib29s ICk7CiAgICBRUmVnaW9uIGNvcHkoKSBjb25zdDsKICAgIHZvaWQgZGV0YWNoKCk7CgoKCiAgICB2 b2lkIGV4ZWMoIGNvbnN0IFFCeXRlQXJyYXkgJiwgaW50IHZlciA9IDAgKTsKICAgIHN0cnVjdCBR UmVnaW9uRGF0YSA6IHB1YmxpYyBRU2hhcmVkIHsKCgoKICAgICAgICBSZWdpb24gcmduOwoKCgoK CiAgICAgICAgYm9vbCBpc19udWxsOwogICAgfSAqZGF0YTsKfTsKCgojIDEzOSAiL3Vzci9saWIv cXQtMi4yLjAvaW5jbHVkZS9xcmVnaW9uLmgiIDMKIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBR RGF0YVN0cmVhbSAmLCBjb25zdCBRUmVnaW9uICYgKTsKIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+ KCBRRGF0YVN0cmVhbSAmLCBRUmVnaW9uICYgKTsKIyAzNCAiL3Vzci9saWIvcXQtMi4yLjAvaW5j bHVkZS9xZXZlbnQuaCIgMiAzCgoKIyAzNyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xbWlt ZS5oIiAxIDMKY2xhc3MgUU1pbWVTb3VyY2UgewpwdWJsaWM6CiAgICB2aXJ0dWFsIH5RTWltZVNv dXJjZSgpOwogICAgdmlydHVhbCBjb25zdCBjaGFyKiBmb3JtYXQoIGludCBuID0gMCApIGNvbnN0 ID0gMDsKICAgIHZpcnR1YWwgYm9vbCBwcm92aWRlcyggY29uc3QgY2hhciogKSBjb25zdDsKICAg IHZpcnR1YWwgUUJ5dGVBcnJheSBlbmNvZGVkRGF0YSggY29uc3QgY2hhciogKSBjb25zdCA9IDA7 Cn07CgpjbGFzcyBRTWltZVNvdXJjZUZhY3RvcnlEYXRhOwpjbGFzcyBRU3RyaW5nTGlzdDsKCmNs YXNzIFFNaW1lU291cmNlRmFjdG9yeSB7CnB1YmxpYzoKICAgIFFNaW1lU291cmNlRmFjdG9yeSgp OwogICAgdmlydHVhbCB+UU1pbWVTb3VyY2VGYWN0b3J5KCk7CgogICAgc3RhdGljIFFNaW1lU291 cmNlRmFjdG9yeSogZGVmYXVsdEZhY3RvcnkoKTsKICAgIHN0YXRpYyB2b2lkIHNldERlZmF1bHRG YWN0b3J5KCBRTWltZVNvdXJjZUZhY3RvcnkqICk7CgogICAgdmlydHVhbCBjb25zdCBRTWltZVNv dXJjZSogZGF0YShjb25zdCBRU3RyaW5nJiBhYnNfbmFtZSkgY29uc3Q7CiAgICB2aXJ0dWFsIFFT dHJpbmcgbWFrZUFic29sdXRlKGNvbnN0IFFTdHJpbmcmIGFic19vcl9yZWxfbmFtZSwgY29uc3Qg UVN0cmluZyYgY29udGV4dCkgY29uc3Q7CiAgICBjb25zdCBRTWltZVNvdXJjZSogZGF0YShjb25z dCBRU3RyaW5nJiBhYnNfb3JfcmVsX25hbWUsIGNvbnN0IFFTdHJpbmcmIGNvbnRleHQpIGNvbnN0 OwoKICAgIHZpcnR1YWwgdm9pZCBzZXRUZXh0KCBjb25zdCBRU3RyaW5nJiBhYnNfbmFtZSwgY29u c3QgUVN0cmluZyYgdGV4dCApOwogICAgdmlydHVhbCB2b2lkIHNldEltYWdlKCBjb25zdCBRU3Ry aW5nJiBhYnNfbmFtZSwgY29uc3QgUUltYWdlJiBpbSApOwogICAgdmlydHVhbCB2b2lkIHNldFBp eG1hcCggY29uc3QgUVN0cmluZyYgYWJzX25hbWUsIGNvbnN0IFFQaXhtYXAmIHBtICk7CiAgICB2 aXJ0dWFsIHZvaWQgc2V0RGF0YSggY29uc3QgUVN0cmluZyYgYWJzX25hbWUsIFFNaW1lU291cmNl KiBkYXRhICk7CiAgICB2aXJ0dWFsIHZvaWQgc2V0RmlsZVBhdGgoIGNvbnN0IFFTdHJpbmdMaXN0 JiApOwogICAgdmlydHVhbCBRU3RyaW5nTGlzdCBmaWxlUGF0aCgpIGNvbnN0OwogICAgdm9pZCBh ZGRGaWxlUGF0aCggY29uc3QgUVN0cmluZyYgKTsKICAgIHZpcnR1YWwgdm9pZCBzZXRFeHRlbnNp b25UeXBlKCBjb25zdCBRU3RyaW5nJiBleHQsIGNvbnN0IGNoYXIqIG1pbWV0eXBlICk7Cgpwcml2 YXRlOgogICAgUU1pbWVTb3VyY2VGYWN0b3J5RGF0YSogZDsKfTsKCiMgMzYgIi91c3IvbGliL3F0 LTIuMi4wL2luY2x1ZGUvcWV2ZW50LmgiIDIgMwoKCgpjbGFzcyBRRXZlbnQ6IHB1YmxpYyBRdAp7 CnB1YmxpYzoKICAgIGVudW0gVHlwZSB7CgoKCgoKCiAgICAgICAgTm9uZSA9IDAsCgoKICAgICAg ICBUaW1lciA9IDEsCiAgICAgICAgTW91c2VCdXR0b25QcmVzcyA9IDIsCiAgICAgICAgTW91c2VC dXR0b25SZWxlYXNlID0gMywKICAgICAgICBNb3VzZUJ1dHRvbkRibENsaWNrPSA0LAogICAgICAg IE1vdXNlTW92ZSA9IDUsCiAgICAgICAgS2V5UHJlc3MgPSA2LAogICAgICAgIEtleVJlbGVhc2Ug PSA3LAogICAgICAgIEZvY3VzSW4gPSA4LAogICAgICAgIEZvY3VzT3V0ID0gOSwKICAgICAgICBF bnRlciA9IDEwLAogICAgICAgIExlYXZlID0gMTEsCiAgICAgICAgUGFpbnQgPSAxMiwKICAgICAg ICBNb3ZlID0gMTMsCiAgICAgICAgUmVzaXplID0gMTQsCiAgICAgICAgQ3JlYXRlID0gMTUsCiAg ICAgICAgRGVzdHJveSA9IDE2LAogICAgICAgIFNob3cgPSAxNywKICAgICAgICBIaWRlID0gMTgs CiAgICAgICAgQ2xvc2UgPSAxOSwKICAgICAgICBRdWl0ID0gMjAsCiAgICAgICAgUmVwYXJlbnQg PSAyMSwKICAgICAgICBTaG93TWluaW1pemVkID0gMjIsCiAgICAgICAgU2hvd05vcm1hbCA9IDIz LAogICAgICAgIFdpbmRvd0FjdGl2YXRlID0gMjQsCiAgICAgICAgV2luZG93RGVhY3RpdmF0ZSA9 IDI1LAogICAgICAgIFNob3dUb1BhcmVudCA9IDI2LAogICAgICAgIEhpZGVUb1BhcmVudCA9IDI3 LAogICAgICAgIFNob3dNYXhpbWl6ZWQgPSAyOCwKICAgICAgICBBY2NlbCA9IDMwLAogICAgICAg IFdoZWVsID0gMzEsCiAgICAgICAgQWNjZWxBdmFpbGFibGUgPSAzMiwKICAgICAgICBDYXB0aW9u Q2hhbmdlID0gMzMsCiAgICAgICAgSWNvbkNoYW5nZSA9IDM0LAogICAgICAgIFBhcmVudEZvbnRD aGFuZ2UgPSAzNSwKICAgICAgICBBcHBsaWNhdGlvbkZvbnRDaGFuZ2UgPSAzNiwKICAgICAgICBQ YXJlbnRQYWxldHRlQ2hhbmdlID0gMzcsCiAgICAgICAgQXBwbGljYXRpb25QYWxldHRlQ2hhbmdl ID0gMzgsCiAgICAgICAgQ2xpcGJvYXJkID0gNDAsCiAgICAgICAgU3BlZWNoID0gNDIsCiAgICAg ICAgU29ja0FjdCA9IDUwLAogICAgICAgIERyYWdFbnRlciA9IDYwLAogICAgICAgIERyYWdNb3Zl ID0gNjEsCiAgICAgICAgRHJhZ0xlYXZlID0gNjIsCiAgICAgICAgRHJvcCA9IDYzLAogICAgICAg IERyYWdSZXNwb25zZSA9IDY0LAogICAgICAgIENoaWxkSW5zZXJ0ZWQgPSA3MCwKICAgICAgICBD aGlsZFJlbW92ZWQgPSA3MSwKICAgICAgICBMYXlvdXRIaW50ID0gNzIsCiAgICAgICAgU2hvd1dp bmRvd1JlcXVlc3QgPSA3MywKICAgICAgICBBY3RpdmF0ZUNvbnRyb2wgPSA4MCwKICAgICAgICBE ZWFjdGl2YXRlQ29udHJvbCA9IDgxLAogICAgICAgIFVzZXIgPSAxMDAwCiAgICB9OwoKICAgIFFF dmVudCggVHlwZSB0eXBlICkgOiB0KHR5cGUpLCBwb3N0ZWQoRkFMU0UpIHt9CiAgICB2aXJ0dWFs IH5RRXZlbnQoKTsKICAgIFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIHQ7IH0KcHJvdGVjdGVk OgogICAgVHlwZSB0Owpwcml2YXRlOgogICAgYm9vbCBwb3N0ZWQ7CgoKCgogICAgZnJpZW5kIGNs YXNzIFFBcHBsaWNhdGlvbjsKICAgIGZyaWVuZCBjbGFzcyBRQmFzZUFwcGxpY2F0aW9uOwp9OwoK CmNsYXNzIFFUaW1lckV2ZW50IDogcHVibGljIFFFdmVudAp7CnB1YmxpYzoKICAgIFFUaW1lckV2 ZW50KCBpbnQgdGltZXJJZCApCiAgICAgICAgOiBRRXZlbnQoVGltZXIpLCBpZCh0aW1lcklkKSB7 fQogICAgaW50IHRpbWVySWQoKSBjb25zdCB7IHJldHVybiBpZDsgfQpwcm90ZWN0ZWQ6CiAgICBp bnQgaWQ7Cn07CgoKY2xhc3MgUU1vdXNlRXZlbnQgOiBwdWJsaWMgUUV2ZW50CnsKcHVibGljOgog ICAgUU1vdXNlRXZlbnQoIFR5cGUgdHlwZSwgY29uc3QgUVBvaW50ICZwb3MsIGludCBidXR0b24s IGludCBzdGF0ZSApOwoKICAgIFFNb3VzZUV2ZW50KCBUeXBlIHR5cGUsIGNvbnN0IFFQb2ludCAm cG9zLCBjb25zdCBRUG9pbnQmZ2xvYmFsUG9zLAogICAgICAgICAgICAgICAgIGludCBidXR0b24s IGludCBzdGF0ZSApCiAgICAgICAgOiBRRXZlbnQodHlwZSksIHAocG9zKSwgZyhnbG9iYWxQb3Mp LCBiKGJ1dHRvbikscygodXNob3J0KXN0YXRlKSB7fTsKCiAgICBjb25zdCBRUG9pbnQgJnBvcygp IGNvbnN0IHsgcmV0dXJuIHA7IH0KICAgIGNvbnN0IFFQb2ludCAmZ2xvYmFsUG9zKCkgY29uc3Qg eyByZXR1cm4gZzsgfQogICAgaW50IHgoKSBjb25zdCB7IHJldHVybiBwLngoKTsgfQogICAgaW50 IHkoKSBjb25zdCB7IHJldHVybiBwLnkoKTsgfQogICAgaW50IGdsb2JhbFgoKSBjb25zdCB7IHJl dHVybiBnLngoKTsgfQogICAgaW50IGdsb2JhbFkoKSBjb25zdCB7IHJldHVybiBnLnkoKTsgfQog ICAgQnV0dG9uU3RhdGUgYnV0dG9uKCkgY29uc3QgeyByZXR1cm4gKEJ1dHRvblN0YXRlKSBiOyB9 CiAgICBCdXR0b25TdGF0ZSBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIChCdXR0b25TdGF0ZSkgczsg fQogICAgQnV0dG9uU3RhdGUgc3RhdGVBZnRlcigpIGNvbnN0Owpwcm90ZWN0ZWQ6CiAgICBRUG9p bnQgcDsKICAgIFFQb2ludCBnOwogICAgaW50IGI7CiAgICB1c2hvcnQgczsKfTsKCgoKY2xhc3Mg UVdoZWVsRXZlbnQgOiBwdWJsaWMgUUV2ZW50CnsKcHVibGljOgogICAgUVdoZWVsRXZlbnQoIGNv bnN0IFFQb2ludCAmcG9zLCBpbnQgZGVsdGEsIGludCBzdGF0ZSApOwogICAgUVdoZWVsRXZlbnQo IGNvbnN0IFFQb2ludCAmcG9zLCBjb25zdCBRUG9pbnQmIGdsb2JhbFBvcywgaW50IGRlbHRhLCBp bnQgc3RhdGUgKQogICAgICAgIDogUUV2ZW50KFdoZWVsKSwgcChwb3MpLCBnKGdsb2JhbFBvcyks IGQoZGVsdGEpLCBzKCh1c2hvcnQpc3RhdGUpLAogICAgICAgICAgYWNjcHQoVFJVRSkge30KICAg IGludCBkZWx0YSgpIGNvbnN0IHsgcmV0dXJuIGQ7IH0KICAgIGNvbnN0IFFQb2ludCAmcG9zKCkg Y29uc3QgeyByZXR1cm4gcDsgfQogICAgY29uc3QgUVBvaW50ICZnbG9iYWxQb3MoKSBjb25zdCB7 IHJldHVybiBnOyB9CiAgICBpbnQgeCgpIGNvbnN0IHsgcmV0dXJuIHAueCgpOyB9CiAgICBpbnQg eSgpIGNvbnN0IHsgcmV0dXJuIHAueSgpOyB9CiAgICBpbnQgZ2xvYmFsWCgpIGNvbnN0IHsgcmV0 dXJuIGcueCgpOyB9CiAgICBpbnQgZ2xvYmFsWSgpIGNvbnN0IHsgcmV0dXJuIGcueSgpOyB9CiAg ICBCdXR0b25TdGF0ZSBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIEJ1dHRvblN0YXRlKHMpOyB9CiAg ICBib29sIGlzQWNjZXB0ZWQoKSBjb25zdCB7IHJldHVybiBhY2NwdDsgfQogICAgdm9pZCBhY2Nl cHQoKSB7IGFjY3B0ID0gVFJVRTsgfQogICAgdm9pZCBpZ25vcmUoKSB7IGFjY3B0ID0gRkFMU0U7 IH0KcHJvdGVjdGVkOgogICAgUVBvaW50IHA7CiAgICBRUG9pbnQgZzsKICAgIGludCBkOwogICAg dXNob3J0IHM7CiAgICBib29sIGFjY3B0Owp9OwoKCmNsYXNzIFFLZXlFdmVudCA6IHB1YmxpYyBR RXZlbnQKewpwdWJsaWM6CiAgICBRS2V5RXZlbnQoIFR5cGUgdHlwZSwgaW50IGtleSwgaW50IGFz Y2lpLCBpbnQgc3RhdGUsCiAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nJiB0ZXh0PVFTdHJp bmc6Om51bGwsIGJvb2wgYXV0b3JlcD1GQUxTRSwgdXNob3J0IGNvdW50PTEgKQogICAgICAgIDog UUV2ZW50KHR5cGUpLCB0eHQodGV4dCksIGsoKHVzaG9ydClrZXkpLCBzKCh1c2hvcnQpc3RhdGUp LAogICAgICAgICAgICBhKCh1Y2hhcilhc2NpaSksIGFjY3B0KFRSVUUpLCBhdXRvcihhdXRvcmVw KSwgYyhjb3VudCkge30KICAgIGludCBrZXkoKSBjb25zdCB7IHJldHVybiBrOyB9CiAgICBpbnQg YXNjaWkoKSBjb25zdCB7IHJldHVybiBhOyB9CiAgICBCdXR0b25TdGF0ZSBzdGF0ZSgpIGNvbnN0 IHsgcmV0dXJuIEJ1dHRvblN0YXRlKHMpOyB9CiAgICBCdXR0b25TdGF0ZSBzdGF0ZUFmdGVyKCkg Y29uc3Q7CiAgICBib29sIGlzQWNjZXB0ZWQoKSBjb25zdCB7IHJldHVybiBhY2NwdDsgfQogICAg UVN0cmluZyB0ZXh0KCkgY29uc3QgeyByZXR1cm4gdHh0OyB9CiAgICBib29sIGlzQXV0b1JlcGVh dCgpIGNvbnN0IHsgcmV0dXJuIGF1dG9yOyB9CiAgICBpbnQgY291bnQoKSBjb25zdCB7IHJldHVy biBpbnQoYyk7IH0KICAgIHZvaWQgYWNjZXB0KCkgeyBhY2NwdCA9IFRSVUU7IH0KICAgIHZvaWQg aWdub3JlKCkgeyBhY2NwdCA9IEZBTFNFOyB9Cgpwcm90ZWN0ZWQ6CiAgICBRU3RyaW5nIHR4dDsK ICAgIHVzaG9ydCBrLCBzOwogICAgdWNoYXIgYTsKICAgIHVpbnQgYWNjcHQ6MTsKICAgIHVpbnQg YXV0b3I6MTsKICAgIHVzaG9ydCBjOwp9OwoKCmNsYXNzIFFGb2N1c0V2ZW50IDogcHVibGljIFFF dmVudAp7CnB1YmxpYzoKCiAgICBRRm9jdXNFdmVudCggVHlwZSB0eXBlICkKICAgICAgICA6IFFF dmVudCh0eXBlKSB7fQoKICAgIGJvb2wgZ290Rm9jdXMoKSBjb25zdCB7IHJldHVybiB0eXBlKCkg PT0gRm9jdXNJbjsgfQogICAgYm9vbCBsb3N0Rm9jdXMoKSBjb25zdCB7IHJldHVybiB0eXBlKCkg PT0gRm9jdXNPdXQ7IH0KCiAgICBlbnVtIFJlYXNvbiB7IE1vdXNlLCBUYWIsIEFjdGl2ZVdpbmRv dywgUG9wdXAsIFNob3J0Y3V0LCBPdGhlciB9OwogICAgc3RhdGljIFJlYXNvbiByZWFzb24oKTsK ICAgIHN0YXRpYyB2b2lkIHNldFJlYXNvbiggUmVhc29uIHJlYXNvbiApOwogICAgc3RhdGljIHZv aWQgcmVzZXRSZWFzb24oKTsKCnByaXZhdGU6CiAgICBzdGF0aWMgUmVhc29uIG1fcmVhc29uOwog ICAgc3RhdGljIFJlYXNvbiBwcmV2X3JlYXNvbjsKfTsKCgpjbGFzcyBRUGFpbnRFdmVudCA6IHB1 YmxpYyBRRXZlbnQKewpwdWJsaWM6CiAgICBRUGFpbnRFdmVudCggY29uc3QgUVJlZ2lvbiYgcGFp bnRSZWdpb24sIGJvb2wgZXJhc2VkID0gVFJVRSkKICAgICAgICA6IFFFdmVudChQYWludCksCiAg ICAgICAgICByZWMocGFpbnRSZWdpb24uYm91bmRpbmdSZWN0KCkpLAogICAgICAgICAgcmVnKHBh aW50UmVnaW9uKSwKICAgICAgICAgIGVyYXNlKGVyYXNlZCl7fQogICAgUVBhaW50RXZlbnQoIGNv bnN0IFFSZWN0ICZwYWludFJlY3QsIGJvb2wgZXJhc2VkID0gVFJVRSApCiAgICAgICAgOiBRRXZl bnQoUGFpbnQpLAogICAgICAgICAgcmVjKHBhaW50UmVjdCksCiAgICAgICAgICByZWcocGFpbnRS ZWN0KSwKICAgICAgICAgIGVyYXNlKGVyYXNlZCl7fQogICAgY29uc3QgUVJlY3QgJnJlY3QoKSBj b25zdCB7IHJldHVybiByZWM7IH0KICAgIGNvbnN0IFFSZWdpb24gJnJlZ2lvbigpIGNvbnN0IHsg cmV0dXJuIHJlZzsgfQogICAgYm9vbCBlcmFzZWQoKSBjb25zdCB7IHJldHVybiBlcmFzZTsgfQpw cm90ZWN0ZWQ6CiAgICBmcmllbmQgY2xhc3MgUUFwcGxpY2F0aW9uOwogICAgZnJpZW5kIGNsYXNz IFFCYXNlQXBwbGljYXRpb247CiAgICBRUmVjdCByZWM7CiAgICBRUmVnaW9uIHJlZzsKICAgIGJv b2wgZXJhc2U7Cn07CgoKY2xhc3MgUU1vdmVFdmVudCA6IHB1YmxpYyBRRXZlbnQKewpwdWJsaWM6 CiAgICBRTW92ZUV2ZW50KCBjb25zdCBRUG9pbnQgJnBvcywgY29uc3QgUVBvaW50ICZvbGRQb3Mg KQogICAgICAgIDogUUV2ZW50KE1vdmUpLCBwKHBvcyksIG9sZHAob2xkUG9zKSB7fQogICAgY29u c3QgUVBvaW50ICZwb3MoKSBjb25zdCB7IHJldHVybiBwOyB9CiAgICBjb25zdCBRUG9pbnQgJm9s ZFBvcygpY29uc3QgeyByZXR1cm4gb2xkcDt9CnByb3RlY3RlZDoKICAgIFFQb2ludCBwLCBvbGRw OwogICAgZnJpZW5kIGNsYXNzIFFBcHBsaWNhdGlvbjsKICAgIGZyaWVuZCBjbGFzcyBRQmFzZUFw cGxpY2F0aW9uOwp9OwoKCmNsYXNzIFFSZXNpemVFdmVudCA6IHB1YmxpYyBRRXZlbnQKewpwdWJs aWM6CiAgICBRUmVzaXplRXZlbnQoIGNvbnN0IFFTaXplICZzaXplLCBjb25zdCBRU2l6ZSAmb2xk U2l6ZSApCiAgICAgICAgOiBRRXZlbnQoUmVzaXplKSwgcyhzaXplKSwgb2xkcyhvbGRTaXplKSB7 fQogICAgY29uc3QgUVNpemUgJnNpemUoKSBjb25zdCB7IHJldHVybiBzOyB9CiAgICBjb25zdCBR U2l6ZSAmb2xkU2l6ZSgpY29uc3QgeyByZXR1cm4gb2xkczt9CnByb3RlY3RlZDoKICAgIFFTaXpl IHMsIG9sZHM7CiAgICBmcmllbmQgY2xhc3MgUUFwcGxpY2F0aW9uOwogICAgZnJpZW5kIGNsYXNz IFFCYXNlQXBwbGljYXRpb247Cn07CgoKY2xhc3MgUUNsb3NlRXZlbnQgOiBwdWJsaWMgUUV2ZW50 CnsKcHVibGljOgogICAgUUNsb3NlRXZlbnQoKQogICAgICAgIDogUUV2ZW50KENsb3NlKSwgYWNj cHQoRkFMU0UpIHt9CiAgICBib29sIGlzQWNjZXB0ZWQoKSBjb25zdCB7IHJldHVybiBhY2NwdDsg fQogICAgdm9pZCBhY2NlcHQoKSB7IGFjY3B0ID0gVFJVRTsgfQogICAgdm9pZCBpZ25vcmUoKSB7 IGFjY3B0ID0gRkFMU0U7IH0KcHJvdGVjdGVkOgogICAgYm9vbCBhY2NwdDsKfTsKCgpjbGFzcyBR U2hvd0V2ZW50IDogcHVibGljIFFFdmVudAp7CnB1YmxpYzoKICAgIFFTaG93RXZlbnQoYm9vbCBz cG9udGFuZW91cykKICAgICAgICA6IFFFdmVudChTaG93KSwgc3BvbnQoc3BvbnRhbmVvdXMpIHt9 CiAgICBib29sIHNwb250YW5lb3VzKCkgY29uc3QgeyByZXR1cm4gc3BvbnQ7IH0KcHJvdGVjdGVk OgogICAgYm9vbCBzcG9udDsKfTsKCgpjbGFzcyBRSGlkZUV2ZW50IDogcHVibGljIFFFdmVudAp7 CnB1YmxpYzoKICAgIFFIaWRlRXZlbnQoYm9vbCBzcG9udGFuZW91cykKICAgICAgICA6IFFFdmVu dChIaWRlKSwgc3BvbnQoc3BvbnRhbmVvdXMpIHt9CiAgICBib29sIHNwb250YW5lb3VzKCkgY29u c3QgeyByZXR1cm4gc3BvbnQ7IH0KcHJvdGVjdGVkOgogICAgYm9vbCBzcG9udDsKfTsKCgoKCgoK CmNsYXNzIFFEcm9wRXZlbnQgOiBwdWJsaWMgUUV2ZW50LCBwdWJsaWMgUU1pbWVTb3VyY2UKewpw dWJsaWM6CiAgICBRRHJvcEV2ZW50KCBjb25zdCBRUG9pbnQmIHBvcywgVHlwZSB0eXA9RHJvcCAp CiAgICAgICAgOiBRRXZlbnQodHlwKSwgcChwb3MpLAogICAgICAgICAgYWN0KDApLCBhY2NwdCgw KSwgYWNjcHRhY3QoMCksIHJlc3YoMCksCiAgICAgICAgICBkKDApCiAgICAgICAge30KICAgIGNv bnN0IFFQb2ludCAmcG9zKCkgY29uc3QgeyByZXR1cm4gcDsgfQogICAgYm9vbCBpc0FjY2VwdGVk KCkgY29uc3QgeyByZXR1cm4gYWNjcHQgfHwgYWNjcHRhY3Q7IH0KICAgIHZvaWQgYWNjZXB0KGJv b2wgeT1UUlVFKSB7IGFjY3B0ID0geTsgfQogICAgdm9pZCBpZ25vcmUoKSB7IGFjY3B0ID0gRkFM U0U7IH0KCiAgICBib29sIGlzQWN0aW9uQWNjZXB0ZWQoKSBjb25zdCB7IHJldHVybiBhY2NwdGFj dDsgfQogICAgdm9pZCBhY2NlcHRBY3Rpb24oYm9vbCB5PVRSVUUpIHsgYWNjcHRhY3QgPSB5OyB9 CiAgICBlbnVtIEFjdGlvbiB7IENvcHksIExpbmssIE1vdmUsIFByaXZhdGUsIFVzZXJBY3Rpb249 MTAwIH07CiAgICB2b2lkIHNldEFjdGlvbiggQWN0aW9uIGEgKSB7IGFjdCA9ICh1aW50KWE7IH0K ICAgIEFjdGlvbiBhY3Rpb24oKSBjb25zdCB7IHJldHVybiBBY3Rpb24oYWN0KTsgfQoKICAgIFFX aWRnZXQqIHNvdXJjZSgpIGNvbnN0OwogICAgY29uc3QgY2hhciogZm9ybWF0KCBpbnQgbiA9IDAg KSBjb25zdDsKICAgIFFCeXRlQXJyYXkgZW5jb2RlZERhdGEoIGNvbnN0IGNoYXIqICkgY29uc3Q7 CiAgICBib29sIHByb3ZpZGVzKCBjb25zdCBjaGFyKiApIGNvbnN0OwoKICAgIFFCeXRlQXJyYXkg ZGF0YShjb25zdCBjaGFyKiBmKSBjb25zdCB7IHJldHVybiBlbmNvZGVkRGF0YShmKTsgfQoKICAg IHZvaWQgc2V0UG9pbnQoIGNvbnN0IFFQb2ludCYgbnAgKSB7IHAgPSBucDsgfQoKcHJvdGVjdGVk OgogICAgUVBvaW50IHA7CiAgICB1aW50IGFjdDo4OwogICAgdWludCBhY2NwdDoxOwogICAgdWlu dCBhY2NwdGFjdDoxOwogICAgdWludCByZXN2OjU7CiAgICB2b2lkICogZDsKfTsKCgoKY2xhc3Mg UURyYWdNb3ZlRXZlbnQgOiBwdWJsaWMgUURyb3BFdmVudAp7CnB1YmxpYzoKICAgIFFEcmFnTW92 ZUV2ZW50KCBjb25zdCBRUG9pbnQmIHBvcywgVHlwZSB0eXA9RHJhZ01vdmUgKQogICAgICAgIDog UURyb3BFdmVudChwb3MsdHlwKSwKICAgICAgICAgIHJlY3QoIHBvcywgUVNpemUoIDEsIDEgKSAp IHt9CiAgICBRUmVjdCBhbnN3ZXJSZWN0KCkgY29uc3QgeyByZXR1cm4gcmVjdDsgfQogICAgdm9p ZCBhY2NlcHQoIGJvb2wgeT1UUlVFICkgeyBRRHJvcEV2ZW50OjphY2NlcHQoeSk7IH0KICAgIHZv aWQgYWNjZXB0KCBjb25zdCBRUmVjdCAmIHIpIHsgYWNjcHQgPSBUUlVFOyByZWN0ID0gcjsgfQog ICAgdm9pZCBpZ25vcmUoIGNvbnN0IFFSZWN0ICYgcikgeyBhY2NwdCA9RkFMU0U7IHJlY3QgPSBy OyB9CiAgICB2b2lkIGlnbm9yZSgpIHsgUURyb3BFdmVudDo6aWdub3JlKCk7IH0KCnByb3RlY3Rl ZDoKICAgIFFSZWN0IHJlY3Q7Cn07CgoKY2xhc3MgUURyYWdFbnRlckV2ZW50IDogcHVibGljIFFE cmFnTW92ZUV2ZW50CnsKcHVibGljOgogICAgUURyYWdFbnRlckV2ZW50KCBjb25zdCBRUG9pbnQm IHBvcyApIDoKICAgICAgICBRRHJhZ01vdmVFdmVudChwb3MsIERyYWdFbnRlcikgeyB9Cn07CgoK CmNsYXNzIFFEcmFnUmVzcG9uc2VFdmVudCA6IHB1YmxpYyBRRXZlbnQKewpwdWJsaWM6CiAgICBR RHJhZ1Jlc3BvbnNlRXZlbnQoIGJvb2wgYWNjZXB0ZWQgKQogICAgICAgIDogUUV2ZW50KERyYWdS ZXNwb25zZSksIGEoYWNjZXB0ZWQpIHt9CiAgICBib29sIGRyYWdBY2NlcHRlZCgpIGNvbnN0IHsg cmV0dXJuIGE7IH0KcHJvdGVjdGVkOgogICAgYm9vbCBhOwp9OwoKCmNsYXNzIFFEcmFnTGVhdmVF dmVudCA6IHB1YmxpYyBRRXZlbnQKewpwdWJsaWM6CiAgICBRRHJhZ0xlYXZlRXZlbnQoKQogICAg ICAgIDogUUV2ZW50KERyYWdMZWF2ZSkge30KfTsKCgoKY2xhc3MgUUNoaWxkRXZlbnQgOiBwdWJs aWMgUUV2ZW50CnsKcHVibGljOgogICAgUUNoaWxkRXZlbnQoIFR5cGUgdHlwZSwgUU9iamVjdCAq Y2hpbGQgKQogICAgICAgIDogUUV2ZW50KHR5cGUpLCBjKGNoaWxkKSB7fQogICAgUU9iamVjdCAq Y2hpbGQoKSBjb25zdCB7IHJldHVybiBjOyB9CiAgICBib29sIGluc2VydGVkKCkgY29uc3QgeyBy ZXR1cm4gdCA9PSBDaGlsZEluc2VydGVkOyB9CiAgICBib29sIHJlbW92ZWQoKSBjb25zdCB7IHJl dHVybiB0ID09IENoaWxkUmVtb3ZlZDsgfQpwcm90ZWN0ZWQ6CiAgICBRT2JqZWN0ICpjOwp9OwoK CmNsYXNzIFFDdXN0b21FdmVudCA6IHB1YmxpYyBRRXZlbnQKewpwdWJsaWM6CiAgICBRQ3VzdG9t RXZlbnQoIGludCB0eXBlICk7CiAgICBRQ3VzdG9tRXZlbnQoIFR5cGUgdHlwZSwgdm9pZCAqZGF0 YSApCiAgICAgICAgOiBRRXZlbnQodHlwZSksIGQoZGF0YSkge307CiAgICB2b2lkICpkYXRhKCkg Y29uc3QgeyByZXR1cm4gZDsgfQogICAgdm9pZCBzZXREYXRhKCB2b2lkKiBkYXRhICkgeyBkID0g ZGF0YTsgfQpwcml2YXRlOgogICAgdm9pZCAqZDsKfTsKCiMgMzYgIi91c3IvbGliL3F0LTIuMi4w L2luY2x1ZGUvcW9iamVjdC5oIiAyIDMKCgojIDMzICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRl L3FzdHJpbmdsaXN0LmgiIDEgMwojIDM0ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3F2YWx1 ZWxpc3QuaCIgMSAzCiMgMzMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWRhdGFzdHJlYW0u aCIgMSAzCiMgNzggIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWlvZGV2aWNlLmgiIDEgMwpj bGFzcyBRSU9EZXZpY2UKewpwdWJsaWM6CiAgICBRSU9EZXZpY2UoKTsKICAgIHZpcnR1YWwgflFJ T0RldmljZSgpOwoKICAgIGludCBmbGFncygpIGNvbnN0IHsgcmV0dXJuIGlvTW9kZTsgfQogICAg aW50IG1vZGUoKSBjb25zdCB7IHJldHVybiBpb01vZGUgJiAweDAwZmY7IH0KICAgIGludCBzdGF0 ZSgpIGNvbnN0IHsgcmV0dXJuIGlvTW9kZSAmIDB4ZjAwMDsgfQoKICAgIGJvb2wgaXNEaXJlY3RB Y2Nlc3MoKSBjb25zdCB7IHJldHVybiAoKGlvTW9kZSAmIDB4MDEwMCkgPT0gMHgwMTAwKTsgfQog ICAgYm9vbCBpc1NlcXVlbnRpYWxBY2Nlc3MoKSBjb25zdCB7IHJldHVybiAoKGlvTW9kZSAmIDB4 MDIwMCkgPT0gMHgwMjAwKTsgfQogICAgYm9vbCBpc0NvbWJpbmVkQWNjZXNzKCkgY29uc3QgeyBy ZXR1cm4gKChpb01vZGUgJiAweDAzMDApID09IDB4MDMwMCk7IH0KICAgIGJvb2wgaXNCdWZmZXJl ZCgpIGNvbnN0IHsgcmV0dXJuICgoaW9Nb2RlICYgMHgwMDQwKSAhPSAweDAwNDApOyB9CiAgICBi b29sIGlzUmF3KCkgY29uc3QgeyByZXR1cm4gKChpb01vZGUgJiAweDAwNDApID09IDB4MDA0MCk7 IH0KICAgIGJvb2wgaXNTeW5jaHJvbm91cygpIGNvbnN0IHsgcmV0dXJuICgoaW9Nb2RlICYgMHgw MDgwKSAhPSAweDAwODApOyB9CiAgICBib29sIGlzQXN5bmNocm9ub3VzKCkgY29uc3QgeyByZXR1 cm4gKChpb01vZGUgJiAweDAwODApID09IDB4MDA4MCk7IH0KICAgIGJvb2wgaXNUcmFuc2xhdGVk KCkgY29uc3QgeyByZXR1cm4gKChpb01vZGUgJiAweDAwMTApID09IDB4MDAxMCk7IH0KICAgIGJv b2wgaXNSZWFkYWJsZSgpIGNvbnN0IHsgcmV0dXJuICgoaW9Nb2RlICYgMHgwMDAxKSA9PSAweDAw MDEpOyB9CiAgICBib29sIGlzV3JpdGFibGUoKSBjb25zdCB7IHJldHVybiAoKGlvTW9kZSAmIDB4 MDAwMikgPT0gMHgwMDAyKTsgfQogICAgYm9vbCBpc1JlYWRXcml0ZSgpIGNvbnN0IHsgcmV0dXJu ICgoaW9Nb2RlICYgMHgwMDAzKSA9PSAweDAwMDMpOyB9CiAgICBib29sIGlzSW5hY3RpdmUoKSBj b25zdCB7IHJldHVybiBzdGF0ZSgpID09IDA7IH0KICAgIGJvb2wgaXNPcGVuKCkgY29uc3QgeyBy ZXR1cm4gc3RhdGUoKSA9PSAweDEwMDA7IH0KCiAgICBpbnQgc3RhdHVzKCkgY29uc3QgeyByZXR1 cm4gaW9TdDsgfQogICAgdm9pZCByZXNldFN0YXR1cygpIHsgaW9TdCA9IDA7IH0KCiAgICB2aXJ0 dWFsIGJvb2wgb3BlbiggaW50IG1vZGUgKSA9IDA7CiAgICB2aXJ0dWFsIHZvaWQgY2xvc2UoKSA9 IDA7CiAgICB2aXJ0dWFsIHZvaWQgZmx1c2goKSA9IDA7CgogICAgdmlydHVhbCB1aW50IHNpemUo KSBjb25zdCA9IDA7CiAgICB2aXJ0dWFsIGludCBhdCgpIGNvbnN0OwogICAgdmlydHVhbCBib29s IGF0KCBpbnQgKTsKICAgIHZpcnR1YWwgYm9vbCBhdEVuZCgpIGNvbnN0OwogICAgYm9vbCByZXNl dCgpIHsgcmV0dXJuIGF0KDApOyB9CgogICAgdmlydHVhbCBpbnQgcmVhZEJsb2NrKCBjaGFyICpk YXRhLCB1aW50IG1heGxlbiApID0gMDsKICAgIHZpcnR1YWwgaW50IHdyaXRlQmxvY2soIGNvbnN0 IGNoYXIgKmRhdGEsIHVpbnQgbGVuICkgPSAwOwogICAgdmlydHVhbCBpbnQgcmVhZExpbmUoIGNo YXIgKmRhdGEsIHVpbnQgbWF4bGVuICk7CiAgICBpbnQgd3JpdGVCbG9jayggY29uc3QgUUJ5dGVB cnJheSYgZGF0YSApOwogICAgUUJ5dGVBcnJheSByZWFkQWxsKCk7CgogICAgdmlydHVhbCBpbnQg Z2V0Y2goKSA9IDA7CiAgICB2aXJ0dWFsIGludCBwdXRjaCggaW50ICkgPSAwOwogICAgdmlydHVh bCBpbnQgdW5nZXRjaCggaW50ICkgPSAwOwoKcHJvdGVjdGVkOgogICAgdm9pZCBzZXRGbGFncygg aW50IGYgKSB7IGlvTW9kZSA9IGY7IH0KICAgIHZvaWQgc2V0VHlwZSggaW50ICk7CiAgICB2b2lk IHNldE1vZGUoIGludCApOwogICAgdm9pZCBzZXRTdGF0ZSggaW50ICk7CiAgICB2b2lkIHNldFN0 YXR1cyggaW50ICk7CiAgICBpbnQgaW9JbmRleDsKCnByaXZhdGU6CiAgICBpbnQgaW9Nb2RlOwog ICAgaW50IGlvU3Q7Cgpwcml2YXRlOgoKICAgIFFJT0RldmljZSggY29uc3QgUUlPRGV2aWNlICYg KTsKICAgIFFJT0RldmljZSAmb3BlcmF0b3I9KCBjb25zdCBRSU9EZXZpY2UgJiApOwoKfTsKCgoj IDMzICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FkYXRhc3RyZWFtLmgiIDIgMwoKCgoKY2xh c3MgUURhdGFTdHJlYW0KewpwdWJsaWM6CiAgICBRRGF0YVN0cmVhbSgpOwogICAgUURhdGFTdHJl YW0oIFFJT0RldmljZSAqICk7CiAgICBRRGF0YVN0cmVhbSggUUJ5dGVBcnJheSwgaW50IG1vZGUg KTsKICAgIHZpcnR1YWwgflFEYXRhU3RyZWFtKCk7CgogICAgUUlPRGV2aWNlICpkZXZpY2UoKSBj b25zdDsKICAgIHZvaWQgc2V0RGV2aWNlKCBRSU9EZXZpY2UgKiApOwogICAgdm9pZCB1bnNldERl dmljZSgpOwoKICAgIGJvb2wgYXRFbmQoKSBjb25zdDsKICAgIGJvb2wgZW9mKCkgY29uc3Q7Cgog ICAgZW51bSBCeXRlT3JkZXIgeyBCaWdFbmRpYW4sIExpdHRsZUVuZGlhbiB9OwogICAgaW50IGJ5 dGVPcmRlcigpIGNvbnN0OwogICAgdm9pZCBzZXRCeXRlT3JkZXIoIGludCApOwoKICAgIGJvb2wg aXNQcmludGFibGVEYXRhKCkgY29uc3Q7CiAgICB2b2lkIHNldFByaW50YWJsZURhdGEoIGJvb2wg KTsKCiAgICBpbnQgdmVyc2lvbigpIGNvbnN0OwogICAgdm9pZCBzZXRWZXJzaW9uKCBpbnQgKTsK CiAgICBRRGF0YVN0cmVhbSAmb3BlcmF0b3I+PiggUV9JTlQ4ICZpICk7CiAgICBRRGF0YVN0cmVh bSAmb3BlcmF0b3I+PiggUV9VSU5UOCAmaSApOwogICAgUURhdGFTdHJlYW0gJm9wZXJhdG9yPj4o IFFfSU5UMTYgJmkgKTsKICAgIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+KCBRX1VJTlQxNiAmaSAp OwogICAgUURhdGFTdHJlYW0gJm9wZXJhdG9yPj4oIFFfSU5UMzIgJmkgKTsKICAgIFFEYXRhU3Ry ZWFtICZvcGVyYXRvcj4+KCBRX1VJTlQzMiAmaSApOwogICAgUURhdGFTdHJlYW0gJm9wZXJhdG9y Pj4oIFFfSU5UNjQgJmkgKTsKICAgIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+KCBRX1VJTlQ2NCAm aSApOwoKICAgIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+KCBmbG9hdCAmZiApOwogICAgUURhdGFT dHJlYW0gJm9wZXJhdG9yPj4oIGRvdWJsZSAmZiApOwogICAgUURhdGFTdHJlYW0gJm9wZXJhdG9y Pj4oIGNoYXIgKiZzdHIgKTsKCiAgICBRRGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggUV9JTlQ4IGkg KTsKICAgIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRX1VJTlQ4IGkgKTsKICAgIFFEYXRhU3Ry ZWFtICZvcGVyYXRvcjw8KCBRX0lOVDE2IGkgKTsKICAgIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8 KCBRX1VJTlQxNiBpICk7CiAgICBRRGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggUV9JTlQzMiBpICk7 CiAgICBRRGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggUV9VSU5UMzIgaSApOwogICAgUURhdGFTdHJl YW0gJm9wZXJhdG9yPDwoIFFfSU5UNjQgaSApOwogICAgUURhdGFTdHJlYW0gJm9wZXJhdG9yPDwo IFFfVUlOVDY0IGkgKTsKICAgIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBmbG9hdCBmICk7CiAg ICBRRGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggZG91YmxlIGYgKTsKICAgIFFEYXRhU3RyZWFtICZv cGVyYXRvcjw8KCBjb25zdCBjaGFyICpzdHIgKTsKCiAgICBRRGF0YVN0cmVhbSAmcmVhZEJ5dGVz KCBjaGFyIComLCB1aW50ICZsZW4gKTsKICAgIFFEYXRhU3RyZWFtICZyZWFkUmF3Qnl0ZXMoIGNo YXIgKiwgdWludCBsZW4gKTsKCiAgICBRRGF0YVN0cmVhbSAmd3JpdGVCeXRlcyggY29uc3QgY2hh ciAqLCB1aW50IGxlbiApOwogICAgUURhdGFTdHJlYW0gJndyaXRlUmF3Qnl0ZXMoIGNvbnN0IGNo YXIgKiwgdWludCBsZW4gKTsKCnByaXZhdGU6CiAgICBRSU9EZXZpY2UgKmRldjsKICAgIGJvb2wg b3duZGV2OwogICAgaW50IGJ5dGVvcmRlcjsKICAgIGJvb2wgcHJpbnRhYmxlOwogICAgYm9vbCBu b3N3YXA7CiAgICBpbnQgdmVyOwoKcHJpdmF0ZToKCiAgICBRRGF0YVN0cmVhbSggY29uc3QgUURh dGFTdHJlYW0gJiApOwogICAgUURhdGFTdHJlYW0gJm9wZXJhdG9yPSggY29uc3QgUURhdGFTdHJl YW0gJiApOwoKfTsKCgoKCgoKaW5saW5lIFFJT0RldmljZSAqUURhdGFTdHJlYW06OmRldmljZSgp IGNvbnN0CnsgcmV0dXJuIGRldjsgfQoKaW5saW5lIGJvb2wgUURhdGFTdHJlYW06OmF0RW5kKCkg Y29uc3QKeyByZXR1cm4gZGV2ID8gZGV2LT5hdEVuZCgpIDogVFJVRTsgfQoKaW5saW5lIGJvb2wg UURhdGFTdHJlYW06OmVvZigpIGNvbnN0CnsgcmV0dXJuIGF0RW5kKCk7IH0KCmlubGluZSBpbnQg UURhdGFTdHJlYW06OmJ5dGVPcmRlcigpIGNvbnN0CnsgcmV0dXJuIGJ5dGVvcmRlcjsgfQoKaW5s aW5lIGJvb2wgUURhdGFTdHJlYW06OmlzUHJpbnRhYmxlRGF0YSgpIGNvbnN0CnsgcmV0dXJuIHBy aW50YWJsZTsgfQoKaW5saW5lIHZvaWQgUURhdGFTdHJlYW06OnNldFByaW50YWJsZURhdGEoIGJv b2wgcCApCnsgcHJpbnRhYmxlID0gcDsgfQoKaW5saW5lIGludCBRRGF0YVN0cmVhbTo6dmVyc2lv bigpIGNvbnN0CnsgcmV0dXJuIHZlcjsgfQoKaW5saW5lIHZvaWQgUURhdGFTdHJlYW06OnNldFZl cnNpb24oIGludCB2ICkKeyB2ZXIgPSB2OyB9CgppbmxpbmUgUURhdGFTdHJlYW0gJlFEYXRhU3Ry ZWFtOjpvcGVyYXRvcj4+KCBRX1VJTlQ4ICZpICkKeyByZXR1cm4gKnRoaXMgPj4gKFFfSU5UOCYp aTsgfQoKaW5saW5lIFFEYXRhU3RyZWFtICZRRGF0YVN0cmVhbTo6b3BlcmF0b3I+PiggUV9VSU5U MTYgJmkgKQp7IHJldHVybiAqdGhpcyA+PiAoUV9JTlQxNiYpaTsgfQoKaW5saW5lIFFEYXRhU3Ry ZWFtICZRRGF0YVN0cmVhbTo6b3BlcmF0b3I+PiggUV9VSU5UMzIgJmkgKQp7IHJldHVybiAqdGhp cyA+PiAoUV9JTlQzMiYpaTsgfQoKaW5saW5lIFFEYXRhU3RyZWFtICZRRGF0YVN0cmVhbTo6b3Bl cmF0b3I+PiggUV9VSU5UNjQgJmkgKQp7IHJldHVybiAqdGhpcyA+PiAoUV9JTlQ2NCYpaTsgfQoK aW5saW5lIFFEYXRhU3RyZWFtICZRRGF0YVN0cmVhbTo6b3BlcmF0b3I8PCggUV9VSU5UOCBpICkK eyByZXR1cm4gKnRoaXMgPDwgKFFfSU5UOClpOyB9CgppbmxpbmUgUURhdGFTdHJlYW0gJlFEYXRh U3RyZWFtOjpvcGVyYXRvcjw8KCBRX1VJTlQxNiBpICkKeyByZXR1cm4gKnRoaXMgPDwgKFFfSU5U MTYpaTsgfQoKaW5saW5lIFFEYXRhU3RyZWFtICZRRGF0YVN0cmVhbTo6b3BlcmF0b3I8PCggUV9V SU5UMzIgaSApCnsgcmV0dXJuICp0aGlzIDw8IChRX0lOVDMyKWk7IH0KCmlubGluZSBRRGF0YVN0 cmVhbSAmUURhdGFTdHJlYW06Om9wZXJhdG9yPDwoIFFfVUlOVDY0IGkgKQp7IHJldHVybiAqdGhp cyA8PCAoUV9JTlQ2NClpOyB9CgoKIyAzNCAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xdmFs dWVsaXN0LmgiIDIgMwoKCgoKCgp0ZW1wbGF0ZSA8Y2xhc3MgVD4KY2xhc3MgUVZhbHVlTGlzdE5v ZGUKewpwdWJsaWM6CiAgICBRVmFsdWVMaXN0Tm9kZSggY29uc3QgVCYgdCApIDogZGF0YSggdCAp IHsgfQogICAgUVZhbHVlTGlzdE5vZGUoKSB7IH0KCgoKCgogICAgUVZhbHVlTGlzdE5vZGU8VD4q IG5leHQ7CiAgICBRVmFsdWVMaXN0Tm9kZTxUPiogcHJldjsKICAgIFQgZGF0YTsKfTsKCnRlbXBs YXRlPGNsYXNzIFQ+CmNsYXNzIFFWYWx1ZUxpc3RJdGVyYXRvcgp7CiBwdWJsaWM6CgoKCiAgICB0 eXBlZGVmIFFWYWx1ZUxpc3ROb2RlPFQ+KiBOb2RlUHRyOwoKCgoKICAgIE5vZGVQdHIgbm9kZTsK CgoKCiAgICBRVmFsdWVMaXN0SXRlcmF0b3IoKSA6IG5vZGUoIDAgKSB7fQogICAgUVZhbHVlTGlz dEl0ZXJhdG9yKCBOb2RlUHRyIHAgKSA6IG5vZGUoIHAgKSB7fQogICAgUVZhbHVlTGlzdEl0ZXJh dG9yKCBjb25zdCBRVmFsdWVMaXN0SXRlcmF0b3I8VD4mIGl0ICkgOiBub2RlKCBpdC5ub2RlICkg e30KCiAgICBib29sIG9wZXJhdG9yPT0oIGNvbnN0IFFWYWx1ZUxpc3RJdGVyYXRvcjxUPiYgaXQg KSBjb25zdCB7IHJldHVybiBub2RlID09IGl0Lm5vZGU7IH0KICAgIGJvb2wgb3BlcmF0b3IhPSgg Y29uc3QgUVZhbHVlTGlzdEl0ZXJhdG9yPFQ+JiBpdCApIGNvbnN0IHsgcmV0dXJuIG5vZGUgIT0g aXQubm9kZTsgfQogICAgY29uc3QgVCYgb3BlcmF0b3IqKCkgY29uc3QgeyByZXR1cm4gbm9kZS0+ ZGF0YTsgfQogICAgVCYgb3BlcmF0b3IqKCkgeyByZXR1cm4gbm9kZS0+ZGF0YTsgfQoKCgoKICAg IFFWYWx1ZUxpc3RJdGVyYXRvcjxUPiYgb3BlcmF0b3IrKygpIHsKICAgICAgICBub2RlID0gbm9k ZS0+bmV4dDsKICAgICAgICByZXR1cm4gKnRoaXM7CiAgICB9CgogICAgUVZhbHVlTGlzdEl0ZXJh dG9yPFQ+IG9wZXJhdG9yKysoaW50KSB7CiAgICAgICAgUVZhbHVlTGlzdEl0ZXJhdG9yPFQ+IHRt cCA9ICp0aGlzOwogICAgICAgIG5vZGUgPSBub2RlLT5uZXh0OwogICAgICAgIHJldHVybiB0bXA7 CiAgICB9CgogICAgUVZhbHVlTGlzdEl0ZXJhdG9yPFQ+JiBvcGVyYXRvci0tKCkgewogICAgICAg IG5vZGUgPSBub2RlLT5wcmV2OwogICAgICAgIHJldHVybiAqdGhpczsKICAgIH0KCiAgICBRVmFs dWVMaXN0SXRlcmF0b3I8VD4gb3BlcmF0b3ItLShpbnQpIHsKICAgICAgICBRVmFsdWVMaXN0SXRl cmF0b3I8VD4gdG1wID0gKnRoaXM7CiAgICAgICAgbm9kZSA9IG5vZGUtPnByZXY7CiAgICAgICAg cmV0dXJuIHRtcDsKICAgIH0KfTsKCnRlbXBsYXRlPGNsYXNzIFQ+CmNsYXNzIFFWYWx1ZUxpc3RD b25zdEl0ZXJhdG9yCnsKIHB1YmxpYzoKCgoKICAgIHR5cGVkZWYgUVZhbHVlTGlzdE5vZGU8VD4q IE5vZGVQdHI7CgoKCgogICAgTm9kZVB0ciBub2RlOwoKCgoKICAgIFFWYWx1ZUxpc3RDb25zdEl0 ZXJhdG9yKCkgOiBub2RlKCAwICkge30KICAgIFFWYWx1ZUxpc3RDb25zdEl0ZXJhdG9yKCBOb2Rl UHRyIHAgKSA6IG5vZGUoIHAgKSB7fQogICAgUVZhbHVlTGlzdENvbnN0SXRlcmF0b3IoIGNvbnN0 IFFWYWx1ZUxpc3RDb25zdEl0ZXJhdG9yPFQ+JiBpdCApIDogbm9kZSggaXQubm9kZSApIHt9CiAg ICBRVmFsdWVMaXN0Q29uc3RJdGVyYXRvciggY29uc3QgUVZhbHVlTGlzdEl0ZXJhdG9yPFQ+JiBp dCApIDogbm9kZSggaXQubm9kZSApIHt9CgogICAgYm9vbCBvcGVyYXRvcj09KCBjb25zdCBRVmFs dWVMaXN0Q29uc3RJdGVyYXRvcjxUPiYgaXQgKSBjb25zdCB7IHJldHVybiBub2RlID09IGl0Lm5v ZGU7IH0KICAgIGJvb2wgb3BlcmF0b3IhPSggY29uc3QgUVZhbHVlTGlzdENvbnN0SXRlcmF0b3I8 VD4mIGl0ICkgY29uc3QgeyByZXR1cm4gbm9kZSAhPSBpdC5ub2RlOyB9CiAgICBjb25zdCBUJiBv cGVyYXRvciooKSBjb25zdCB7IHJldHVybiBub2RlLT5kYXRhOyB9CgoKCgogICAgUVZhbHVlTGlz dENvbnN0SXRlcmF0b3I8VD4mIG9wZXJhdG9yKysoKSB7CiAgICAgICAgbm9kZSA9IG5vZGUtPm5l eHQ7CiAgICAgICAgcmV0dXJuICp0aGlzOwogICAgfQoKICAgIFFWYWx1ZUxpc3RDb25zdEl0ZXJh dG9yPFQ+IG9wZXJhdG9yKysoaW50KSB7CiAgICAgICAgUVZhbHVlTGlzdENvbnN0SXRlcmF0b3I8 VD4gdG1wID0gKnRoaXM7CiAgICAgICAgbm9kZSA9IG5vZGUtPm5leHQ7CiAgICAgICAgcmV0dXJu IHRtcDsKICAgIH0KCiAgICBRVmFsdWVMaXN0Q29uc3RJdGVyYXRvcjxUPiYgb3BlcmF0b3ItLSgp IHsKICAgICAgICBub2RlID0gbm9kZS0+cHJldjsKICAgICAgICByZXR1cm4gKnRoaXM7CiAgICB9 CgogICAgUVZhbHVlTGlzdENvbnN0SXRlcmF0b3I8VD4gb3BlcmF0b3ItLShpbnQpIHsKICAgICAg ICBRVmFsdWVMaXN0Q29uc3RJdGVyYXRvcjxUPiB0bXAgPSAqdGhpczsKICAgICAgICBub2RlID0g bm9kZS0+cHJldjsKICAgICAgICByZXR1cm4gdG1wOwogICAgfQp9OwoKdGVtcGxhdGUgPGNsYXNz IFQ+CmNsYXNzIFFWYWx1ZUxpc3RQcml2YXRlIDogcHVibGljIFFTaGFyZWQKewpwdWJsaWM6CgoK CiAgICB0eXBlZGVmIFFWYWx1ZUxpc3RJdGVyYXRvcjxUPiBJdGVyYXRvcjsKICAgIHR5cGVkZWYg UVZhbHVlTGlzdENvbnN0SXRlcmF0b3I8VD4gQ29uc3RJdGVyYXRvcjsKICAgIHR5cGVkZWYgUVZh bHVlTGlzdE5vZGU8VD4gTm9kZTsKICAgIHR5cGVkZWYgUVZhbHVlTGlzdE5vZGU8VD4qIE5vZGVQ dHI7CgoKCgogICAgUVZhbHVlTGlzdFByaXZhdGUoKSB7IG5vZGUgPSBuZXcgTm9kZTsgbm9kZS0+ bmV4dCA9IG5vZGUtPnByZXYgPSBub2RlOyBub2RlcyA9IDA7IH0KICAgIFFWYWx1ZUxpc3RQcml2 YXRlKCBjb25zdCBRVmFsdWVMaXN0UHJpdmF0ZTxUPiYgX3AgKSA6IFFTaGFyZWQoKSB7CiAgICAg ICAgbm9kZSA9IG5ldyBOb2RlOyBub2RlLT5uZXh0ID0gbm9kZS0+cHJldiA9IG5vZGU7IG5vZGVz ID0gMDsKICAgICAgICBJdGVyYXRvciBiKCBfcC5ub2RlLT5uZXh0ICk7CiAgICAgICAgSXRlcmF0 b3IgZSggX3Aubm9kZSApOwogICAgICAgIEl0ZXJhdG9yIGkoIG5vZGUgKTsKICAgICAgICB3aGls ZSggYiAhPSBlICkKICAgICAgICAgICAgaW5zZXJ0KCBpLCAqYisrICk7CiAgICB9CgogICAgdm9p ZCBkZXJlZkFuZERlbGV0ZSgpCiAgICB7CiAgICAgICAgaWYgKCBkZXJlZigpICkKICAgICAgICAg ICAgZGVsZXRlIHRoaXM7CiAgICB9CgoKCgoKICAgIH5RVmFsdWVMaXN0UHJpdmF0ZSgpIHsKICAg ICAgICBOb2RlUHRyIHAgPSBub2RlLT5uZXh0OwogICAgICAgIHdoaWxlKCBwICE9IG5vZGUgKSB7 CiAgICAgICAgICAgIE5vZGVQdHIgeCA9IHAtPm5leHQ7CiAgICAgICAgICAgIGRlbGV0ZSBwOwog ICAgICAgICAgICBwID0geDsKICAgICAgICB9CiAgICAgICAgZGVsZXRlIG5vZGU7CiAgICB9Cgog ICAgSXRlcmF0b3IgaW5zZXJ0KCBJdGVyYXRvciBpdCwgY29uc3QgVCYgeCApIHsKICAgICAgICBO b2RlUHRyIHAgPSBuZXcgTm9kZSggeCApOwogICAgICAgIHAtPm5leHQgPSBpdC5ub2RlOwogICAg ICAgIHAtPnByZXYgPSBpdC5ub2RlLT5wcmV2OwogICAgICAgIGl0Lm5vZGUtPnByZXYtPm5leHQg PSBwOwogICAgICAgIGl0Lm5vZGUtPnByZXYgPSBwOwogICAgICAgIG5vZGVzKys7CiAgICAgICAg cmV0dXJuIHA7CiAgICB9CgogICAgSXRlcmF0b3IgcmVtb3ZlKCBJdGVyYXRvciBpdCApIHsKICAg ICAgICBpZiAoICEoaXQubm9kZSAhPSBub2RlKSApIHFXYXJuaW5nKCJBU1NFUlQ6IFwiJXNcIiBp biAlcyAoJWQpIiwiaXQubm9kZSAhPSBub2RlIiwiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9x dmFsdWVsaXN0LmgiLDIxNik7CiAgICAgICAgTm9kZVB0ciBuZXh0ID0gaXQubm9kZS0+bmV4dDsK ICAgICAgICBOb2RlUHRyIHByZXYgPSBpdC5ub2RlLT5wcmV2OwogICAgICAgIHByZXYtPm5leHQg PSBuZXh0OwogICAgICAgIG5leHQtPnByZXYgPSBwcmV2OwogICAgICAgIGRlbGV0ZSBpdC5ub2Rl OwogICAgICAgIG5vZGVzLS07CiAgICAgICAgcmV0dXJuIEl0ZXJhdG9yKCBuZXh0ICk7CiAgICB9 CgogICAgTm9kZVB0ciBmaW5kKCBOb2RlUHRyIHN0YXJ0LCBjb25zdCBUJiB4ICkgY29uc3Qgewog ICAgICAgIENvbnN0SXRlcmF0b3IgZmlyc3QoIHN0YXJ0ICk7CiAgICAgICAgQ29uc3RJdGVyYXRv ciBsYXN0KCBub2RlICk7CiAgICAgICAgd2hpbGUoIGZpcnN0ICE9IGxhc3QpIHsKICAgICAgICAg ICAgaWYgKCAqZmlyc3QgPT0geCApCiAgICAgICAgICAgICAgICByZXR1cm4gZmlyc3Qubm9kZTsK ICAgICAgICAgICAgKytmaXJzdDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGxhc3Qubm9kZTsK ICAgIH0KCiAgICBpbnQgZmluZEluZGV4KCBOb2RlUHRyIHN0YXJ0LCBjb25zdCBUJiB4ICkgY29u c3QgewogICAgICAgIENvbnN0SXRlcmF0b3IgZmlyc3QoIHN0YXJ0ICk7CiAgICAgICAgQ29uc3RJ dGVyYXRvciBsYXN0KCBub2RlICk7CiAgICAgICAgaW50IHBvcyA9IDA7CiAgICAgICAgd2hpbGUo IGZpcnN0ICE9IGxhc3QpIHsKICAgICAgICAgICAgaWYgKCAqZmlyc3QgPT0geCApCiAgICAgICAg ICAgICAgICByZXR1cm4gcG9zOwogICAgICAgICAgICArK2ZpcnN0OwogICAgICAgICAgICArK3Bv czsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIC0xOwogICAgfQoKICAgIHVpbnQgY29udGFpbnMo IGNvbnN0IFQmIHggKSBjb25zdCB7CiAgICAgICAgdWludCByZXN1bHQgPSAwOwogICAgICAgIEl0 ZXJhdG9yIGZpcnN0ID0gSXRlcmF0b3IoIG5vZGUtPm5leHQgKTsKICAgICAgICBJdGVyYXRvciBs YXN0ID0gSXRlcmF0b3IoIG5vZGUgKTsKICAgICAgICB3aGlsZSggZmlyc3QgIT0gbGFzdCkgewog ICAgICAgICAgICBpZiAoICpmaXJzdCA9PSB4ICkKICAgICAgICAgICAgICAgICsrcmVzdWx0Owog ICAgICAgICAgICArK2ZpcnN0OwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAg fQoKICAgIHZvaWQgcmVtb3ZlKCBjb25zdCBUJiB4ICkgewogICAgICAgIEl0ZXJhdG9yIGZpcnN0 ID0gSXRlcmF0b3IoIG5vZGUtPm5leHQgKTsKICAgICAgICBJdGVyYXRvciBsYXN0ID0gSXRlcmF0 b3IoIG5vZGUgKTsKICAgICAgICB3aGlsZSggZmlyc3QgIT0gbGFzdCkgewogICAgICAgICAgICBp ZiAoICpmaXJzdCA9PSB4ICkKICAgICAgICAgICAgICAgIGZpcnN0ID0gcmVtb3ZlKCBmaXJzdCAp OwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICArK2ZpcnN0OwogICAgICAgIH0KICAg IH0KCiAgICBOb2RlUHRyIGF0KCB1aW50IGkgKSBjb25zdCB7CiAgICAgICAgaWYgKCAhKGkgPD0g bm9kZXMpICkgcVdhcm5pbmcoIkFTU0VSVDogXCIlc1wiIGluICVzICglZCkiLCJpIDw9IG5vZGVz IiwiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xdmFsdWVsaXN0LmgiLDI3NCk7CiAgICAgICAg Tm9kZVB0ciBwID0gbm9kZS0+bmV4dDsKICAgICAgICBmb3IoIHVpbnQgeCA9IDA7IHggPCBpOyAr K3ggKQogICAgICAgICAgICBwID0gcC0+bmV4dDsKICAgICAgICByZXR1cm4gcDsKICAgIH0KCiAg ICB2b2lkIGNsZWFyKCkgewogICAgICAgIG5vZGVzID0gMDsKICAgICAgICBOb2RlUHRyIHAgPSBu b2RlLT5uZXh0OwogICAgICAgIHdoaWxlKCBwICE9IG5vZGUgKSB7CiAgICAgICAgICAgIE5vZGVQ dHIgbmV4dCA9IHAtPm5leHQ7CiAgICAgICAgICAgIGRlbGV0ZSBwOwogICAgICAgICAgICBwID0g bmV4dDsKICAgICAgICB9CiAgICAgICAgbm9kZS0+bmV4dCA9IG5vZGUtPnByZXYgPSBub2RlOwog ICAgfQoKICAgIE5vZGVQdHIgbm9kZTsKICAgIHVpbnQgbm9kZXM7Cn07Cgp0ZW1wbGF0ZSA8Y2xh c3MgVD4KY2xhc3MgUVZhbHVlTGlzdAp7CnB1YmxpYzoKCgoKICAgIHR5cGVkZWYgUVZhbHVlTGlz dEl0ZXJhdG9yPFQ+IEl0ZXJhdG9yOwogICAgdHlwZWRlZiBRVmFsdWVMaXN0Q29uc3RJdGVyYXRv cjxUPiBDb25zdEl0ZXJhdG9yOwogICAgdHlwZWRlZiBUIFZhbHVlVHlwZTsKCgoKCiAgICBRVmFs dWVMaXN0KCkgeyBzaCA9IG5ldyBRVmFsdWVMaXN0UHJpdmF0ZTxUPjsgfQogICAgUVZhbHVlTGlz dCggY29uc3QgUVZhbHVlTGlzdDxUPiYgbCApIHsgc2ggPSBsLnNoOyBzaC0+cmVmKCk7IH0KICAg IH5RVmFsdWVMaXN0KCkgeyBzaC0+ZGVyZWZBbmREZWxldGUoKTsgfQoKICAgIFFWYWx1ZUxpc3Q8 VD4mIG9wZXJhdG9yPSAoIGNvbnN0IFFWYWx1ZUxpc3Q8VD4mIGwgKQogICAgewogICAgICAgIGwu c2gtPnJlZigpOwogICAgICAgIHNoLT5kZXJlZkFuZERlbGV0ZSgpOwogICAgICAgIHNoID0gbC5z aDsKICAgICAgICByZXR1cm4gKnRoaXM7CiAgICB9CgogICAgUVZhbHVlTGlzdDxUPiBvcGVyYXRv cisgKCBjb25zdCBRVmFsdWVMaXN0PFQ+JiBsICkgY29uc3QKICAgIHsKICAgICAgICBRVmFsdWVM aXN0PFQ+IGwyKCAqdGhpcyApOwogICAgICAgIGZvciggQ29uc3RJdGVyYXRvciBpdCA9IGwuYmVn aW4oKTsgaXQgIT0gbC5lbmQoKTsgKytpdCApCiAgICAgICAgICAgIGwyLmFwcGVuZCggKml0ICk7 CiAgICAgICAgcmV0dXJuIGwyOwogICAgfQoKICAgIFFWYWx1ZUxpc3Q8VD4mIG9wZXJhdG9yKz0g KCBjb25zdCBRVmFsdWVMaXN0PFQ+JiBsICkKICAgIHsKICAgICAgICBmb3IoIENvbnN0SXRlcmF0 b3IgaXQgPSBsLmJlZ2luKCk7IGl0ICE9IGwuZW5kKCk7ICsraXQgKQogICAgICAgICAgICBhcHBl bmQoICppdCApOwogICAgICAgIHJldHVybiAqdGhpczsKICAgIH0KCiAgICBib29sIG9wZXJhdG9y PT0gKCBjb25zdCBRVmFsdWVMaXN0PFQ+JiBsICkgY29uc3QKICAgIHsKICAgICAgICBpZiAoIGNv dW50KCkgIT0gbC5jb3VudCgpICkKICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgIENv bnN0SXRlcmF0b3IgaXQyID0gYmVnaW4oKTsKICAgICAgICBDb25zdEl0ZXJhdG9yIGl0ID0gbC5i ZWdpbigpOwogICAgICAgIGZvciggOyBpdCAhPSBsLmVuZCgpOyArK2l0LCArK2l0MiApCiAgICAg ICAgICAgIGlmICggISggKml0ID09ICppdDIgKSApCiAgICAgICAgICAgICAgICByZXR1cm4gRkFM U0U7CiAgICAgICAgcmV0dXJuIFRSVUU7CiAgICB9CgogICAgYm9vbCBvcGVyYXRvciE9ICggY29u c3QgUVZhbHVlTGlzdDxUPiYgbCApIGNvbnN0IHsgcmV0dXJuICEoICp0aGlzID09IGwgKTsgfQoK ICAgIEl0ZXJhdG9yIGJlZ2luKCkgeyBkZXRhY2goKTsgcmV0dXJuIEl0ZXJhdG9yKCBzaC0+bm9k ZS0+bmV4dCApOyB9CiAgICBDb25zdEl0ZXJhdG9yIGJlZ2luKCkgY29uc3QgeyByZXR1cm4gQ29u c3RJdGVyYXRvciggc2gtPm5vZGUtPm5leHQgKTsgfQogICAgSXRlcmF0b3IgZW5kKCkgeyBkZXRh Y2goKTsgcmV0dXJuIEl0ZXJhdG9yKCBzaC0+bm9kZSApOyB9CiAgICBDb25zdEl0ZXJhdG9yIGVu ZCgpIGNvbnN0IHsgcmV0dXJuIENvbnN0SXRlcmF0b3IoIHNoLT5ub2RlICk7IH0KICAgIEl0ZXJh dG9yIGZyb21MYXN0KCkgeyBkZXRhY2goKTsgcmV0dXJuIEl0ZXJhdG9yKCBzaC0+bm9kZS0+cHJl diApOyB9CiAgICBDb25zdEl0ZXJhdG9yIGZyb21MYXN0KCkgY29uc3QgeyByZXR1cm4gQ29uc3RJ dGVyYXRvciggc2gtPm5vZGUtPnByZXYgKTsgfQoKICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsg cmV0dXJuICggc2gtPm5vZGVzID09IDAgKTsgfQoKICAgIEl0ZXJhdG9yIGluc2VydCggSXRlcmF0 b3IgaXQsIGNvbnN0IFQmIHggKSB7IGRldGFjaCgpOyByZXR1cm4gc2gtPmluc2VydCggaXQsIHgg KTsgfQoKICAgIEl0ZXJhdG9yIGFwcGVuZCggY29uc3QgVCYgeCApIHsgZGV0YWNoKCk7IHJldHVy biBzaC0+aW5zZXJ0KCBlbmQoKSwgeCApOyB9CiAgICBJdGVyYXRvciBwcmVwZW5kKCBjb25zdCBU JiB4ICkgeyBkZXRhY2goKTsgcmV0dXJuIHNoLT5pbnNlcnQoIGJlZ2luKCksIHggKTsgfQoKICAg IEl0ZXJhdG9yIHJlbW92ZSggSXRlcmF0b3IgaXQgKSB7IGRldGFjaCgpOyByZXR1cm4gc2gtPnJl bW92ZSggaXQgKTsgfQogICAgdm9pZCByZW1vdmUoIGNvbnN0IFQmIHggKSB7IGRldGFjaCgpOyBz aC0+cmVtb3ZlKCB4ICk7IH0KCiAgICBUJiBmaXJzdCgpIHsgZGV0YWNoKCk7IHJldHVybiBzaC0+ bm9kZS0+bmV4dC0+ZGF0YTsgfQogICAgY29uc3QgVCYgZmlyc3QoKSBjb25zdCB7IHJldHVybiBz aC0+bm9kZS0+bmV4dC0+ZGF0YTsgfQogICAgVCYgbGFzdCgpIHsgZGV0YWNoKCk7IHJldHVybiBz aC0+bm9kZS0+cHJldi0+ZGF0YTsgfQogICAgY29uc3QgVCYgbGFzdCgpIGNvbnN0IHsgcmV0dXJu IHNoLT5ub2RlLT5wcmV2LT5kYXRhOyB9CgogICAgVCYgb3BlcmF0b3JbXSAoIHVpbnQgaSApIHsg ZGV0YWNoKCk7IHJldHVybiBzaC0+YXQoaSktPmRhdGE7IH0KICAgIGNvbnN0IFQmIG9wZXJhdG9y W10gKCB1aW50IGkgKSBjb25zdCB7IHJldHVybiBzaC0+YXQoaSktPmRhdGE7IH0KICAgIEl0ZXJh dG9yIGF0KCB1aW50IGkgKSB7IGRldGFjaCgpOyByZXR1cm4gSXRlcmF0b3IoIHNoLT5hdChpKSAp OyB9CiAgICBDb25zdEl0ZXJhdG9yIGF0KCB1aW50IGkgKSBjb25zdCB7IHJldHVybiBDb25zdEl0 ZXJhdG9yKCBzaC0+YXQoaSkgKTsgfQogICAgSXRlcmF0b3IgZmluZCAoIGNvbnN0IFQmIHggKSB7 IGRldGFjaCgpOyByZXR1cm4gSXRlcmF0b3IoIHNoLT5maW5kKCBzaC0+bm9kZS0+bmV4dCwgeCkg KTsgfQogICAgQ29uc3RJdGVyYXRvciBmaW5kICggY29uc3QgVCYgeCApIGNvbnN0IHsgcmV0dXJu IENvbnN0SXRlcmF0b3IoIHNoLT5maW5kKCBzaC0+bm9kZS0+bmV4dCwgeCkgKTsgfQogICAgSXRl cmF0b3IgZmluZCAoIEl0ZXJhdG9yIGl0LCBjb25zdCBUJiB4ICkgeyBkZXRhY2goKTsgcmV0dXJu IEl0ZXJhdG9yKCBzaC0+ZmluZCggaXQubm9kZSwgeCApICk7IH0KICAgIENvbnN0SXRlcmF0b3Ig ZmluZCAoIENvbnN0SXRlcmF0b3IgaXQsIGNvbnN0IFQmIHggKSBjb25zdCB7IHJldHVybiBDb25z dEl0ZXJhdG9yKCBzaC0+ZmluZCggaXQubm9kZSwgeCApICk7IH0KICAgIGludCBmaW5kSW5kZXgo IGNvbnN0IFQmIHggKSBjb25zdCB7IHJldHVybiBzaC0+ZmluZEluZGV4KCBzaC0+bm9kZS0+bmV4 dCwgeCkgOyB9CiAgICB1aW50IGNvbnRhaW5zKCBjb25zdCBUJiB4ICkgY29uc3QgeyByZXR1cm4g c2gtPmNvbnRhaW5zKCB4ICk7IH0KCiAgICB1aW50IGNvdW50KCkgY29uc3QgeyByZXR1cm4gc2gt Pm5vZGVzOyB9CgogICAgdm9pZCBjbGVhcigpIHsgaWYgKCBzaC0+Y291bnQgPT0gMSApIHNoLT5j bGVhcigpOyBlbHNlIHsgc2gtPmRlcmVmKCk7IHNoID0gbmV3IFFWYWx1ZUxpc3RQcml2YXRlPFQ+ OyB9IH0KCgogICAgUVZhbHVlTGlzdDxUPiYgb3BlcmF0b3IrPSAoIGNvbnN0IFQmIHggKQogICAg ewogICAgICAgIGFwcGVuZCggeCApOwogICAgICAgIHJldHVybiAqdGhpczsKICAgIH0KICAgIFFW YWx1ZUxpc3Q8VD4mIG9wZXJhdG9yPDwgKCBjb25zdCBUJiB4ICkKICAgIHsKICAgICAgICBhcHBl bmQoIHggKTsKICAgICAgICByZXR1cm4gKnRoaXM7CiAgICB9CgoKcHJvdGVjdGVkOgoKCgogICAg dm9pZCBkZXRhY2goKSB7IGlmICggc2gtPmNvdW50ID4gMSApIHsgc2gtPmRlcmVmKCk7IHNoID0g bmV3IFFWYWx1ZUxpc3RQcml2YXRlPFQ+KCAqc2ggKTsgfSB9CgoKCgogICAgUVZhbHVlTGlzdFBy aXZhdGU8VD4qIHNoOwp9OwoKCnRlbXBsYXRlPGNsYXNzIFQ+CmlubGluZSBRRGF0YVN0cmVhbSYg b3BlcmF0b3I+PiggUURhdGFTdHJlYW0mIHMsIFFWYWx1ZUxpc3Q8VD4mIGwgKQp7CiAgICBsLmNs ZWFyKCk7CiAgICBRX1VJTlQzMiBjOwogICAgcyA+PiBjOwogICAgZm9yKCBRX1VJTlQzMiBpID0g MDsgaSA8IGM7ICsraSApCiAgICB7CiAgICAgICAgVCB0OwogICAgICAgIHMgPj4gdDsKICAgICAg ICBsLmFwcGVuZCggdCApOwogICAgfQogICAgcmV0dXJuIHM7Cn0KCnRlbXBsYXRlPGNsYXNzIFQ+ CmlubGluZSBRRGF0YVN0cmVhbSYgb3BlcmF0b3I8PCggUURhdGFTdHJlYW0mIHMsIGNvbnN0IFFW YWx1ZUxpc3Q8VD4mIGwgKQp7CiAgICBzIDw8IChRX1VJTlQzMilsLmNvdW50KCk7CiAgICBRVmFs dWVMaXN0Q29uc3RJdGVyYXRvcjxUPiBpdCA9IGwuYmVnaW4oKTsKICAgIGZvciggOyBpdCAhPSBs LmVuZCgpOyArK2l0ICkKICAgICAgICBzIDw8ICppdDsKICAgIHJldHVybiBzOwp9CiMgMzMgIi91 c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXN0cmluZ2xpc3QuaCIgMiAzCgoKIyAzNiAiL3Vzci9s aWIvcXQtMi4yLjAvaW5jbHVkZS9xcmVnZXhwLmgiIDEgMwpjbGFzcyBRUmVnRXhwCnsKcHVibGlj OgogICAgUVJlZ0V4cCgpOwogICAgUVJlZ0V4cCggY29uc3QgUVN0cmluZyAmLCBib29sIGNhc2VT ZW5zaXRpdmU9VFJVRSwgYm9vbCB3aWxkY2FyZD1GQUxTRSApOwogICAgUVJlZ0V4cCggY29uc3Qg UVJlZ0V4cCAmICk7CiAgIH5RUmVnRXhwKCk7CiAgICBRUmVnRXhwICZvcGVyYXRvcj0oIGNvbnN0 IFFSZWdFeHAgJiApOwogICAgUVJlZ0V4cCAmb3BlcmF0b3I9KCBjb25zdCBRU3RyaW5nICZwYXR0 ZXJuICk7CgogICAgYm9vbCBvcGVyYXRvcj09KCBjb25zdCBRUmVnRXhwICYgKSBjb25zdDsKICAg IGJvb2wgb3BlcmF0b3IhPSggY29uc3QgUVJlZ0V4cCAmciApIGNvbnN0CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7IHJldHVybiAhKHRoaXMtPm9wZXJhdG9yPT0ocikp OyB9CgogICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gcnhkYXRhID09IDA7IH0KICAg IGJvb2wgaXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIGVycm9yID09IDA7IH0KCiAgICBib29sIGNh c2VTZW5zaXRpdmUoKSBjb25zdCB7IHJldHVybiBjczsgfQogICAgdm9pZCBzZXRDYXNlU2Vuc2l0 aXZlKCBib29sICk7CgogICAgYm9vbCB3aWxkY2FyZCgpIGNvbnN0IHsgcmV0dXJuIHdjOyB9CiAg ICB2b2lkIHNldFdpbGRjYXJkKCBib29sICk7CgogICAgUVN0cmluZyBwYXR0ZXJuKCkgY29uc3Qg eyByZXR1cm4gcnhzdHJpbmc7IH0KCiAgICB2b2lkIHNldFBhdHRlcm4oIGNvbnN0IFFTdHJpbmcm IHBhdHRlcm4gKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBvcGVy YXRvcj0oIHBhdHRlcm4gKTsgfQoKICAgIGludCBtYXRjaCggY29uc3QgUVN0cmluZyAmc3RyLCBp bnQgaW5kZXg9MCwgaW50ICpsZW49MCwKICAgICAgICAgICAgICAgICAgICAgICBib29sIGluZGV4 SXNTdGFydCA9IFRSVUUgKSBjb25zdDsKICAgIGludCBmaW5kKCBjb25zdCBRU3RyaW5nJiBzdHIs IGludCBpbmRleCApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHJl dHVybiBtYXRjaCggc3RyLCBpbmRleCApOyB9Cgpwcm90ZWN0ZWQ6CiAgICB2b2lkIGNvbXBpbGUo KTsKICAgIGNvbnN0IFFDaGFyICptYXRjaHN0ciggdWludCAqLCBjb25zdCBRQ2hhciAqLCB1aW50 LCBjb25zdCBRQ2hhciAqICkgY29uc3Q7Cgpwcml2YXRlOgogICAgUVN0cmluZyByeHN0cmluZzsK ICAgIHVpbnQgKnJ4ZGF0YTsKICAgIGludCBlcnJvcjsKICAgIGJvb2wgY3M7CiAgICBib29sIHdj Owp9OwoKCiMgMzUgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXN0cmluZ2xpc3QuaCIgMiAz CgoKCgpjbGFzcyBRU3RyTGlzdDsKCmNsYXNzIFFTdHJpbmdMaXN0IDogcHVibGljIFFWYWx1ZUxp c3Q8UVN0cmluZz4KewpwdWJsaWM6CiAgICBRU3RyaW5nTGlzdCgpIHsgfQogICAgUVN0cmluZ0xp c3QoIGNvbnN0IFFTdHJpbmdMaXN0JiBsICkgOiBRVmFsdWVMaXN0PFFTdHJpbmc+KGwpIHsgfQog ICAgUVN0cmluZ0xpc3QoIGNvbnN0IFFWYWx1ZUxpc3Q8UVN0cmluZz4mIGwgKSA6IFFWYWx1ZUxp c3Q8UVN0cmluZz4obCkgeyB9CiAgICBRU3RyaW5nTGlzdCggY29uc3QgUVN0cmluZyYgaSApIHsg YXBwZW5kKGkpOyB9CgogICAgUVN0cmluZ0xpc3QoIGNvbnN0IGNoYXIqIGkgKSB7IGFwcGVuZChp KTsgfQoKCiAgICBzdGF0aWMgUVN0cmluZ0xpc3QgZnJvbVN0ckxpc3QoY29uc3QgUVN0ckxpc3Qm KTsKCiAgICB2b2lkIHNvcnQoKTsKCiAgICBzdGF0aWMgUVN0cmluZ0xpc3Qgc3BsaXQoIGNvbnN0 IFFTdHJpbmcgJnNlcCwgY29uc3QgUVN0cmluZyAmc3RyLCBib29sIGFsbG93RW1wdHlFbnRyaWVz ID0gRkFMU0UgKTsKICAgIHN0YXRpYyBRU3RyaW5nTGlzdCBzcGxpdCggY29uc3QgUUNoYXIgJnNl cCwgY29uc3QgUVN0cmluZyAmc3RyLCBib29sIGFsbG93RW1wdHlFbnRyaWVzID0gRkFMU0UgKTsK ICAgIHN0YXRpYyBRU3RyaW5nTGlzdCBzcGxpdCggY29uc3QgUVJlZ0V4cCAmc2VwLCBjb25zdCBR U3RyaW5nICZzdHIsIGJvb2wgYWxsb3dFbXB0eUVudHJpZXMgPSBGQUxTRSApOwogICAgUVN0cmlu ZyBqb2luKCBjb25zdCBRU3RyaW5nICZzZXAgKSBjb25zdDsKCiAgICBRU3RyaW5nTGlzdCBncmVw KCBjb25zdCBRU3RyaW5nICZzdHIsIGJvb2wgY3MgPSBUUlVFICkgY29uc3Q7CiAgICBRU3RyaW5n TGlzdCBncmVwKCBjb25zdCBRUmVnRXhwICZleHByICkgY29uc3Q7Cn07CgoKY2xhc3MgUURhdGFT dHJlYW07CmV4dGVybiBRRGF0YVN0cmVhbSAmb3BlcmF0b3I+PiggUURhdGFTdHJlYW0gJiwgUVN0 cmluZ0xpc3QmICk7CmV4dGVybiBRRGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggUURhdGFTdHJlYW0g JiwgY29uc3QgUVN0cmluZ0xpc3QmICk7CiMgMzggIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUv cW9iamVjdC5oIiAyIDMKCgoKCgpjbGFzcyBRTWV0YU9iamVjdDsKY2xhc3MgUVZhcmlhbnQ7CgoK CmNsYXNzIFFPYmplY3Q6IHB1YmxpYyBRdAp7CgoKcHVibGljOgogICAgUU9iamVjdCggUU9iamVj dCAqcGFyZW50PTAsIGNvbnN0IGNoYXIgKm5hbWU9MCApOwogICAgdmlydHVhbCB+UU9iamVjdCgp OwoKICAgIHN0YXRpYyBRU3RyaW5nIHRyKCBjb25zdCBjaGFyICogKTsKICAgIHN0YXRpYyBRU3Ry aW5nIHRyKCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiApOwoKICAgIHZpcnR1YWwgYm9vbCBl dmVudCggUUV2ZW50ICogKTsKICAgIHZpcnR1YWwgYm9vbCBldmVudEZpbHRlciggUU9iamVjdCAq LCBRRXZlbnQgKiApOwoKICAgIHZpcnR1YWwgUU1ldGFPYmplY3QgKm1ldGFPYmplY3QoKSBjb25z dCB7IHJldHVybiBzdGF0aWNNZXRhT2JqZWN0KCk7IH0KICAgIHZpcnR1YWwgY29uc3QgY2hhciAq Y2xhc3NOYW1lKCkgY29uc3Q7CgogICAgYm9vbCBpc0EoIGNvbnN0IGNoYXIgKiApIGNvbnN0Owog ICAgYm9vbCBpbmhlcml0cyggY29uc3QgY2hhciAqICkgY29uc3Q7CgogICAgY29uc3QgY2hhciAq bmFtZSgpIGNvbnN0OwogICAgY29uc3QgY2hhciAqbmFtZSggY29uc3QgY2hhciAqIGRlZmF1bHRO YW1lICkgY29uc3Q7CgogICAgdmlydHVhbCB2b2lkIHNldE5hbWUoIGNvbnN0IGNoYXIgKm5hbWUg KTsKICAgIGJvb2wgaXNXaWRnZXRUeXBlKCkgY29uc3QgeyByZXR1cm4gaXNXaWRnZXQ7IH0KICAg IGJvb2wgaGlnaFByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4gRkFMU0U7IH0KCiAgICBib29sIHNp Z25hbHNCbG9ja2VkKCkgY29uc3QgeyByZXR1cm4gYmxvY2tTaWc7IH0KICAgIHZvaWQgYmxvY2tT aWduYWxzKCBib29sIGIgKTsKCiAgICBpbnQgc3RhcnRUaW1lciggaW50IGludGVydmFsICk7CiAg ICB2b2lkIGtpbGxUaW1lciggaW50IGlkICk7CiAgICB2b2lkIGtpbGxUaW1lcnMoKTsKCiAgICBR T2JqZWN0ICpjaGlsZCggY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqdHlwZSA9IDAgKTsK ICAgIGNvbnN0IFFPYmplY3RMaXN0ICpjaGlsZHJlbigpIGNvbnN0IHsgcmV0dXJuIGNoaWxkT2Jq ZWN0czsgfQoKICAgIHN0YXRpYyBjb25zdCBRT2JqZWN0TGlzdCAqb2JqZWN0VHJlZXMoKTsKCgog ICAgUU9iamVjdExpc3QgKnF1ZXJ5TGlzdCggY29uc3QgY2hhciAqaW5oZXJpdHNDbGFzcyA9IDAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpvYmpOYW1lID0g MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgcmVnZXhwTWF0Y2ggPSBU UlVFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCByZWN1cnNpdmVTZWFy Y2ggPSBUUlVFICk7CgogICAgdmlydHVhbCB2b2lkIGluc2VydENoaWxkKCBRT2JqZWN0ICogKTsK ICAgIHZpcnR1YWwgdm9pZCByZW1vdmVDaGlsZCggUU9iamVjdCAqICk7CgogICAgdm9pZCBpbnN0 YWxsRXZlbnRGaWx0ZXIoIGNvbnN0IFFPYmplY3QgKiApOwogICAgdm9pZCByZW1vdmVFdmVudEZp bHRlciggY29uc3QgUU9iamVjdCAqICk7CgogICAgc3RhdGljIGJvb2wgY29ubmVjdCggY29uc3Qg UU9iamVjdCAqc2VuZGVyLCBjb25zdCBjaGFyICpzaWduYWwsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgUU9iamVjdCAqcmVjZWl2ZXIsIGNvbnN0IGNoYXIgKm1lbWJlciApOwogICAg Ym9vbCBjb25uZWN0KCBjb25zdCBRT2JqZWN0ICpzZW5kZXIsIGNvbnN0IGNoYXIgKnNpZ25hbCwK ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICptZW1iZXIgKSBjb25zdDsKICAg IHN0YXRpYyBib29sIGRpc2Nvbm5lY3QoIGNvbnN0IFFPYmplY3QgKnNlbmRlciwgY29uc3QgY2hh ciAqc2lnbmFsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFPYmplY3QgKnJl Y2VpdmVyLCBjb25zdCBjaGFyICptZW1iZXIgKTsKICAgIGJvb2wgZGlzY29ubmVjdCggY29uc3Qg Y2hhciAqc2lnbmFsPTAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUU9iamVj dCAqcmVjZWl2ZXI9MCwgY29uc3QgY2hhciAqbWVtYmVyPTAgKTsKICAgIGJvb2wgZGlzY29ubmVj dCggY29uc3QgUU9iamVjdCAqcmVjZWl2ZXIsIGNvbnN0IGNoYXIgKm1lbWJlcj0wICk7CgogICAg dm9pZCBkdW1wT2JqZWN0VHJlZSgpOwogICAgdm9pZCBkdW1wT2JqZWN0SW5mbygpOwoKCiAgICBi b29sIHNldFByb3BlcnR5KCBjb25zdCBjaGFyICpuYW1lLCBjb25zdCBRVmFyaWFudCYgdmFsdWUg KTsKICAgIFFWYXJpYW50IHByb3BlcnR5KCBjb25zdCBjaGFyICpuYW1lICkgY29uc3Q7CgoKcHJv dGVjdGVkOgogICAgdm9pZCBkZXN0cm95ZWQoKTsKCnB1YmxpYzoKICAgIFFPYmplY3QgKnBhcmVu dCgpIGNvbnN0IHsgcmV0dXJuIHBhcmVudE9iajsgfQoKcHJpdmF0ZToKICAgIHZvaWQgY2xlYW51 cEV2ZW50RmlsdGVyKCk7Cgpwcm90ZWN0ZWQ6CiAgICBib29sIGFjdGl2YXRlX2ZpbHRlcnMoIFFF dmVudCAqICk7CiAgICBRQ29ubmVjdGlvbkxpc3QgKnJlY2VpdmVycyggY29uc3QgY2hhciAqc2ln bmFsICkgY29uc3Q7CiAgICB2b2lkIGFjdGl2YXRlX3NpZ25hbCggY29uc3QgY2hhciAqc2lnbmFs ICk7CiAgICB2b2lkIGFjdGl2YXRlX3NpZ25hbCggY29uc3QgY2hhciAqc2lnbmFsLCBzaG9ydCAp OwogICAgdm9pZCBhY3RpdmF0ZV9zaWduYWwoIGNvbnN0IGNoYXIgKnNpZ25hbCwgaW50ICk7CiAg ICB2b2lkIGFjdGl2YXRlX3NpZ25hbCggY29uc3QgY2hhciAqc2lnbmFsLCBsb25nICk7CiAgICB2 b2lkIGFjdGl2YXRlX3NpZ25hbCggY29uc3QgY2hhciAqc2lnbmFsLCBjb25zdCBjaGFyICogKTsK ICAgIHZvaWQgYWN0aXZhdGVfc2lnbmFsX2Jvb2woIGNvbnN0IGNoYXIgKnNpZ25hbCwgYm9vbCAp OwogICAgdm9pZCBhY3RpdmF0ZV9zaWduYWxfc3RyaW5nKCBjb25zdCBjaGFyICpzaWduYWwsIFFT dHJpbmcgKTsKICAgIHZvaWQgYWN0aXZhdGVfc2lnbmFsX3N0cnJlZiggY29uc3QgY2hhciAqc2ln bmFsLCBjb25zdCBRU3RyaW5nICYgKTsKCiAgICBjb25zdCBRT2JqZWN0ICpzZW5kZXIoKTsKCgog ICAgdmlydHVhbCB2b2lkIGluaXRNZXRhT2JqZWN0KCk7CiAgICBzdGF0aWMgUU1ldGFPYmplY3Qq IHN0YXRpY01ldGFPYmplY3QoKTsKCiAgICB2aXJ0dWFsIHZvaWQgdGltZXJFdmVudCggUVRpbWVy RXZlbnQgKiApOwogICAgdmlydHVhbCB2b2lkIGNoaWxkRXZlbnQoIFFDaGlsZEV2ZW50ICogKTsK CiAgICB2aXJ0dWFsIHZvaWQgY29ubmVjdE5vdGlmeSggY29uc3QgY2hhciAqc2lnbmFsICk7CiAg ICB2aXJ0dWFsIHZvaWQgZGlzY29ubmVjdE5vdGlmeSggY29uc3QgY2hhciAqc2lnbmFsICk7CiAg ICB2aXJ0dWFsIGJvb2wgY2hlY2tDb25uZWN0QXJncyggY29uc3QgY2hhciAqc2lnbmFsLCBjb25z dCBRT2JqZWN0ICpyZWNlaXZlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICptZW1iZXIgKTsKICAgIHN0YXRpYyBRQ1N0cmluZyBub3JtYWxpemVTaWduYWxT bG90KCBjb25zdCBjaGFyICpzaWduYWxTbG90ICk7CgogICAgc3RhdGljIHZvaWQgYmFkU3VwZXJj bGFzc1dhcm5pbmcoIGNvbnN0IGNoYXIgKmNsYXNzTmFtZSwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc3VwZXJjbGFzc05hbWUgKTsKCnByaXZhdGU6 CiAgICB1aW50IGlzU2lnbmFsIDogMTsKICAgIHVpbnQgaXNXaWRnZXQgOiAxOwogICAgdWludCBw ZW5kVGltZXIgOiAxOwogICAgdWludCBwZW5kRXZlbnQgOiAxOwogICAgdWludCBibG9ja1NpZyA6 IDE7CiAgICB1aW50IHdhc0RlbGV0ZWQgOiAxOwogICAgdWludCBpc1RyZWUgOiAxOwoKICAgIFFN ZXRhT2JqZWN0ICpxdWVyeU1ldGFPYmplY3QoKSBjb25zdDsKICAgIHN0YXRpYyBRTWV0YU9iamVj dCAqbWV0YU9iajsKICAgIGNvbnN0IGNoYXIgKm9iam5hbWU7CiAgICBRT2JqZWN0ICpwYXJlbnRP Ymo7CiAgICBRT2JqZWN0TGlzdCAqY2hpbGRPYmplY3RzOwogICAgUVNpZ25hbERpY3QgKmNvbm5l Y3Rpb25zOwogICAgUU9iamVjdExpc3QgKnNlbmRlck9iamVjdHM7CiAgICBRT2JqZWN0TGlzdCAq ZXZlbnRGaWx0ZXJzOwoKCiAgICBRT2JqZWN0ICpzaWdTZW5kZXI7CgogICAgZnJpZW5kIGNsYXNz IFFBcHBsaWNhdGlvbjsKICAgIGZyaWVuZCBjbGFzcyBRQmFzZUFwcGxpY2F0aW9uOwogICAgZnJp ZW5kIGNsYXNzIFFXaWRnZXQ7CiAgICBmcmllbmQgY2xhc3MgUVNpZ25hbDsKICAgIGZyaWVuZCBj bGFzcyBRU2VuZGVyT2JqZWN0OwoKcHJpdmF0ZToKCiAgICBRT2JqZWN0KCBjb25zdCBRT2JqZWN0 ICYgKTsKICAgIFFPYmplY3QgJm9wZXJhdG9yPSggY29uc3QgUU9iamVjdCAmICk7CgoKcHVibGlj OgoKCiAgICBRU3RyaW5nTGlzdCBzdXBlckNsYXNzZXMoIGJvb2wgaW5jbHVkZVRoaXMgPSBGQUxT RSApIGNvbnN0OwoKfTsKCgoKaW5saW5lIGJvb2wgUU9iamVjdDo6Y29ubmVjdCggY29uc3QgUU9i amVjdCAqc2VuZGVyLCBjb25zdCBjaGFyICpzaWduYWwsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgKm1lbWJlciApIGNvbnN0CnsKICAgIHJldHVybiBjb25uZWN0KCBz ZW5kZXIsIHNpZ25hbCwgdGhpcywgbWVtYmVyICk7Cn0KCmlubGluZSBib29sIFFPYmplY3Q6OmRp c2Nvbm5lY3QoIGNvbnN0IGNoYXIgKnNpZ25hbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgUU9iamVjdCAqcmVjZWl2ZXIsIGNvbnN0IGNoYXIgKm1lbWJlciApCnsKICAg IHJldHVybiBkaXNjb25uZWN0KCB0aGlzLCBzaWduYWwsIHJlY2VpdmVyLCBtZW1iZXIgKTsKfQoK aW5saW5lIGJvb2wgUU9iamVjdDo6ZGlzY29ubmVjdCggY29uc3QgUU9iamVjdCAqcmVjZWl2ZXIs IGNvbnN0IGNoYXIgKm1lbWJlciApCnsKICAgIHJldHVybiBkaXNjb25uZWN0KCB0aGlzLCAwLCBy ZWNlaXZlciwgbWVtYmVyICk7Cn0KCmlubGluZSBjb25zdCBRT2JqZWN0ICpRT2JqZWN0OjpzZW5k ZXIoKQp7CiAgICByZXR1cm4gc2lnU2VuZGVyOwp9CgoKY2xhc3MgUVNlbmRlck9iamVjdCA6IHB1 YmxpYyBRT2JqZWN0CnsKcHVibGljOgogICAgdm9pZCBzZXRTZW5kZXIoIFFPYmplY3QgKnMgKSB7 IHNpZ1NlbmRlcj1zOyB9Cn07CgojIDM0ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3F3aWRn ZXQuaCIgMiAzCgojIDQxICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FwYWludGRldmljZS5o IiAxIDMKY2xhc3MgUUlPRGV2aWNlOwpjbGFzcyBRU3RyaW5nOwoKCgpzdHJ1Y3QgUVBhaW50RGV2 aWNlWDExRGF0YTsKCgp1bmlvbiBRUERldkNtZFBhcmFtIHsKICAgIGludCBpdmFsOwogICAgaW50 ICppdmVjOwogICAgUVN0cmluZyAqc3RyOwogICAgY29uc3QgUVBvaW50ICpwb2ludDsKICAgIGNv bnN0IFFSZWN0ICpyZWN0OwogICAgY29uc3QgUVBvaW50QXJyYXkgKnB0YXJyOwogICAgY29uc3Qg UVBpeG1hcCAqcGl4bWFwOwogICAgY29uc3QgUUltYWdlICppbWFnZTsKICAgIGNvbnN0IFFDb2xv ciAqY29sb3I7CiAgICBjb25zdCBRRm9udCAqZm9udDsKICAgIGNvbnN0IFFQZW4gKnBlbjsKICAg IGNvbnN0IFFCcnVzaCAqYnJ1c2g7CiAgICBjb25zdCBRUmVnaW9uICpyZ247CiAgICBjb25zdCBR V01hdHJpeCAqbWF0cml4OwogICAgUUlPRGV2aWNlICpkZXZpY2U7Cn07CgoKCmNsYXNzIFFQYWlu dERldmljZQp7CnB1YmxpYzoKICAgIHZpcnR1YWwgflFQYWludERldmljZSgpOwoKICAgIGludCBk ZXZUeXBlKCkgY29uc3Q7CiAgICBib29sIGlzRXh0RGV2KCkgY29uc3Q7CiAgICBib29sIHBhaW50 aW5nQWN0aXZlKCkgY29uc3Q7CgoKCgoKCiAgICBIQU5ETEUgaGFuZGxlKCkgY29uc3Q7CgoKCgoK CgogICAgRGlzcGxheSAqeDExRGlzcGxheSgpIGNvbnN0OwogICAgaW50IHgxMVNjcmVlbigpIGNv bnN0OwogICAgaW50IHgxMURlcHRoKCkgY29uc3Q7CiAgICBpbnQgeDExQ2VsbHMoKSBjb25zdDsK ICAgIEhBTkRMRSB4MTFDb2xvcm1hcCgpIGNvbnN0OwogICAgYm9vbCB4MTFEZWZhdWx0Q29sb3Jt YXAoKSBjb25zdDsKICAgIHZvaWQgKngxMVZpc3VhbCgpIGNvbnN0OwogICAgYm9vbCB4MTFEZWZh dWx0VmlzdWFsKCkgY29uc3Q7CgogICAgc3RhdGljIERpc3BsYXkgKngxMUFwcERpc3BsYXkoKTsK ICAgIHN0YXRpYyBpbnQgeDExQXBwU2NyZWVuKCk7CiAgICBzdGF0aWMgaW50IHgxMUFwcERlcHRo KCk7CiAgICBzdGF0aWMgaW50IHgxMUFwcENlbGxzKCk7CiAgICBzdGF0aWMgaW50IHgxMUFwcERw aVgoKTsKICAgIHN0YXRpYyBpbnQgeDExQXBwRHBpWSgpOwogICAgc3RhdGljIEhBTkRMRSB4MTFB cHBDb2xvcm1hcCgpOwogICAgc3RhdGljIGJvb2wgeDExQXBwRGVmYXVsdENvbG9ybWFwKCk7CiAg ICBzdGF0aWMgdm9pZCAqeDExQXBwVmlzdWFsKCk7CiAgICBzdGF0aWMgYm9vbCB4MTFBcHBEZWZh dWx0VmlzdWFsKCk7CiAgICBzdGF0aWMgdm9pZCB4MTFTZXRBcHBEcGlYKGludCk7CiAgICBzdGF0 aWMgdm9pZCB4MTFTZXRBcHBEcGlZKGludCk7CiMgMTIxICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNs dWRlL3FwYWludGRldmljZS5oIiAzCiAgICBlbnVtIFBEZXZDbWQgewogICAgICAgIFBkY05PUCA9 IDAsCiAgICAgICAgUGRjRHJhd1BvaW50ID0gMSwKICAgICAgICBQZGNEcmF3Rmlyc3QgPSBQZGNE cmF3UG9pbnQsCiAgICAgICAgUGRjTW92ZVRvID0gMiwKICAgICAgICBQZGNMaW5lVG8gPSAzLAog ICAgICAgIFBkY0RyYXdMaW5lID0gNCwKICAgICAgICBQZGNEcmF3UmVjdCA9IDUsCiAgICAgICAg UGRjRHJhd1JvdW5kUmVjdCA9IDYsCiAgICAgICAgUGRjRHJhd0VsbGlwc2UgPSA3LAogICAgICAg IFBkY0RyYXdBcmMgPSA4LAogICAgICAgIFBkY0RyYXdQaWUgPSA5LAogICAgICAgIFBkY0RyYXdD aG9yZCA9IDEwLAogICAgICAgIFBkY0RyYXdMaW5lU2VnbWVudHMgPSAxMSwKICAgICAgICBQZGNE cmF3UG9seWxpbmUgPSAxMiwKICAgICAgICBQZGNEcmF3UG9seWdvbiA9IDEzLAogICAgICAgIFBk Y0RyYXdRdWFkQmV6aWVyID0gMTQsCiAgICAgICAgUGRjRHJhd1RleHQgPSAxNSwKICAgICAgICBQ ZGNEcmF3VGV4dEZvcm1hdHRlZCA9IDE2LAogICAgICAgIFBkY0RyYXdQaXhtYXAgPSAxNywKICAg ICAgICBQZGNEcmF3SW1hZ2UgPSAxOCwKICAgICAgICBQZGNEcmF3VGV4dDIgPSAxOSwKICAgICAg ICBQZGNEcmF3VGV4dDJGb3JtYXR0ZWQgPSAyMCwKICAgICAgICBQZGNEcmF3TGFzdCA9IFBkY0Ry YXdUZXh0MkZvcm1hdHRlZCwKCgoKICAgICAgICBQZGNCZWdpbiA9IDMwLAogICAgICAgIFBkY0Vu ZCA9IDMxLAogICAgICAgIFBkY1NhdmUgPSAzMiwKICAgICAgICBQZGNSZXN0b3JlID0gMzMsCiAg ICAgICAgUGRjU2V0ZGV2ID0gMzQsCiAgICAgICAgUGRjU2V0QmtDb2xvciA9IDQwLAogICAgICAg IFBkY1NldEJrTW9kZSA9IDQxLAogICAgICAgIFBkY1NldFJPUCA9IDQyLAogICAgICAgIFBkY1Nl dEJydXNoT3JpZ2luID0gNDMsCiAgICAgICAgUGRjU2V0Rm9udCA9IDQ1LAogICAgICAgIFBkY1Nl dFBlbiA9IDQ2LAogICAgICAgIFBkY1NldEJydXNoID0gNDcsCiAgICAgICAgUGRjU2V0VGFiU3Rv cHMgPSA0OCwKICAgICAgICBQZGNTZXRUYWJBcnJheSA9IDQ5LAogICAgICAgIFBkY1NldFVuaXQg PSA1MCwKICAgICAgICBQZGNTZXRWWGZvcm0gPSA1MSwKICAgICAgICBQZGNTZXRXaW5kb3cgPSA1 MiwKICAgICAgICBQZGNTZXRWaWV3cG9ydCA9IDUzLAogICAgICAgIFBkY1NldFdYZm9ybSA9IDU0 LAogICAgICAgIFBkY1NldFdNYXRyaXggPSA1NSwKICAgICAgICBQZGNTYXZlV01hdHJpeCA9IDU2 LAogICAgICAgIFBkY1Jlc3RvcmVXTWF0cml4ID0gNTcsCiAgICAgICAgUGRjU2V0Q2xpcCA9IDYw LAogICAgICAgIFBkY1NldENsaXBSZWdpb24gPSA2MSwKCiAgICAgICAgUGRjUmVzZXJ2ZWRTdGFy dCA9IDAsCiAgICAgICAgUGRjUmVzZXJ2ZWRTdG9wID0gMTk5CiAgICB9OwoKcHJvdGVjdGVkOgog ICAgUVBhaW50RGV2aWNlKCB1aW50IGRldmZsYWdzICk7CgoKCgogICAgSEFORExFIGhkOwogICAg dm9pZCBjb3B5WDExRGF0YSggY29uc3QgUVBhaW50RGV2aWNlICogKTsKICAgIHZpcnR1YWwgdm9p ZCBzZXRYMTFEYXRhKCBjb25zdCBRUGFpbnREZXZpY2VYMTFEYXRhKiApOwogICAgUVBhaW50RGV2 aWNlWDExRGF0YSogZ2V0WDExRGF0YSggYm9vbCBkZWY9RkFMU0UgKSBjb25zdDsKCgoKCgoKCiAg ICB2aXJ0dWFsIGJvb2wgY21kKCBpbnQsIFFQYWludGVyICosIFFQRGV2Q21kUGFyYW0gKiApOwog ICAgdmlydHVhbCBpbnQgbWV0cmljKCBpbnQgKSBjb25zdDsKICAgIHZpcnR1YWwgaW50IGZvbnRN ZXQoIFFGb250ICosIGludCwgY29uc3QgY2hhciAqID0gMCwgaW50ID0gMCApIGNvbnN0OwogICAg dmlydHVhbCBpbnQgZm9udEluZiggUUZvbnQgKiwgaW50ICkgY29uc3Q7CgogICAgdXNob3J0IGRl dkZsYWdzOwogICAgdXNob3J0IHBhaW50ZXJzOwoKICAgIGZyaWVuZCBjbGFzcyBRUGFpbnRlcjsK ICAgIGZyaWVuZCBjbGFzcyBRUGFpbnREZXZpY2VNZXRyaWNzOwogICAgZnJpZW5kIHZvaWQgYml0 Qmx0KCBRUGFpbnREZXZpY2UgKiwgaW50LCBpbnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IFFQYWludERldmljZSAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpbnQsIGludCwgaW50LCBpbnQsIFF0OjpSYXN0ZXJPcCwgYm9vbCApOwoKICAgIGZyaWVu ZCB2b2lkIHF0X2luaXRfaW50ZXJuYWwoIGludCAqLCBjaGFyICoqLCBEaXNwbGF5ICogKTsKCgpw cml2YXRlOgoKICAgIHN0YXRpYyBEaXNwbGF5ICp4X2FwcGRpc3BsYXk7CiAgICBzdGF0aWMgaW50 IHhfYXBwc2NyZWVuOwogICAgc3RhdGljIGludCB4X2FwcGRlcHRoOwogICAgc3RhdGljIGludCB4 X2FwcGNlbGxzOwogICAgc3RhdGljIEhBTkRMRSB4X2FwcGNvbG9ybWFwOwogICAgc3RhdGljIGJv b2wgeF9hcHBkZWZjb2xvcm1hcDsKICAgIHN0YXRpYyB2b2lkICp4X2FwcHZpc3VhbDsKICAgIHN0 YXRpYyBib29sIHhfYXBwZGVmdmlzdWFsOwoKICAgIFFQYWludERldmljZVgxMURhdGEqIHgxMURh dGE7CgoKcHJpdmF0ZToKCiAgICBRUGFpbnREZXZpY2UoIGNvbnN0IFFQYWludERldmljZSAmICk7 CiAgICBRUGFpbnREZXZpY2UgJm9wZXJhdG9yPSggY29uc3QgUVBhaW50RGV2aWNlICYgKTsKCn07 CgoKCnZvaWQgYml0Qmx0KCBRUGFpbnREZXZpY2UgKmRzdCwgaW50IGR4LCBpbnQgZHksCiAgICAg ICAgICAgICBjb25zdCBRUGFpbnREZXZpY2UgKnNyYywgaW50IHN4PTAsIGludCBzeT0wLCBpbnQg c3c9LTEsIGludCBzaD0tMSwKICAgICAgICAgICAgIFF0OjpSYXN0ZXJPcCA9IFF0OjpDb3B5Uk9Q LCBib29sIGlnbm9yZU1hc2s9RkFMU0UgKTsKCgp2b2lkIGJpdEJsdCggUVBhaW50RGV2aWNlICpk c3QsIGludCBkeCwgaW50IGR5LAogICAgICAgICAgICAgY29uc3QgUUltYWdlICpzcmMsIGludCBz eD0wLCBpbnQgc3k9MCwgaW50IHN3PS0xLCBpbnQgc2g9LTEsCiAgICAgICAgICAgICBpbnQgY29u dmVyc2lvbl9mbGFncz0wICk7CgoKCgpzdHJ1Y3QgUVBhaW50RGV2aWNlWDExRGF0YSB7CiAgICBE aXNwbGF5KiB4X2Rpc3BsYXk7CiAgICBpbnQgeF9zY3JlZW47CiAgICBpbnQgeF9kZXB0aDsKICAg IGludCB4X2NlbGxzOwogICAgSEFORExFIHhfY29sb3JtYXA7CiAgICBib29sIHhfZGVmY29sb3Jt YXA7CiAgICB2b2lkKiB4X3Zpc3VhbDsKICAgIGJvb2wgeF9kZWZ2aXN1YWw7Cn07CgoKCgoKCgpp bmxpbmUgaW50IFFQYWludERldmljZTo6ZGV2VHlwZSgpIGNvbnN0CnsgcmV0dXJuIGRldkZsYWdz ICYgUUludGVybmFsOjpEZXZpY2VUeXBlTWFzazsgfQoKaW5saW5lIGJvb2wgUVBhaW50RGV2aWNl Ojppc0V4dERldigpIGNvbnN0CnsgcmV0dXJuIChkZXZGbGFncyAmIFFJbnRlcm5hbDo6RXh0ZXJu YWxEZXZpY2UpICE9IDA7IH0KCmlubGluZSBib29sIFFQYWludERldmljZTo6cGFpbnRpbmdBY3Rp dmUoKSBjb25zdAp7IHJldHVybiBwYWludGVycyAhPSAwOyB9CgoKCgppbmxpbmUgSEFORExFIFFQ YWludERldmljZTo6aGFuZGxlKCkgY29uc3QgeyByZXR1cm4gaGQ7IH0KCgoKaW5saW5lIERpc3Bs YXkgKlFQYWludERldmljZTo6eDExRGlzcGxheSgpIGNvbnN0CnsgcmV0dXJuIHgxMURhdGEgPyB4 MTFEYXRhLT54X2Rpc3BsYXkgOiB4X2FwcGRpc3BsYXk7IH0KCmlubGluZSBpbnQgUVBhaW50RGV2 aWNlOjp4MTFTY3JlZW4oKSBjb25zdAp7IHJldHVybiB4MTFEYXRhID8geDExRGF0YS0+eF9zY3Jl ZW4gOiB4X2FwcHNjcmVlbjsgfQoKaW5saW5lIGludCBRUGFpbnREZXZpY2U6OngxMURlcHRoKCkg Y29uc3QKeyByZXR1cm4geDExRGF0YSA/IHgxMURhdGEtPnhfZGVwdGggOiB4X2FwcGRlcHRoOyB9 CgppbmxpbmUgaW50IFFQYWludERldmljZTo6eDExQ2VsbHMoKSBjb25zdAp7IHJldHVybiB4MTFE YXRhID8geDExRGF0YS0+eF9jZWxscyA6IHhfYXBwY2VsbHM7IH0KCmlubGluZSBIQU5ETEUgUVBh aW50RGV2aWNlOjp4MTFDb2xvcm1hcCgpIGNvbnN0CnsgcmV0dXJuIHgxMURhdGEgPyB4MTFEYXRh LT54X2NvbG9ybWFwIDogeF9hcHBjb2xvcm1hcDsgfQoKaW5saW5lIGJvb2wgUVBhaW50RGV2aWNl Ojp4MTFEZWZhdWx0Q29sb3JtYXAoKSBjb25zdAp7IHJldHVybiB4MTFEYXRhID8geDExRGF0YS0+ eF9kZWZjb2xvcm1hcCA6IHhfYXBwZGVmY29sb3JtYXA7IH0KCmlubGluZSB2b2lkICpRUGFpbnRE ZXZpY2U6OngxMVZpc3VhbCgpIGNvbnN0CnsgcmV0dXJuIHgxMURhdGEgPyB4MTFEYXRhLT54X3Zp c3VhbCA6IHhfYXBwdmlzdWFsOyB9CgppbmxpbmUgYm9vbCBRUGFpbnREZXZpY2U6OngxMURlZmF1 bHRWaXN1YWwoKSBjb25zdAp7IHJldHVybiB4MTFEYXRhID8geDExRGF0YS0+eF9kZWZ2aXN1YWwg OiB4X2FwcGRlZnZpc3VhbDsgfQoKaW5saW5lIERpc3BsYXkgKlFQYWludERldmljZTo6eDExQXBw RGlzcGxheSgpCnsgcmV0dXJuIHhfYXBwZGlzcGxheTsgfQoKaW5saW5lIGludCBRUGFpbnREZXZp Y2U6OngxMUFwcFNjcmVlbigpCnsgcmV0dXJuIHhfYXBwc2NyZWVuOyB9CgppbmxpbmUgaW50IFFQ YWludERldmljZTo6eDExQXBwRGVwdGgoKQp7IHJldHVybiB4X2FwcGRlcHRoOyB9CgppbmxpbmUg aW50IFFQYWludERldmljZTo6eDExQXBwQ2VsbHMoKQp7IHJldHVybiB4X2FwcGNlbGxzOyB9Cgpp bmxpbmUgSEFORExFIFFQYWludERldmljZTo6eDExQXBwQ29sb3JtYXAoKQp7IHJldHVybiB4X2Fw cGNvbG9ybWFwOyB9CgppbmxpbmUgYm9vbCBRUGFpbnREZXZpY2U6OngxMUFwcERlZmF1bHRDb2xv cm1hcCgpCnsgcmV0dXJuIHhfYXBwZGVmY29sb3JtYXA7IH0KCmlubGluZSB2b2lkICpRUGFpbnRE ZXZpY2U6OngxMUFwcFZpc3VhbCgpCnsgcmV0dXJuIHhfYXBwdmlzdWFsOyB9CgppbmxpbmUgYm9v bCBRUGFpbnREZXZpY2U6OngxMUFwcERlZmF1bHRWaXN1YWwoKQp7IHJldHVybiB4X2FwcGRlZnZp c3VhbDsgfQoKCgoKaW5saW5lIHZvaWQgYml0Qmx0KCBRUGFpbnREZXZpY2UgKmRzdCwgY29uc3Qg UVBvaW50ICZkcCwKICAgICAgICAgICAgICAgICAgICBjb25zdCBRUGFpbnREZXZpY2UgKnNyYywg Y29uc3QgUVJlY3QgJnNyID1RUmVjdCgwLDAsLTEsLTEpLAogICAgICAgICAgICAgICAgICAgIFF0 OjpSYXN0ZXJPcCByb3A9UXQ6OkNvcHlST1AsIGJvb2wgaWdub3JlTWFzaz1GQUxTRSApCnsKICAg IGJpdEJsdCggZHN0LCBkcC54KCksIGRwLnkoKSwgc3JjLCBzci54KCksIHNyLnkoKSwgc3Iud2lk dGgoKSwgc3IuaGVpZ2h0KCksCiAgICAgICAgICAgIHJvcCwgaWdub3JlTWFzayApOwp9CgoKCgoj IDM1ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3F3aWRnZXQuaCIgMiAzCgojIDM0ICIvdXNy L2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FwYWxldHRlLmgiIDEgMwojIDM1ICIvdXNyL2xpYi9xdC0y LjIuMC9pbmNsdWRlL3Fjb2xvci5oIiAxIDMKY29uc3QgUVJnYiBSR0JfRElSVFkgPSAweDgwMDAw MDAwOwpjb25zdCBRUmdiIFJHQl9JTlZBTElEID0gMHg0MDAwMDAwMDsKY29uc3QgUVJnYiBSR0Jf RElSRUNUID0gMHgyMDAwMDAwMDsKY29uc3QgUVJnYiBSR0JfTUFTSyA9IDB4MDBmZmZmZmY7CgoK IGlubGluZSBpbnQgcVJlZCggUVJnYiByZ2IgKQp7IHJldHVybiAoaW50KSgocmdiID4+IDE2KSAm IDB4ZmYpOyB9CgogaW5saW5lIGludCBxR3JlZW4oIFFSZ2IgcmdiICkKeyByZXR1cm4gKGludCko KHJnYiA+PiA4KSAmIDB4ZmYpOyB9CgogaW5saW5lIGludCBxQmx1ZSggUVJnYiByZ2IgKQp7IHJl dHVybiAoaW50KShyZ2IgJiAweGZmKTsgfQoKIGlubGluZSBpbnQgcUFscGhhKCBRUmdiIHJnYiAp CnsgcmV0dXJuIChpbnQpKChyZ2IgPj4gMjQpICYgMHhmZik7IH0KCiBpbmxpbmUgUVJnYiBxUmdi KCBpbnQgciwgaW50IGcsIGludCBiICkKeyByZXR1cm4gKDB4ZmYgPDwgMjQpIHwgKChyICYgMHhm ZikgPDwgMTYpIHwgKChnICYgMHhmZikgPDwgOCkgfCAoYiAmIDB4ZmYpOyB9CgogaW5saW5lIFFS Z2IgcVJnYmEoIGludCByLCBpbnQgZywgaW50IGIsIGludCBhICkKeyByZXR1cm4gKChhICYgMHhm ZikgPDwgMjQpIHwgKChyICYgMHhmZikgPDwgMTYpIHwgKChnICYgMHhmZikgPDwgOCkgfCAoYiAm IDB4ZmYpOyB9CgogaW5saW5lIGludCBxR3JheSggaW50IHIsIGludCBnLCBpbnQgYiApCnsgcmV0 dXJuIChyKjExK2cqMTYrYio1KS8zMjsgfQoKIGlubGluZSBpbnQgcUdyYXkoIFFSZ2IgcmdiICkK eyByZXR1cm4gcUdyYXkoIHFSZWQocmdiKSwgcUdyZWVuKHJnYiksIHFCbHVlKHJnYikgKTsgfQoK CmNsYXNzIFFDb2xvcgp7CnB1YmxpYzoKICAgIGVudW0gU3BlYyB7IFJnYiwgSHN2IH07CgogICAg UUNvbG9yKCk7CiAgICBRQ29sb3IoIGludCByLCBpbnQgZywgaW50IGIgKTsKICAgIFFDb2xvcigg aW50IHgsIGludCB5LCBpbnQgeiwgU3BlYyApOwogICAgUUNvbG9yKCBRUmdiIHJnYiwgdWludCBw aXhlbD0weGZmZmZmZmZmKTsKICAgIFFDb2xvciggY29uc3QgUVN0cmluZyYgbmFtZSApOwogICAg UUNvbG9yKCBjb25zdCBjaGFyICpuYW1lICk7CiAgICBRQ29sb3IoIGNvbnN0IFFDb2xvciAmICk7 CiAgICBRQ29sb3IgJm9wZXJhdG9yPSggY29uc3QgUUNvbG9yICYgKTsKCiAgICBib29sIGlzVmFs aWQoKSBjb25zdDsKICAgIGJvb2wgaXNEaXJ0eSgpIGNvbnN0OwoKICAgIFFTdHJpbmcgbmFtZSgp IGNvbnN0OwogICAgdm9pZCBzZXROYW1lZENvbG9yKCBjb25zdCBRU3RyaW5nJiBuYW1lICk7Cgog ICAgdm9pZCByZ2IoIGludCAqciwgaW50ICpnLCBpbnQgKmIgKSBjb25zdDsKICAgIFFSZ2Igcmdi KCkgY29uc3Q7CiAgICB2b2lkIHNldFJnYiggaW50IHIsIGludCBnLCBpbnQgYiApOwogICAgdm9p ZCBzZXRSZ2IoIFFSZ2IgcmdiICk7CgogICAgaW50IHJlZCgpIGNvbnN0OwogICAgaW50IGdyZWVu KCkgY29uc3Q7CiAgICBpbnQgYmx1ZSgpIGNvbnN0OwoKICAgIHZvaWQgaHN2KCBpbnQgKmgsIGlu dCAqcywgaW50ICp2ICkgY29uc3Q7CiAgICB2b2lkIGdldEhzdiggaW50ICZoLCBpbnQgJnMsIGlu dCAmdiApIGNvbnN0OwogICAgdm9pZCBzZXRIc3YoIGludCBoLCBpbnQgcywgaW50IHYgKTsKCiAg ICBRQ29sb3IgbGlnaHQoIGludCBmID0gMTUwICkgY29uc3Q7CiAgICBRQ29sb3IgZGFyayggaW50 IGYgPSAyMDAgKSBjb25zdDsKCiAgICBib29sIG9wZXJhdG9yPT0oIGNvbnN0IFFDb2xvciAmYyAp IGNvbnN0OwogICAgYm9vbCBvcGVyYXRvciE9KCBjb25zdCBRQ29sb3IgJmMgKSBjb25zdDsKCiAg ICBzdGF0aWMgYm9vbCBsYXp5QWxsb2MoKTsKICAgIHN0YXRpYyB2b2lkIHNldExhenlBbGxvYygg Ym9vbCApOwogICAgdWludCBhbGxvYygpOwogICAgdWludCBwaXhlbCgpIGNvbnN0OwoKICAgIHN0 YXRpYyBpbnQgbWF4Q29sb3JzKCk7CiAgICBzdGF0aWMgaW50IG51bUJpdFBsYW5lcygpOwoKICAg IHN0YXRpYyBpbnQgZW50ZXJBbGxvY0NvbnRleHQoKTsKICAgIHN0YXRpYyB2b2lkIGxlYXZlQWxs b2NDb250ZXh0KCk7CiAgICBzdGF0aWMgaW50IGN1cnJlbnRBbGxvY0NvbnRleHQoKTsKICAgIHN0 YXRpYyB2b2lkIGRlc3Ryb3lBbGxvY0NvbnRleHQoIGludCApOwoKCgoKCgogICAgc3RhdGljIHZv aWQgaW5pdGlhbGl6ZSgpOwogICAgc3RhdGljIHZvaWQgY2xlYW51cCgpOwoKcHJpdmF0ZToKICAg IHZvaWQgc2V0U3lzdGVtTmFtZWRDb2xvciggY29uc3QgUVN0cmluZyYgbmFtZSApOwogICAgc3Rh dGljIHZvaWQgaW5pdEdsb2JhbENvbG9ycygpOwogICAgc3RhdGljIFFDb2xvciogZ2xvYmFsQ29s b3JzKCk7CiAgICBzdGF0aWMgYm9vbCBjb2xvcl9pbml0OwogICAgc3RhdGljIGJvb2wgZ2xvYmFs c19pbml0OwogICAgc3RhdGljIGJvb2wgbGF6eV9hbGxvYzsKCgoKICAgIHVpbnQgcGl4OwogICAg UVJnYiByZ2JWYWw7Cn07CgoKaW5saW5lIFFDb2xvcjo6UUNvbG9yKCkKeyByZ2JWYWwgPSBSR0Jf SU5WQUxJRDsgcGl4ID0gMDsgfQoKaW5saW5lIFFDb2xvcjo6UUNvbG9yKCBpbnQgciwgaW50IGcs IGludCBiICkKeyBzZXRSZ2IoIHIsIGcsIGIgKTsgfQoKaW5saW5lIGJvb2wgUUNvbG9yOjppc1Zh bGlkKCkgY29uc3QKeyByZXR1cm4gKHJnYlZhbCAmIFJHQl9JTlZBTElEKSA9PSAwOyB9Cgppbmxp bmUgYm9vbCBRQ29sb3I6OmlzRGlydHkoKSBjb25zdAp7IHJldHVybiAocmdiVmFsICYgUkdCX0RJ UlRZKSAhPSAwOyB9CgppbmxpbmUgUVJnYiBRQ29sb3I6OnJnYigpIGNvbnN0CnsgcmV0dXJuIHJn YlZhbCB8IH5SR0JfTUFTSzsgfQoKaW5saW5lIGludCBRQ29sb3I6OnJlZCgpIGNvbnN0CnsgcmV0 dXJuIHFSZWQocmdiVmFsKTsgfQoKaW5saW5lIGludCBRQ29sb3I6OmdyZWVuKCkgY29uc3QKeyBy ZXR1cm4gcUdyZWVuKHJnYlZhbCk7IH0KCmlubGluZSBpbnQgUUNvbG9yOjpibHVlKCkgY29uc3QK eyByZXR1cm4gcUJsdWUocmdiVmFsKTsgfQoKaW5saW5lIHVpbnQgUUNvbG9yOjpwaXhlbCgpIGNv bnN0CnsgcmV0dXJuIChyZ2JWYWwgJiBSR0JfRElSVFkpID09IDAgPyBwaXggOiAoKFFDb2xvciop dGhpcyktPmFsbG9jKCk7IH0KCmlubGluZSBib29sIFFDb2xvcjo6bGF6eUFsbG9jKCkKeyByZXR1 cm4gbGF6eV9hbGxvYzsgfQoKCmlubGluZSBib29sIFFDb2xvcjo6b3BlcmF0b3I9PSggY29uc3Qg UUNvbG9yICZjICkgY29uc3QKewogICAgcmV0dXJuIGlzVmFsaWQoKT09Yy5pc1ZhbGlkKCkgJiYK ICAgICAgICAoKCgocmdiVmFsIHwgYy5yZ2JWYWwpICYgUkdCX0RJUkVDVCkgPT0gMCAmJgogICAg ICAgICAgICAocmdiVmFsICYgUkdCX01BU0spID09IChjLnJnYlZhbCAmIFJHQl9NQVNLKSkgfHwK ICAgICAgICAgICAoKHJnYlZhbCAmIGMucmdiVmFsICYgUkdCX0RJUkVDVCkgIT0gMCAmJgogICAg ICAgICAgICAocmdiVmFsICYgUkdCX01BU0spID09IChjLnJnYlZhbCAmIFJHQl9NQVNLKSAmJiBw aXggPT0gYy5waXgpKTsKfQoKaW5saW5lIGJvb2wgUUNvbG9yOjpvcGVyYXRvciE9KCBjb25zdCBR Q29sb3IgJmMgKSBjb25zdAp7CiAgICByZXR1cm4gIW9wZXJhdG9yPT0oYyk7Cn0KCgoKCgoKCiBR RGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggUURhdGFTdHJlYW0gJiwgY29uc3QgUUNvbG9yICYgKTsK IFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+KCBRRGF0YVN0cmVhbSAmLCBRQ29sb3IgJiApOwojIDM0 ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FwYWxldHRlLmgiIDIgMwoKCiMgMzcgIi91c3Iv bGliL3F0LTIuMi4wL2luY2x1ZGUvcWJydXNoLmgiIDEgMwpjbGFzcyBRQnJ1c2g6IHB1YmxpYyBR dAp7CmZyaWVuZCBjbGFzcyBRUGFpbnRlcjsKcHVibGljOgogICAgUUJydXNoKCk7CiAgICBRQnJ1 c2goIEJydXNoU3R5bGUgKTsKICAgIFFCcnVzaCggY29uc3QgUUNvbG9yICYsIEJydXNoU3R5bGU9 U29saWRQYXR0ZXJuICk7CiAgICBRQnJ1c2goIGNvbnN0IFFDb2xvciAmLCBjb25zdCBRUGl4bWFw ICYgKTsKICAgIFFCcnVzaCggY29uc3QgUUJydXNoICYgKTsKICAgflFCcnVzaCgpOwogICAgUUJy dXNoICZvcGVyYXRvcj0oIGNvbnN0IFFCcnVzaCAmICk7CgogICAgQnJ1c2hTdHlsZSBzdHlsZSgp IGNvbnN0IHsgcmV0dXJuIGRhdGEtPnN0eWxlOyB9CiAgICB2b2lkIHNldFN0eWxlKCBCcnVzaFN0 eWxlICk7CiAgICBjb25zdCBRQ29sb3IgJmNvbG9yKCljb25zdCB7IHJldHVybiBkYXRhLT5jb2xv cjsgfQogICAgdm9pZCBzZXRDb2xvciggY29uc3QgUUNvbG9yICYgKTsKICAgIFFQaXhtYXAgKnBp eG1hcCgpIGNvbnN0IHsgcmV0dXJuIGRhdGEtPnBpeG1hcDsgfQogICAgdm9pZCBzZXRQaXhtYXAo IGNvbnN0IFFQaXhtYXAgJiApOwoKICAgIGJvb2wgb3BlcmF0b3I9PSggY29uc3QgUUJydXNoICZw ICkgY29uc3Q7CiAgICBib29sIG9wZXJhdG9yIT0oIGNvbnN0IFFCcnVzaCAmYiApIGNvbnN0CiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHJldHVybiAhKG9wZXJhdG9y PT0oYikpOyB9Cgpwcml2YXRlOgogICAgUUJydXNoIGNvcHkoKSBjb25zdDsKICAgIHZvaWQgZGV0 YWNoKCk7CiAgICB2b2lkIGluaXQoIGNvbnN0IFFDb2xvciAmLCBCcnVzaFN0eWxlICk7CiAgICBz dHJ1Y3QgUUJydXNoRGF0YSA6IHB1YmxpYyBRU2hhcmVkIHsKICAgICAgICBCcnVzaFN0eWxlIHN0 eWxlOwogICAgICAgIFFDb2xvciBjb2xvcjsKICAgICAgICBRUGl4bWFwICpwaXhtYXA7CiAgICB9 ICpkYXRhOwp9OwoKCgoKCgoKIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRRGF0YVN0cmVhbSAm LCBjb25zdCBRQnJ1c2ggJiApOwogUURhdGFTdHJlYW0gJm9wZXJhdG9yPj4oIFFEYXRhU3RyZWFt ICYsIFFCcnVzaCAmICk7CiMgMzYgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXBhbGV0dGUu aCIgMiAzCgoKCmNsYXNzIFFDb2xvckdyb3VwUHJpdmF0ZTsKCgpjbGFzcyBRQ29sb3JHcm91cAp7 CnB1YmxpYzoKICAgIFFDb2xvckdyb3VwKCk7CiAgICBRQ29sb3JHcm91cCggY29uc3QgUUNvbG9y ICZmb3JlZ3JvdW5kLCBjb25zdCBRQ29sb3IgJmJ1dHRvbiwKICAgICAgICAgICAgICAgICBjb25z dCBRQ29sb3IgJmxpZ2h0LCBjb25zdCBRQ29sb3IgJmRhcmssIGNvbnN0IFFDb2xvciAmbWlkLAog ICAgICAgICAgICAgICAgIGNvbnN0IFFDb2xvciAmdGV4dCwgY29uc3QgUUNvbG9yICZiYXNlICk7 CiAgICBRQ29sb3JHcm91cCggY29uc3QgUUJydXNoICZmb3JlZ3JvdW5kLCBjb25zdCBRQnJ1c2gg JmJ1dHRvbiwKICAgICAgICAgICAgICAgICBjb25zdCBRQnJ1c2ggJmxpZ2h0LCBjb25zdCBRQnJ1 c2ggJmRhcmssIGNvbnN0IFFCcnVzaCAmbWlkLAogICAgICAgICAgICAgICAgIGNvbnN0IFFCcnVz aCAmdGV4dCwgY29uc3QgUUJydXNoICZicmlnaHRfdGV4dCwKICAgICAgICAgICAgICAgICBjb25z dCBRQnJ1c2ggJmJhc2UsIGNvbnN0IFFCcnVzaCAmYmFja2dyb3VuZCk7CiAgICBRQ29sb3JHcm91 cCggY29uc3QgUUNvbG9yR3JvdXAgJiApOwoKICAgflFDb2xvckdyb3VwKCk7CgogICAgUUNvbG9y R3JvdXAmIG9wZXJhdG9yID0oY29uc3QgUUNvbG9yR3JvdXAmKTsKCgogICAgZW51bSBDb2xvclJv bGUgeyBGb3JlZ3JvdW5kLCBCdXR0b24sIExpZ2h0LCBNaWRsaWdodCwgRGFyaywgTWlkLAogICAg ICAgICAgICAgICAgICAgICBUZXh0LCBCcmlnaHRUZXh0LCBCdXR0b25UZXh0LCBCYXNlLCBCYWNr Z3JvdW5kLCBTaGFkb3csCiAgICAgICAgICAgICAgICAgICAgIEhpZ2hsaWdodCwgSGlnaGxpZ2h0 ZWRUZXh0LAogICAgICAgICAgICAgICAgICAgICBOQ29sb3JSb2xlcyB9OwoKICAgIGNvbnN0IFFD b2xvciAmY29sb3IoIENvbG9yUm9sZSApIGNvbnN0OwogICAgY29uc3QgUUJydXNoICZicnVzaCgg Q29sb3JSb2xlICkgY29uc3Q7CiAgICB2b2lkIHNldENvbG9yKCBDb2xvclJvbGUsIGNvbnN0IFFD b2xvciAmICk7CiAgICB2b2lkIHNldEJydXNoKCBDb2xvclJvbGUsIGNvbnN0IFFCcnVzaCAmICk7 CgogICAgY29uc3QgUUNvbG9yICZmb3JlZ3JvdW5kKCkgY29uc3QgeyByZXR1cm4gYnJbRm9yZWdy b3VuZF0uY29sb3IoKTsgfQogICAgY29uc3QgUUNvbG9yICZidXR0b24oKSBjb25zdCB7IHJldHVy biBicltCdXR0b25dLmNvbG9yKCk7IH0KICAgIGNvbnN0IFFDb2xvciAmbGlnaHQoKSBjb25zdCB7 IHJldHVybiBicltMaWdodF0uY29sb3IoKTsgfQogICAgY29uc3QgUUNvbG9yICZkYXJrKCkgY29u c3QgeyByZXR1cm4gYnJbRGFya10uY29sb3IoKTsgfQogICAgY29uc3QgUUNvbG9yICZtaWQoKSBj b25zdCB7IHJldHVybiBicltNaWRdLmNvbG9yKCk7IH0KICAgIGNvbnN0IFFDb2xvciAmdGV4dCgp IGNvbnN0IHsgcmV0dXJuIGJyW1RleHRdLmNvbG9yKCk7IH0KICAgIGNvbnN0IFFDb2xvciAmYmFz ZSgpIGNvbnN0IHsgcmV0dXJuIGJyW0Jhc2VdLmNvbG9yKCk7IH0KICAgIGNvbnN0IFFDb2xvciAm YmFja2dyb3VuZCgpIGNvbnN0IHsgcmV0dXJuIGJyW0JhY2tncm91bmRdLmNvbG9yKCk7IH0KCiAg ICBjb25zdCBRQ29sb3IgJm1pZGxpZ2h0KCkgY29uc3QgeyByZXR1cm4gYnJbTWlkbGlnaHRdLmNv bG9yKCk7IH0KICAgIGNvbnN0IFFDb2xvciAmYnJpZ2h0VGV4dCgpIGNvbnN0IHsgcmV0dXJuIGJy W0JyaWdodFRleHRdLmNvbG9yKCk7IH0KICAgIGNvbnN0IFFDb2xvciAmYnV0dG9uVGV4dCgpIGNv bnN0IHsgcmV0dXJuIGJyW0J1dHRvblRleHRdLmNvbG9yKCk7IH0KICAgIGNvbnN0IFFDb2xvciAm c2hhZG93KCkgY29uc3QgeyByZXR1cm4gYnJbU2hhZG93XS5jb2xvcigpOyB9CiAgICBjb25zdCBR Q29sb3IgJmhpZ2hsaWdodCgpIGNvbnN0IHsgcmV0dXJuIGJyW0hpZ2hsaWdodF0uY29sb3IoKTsg fQogICAgY29uc3QgUUNvbG9yICZoaWdobGlnaHRlZFRleHQoKSBjb25zdHtyZXR1cm4gYnJbSGln aGxpZ2h0ZWRUZXh0XS5jb2xvcigpOyB9CgogICAgYm9vbCBvcGVyYXRvcj09KCBjb25zdCBRQ29s b3JHcm91cCAmZyApIGNvbnN0OwogICAgYm9vbCBvcGVyYXRvciE9KCBjb25zdCBRQ29sb3JHcm91 cCAmZyApIGNvbnN0CiAgICAgICAgeyByZXR1cm4gIShvcGVyYXRvcj09KGcpKTsgfQoKcHJpdmF0 ZToKICAgIFFCcnVzaCAqYnI7CiAgICBRQ29sb3JHcm91cFByaXZhdGUgKiBkOwoKICAgIGZyaWVu ZCBjbGFzcyBRUGFsZXR0ZTsKfTsKCgpjbGFzcyBRUGFsZXR0ZQp7CnB1YmxpYzoKICAgIFFQYWxl dHRlKCk7CiAgICBRUGFsZXR0ZSggY29uc3QgUUNvbG9yICZidXR0b24gKTsKICAgIFFQYWxldHRl KCBjb25zdCBRQ29sb3IgJmJ1dHRvbiwgY29uc3QgUUNvbG9yICZiYWNrZ3JvdW5kICk7CiAgICBR UGFsZXR0ZSggY29uc3QgUUNvbG9yR3JvdXAgJmFjdGl2ZSwgY29uc3QgUUNvbG9yR3JvdXAgJmRp c2FibGVkLAogICAgICAgICAgICAgIGNvbnN0IFFDb2xvckdyb3VwICZpbmFjdGl2ZSApOwogICAg UVBhbGV0dGUoIGNvbnN0IFFQYWxldHRlICYgKTsKICAgflFQYWxldHRlKCk7CiAgICBRUGFsZXR0 ZSAmb3BlcmF0b3I9KCBjb25zdCBRUGFsZXR0ZSAmICk7CgogICAgZW51bSBDb2xvckdyb3VwIHsg Tm9ybWFsLCBEaXNhYmxlZCwgQWN0aXZlLCBJbmFjdGl2ZSwgTkNvbG9yR3JvdXBzIH07CgogICAg Y29uc3QgUUNvbG9yICZjb2xvciggQ29sb3JHcm91cCwgUUNvbG9yR3JvdXA6OkNvbG9yUm9sZSAp IGNvbnN0OwogICAgY29uc3QgUUJydXNoICZicnVzaCggQ29sb3JHcm91cCwgUUNvbG9yR3JvdXA6 OkNvbG9yUm9sZSApIGNvbnN0OwogICAgdm9pZCBzZXRDb2xvciggQ29sb3JHcm91cCwgUUNvbG9y R3JvdXA6OkNvbG9yUm9sZSwgY29uc3QgUUNvbG9yICYgKTsKICAgIHZvaWQgc2V0QnJ1c2goIENv bG9yR3JvdXAsIFFDb2xvckdyb3VwOjpDb2xvclJvbGUsIGNvbnN0IFFCcnVzaCAmICk7CgogICAg dm9pZCBzZXRDb2xvciggUUNvbG9yR3JvdXA6OkNvbG9yUm9sZSwgY29uc3QgUUNvbG9yICYgKTsK ICAgIHZvaWQgc2V0QnJ1c2goIFFDb2xvckdyb3VwOjpDb2xvclJvbGUsIGNvbnN0IFFCcnVzaCAm ICk7CgogICAgUVBhbGV0dGUgY29weSgpIGNvbnN0OwoKICAgIGNvbnN0IFFDb2xvckdyb3VwICZh Y3RpdmUoKSBjb25zdCB7IHJldHVybiBkYXRhLT5hY3RpdmU7IH0KICAgIGNvbnN0IFFDb2xvckdy b3VwICZkaXNhYmxlZCgpIGNvbnN0IHsgcmV0dXJuIGRhdGEtPmRpc2FibGVkOyB9CiAgICBjb25z dCBRQ29sb3JHcm91cCAmaW5hY3RpdmUoKSBjb25zdCB7IHJldHVybiBkYXRhLT5pbmFjdGl2ZTsg fQogICAgY29uc3QgUUNvbG9yR3JvdXAgJm5vcm1hbCgpIGNvbnN0IHsgcmV0dXJuIGRhdGEtPm5v cm1hbDsgfQoKICAgIHZvaWQgc2V0QWN0aXZlKCBjb25zdCBRQ29sb3JHcm91cCAmICk7CiAgICB2 b2lkIHNldERpc2FibGVkKCBjb25zdCBRQ29sb3JHcm91cCAmICk7CiAgICB2b2lkIHNldEluYWN0 aXZlKCBjb25zdCBRQ29sb3JHcm91cCAmICk7CiAgICB2b2lkIHNldE5vcm1hbCggY29uc3QgUUNv bG9yR3JvdXAgJiApOwoKICAgIGJvb2wgb3BlcmF0b3I9PSggY29uc3QgUVBhbGV0dGUgJnAgKSBj b25zdDsKICAgIGJvb2wgb3BlcmF0b3IhPSggY29uc3QgUVBhbGV0dGUgJnAgKSBjb25zdAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyByZXR1cm4gIShvcGVyYXRvcj09 KHApKTsgfQogICAgYm9vbCBpc0NvcHlPZiggY29uc3QgUVBhbGV0dGUgJiApOwoKICAgIGludCBz ZXJpYWxOdW1iZXIoKSBjb25zdCB7IHJldHVybiBkYXRhLT5zZXJfbm87IH0KCnByaXZhdGU6CiAg ICB2b2lkIGRldGFjaCgpOwogICAgUUJydXNoICZkaXJlY3RCcnVzaCggQ29sb3JHcm91cCwgUUNv bG9yR3JvdXA6OkNvbG9yUm9sZSApIGNvbnN0OwoKICAgIHN0cnVjdCBRUGFsRGF0YSA6IHB1Ymxp YyBRU2hhcmVkIHsKICAgICAgICBRQ29sb3JHcm91cCBub3JtYWw7CiAgICAgICAgUUNvbG9yR3Jv dXAgZGlzYWJsZWQ7CiAgICAgICAgUUNvbG9yR3JvdXAgYWN0aXZlOwogICAgICAgIGludCBzZXJf bm87CiAgICAgICAgUUNvbG9yR3JvdXAgaW5hY3RpdmU7CiAgICB9ICpkYXRhOwp9OwoKCgoKCgoK IFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRRGF0YVN0cmVhbSAmLCBjb25zdCBRQ29sb3JHcm91 cCAmICk7CiBRRGF0YVN0cmVhbSAmb3BlcmF0b3I+PiggUURhdGFTdHJlYW0gJiwgUUNvbG9yR3Jv dXAgJiApOwoKIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRRGF0YVN0cmVhbSAmLCBjb25zdCBR UGFsZXR0ZSAmICk7CiBRRGF0YVN0cmVhbSAmb3BlcmF0b3I+PiggUURhdGFTdHJlYW0gJiwgUVBh bGV0dGUgJiApOwojIDM2ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3F3aWRnZXQuaCIgMiAz CgojIDM5ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FjdXJzb3IuaCIgMSAzCnN0cnVjdCBR Q3Vyc29yRGF0YTsKCgpjbGFzcyBRQ3Vyc29yCnsKcHVibGljOgogICAgUUN1cnNvcigpOwogICAg UUN1cnNvciggaW50IHNoYXBlICk7CiAgICBRQ3Vyc29yKCBjb25zdCBRQml0bWFwICZiaXRtYXAs IGNvbnN0IFFCaXRtYXAgJm1hc2ssCiAgICAgICAgICAgICBpbnQgaG90WD0tMSwgaW50IGhvdFk9 LTEgKTsKICAgIFFDdXJzb3IoIGNvbnN0IFFQaXhtYXAgJnBpeG1hcCwKICAgICAgICAgICAgIGlu dCBob3RYPS0xLCBpbnQgaG90WT0tMSApOwogICAgUUN1cnNvciggY29uc3QgUUN1cnNvciAmICk7 CiAgIH5RQ3Vyc29yKCk7CiAgICBRQ3Vyc29yICZvcGVyYXRvcj0oIGNvbnN0IFFDdXJzb3IgJiAp OwoKICAgIGludCBzaGFwZSgpIGNvbnN0OwogICAgdm9pZCBzZXRTaGFwZSggaW50ICk7CgogICAg Y29uc3QgUUJpdG1hcCAqYml0bWFwKCkgY29uc3Q7CiAgICBjb25zdCBRQml0bWFwICptYXNrKCkg Y29uc3Q7CiAgICBRUG9pbnQgaG90U3BvdCgpIGNvbnN0OwoKCgoKICAgIEhBTkRMRSBoYW5kbGUo KSBjb25zdDsKCgoKCgoKICAgIHN0YXRpYyBRUG9pbnQgcG9zKCk7CiAgICBzdGF0aWMgdm9pZCBz ZXRQb3MoIGludCB4LCBpbnQgeSApOwogICAgc3RhdGljIHZvaWQgc2V0UG9zKCBjb25zdCBRUG9p bnQgJiApOwoKICAgIHN0YXRpYyB2b2lkIGluaXRpYWxpemUoKTsKICAgIHN0YXRpYyB2b2lkIGNs ZWFudXAoKTsKCnByaXZhdGU6CiAgICB2b2lkIHNldEJpdG1hcCggY29uc3QgUUJpdG1hcCAmYml0 bWFwLCBjb25zdCBRQml0bWFwICZtYXNrLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQgaG90WCwgaW50IGhvdFkgKTsKICAgIHZvaWQgdXBkYXRlKCkgY29uc3Q7CiAgICBRQ3Vy c29yRGF0YSAqZGF0YTsKICAgIFFDdXJzb3IgKmZpbmRfY3VyKGludCk7Cn07CiMgOTQgIi91c3Iv bGliL3F0LTIuMi4wL2luY2x1ZGUvcWN1cnNvci5oIiAzCmVudW0gUUN1cnNvclNoYXBlIHsKICAg IEFycm93Q3Vyc29yLCBVcEFycm93Q3Vyc29yLCBDcm9zc0N1cnNvciwgV2FpdEN1cnNvciwgSWJl YW1DdXJzb3IsCiAgICBTaXplVmVyQ3Vyc29yLCBTaXplSG9yQ3Vyc29yLCBTaXplQkRpYWdDdXJz b3IsIFNpemVGRGlhZ0N1cnNvciwKICAgIFNpemVBbGxDdXJzb3IsIEJsYW5rQ3Vyc29yLCBTcGxp dFZDdXJzb3IsIFNwbGl0SEN1cnNvciwgUG9pbnRpbmdIYW5kQ3Vyc29yLAogICAgRm9yYmlkZGVu Q3Vyc29yLCBMYXN0Q3Vyc29yID0gRm9yYmlkZGVuQ3Vyc29yLCBCaXRtYXBDdXJzb3I9MjQgfTsK CgoKCgoKIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRRGF0YVN0cmVhbSAmLCBjb25zdCBRQ3Vy c29yICYgKTsKIFFEYXRhU3RyZWFtICZvcGVyYXRvcj4+KCBRRGF0YVN0cmVhbSAmLCBRQ3Vyc29y ICYgKTsKIyAxMjMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWN1cnNvci5oIiAzCmlubGlu ZSB2b2lkIFFDdXJzb3I6OnNldFBvcyggY29uc3QgUVBvaW50ICZwICkKewogICAgc2V0UG9zKCBw LngoKSwgcC55KCkgKTsKfQoKIyAzNyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xd2lkZ2V0 LmgiIDIgMwoKIyAzNyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xZm9udC5oIiAxIDMKY2xh c3MgUVN0cmluZ0xpc3Q7CnN0cnVjdCBRRm9udERlZjsKc3RydWN0IFFGb250RGF0YTsKY2xhc3Mg UUZvbnRJbnRlcm5hbDsKY2xhc3MgUVJlbmRlcmVkRm9udDsKCgpjbGFzcyBRRm9udAp7CnB1Ymxp YzoKICAgIGVudW0gQ2hhclNldCB7IElTT184ODU5XzEsIExhdGluMSA9IElTT184ODU5XzEsIEFu eUNoYXJTZXQsCiAgICAgICAgICAgICAgICAgICAgIElTT184ODU5XzIsIExhdGluMiA9IElTT184 ODU5XzIsCiAgICAgICAgICAgICAgICAgICAgIElTT184ODU5XzMsIExhdGluMyA9IElTT184ODU5 XzMsCiAgICAgICAgICAgICAgICAgICAgIElTT184ODU5XzQsIExhdGluNCA9IElTT184ODU5XzQs CiAgICAgICAgICAgICAgICAgICAgIElTT184ODU5XzUsCiAgICAgICAgICAgICAgICAgICAgIElT T184ODU5XzYsCiAgICAgICAgICAgICAgICAgICAgIElTT184ODU5XzcsCiAgICAgICAgICAgICAg ICAgICAgIElTT184ODU5XzgsCiAgICAgICAgICAgICAgICAgICAgIElTT184ODU5XzksIExhdGlu NSA9IElTT184ODU5XzksCiAgICAgICAgICAgICAgICAgICAgIElTT184ODU5XzEwLCBMYXRpbjYg PSBJU09fODg1OV8xMCwKICAgICAgICAgICAgICAgICAgICAgSVNPXzg4NTlfMTEsIFRJUzYyMCA9 IElTT184ODU5XzExLAogICAgICAgICAgICAgICAgICAgICBJU09fODg1OV8xMiwKICAgICAgICAg ICAgICAgICAgICAgSVNPXzg4NTlfMTMsIExhdGluNyA9IElTT184ODU5XzEzLAogICAgICAgICAg ICAgICAgICAgICBJU09fODg1OV8xNCwgTGF0aW44ID0gSVNPXzg4NTlfMTQsCiAgICAgICAgICAg ICAgICAgICAgIElTT184ODU5XzE1LCBMYXRpbjkgPSBJU09fODg1OV8xNSwKICAgICAgICAgICAg ICAgICAgICAgS09JOFIsCiAgICAgICAgICAgICAgICAgICAgIFNldF9KYSwgU2V0XzEgPSBTZXRf SmEsCiAgICAgICAgICAgICAgICAgICAgIFNldF9LbywKICAgICAgICAgICAgICAgICAgICAgU2V0 X1RoX1RILAogICAgICAgICAgICAgICAgICAgICBTZXRfWmgsCiAgICAgICAgICAgICAgICAgICAg IFNldF9aaF9UVywKICAgICAgICAgICAgICAgICAgICAgU2V0X04gPSBTZXRfWmhfVFcsCiAgICAg ICAgICAgICAgICAgICAgIFVuaWNvZGUsCgoKCgoKCiAgICAgICAgICAgICAgICAgICAgIFNldF9H QkssCiAgICAgICAgICAgICAgICAgICAgIFNldF9CaWc1LAoKCgoKCiAgICAgICAgICAgICAgICAg ICAgIEpJU19YXzAyMDEgPSAweGEwLAoKICAgICAgICAgICAgICAgICAgICAgSklTX1hfMDIwOCA9 IDB4YzAsIEVuYzE2ID0gSklTX1hfMDIwOCwKICAgICAgICAgICAgICAgICAgICAgS1NDXzU2MDEs CiAgICAgICAgICAgICAgICAgICAgIEdCXzIzMTIsCiAgICAgICAgICAgICAgICAgICAgIEJpZzUK CiAgICB9OwogICAgZW51bSBTdHlsZUhpbnQgeyBIZWx2ZXRpY2EsIFRpbWVzLCBDb3VyaWVyLCBP bGRFbmdsaXNoLCBTeXN0ZW0sIEFueVN0eWxlLAogICAgICAgICAgICAgICAgICAgICBTYW5zU2Vy aWYgPSBIZWx2ZXRpY2EsCiAgICAgICAgICAgICAgICAgICAgIFNlcmlmID0gVGltZXMsCiAgICAg ICAgICAgICAgICAgICAgIFR5cGVXcml0ZXIgPSBDb3VyaWVyLAogICAgICAgICAgICAgICAgICAg ICBEZWNvcmF0aXZlID0gT2xkRW5nbGlzaH07CiAgICBlbnVtIFN0eWxlU3RyYXRlZ3kgeyBQcmVm ZXJEZWZhdWx0ID0gMHgwMDAxLAogICAgICAgICAgICAgICAgICAgICAgICAgIFByZWZlckJpdG1h cCA9IDB4MDAwMiwKICAgICAgICAgICAgICAgICAgICAgICAgICBQcmVmZXJEZXZpY2UgPSAweDAw MDQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgUHJlZmVyT3V0bGluZSA9IDB4MDAwOCwKICAg ICAgICAgICAgICAgICAgICAgICAgICBGb3JjZU91dGxpbmUgPSAweDAwMTAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgUHJlZmVyTWF0Y2ggPSAweDAwMjAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgUHJlZmVyUXVhbGl0eSA9IDB4MDA0MCB9OwogICAgZW51bSBXZWlnaHQgeyBMaWdodCA9 IDI1LCBOb3JtYWwgPSA1MCwgRGVtaUJvbGQgPSA2MywKICAgICAgICAgICAgICAgICAgICAgQm9s ZCA9IDc1LCBCbGFjayA9IDg3IH07CiAgICBRRm9udCgpOwogICAgUUZvbnQoIGNvbnN0IFFTdHJp bmcgJmZhbWlseSwgaW50IHBvaW50U2l6ZSA9IDEyLAogICAgICAgICAgIGludCB3ZWlnaHQgPSBO b3JtYWwsIGJvb2wgaXRhbGljID0gRkFMU0UgKTsKICAgIFFGb250KCBjb25zdCBRU3RyaW5nICZm YW1pbHksIGludCBwb2ludFNpemUsCiAgICAgICAgICAgaW50IHdlaWdodCwgYm9vbCBpdGFsaWMs IENoYXJTZXQgY2hhclNldCApOwogICAgUUZvbnQoIGNvbnN0IFFGb250ICYgKTsKICAgIH5RRm9u dCgpOwogICAgUUZvbnQgJm9wZXJhdG9yPSggY29uc3QgUUZvbnQgJiApOwoKICAgIFFTdHJpbmcg ZmFtaWx5KCkgY29uc3Q7CiAgICB2b2lkIHNldEZhbWlseSggY29uc3QgUVN0cmluZyAmKTsKICAg IGludCBwb2ludFNpemUoKSBjb25zdDsKICAgIGZsb2F0IHBvaW50U2l6ZUZsb2F0KCkgY29uc3Q7 CiAgICB2b2lkIHNldFBvaW50U2l6ZSggaW50ICk7CiAgICB2b2lkIHNldFBvaW50U2l6ZUZsb2F0 KCBmbG9hdCApOwogICAgaW50IHBpeGVsU2l6ZSgpIGNvbnN0OwogICAgdm9pZCBzZXRQaXhlbFNp emUoIGludCApOwogICAgdm9pZCBzZXRQaXhlbFNpemVGbG9hdCggZmxvYXQgKTsKICAgIGludCB3 ZWlnaHQoKSBjb25zdDsKICAgIHZvaWQgc2V0V2VpZ2h0KCBpbnQgKTsKICAgIGJvb2wgYm9sZCgp IGNvbnN0OwogICAgdm9pZCBzZXRCb2xkKCBib29sICk7CiAgICBib29sIGl0YWxpYygpIGNvbnN0 OwogICAgdm9pZCBzZXRJdGFsaWMoIGJvb2wgKTsKICAgIGJvb2wgdW5kZXJsaW5lKCkgY29uc3Q7 CiAgICB2b2lkIHNldFVuZGVybGluZSggYm9vbCApOwogICAgYm9vbCBzdHJpa2VPdXQoKSBjb25z dDsKICAgIHZvaWQgc2V0U3RyaWtlT3V0KCBib29sICk7CiAgICBib29sIGZpeGVkUGl0Y2goKSBj b25zdDsKICAgIHZvaWQgc2V0Rml4ZWRQaXRjaCggYm9vbCApOwogICAgU3R5bGVIaW50IHN0eWxl SGludCgpIGNvbnN0OwogICAgdm9pZCBzZXRTdHlsZUhpbnQoIFN0eWxlSGludCApOwogICAgU3R5 bGVTdHJhdGVneSBzdHlsZVN0cmF0ZWd5KCkgY29uc3Q7CiAgICB2b2lkIHNldFN0eWxlSGludCgg U3R5bGVIaW50LCBTdHlsZVN0cmF0ZWd5ICk7CiAgICBDaGFyU2V0IGNoYXJTZXQoKSBjb25zdDsK ICAgIHZvaWQgc2V0Q2hhclNldCggQ2hhclNldCApOwoKICAgIHN0YXRpYyBDaGFyU2V0IGNoYXJT ZXRGb3JMb2NhbGUoKTsKCiAgICBib29sIHJhd01vZGUoKSBjb25zdDsKICAgIHZvaWQgc2V0UmF3 TW9kZSggYm9vbCApOwoKICAgIGJvb2wgZXhhY3RNYXRjaCgpIGNvbnN0OwoKICAgIGJvb2wgb3Bl cmF0b3I9PSggY29uc3QgUUZvbnQgJiApIGNvbnN0OwogICAgYm9vbCBvcGVyYXRvciE9KCBjb25z dCBRRm9udCAmICkgY29uc3Q7CiAgICBib29sIGlzQ29weU9mKCBjb25zdCBRRm9udCAmICkgY29u c3Q7CgoKCgoKCiAgICBIQU5ETEUgaGFuZGxlKCkgY29uc3Q7CgoKCgogICAgdm9pZCBzZXRSYXdO YW1lKCBjb25zdCBRU3RyaW5nICYgKTsKICAgIFFTdHJpbmcgcmF3TmFtZSgpIGNvbnN0OwoKICAg IFFTdHJpbmcga2V5KCkgY29uc3Q7CgogICAgc3RhdGljIFFTdHJpbmcgZW5jb2RpbmdOYW1lKCBD aGFyU2V0ICk7CgogICAgc3RhdGljIFFGb250IGRlZmF1bHRGb250KCk7CiAgICBzdGF0aWMgdm9p ZCBzZXREZWZhdWx0Rm9udCggY29uc3QgUUZvbnQgJiApOwoKICAgIHN0YXRpYyBRU3RyaW5nIHN1 YnN0aXR1dGUoIGNvbnN0IFFTdHJpbmcgJmZhbWlseU5hbWUgKTsKICAgIHN0YXRpYyB2b2lkIGlu c2VydFN1YnN0aXR1dGlvbiggY29uc3QgUVN0cmluZyYsIGNvbnN0IFFTdHJpbmcgJik7CiAgICBz dGF0aWMgdm9pZCByZW1vdmVTdWJzdGl0dXRpb24oIGNvbnN0IFFTdHJpbmcgJik7CiAgICBzdGF0 aWMgUVN0cmluZ0xpc3Qgc3Vic3RpdHV0aW9ucygpOwoKICAgIHN0YXRpYyB2b2lkIGluaXRpYWxp emUoKTsKICAgIHN0YXRpYyB2b2lkIGxvY2FsZV9pbml0KCk7CiAgICBzdGF0aWMgdm9pZCBjbGVh bnVwKCk7CiAgICBzdGF0aWMgdm9pZCBjYWNoZVN0YXRpc3RpY3MoKTsKCgoKCgpwcm90ZWN0ZWQ6 CiAgICBib29sIGRpcnR5KCkgY29uc3Q7CgogICAgUVN0cmluZyBkZWZhdWx0RmFtaWx5KCkgY29u c3Q7CiAgICBRU3RyaW5nIGxhc3RSZXNvcnRGYW1pbHkoKSBjb25zdDsKICAgIFFTdHJpbmcgbGFz dFJlc29ydEZvbnQoKSBjb25zdDsKICAgIGludCBkZWNpUG9pbnRTaXplKCkgY29uc3Q7Cgpwcml2 YXRlOgogICAgUUZvbnQoIFFGb250RGF0YSAqICk7CiAgICB2b2lkIGluaXQoKTsKICAgIHZvaWQg ZGV0YWNoKCk7CiAgICB2b2lkIGluaXRGb250SW5mbygpIGNvbnN0OwogICAgdm9pZCBsb2FkKCkg Y29uc3Q7CiMgMjA5ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3Fmb250LmgiIDMKICAgIGZy aWVuZCBjbGFzcyBRRm9udEludGVybmFsOwogICAgZnJpZW5kIGNsYXNzIFFGb250TWV0cmljczsK ICAgIGZyaWVuZCBjbGFzcyBRRm9udEluZm87CiAgICBmcmllbmQgY2xhc3MgUVBhaW50ZXI7Cgog ICAgZnJpZW5kIFFEYXRhU3RyZWFtICZvcGVyYXRvcjw8KCBRRGF0YVN0cmVhbSAmLCBjb25zdCBR Rm9udCAmICk7CiAgICBmcmllbmQgUURhdGFTdHJlYW0gJm9wZXJhdG9yPj4oIFFEYXRhU3RyZWFt ICYsIFFGb250ICYgKTsKCiAgICBRRm9udERhdGEgKmQ7CiAgICBzdGF0aWMgQ2hhclNldCBkZWZh dWx0Q2hhclNldDsKfTsKCmlubGluZSBib29sIFFGb250Ojpib2xkKCkgY29uc3QKeyByZXR1cm4g d2VpZ2h0KCkgPiBOb3JtYWw7IH0KCmlubGluZSB2b2lkIFFGb250OjpzZXRCb2xkKCBib29sIGVu YWJsZSApCnsgc2V0V2VpZ2h0KCBlbmFibGUgPyBCb2xkIDogTm9ybWFsICk7IH0KCgoKCgoKCiBR RGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggUURhdGFTdHJlYW0gJiwgY29uc3QgUUZvbnQgJiApOwog UURhdGFTdHJlYW0gJm9wZXJhdG9yPj4oIFFEYXRhU3RyZWFtICYsIFFGb250ICYgKTsKIyAzOCAi L3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xd2lkZ2V0LmgiIDIgMwoKIyAzNiAiL3Vzci9saWIv cXQtMi4yLjAvaW5jbHVkZS9xZm9udG1ldHJpY3MuaCIgMSAzCmNsYXNzIFFUZXh0Q29kZWM7CgoK Y2xhc3MgUUZvbnRNZXRyaWNzCnsKcHVibGljOgogICAgUUZvbnRNZXRyaWNzKCBjb25zdCBRRm9u dCAmICk7CiAgICBRRm9udE1ldHJpY3MoIGNvbnN0IFFGb250TWV0cmljcyAmICk7CiAgIH5RRm9u dE1ldHJpY3MoKTsKCiAgICBRRm9udE1ldHJpY3MgJm9wZXJhdG9yPSggY29uc3QgUUZvbnRNZXRy aWNzICYgKTsKCiAgICBpbnQgYXNjZW50KCkgY29uc3Q7CiAgICBpbnQgZGVzY2VudCgpIGNvbnN0 OwogICAgaW50IGhlaWdodCgpIGNvbnN0OwogICAgaW50IGxlYWRpbmcoKSBjb25zdDsKICAgIGlu dCBsaW5lU3BhY2luZygpIGNvbnN0OwogICAgaW50IG1pbkxlZnRCZWFyaW5nKCkgY29uc3Q7CiAg ICBpbnQgbWluUmlnaHRCZWFyaW5nKCkgY29uc3Q7CiAgICBpbnQgbWF4V2lkdGgoKSBjb25zdDsK CiAgICBib29sIGluRm9udChRQ2hhcikgY29uc3Q7CgogICAgaW50IGxlZnRCZWFyaW5nKFFDaGFy KSBjb25zdDsKICAgIGludCByaWdodEJlYXJpbmcoUUNoYXIpIGNvbnN0OwogICAgaW50IHdpZHRo KCBjb25zdCBRU3RyaW5nICYsIGludCBsZW4gPSAtMSApIGNvbnN0OwogICAgaW50IHdpZHRoKCBR Q2hhciApIGNvbnN0OwogICAgaW50IHdpZHRoKCBjaGFyIGMgKSBjb25zdCB7IHJldHVybiB3aWR0 aCggKFFDaGFyKSBjICk7IH0KICAgIFFSZWN0IGJvdW5kaW5nUmVjdCggY29uc3QgUVN0cmluZyAm LCBpbnQgbGVuID0gLTEgKSBjb25zdDsKICAgIFFSZWN0IGJvdW5kaW5nUmVjdCggUUNoYXIgKSBj b25zdDsKICAgIFFSZWN0IGJvdW5kaW5nUmVjdCggaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgs IGludCBmbGFncywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyYg c3RyLCBpbnQgbGVuPS0xLCBpbnQgdGFic3RvcHM9MCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaW50ICp0YWJhcnJheT0wLCBjaGFyICoqaW50ZXJuPTAgKSBjb25zdDsKICAgIFFTaXpl IHNpemUoIGludCBmbGFncywKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcmIHN0 ciwgaW50IGxlbj0tMSwgaW50IHRhYnN0b3BzPTAsCiAgICAgICAgICAgICAgICAgICAgICBpbnQg KnRhYmFycmF5PTAsIGNoYXIgKippbnRlcm49MCApIGNvbnN0OwoKICAgIGludCB1bmRlcmxpbmVQ b3MoKSBjb25zdDsKICAgIGludCBzdHJpa2VPdXRQb3MoKSBjb25zdDsKICAgIGludCBsaW5lV2lk dGgoKSBjb25zdDsKCnByaXZhdGU6CiAgICBRRm9udE1ldHJpY3MoIGNvbnN0IFFQYWludGVyICog KTsKICAgIHN0YXRpYyB2b2lkIHJlc2V0KCBjb25zdCBRUGFpbnRlciAqICk7CiAgICBjb25zdCBR Rm9udERlZiAqc3BlYygpIGNvbnN0OwoKCgoKCiAgICB2b2lkICpmb250U3RydWN0KCkgY29uc3Q7 CiAgICB2b2lkICpmb250U2V0KCkgY29uc3Q7CiAgICBjb25zdCBRVGV4dENvZGVjICptYXBwZXIo KSBjb25zdDsKICAgIGludCBwcmludGVyQWRqdXN0ZWQoaW50KSBjb25zdDsKCgoKCiAgICBmcmll bmQgY2xhc3MgUVdpZGdldDsKICAgIGZyaWVuZCBjbGFzcyBRUGFpbnRlcjsKCiAgICBRRm9udElu dGVybmFsICpmaW47CiAgICBRUGFpbnRlciAqcGFpbnRlcjsKICAgIGludCBmbGFnczsKCiAgICBi b29sIHVuZGVybGluZUZsYWcoKSBjb25zdCB7IHJldHVybiAoZmxhZ3MgJiAweDEpICE9IDA7IH0K ICAgIGJvb2wgc3RyaWtlT3V0RmxhZygpIGNvbnN0IHsgcmV0dXJuIChmbGFncyAmIDB4MikgIT0g MDsgfQogICAgdm9pZCBzZXRVbmRlcmxpbmVGbGFnKCkgeyBmbGFncyB8PSAweDE7IH0KICAgIHZv aWQgc2V0U3RyaWtlT3V0RmxhZygpIHsgZmxhZ3MgfD0gMHgyOyB9Cn07CgoKIyAzOSAiL3Vzci9s aWIvcXQtMi4yLjAvaW5jbHVkZS9xd2lkZ2V0LmgiIDIgMwoKIyAzNiAiL3Vzci9saWIvcXQtMi4y LjAvaW5jbHVkZS9xZm9udGluZm8uaCIgMSAzCmNsYXNzIFFGb250SW5mbwp7CnB1YmxpYzoKICAg IFFGb250SW5mbyggY29uc3QgUUZvbnQgJiApOwogICAgUUZvbnRJbmZvKCBjb25zdCBRRm9udElu Zm8gJiApOwogICB+UUZvbnRJbmZvKCk7CgogICAgUUZvbnRJbmZvICZvcGVyYXRvcj0oIGNvbnN0 IFFGb250SW5mbyAmICk7CgogICAgUVN0cmluZyBmYW1pbHkoKSBjb25zdDsKICAgIGludCBwb2lu dFNpemUoKSBjb25zdDsKICAgIGJvb2wgaXRhbGljKCkgY29uc3Q7CiAgICBpbnQgd2VpZ2h0KCkg Y29uc3Q7CiAgICBib29sIGJvbGQoKSBjb25zdDsKICAgIGJvb2wgdW5kZXJsaW5lKCkgY29uc3Q7 CiAgICBib29sIHN0cmlrZU91dCgpIGNvbnN0OwogICAgYm9vbCBmaXhlZFBpdGNoKCkgY29uc3Q7 CiAgICBRRm9udDo6U3R5bGVIaW50IHN0eWxlSGludCgpIGNvbnN0OwogICAgUUZvbnQ6OkNoYXJT ZXQgY2hhclNldCgpIGNvbnN0OwogICAgYm9vbCByYXdNb2RlKCkgY29uc3Q7CgogICAgYm9vbCBl eGFjdE1hdGNoKCkgY29uc3Q7CgoKICAgIGNvbnN0IFFGb250ICZmb250KCkgY29uc3Q7CgoKcHJp dmF0ZToKICAgIFFGb250SW5mbyggY29uc3QgUVBhaW50ZXIgKiApOwogICAgc3RhdGljIHZvaWQg cmVzZXQoIGNvbnN0IFFQYWludGVyICogKTsKICAgIGNvbnN0IFFGb250RGVmICpzcGVjKCkgY29u c3Q7CgogICAgUUZvbnRJbnRlcm5hbCAqZmluOwogICAgUVBhaW50ZXIgKnBhaW50ZXI7CiAgICBp bnQgZmxhZ3M7CgogICAgYm9vbCB1bmRlcmxpbmVGbGFnKCkgY29uc3QgeyByZXR1cm4gKGZsYWdz ICYgMHgxKSAhPSAwOyB9CiAgICBib29sIHN0cmlrZU91dEZsYWcoKSBjb25zdCB7IHJldHVybiAo ZmxhZ3MgJiAweDIpICE9IDA7IH0KICAgIGJvb2wgZXhhY3RNYXRjaEZsYWcoKSBjb25zdCB7IHJl dHVybiAoZmxhZ3MgJiAweDQpICE9IDA7IH0KICAgIHZvaWQgc2V0VW5kZXJsaW5lRmxhZygpIHsg ZmxhZ3MgfD0gMHgxOyB9CiAgICB2b2lkIHNldFN0cmlrZU91dEZsYWcoKSB7IGZsYWdzIHw9IDB4 MjsgfQogICAgdm9pZCBzZXRFeGFjdE1hdGNoRmxhZygpIHsgZmxhZ3MgfD0gMHg0OyB9CgogICAg ZnJpZW5kIGNsYXNzIFFXaWRnZXQ7CiAgICBmcmllbmQgY2xhc3MgUVBhaW50ZXI7Cn07CgoKaW5s aW5lIGJvb2wgUUZvbnRJbmZvOjpib2xkKCkgY29uc3QKeyByZXR1cm4gd2VpZ2h0KCkgPiBRRm9u dDo6Tm9ybWFsOyB9CgoKIyA0MCAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xd2lkZ2V0Lmgi IDIgMwoKIyAzNiAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xc3R5bGUuaCIgMSAzCmNsYXNz IFFCdXR0b247CmNsYXNzIFFQdXNoQnV0dG9uOwpjbGFzcyBRU2Nyb2xsQmFyOwpjbGFzcyBRVGFi QmFyOwpjbGFzcyBRVGFiOwpjbGFzcyBRUG9wdXBNZW51OwpjbGFzcyBRTWVudUl0ZW07CmNsYXNz IFFUb29sQnV0dG9uOwoKY2xhc3MgUVN0eWxlOiBwdWJsaWMgUU9iamVjdAp7CiAgICBwdWJsaWM6 IFFNZXRhT2JqZWN0ICptZXRhT2JqZWN0KCkgY29uc3QgeyByZXR1cm4gc3RhdGljTWV0YU9iamVj dCgpOyB9IGNvbnN0IGNoYXIgKmNsYXNzTmFtZSgpIGNvbnN0OyBzdGF0aWMgUU1ldGFPYmplY3Qq IHN0YXRpY01ldGFPYmplY3QoKTsgc3RhdGljIFFTdHJpbmcgdHIoY29uc3QgY2hhciopOyBzdGF0 aWMgUVN0cmluZyB0cihjb25zdCBjaGFyKiwgY29uc3QgY2hhciopOyBwcm90ZWN0ZWQ6IHZvaWQg aW5pdE1ldGFPYmplY3QoKTsgcHJpdmF0ZTogc3RhdGljIFFNZXRhT2JqZWN0ICptZXRhT2JqOwog ICAgR1VJU3R5bGUgZ3M7Cgpwcml2YXRlOgogICAgUVN0eWxlKEdVSVN0eWxlKTsKICAgIFFTdHls ZSgpOwogICAgZnJpZW5kIGNsYXNzIFFDb21tb25TdHlsZTsKCnB1YmxpYzoKICAgIHZpcnR1YWwg flFTdHlsZSgpOwoKCiAgICBvcGVyYXRvciBHVUlTdHlsZSgpIGNvbnN0IHsgcmV0dXJuIGdzOyB9 CiAgICBpbnQgb3BlcmF0b3I9PShHVUlTdHlsZSBzKSBjb25zdCB7IHJldHVybiBncz09czsgfQog ICAgaW50IG9wZXJhdG9yIT0oR1VJU3R5bGUgcykgY29uc3QgeyByZXR1cm4gZ3MhPXM7IH0KCgog ICAgR1VJU3R5bGUgZ3VpU3R5bGUoKSBjb25zdCB7IHJldHVybiBnczsgfQoKCgogICAgdmlydHVh bCB2b2lkIHBvbGlzaCggUVdpZGdldCogKTsKICAgIHZpcnR1YWwgdm9pZCB1blBvbGlzaCggUVdp ZGdldCogKTsKCiAgICB2aXJ0dWFsIHZvaWQgcG9saXNoKCBRQXBwbGljYXRpb24qKTsKICAgIHZp cnR1YWwgdm9pZCB1blBvbGlzaCggUUFwcGxpY2F0aW9uKik7CgogICAgdmlydHVhbCB2b2lkIHBv bGlzaCggUVBhbGV0dGUmKTsKCiAgICB2aXJ0dWFsIFFSZWN0IGl0ZW1SZWN0KCBRUGFpbnRlciAq cCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAgICAgICAgICAgICAgICAgICAgaW50IGZs YWdzLCBib29sIGVuYWJsZWQsCiAgICAgICAgICAgICAgICAgICAgY29uc3QgUVBpeG1hcCAqcGl4 bWFwLAogICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcmIHRleHQsIGludCBsZW49LTEg KTsKCiAgICB2aXJ0dWFsIHZvaWQgZHJhd0l0ZW0oIFFQYWludGVyICpwLCBpbnQgeCwgaW50IHks IGludCB3LCBpbnQgaCwKICAgICAgICAgICAgICAgICAgICBpbnQgZmxhZ3MsIGNvbnN0IFFDb2xv ckdyb3VwICZnLCBib29sIGVuYWJsZWQsCiAgICAgICAgICAgICAgICAgICAgY29uc3QgUVBpeG1h cCAqcGl4bWFwLCBjb25zdCBRU3RyaW5nJiB0ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQgbGVuPS0xLCBjb25zdCBRQ29sb3IqIHBlbkNvbG9yID0gMCApOwoKCiAgICB2aXJ0dWFs IHZvaWQgZHJhd1NlcGFyYXRvciggUVBhaW50ZXIgKnAsIGludCB4MSwgaW50IHkxLCBpbnQgeDIs IGludCB5MiwKICAgICAgICAgICAgICAgICAgICAgY29uc3QgUUNvbG9yR3JvdXAgJmcsIGJvb2wg c3Vua2VuID0gVFJVRSwKICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmVXaWR0aCA9IDEsIGlu dCBtaWRMaW5lV2lkdGggPSAwICk7CgogICAgdmlydHVhbCB2b2lkIGRyYXdSZWN0KCBRUGFpbnRl ciAqcCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAgICAgICAgICAgICAgICAgICAgY29u c3QgUUNvbG9yICYsIGludCBsaW5lV2lkdGggPSAxLAogICAgICAgICAgICAgICAgICAgIGNvbnN0 IFFCcnVzaCAqZmlsbCA9IDAgKTsKCiAgICB2aXJ0dWFsIHZvaWQgZHJhd1JlY3RTdHJvbmcoIFFQ YWludGVyICpwLCBpbnQgeCwgaW50IHksIGludCB3LCBpbnQgaCwKICAgICAgICAgICAgICAgICAg ICAgY29uc3QgUUNvbG9yR3JvdXAgJiwgYm9vbCBzdW5rZW49RkFMU0UsCiAgICAgICAgICAgICAg ICAgICAgIGludCBsaW5lV2lkdGggPSAxLCBpbnQgbWlkTGluZVdpZHRoID0gMCwKICAgICAgICAg ICAgICAgICAgICAgY29uc3QgUUJydXNoICpmaWxsID0gMCApOwoKICAgIHZpcnR1YWwgdm9pZCBk cmF3QnV0dG9uKCBRUGFpbnRlciAqcCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IFFDb2xvckdyb3VwICZnLCBib29sIHN1bmtlbiA9IEZBTFNF LAogICAgICAgICAgICAgICAgICAgICBjb25zdCBRQnJ1c2ggKmZpbGwgPSAwICkgPSAwOwoKICAg IHZpcnR1YWwgUVJlY3QgYnV0dG9uUmVjdCggaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgpOwoK ICAgIHZpcnR1YWwgdm9pZCBkcmF3QnV0dG9uTWFzayggUVBhaW50ZXIgKnAsIGludCB4LCBpbnQg eSwgaW50IHcsIGludCBoKTsKCiAgICB2aXJ0dWFsIHZvaWQgZHJhd0JldmVsQnV0dG9uKCBRUGFp bnRlciAqcCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAgICAgICAgICAgICAgICAgICAg IGNvbnN0IFFDb2xvckdyb3VwICZnLCBib29sIHN1bmtlbiA9IEZBTFNFLAogICAgICAgICAgICAg ICAgICAgICBjb25zdCBRQnJ1c2ggKmZpbGwgPSAwICkgPSAwOwoKICAgIFFSZWN0IGJldmVsQnV0 dG9uUmVjdCggaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgpOwoKICAgIHZpcnR1YWwgdm9pZCBk cmF3VG9vbEJ1dHRvbiggUVBhaW50ZXIgKnAsIGludCB4LCBpbnQgeSwgaW50IHcsIGludCBoLAog ICAgICAgICAgICAgICAgICAgICBjb25zdCBRQ29sb3JHcm91cCAmZywgYm9vbCBzdW5rZW4gPSBG QUxTRSwKICAgICAgICAgICAgICAgICAgICAgY29uc3QgUUJydXNoICpmaWxsID0gMCApOwogICAg dm9pZCBkcmF3VG9vbEJ1dHRvbiggUVRvb2xCdXR0b24qIGJ0biwgUVBhaW50ZXIgKnApOwoKICAg IFFSZWN0IHRvb2xCdXR0b25SZWN0KCBpbnQgeCwgaW50IHksIGludCB3LCBpbnQgaCk7CgogICAg dmlydHVhbCB2b2lkIGRyYXdQYW5lbCggUVBhaW50ZXIgKnAsIGludCB4LCBpbnQgeSwgaW50IHcs IGludCBoLAogICAgICAgICAgICAgICAgICAgIGNvbnN0IFFDb2xvckdyb3VwICYsIGJvb2wgc3Vu a2VuPUZBTFNFLAogICAgICAgICAgICAgICAgICAgIGludCBsaW5lV2lkdGggPSAxLCBjb25zdCBR QnJ1c2ggKmZpbGwgPSAwICk7CgogICAgdmlydHVhbCB2b2lkIGRyYXdQb3B1cFBhbmVsKCBRUGFp bnRlciAqcCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IFFDb2xvckdyb3VwICYsIGludCBsaW5lV2lkdGggPSAyLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRQnJ1c2ggKmZpbGwgPSAwICk7Cgog ICAgdmlydHVhbCB2b2lkIGRyYXdBcnJvdyggUVBhaW50ZXIgKnAsIFF0OjpBcnJvd1R5cGUgdHlw ZSwgYm9vbCBkb3duLAogICAgICAgICAgICAgICAgICAgICBpbnQgeCwgaW50IHksIGludCB3LCBp bnQgaCwKICAgICAgICAgICAgICAgICAgICAgY29uc3QgUUNvbG9yR3JvdXAgJmcsIGJvb2wgZW5h YmxlZCwgY29uc3QgUUJydXNoICpmaWxsID0gMCApID0gMDsKCgogICAgdmlydHVhbCBRU2l6ZSBl eGNsdXNpdmVJbmRpY2F0b3JTaXplKCkgY29uc3QgPSAwOwogICAgdmlydHVhbCB2b2lkIGRyYXdF eGNsdXNpdmVJbmRpY2F0b3IoIFFQYWludGVyKiBwLCBpbnQgeCwgaW50IHksIGludCB3LCBpbnQg aCwKICAgICAgICAgICAgICAgICAgICBjb25zdCBRQ29sb3JHcm91cCAmZywgYm9vbCBvbiwgYm9v bCBkb3duID0gRkFMU0UsIGJvb2wgZW5hYmxlZCA9IFRSVUUgKSA9IDA7CiAgICB2aXJ0dWFsIHZv aWQgZHJhd0V4Y2x1c2l2ZUluZGljYXRvck1hc2soIFFQYWludGVyICpwLCBpbnQgeCwgaW50IHks IGludCB3LCBpbnQgaCwgYm9vbCBvbik7CgoKICAgIHZpcnR1YWwgUVNpemUgaW5kaWNhdG9yU2l6 ZSgpIGNvbnN0ID0gMDsKICAgIHZpcnR1YWwgdm9pZCBkcmF3SW5kaWNhdG9yKCBRUGFpbnRlciog cCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsIGNvbnN0IFFDb2xvckdyb3VwICZnLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBzdGF0ZSwgYm9vbCBkb3duID0gRkFMU0Us IGJvb2wgZW5hYmxlZCA9IFRSVUUgKSA9IDA7CiAgICB2aXJ0dWFsIHZvaWQgZHJhd0luZGljYXRv ck1hc2soIFFQYWludGVyICpwLCBpbnQgeCwgaW50IHksIGludCB3LCBpbnQgaCwgaW50IHN0YXRl KTsKCgoKICAgIHZpcnR1YWwgdm9pZCBkcmF3Rm9jdXNSZWN0KCBRUGFpbnRlciosIGNvbnN0IFFS ZWN0ICYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUUNvbG9yR3JvdXAg JiwgY29uc3QgUUNvbG9yKiBiZyA9IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ym9vbCA9IEZBTFNFICkgPSAwOwoKCgoKCiAgICB2aXJ0dWFsIHZvaWQgZHJhd0NvbWJvQnV0dG9u KCBRUGFpbnRlciAqcCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBRQ29sb3JHcm91cCAmZywgYm9vbCBzdW5rZW4gPSBG QUxTRSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgZWRpdGFibGUgPSBG QUxTRSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgZW5hYmxlZCA9IFRS VUUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRQnJ1c2ggKmZpbGwg PSAwICkgPSAwOwogICAgdmlydHVhbCBRUmVjdCBjb21ib0J1dHRvblJlY3QoIGludCB4LCBpbnQg eSwKICAgICAgICAgICAgICAgICAgICBpbnQgdywgaW50IGgpID0gMDsKICAgIHZpcnR1YWwgUVJl Y3QgY29tYm9CdXR0b25Gb2N1c1JlY3QoIGludCB4LCBpbnQgeSwKICAgICAgICAgICAgICAgICAg ICBpbnQgdywgaW50IGgpID0gMDsKCiAgICB2aXJ0dWFsIHZvaWQgZHJhd0NvbWJvQnV0dG9uTWFz ayggUVBhaW50ZXIgKnAsIGludCB4LCBpbnQgeSwgaW50IHcsIGludCBoKSA9IDA7CgoKICAgIHZp cnR1YWwgdm9pZCBkcmF3UHVzaEJ1dHRvbiggUVB1c2hCdXR0b24qIGJ0biwgUVBhaW50ZXIgKnAp ID0gMDsKCiAgICB2aXJ0dWFsIHZvaWQgZHJhd1B1c2hCdXR0b25MYWJlbCggUVB1c2hCdXR0b24q IGJ0biwgUVBhaW50ZXIgKnApID0gMDsKICAgIFFSZWN0IHB1c2hCdXR0b25Db250ZW50c1JlY3Qo IFFQdXNoQnV0dG9uKiBidG4gKTsKICAgIGludCBtZW51QnV0dG9uSW5kaWNhdG9yV2lkdGgoIGlu dCBoICk7CiAgICB2aXJ0dWFsIHZvaWQgZ2V0QnV0dG9uU2hpZnQoIGludCAmeCwgaW50ICZ5KSA9 IDA7CgoKICAgIHZpcnR1YWwgaW50IGRlZmF1bHRGcmFtZVdpZHRoKCkgY29uc3QgPSAwOwoKCiAg ICB2aXJ0dWFsIHZvaWQgdGFiYmFyTWV0cmljcyggY29uc3QgUVRhYkJhciosCiAgICAgICAgICAg ICAgICAgICAgaW50JiwgaW50JiwgaW50JiApID0gMDsKICAgIHZpcnR1YWwgdm9pZCBkcmF3VGFi KCBRUGFpbnRlciosIGNvbnN0IFFUYWJCYXIqLCBRVGFiKiwgYm9vbCBzZWxlY3RlZCApID0gMDsK ICAgIHZpcnR1YWwgdm9pZCBkcmF3VGFiTWFzayggUVBhaW50ZXIqLCBjb25zdCBRVGFiQmFyKiwg UVRhYiosIGJvb2wgc2VsZWN0ZWQgKSA9IDA7CgoKICAgIGVudW0gU2Nyb2xsQ29udHJvbCB7IEFk ZExpbmUgPSAweDEgLCBTdWJMaW5lID0gMHgyICwgQWRkUGFnZSA9IDB4NCwKICAgICAgICAgICAg ICAgICAgICAgICAgIFN1YlBhZ2UgPSAweDggLCBGaXJzdCA9IDB4MTAsIExhc3QgPSAweDIwLAog ICAgICAgICAgICAgICAgICAgICAgICAgU2xpZGVyID0gMHg0MCwgTm9TY3JvbGwgPSAweDgwIH07 CgogICAgdmlydHVhbCB2b2lkIHNjcm9sbEJhck1ldHJpY3MoIGNvbnN0IFFTY3JvbGxCYXIqLAog ICAgICAgICAgICAgICAgICAgIGludCYsIGludCYsIGludCYsIGludCYpID0gMDsKICAgIHZpcnR1 YWwgdm9pZCBkcmF3U2Nyb2xsQmFyQ29udHJvbHMoIFFQYWludGVyKiwgY29uc3QgUVNjcm9sbEJh ciosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgc2xpZGVyU3Rh cnQsIHVpbnQgY29udHJvbHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB1aW50IGFjdGl2ZUNvbnRyb2wgKSA9IDA7CiAgICB2aXJ0dWFsIFNjcm9sbENvbnRyb2wgc2Ny b2xsQmFyUG9pbnRPdmVyKCBjb25zdCBRU2Nyb2xsQmFyKiwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGludCBzbGlkZXJTdGFydCwgY29uc3QgUVBvaW50JiApID0gMDsK CgogICAgdmlydHVhbCBpbnQgc2xpZGVyTGVuZ3RoKCkgY29uc3QgPSAwOwogICAgdmlydHVhbCB2 b2lkIGRyYXdTbGlkZXIoIFFQYWludGVyICpwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg IGludCB4LCBpbnQgeSwgaW50IHcsIGludCBoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IFFDb2xvckdyb3VwICZnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yaWVu dGF0aW9uLCBib29sIHRpY2tBYm92ZSwgYm9vbCB0aWNrQmVsb3cpID0gMDsKCiAgICB2aXJ0dWFs IHZvaWQgZHJhd1NsaWRlck1hc2soIFFQYWludGVyICpwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgeCwgaW50IHksIGludCB3LCBpbnQgaCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgT3JpZW50YXRpb24sIGJvb2wgdGlja0Fib3ZlLCBib29sIHRpY2tCZWxv dykgPSAwOwogICAgdmlydHVhbCB2b2lkIGRyYXdTbGlkZXJHcm9vdmUoIFFQYWludGVyICpwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB4LCBpbnQgeSwgaW50IHcsIGlu dCBoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFDb2xvckdyb3Vw JiBnLCBRQ09PUkQgYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPcmllbnRh dGlvbiApID0gMDsKICAgIHZpcnR1YWwgdm9pZCBkcmF3U2xpZGVyR3Jvb3ZlTWFzayggUVBhaW50 ZXIgKnAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB4LCBpbnQg eSwgaW50IHcsIGludCBoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBR Q09PUkQgYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3JpZW50YXRp b24gKSA9IDA7CiAgICB2aXJ0dWFsIGludCBtYXhpbXVtU2xpZGVyRHJhZ0Rpc3RhbmNlKCkgY29u c3QgPSAwOwoKICAgIHZpcnR1YWwgaW50IHNwbGl0dGVyV2lkdGgoKSBjb25zdCA9IDA7CiAgICB2 aXJ0dWFsIHZvaWQgZHJhd1NwbGl0dGVyKCBRUGFpbnRlciAqcCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgeCwgaW50IHksIGludCB3LCBpbnQgaCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBRQ29sb3JHcm91cCAmZywKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBPcmllbnRhdGlvbikgPSAwOwoKICAgIHZpcnR1YWwgdm9pZCBkcmF3Q2hlY2tNYXJrKCBR UGFpbnRlciAqcCwgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgUUNvbG9yR3JvdXAgJmcsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgYm9vbCBhY3QsIGJvb2wgZGlzICkgPSAwOwogICAgdmlydHVhbCB2b2lkIHBv bGlzaFBvcHVwTWVudSggUVBvcHVwTWVudSogKSA9IDA7CgogICAgdmlydHVhbCBpbnQgZXh0cmFQ b3B1cE1lbnVJdGVtV2lkdGgoIGJvb2wgY2hlY2thYmxlLCBpbnQgbWF4cG13LAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFFNZW51SXRlbSogbWksCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgUUZvbnRNZXRyaWNzJiBmbSApID0gMDsKICAgIHZpcnR1YWwgaW50 IHBvcHVwU3VibWVudUluZGljYXRvcldpZHRoKAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IFFGb250TWV0cmljcyYgZm0gKSA9IDA7CiAgICB2aXJ0dWFsIGludCBwb3B1cE1l bnVJdGVtSGVpZ2h0KCBib29sIGNoZWNrYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBRTWVudUl0ZW0qIG1pLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IFFGb250TWV0cmljcyYgZm0gKSA9IDA7CiAgICB2aXJ0dWFsIHZvaWQgZHJhd1BvcHVwTWVudUl0 ZW0oIFFQYWludGVyKiBwLCBib29sIGNoZWNrYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaW50IG1heHBtdywgaW50IHRhYiwgUU1lbnVJdGVtKiBtaSwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVBhbGV0dGUmIHBhbCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBhY3QsIGJvb2wgZW5hYmxlZCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgp ID0gMDsKICAgIHZvaWQgZHJhd01lbnVCYXJJdGVtKCBRUGFpbnRlciogcCwgaW50IHgsIGludCB5 LCBpbnQgdywgaW50IGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFNZW51 SXRlbSogbWksIFFDb2xvckdyb3VwJiBnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBib29sIGVuYWJsZWQsIGJvb2wgYWN0aXZlICk7CgoKICAgIFFTaXplIHNjcm9sbEJhckV4 dGVudCgpOwogICAgaW50IGJ1dHRvbkRlZmF1bHRJbmRpY2F0b3JXaWR0aCgpIGNvbnN0OwogICAg aW50IGJ1dHRvbk1hcmdpbigpIGNvbnN0OwogICAgaW50IHRvb2xCYXJIYW5kbGVFeHRlbnQoKSBj b25zdDsKICAgIGludCB0b29sQmFySGFuZGxlRXh0ZW5kKCkgY29uc3Q7CiAgICBpbnQgc2xpZGVy VGhpY2tuZXNzKCkgY29uc3QgOwogICAgdm9pZCBkcmF3VG9vbEJhckhhbmRsZSggUVBhaW50ZXIg KnAsIGNvbnN0IFFSZWN0ICZyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgUXQ6Ok9yaWVu dGF0aW9uIG9yaWVudGF0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBoaWdo bGlnaHQsIGNvbnN0IFFDb2xvckdyb3VwICZjZywKICAgICAgICAgICAgICAgICAgICAgICAgICAg IGJvb2wgZHJhd0JvcmRlciA9IEZBTFNFICk7Cgpwcm90ZWN0ZWQ6CiAgICB2b2lkIHNldFNjcm9s bEJhckV4dGVudCggaW50IHcsIGludCBoPS0xICk7CiAgICB2b2lkIHNldEJ1dHRvbkRlZmF1bHRJ bmRpY2F0b3JXaWR0aCggaW50IHcgKTsKICAgIHZvaWQgc2V0QnV0dG9uTWFyZ2luKCBpbnQgdyAp OwogICAgdm9pZCBzZXRTbGlkZXJUaGlja25lc3MoaW50IHQpOwoKCnByaXZhdGU6CgogICAgUVN0 eWxlKCBjb25zdCBRU3R5bGUgJiApOwogICAgUVN0eWxlJiBvcGVyYXRvcj0oIGNvbnN0IFFTdHls ZSAmICk7Cgp9OwoKIyA0MSAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xd2lkZ2V0LmgiIDIg MwoKIyAzNSAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xc2l6ZXBvbGljeS5oIiAxIDMKY2xh c3MgUVNpemVQb2xpY3kKewpwcml2YXRlOgogICAgZW51bSB7IEhTaXplID0gNiwgSE1hc2sgPSAw eDNmLCBWTWFzayA9IEhNYXNrIDw8IEhTaXplLAogICAgICAgICAgIE1heUdyb3cgPSAxLCBFeHBN YXNrID0gMiwgTWF5U2hyaW5rID0gNCB9OwpwdWJsaWM6CiAgICBlbnVtIFNpemVUeXBlIHsgRml4 ZWQgPSAwLAogICAgICAgICAgICAgICAgICAgIE1pbmltdW0gPSBNYXlHcm93LAogICAgICAgICAg ICAgICAgICAgIE1heGltdW0gPSBNYXlTaHJpbmssCiAgICAgICAgICAgICAgICAgICAgUHJlZmVy cmVkID0gTWF5R3Jvd3xNYXlTaHJpbmsgLAogICAgICAgICAgICAgICAgICAgIE1pbmltdW1FeHBh bmRpbmcgPSBNaW5pbXVtfEV4cE1hc2ssCiAgICAgICAgICAgICAgICAgICAgRXhwYW5kaW5nID0g TWluaW11bUV4cGFuZGluZ3xNYXlTaHJpbmsgfTsKCiAgICBlbnVtIEV4cGFuZERhdGEgeyBOb0Rp cmVjdGlvbiA9IDAsCiAgICAgICAgICAgICAgICAgICAgICBIb3Jpem9udGFsID0gMSwKICAgICAg ICAgICAgICAgICAgICAgIFZlcnRpY2FsID0gMiwKICAgICAgICAgICAgICAgICAgICAgIEJvdGhE aXJlY3Rpb25zID0gSG9yaXpvbnRhbCB8IFZlcnRpY2FsIH07CgogICAgUVNpemVQb2xpY3koKSB7 IGRhdGEgPSAwOyB9CgogICAgUVNpemVQb2xpY3koIFNpemVUeXBlIGhvciwgU2l6ZVR5cGUgdmVy LCBib29sIGhmdyA9IEZBTFNFICk7CgogICAgU2l6ZVR5cGUgaG9yRGF0YSgpIGNvbnN0IHsgcmV0 dXJuIChTaXplVHlwZSkoIGRhdGEgJiBITWFzayApOyB9CiAgICBTaXplVHlwZSB2ZXJEYXRhKCkg Y29uc3QgeyByZXR1cm4gKFNpemVUeXBlKSgoIGRhdGEgJiBWTWFzayApID4+IEhTaXplKTsgfQoK ICAgIGJvb2wgbWF5U2hyaW5rSG9yaXpvbnRhbGx5KCkgY29uc3QgeyByZXR1cm4gaG9yRGF0YSgp ICYgTWF5U2hyaW5rOyB9CiAgICBib29sIG1heVNocmlua1ZlcnRpY2FsbHkoKSBjb25zdCB7IHJl dHVybiB2ZXJEYXRhKCkgJiBNYXlTaHJpbms7IH0KICAgIGJvb2wgbWF5R3Jvd0hvcml6b250YWxs eSgpIGNvbnN0IHsgcmV0dXJuIGhvckRhdGEoKSAmIE1heUdyb3c7IH0KICAgIGJvb2wgbWF5R3Jv d1ZlcnRpY2FsbHkoKSBjb25zdCB7IHJldHVybiB2ZXJEYXRhKCkgJiBNYXlHcm93OyB9CgogICAg RXhwYW5kRGF0YSBleHBhbmRpbmcoKSBjb25zdAogICAgewogICAgICAgIHJldHVybiAoRXhwYW5k RGF0YSkoIChpbnQpKHZlckRhdGEoKSZFeHBNYXNrID8gVmVydGljYWwgOiAwKSsKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAoaW50KShob3JEYXRhKCkmRXhwTWFzayA/IEhvcml6b250YWwg OiAwKSApOwogICAgfQoKICAgIHZvaWQgc2V0SG9yRGF0YSggU2l6ZVR5cGUgZCApIHsgZGF0YSA9 IChkYXRhICYgfkhNYXNrKSB8IGQ7IH0KICAgIHZvaWQgc2V0VmVyRGF0YSggU2l6ZVR5cGUgZCAp IHsgZGF0YSA9IChkYXRhICYgfihITWFzazw8SFNpemUpKSB8CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAoZDw8SFNpemUpOyB9CgogICAgdm9pZCBzZXRIZWlnaHRG b3JXaWR0aCggYm9vbCBiICkgeyBkYXRhID0gYiA/IGRhdGEgJiB+KCAxIDw8IDIqSFNpemUgKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBkYXRhIHwgKCAx IDw8IDIqSFNpemUgKTsgfQogICAgYm9vbCBoYXNIZWlnaHRGb3JXaWR0aCgpIGNvbnN0IHsgcmV0 dXJuIGRhdGEgJiAoIDEgPDwgMipIU2l6ZSApOyB9CgogICAgYm9vbCBvcGVyYXRvcj09KCBjb25z dCBRU2l6ZVBvbGljeSYgcyApIGNvbnN0IHsgcmV0dXJuIGRhdGEgPT0gcy5kYXRhOyB9CiAgICBi b29sIG9wZXJhdG9yIT0oIGNvbnN0IFFTaXplUG9saWN5JiBzICkgY29uc3QgeyByZXR1cm4gZGF0 YSAhPSBzLmRhdGE7IH0KCnByaXZhdGU6CiAgICBRU2l6ZVBvbGljeSggaW50IGkgKTogZGF0YSgg aSApIHt9CgogICAgUV9VSU5UMTYgZGF0YTsKfTsKCmlubGluZSBRU2l6ZVBvbGljeTo6UVNpemVQ b2xpY3koIFNpemVUeXBlIGhvciwgU2l6ZVR5cGUgdmVyLCBib29sIGhmdyApCiAgICAgICAgOiBk YXRhKCBob3IgfCAodmVyPDxIU2l6ZSkgfCAoaGZ3ID8gKDE8PDIqSFNpemUpIDogMCkgKSB7fQoK CiMgNDIgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXdpZGdldC5oIiAyIDMKCgpjbGFzcyBR TGF5b3V0OwpzdHJ1Y3QgUVdFeHRyYTsKc3RydWN0IFFUTFdFeHRyYTsKY2xhc3MgUUZvY3VzRGF0 YTsKY2xhc3MgUVN0eWxlOwpjbGFzcyBRV1NSZWdpb25NYW5hZ2VyOwoKY2xhc3MgUVdpZGdldCA6 IHB1YmxpYyBRT2JqZWN0LCBwdWJsaWMgUVBhaW50RGV2aWNlCnsKICAgIHB1YmxpYzogUU1ldGFP YmplY3QgKm1ldGFPYmplY3QoKSBjb25zdCB7IHJldHVybiBzdGF0aWNNZXRhT2JqZWN0KCk7IH0g Y29uc3QgY2hhciAqY2xhc3NOYW1lKCkgY29uc3Q7IHN0YXRpYyBRTWV0YU9iamVjdCogc3RhdGlj TWV0YU9iamVjdCgpOyBzdGF0aWMgUVN0cmluZyB0cihjb25zdCBjaGFyKik7IHN0YXRpYyBRU3Ry aW5nIHRyKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7IHByb3RlY3RlZDogdm9pZCBpbml0TWV0 YU9iamVjdCgpOyBwcml2YXRlOiBzdGF0aWMgUU1ldGFPYmplY3QgKm1ldGFPYmo7CgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgpwdWJs aWM6CiAgICBRV2lkZ2V0KCBRV2lkZ2V0ICpwYXJlbnQ9MCwgY29uc3QgY2hhciAqbmFtZT0wLCBX RmxhZ3MgZj0wICk7CiAgICB+UVdpZGdldCgpOwoKICAgIFdJZCB3aW5JZCgpIGNvbnN0OwogICAg dm9pZCBzZXROYW1lKCBjb25zdCBjaGFyICpuYW1lICk7CgoKCiAgICBRU3R5bGUgJnN0eWxlKCkg Y29uc3Q7CiAgICB2b2lkIHNldFN0eWxlKCBRU3R5bGUgKiApOwoKCgogICAgYm9vbCBpc1RvcExl dmVsKCkgY29uc3Q7CiAgICBib29sIGlzTW9kYWwoKSBjb25zdDsKICAgIGJvb2wgaXNQb3B1cCgp IGNvbnN0OwogICAgYm9vbCBpc0Rlc2t0b3AoKSBjb25zdDsKCiAgICBib29sIGlzRW5hYmxlZCgp IGNvbnN0OwogICAgYm9vbCBpc0VuYWJsZWRUbyhRV2lkZ2V0KikgY29uc3Q7CiAgICBib29sIGlz RW5hYmxlZFRvVExXKCkgY29uc3Q7CgpwdWJsaWM6CiAgICB2aXJ0dWFsIHZvaWQgc2V0RW5hYmxl ZCggYm9vbCApOwogICAgdm9pZCBzZXREaXNhYmxlZCggYm9vbCApOwoKCgpwdWJsaWM6CiAgICBR UmVjdCBmcmFtZUdlb21ldHJ5KCkgY29uc3Q7CiAgICBjb25zdCBRUmVjdCAmZ2VvbWV0cnkoKSBj b25zdDsKICAgIGludCB4KCkgY29uc3Q7CiAgICBpbnQgeSgpIGNvbnN0OwogICAgUVBvaW50IHBv cygpIGNvbnN0OwogICAgUVNpemUgZnJhbWVTaXplKCkgY29uc3Q7CiAgICBRU2l6ZSBzaXplKCkg Y29uc3Q7CiAgICBpbnQgd2lkdGgoKSBjb25zdDsKICAgIGludCBoZWlnaHQoKSBjb25zdDsKICAg IFFSZWN0IHJlY3QoKSBjb25zdDsKICAgIFFSZWN0IGNoaWxkcmVuUmVjdCgpIGNvbnN0OwogICAg UVJlZ2lvbiBjaGlsZHJlblJlZ2lvbigpIGNvbnN0OwoKICAgIFFTaXplIG1pbmltdW1TaXplKCkg Y29uc3Q7CiAgICBRU2l6ZSBtYXhpbXVtU2l6ZSgpIGNvbnN0OwogICAgaW50IG1pbmltdW1XaWR0 aCgpIGNvbnN0OwogICAgaW50IG1pbmltdW1IZWlnaHQoKSBjb25zdDsKICAgIGludCBtYXhpbXVt V2lkdGgoKSBjb25zdDsKICAgIGludCBtYXhpbXVtSGVpZ2h0KCkgY29uc3Q7CiAgICB2b2lkIHNl dE1pbmltdW1TaXplKCBjb25zdCBRU2l6ZSAmICk7CiAgICB2aXJ0dWFsIHZvaWQgc2V0TWluaW11 bVNpemUoIGludCBtaW53LCBpbnQgbWluaCApOwogICAgdm9pZCBzZXRNYXhpbXVtU2l6ZSggY29u c3QgUVNpemUgJiApOwogICAgdmlydHVhbCB2b2lkIHNldE1heGltdW1TaXplKCBpbnQgbWF4dywg aW50IG1heGggKTsKICAgIHZvaWQgc2V0TWluaW11bVdpZHRoKCBpbnQgbWludyApOwogICAgdm9p ZCBzZXRNaW5pbXVtSGVpZ2h0KCBpbnQgbWluaCApOwogICAgdm9pZCBzZXRNYXhpbXVtV2lkdGgo IGludCBtYXh3ICk7CiAgICB2b2lkIHNldE1heGltdW1IZWlnaHQoIGludCBtYXhoICk7CgogICAg UVNpemUgc2l6ZUluY3JlbWVudCgpIGNvbnN0OwogICAgdm9pZCBzZXRTaXplSW5jcmVtZW50KCBj b25zdCBRU2l6ZSAmICk7CiAgICB2aXJ0dWFsIHZvaWQgc2V0U2l6ZUluY3JlbWVudCggaW50IHcs IGludCBoICk7CiAgICBRU2l6ZSBiYXNlU2l6ZSgpIGNvbnN0OwogICAgdm9pZCBzZXRCYXNlU2l6 ZSggY29uc3QgUVNpemUgJiApOwogICAgdm9pZCBzZXRCYXNlU2l6ZSggaW50IGJhc2V3LCBpbnQg YmFzZWggKTsKCiAgICB2b2lkIHNldEZpeGVkU2l6ZSggY29uc3QgUVNpemUgJiApOwogICAgdm9p ZCBzZXRGaXhlZFNpemUoIGludCB3LCBpbnQgaCApOwogICAgdm9pZCBzZXRGaXhlZFdpZHRoKCBp bnQgdyApOwogICAgdm9pZCBzZXRGaXhlZEhlaWdodCggaW50IGggKTsKCgoKICAgIFFQb2ludCBt YXBUb0dsb2JhbCggY29uc3QgUVBvaW50ICYgKSBjb25zdDsKICAgIFFQb2ludCBtYXBGcm9tR2xv YmFsKCBjb25zdCBRUG9pbnQgJiApIGNvbnN0OwogICAgUVBvaW50IG1hcFRvUGFyZW50KCBjb25z dCBRUG9pbnQgJiApIGNvbnN0OwogICAgUVBvaW50IG1hcEZyb21QYXJlbnQoIGNvbnN0IFFQb2lu dCAmICkgY29uc3Q7CiAgICBRUG9pbnQgbWFwVG8oIFFXaWRnZXQgKiwgY29uc3QgUVBvaW50ICYg KSBjb25zdDsKICAgIFFQb2ludCBtYXBGcm9tKCBRV2lkZ2V0ICosIGNvbnN0IFFQb2ludCAmICkg Y29uc3Q7CgogICAgUVdpZGdldCAqdG9wTGV2ZWxXaWRnZXQoKSBjb25zdDsKCgoKICAgIGVudW0g QmFja2dyb3VuZE1vZGUgeyBGaXhlZENvbG9yLCBGaXhlZFBpeG1hcCwgTm9CYWNrZ3JvdW5kLAog ICAgICAgICAgICAgICAgICAgICAgICAgIFBhbGV0dGVGb3JlZ3JvdW5kLCBQYWxldHRlQnV0dG9u LCBQYWxldHRlTGlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgUGFsZXR0ZU1pZGxpZ2h0 LCBQYWxldHRlRGFyaywgUGFsZXR0ZU1pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICBQYWxl dHRlVGV4dCwgUGFsZXR0ZUJyaWdodFRleHQsIFBhbGV0dGVCYXNlLAogICAgICAgICAgICAgICAg ICAgICAgICAgIFBhbGV0dGVCYWNrZ3JvdW5kLCBQYWxldHRlU2hhZG93LCBQYWxldHRlSGlnaGxp Z2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgIFBhbGV0dGVIaWdobGlnaHRlZFRleHQsIFBh bGV0dGVCdXR0b25UZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgIFgxMVBhcmVudFJlbGF0 aXZlIH07CgogICAgQmFja2dyb3VuZE1vZGUgYmFja2dyb3VuZE1vZGUoKSBjb25zdDsKICAgIHZp cnR1YWwgdm9pZCBzZXRCYWNrZ3JvdW5kTW9kZSggQmFja2dyb3VuZE1vZGUgKTsKCiAgICBjb25z dCBRQ29sb3IgJiBiYWNrZ3JvdW5kQ29sb3IoKSBjb25zdDsKICAgIGNvbnN0IFFDb2xvciAmIGZv cmVncm91bmRDb2xvcigpIGNvbnN0OwogICAgdmlydHVhbCB2b2lkIHNldEJhY2tncm91bmRDb2xv ciggY29uc3QgUUNvbG9yICYgKTsKCiAgICBjb25zdCBRUGl4bWFwICogYmFja2dyb3VuZFBpeG1h cCgpIGNvbnN0OwogICAgdmlydHVhbCB2b2lkIHNldEJhY2tncm91bmRQaXhtYXAoIGNvbnN0IFFQ aXhtYXAgJiApOwoKCiAgICBjb25zdCBRQ29sb3JHcm91cCAmIGNvbG9yR3JvdXAoKSBjb25zdDsK ICAgIGNvbnN0IFFQYWxldHRlICYgcGFsZXR0ZSgpIGNvbnN0OwogICAgYm9vbCBvd25QYWxldHRl KCkgY29uc3Q7CiAgICB2aXJ0dWFsIHZvaWQgc2V0UGFsZXR0ZSggY29uc3QgUVBhbGV0dGUgJiAp OwogICAgdm9pZCB1bnNldFBhbGV0dGUoKTsKCiAgICBRRm9udCBmb250KCkgY29uc3Q7CiAgICBi b29sIG93bkZvbnQoKSBjb25zdDsKICAgIHZpcnR1YWwgdm9pZCBzZXRGb250KCBjb25zdCBRRm9u dCAmICk7CiAgICB2b2lkIHVuc2V0Rm9udCgpOwogICAgUUZvbnRNZXRyaWNzIGZvbnRNZXRyaWNz KCkgY29uc3Q7CiAgICBRRm9udEluZm8gZm9udEluZm8oKSBjb25zdDsKCiAgICBlbnVtIFByb3Bh Z2F0aW9uTW9kZSB7IE5vQ2hpbGRyZW4sIEFsbENoaWxkcmVuLAogICAgICAgICAgICAgICAgICAg ICAgICAgICBTYW1lRm9udCwgU2FtZVBhbGV0dGUgPSBTYW1lRm9udCB9OwoKICAgIFByb3BhZ2F0 aW9uTW9kZSBmb250UHJvcGFnYXRpb24oKSBjb25zdDsKICAgIHZpcnR1YWwgdm9pZCBzZXRGb250 UHJvcGFnYXRpb24oIFByb3BhZ2F0aW9uTW9kZSApOwoKICAgIFByb3BhZ2F0aW9uTW9kZSBwYWxl dHRlUHJvcGFnYXRpb24oKSBjb25zdDsKICAgIHZpcnR1YWwgdm9pZCBzZXRQYWxldHRlUHJvcGFn YXRpb24oIFByb3BhZ2F0aW9uTW9kZSApOwoKICAgIGNvbnN0IFFDdXJzb3IgJmN1cnNvcigpIGNv bnN0OwogICAgYm9vbCBvd25DdXJzb3IoKSBjb25zdDsKICAgIHZpcnR1YWwgdm9pZCBzZXRDdXJz b3IoIGNvbnN0IFFDdXJzb3IgJiApOwogICAgdmlydHVhbCB2b2lkIHVuc2V0Q3Vyc29yKCk7Cgog ICAgUVN0cmluZyBjYXB0aW9uKCkgY29uc3Q7CiAgICBjb25zdCBRUGl4bWFwICppY29uKCkgY29u c3Q7CiAgICBRU3RyaW5nIGljb25UZXh0KCkgY29uc3Q7CiAgICBib29sIGhhc01vdXNlVHJhY2tp bmcoKSBjb25zdDsKCiAgICB2aXJ0dWFsIHZvaWQgc2V0TWFzayggY29uc3QgUUJpdG1hcCAmICk7 CiAgICB2aXJ0dWFsIHZvaWQgc2V0TWFzayggY29uc3QgUVJlZ2lvbiAmICk7CiAgICB2b2lkIGNs ZWFyTWFzaygpOwoKcHVibGljOgogICAgdmlydHVhbCB2b2lkIHNldENhcHRpb24oIGNvbnN0IFFT dHJpbmcgJik7CiAgICB2aXJ0dWFsIHZvaWQgc2V0SWNvbiggY29uc3QgUVBpeG1hcCAmICk7CiAg ICB2aXJ0dWFsIHZvaWQgc2V0SWNvblRleHQoIGNvbnN0IFFTdHJpbmcgJik7CiAgICB2aXJ0dWFs IHZvaWQgc2V0TW91c2VUcmFja2luZyggYm9vbCBlbmFibGUgKTsKCgoKICAgIHZpcnR1YWwgdm9p ZCBzZXRGb2N1cygpOwogICAgdm9pZCBjbGVhckZvY3VzKCk7CgpwdWJsaWM6CiAgICBlbnVtIEZv Y3VzUG9saWN5IHsKICAgICAgICBOb0ZvY3VzID0gMCwKICAgICAgICBUYWJGb2N1cyA9IDB4MSwK ICAgICAgICBDbGlja0ZvY3VzID0gMHgyLAogICAgICAgIFN0cm9uZ0ZvY3VzID0gMHgzLAogICAg ICAgIFdoZWVsRm9jdXMgPSAweDcKICAgIH07CgogICAgYm9vbCBpc0FjdGl2ZVdpbmRvdygpIGNv bnN0OwogICAgdmlydHVhbCB2b2lkIHNldEFjdGl2ZVdpbmRvdygpOwogICAgYm9vbCBpc0ZvY3Vz RW5hYmxlZCgpIGNvbnN0OwoKICAgIEZvY3VzUG9saWN5IGZvY3VzUG9saWN5KCkgY29uc3Q7CiAg ICB2aXJ0dWFsIHZvaWQgc2V0Rm9jdXNQb2xpY3koIEZvY3VzUG9saWN5ICk7CiAgICBib29sIGhh c0ZvY3VzKCkgY29uc3Q7CiAgICBzdGF0aWMgdm9pZCBzZXRUYWJPcmRlciggUVdpZGdldCAqLCBR V2lkZ2V0ICogKTsKICAgIHZpcnR1YWwgdm9pZCBzZXRGb2N1c1Byb3h5KCBRV2lkZ2V0ICogKTsK ICAgIFFXaWRnZXQgKiBmb2N1c1Byb3h5KCkgY29uc3Q7CgoKCiAgICB2b2lkIGdyYWJNb3VzZSgp OwoKICAgIHZvaWQgZ3JhYk1vdXNlKCBjb25zdCBRQ3Vyc29yICYgKTsKCiAgICB2b2lkIHJlbGVh c2VNb3VzZSgpOwogICAgdm9pZCBncmFiS2V5Ym9hcmQoKTsKICAgIHZvaWQgcmVsZWFzZUtleWJv YXJkKCk7CiAgICBzdGF0aWMgUVdpZGdldCAqIG1vdXNlR3JhYmJlcigpOwogICAgc3RhdGljIFFX aWRnZXQgKiBrZXlib2FyZEdyYWJiZXIoKTsKCgoKICAgIGJvb2wgaXNVcGRhdGVzRW5hYmxlZCgp IGNvbnN0OwoKCgoKcHVibGljOgogICAgdmlydHVhbCB2b2lkIHNldFVwZGF0ZXNFbmFibGVkKCBi b29sIGVuYWJsZSApOwogICAgdm9pZCB1cGRhdGUoKTsKICAgIHZvaWQgdXBkYXRlKCBpbnQgeCwg aW50IHksIGludCB3LCBpbnQgaCApOwogICAgdm9pZCB1cGRhdGUoIGNvbnN0IFFSZWN0JiApOwog ICAgdm9pZCByZXBhaW50KCk7CiAgICB2b2lkIHJlcGFpbnQoIGJvb2wgZXJhc2UgKTsKICAgIHZv aWQgcmVwYWludCggaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsIGJvb2wgZXJhc2U9VFJVRSAp OwogICAgdm9pZCByZXBhaW50KCBjb25zdCBRUmVjdCAmLCBib29sIGVyYXNlPVRSVUUgKTsKICAg IHZvaWQgcmVwYWludCggY29uc3QgUVJlZ2lvbiAmLCBib29sIGVyYXNlPVRSVUUgKTsKCgoKICAg IHZpcnR1YWwgdm9pZCBzaG93KCk7CiAgICB2aXJ0dWFsIHZvaWQgaGlkZSgpOwoKICAgIHZvaWQg aWNvbmlmeSgpIHsgc2hvd01pbmltaXplZCgpOyB9CgogICAgdmlydHVhbCB2b2lkIHNob3dNaW5p bWl6ZWQoKTsKICAgIHZpcnR1YWwgdm9pZCBzaG93TWF4aW1pemVkKCk7CiAgICB2b2lkIHNob3dG dWxsU2NyZWVuKCk7CiAgICB2aXJ0dWFsIHZvaWQgc2hvd05vcm1hbCgpOwogICAgdmlydHVhbCB2 b2lkIHBvbGlzaCgpOwogICAgdm9pZCBjb25zdFBvbGlzaCgpIGNvbnN0OwogICAgYm9vbCBjbG9z ZSgpOwoKICAgIHZvaWQgcmFpc2UoKTsKICAgIHZvaWQgbG93ZXIoKTsKICAgIHZvaWQgc3RhY2tV bmRlciggUVdpZGdldCogKTsKICAgIHZpcnR1YWwgdm9pZCBtb3ZlKCBpbnQgeCwgaW50IHkgKTsK ICAgIHZvaWQgbW92ZSggY29uc3QgUVBvaW50ICYgKTsKICAgIHZpcnR1YWwgdm9pZCByZXNpemUo IGludCB3LCBpbnQgaCApOwogICAgdm9pZCByZXNpemUoIGNvbnN0IFFTaXplICYgKTsKICAgIHZp cnR1YWwgdm9pZCBzZXRHZW9tZXRyeSggaW50IHgsIGludCB5LCBpbnQgdywgaW50IGggKTsKICAg IHZpcnR1YWwgdm9pZCBzZXRHZW9tZXRyeSggY29uc3QgUVJlY3QgJiApOwoKcHVibGljOgogICAg dmlydHVhbCBib29sIGNsb3NlKCBib29sIGFsc29EZWxldGUgKTsKICAgIGJvb2wgaXNWaXNpYmxl KCkgY29uc3Q7CiAgICBib29sIGlzVmlzaWJsZVRvKFFXaWRnZXQqKSBjb25zdDsKICAgIGJvb2wg aXNWaXNpYmxlVG9UTFcoKSBjb25zdDsKICAgIFFSZWN0IHZpc2libGVSZWN0KCkgY29uc3Q7CiAg ICBib29sIGlzSGlkZGVuKCkgY29uc3Q7CiAgICBib29sIGlzTWluaW1pemVkKCkgY29uc3Q7CiAg ICBib29sIGlzTWF4aW1pemVkKCkgY29uc3Q7CgogICAgdmlydHVhbCBRU2l6ZSBzaXplSGludCgp IGNvbnN0OwogICAgdmlydHVhbCBRU2l6ZSBtaW5pbXVtU2l6ZUhpbnQoKSBjb25zdDsKICAgIHZp cnR1YWwgUVNpemVQb2xpY3kgc2l6ZVBvbGljeSgpIGNvbnN0OwogICAgdm9pZCBzZXRTaXplUG9s aWN5KCBRU2l6ZVBvbGljeSApOwogICAgdmlydHVhbCBpbnQgaGVpZ2h0Rm9yV2lkdGgoaW50KSBj b25zdDsKCiAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2l6ZSgpOwoKICAgIFFMYXlvdXQgKiBsYXlv dXQoKSBjb25zdCB7IHJldHVybiBsYXlfb3V0OyB9CgogICAgdm9pZCB1cGRhdGVHZW9tZXRyeSgp OwogICAgdmlydHVhbCB2b2lkIHJlcGFyZW50KCBRV2lkZ2V0ICpwYXJlbnQsIFdGbGFncywgY29u c3QgUVBvaW50ICYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIHNob3dJ dD1GQUxTRSApOwogICAgdm9pZCByZXBhcmVudCggUVdpZGdldCAqcGFyZW50LCBjb25zdCBRUG9p bnQgJiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgc2hvd0l0PUZBTFNF ICk7CgogICAgdm9pZCByZWNyZWF0ZSggUVdpZGdldCAqcGFyZW50LCBXRmxhZ3MgZiwgY29uc3Qg UVBvaW50ICYgcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgc2hvd0l0 PUZBTFNFICkKICAgIHsgcmVwYXJlbnQocGFyZW50LGYscCxzaG93SXQpOyB9CgoKICAgIHZvaWQg ZXJhc2UoKTsKICAgIHZvaWQgZXJhc2UoIGludCB4LCBpbnQgeSwgaW50IHcsIGludCBoICk7CiAg ICB2b2lkIGVyYXNlKCBjb25zdCBRUmVjdCAmICk7CiAgICB2b2lkIGVyYXNlKCBjb25zdCBRUmVn aW9uICYgKTsKICAgIHZvaWQgc2Nyb2xsKCBpbnQgZHgsIGludCBkeSApOwogICAgdm9pZCBzY3Jv bGwoIGludCBkeCwgaW50IGR5LCBjb25zdCBRUmVjdCYgKTsKCiAgICB2b2lkIGRyYXdUZXh0KCBp bnQgeCwgaW50IHksIGNvbnN0IFFTdHJpbmcgJik7CiAgICB2b2lkIGRyYXdUZXh0KCBjb25zdCBR UG9pbnQgJiwgY29uc3QgUVN0cmluZyAmKTsKCgoKICAgIFFXaWRnZXQgKiBmb2N1c1dpZGdldCgp IGNvbnN0OwogICAgUVJlY3QgbWljcm9Gb2N1c0hpbnQoKSBjb25zdDsKCgoKICAgIGJvb2wgYWNj ZXB0RHJvcHMoKSBjb25zdDsKICAgIHZpcnR1YWwgdm9pZCBzZXRBY2NlcHREcm9wcyggYm9vbCBv biApOwoKCgogICAgdmlydHVhbCB2b2lkIHNldEF1dG9NYXNrKGJvb2wpOwogICAgYm9vbCBhdXRv TWFzaygpIGNvbnN0OwoKICAgIGVudW0gQmFja2dyb3VuZE9yaWdpbiB7IFdpZGdldE9yaWdpbiwg UGFyZW50T3JpZ2luIH07CgogICAgdm9pZCBzZXRCYWNrZ3JvdW5kT3JpZ2luKCBCYWNrZ3JvdW5k T3JpZ2luICk7CiAgICBCYWNrZ3JvdW5kT3JpZ2luIGJhY2tncm91bmRPcmlnaW4oKSBjb25zdDsK CgoKICAgIHZpcnR1YWwgYm9vbCBjdXN0b21XaGF0c1RoaXMoKSBjb25zdDsKCiAgICBRV2lkZ2V0 ICogcGFyZW50V2lkZ2V0KCkgY29uc3Q7CiAgICBib29sIHRlc3RXU3RhdGUoIHVpbnQgbiApIGNv bnN0OwogICAgYm9vbCB0ZXN0V0ZsYWdzKCBXRmxhZ3MgbiApIGNvbnN0OwogICAgc3RhdGljIFFX aWRnZXQgKiBmaW5kKCBXSWQgKTsKICAgIHN0YXRpYyBRV2lkZ2V0TWFwcGVyICp3bWFwcGVyKCk7 CgoKCgoKcHJvdGVjdGVkOgoKICAgIGJvb2wgZXZlbnQoIFFFdmVudCAqICk7CiAgICB2aXJ0dWFs IHZvaWQgbW91c2VQcmVzc0V2ZW50KCBRTW91c2VFdmVudCAqICk7CiAgICB2aXJ0dWFsIHZvaWQg bW91c2VSZWxlYXNlRXZlbnQoIFFNb3VzZUV2ZW50ICogKTsKICAgIHZpcnR1YWwgdm9pZCBtb3Vz ZURvdWJsZUNsaWNrRXZlbnQoIFFNb3VzZUV2ZW50ICogKTsKICAgIHZpcnR1YWwgdm9pZCBtb3Vz ZU1vdmVFdmVudCggUU1vdXNlRXZlbnQgKiApOwogICAgdmlydHVhbCB2b2lkIHdoZWVsRXZlbnQo IFFXaGVlbEV2ZW50ICogKTsKICAgIHZpcnR1YWwgdm9pZCBrZXlQcmVzc0V2ZW50KCBRS2V5RXZl bnQgKiApOwogICAgdmlydHVhbCB2b2lkIGtleVJlbGVhc2VFdmVudCggUUtleUV2ZW50ICogKTsK ICAgIHZpcnR1YWwgdm9pZCBmb2N1c0luRXZlbnQoIFFGb2N1c0V2ZW50ICogKTsKICAgIHZpcnR1 YWwgdm9pZCBmb2N1c091dEV2ZW50KCBRRm9jdXNFdmVudCAqICk7CiAgICB2aXJ0dWFsIHZvaWQg ZW50ZXJFdmVudCggUUV2ZW50ICogKTsKICAgIHZpcnR1YWwgdm9pZCBsZWF2ZUV2ZW50KCBRRXZl bnQgKiApOwogICAgdmlydHVhbCB2b2lkIHBhaW50RXZlbnQoIFFQYWludEV2ZW50ICogKTsKICAg IHZpcnR1YWwgdm9pZCBtb3ZlRXZlbnQoIFFNb3ZlRXZlbnQgKiApOwogICAgdmlydHVhbCB2b2lk IHJlc2l6ZUV2ZW50KCBRUmVzaXplRXZlbnQgKiApOwogICAgdmlydHVhbCB2b2lkIGNsb3NlRXZl bnQoIFFDbG9zZUV2ZW50ICogKTsKCgogICAgdmlydHVhbCB2b2lkIGRyYWdFbnRlckV2ZW50KCBR RHJhZ0VudGVyRXZlbnQgKiApOwogICAgdmlydHVhbCB2b2lkIGRyYWdNb3ZlRXZlbnQoIFFEcmFn TW92ZUV2ZW50ICogKTsKICAgIHZpcnR1YWwgdm9pZCBkcmFnTGVhdmVFdmVudCggUURyYWdMZWF2 ZUV2ZW50ICogKTsKICAgIHZpcnR1YWwgdm9pZCBkcm9wRXZlbnQoIFFEcm9wRXZlbnQgKiApOwoK CiAgICB2aXJ0dWFsIHZvaWQgc2hvd0V2ZW50KCBRU2hvd0V2ZW50ICogKTsKICAgIHZpcnR1YWwg dm9pZCBoaWRlRXZlbnQoIFFIaWRlRXZlbnQgKiApOwogICAgdmlydHVhbCB2b2lkIGN1c3RvbUV2 ZW50KCBRQ3VzdG9tRXZlbnQgKiApOwoKIyA0NTQgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUv cXdpZGdldC5oIiAzCiAgICB2aXJ0dWFsIGJvb2wgeDExRXZlbnQoIFhFdmVudCAqICk7CgoKCgoK CiAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlTWFzaygpOwoKCgpwcm90ZWN0ZWQ6CiAgICB2aXJ0dWFs IHZvaWQgc3R5bGVDaGFuZ2UoIFFTdHlsZSYgKTsKICAgIHZpcnR1YWwgdm9pZCBlbmFibGVkQ2hh bmdlKCBib29sICk7CiAgICB2aXJ0dWFsIHZvaWQgYmFja2dyb3VuZENvbG9yQ2hhbmdlKCBjb25z dCBRQ29sb3IgJiApOwogICAgdmlydHVhbCB2b2lkIGJhY2tncm91bmRQaXhtYXBDaGFuZ2UoIGNv bnN0IFFQaXhtYXAgJiApOwoKICAgIHZpcnR1YWwgdm9pZCBwYWxldHRlQ2hhbmdlKCBjb25zdCBR UGFsZXR0ZSAmICk7CgogICAgdmlydHVhbCB2b2lkIGZvbnRDaGFuZ2UoIGNvbnN0IFFGb250ICYg KTsKCiAgICBpbnQgbWV0cmljKCBpbnQgKSBjb25zdDsKCiAgICB2aXJ0dWFsIHZvaWQgY3JlYXRl KCBXSWQgPSAwLCBib29sIGluaXRpYWxpemVXaW5kb3cgPSBUUlVFLAogICAgICAgICAgICAgICAg ICAgICAgICAgYm9vbCBkZXN0cm95T2xkV2luZG93ID0gVFJVRSApOwogICAgdmlydHVhbCB2b2lk IGRlc3Ryb3koIGJvb2wgZGVzdHJveVdpbmRvdyA9IFRSVUUsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgYm9vbCBkZXN0cm95U3ViV2luZG93cyA9IFRSVUUgKTsKICAgIHVpbnQgZ2V0V1N0YXRl KCkgY29uc3Q7CiAgICB2aXJ0dWFsIHZvaWQgc2V0V1N0YXRlKCB1aW50ICk7CiAgICB2b2lkIGNs ZWFyV1N0YXRlKCB1aW50IG4gKTsKICAgIFdGbGFncyBnZXRXRmxhZ3MoKSBjb25zdDsKICAgIHZp cnR1YWwgdm9pZCBzZXRXRmxhZ3MoIFdGbGFncyApOwogICAgdm9pZCBjbGVhcldGbGFncyggV0Zs YWdzIG4gKTsKCiAgICB2aXJ0dWFsIHZvaWQgc2V0RlJlY3QoIGNvbnN0IFFSZWN0ICYgKTsKICAg IHZpcnR1YWwgdm9pZCBzZXRDUmVjdCggY29uc3QgUVJlY3QgJiApOwoKICAgIHZpcnR1YWwgYm9v bCBmb2N1c05leHRQcmV2Q2hpbGQoIGJvb2wgbmV4dCApOwoKICAgIFFXRXh0cmEgKmV4dHJhRGF0 YSgpOwogICAgUVRMV0V4dHJhICp0b3BEYXRhKCk7CiAgICBRRm9jdXNEYXRhICpmb2N1c0RhdGEo KTsKCiAgICB2aXJ0dWFsIHZvaWQgc2V0S2V5Q29tcHJlc3Npb24oYm9vbCk7CiAgICB2aXJ0dWFs IHZvaWQgc2V0TWljcm9Gb2N1c0hpbnQoaW50IHgsIGludCB5LCBpbnQgdywgaW50IGgsIGJvb2wg dGV4dD1UUlVFKTsKCnByaXZhdGU6CiAgICB2b2lkIGZvY3VzUHJveHlEZXN0cm95ZWQoKTsKCnBy aXZhdGU6CiAgICB2b2lkIHNldEZvbnRTeXMoKTsKCiAgICB2b2lkIHNldExheW91dCggUUxheW91 dCAqbCApOwoKICAgIHZvaWQgc2V0V2luSWQoIFdJZCApOwogICAgdm9pZCBzaG93V2luZG93KCk7 CiAgICB2b2lkIGhpZGVXaW5kb3coKTsKICAgIHZvaWQgc2VuZFNob3dFdmVudHNUb0NoaWxkcmVu KCBib29sIHNwb250YW5lb3VzICk7CiAgICB2b2lkIHNlbmRIaWRlRXZlbnRzVG9DaGlsZHJlbigg Ym9vbCBzcG9udGFuZW91cyApOwogICAgdm9pZCBjcmVhdGVUTEV4dHJhKCk7CiAgICB2b2lkIGNy ZWF0ZUV4dHJhKCk7CiAgICB2b2lkIGRlbGV0ZUV4dHJhKCk7CiAgICB2b2lkIGNyZWF0ZVN5c0V4 dHJhKCk7CiAgICB2b2lkIGRlbGV0ZVN5c0V4dHJhKCk7CiAgICB2b2lkIGNyZWF0ZVRMU3lzRXh0 cmEoKTsKICAgIHZvaWQgZGVsZXRlVExTeXNFeHRyYSgpOwogICAgdm9pZCBkZWFjdGl2YXRlV2lk Z2V0Q2xlYW51cCgpOwogICAgdm9pZCBpbnRlcm5hbFNldEdlb21ldHJ5KCBpbnQsIGludCwgaW50 LCBpbnQsIGJvb2wgKTsKICAgIHZvaWQgcmVwYXJlbnRGb2N1c1dpZGdldHMoIFFXaWRnZXQgKiAp OwogICAgUUZvY3VzRGF0YSAqZm9jdXNEYXRhKCBib29sIGNyZWF0ZSApOwogICAgdm9pZCBzZXRC YWNrZ3JvdW5kRnJvbU1vZGUoKTsKICAgIHZvaWQgc2V0QmFja2dyb3VuZENvbG9yRGlyZWN0KCBj b25zdCBRQ29sb3IgJiApOwogICAgdm9pZCBzZXRCYWNrZ3JvdW5kUGl4bWFwRGlyZWN0KCBjb25z dCBRUGl4bWFwICYgKTsKICAgIHZvaWQgc2V0QmFja2dyb3VuZE1vZGVEaXJlY3QoIEJhY2tncm91 bmRNb2RlICk7CiAgICB2b2lkIHNldEJhY2tncm91bmRFbXB0eSgpOwoKICAgIHZvaWQgc2V0QmFj a2dyb3VuZFgxMVJlbGF0aXZlKCk7CgoKICAgIFdJZCB3aW5pZDsKICAgIHVpbnQgd2lkZ2V0X3N0 YXRlOwogICAgdWludCB3aWRnZXRfZmxhZ3M7CiAgICB1aW50IHByb3BhZ2F0ZV9mb250IDogMjsK ICAgIHVpbnQgcHJvcGFnYXRlX3BhbGV0dGUgOiAyOwogICAgdWludCBmb2N1c19wb2xpY3kgOiA0 OwogICAgdWludCBvd25fZm9udCA6MTsKICAgIHVpbnQgb3duX3BhbGV0dGUgOjE7CiAgICB1aW50 IHNpemVoaW50X2ZvcmNlZCA6MTsKICAgIHVpbnQgaXNfY2xvc2luZyA6MTsKICAgIHVpbnQgaW5f c2hvdyA6IDE7CiAgICBRUG9pbnQgZnBvczsKICAgIFFSZWN0IGNyZWN0OwogICAgUUNvbG9yIGJn X2NvbDsKCiAgICBRUGFsZXR0ZSBwYWw7CgogICAgUUZvbnQgZm50OwoKICAgIFFMYXlvdXQgKmxh eV9vdXQ7CgogICAgUVdFeHRyYSAqZXh0cmE7CiMgNTcxICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNs dWRlL3F3aWRnZXQuaCIgMwogICAgc3RhdGljIHZvaWQgY3JlYXRlTWFwcGVyKCk7CiAgICBzdGF0 aWMgdm9pZCBkZXN0cm95TWFwcGVyKCk7CiAgICBzdGF0aWMgUVdpZGdldExpc3QgKndMaXN0KCk7 CiAgICBzdGF0aWMgUVdpZGdldExpc3QgKnRsd0xpc3QoKTsKICAgIHN0YXRpYyBRV2lkZ2V0TWFw cGVyICptYXBwZXI7CiAgICBmcmllbmQgY2xhc3MgUUFwcGxpY2F0aW9uOwogICAgZnJpZW5kIGNs YXNzIFFCYXNlQXBwbGljYXRpb247CiAgICBmcmllbmQgY2xhc3MgUVBhaW50ZXI7CiAgICBmcmll bmQgY2xhc3MgUUZvbnRNZXRyaWNzOwogICAgZnJpZW5kIGNsYXNzIFFGb250SW5mbzsKICAgIGZy aWVuZCBjbGFzcyBRRVRXaWRnZXQ7CgogICAgZnJpZW5kIGNsYXNzIFFMYXlvdXQ7CgoKCnByaXZh dGU6CgogICAgUVdpZGdldCggY29uc3QgUVdpZGdldCAmICk7CiAgICBRV2lkZ2V0ICZvcGVyYXRv cj0oIGNvbnN0IFFXaWRnZXQgJiApOwoKCnB1YmxpYzoKCiAgICB2b2lkIHNldFBhbGV0dGUoIGNv bnN0IFFQYWxldHRlICYsIGJvb2wgaVJlYWxseU1lYW5JdCApOwoKICAgIHZvaWQgc2V0Rm9udCgg Y29uc3QgUUZvbnQgJiwgYm9vbCBpUmVhbGx5TWVhbkl0ICk7Cn07CgoKaW5saW5lIGJvb2wgUVdp ZGdldDo6dGVzdFdTdGF0ZSggdWludCBmICkgY29uc3QKeyByZXR1cm4gKHdpZGdldF9zdGF0ZSAm IGYpICE9IDA7IH0KCmlubGluZSBib29sIFFXaWRnZXQ6OnRlc3RXRmxhZ3MoIFdGbGFncyBmICkg Y29uc3QKeyByZXR1cm4gKHdpZGdldF9mbGFncyAmIGYpICE9IDA7IH0KCgppbmxpbmUgV0lkIFFX aWRnZXQ6OndpbklkKCkgY29uc3QKeyByZXR1cm4gd2luaWQ7IH0KCmlubGluZSBib29sIFFXaWRn ZXQ6OmlzVG9wTGV2ZWwoKSBjb25zdAp7IHJldHVybiB0ZXN0V0ZsYWdzKFdUeXBlX1RvcExldmVs KTsgfQoKaW5saW5lIGJvb2wgUVdpZGdldDo6aXNNb2RhbCgpIGNvbnN0CnsgcmV0dXJuIHRlc3RX RmxhZ3MoV1R5cGVfTW9kYWwpOyB9CgppbmxpbmUgYm9vbCBRV2lkZ2V0Ojppc1BvcHVwKCkgY29u c3QKeyByZXR1cm4gdGVzdFdGbGFncyhXVHlwZV9Qb3B1cCk7IH0KCmlubGluZSBib29sIFFXaWRn ZXQ6OmlzRGVza3RvcCgpIGNvbnN0CnsgcmV0dXJuIHRlc3RXRmxhZ3MoV1R5cGVfRGVza3RvcCk7 IH0KCmlubGluZSBib29sIFFXaWRnZXQ6OmlzRW5hYmxlZCgpIGNvbnN0CnsgcmV0dXJuICF0ZXN0 V1N0YXRlKFdTdGF0ZV9EaXNhYmxlZCk7IH0KCmlubGluZSBjb25zdCBRUmVjdCAmUVdpZGdldDo6 Z2VvbWV0cnkoKSBjb25zdAp7IHJldHVybiBjcmVjdDsgfQoKaW5saW5lIGludCBRV2lkZ2V0Ojp4 KCkgY29uc3QKeyByZXR1cm4gZnBvcy54KCk7IH0KCmlubGluZSBpbnQgUVdpZGdldDo6eSgpIGNv bnN0CnsgcmV0dXJuIGZwb3MueSgpOyB9CgppbmxpbmUgUVBvaW50IFFXaWRnZXQ6OnBvcygpIGNv bnN0CnsgcmV0dXJuIGZwb3M7IH0KCmlubGluZSBRU2l6ZSBRV2lkZ2V0OjpzaXplKCkgY29uc3QK eyByZXR1cm4gY3JlY3Quc2l6ZSgpOyB9CgppbmxpbmUgaW50IFFXaWRnZXQ6OndpZHRoKCkgY29u c3QKeyByZXR1cm4gY3JlY3Qud2lkdGgoKTsgfQoKaW5saW5lIGludCBRV2lkZ2V0OjpoZWlnaHQo KSBjb25zdAp7IHJldHVybiBjcmVjdC5oZWlnaHQoKTsgfQoKaW5saW5lIFFSZWN0IFFXaWRnZXQ6 OnJlY3QoKSBjb25zdAp7IHJldHVybiBRUmVjdCgwLDAsY3JlY3Qud2lkdGgoKSxjcmVjdC5oZWln aHQoKSk7IH0KCmlubGluZSBpbnQgUVdpZGdldDo6bWluaW11bVdpZHRoKCkgY29uc3QKeyByZXR1 cm4gbWluaW11bVNpemUoKS53aWR0aCgpOyB9CgppbmxpbmUgaW50IFFXaWRnZXQ6Om1pbmltdW1I ZWlnaHQoKSBjb25zdAp7IHJldHVybiBtaW5pbXVtU2l6ZSgpLmhlaWdodCgpOyB9CgppbmxpbmUg aW50IFFXaWRnZXQ6Om1heGltdW1XaWR0aCgpIGNvbnN0CnsgcmV0dXJuIG1heGltdW1TaXplKCku d2lkdGgoKTsgfQoKaW5saW5lIGludCBRV2lkZ2V0OjptYXhpbXVtSGVpZ2h0KCkgY29uc3QKeyBy ZXR1cm4gbWF4aW11bVNpemUoKS5oZWlnaHQoKTsgfQoKaW5saW5lIHZvaWQgUVdpZGdldDo6c2V0 TWluaW11bVNpemUoIGNvbnN0IFFTaXplICZzICkKeyBzZXRNaW5pbXVtU2l6ZShzLndpZHRoKCks cy5oZWlnaHQoKSk7IH0KCmlubGluZSB2b2lkIFFXaWRnZXQ6OnNldE1heGltdW1TaXplKCBjb25z dCBRU2l6ZSAmcyApCnsgc2V0TWF4aW11bVNpemUocy53aWR0aCgpLHMuaGVpZ2h0KCkpOyB9Cgpp bmxpbmUgdm9pZCBRV2lkZ2V0OjpzZXRTaXplSW5jcmVtZW50KCBjb25zdCBRU2l6ZSAmcyApCnsg c2V0U2l6ZUluY3JlbWVudChzLndpZHRoKCkscy5oZWlnaHQoKSk7IH0KCmlubGluZSB2b2lkIFFX aWRnZXQ6OnNldEJhc2VTaXplKCBjb25zdCBRU2l6ZSAmcyApCnsgc2V0QmFzZVNpemUocy53aWR0 aCgpLHMuaGVpZ2h0KCkpOyB9CgppbmxpbmUgY29uc3QgUUNvbG9yICZRV2lkZ2V0OjpiYWNrZ3Jv dW5kQ29sb3IoKSBjb25zdAp7IHJldHVybiBiZ19jb2w7IH0KCgppbmxpbmUgY29uc3QgUVBhbGV0 dGUgJlFXaWRnZXQ6OnBhbGV0dGUoKSBjb25zdAp7IHJldHVybiBwYWw7IH0KCgppbmxpbmUgUUZv bnQgUVdpZGdldDo6Zm9udCgpIGNvbnN0CnsgcmV0dXJuIGZudDsgfQoKaW5saW5lIFFGb250TWV0 cmljcyBRV2lkZ2V0Ojpmb250TWV0cmljcygpIGNvbnN0CnsgcmV0dXJuIFFGb250TWV0cmljcyhm b250KCkpOyB9CgppbmxpbmUgUUZvbnRJbmZvIFFXaWRnZXQ6OmZvbnRJbmZvKCkgY29uc3QKeyBy ZXR1cm4gUUZvbnRJbmZvKGZvbnQoKSk7IH0KCmlubGluZSBib29sIFFXaWRnZXQ6Omhhc01vdXNl VHJhY2tpbmcoKSBjb25zdAp7IHJldHVybiB0ZXN0V1N0YXRlKFdTdGF0ZV9Nb3VzZVRyYWNraW5n KTsgfQoKaW5saW5lIGJvb2wgUVdpZGdldDo6aXNGb2N1c0VuYWJsZWQoKSBjb25zdAp7IHJldHVy biAoRm9jdXNQb2xpY3kpZm9jdXNfcG9saWN5ICE9IE5vRm9jdXM7IH0KCmlubGluZSBRV2lkZ2V0 OjpGb2N1c1BvbGljeSBRV2lkZ2V0Ojpmb2N1c1BvbGljeSgpIGNvbnN0CnsgcmV0dXJuIChGb2N1 c1BvbGljeSlmb2N1c19wb2xpY3k7IH0KCmlubGluZSBib29sIFFXaWRnZXQ6OmlzVXBkYXRlc0Vu YWJsZWQoKSBjb25zdAp7IHJldHVybiAhdGVzdFdTdGF0ZShXU3RhdGVfQmxvY2tVcGRhdGVzKTsg fQoKaW5saW5lIHZvaWQgUVdpZGdldDo6dXBkYXRlKCBjb25zdCBRUmVjdCAmciApCnsgdXBkYXRl KCByLngoKSwgci55KCksIHIud2lkdGgoKSwgci5oZWlnaHQoKSApOyB9CgppbmxpbmUgdm9pZCBR V2lkZ2V0OjpyZXBhaW50KCkKeyByZXBhaW50KCAwLCAwLCBjcmVjdC53aWR0aCgpLCBjcmVjdC5o ZWlnaHQoKSwgVFJVRSApOyB9CgppbmxpbmUgdm9pZCBRV2lkZ2V0OjpyZXBhaW50KCBib29sIGVy YXNlICkKeyByZXBhaW50KCAwLCAwLCBjcmVjdC53aWR0aCgpLCBjcmVjdC5oZWlnaHQoKSwgZXJh c2UgKTsgfQoKaW5saW5lIHZvaWQgUVdpZGdldDo6cmVwYWludCggY29uc3QgUVJlY3QgJnIsIGJv b2wgZXJhc2UgKQp7IHJlcGFpbnQoIHIueCgpLCByLnkoKSwgci53aWR0aCgpLCByLmhlaWdodCgp LCBlcmFzZSApOyB9CgppbmxpbmUgdm9pZCBRV2lkZ2V0OjplcmFzZSgpCnsgZXJhc2UoIDAsIDAs IGNyZWN0LndpZHRoKCksIGNyZWN0LmhlaWdodCgpICk7IH0KCmlubGluZSB2b2lkIFFXaWRnZXQ6 OmVyYXNlKCBjb25zdCBRUmVjdCAmciApCnsgZXJhc2UoIHIueCgpLCByLnkoKSwgci53aWR0aCgp LCByLmhlaWdodCgpICk7IH0KCmlubGluZSBib29sIFFXaWRnZXQ6OmNsb3NlKCkKeyByZXR1cm4g Y2xvc2UoIEZBTFNFICk7IH0KCmlubGluZSBib29sIFFXaWRnZXQ6OmlzVmlzaWJsZSgpIGNvbnN0 CnsgcmV0dXJuIHRlc3RXU3RhdGUoV1N0YXRlX1Zpc2libGUpOyB9CgppbmxpbmUgYm9vbCBRV2lk Z2V0Ojppc0hpZGRlbigpIGNvbnN0CnsgcmV0dXJuIHRlc3RXU3RhdGUoV1N0YXRlX0ZvcmNlSGlk ZSk7IH0KCmlubGluZSB2b2lkIFFXaWRnZXQ6Om1vdmUoIGNvbnN0IFFQb2ludCAmcCApCnsgbW92 ZSggcC54KCksIHAueSgpICk7IH0KCmlubGluZSB2b2lkIFFXaWRnZXQ6OnJlc2l6ZSggY29uc3Qg UVNpemUgJnMgKQp7IHJlc2l6ZSggcy53aWR0aCgpLCBzLmhlaWdodCgpKTsgfQoKaW5saW5lIHZv aWQgUVdpZGdldDo6c2V0R2VvbWV0cnkoIGNvbnN0IFFSZWN0ICZyICkKeyBzZXRHZW9tZXRyeSgg ci5sZWZ0KCksIHIudG9wKCksIHIud2lkdGgoKSwgci5oZWlnaHQoKSApOyB9CgppbmxpbmUgdm9p ZCBRV2lkZ2V0OjpkcmF3VGV4dCggY29uc3QgUVBvaW50ICZwLCBjb25zdCBRU3RyaW5nICZzICkK eyBkcmF3VGV4dCggcC54KCksIHAueSgpLCBzICk7IH0KCmlubGluZSBRV2lkZ2V0ICpRV2lkZ2V0 OjpwYXJlbnRXaWRnZXQoKSBjb25zdAp7IHJldHVybiAoUVdpZGdldCAqKVFPYmplY3Q6OnBhcmVu dCgpOyB9CgppbmxpbmUgUVdpZGdldE1hcHBlciAqUVdpZGdldDo6d21hcHBlcigpCnsgcmV0dXJu IG1hcHBlcjsgfQoKaW5saW5lIHVpbnQgUVdpZGdldDo6Z2V0V1N0YXRlKCkgY29uc3QKeyByZXR1 cm4gd2lkZ2V0X3N0YXRlOyB9CgppbmxpbmUgdm9pZCBRV2lkZ2V0OjpzZXRXU3RhdGUoIHVpbnQg ZiApCnsgd2lkZ2V0X3N0YXRlIHw9IGY7IH0KCmlubGluZSB2b2lkIFFXaWRnZXQ6OmNsZWFyV1N0 YXRlKCB1aW50IGYgKQp7IHdpZGdldF9zdGF0ZSAmPSB+ZjsgfQoKaW5saW5lIFF0OjpXRmxhZ3Mg UVdpZGdldDo6Z2V0V0ZsYWdzKCkgY29uc3QKeyByZXR1cm4gd2lkZ2V0X2ZsYWdzOyB9Cgppbmxp bmUgdm9pZCBRV2lkZ2V0OjpzZXRXRmxhZ3MoIFdGbGFncyBmICkKeyB3aWRnZXRfZmxhZ3MgfD0g ZjsgfQoKaW5saW5lIHZvaWQgUVdpZGdldDo6Y2xlYXJXRmxhZ3MoIFdGbGFncyBmICkKeyB3aWRn ZXRfZmxhZ3MgJj0gfmY7IH0KCmlubGluZSB2b2lkIFFXaWRnZXQ6OmNvbnN0UG9saXNoKCkgY29u c3QKewogICAgaWYgKCAhdGVzdFdTdGF0ZShXU3RhdGVfUG9saXNoZWQpICkgewogICAgICAgIFFX aWRnZXQqIHRoYXQgPSAoUVdpZGdldCopIHRoaXM7CiAgICAgICAgdGhhdC0+cG9saXNoKCk7CiAg ICAgICAgdGhhdC0+c2V0V1N0YXRlKFdTdGF0ZV9Qb2xpc2hlZCk7CiAgICB9Cn0KCmlubGluZSBi b29sIFFXaWRnZXQ6Om93bkN1cnNvcigpIGNvbnN0CnsKICAgIHJldHVybiB0ZXN0V1N0YXRlKCBX U3RhdGVfT3duQ3Vyc29yICk7Cn0KCmlubGluZSBib29sIFFXaWRnZXQ6Om93bkZvbnQoKSBjb25z dAp7CiAgICByZXR1cm4gb3duX2ZvbnQ7Cn0KCmlubGluZSBib29sIFFXaWRnZXQ6Om93blBhbGV0 dGUoKSBjb25zdAp7CiAgICByZXR1cm4gb3duX3BhbGV0dGU7Cn0KCgoKCgoKY2xhc3MgUUZvY3Vz RGF0YTsKY2xhc3MgUVdTTWFuYWdlcjsKCgoKCnN0cnVjdCBRVExXRXh0cmEgewogICAgUVN0cmlu ZyBjYXB0aW9uOwogICAgUVN0cmluZyBpY29uVGV4dDsKICAgIFFQaXhtYXAgKmljb247CiAgICBR Rm9jdXNEYXRhICpmb2N1c0RhdGE7CiAgICBRU2l6ZSBmc2l6ZTsKICAgIHNob3J0IGluY3csIGlu Y2g7CiAgICB1aW50IGljb25pYzogMTsKICAgIHVpbnQgZnVsbHNjcmVlbiA6IDE7CiAgICB1aW50 IHNob3dNb2RlOiAyOwogICAgc2hvcnQgYmFzZXcsIGJhc2VoOwoKICAgIFdJZCBwYXJlbnRXaW5J ZDsKICAgIHVpbnQgZW1iZWRkZWQgOiAxOwogICAgdWludCByZXNlcnZlZDogMjsKICAgIHVpbnQg ZG5kIDogMTsKICAgIHVpbnQgdXNwb3MgOiAxOwogICAgdWludCB1c3NpemUgOiAxOwogICAgdm9p ZCAqeGljOwojIDgyOCAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xd2lkZ2V0LmgiIDMKICAg IFFSZWN0IG5vcm1hbEdlb21ldHJ5Owp9OwoKCgoKCgpzdHJ1Y3QgUVdFeHRyYSB7CiAgICBRX0lO VDE2IG1pbncsIG1pbmg7CiAgICBRX0lOVDE2IG1heHcsIG1heGg7CiAgICBRUGl4bWFwICpiZ19w aXg7CiAgICBRV2lkZ2V0ICpmb2N1c19wcm94eTsKCiAgICBRQ3Vyc29yICpjdXJzOwoKICAgIFFU TFdFeHRyYSAqdG9wZXh0cmE7CgoKCgogICAgV0lkIHhEbmRQcm94eTsKCgoKCiAgICBjaGFyIGJn X21vZGU7CiAgICBRU3R5bGUqIHN0eWxlOwogICAgUVJlY3QgbWljcm9fZm9jdXNfaGludDsKICAg IFFTaXplUG9saWN5IHNpemVfcG9saWN5OwogICAgdm9pZCAqIHBvc3RlZF9ldmVudHM7Cn07CgoK IyAzMyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xYXBwbGljYXRpb24uaCIgMiAzCgojIDMz ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3Fhc2NpaWRpY3QuaCIgMSAzCiMgMzMgIi91c3Iv bGliL3F0LTIuMi4wL2luY2x1ZGUvcWdkaWN0LmgiIDEgMwojIDM2ICIvdXNyL2xpYi9xdC0yLjIu MC9pbmNsdWRlL3Fjb2xsZWN0aW9uLmgiIDEgMwpjbGFzcyBRR1ZlY3RvcjsKY2xhc3MgUUdMaXN0 OwpjbGFzcyBRR0RpY3Q7CgoKY2xhc3MgUUNvbGxlY3Rpb24KewpwdWJsaWM6CiAgICBib29sIGF1 dG9EZWxldGUoKSBjb25zdCB7IHJldHVybiBkZWxfaXRlbTsgfQogICAgdm9pZCBzZXRBdXRvRGVs ZXRlKCBib29sIGVuYWJsZSApIHsgZGVsX2l0ZW0gPSBlbmFibGU7IH0KCiAgICB2aXJ0dWFsIHVp bnQgY291bnQoKSBjb25zdCA9IDA7CiAgICB2aXJ0dWFsIHZvaWQgY2xlYXIoKSA9IDA7CgogICAg dHlwZWRlZiB2b2lkICpJdGVtOwoKcHJvdGVjdGVkOgogICAgUUNvbGxlY3Rpb24oKSB7IGRlbF9p dGVtID0gRkFMU0U7IH0KICAgIFFDb2xsZWN0aW9uKGNvbnN0IFFDb2xsZWN0aW9uICYpIHsgZGVs X2l0ZW0gPSBGQUxTRTsgfQogICAgdmlydHVhbCB+UUNvbGxlY3Rpb24oKSB7fQoKICAgIGJvb2wg ZGVsX2l0ZW07CgogICAgdmlydHVhbCBJdGVtIG5ld0l0ZW0oIEl0ZW0gKTsKICAgIHZpcnR1YWwg dm9pZCBkZWxldGVJdGVtKCBJdGVtICk7Cn07CgoKIyAzMyAiL3Vzci9saWIvcXQtMi4yLjAvaW5j bHVkZS9xZ2RpY3QuaCIgMiAzCgoKCmNsYXNzIFFHRGljdEl0ZXJhdG9yOwpjbGFzcyBRR0RJdExp c3Q7CgoKY2xhc3MgUUJhc2VCdWNrZXQKewpwdWJsaWM6CiAgICBRQ29sbGVjdGlvbjo6SXRlbSBn ZXREYXRhKCkgeyByZXR1cm4gZGF0YTsgfQogICAgUUNvbGxlY3Rpb246Okl0ZW0gc2V0RGF0YSgg UUNvbGxlY3Rpb246Okl0ZW0gZCApIHsgcmV0dXJuIGRhdGEgPSBkOyB9CiAgICBRQmFzZUJ1Y2tl dCAqZ2V0TmV4dCgpIHsgcmV0dXJuIG5leHQ7IH0KICAgIHZvaWQgc2V0TmV4dCggUUJhc2VCdWNr ZXQgKm4pIHsgbmV4dCA9IG47IH0KcHJvdGVjdGVkOgogICAgUUJhc2VCdWNrZXQoIFFDb2xsZWN0 aW9uOjpJdGVtIGQsIFFCYXNlQnVja2V0ICpuICkgOiBkYXRhKGQpLCBuZXh0KG4pIHt9CiAgICBR Q29sbGVjdGlvbjo6SXRlbSBkYXRhOwogICAgUUJhc2VCdWNrZXQgKm5leHQ7Cn07CgpjbGFzcyBR U3RyaW5nQnVja2V0IDogcHVibGljIFFCYXNlQnVja2V0CnsKcHVibGljOgogICAgUVN0cmluZ0J1 Y2tldCggY29uc3QgUVN0cmluZyAmaywgUUNvbGxlY3Rpb246Okl0ZW0gZCwgUUJhc2VCdWNrZXQg Km4gKQogICAgICAgIDogUUJhc2VCdWNrZXQoZCxuKSwga2V5KGspIHt9CiAgICBjb25zdCBRU3Ry aW5nICZnZXRLZXkoKSBjb25zdCB7IHJldHVybiBrZXk7IH0KcHJpdmF0ZToKICAgIFFTdHJpbmcg a2V5Owp9OwoKY2xhc3MgUUFzY2lpQnVja2V0IDogcHVibGljIFFCYXNlQnVja2V0CnsKcHVibGlj OgogICAgUUFzY2lpQnVja2V0KCBjb25zdCBjaGFyICprLCBRQ29sbGVjdGlvbjo6SXRlbSBkLCBR QmFzZUJ1Y2tldCAqbiApCiAgICAgICAgOiBRQmFzZUJ1Y2tldChkLG4pLCBrZXkoaykge30KICAg IGNvbnN0IGNoYXIgKmdldEtleSgpIGNvbnN0IHsgcmV0dXJuIGtleTsgfQpwcml2YXRlOgogICAg Y29uc3QgY2hhciAqa2V5Owp9OwoKY2xhc3MgUUludEJ1Y2tldCA6IHB1YmxpYyBRQmFzZUJ1Y2tl dAp7CnB1YmxpYzoKICAgIFFJbnRCdWNrZXQoIGxvbmcgaywgUUNvbGxlY3Rpb246Okl0ZW0gZCwg UUJhc2VCdWNrZXQgKm4gKQogICAgICAgIDogUUJhc2VCdWNrZXQoZCxuKSwga2V5KGspIHt9CiAg ICBsb25nIGdldEtleSgpIGNvbnN0IHsgcmV0dXJuIGtleTsgfQpwcml2YXRlOgogICAgbG9uZyBr ZXk7Cn07CgpjbGFzcyBRUHRyQnVja2V0IDogcHVibGljIFFCYXNlQnVja2V0CnsKcHVibGljOgog ICAgUVB0ckJ1Y2tldCggdm9pZCAqaywgUUNvbGxlY3Rpb246Okl0ZW0gZCwgUUJhc2VCdWNrZXQg Km4gKQogICAgICAgIDogUUJhc2VCdWNrZXQoZCxuKSwga2V5KGspIHt9CiAgICB2b2lkICpnZXRL ZXkoKSBjb25zdCB7IHJldHVybiBrZXk7IH0KcHJpdmF0ZToKICAgIHZvaWQgKmtleTsKfTsKCgpj bGFzcyBRR0RpY3QgOiBwdWJsaWMgUUNvbGxlY3Rpb24KewpwdWJsaWM6CiAgICB1aW50IGNvdW50 KCkgY29uc3QgeyByZXR1cm4gbnVtSXRlbXM7IH0KICAgIHVpbnQgc2l6ZSgpIGNvbnN0IHsgcmV0 dXJuIHZsZW47IH0KICAgIFFDb2xsZWN0aW9uOjpJdGVtIGxvb2tfc3RyaW5nKCBjb25zdCBRU3Ry aW5nJiBrZXksIFFDb2xsZWN0aW9uOjpJdGVtLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGludCApOwogICAgUUNvbGxlY3Rpb246Okl0ZW0gbG9va19hc2NpaSggY29uc3QgY2hh ciAqa2V5LCBRQ29sbGVjdGlvbjo6SXRlbSwgaW50ICk7CiAgICBRQ29sbGVjdGlvbjo6SXRlbSBs b29rX2ludCggbG9uZyBrZXksIFFDb2xsZWN0aW9uOjpJdGVtLCBpbnQgKTsKICAgIFFDb2xsZWN0 aW9uOjpJdGVtIGxvb2tfcHRyKCB2b2lkICprZXksIFFDb2xsZWN0aW9uOjpJdGVtLCBpbnQgKTsK CiAgICBRRGF0YVN0cmVhbSAmcmVhZCggUURhdGFTdHJlYW0gJiApOwogICAgUURhdGFTdHJlYW0g JndyaXRlKCBRRGF0YVN0cmVhbSAmICkgY29uc3Q7Cgpwcm90ZWN0ZWQ6CiAgICBlbnVtIEtleVR5 cGUgeyBTdHJpbmdLZXksIEFzY2lpS2V5LCBJbnRLZXksIFB0cktleSB9OwoKICAgIFFHRGljdCgg dWludCBsZW4sIEtleVR5cGUga3QsIGJvb2wgY3MsIGJvb2wgY2sgKTsKICAgIFFHRGljdCggY29u c3QgUUdEaWN0ICYgKTsKICAgflFHRGljdCgpOwoKICAgIFFHRGljdCAmb3BlcmF0b3I9KCBjb25z dCBRR0RpY3QgJiApOwoKICAgIGJvb2wgcmVtb3ZlX3N0cmluZyggY29uc3QgUVN0cmluZyAma2V5 LCBRQ29sbGVjdGlvbjo6SXRlbSBpdGVtPTAgKTsKICAgIGJvb2wgcmVtb3ZlX2FzY2lpKCBjb25z dCBjaGFyICprZXksIFFDb2xsZWN0aW9uOjpJdGVtIGl0ZW09MCApOwogICAgYm9vbCByZW1vdmVf aW50KCBsb25nIGtleSwgUUNvbGxlY3Rpb246Okl0ZW0gaXRlbT0wICk7CiAgICBib29sIHJlbW92 ZV9wdHIoIHZvaWQgKmtleSwgUUNvbGxlY3Rpb246Okl0ZW0gaXRlbT0wICk7CiAgICBRQ29sbGVj dGlvbjo6SXRlbSB0YWtlX3N0cmluZyggY29uc3QgUVN0cmluZyAma2V5ICk7CiAgICBRQ29sbGVj dGlvbjo6SXRlbSB0YWtlX2FzY2lpKCBjb25zdCBjaGFyICprZXkgKTsKICAgIFFDb2xsZWN0aW9u OjpJdGVtIHRha2VfaW50KCBsb25nIGtleSApOwogICAgUUNvbGxlY3Rpb246Okl0ZW0gdGFrZV9w dHIoIHZvaWQgKmtleSApOwoKICAgIHZvaWQgY2xlYXIoKTsKICAgIHZvaWQgcmVzaXplKCB1aW50 ICk7CgogICAgaW50IGhhc2hLZXlTdHJpbmcoIGNvbnN0IFFTdHJpbmcgJiApOwogICAgaW50IGhh c2hLZXlBc2NpaSggY29uc3QgY2hhciAqICk7CgogICAgdm9pZCBzdGF0aXN0aWNzKCkgY29uc3Q7 CgoKICAgIHZpcnR1YWwgUURhdGFTdHJlYW0gJnJlYWQoIFFEYXRhU3RyZWFtICYsIFFDb2xsZWN0 aW9uOjpJdGVtICYgKTsKICAgIHZpcnR1YWwgUURhdGFTdHJlYW0gJndyaXRlKCBRRGF0YVN0cmVh bSAmLCBRQ29sbGVjdGlvbjo6SXRlbSApIGNvbnN0OwoKcHJpdmF0ZToKICAgIFFCYXNlQnVja2V0 ICoqdmVjOwogICAgdWludCB2bGVuOwogICAgdWludCBudW1JdGVtczsKICAgIHVpbnQga2V5dHlw ZSA6IDI7CiAgICB1aW50IGNhc2VzIDogMTsKICAgIHVpbnQgY29weWsgOiAxOwogICAgUUdESXRM aXN0ICppdGVyYXRvcnM7CiAgICB2b2lkIHVubGlua19jb21tb24oIGludCwgUUJhc2VCdWNrZXQg KiwgUUJhc2VCdWNrZXQgKiApOwogICAgUVN0cmluZ0J1Y2tldCAqdW5saW5rX3N0cmluZyggY29u c3QgUVN0cmluZyAmLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUUNvbGxlY3Rp b246Okl0ZW0gaXRlbSA9IDAgKTsKICAgIFFBc2NpaUJ1Y2tldCAqdW5saW5rX2FzY2lpKCBjb25z dCBjaGFyICosIFFDb2xsZWN0aW9uOjpJdGVtIGl0ZW0gPSAwICk7CiAgICBRSW50QnVja2V0ICp1 bmxpbmtfaW50KCBsb25nLCBRQ29sbGVjdGlvbjo6SXRlbSBpdGVtID0gMCApOwogICAgUVB0ckJ1 Y2tldCAqdW5saW5rX3B0ciggdm9pZCAqLCBRQ29sbGVjdGlvbjo6SXRlbSBpdGVtID0gMCApOwog ICAgdm9pZCBpbml0KCB1aW50LCBLZXlUeXBlLCBib29sLCBib29sICk7CiAgICBmcmllbmQgY2xh c3MgUUdEaWN0SXRlcmF0b3I7Cn07CgoKY2xhc3MgUUdEaWN0SXRlcmF0b3IKewpmcmllbmQgY2xh c3MgUUdEaWN0OwpwdWJsaWM6CiAgICBRR0RpY3RJdGVyYXRvciggY29uc3QgUUdEaWN0ICYgKTsK ICAgIFFHRGljdEl0ZXJhdG9yKCBjb25zdCBRR0RpY3RJdGVyYXRvciAmICk7CiAgICBRR0RpY3RJ dGVyYXRvciAmb3BlcmF0b3I9KCBjb25zdCBRR0RpY3RJdGVyYXRvciAmICk7CiAgIH5RR0RpY3RJ dGVyYXRvcigpOwoKICAgIFFDb2xsZWN0aW9uOjpJdGVtIHRvRmlyc3QoKTsKCiAgICBRQ29sbGVj dGlvbjo6SXRlbSBnZXQoKSBjb25zdDsKICAgIFFTdHJpbmcgZ2V0S2V5U3RyaW5nKCkgY29uc3Q7 CiAgICBjb25zdCBjaGFyICpnZXRLZXlBc2NpaSgpIGNvbnN0OwogICAgbG9uZyBnZXRLZXlJbnQo KSBjb25zdDsKICAgIHZvaWQgKmdldEtleVB0cigpIGNvbnN0OwoKICAgIFFDb2xsZWN0aW9uOjpJ dGVtIG9wZXJhdG9yKCkoKTsKICAgIFFDb2xsZWN0aW9uOjpJdGVtIG9wZXJhdG9yKysoKTsKICAg IFFDb2xsZWN0aW9uOjpJdGVtIG9wZXJhdG9yKz0odWludCk7Cgpwcm90ZWN0ZWQ6CiAgICBRR0Rp Y3QgKmRpY3Q7Cgpwcml2YXRlOgogICAgUUJhc2VCdWNrZXQgKmN1ck5vZGU7CiAgICB1aW50IGN1 ckluZGV4Owp9OwoKaW5saW5lIFFDb2xsZWN0aW9uOjpJdGVtIFFHRGljdEl0ZXJhdG9yOjpnZXQo KSBjb25zdAp7CiAgICByZXR1cm4gY3VyTm9kZSA/IGN1ck5vZGUtPmdldERhdGEoKSA6IDA7Cn0K CmlubGluZSBRU3RyaW5nIFFHRGljdEl0ZXJhdG9yOjpnZXRLZXlTdHJpbmcoKSBjb25zdAp7CiAg ICByZXR1cm4gY3VyTm9kZSA/ICgoUVN0cmluZ0J1Y2tldCopY3VyTm9kZSktPmdldEtleSgpIDog UVN0cmluZzo6bnVsbDsKfQoKaW5saW5lIGNvbnN0IGNoYXIgKlFHRGljdEl0ZXJhdG9yOjpnZXRL ZXlBc2NpaSgpIGNvbnN0CnsKICAgIHJldHVybiBjdXJOb2RlID8gKChRQXNjaWlCdWNrZXQqKWN1 ck5vZGUpLT5nZXRLZXkoKSA6IDA7Cn0KCmlubGluZSBsb25nIFFHRGljdEl0ZXJhdG9yOjpnZXRL ZXlJbnQoKSBjb25zdAp7CiAgICByZXR1cm4gY3VyTm9kZSA/ICgoUUludEJ1Y2tldCopY3VyTm9k ZSktPmdldEtleSgpIDogMDsKfQoKaW5saW5lIHZvaWQgKlFHRGljdEl0ZXJhdG9yOjpnZXRLZXlQ dHIoKSBjb25zdAp7CiAgICByZXR1cm4gY3VyTm9kZSA/ICgoUVB0ckJ1Y2tldCopY3VyTm9kZSkt PmdldEtleSgpIDogMDsKfQoKCiMgMzMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWFzY2lp ZGljdC5oIiAyIDMKCgoKdGVtcGxhdGU8Y2xhc3MgdHlwZT4gY2xhc3MgUUFzY2lpRGljdCA6IHB1 YmxpYyBRR0RpY3QKewpwdWJsaWM6CiAgICBRQXNjaWlEaWN0KGludCBzaXplPTE3LCBib29sIGNh c2VTZW5zaXRpdmU9VFJVRSwgYm9vbCBjb3B5S2V5cz1UUlVFICkKICAgICAgICA6IFFHRGljdChz aXplLEFzY2lpS2V5LGNhc2VTZW5zaXRpdmUsY29weUtleXMpIHt9CiAgICBRQXNjaWlEaWN0KCBj b25zdCBRQXNjaWlEaWN0PHR5cGU+ICZkICkgOiBRR0RpY3QoZCkge30KICAgflFBc2NpaURpY3Qo KSB7IGNsZWFyKCk7IH0KICAgIFFBc2NpaURpY3Q8dHlwZT4gJm9wZXJhdG9yPShjb25zdCBRQXNj aWlEaWN0PHR5cGU+ICZkKQogICAgICAgICAgICAgICAgICAgICAgICB7IHJldHVybiAoUUFzY2lp RGljdDx0eXBlPiYpUUdEaWN0OjpvcGVyYXRvcj0oZCk7IH0KICAgIHVpbnQgY291bnQoKSBjb25z dCB7IHJldHVybiBRR0RpY3Q6OmNvdW50KCk7IH0KICAgIHVpbnQgc2l6ZSgpIGNvbnN0IHsgcmV0 dXJuIFFHRGljdDo6c2l6ZSgpOyB9CiAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBR R0RpY3Q6OmNvdW50KCkgPT0gMDsgfQoKICAgIHZvaWQgaW5zZXJ0KCBjb25zdCBjaGFyICprLCBj b25zdCB0eXBlICpkICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsg UUdEaWN0Ojpsb29rX2FzY2lpKGssKEl0ZW0pZCwxKTsgfQogICAgdm9pZCByZXBsYWNlKCBjb25z dCBjaGFyICprLCBjb25zdCB0eXBlICpkICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHsgUUdEaWN0Ojpsb29rX2FzY2lpKGssKEl0ZW0pZCwyKTsgfQogICAgYm9vbCBy ZW1vdmUoIGNvbnN0IGNoYXIgKmsgKSB7IHJldHVybiBRR0RpY3Q6OnJlbW92ZV9hc2NpaShrKTsg fQogICAgdHlwZSAqdGFrZSggY29uc3QgY2hhciAqayApIHsgcmV0dXJuICh0eXBlICopUUdEaWN0 Ojp0YWtlX2FzY2lpKGspOyB9CiAgICB0eXBlICpmaW5kKCBjb25zdCBjaGFyICprICkgY29uc3QK ICAgICAgICAgICAgICAgIHsgcmV0dXJuICh0eXBlICopKChRR0RpY3QqKXRoaXMpLT5RR0RpY3Q6 Omxvb2tfYXNjaWkoaywwLDApOyB9CiAgICB0eXBlICpvcGVyYXRvcltdKCBjb25zdCBjaGFyICpr ICkgY29uc3QKICAgICAgICAgICAgICAgIHsgcmV0dXJuICh0eXBlICopKChRR0RpY3QqKXRoaXMp LT5RR0RpY3Q6Omxvb2tfYXNjaWkoaywwLDApOyB9CgogICAgdm9pZCBjbGVhcigpIHsgUUdEaWN0 OjpjbGVhcigpOyB9CiAgICB2b2lkIHJlc2l6ZSggdWludCBuICkgeyBRR0RpY3Q6OnJlc2l6ZShu KTsgfQogICAgdm9pZCBzdGF0aXN0aWNzKCkgY29uc3QgeyBRR0RpY3Q6OnN0YXRpc3RpY3MoKTsg fQpwcml2YXRlOgogICAgdm9pZCBkZWxldGVJdGVtKCBJdGVtIGQgKSB7IGlmICggZGVsX2l0ZW0g KSBkZWxldGUgKHR5cGUgKilkOyB9Cn07CgoKdGVtcGxhdGU8Y2xhc3MgdHlwZT4gY2xhc3MgUUFz Y2lpRGljdEl0ZXJhdG9yIDogcHVibGljIFFHRGljdEl0ZXJhdG9yCnsKcHVibGljOgogICAgUUFz Y2lpRGljdEl0ZXJhdG9yKGNvbnN0IFFBc2NpaURpY3Q8dHlwZT4gJmQpCiAgICAgICAgOiBRR0Rp Y3RJdGVyYXRvcigoUUdEaWN0ICYpZCkge30KICAgflFBc2NpaURpY3RJdGVyYXRvcigpIHt9CiAg ICB1aW50IGNvdW50KCkgY29uc3QgeyByZXR1cm4gZGljdC0+Y291bnQoKTsgfQogICAgYm9vbCBp c0VtcHR5KCkgY29uc3QgeyByZXR1cm4gZGljdC0+Y291bnQoKSA9PSAwOyB9CiAgICB0eXBlICp0 b0ZpcnN0KCkgeyByZXR1cm4gKHR5cGUgKilRR0RpY3RJdGVyYXRvcjo6dG9GaXJzdCgpOyB9CiAg ICBvcGVyYXRvciB0eXBlICooKSBjb25zdCB7IHJldHVybiAodHlwZSAqKVFHRGljdEl0ZXJhdG9y OjpnZXQoKTsgfQogICAgdHlwZSAqY3VycmVudCgpIGNvbnN0IHsgcmV0dXJuICh0eXBlICopUUdE aWN0SXRlcmF0b3I6OmdldCgpOyB9CiAgICBjb25zdCBjaGFyICpjdXJyZW50S2V5KCkgY29uc3Qg eyByZXR1cm4gUUdEaWN0SXRlcmF0b3I6OmdldEtleUFzY2lpKCk7IH0KICAgIHR5cGUgKm9wZXJh dG9yKCkoKSB7IHJldHVybiAodHlwZSAqKVFHRGljdEl0ZXJhdG9yOjpvcGVyYXRvcigpKCk7IH0K ICAgIHR5cGUgKm9wZXJhdG9yKysoKSB7IHJldHVybiAodHlwZSAqKVFHRGljdEl0ZXJhdG9yOjpv cGVyYXRvcisrKCk7IH0KICAgIHR5cGUgKm9wZXJhdG9yKz0odWludCBqKSB7IHJldHVybiAodHlw ZSAqKVFHRGljdEl0ZXJhdG9yOjpvcGVyYXRvcis9KGopO30KfTsKCgojIDM0ICIvdXNyL2xpYi9x dC0yLjIuMC9pbmNsdWRlL3FhcHBsaWNhdGlvbi5oIiAyIDMKCgojIDM1ICIvdXNyL2xpYi9xdC0y LjIuMC9pbmNsdWRlL3F0cmFuc2xhdG9yLmgiIDEgMwojIDM2ICIvdXNyL2xpYi9xdC0yLjIuMC9p bmNsdWRlL3FpbnRkaWN0LmgiIDEgMwp0ZW1wbGF0ZTxjbGFzcyB0eXBlPiBjbGFzcyBRSW50RGlj dCA6IHB1YmxpYyBRR0RpY3QKewpwdWJsaWM6CiAgICBRSW50RGljdChpbnQgc2l6ZT0xNykgOiBR R0RpY3Qoc2l6ZSxJbnRLZXksMCwwKSB7fQogICAgUUludERpY3QoIGNvbnN0IFFJbnREaWN0PHR5 cGU+ICZkICkgOiBRR0RpY3QoZCkge30KICAgflFJbnREaWN0KCkgeyBjbGVhcigpOyB9CiAgICBR SW50RGljdDx0eXBlPiAmb3BlcmF0b3I9KGNvbnN0IFFJbnREaWN0PHR5cGU+ICZkKQogICAgICAg ICAgICAgICAgICAgICAgICB7IHJldHVybiAoUUludERpY3Q8dHlwZT4mKVFHRGljdDo6b3BlcmF0 b3I9KGQpOyB9CiAgICB1aW50IGNvdW50KCkgY29uc3QgeyByZXR1cm4gUUdEaWN0Ojpjb3VudCgp OyB9CiAgICB1aW50IHNpemUoKSBjb25zdCB7IHJldHVybiBRR0RpY3Q6OnNpemUoKTsgfQogICAg Ym9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gUUdEaWN0Ojpjb3VudCgpID09IDA7IH0KICAg IHZvaWQgaW5zZXJ0KCBsb25nIGssIGNvbnN0IHR5cGUgKmQgKQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgeyBRR0RpY3Q6Omxvb2tfaW50KGssKEl0ZW0pZCwxKTsgfQog ICAgdm9pZCByZXBsYWNlKCBsb25nIGssIGNvbnN0IHR5cGUgKmQgKQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgeyBRR0RpY3Q6Omxvb2tfaW50KGssKEl0ZW0pZCwyKTsg fQogICAgYm9vbCByZW1vdmUoIGxvbmcgayApIHsgcmV0dXJuIFFHRGljdDo6cmVtb3ZlX2ludChr KTsgfQogICAgdHlwZSAqdGFrZSggbG9uZyBrICkgeyByZXR1cm4gKHR5cGUqKVFHRGljdDo6dGFr ZV9pbnQoayk7IH0KICAgIHR5cGUgKmZpbmQoIGxvbmcgayApIGNvbnN0CiAgICAgICAgICAgICAg ICB7IHJldHVybiAodHlwZSAqKSgoUUdEaWN0Kil0aGlzKS0+UUdEaWN0Ojpsb29rX2ludChrLDAs MCk7IH0KICAgIHR5cGUgKm9wZXJhdG9yW10oIGxvbmcgayApIGNvbnN0CiAgICAgICAgICAgICAg ICB7IHJldHVybiAodHlwZSAqKSgoUUdEaWN0Kil0aGlzKS0+UUdEaWN0Ojpsb29rX2ludChrLDAs MCk7IH0KICAgIHZvaWQgY2xlYXIoKSB7IFFHRGljdDo6Y2xlYXIoKTsgfQogICAgdm9pZCByZXNp emUoIHVpbnQgbiApIHsgUUdEaWN0OjpyZXNpemUobik7IH0KICAgIHZvaWQgc3RhdGlzdGljcygp IGNvbnN0IHsgUUdEaWN0OjpzdGF0aXN0aWNzKCk7IH0KcHJpdmF0ZToKICAgIHZvaWQgZGVsZXRl SXRlbSggSXRlbSBkICk7Cn07CgoKaW5saW5lIHZvaWQgUUludERpY3Q8dm9pZD46OmRlbGV0ZUl0 ZW0oIFFDb2xsZWN0aW9uOjpJdGVtICkKewp9CgoKdGVtcGxhdGU8Y2xhc3MgdHlwZT4gaW5saW5l IHZvaWQgUUludERpY3Q8dHlwZT46OmRlbGV0ZUl0ZW0oIFFDb2xsZWN0aW9uOjpJdGVtIGQgKQp7 CiAgICBpZiAoIGRlbF9pdGVtICkgZGVsZXRlICh0eXBlICopZDsKfQoKdGVtcGxhdGU8Y2xhc3Mg dHlwZT4gY2xhc3MgUUludERpY3RJdGVyYXRvciA6IHB1YmxpYyBRR0RpY3RJdGVyYXRvcgp7CnB1 YmxpYzoKICAgIFFJbnREaWN0SXRlcmF0b3IoY29uc3QgUUludERpY3Q8dHlwZT4gJmQpIDpRR0Rp Y3RJdGVyYXRvcigoUUdEaWN0ICYpZCkge30KICAgflFJbnREaWN0SXRlcmF0b3IoKSB7fQogICAg dWludCBjb3VudCgpIGNvbnN0IHsgcmV0dXJuIGRpY3QtPmNvdW50KCk7IH0KICAgIGJvb2wgaXNF bXB0eSgpIGNvbnN0IHsgcmV0dXJuIGRpY3QtPmNvdW50KCkgPT0gMDsgfQogICAgdHlwZSAqdG9G aXJzdCgpIHsgcmV0dXJuICh0eXBlICopUUdEaWN0SXRlcmF0b3I6OnRvRmlyc3QoKTsgfQogICAg b3BlcmF0b3IgdHlwZSAqKCkgY29uc3QgeyByZXR1cm4gKHR5cGUgKilRR0RpY3RJdGVyYXRvcjo6 Z2V0KCk7IH0KICAgIHR5cGUgKmN1cnJlbnQoKSBjb25zdCB7IHJldHVybiAodHlwZSAqKVFHRGlj dEl0ZXJhdG9yOjpnZXQoKTsgfQogICAgbG9uZyBjdXJyZW50S2V5KCkgY29uc3QgeyByZXR1cm4g UUdEaWN0SXRlcmF0b3I6OmdldEtleUludCgpOyB9CiAgICB0eXBlICpvcGVyYXRvcigpKCkgeyBy ZXR1cm4gKHR5cGUgKilRR0RpY3RJdGVyYXRvcjo6b3BlcmF0b3IoKSgpOyB9CiAgICB0eXBlICpv cGVyYXRvcisrKCkgeyByZXR1cm4gKHR5cGUgKilRR0RpY3RJdGVyYXRvcjo6b3BlcmF0b3IrKygp OyB9CiAgICB0eXBlICpvcGVyYXRvcis9KHVpbnQgaikgeyByZXR1cm4gKHR5cGUgKilRR0RpY3RJ dGVyYXRvcjo6b3BlcmF0b3IrPShqKTt9Cn07CgoKIyAzNSAiL3Vzci9saWIvcXQtMi4yLjAvaW5j bHVkZS9xdHJhbnNsYXRvci5oIiAyIDMKCgoKCmNsYXNzIFFUcmFuc2xhdG9yUHJpdmF0ZTsKCgpj bGFzcyBRVHJhbnNsYXRvck1lc3NhZ2UKewpwdWJsaWM6CiAgICBRVHJhbnNsYXRvck1lc3NhZ2Uo KTsKICAgIFFUcmFuc2xhdG9yTWVzc2FnZSggY29uc3QgY2hhciAqIGNvbnRleHQsCiAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKiBzb3VyY2VUZXh0LAogICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBjaGFyICogY29tbWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgY29u c3QgUVN0cmluZyYgdHJhbnNsYXRpb24gPSBRU3RyaW5nOjpudWxsICk7CiAgICBRVHJhbnNsYXRv ck1lc3NhZ2UoIFFEYXRhU3RyZWFtICYgKTsKICAgIFFUcmFuc2xhdG9yTWVzc2FnZSggY29uc3Qg UVRyYW5zbGF0b3JNZXNzYWdlICYgbSApOwoKICAgIFFUcmFuc2xhdG9yTWVzc2FnZSAmIG9wZXJh dG9yPSggY29uc3QgUVRyYW5zbGF0b3JNZXNzYWdlICYgbSApOwoKICAgIHVpbnQgaGFzaCgpIGNv bnN0IHsgcmV0dXJuIGg7IH0KICAgIGNvbnN0IGNoYXIgKmNvbnRleHQoKSBjb25zdCB7IHJldHVy biBjeDsgfQogICAgY29uc3QgY2hhciAqc291cmNlVGV4dCgpIGNvbnN0IHsgcmV0dXJuIHN0OyB9 CiAgICBjb25zdCBjaGFyICpjb21tZW50KCkgY29uc3QgeyByZXR1cm4gY207IH0KCiAgICB2b2lk IHNldFRyYW5zbGF0aW9uKCBjb25zdCBRU3RyaW5nICYgdHJhbnNsYXRpb24gKSB7IHRuID0gdHJh bnNsYXRpb247IH0KICAgIFFTdHJpbmcgdHJhbnNsYXRpb24oKSBjb25zdCB7IHJldHVybiB0bjsg fQoKICAgIGVudW0gUHJlZml4IHsgTm9QcmVmaXgsIEhhc2gsIEhhc2hDb250ZXh0LCBIYXNoQ29u dGV4dFNvdXJjZVRleHQsCiAgICAgICAgICAgICAgICAgIEhhc2hDb250ZXh0U291cmNlVGV4dENv bW1lbnQgfTsKICAgIHZvaWQgd3JpdGUoIFFEYXRhU3RyZWFtICYgcywgYm9vbCBzdHJpcCwKICAg ICAgICAgICAgICAgIFByZWZpeCBwcmVmaXggPSBIYXNoQ29udGV4dFNvdXJjZVRleHRDb21tZW50 ICkgY29uc3Q7CiAgICBQcmVmaXggY29tbW9uUHJlZml4KCBjb25zdCBRVHJhbnNsYXRvck1lc3Nh Z2UmICkgY29uc3Q7CgogICAgYm9vbCBvcGVyYXRvcj09KCBjb25zdCBRVHJhbnNsYXRvck1lc3Nh Z2UmIG0gKSBjb25zdDsKICAgIGJvb2wgb3BlcmF0b3IhPSggY29uc3QgUVRyYW5zbGF0b3JNZXNz YWdlJiBtICkgY29uc3QKICAgIHsgcmV0dXJuICFvcGVyYXRvcj09KCBtICk7IH0KICAgIGJvb2wg b3BlcmF0b3I8KCBjb25zdCBRVHJhbnNsYXRvck1lc3NhZ2UmIG0gKSBjb25zdDsKICAgIGJvb2wg b3BlcmF0b3I8PSggY29uc3QgUVRyYW5zbGF0b3JNZXNzYWdlJiBtICkgY29uc3QKICAgIHsgcmV0 dXJuICFvcGVyYXRvcj4oIG0gKTsgfQogICAgYm9vbCBvcGVyYXRvcj4oIGNvbnN0IFFUcmFuc2xh dG9yTWVzc2FnZSYgbSApIGNvbnN0CiAgICB7IHJldHVybiB0aGlzLT5vcGVyYXRvcjwoIG0gKTsg fQogICAgYm9vbCBvcGVyYXRvcj49KCBjb25zdCBRVHJhbnNsYXRvck1lc3NhZ2UmIG0gKSBjb25z dAogICAgeyByZXR1cm4gIW9wZXJhdG9yPCggbSApOyB9Cgpwcml2YXRlOgogICAgdWludCBoOwog ICAgUUNTdHJpbmcgY3g7CiAgICBRQ1N0cmluZyBzdDsKICAgIFFDU3RyaW5nIGNtOwogICAgUVN0 cmluZyB0bjsKCiAgICBlbnVtIFRhZyB7IFRhZ19FbmQgPSAxLCBUYWdfU291cmNlVGV4dDE2LCBU YWdfVHJhbnNsYXRpb24sIFRhZ19Db250ZXh0MTYsCiAgICAgICAgICAgICAgIFRhZ19IYXNoLCBU YWdfU291cmNlVGV4dCwgVGFnX0NvbnRleHQsIFRhZ19Db21tZW50LAogICAgICAgICAgICAgICBU YWdfT2Jzb2xldGUxIH07Cn07CgoKY2xhc3MgUVRyYW5zbGF0b3I6IHB1YmxpYyBRT2JqZWN0CnsK ICAgIHB1YmxpYzogUU1ldGFPYmplY3QgKm1ldGFPYmplY3QoKSBjb25zdCB7IHJldHVybiBzdGF0 aWNNZXRhT2JqZWN0KCk7IH0gY29uc3QgY2hhciAqY2xhc3NOYW1lKCkgY29uc3Q7IHN0YXRpYyBR TWV0YU9iamVjdCogc3RhdGljTWV0YU9iamVjdCgpOyBzdGF0aWMgUVN0cmluZyB0cihjb25zdCBj aGFyKik7IHN0YXRpYyBRU3RyaW5nIHRyKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7IHByb3Rl Y3RlZDogdm9pZCBpbml0TWV0YU9iamVjdCgpOyBwcml2YXRlOiBzdGF0aWMgUU1ldGFPYmplY3Qg Km1ldGFPYmo7CnB1YmxpYzoKICAgIFFUcmFuc2xhdG9yKCBRT2JqZWN0ICogcGFyZW50LCBjb25z dCBjaGFyICogbmFtZSA9IDAgKTsKICAgIH5RVHJhbnNsYXRvcigpOwoKCiAgICBRU3RyaW5nIGZp bmQoIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICogKSBjb25zdDsKCiAg ICB2aXJ0dWFsIFFTdHJpbmcgZmluZCggY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICogKSBjb25z dDsKCiAgICBRVHJhbnNsYXRvck1lc3NhZ2UgZmluZE1lc3NhZ2UoIGNvbnN0IGNoYXIgKiwgY29u c3QgY2hhciAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFy ICogKSBjb25zdDsKCiAgICBib29sIGxvYWQoIGNvbnN0IFFTdHJpbmcgJiBmaWxlbmFtZSwKICAg ICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmIGRpcmVjdG9yeSA9IFFTdHJpbmc6Om51bGwsCiAg ICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJiBzZWFyY2hfZGVsaW1pdGVycyA9IFFTdHJpbmc6 Om51bGwsCiAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJiBzdWZmaXggPSBRU3RyaW5nOjpu dWxsICk7CgogICAgZW51bSBTYXZlTW9kZSB7IEV2ZXJ5dGhpbmcsIFN0cmlwcGVkIH07CgogICAg Ym9vbCBzYXZlKCBjb25zdCBRU3RyaW5nICYgZmlsZW5hbWUsIFNhdmVNb2RlIG1vZGUgPSBFdmVy eXRoaW5nICk7CgogICAgdm9pZCBjbGVhcigpOwoKICAgIHZvaWQgaW5zZXJ0KCBjb25zdCBRVHJh bnNsYXRvck1lc3NhZ2UmICk7CgogICAgdm9pZCBpbnNlcnQoIGNvbnN0IGNoYXIgKiwgY29uc3Qg Y2hhciAqLCBjb25zdCBRU3RyaW5nICYgKTsKICAgIHZvaWQgcmVtb3ZlKCBjb25zdCBRVHJhbnNs YXRvck1lc3NhZ2UmICk7CgogICAgdm9pZCByZW1vdmUoIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hh ciAqICk7CiAgICBib29sIGNvbnRhaW5zKCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgY29u c3QgY2hhciAqICkgY29uc3Q7CgogICAgYm9vbCBjb250YWlucyggY29uc3QgY2hhciAqLCBjb25z dCBjaGFyICogKSBjb25zdDsKCgoKICAgIHZvaWQgc3F1ZWV6ZSggU2F2ZU1vZGUgKTsKICAgIHZv aWQgc3F1ZWV6ZSgpOwogICAgdm9pZCB1bnNxdWVlemUoKTsKCiAgICBRVmFsdWVMaXN0PFFUcmFu c2xhdG9yTWVzc2FnZT4gbWVzc2FnZXMoKSBjb25zdDsKCnByaXZhdGU6CiAgICBRVHJhbnNsYXRv clByaXZhdGUgKiBkOwoKcHJpdmF0ZToKCiAgICBRVHJhbnNsYXRvciggY29uc3QgUVRyYW5zbGF0 b3IgJiApOwogICAgUVRyYW5zbGF0b3IgJm9wZXJhdG9yPSggY29uc3QgUVRyYW5zbGF0b3IgJiAp OwoKfTsKCiMgMzYgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWFwcGxpY2F0aW9uLmgiIDIg MwoKCmNsYXNzIFFTZXNzaW9uTWFuYWdlcjsKY2xhc3MgUVN0eWxlOwpjbGFzcyBRVHJhbnNsYXRv cjsKCgoKdGVtcGxhdGUgPGNsYXNzIHR5cGU+IGNsYXNzIFFMaXN0OwoKY2xhc3MgUUFwcGxpY2F0 aW9uOwpleHRlcm4gUUFwcGxpY2F0aW9uICpxQXBwOwoKIyA1NyAiL3Vzci9saWIvcXQtMi4yLjAv aW5jbHVkZS9xYXBwbGljYXRpb24uaCIgMwpjbGFzcyBRQXBwbGljYXRpb24gOiBwdWJsaWMgUU9i amVjdAp7CiAgICBwdWJsaWM6IFFNZXRhT2JqZWN0ICptZXRhT2JqZWN0KCkgY29uc3QgeyByZXR1 cm4gc3RhdGljTWV0YU9iamVjdCgpOyB9IGNvbnN0IGNoYXIgKmNsYXNzTmFtZSgpIGNvbnN0OyBz dGF0aWMgUU1ldGFPYmplY3QqIHN0YXRpY01ldGFPYmplY3QoKTsgc3RhdGljIFFTdHJpbmcgdHIo Y29uc3QgY2hhciopOyBzdGF0aWMgUVN0cmluZyB0cihjb25zdCBjaGFyKiwgY29uc3QgY2hhciop OyBwcm90ZWN0ZWQ6IHZvaWQgaW5pdE1ldGFPYmplY3QoKTsgcHJpdmF0ZTogc3RhdGljIFFNZXRh T2JqZWN0ICptZXRhT2JqOwpwdWJsaWM6CiAgICBRQXBwbGljYXRpb24oIGludCAmYXJnYywgY2hh ciAqKmFyZ3YpOwogICAgUUFwcGxpY2F0aW9uKCBpbnQgJmFyZ2MsIGNoYXIgKiphcmd2LCBib29s IEdVSWVuYWJsZWQgKTsKICAgIGVudW0gVHlwZSB7IFR0eSwgR3VpQ2xpZW50LCBHdWlTZXJ2ZXIg fTsKICAgIFFBcHBsaWNhdGlvbiggaW50ICZhcmdjLCBjaGFyICoqYXJndiwgVHlwZSApOwoKICAg IFFBcHBsaWNhdGlvbiggRGlzcGxheSogZHB5ICk7CgogICAgdmlydHVhbCB+UUFwcGxpY2F0aW9u KCk7CgogICAgaW50IGFyZ2MoKSBjb25zdDsKICAgIGNoYXIgKiphcmd2KCkgY29uc3Q7CgoKICAg IHN0YXRpYyBRU3R5bGUgJnN0eWxlKCk7CiAgICBzdGF0aWMgdm9pZCBzZXRTdHlsZSggUVN0eWxl KiApOwoKCiAgICBlbnVtIENvbG9yTW9kZSB7IE5vcm1hbENvbG9ycywgQ3VzdG9tQ29sb3JzIH07 CiAgICBzdGF0aWMgQ29sb3JNb2RlIGNvbG9yTW9kZSgpOwogICAgc3RhdGljIHZvaWQgc2V0Q29s b3JNb2RlKCBRQXBwbGljYXRpb246OkNvbG9yTW9kZSApOwoKCiAgICBlbnVtIENvbG9yU3BlYyB7 IE5vcm1hbENvbG9yPTAsIEN1c3RvbUNvbG9yPTEsIE1hbnlDb2xvcj0yIH07CiAgICBzdGF0aWMg aW50IGNvbG9yU3BlYygpOwogICAgc3RhdGljIHZvaWQgc2V0Q29sb3JTcGVjKCBpbnQgKTsKCiAg ICBzdGF0aWMgUUN1cnNvciAqb3ZlcnJpZGVDdXJzb3IoKTsKICAgIHN0YXRpYyB2b2lkIHNldE92 ZXJyaWRlQ3Vyc29yKCBjb25zdCBRQ3Vyc29yICYsIGJvb2wgcmVwbGFjZT1GQUxTRSApOwogICAg c3RhdGljIHZvaWQgcmVzdG9yZU92ZXJyaWRlQ3Vyc29yKCk7CgogICAgc3RhdGljIGJvb2wgaGFz R2xvYmFsTW91c2VUcmFja2luZygpOwogICAgc3RhdGljIHZvaWQgc2V0R2xvYmFsTW91c2VUcmFj a2luZyggYm9vbCBlbmFibGUgKTsKCiAgICBzdGF0aWMgUVBhbGV0dGUgcGFsZXR0ZSggY29uc3Qg UVdpZGdldCogPSAwICk7CiAgICBzdGF0aWMgdm9pZCBzZXRQYWxldHRlKCBjb25zdCBRUGFsZXR0 ZSAmLCBib29sIGluZm9ybVdpZGdldHM9RkFMU0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIqIGNsYXNzTmFtZSA9IDAgKTsKCiAgICBzdGF0aWMgUUZvbnQgZm9u dCggY29uc3QgUVdpZGdldCogPSAwICk7CiAgICBzdGF0aWMgdm9pZCBzZXRGb250KCBjb25zdCBR Rm9udCAmLCBib29sIGluZm9ybVdpZGdldHM9RkFMU0UsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIqIGNsYXNzTmFtZSA9IDAgKTsKICAgIHN0YXRpYyBRRm9udE1ldHJp Y3MgZm9udE1ldHJpY3MoKTsKCiAgICBRV2lkZ2V0ICptYWluV2lkZ2V0KCkgY29uc3Q7CiAgICB2 aXJ0dWFsIHZvaWQgc2V0TWFpbldpZGdldCggUVdpZGdldCAqICk7CiAgICB2aXJ0dWFsIHZvaWQg cG9saXNoKCBRV2lkZ2V0ICogKTsKCiAgICBzdGF0aWMgUVdpZGdldExpc3QgKmFsbFdpZGdldHMo KTsKICAgIHN0YXRpYyBRV2lkZ2V0TGlzdCAqdG9wTGV2ZWxXaWRnZXRzKCk7CiAgICBzdGF0aWMg UVdpZGdldCAqZGVza3RvcCgpOwogICAgc3RhdGljIFFXaWRnZXQgKmFjdGl2ZVBvcHVwV2lkZ2V0 KCk7CiAgICBzdGF0aWMgUVdpZGdldCAqYWN0aXZlTW9kYWxXaWRnZXQoKTsKICAgIHN0YXRpYyBR Q2xpcGJvYXJkICpjbGlwYm9hcmQoKTsKICAgIFFXaWRnZXQgKmZvY3VzV2lkZ2V0KCkgY29uc3Q7 CiAgICBRV2lkZ2V0ICphY3RpdmVXaW5kb3coKSBjb25zdDsKCiAgICBzdGF0aWMgUVdpZGdldCAq d2lkZ2V0QXQoIGludCB4LCBpbnQgeSwgYm9vbCBjaGlsZD1GQUxTRSApOwogICAgc3RhdGljIFFX aWRnZXQgKndpZGdldEF0KCBjb25zdCBRUG9pbnQgJiwgYm9vbCBjaGlsZD1GQUxTRSApOwoKICAg IGludCBleGVjKCk7CiAgICB2b2lkIHByb2Nlc3NFdmVudHMoKTsKICAgIHZvaWQgcHJvY2Vzc0V2 ZW50cyggaW50IG1heHRpbWUgKTsKICAgIHZvaWQgcHJvY2Vzc09uZUV2ZW50KCk7CiAgICBpbnQg ZW50ZXJfbG9vcCgpOwogICAgdm9pZCBleGl0X2xvb3AoKTsKICAgIGludCBsb29wTGV2ZWwoKSBj b25zdDsKICAgIHN0YXRpYyB2b2lkIGV4aXQoIGludCByZXRjb2RlPTAgKTsKCiAgICBzdGF0aWMg Ym9vbCBzZW5kRXZlbnQoIFFPYmplY3QgKnJlY2VpdmVyLCBRRXZlbnQgKmV2ZW50ICk7CiAgICBz dGF0aWMgdm9pZCBwb3N0RXZlbnQoIFFPYmplY3QgKnJlY2VpdmVyLCBRRXZlbnQgKmV2ZW50ICk7 CiAgICBzdGF0aWMgdm9pZCBzZW5kUG9zdGVkRXZlbnRzKCBRT2JqZWN0ICpyZWNlaXZlciwgaW50 IGV2ZW50X3R5cGUgKTsKICAgIHN0YXRpYyB2b2lkIHNlbmRQb3N0ZWRFdmVudHMoKTsKCiAgICBz dGF0aWMgdm9pZCByZW1vdmVQb3N0ZWRFdmVudHMoIFFPYmplY3QgKnJlY2VpdmVyICk7CgogICAg dmlydHVhbCBib29sIG5vdGlmeSggUU9iamVjdCAqLCBRRXZlbnQgKiApOwoKICAgIHN0YXRpYyBi b29sIHN0YXJ0aW5nVXAoKTsKICAgIHN0YXRpYyBib29sIGNsb3NpbmdEb3duKCk7CgogICAgc3Rh dGljIHZvaWQgZmx1c2hYKCk7CiAgICBzdGF0aWMgdm9pZCBzeW5jWCgpOwoKICAgIHN0YXRpYyB2 b2lkIGJlZXAoKTsKCgogICAgdm9pZCBzZXREZWZhdWx0Q29kZWMoIFFUZXh0Q29kZWMqICk7CiAg ICBRVGV4dENvZGVjKiBkZWZhdWx0Q29kZWMoKSBjb25zdDsKICAgIHZvaWQgaW5zdGFsbFRyYW5z bGF0b3IoIFFUcmFuc2xhdG9yICogKTsKICAgIHZvaWQgcmVtb3ZlVHJhbnNsYXRvciggUVRyYW5z bGF0b3IgKiApOwoKICAgIFFTdHJpbmcgdHJhbnNsYXRlKCBjb25zdCBjaGFyICosIGNvbnN0IGNo YXIgKiApIGNvbnN0OwogICAgUVN0cmluZyB0cmFuc2xhdGUoIGNvbnN0IGNoYXIgKiwgY29uc3Qg Y2hhciAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKiApIGNv bnN0OwoKICAgIHN0YXRpYyB2b2lkIHNldFdpblN0eWxlSGlnaGxpZ2h0Q29sb3IoIGNvbnN0IFFD b2xvciAmICk7CiAgICBzdGF0aWMgY29uc3QgUUNvbG9yICZ3aW5TdHlsZUhpZ2hsaWdodENvbG9y KCk7CgogICAgc3RhdGljIHZvaWQgc2V0RGVza3RvcFNldHRpbmdzQXdhcmUoIGJvb2wgKTsKICAg IHN0YXRpYyBib29sIGRlc2t0b3BTZXR0aW5nc0F3YXJlKCk7CgogICAgc3RhdGljIHZvaWQgc2V0 Q3Vyc29yRmxhc2hUaW1lKCBpbnQgKTsKICAgIHN0YXRpYyBpbnQgY3Vyc29yRmxhc2hUaW1lKCk7 CgogICAgc3RhdGljIHZvaWQgc2V0RG91YmxlQ2xpY2tJbnRlcnZhbCggaW50ICk7CiAgICBzdGF0 aWMgaW50IGRvdWJsZUNsaWNrSW50ZXJ2YWwoKTsKCiAgICBzdGF0aWMgdm9pZCBzZXRXaGVlbFNj cm9sbExpbmVzKCBpbnQgKTsKICAgIHN0YXRpYyBpbnQgd2hlZWxTY3JvbGxMaW5lcygpOwoKICAg IHN0YXRpYyB2b2lkIHNldEdsb2JhbFN0cnV0KCBjb25zdCBRU2l6ZSAmICk7CiAgICBzdGF0aWMg UVNpemUgZ2xvYmFsU3RydXQoKTsKCiAgICBzdGF0aWMgdm9pZCBzZXRTdGFydERyYWdUaW1lKCBp bnQgbXMgKTsKICAgIHN0YXRpYyBpbnQgc3RhcnREcmFnVGltZSgpOwogICAgc3RhdGljIHZvaWQg c2V0U3RhcnREcmFnRGlzdGFuY2UoIGludCBsICk7CiAgICBzdGF0aWMgaW50IHN0YXJ0RHJhZ0Rp c3RhbmNlKCk7CgogICAgc3RhdGljIGJvb2wgaXNFZmZlY3RFbmFibGVkKCBRdDo6VUlFZmZlY3Qg KTsKICAgIHN0YXRpYyB2b2lkIHNldEVmZmVjdEVuYWJsZWQoIFF0OjpVSUVmZmVjdCwgYm9vbCBl bmFibGUgPSBUUlVFICk7CgoKCgoKCgoKICAgIHZpcnR1YWwgYm9vbCB4MTFFdmVudEZpbHRlcigg WEV2ZW50ICogKTsKICAgIHZpcnR1YWwgaW50IHgxMUNsaWVudE1lc3NhZ2UoIFFXaWRnZXQqLCBY RXZlbnQqLCBib29sIHBhc3NpdmVfb25seSk7CiAgICBpbnQgeDExUHJvY2Vzc0V2ZW50KCBYRXZl bnQqICk7CiMgMjA4ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FhcHBsaWNhdGlvbi5oIiAz CiAgICBib29sIGlzU2Vzc2lvblJlc3RvcmVkKCkgY29uc3Q7CiAgICBRU3RyaW5nIHNlc3Npb25J ZCgpIGNvbnN0OwogICAgdmlydHVhbCB2b2lkIGNvbW1pdERhdGEoIFFTZXNzaW9uTWFuYWdlciYg c20gKTsKICAgIHZpcnR1YWwgdm9pZCBzYXZlU3RhdGUoIFFTZXNzaW9uTWFuYWdlciYgc20gKTsK CgogICAgc3RhdGljIHZvaWQgY3JlYXRlX3hpbSgpOwogICAgc3RhdGljIHZvaWQgY2xvc2VfeGlt KCk7CiMgMjI0ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FhcHBsaWNhdGlvbi5oIiAzCnBy b3RlY3RlZDoKICAgIHZvaWQgbGFzdFdpbmRvd0Nsb3NlZCgpOwogICAgdm9pZCBhYm91dFRvUXVp dCgpOwogICAgdm9pZCBndWlUaHJlYWRBd2FrZSgpOwoKcHVibGljOgogICAgdm9pZCBxdWl0KCk7 CiAgICB2b2lkIGNsb3NlQWxsV2luZG93cygpOwoKcHJpdmF0ZToKICAgIHZvaWQgY29uc3RydWN0 KCBpbnQgJmFyZ2MsIGNoYXIgKiphcmd2LCBUeXBlICk7CiAgICBib29sIHByb2Nlc3NOZXh0RXZl bnQoIGJvb2wgKTsKICAgIHZvaWQgaW5pdGlhbGl6ZSggaW50LCBjaGFyICoqICk7CiAgICB2b2lk IGluaXRfcHJlY21kbGluZSgpOwogICAgdm9pZCBwcm9jZXNzX2NtZGxpbmUoIGludCogYXJnY3B0 ciwgY2hhciAqKiBhcmd2ICk7CgoKCgoKICAgIGludCBhcHBfYXJnYzsKICAgIGNoYXIgKiphcHBf YXJndjsKICAgIGJvb2wgcXVpdF9ub3c7CiAgICBpbnQgcXVpdF9jb2RlOwogICAgc3RhdGljIFFT dHlsZSAqYXBwX3N0eWxlOwogICAgc3RhdGljIGludCBhcHBfY3NwZWM7CgogICAgc3RhdGljIFFQ YWxldHRlICphcHBfcGFsOwoKICAgIHN0YXRpYyBRRm9udCAqYXBwX2ZvbnQ7CgogICAgc3RhdGlj IFFDdXJzb3IgKmFwcF9jdXJzb3I7CgogICAgc3RhdGljIGludCBhcHBfdHJhY2tpbmc7CiAgICBz dGF0aWMgYm9vbCBpc19hcHBfcnVubmluZzsKICAgIHN0YXRpYyBib29sIGlzX2FwcF9jbG9zaW5n OwogICAgc3RhdGljIGJvb2wgYXBwX2V4aXRfbG9vcDsKICAgIHN0YXRpYyBpbnQgbG9vcF9sZXZl bDsKICAgIHN0YXRpYyBRV2lkZ2V0ICptYWluX3dpZGdldDsKICAgIHN0YXRpYyBRV2lkZ2V0ICpm b2N1c193aWRnZXQ7CiAgICBzdGF0aWMgUVdpZGdldCAqYWN0aXZlX3dpbmRvdzsKICAgIHN0YXRp YyBib29sIG9iZXlfZGVza3RvcF9zZXR0aW5nczsKICAgIHN0YXRpYyBpbnQgY3Vyc29yX2ZsYXNo X3RpbWU7CiAgICBzdGF0aWMgaW50IG1vdXNlX2RvdWJsZV9jbGlja190aW1lOwogICAgc3RhdGlj IGludCB3aGVlbF9zY3JvbGxfbGluZXM7CgogICAgc3RhdGljIGJvb2wgYW5pbWF0ZV91aTsKICAg IHN0YXRpYyBib29sIGFuaW1hdGVfbWVudTsKICAgIHN0YXRpYyBib29sIGFuaW1hdGVfdG9vbHRp cDsKICAgIHN0YXRpYyBib29sIGFuaW1hdGVfY29tYm87CiAgICBzdGF0aWMgYm9vbCBmYWRlX21l bnU7CiAgICBzdGF0aWMgYm9vbCBmYWRlX3Rvb2x0aXA7CgogICAgUUxpc3Q8UVRyYW5zbGF0b3I+ ICp0cmFuc2xhdG9yczsKCiAgICBRU2Vzc2lvbk1hbmFnZXIgKnNlc3Npb25fbWFuYWdlcjsKICAg IFFTdHJpbmcgc2Vzc2lvbl9pZDsKICAgIGJvb2wgaXNfc2Vzc2lvbl9yZXN0b3JlZDsKCgogICAg c3RhdGljIHZvaWQgeDExX2luaXRpYWxpemVfc3R5bGUoKTsKCgogICAgc3RhdGljIFFTaXplIGFw cF9zdHJ1dDsKCiAgICBzdGF0aWMgUUFzY2lpRGljdDxRUGFsZXR0ZT4gKmFwcF9wYWxldHRlczsK ICAgIHN0YXRpYyBRQXNjaWlEaWN0PFFGb250PiAqYXBwX2ZvbnRzOwoKICAgIHN0YXRpYyBRV2lk Z2V0TGlzdCAqcG9wdXBXaWRnZXRzOwogICAgYm9vbCBpblBvcHVwTW9kZSgpIGNvbnN0OwogICAg dm9pZCBjbG9zZVBvcHVwKCBRV2lkZ2V0ICpwb3B1cCApOwogICAgdm9pZCBvcGVuUG9wdXAoIFFX aWRnZXQgKnBvcHVwICk7CiAgICB2b2lkIHNldEFjdGl2ZVdpbmRvdyggUVdpZGdldCogYWN0ICk7 CgogICAgc3RhdGljIHZvaWQgcmVtb3ZlUG9zdGVkRXZlbnQoIFFFdmVudCAqICk7CgogICAgZnJp ZW5kIGNsYXNzIFFXaWRnZXQ7CiAgICBmcmllbmQgY2xhc3MgUUVUV2lkZ2V0OwogICAgZnJpZW5k IGNsYXNzIFFFdmVudDsKCnByaXZhdGU6CgogICAgUUFwcGxpY2F0aW9uKCBjb25zdCBRQXBwbGlj YXRpb24gJiApOwogICAgUUFwcGxpY2F0aW9uICZvcGVyYXRvcj0oIGNvbnN0IFFBcHBsaWNhdGlv biAmICk7Cgp9OwoKCmlubGluZSBpbnQgUUFwcGxpY2F0aW9uOjphcmdjKCkgY29uc3QKewogICAg cmV0dXJuIGFwcF9hcmdjOwp9CgppbmxpbmUgY2hhciAqKlFBcHBsaWNhdGlvbjo6YXJndigpIGNv bnN0CnsKICAgIHJldHVybiBhcHBfYXJndjsKfQoKaW5saW5lIFFTdHlsZSYgUUFwcGxpY2F0aW9u OjpzdHlsZSgpCnsKICAgIHJldHVybiAqYXBwX3N0eWxlOwp9CgoKaW5saW5lIFFDdXJzb3IgKlFB cHBsaWNhdGlvbjo6b3ZlcnJpZGVDdXJzb3IoKQp7CiAgICByZXR1cm4gYXBwX2N1cnNvcjsKfQoK aW5saW5lIGJvb2wgUUFwcGxpY2F0aW9uOjpoYXNHbG9iYWxNb3VzZVRyYWNraW5nKCkKewogICAg cmV0dXJuIGFwcF90cmFja2luZyA+IDA7Cn0KCmlubGluZSBRV2lkZ2V0ICpRQXBwbGljYXRpb246 Om1haW5XaWRnZXQoKSBjb25zdAp7CiAgICByZXR1cm4gbWFpbl93aWRnZXQ7Cn0KCmlubGluZSBR V2lkZ2V0ICpRQXBwbGljYXRpb246OmZvY3VzV2lkZ2V0KCkgY29uc3QKewogICAgcmV0dXJuIGZv Y3VzX3dpZGdldDsKfQoKaW5saW5lIFFXaWRnZXQgKlFBcHBsaWNhdGlvbjo6YWN0aXZlV2luZG93 KCkgY29uc3QKewogICAgcmV0dXJuIGFjdGl2ZV93aW5kb3c7Cn0KCmlubGluZSBRV2lkZ2V0ICpR QXBwbGljYXRpb246OndpZGdldEF0KCBjb25zdCBRUG9pbnQgJnAsIGJvb2wgY2hpbGQgKQp7CiAg ICByZXR1cm4gd2lkZ2V0QXQoIHAueCgpLCBwLnkoKSwgY2hpbGQgKTsKfQoKaW5saW5lIGJvb2wg UUFwcGxpY2F0aW9uOjppblBvcHVwTW9kZSgpIGNvbnN0CnsKICAgIHJldHVybiBwb3B1cFdpZGdl dHMgIT0gMDsKfQoKaW5saW5lIGJvb2wgUUFwcGxpY2F0aW9uOjppc1Nlc3Npb25SZXN0b3JlZCgp IGNvbnN0CnsKICAgIHJldHVybiBpc19zZXNzaW9uX3Jlc3RvcmVkOwp9CgppbmxpbmUgUVN0cmlu ZyBRQXBwbGljYXRpb246OnNlc3Npb25JZCgpIGNvbnN0CnsKICAgIHJldHVybiBzZXNzaW9uX2lk Owp9CgppbmxpbmUgUVNpemUgUUFwcGxpY2F0aW9uOjpnbG9iYWxTdHJ1dCgpCnsKICAgIHJldHVy biBhcHBfc3RydXQ7Cn0KCmlubGluZSBib29sIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KCBRT2Jq ZWN0ICpyZWNlaXZlciwgUUV2ZW50ICpldmVudCApCnsgcmV0dXJuIHFBcHAtPm5vdGlmeSggcmVj ZWl2ZXIsIGV2ZW50ICk7IH0KCiMgMyAic2xvdHMuaCIgMgoKCiMgMzMgIi91c3IvbGliL3F0LTIu Mi4wL2luY2x1ZGUvcXB1c2hidXR0b24uaCIgMSAzCiMgMzggIi91c3IvbGliL3F0LTIuMi4wL2lu Y2x1ZGUvcWJ1dHRvbi5oIiAxIDMKY2xhc3MgUUJ1dHRvbkdyb3VwOwpzdHJ1Y3QgUUJ1dHRvbkRh dGE7CmNsYXNzIFFUb29sQmFyOwoKY2xhc3MgUUJ1dHRvbiA6IHB1YmxpYyBRV2lkZ2V0CnsKICAg IHB1YmxpYzogUU1ldGFPYmplY3QgKm1ldGFPYmplY3QoKSBjb25zdCB7IHJldHVybiBzdGF0aWNN ZXRhT2JqZWN0KCk7IH0gY29uc3QgY2hhciAqY2xhc3NOYW1lKCkgY29uc3Q7IHN0YXRpYyBRTWV0 YU9iamVjdCogc3RhdGljTWV0YU9iamVjdCgpOyBzdGF0aWMgUVN0cmluZyB0cihjb25zdCBjaGFy Kik7IHN0YXRpYyBRU3RyaW5nIHRyKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7IHByb3RlY3Rl ZDogdm9pZCBpbml0TWV0YU9iamVjdCgpOyBwcml2YXRlOiBzdGF0aWMgUU1ldGFPYmplY3QgKm1l dGFPYmo7CgoKCgoKCgoKCgoKCgpwdWJsaWM6CiAgICBRQnV0dG9uKCBRV2lkZ2V0ICpwYXJlbnQ9 MCwgY29uc3QgY2hhciAqbmFtZT0wLCBXRmxhZ3MgZj0wICk7CiAgIH5RQnV0dG9uKCk7CgogICAg UVN0cmluZyB0ZXh0KCkgY29uc3Q7CiAgICB2aXJ0dWFsIHZvaWQgc2V0VGV4dCggY29uc3QgUVN0 cmluZyAmKTsKICAgIGNvbnN0IFFQaXhtYXAgKnBpeG1hcCgpIGNvbnN0OwogICAgdmlydHVhbCB2 b2lkIHNldFBpeG1hcCggY29uc3QgUVBpeG1hcCAmICk7CgogICAgaW50IGFjY2VsKCkgY29uc3Q7 CiAgICB2aXJ0dWFsIHZvaWQgc2V0QWNjZWwoIGludCApOwoKICAgIGJvb2wgaXNUb2dnbGVCdXR0 b24oKSBjb25zdDsKCiAgICBlbnVtIFRvZ2dsZVR5cGUgeyBTaW5nbGVTaG90LCBUb2dnbGUsIFRy aXN0YXRlIH07CiAgICBUb2dnbGVUeXBlIHRvZ2dsZVR5cGUoKSBjb25zdDsKCiAgICB2aXJ0dWFs IHZvaWQgc2V0RG93biggYm9vbCApOwogICAgYm9vbCBpc0Rvd24oKSBjb25zdDsKCiAgICBib29s IGlzT24oKSBjb25zdDsKCiAgICBlbnVtIFRvZ2dsZVN0YXRlIHsgT2ZmLCBOb0NoYW5nZSwgT24g fTsKICAgIFRvZ2dsZVN0YXRlIHN0YXRlKCkgY29uc3Q7CgogICAgYm9vbCBhdXRvUmVzaXplKCkg Y29uc3Q7CiAgICB2aXJ0dWFsIHZvaWQgc2V0QXV0b1Jlc2l6ZSggYm9vbCApOwoKICAgIGJvb2wg YXV0b1JlcGVhdCgpIGNvbnN0OwogICAgdmlydHVhbCB2b2lkIHNldEF1dG9SZXBlYXQoIGJvb2wg KTsKCiAgICBib29sIGlzRXhjbHVzaXZlVG9nZ2xlKCkgY29uc3Q7CgogICAgYm9vbCBmb2N1c05l eHRQcmV2Q2hpbGQoIGJvb2wgbmV4dCApOwoKICAgIFFCdXR0b25Hcm91cCAqZ3JvdXAoKSBjb25z dDsKCnB1YmxpYzoKICAgIHZvaWQgYW5pbWF0ZUNsaWNrKCk7CiAgICB2b2lkIHRvZ2dsZSgpOwoK cHJvdGVjdGVkOgogICAgdm9pZCBwcmVzc2VkKCk7CiAgICB2b2lkIHJlbGVhc2VkKCk7CiAgICB2 b2lkIGNsaWNrZWQoKTsKICAgIHZvaWQgdG9nZ2xlZCggYm9vbCApOwogICAgdm9pZCBzdGF0ZUNo YW5nZWQoIGludCApOwoKcHJvdGVjdGVkOgogICAgdm9pZCBzZXRUb2dnbGVCdXR0b24oIGJvb2wg KTsKICAgIHZpcnR1YWwgdm9pZCBzZXRUb2dnbGVUeXBlKCBUb2dnbGVUeXBlICk7CiAgICB2b2lk IHNldE9uKCBib29sICk7CiAgICB2aXJ0dWFsIHZvaWQgc2V0U3RhdGUoIFRvZ2dsZVN0YXRlICk7 CgogICAgdmlydHVhbCBib29sIGhpdEJ1dHRvbiggY29uc3QgUVBvaW50ICZwb3MgKSBjb25zdDsK ICAgIHZpcnR1YWwgdm9pZCBkcmF3QnV0dG9uKCBRUGFpbnRlciAqICk7CiAgICB2aXJ0dWFsIHZv aWQgZHJhd0J1dHRvbkxhYmVsKCBRUGFpbnRlciAqICk7CgogICAgdm9pZCBrZXlQcmVzc0V2ZW50 KCBRS2V5RXZlbnQgKik7CiAgICB2b2lkIGtleVJlbGVhc2VFdmVudCggUUtleUV2ZW50ICopOwog ICAgdm9pZCBtb3VzZVByZXNzRXZlbnQoIFFNb3VzZUV2ZW50ICogKTsKICAgIHZvaWQgbW91c2VS ZWxlYXNlRXZlbnQoIFFNb3VzZUV2ZW50ICogKTsKICAgIHZvaWQgbW91c2VNb3ZlRXZlbnQoIFFN b3VzZUV2ZW50ICogKTsKICAgIHZvaWQgcGFpbnRFdmVudCggUVBhaW50RXZlbnQgKiApOwogICAg dm9pZCBmb2N1c0luRXZlbnQoIFFGb2N1c0V2ZW50ICogKTsKICAgIHZvaWQgZm9jdXNPdXRFdmVu dCggUUZvY3VzRXZlbnQgKiApOwoKICAgIHZvaWQgZW5hYmxlZENoYW5nZSggYm9vbCApOwoKcHJp dmF0ZToKICAgIHZvaWQgYW5pbWF0ZVRpbWVvdXQoKTsKICAgIHZvaWQgYXV0b1JlcGVhdFRpbWVv dXQoKTsKCnByaXZhdGU6CiAgICBRU3RyaW5nIGJ0ZXh0OwogICAgUVBpeG1hcCAqYnBpeG1hcDsK ICAgIHVpbnQgdG9nZ2xlVHlwIDogMjsKICAgIHVpbnQgYnV0dG9uRG93biA6IDE7CiAgICB1aW50 IHN0YXQgOiAyOwogICAgdWludCBtbGJEb3duIDogMTsKICAgIHVpbnQgYXV0b3Jlc2l6ZSA6IDE7 CiAgICB1aW50IGFuaW1hdGlvbiA6IDE7CiAgICB1aW50IHJlcGVhdCA6IDE7CiAgICBRQnV0dG9u RGF0YSAqZDsKCiAgICBmcmllbmQgY2xhc3MgUUJ1dHRvbkdyb3VwOwogICAgZnJpZW5kIGNsYXNz IFFUb29sQmFyOwogICAgdm9pZCBlbnN1cmVEYXRhKCk7CiAgICB2aXJ0dWFsIHZvaWQgc2V0R3Jv dXAoIFFCdXR0b25Hcm91cCogKTsKICAgIFFUaW1lciAqdGltZXIoKTsKICAgIHZvaWQgbmV4dFN0 YXRlKCk7Cgpwcml2YXRlOgoKICAgIFFCdXR0b24oIGNvbnN0IFFCdXR0b24gJiApOwogICAgUUJ1 dHRvbiAmb3BlcmF0b3I9KCBjb25zdCBRQnV0dG9uICYgKTsKCn07CgoKaW5saW5lIFFTdHJpbmcg UUJ1dHRvbjo6dGV4dCgpIGNvbnN0CnsKICAgIHJldHVybiBidGV4dDsKfQoKaW5saW5lIGNvbnN0 IFFQaXhtYXAgKlFCdXR0b246OnBpeG1hcCgpIGNvbnN0CnsKICAgIHJldHVybiBicGl4bWFwOwp9 CgppbmxpbmUgYm9vbCBRQnV0dG9uOjppc1RvZ2dsZUJ1dHRvbigpIGNvbnN0CnsKICAgIHJldHVy biB0b2dnbGVUeXAgIT0gU2luZ2xlU2hvdDsKfQoKaW5saW5lIGJvb2wgUUJ1dHRvbjo6aXNEb3du KCkgY29uc3QKewogICAgcmV0dXJuIGJ1dHRvbkRvd247Cn0KCmlubGluZSBib29sIFFCdXR0b246 OmlzT24oKSBjb25zdAp7CiAgICByZXR1cm4gc3RhdCAhPSBPZmY7Cn0KCmlubGluZSBib29sIFFC dXR0b246OmF1dG9SZXNpemUoKSBjb25zdAp7CiAgICByZXR1cm4gYXV0b3Jlc2l6ZTsKfQoKaW5s aW5lIGJvb2wgUUJ1dHRvbjo6YXV0b1JlcGVhdCgpIGNvbnN0CnsKICAgIHJldHVybiByZXBlYXQ7 Cn0KCmlubGluZSBRQnV0dG9uOjpUb2dnbGVTdGF0ZSBRQnV0dG9uOjpzdGF0ZSgpIGNvbnN0CnsK ICAgIHJldHVybiBUb2dnbGVTdGF0ZShzdGF0KTsKfQoKaW5saW5lIHZvaWQgUUJ1dHRvbjo6c2V0 VG9nZ2xlQnV0dG9uKCBib29sIGIgKQp7CiAgICBzZXRUb2dnbGVUeXBlKCBiID8gVG9nZ2xlIDog U2luZ2xlU2hvdCApOwp9CgppbmxpbmUgdm9pZCBRQnV0dG9uOjpzZXRPbiggYm9vbCB5ICkKewog ICAgc2V0U3RhdGUoIHkgPyBPbiA6IE9mZiApOwp9CgppbmxpbmUgUUJ1dHRvbjo6VG9nZ2xlVHlw ZSBRQnV0dG9uOjp0b2dnbGVUeXBlKCkgY29uc3QKewogICAgcmV0dXJuIFRvZ2dsZVR5cGUodG9n Z2xlVHlwKTsKfQoKCiMgMzMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXB1c2hidXR0b24u aCIgMiAzCgojIDMzICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FpY29uc2V0LmgiIDEgMwoj IDM4ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FwaXhtYXAuaCIgMSAzCmNsYXNzIFFHZng7 CgoKCgoKCgpjbGFzcyBRUGl4bWFwIDogcHVibGljIFFQYWludERldmljZSwgcHVibGljIFF0CnsK cHVibGljOgogICAgZW51bSBDb2xvck1vZGUgeyBBdXRvLCBDb2xvciwgTW9ubyB9OwogICAgZW51 bSBPcHRpbWl6YXRpb24geyBEZWZhdWx0T3B0aW0sIE5vT3B0aW0sIE1lbW9yeU9wdGltPU5vT3B0 aW0sCiAgICAgICAgICAgICAgICAgICAgICAgIE5vcm1hbE9wdGltLCBCZXN0T3B0aW0gfTsKCiAg ICBRUGl4bWFwKCk7CiAgICBRUGl4bWFwKCBpbnQgdywgaW50IGgsIGludCBkZXB0aCA9IC0xLCBP cHRpbWl6YXRpb24gPSBEZWZhdWx0T3B0aW0gKTsKICAgIFFQaXhtYXAoIGNvbnN0IFFTaXplICYs IGludCBkZXB0aCA9IC0xLCBPcHRpbWl6YXRpb24gPSBEZWZhdWx0T3B0aW0gKTsKICAgIFFQaXht YXAoIGNvbnN0IFFTdHJpbmcmIGZpbGVOYW1lLCBjb25zdCBjaGFyICpmb3JtYXQ9MCwKICAgICAg ICAgICAgIENvbG9yTW9kZSBtb2RlPUF1dG8gKTsKICAgIFFQaXhtYXAoIGNvbnN0IFFTdHJpbmcm IGZpbGVOYW1lLCBjb25zdCBjaGFyICpmb3JtYXQsCiAgICAgICAgICAgICBpbnQgY29udmVyc2lv bl9mbGFncyApOwogICAgUVBpeG1hcCggY29uc3QgY2hhciAqeHBtW10gKTsKICAgIFFQaXhtYXAo IGNvbnN0IFFCeXRlQXJyYXkgJmRhdGEgKTsKICAgIFFQaXhtYXAoIGNvbnN0IFFQaXhtYXAgJiAp OwogICB+UVBpeG1hcCgpOwoKICAgIFFQaXhtYXAgJm9wZXJhdG9yPSggY29uc3QgUVBpeG1hcCAm ICk7CiAgICBRUGl4bWFwICZvcGVyYXRvcj0oIGNvbnN0IFFJbWFnZSAmICk7CgogICAgYm9vbCBp c051bGwoKSBjb25zdDsKCiAgICBpbnQgd2lkdGgoKSBjb25zdCB7IHJldHVybiBkYXRhLT53OyB9 CiAgICBpbnQgaGVpZ2h0KCkgY29uc3QgeyByZXR1cm4gZGF0YS0+aDsgfQogICAgUVNpemUgc2l6 ZSgpIGNvbnN0IHsgcmV0dXJuIFFTaXplKGRhdGEtPncsZGF0YS0+aCk7IH0KICAgIFFSZWN0IHJl Y3QoKSBjb25zdCB7IHJldHVybiBRUmVjdCgwLDAsZGF0YS0+dyxkYXRhLT5oKTsgfQogICAgaW50 IGRlcHRoKCkgY29uc3QgeyByZXR1cm4gZGF0YS0+ZDsgfQogICAgc3RhdGljIGludCBkZWZhdWx0 RGVwdGgoKTsKCiAgICB2b2lkIGZpbGwoIGNvbnN0IFFDb2xvciAmZmlsbENvbG9yID0gUXQ6Ondo aXRlICk7CiAgICB2b2lkIGZpbGwoIGNvbnN0IFFXaWRnZXQgKiwgaW50IHhvZnMsIGludCB5b2Zz ICk7CiAgICB2b2lkIGZpbGwoIGNvbnN0IFFXaWRnZXQgKiwgY29uc3QgUVBvaW50ICZvZnMgKTsK ICAgIHZvaWQgcmVzaXplKCBpbnQgd2lkdGgsIGludCBoZWlnaHQgKTsKICAgIHZvaWQgcmVzaXpl KCBjb25zdCBRU2l6ZSAmICk7CgogICAgY29uc3QgUUJpdG1hcCAqbWFzaygpIGNvbnN0OwogICAg dm9pZCBzZXRNYXNrKCBjb25zdCBRQml0bWFwICYgKTsKICAgIGJvb2wgc2VsZk1hc2soKSBjb25z dDsKICAgIFFCaXRtYXAgY3JlYXRlSGV1cmlzdGljTWFzayggYm9vbCBjbGlwVGlnaHQgPSBUUlVF ICkgY29uc3Q7CgogICAgc3RhdGljIFFQaXhtYXAgZ3JhYldpbmRvdyggV0lkLCBpbnQgeD0wLCBp bnQgeT0wLCBpbnQgdz0tMSwgaW50IGg9LTEgKTsKICAgIHN0YXRpYyBRUGl4bWFwIGdyYWJXaWRn ZXQoIFFXaWRnZXQgKiB3aWRnZXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50 IHg9MCwgaW50IHk9MCwgaW50IHc9LTEsIGludCBoPS0xICk7CgoKICAgIFFQaXhtYXAgeEZvcm0o IGNvbnN0IFFXTWF0cml4ICYgKSBjb25zdDsKICAgIHN0YXRpYyBRV01hdHJpeCB0cnVlTWF0cml4 KCBjb25zdCBRV01hdHJpeCAmLCBpbnQgdywgaW50IGggKTsKCgogICAgUUltYWdlIGNvbnZlcnRU b0ltYWdlKCkgY29uc3Q7CiAgICBib29sIGNvbnZlcnRGcm9tSW1hZ2UoIGNvbnN0IFFJbWFnZSAm LCBDb2xvck1vZGUgbW9kZT1BdXRvICk7CiAgICBib29sIGNvbnZlcnRGcm9tSW1hZ2UoIGNvbnN0 IFFJbWFnZSAmLCBpbnQgY29udmVyc2lvbl9mbGFncyApOwoKICAgIHN0YXRpYyBjb25zdCBjaGFy KiBpbWFnZUZvcm1hdCggY29uc3QgUVN0cmluZyAmZmlsZU5hbWUgKTsKICAgIGJvb2wgbG9hZCgg Y29uc3QgUVN0cmluZyYgZmlsZU5hbWUsIGNvbnN0IGNoYXIgKmZvcm1hdD0wLAogICAgICAgICAg ICAgICAgICAgICAgQ29sb3JNb2RlIG1vZGU9QXV0byApOwogICAgYm9vbCBsb2FkKCBjb25zdCBR U3RyaW5nJiBmaWxlTmFtZSwgY29uc3QgY2hhciAqZm9ybWF0LAogICAgICAgICAgICAgICAgICAg ICAgaW50IGNvbnZlcnNpb25fZmxhZ3MgKTsKICAgIGJvb2wgbG9hZEZyb21EYXRhKCBjb25zdCB1 Y2hhciAqYnVmLCB1aW50IGxlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg Y2hhciogZm9ybWF0PTAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbG9yTW9kZSBt b2RlPUF1dG8gKTsKICAgIGJvb2wgbG9hZEZyb21EYXRhKCBjb25zdCB1Y2hhciAqYnVmLCB1aW50 IGxlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogZm9ybWF0LAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgY29udmVyc2lvbl9mbGFncyApOwogICAg Ym9vbCBsb2FkRnJvbURhdGEoIGNvbnN0IFFCeXRlQXJyYXkgJmRhdGEsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZvcm1hdD0wLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgY29udmVyc2lvbl9mbGFncz0wICk7CiAgICBib29sIHNhdmUoIGNvbnN0 IFFTdHJpbmcmIGZpbGVOYW1lLCBjb25zdCBjaGFyKiBmb3JtYXQgKSBjb25zdDsKICAgIGJvb2wg c2F2ZSggY29uc3QgUVN0cmluZyYgZmlsZU5hbWUsIGNvbnN0IGNoYXIqIGZvcm1hdCwKICAgICAg ICAgICAgICAgICAgICAgIGludCBxdWFsaXR5ICkgY29uc3Q7CgoKCgoKICAgIGludCBzZXJpYWxO dW1iZXIoKSBjb25zdDsKCiAgICBPcHRpbWl6YXRpb24gb3B0aW1pemF0aW9uKCkgY29uc3Q7CiAg ICB2b2lkIHNldE9wdGltaXphdGlvbiggT3B0aW1pemF0aW9uICk7CiAgICBzdGF0aWMgT3B0aW1p emF0aW9uIGRlZmF1bHRPcHRpbWl6YXRpb24oKTsKICAgIHN0YXRpYyB2b2lkIHNldERlZmF1bHRP cHRpbWl6YXRpb24oIE9wdGltaXphdGlvbiApOwoKICAgIHZpcnR1YWwgdm9pZCBkZXRhY2goKTsK CiAgICBib29sIGlzUUJpdG1hcCgpIGNvbnN0OwoKIyAxNTIgIi91c3IvbGliL3F0LTIuMi4wL2lu Y2x1ZGUvcXBpeG1hcC5oIiAzCnByb3RlY3RlZDoKICAgIFFQaXhtYXAoIGludCB3LCBpbnQgaCwg Y29uc3QgdWNoYXIgKmRhdGEsIGJvb2wgaXNYYml0bWFwICk7CiAgICBpbnQgbWV0cmljKCBpbnQg KSBjb25zdDsKCgoKCgoKCgogICAgc3RydWN0IFFQaXhtYXBEYXRhIDogcHVibGljIFFTaGFyZWQg ewogICAgICAgIFFDT09SRCB3LCBoOwogICAgICAgIHNob3J0IGQ7CiAgICAgICAgdWludCB1bmlu aXQgOiAxOwogICAgICAgIHVpbnQgYml0bWFwIDogMTsKICAgICAgICB1aW50IHNlbGZtYXNrIDog MTsKCgoKICAgICAgICBpbnQgc2VyX25vOwogICAgICAgIFFCaXRtYXAgKm1hc2s7CiMgMTgyICIv dXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FwaXhtYXAuaCIgMwogICAgICAgIHZvaWQgKnhpbWFn ZTsKICAgICAgICB2b2lkICptYXNrZ2M7CgoKCgoKICAgICAgICBPcHRpbWl6YXRpb24gb3B0aW07 CiAgICB9ICpkYXRhOwoKcHJpdmF0ZToKICAgIFFQaXhtYXAoIGludCB3LCBpbnQgaCwgaW50IGRl cHRoLCBib29sLCBPcHRpbWl6YXRpb24gKTsKICAgIHZvaWQgaW5pdCggaW50LCBpbnQsIGludCwg Ym9vbCwgT3B0aW1pemF0aW9uICk7CiAgICB2b2lkIGRlcmVmKCk7CiAgICBRUGl4bWFwIGNvcHko IGJvb2wgaWdub3JlTWFzayA9IEZBTFNFICkgY29uc3Q7CiAgICBzdGF0aWMgT3B0aW1pemF0aW9u IGRlZk9wdGltOwogICAgZnJpZW5kIHZvaWQgYml0Qmx0KCBRUGFpbnREZXZpY2UgKiwgaW50LCBp bnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFQYWludERldmljZSAq LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQsIGludCwgaW50LCBpbnQsIFJh c3Rlck9wLCBib29sICk7CiAgICBmcmllbmQgdm9pZCBiaXRCbHQoIFFQYWludERldmljZSAqLCBp bnQsIGludCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUUltYWdlKiBz cmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCwgaW50LCBpbnQsIGludCwg aW50IGNvbnZlcnNpb25fZmxhZ3MgKTsKICAgIGZyaWVuZCBjbGFzcyBRQml0bWFwOwogICAgZnJp ZW5kIGNsYXNzIFFQYWludERldmljZTsKICAgIGZyaWVuZCBjbGFzcyBRUGFpbnRlcjsKfTsKCgpp bmxpbmUgYm9vbCBRUGl4bWFwOjppc051bGwoKSBjb25zdAp7CiAgICByZXR1cm4gZGF0YS0+dyA9 PSAwOwp9CgppbmxpbmUgdm9pZCBRUGl4bWFwOjpmaWxsKCBjb25zdCBRV2lkZ2V0ICp3LCBjb25z dCBRUG9pbnQgJm9mcyApCnsKICAgIGZpbGwoIHcsIG9mcy54KCksIG9mcy55KCkgKTsKfQoKaW5s aW5lIHZvaWQgUVBpeG1hcDo6cmVzaXplKCBjb25zdCBRU2l6ZSAmcyApCnsKICAgIHJlc2l6ZSgg cy53aWR0aCgpLCBzLmhlaWdodCgpICk7Cn0KCmlubGluZSBjb25zdCBRQml0bWFwICpRUGl4bWFw OjptYXNrKCkgY29uc3QKewogICAgcmV0dXJuIGRhdGEtPm1hc2s7Cn0KCmlubGluZSBib29sIFFQ aXhtYXA6OnNlbGZNYXNrKCkgY29uc3QKewogICAgcmV0dXJuIGRhdGEtPnNlbGZtYXNrOwp9CgoK CgoKCgoKaW5saW5lIGludCBRUGl4bWFwOjpzZXJpYWxOdW1iZXIoKSBjb25zdAp7CiAgICByZXR1 cm4gZGF0YS0+c2VyX25vOwp9CgppbmxpbmUgUVBpeG1hcDo6T3B0aW1pemF0aW9uIFFQaXhtYXA6 Om9wdGltaXphdGlvbigpIGNvbnN0CnsKICAgIHJldHVybiBkYXRhLT5vcHRpbTsKfQoKaW5saW5l IGJvb2wgUVBpeG1hcDo6aXNRQml0bWFwKCkgY29uc3QKewogICAgcmV0dXJuIGRhdGEtPmJpdG1h cDsKfQoKIyAyNzAgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXBpeG1hcC5oIiAzCiBRRGF0 YVN0cmVhbSAmb3BlcmF0b3I8PCggUURhdGFTdHJlYW0gJiwgY29uc3QgUVBpeG1hcCAmICk7CiBR RGF0YVN0cmVhbSAmb3BlcmF0b3I+PiggUURhdGFTdHJlYW0gJiwgUVBpeG1hcCAmICk7CiMgMzMg Ii91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWljb25zZXQuaCIgMiAzCgoKCnN0cnVjdCBRSWNv blNldFByaXZhdGU7CgoKY2xhc3MgUUljb25TZXQKewpwdWJsaWM6CiAgICBlbnVtIFNpemUgeyBB dXRvbWF0aWMsIFNtYWxsLCBMYXJnZSB9OwoKICAgIGVudW0gTW9kZSB7IE5vcm1hbCwgRGlzYWJs ZWQsIEFjdGl2ZSB9OwoKICAgIFFJY29uU2V0KCk7CiAgICBRSWNvblNldCggY29uc3QgUVBpeG1h cCAmLCBTaXplID0gQXV0b21hdGljICk7CiAgICBRSWNvblNldCggY29uc3QgUVBpeG1hcCAmc21h bGxQaXgsIGNvbnN0IFFQaXhtYXAgJmxhcmdlUGl4ICk7CiAgICBRSWNvblNldCggY29uc3QgUUlj b25TZXQgJiApOwogICAgdmlydHVhbCB+UUljb25TZXQoKTsKCiAgICB2b2lkIHJlc2V0KCBjb25z dCBRUGl4bWFwICYsIFNpemUgKTsKCiAgICB2aXJ0dWFsIHZvaWQgc2V0UGl4bWFwKCBjb25zdCBR UGl4bWFwICYsIFNpemUsIE1vZGUgPSBOb3JtYWwgKTsKICAgIHZpcnR1YWwgdm9pZCBzZXRQaXht YXAoIGNvbnN0IFFTdHJpbmcgJiwgU2l6ZSwgTW9kZSA9IE5vcm1hbCApOwogICAgUVBpeG1hcCBw aXhtYXAoIFNpemUsIE1vZGUgKSBjb25zdDsKICAgIFFQaXhtYXAgcGl4bWFwKCBTaXplIHMsIGJv b2wgZW5hYmxlZCApIGNvbnN0OwogICAgUVBpeG1hcCBwaXhtYXAoKSBjb25zdDsKICAgIGJvb2wg aXNHZW5lcmF0ZWQoIFNpemUsIE1vZGUgKSBjb25zdDsKCiAgICBib29sIGlzTnVsbCgpIGNvbnN0 OwoKICAgIHZvaWQgZGV0YWNoKCk7CgogICAgUUljb25TZXQgJm9wZXJhdG9yPSggY29uc3QgUUlj b25TZXQgJiApOwoKcHJpdmF0ZToKICAgIFFJY29uU2V0UHJpdmF0ZSAqIGQ7Cn07CgojIDM0ICIv dXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FwdXNoYnV0dG9uLmgiIDIgMwoKCgoKY2xhc3MgUVB1 c2hCdXR0b24gOiBwdWJsaWMgUUJ1dHRvbgp7CiAgICBwdWJsaWM6IFFNZXRhT2JqZWN0ICptZXRh T2JqZWN0KCkgY29uc3QgeyByZXR1cm4gc3RhdGljTWV0YU9iamVjdCgpOyB9IGNvbnN0IGNoYXIg KmNsYXNzTmFtZSgpIGNvbnN0OyBzdGF0aWMgUU1ldGFPYmplY3QqIHN0YXRpY01ldGFPYmplY3Qo KTsgc3RhdGljIFFTdHJpbmcgdHIoY29uc3QgY2hhciopOyBzdGF0aWMgUVN0cmluZyB0cihjb25z dCBjaGFyKiwgY29uc3QgY2hhciopOyBwcm90ZWN0ZWQ6IHZvaWQgaW5pdE1ldGFPYmplY3QoKTsg cHJpdmF0ZTogc3RhdGljIFFNZXRhT2JqZWN0ICptZXRhT2JqOwoKCgoKCgoKCgoKcHVibGljOgog ICAgUVB1c2hCdXR0b24oIFFXaWRnZXQgKnBhcmVudCwgY29uc3QgY2hhciAqbmFtZT0wICk7CiAg ICBRUHVzaEJ1dHRvbiggY29uc3QgUVN0cmluZyAmdGV4dCwgUVdpZGdldCAqcGFyZW50LCBjb25z dCBjaGFyKiBuYW1lPTAgKTsKICAgIFFQdXNoQnV0dG9uKCBjb25zdCBRSWNvblNldCYgaWNvbiwg Y29uc3QgUVN0cmluZyAmdGV4dCwgUVdpZGdldCAqcGFyZW50LCBjb25zdCBjaGFyKiBuYW1lPTAg KTsKICAgIH5RUHVzaEJ1dHRvbigpOwoKICAgIFFTaXplIHNpemVIaW50KCkgY29uc3Q7CiAgICBR U2l6ZVBvbGljeSBzaXplUG9saWN5KCkgY29uc3Q7CgogICAgdm9pZCBtb3ZlKCBpbnQgeCwgaW50 IHkgKTsKICAgIHZvaWQgbW92ZSggY29uc3QgUVBvaW50ICZwICk7CiAgICB2b2lkIHJlc2l6ZSgg aW50IHcsIGludCBoICk7CiAgICB2b2lkIHJlc2l6ZSggY29uc3QgUVNpemUgJiApOwogICAgdmly dHVhbCB2b2lkIHNldEdlb21ldHJ5KCBpbnQgeCwgaW50IHksIGludCB3LCBpbnQgaCApOwoKICAg IHZpcnR1YWwgdm9pZCBzZXRHZW9tZXRyeSggY29uc3QgUVJlY3QgJiApOwoKICAgIHZpcnR1YWwg dm9pZCBzZXRUb2dnbGVCdXR0b24oIGJvb2wgKTsKCiAgICBib29sIGF1dG9EZWZhdWx0KCkgY29u c3QgeyByZXR1cm4gYXV0b0RlZkJ1dHRvbjsgfQogICAgdmlydHVhbCB2b2lkIHNldEF1dG9EZWZh dWx0KCBib29sIGF1dG9EZWYgKTsKICAgIGJvb2wgaXNEZWZhdWx0KCkgY29uc3QgeyByZXR1cm4g ZGVmQnV0dG9uOyB9CiAgICB2aXJ0dWFsIHZvaWQgc2V0RGVmYXVsdCggYm9vbCBkZWYgKTsKCiAg ICB2aXJ0dWFsIHZvaWQgc2V0SXNNZW51QnV0dG9uKCBib29sICk7CiAgICBib29sIGlzTWVudUJ1 dHRvbigpIGNvbnN0OwoKICAgIHZvaWQgc2V0UG9wdXAoIFFQb3B1cE1lbnUqIHBvcHVwICk7CiAg ICBRUG9wdXBNZW51KiBwb3B1cCgpIGNvbnN0OwoKICAgIHZvaWQgc2V0SWNvblNldCggY29uc3Qg UUljb25TZXQmICk7CiAgICBRSWNvblNldCogaWNvblNldCgpIGNvbnN0OwoKICAgIHZvaWQgc2V0 RmxhdCggYm9vbCApOwogICAgYm9vbCBpc0ZsYXQoKSBjb25zdDsKCnB1YmxpYzoKICAgIHZpcnR1 YWwgdm9pZCBzZXRPbiggYm9vbCApOwoKICAgIHZvaWQgdG9nZ2xlKCk7Cgpwcm90ZWN0ZWQ6CiAg ICB2b2lkIGRyYXdCdXR0b24oIFFQYWludGVyICogKTsKICAgIHZvaWQgZHJhd0J1dHRvbkxhYmVs KCBRUGFpbnRlciAqICk7CiAgICB2b2lkIGZvY3VzSW5FdmVudCggUUZvY3VzRXZlbnQgKiApOwog ICAgdm9pZCBmb2N1c091dEV2ZW50KCBRRm9jdXNFdmVudCAqICk7CiAgICB2b2lkIHJlc2l6ZUV2 ZW50KCBRUmVzaXplRXZlbnQgKiApOwogICAgdm9pZCB1cGRhdGVNYXNrKCk7Cgpwcml2YXRlOgog ICAgdm9pZCBwb3B1cFByZXNzZWQoKTsKCnByaXZhdGU6CiAgICB2b2lkIGluaXQoKTsKCiAgICB1 aW50IGF1dG9EZWZCdXR0b24gOiAxOwogICAgdWludCBkZWZCdXR0b24gOiAxOwogICAgdWludCBm bHQgOiAxOwogICAgdWludCByZXNlcnZlZCA6IDE7CiAgICB1aW50IGxhc3RFbmFibGVkIDogMTsK ICAgIHVpbnQgaGFzTWVudUFycm93IDogMTsKCiAgICBmcmllbmQgY2xhc3MgUURpYWxvZzsKCnBy aXZhdGU6CgogICAgUVB1c2hCdXR0b24oIGNvbnN0IFFQdXNoQnV0dG9uICYgKTsKICAgIFFQdXNo QnV0dG9uICZvcGVyYXRvcj0oIGNvbnN0IFFQdXNoQnV0dG9uICYgKTsKCn07CgoKIyA1ICJzbG90 cy5oIiAyCgoKIyAzMyAiL3Vzci9saWIvcXQtMi4yLjAvaW5jbHVkZS9xbGFiZWwuaCIgMSAzCiMg MzcgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWZyYW1lLmgiIDEgMwpjbGFzcyBRRnJhbWUg OiBwdWJsaWMgUVdpZGdldAp7CiAgICBwdWJsaWM6IFFNZXRhT2JqZWN0ICptZXRhT2JqZWN0KCkg Y29uc3QgeyByZXR1cm4gc3RhdGljTWV0YU9iamVjdCgpOyB9IGNvbnN0IGNoYXIgKmNsYXNzTmFt ZSgpIGNvbnN0OyBzdGF0aWMgUU1ldGFPYmplY3QqIHN0YXRpY01ldGFPYmplY3QoKTsgc3RhdGlj IFFTdHJpbmcgdHIoY29uc3QgY2hhciopOyBzdGF0aWMgUVN0cmluZyB0cihjb25zdCBjaGFyKiwg Y29uc3QgY2hhciopOyBwcm90ZWN0ZWQ6IHZvaWQgaW5pdE1ldGFPYmplY3QoKTsgcHJpdmF0ZTog c3RhdGljIFFNZXRhT2JqZWN0ICptZXRhT2JqOwoKCgoKCgoKCgoKcHVibGljOgogICAgUUZyYW1l KCBRV2lkZ2V0ICpwYXJlbnQ9MCwgY29uc3QgY2hhciAqbmFtZT0wLCBXRmxhZ3MgZj0wLAogICAg ICAgICAgICBib29sID0gVFJVRSApOwoKICAgIGludCBmcmFtZVN0eWxlKCkgY29uc3Q7CiAgICB2 aXJ0dWFsIHZvaWQgc2V0RnJhbWVTdHlsZSggaW50ICk7CgogICAgaW50IGZyYW1lV2lkdGgoKSBj b25zdDsKICAgIFFSZWN0IGNvbnRlbnRzUmVjdCgpIGNvbnN0OwoKCiAgICBib29sIGxpbmVTaGFw ZXNPaygpIGNvbnN0IHsgcmV0dXJuIFRSVUU7IH0KCgogICAgUVNpemUgc2l6ZUhpbnQoKSBjb25z dDsKICAgIFFTaXplUG9saWN5IHNpemVQb2xpY3koKSBjb25zdDsKCiAgICBlbnVtIFNoYXBlIHsg Tm9GcmFtZSA9IDAsCiAgICAgICAgICAgICAgICAgQm94ID0gMHgwMDAxLAogICAgICAgICAgICAg ICAgIFBhbmVsID0gMHgwMDAyLAogICAgICAgICAgICAgICAgIFdpblBhbmVsID0gMHgwMDAzLAog ICAgICAgICAgICAgICAgIEhMaW5lID0gMHgwMDA0LAogICAgICAgICAgICAgICAgIFZMaW5lID0g MHgwMDA1LAogICAgICAgICAgICAgICAgIFN0eWxlZFBhbmVsID0gMHgwMDA2LAogICAgICAgICAg ICAgICAgIFBvcHVwUGFuZWwgPSAweDAwMDcsCiAgICAgICAgICAgICAgICAgTVNoYXBlID0gMHgw MDBmCiAgICB9OwogICAgZW51bSBTaGFkb3cgeyBQbGFpbiA9IDB4MDAxMCwKICAgICAgICAgICAg ICAgICAgUmFpc2VkID0gMHgwMDIwLAogICAgICAgICAgICAgICAgICBTdW5rZW4gPSAweDAwMzAs CiAgICAgICAgICAgICAgICAgIE1TaGFkb3cgPSAweDAwZjAgfTsKCiAgICBTaGFwZSBmcmFtZVNo YXBlKCkgY29uc3Q7CiAgICB2b2lkIHNldEZyYW1lU2hhcGUoIFNoYXBlICk7CiAgICBTaGFkb3cg ZnJhbWVTaGFkb3coKSBjb25zdDsKICAgIHZvaWQgc2V0RnJhbWVTaGFkb3coIFNoYWRvdyApOwoK ICAgIGludCBsaW5lV2lkdGgoKSBjb25zdDsKICAgIHZpcnR1YWwgdm9pZCBzZXRMaW5lV2lkdGgo IGludCApOwoKICAgIGludCBtYXJnaW4oKSBjb25zdDsKICAgIHZpcnR1YWwgdm9pZCBzZXRNYXJn aW4oIGludCApOwoKICAgIGludCBtaWRMaW5lV2lkdGgoKSBjb25zdDsKICAgIHZpcnR1YWwgdm9p ZCBzZXRNaWRMaW5lV2lkdGgoIGludCApOwoKICAgIFFSZWN0IGZyYW1lUmVjdCgpIGNvbnN0Owog ICAgdmlydHVhbCB2b2lkIHNldEZyYW1lUmVjdCggY29uc3QgUVJlY3QgJiApOwoKcHJvdGVjdGVk OgogICAgdm9pZCBwYWludEV2ZW50KCBRUGFpbnRFdmVudCAqICk7CiAgICB2b2lkIHJlc2l6ZUV2 ZW50KCBRUmVzaXplRXZlbnQgKiApOwogICAgdmlydHVhbCB2b2lkIGRyYXdGcmFtZSggUVBhaW50 ZXIgKiApOwogICAgdmlydHVhbCB2b2lkIGRyYXdDb250ZW50cyggUVBhaW50ZXIgKiApOwogICAg dmlydHVhbCB2b2lkIGZyYW1lQ2hhbmdlZCgpOwogICAgdm9pZCB1cGRhdGVNYXNrKCk7CiAgICB2 aXJ0dWFsIHZvaWQgZHJhd0ZyYW1lTWFzayggUVBhaW50ZXIgKiApOwogICAgdmlydHVhbCB2b2lk IGRyYXdDb250ZW50c01hc2soIFFQYWludGVyICogKTsKCnByaXZhdGU6CiAgICB2b2lkIHVwZGF0 ZUZyYW1lV2lkdGgoKTsKICAgIFFSZWN0IGZyZWN0OwogICAgaW50IGZzdHlsZTsKICAgIHNob3J0 IGx3aWR0aDsKICAgIHNob3J0IG13aWR0aDsKICAgIHNob3J0IG1sd2lkdGg7CiAgICBzaG9ydCBm d2lkdGg7CgogICAgdm9pZCAqIGQ7CnByaXZhdGU6CgogICAgUUZyYW1lKCBjb25zdCBRRnJhbWUg JiApOwogICAgUUZyYW1lICZvcGVyYXRvcj0oIGNvbnN0IFFGcmFtZSAmICk7Cgp9OwoKCmlubGlu ZSBpbnQgUUZyYW1lOjpmcmFtZVN0eWxlKCkgY29uc3QKeyByZXR1cm4gZnN0eWxlOyB9Cgppbmxp bmUgUUZyYW1lOjpTaGFwZSBRRnJhbWU6OmZyYW1lU2hhcGUoKSBjb25zdAp7IHJldHVybiAoU2hh cGUpICggZnN0eWxlICYgTVNoYXBlICk7IH0KCmlubGluZSBRRnJhbWU6OlNoYWRvdyBRRnJhbWU6 OmZyYW1lU2hhZG93KCkgY29uc3QKeyByZXR1cm4gKFNoYWRvdykgKCBmc3R5bGUgJiBNU2hhZG93 ICk7IH0KCmlubGluZSB2b2lkIFFGcmFtZTo6c2V0RnJhbWVTaGFwZSggUUZyYW1lOjpTaGFwZSBz ICkKeyBzZXRGcmFtZVN0eWxlKCAoIGZzdHlsZSAmIE1TaGFkb3cgKSB8IHMgKTsgfQoKaW5saW5l IHZvaWQgUUZyYW1lOjpzZXRGcmFtZVNoYWRvdyggUUZyYW1lOjpTaGFkb3cgcyApCnsgc2V0RnJh bWVTdHlsZSggKCBmc3R5bGUgJiBNU2hhcGUgKSB8IHMgKTsgfQoKaW5saW5lIGludCBRRnJhbWU6 OmxpbmVXaWR0aCgpIGNvbnN0CnsgcmV0dXJuIGx3aWR0aDsgfQoKaW5saW5lIGludCBRRnJhbWU6 Om1pZExpbmVXaWR0aCgpIGNvbnN0CnsgcmV0dXJuIG1sd2lkdGg7IH0KCmlubGluZSBpbnQgUUZy YW1lOjptYXJnaW4oKSBjb25zdAp7IHJldHVybiBtd2lkdGg7IH0KCmlubGluZSBpbnQgUUZyYW1l OjpmcmFtZVdpZHRoKCkgY29uc3QKeyByZXR1cm4gZndpZHRoOyB9CgoKIyAzMyAiL3Vzci9saWIv cXQtMi4yLjAvaW5jbHVkZS9xbGFiZWwuaCIgMiAzCgoKCgpjbGFzcyBRU2ltcGxlUmljaFRleHQ7 CmNsYXNzIFFMYWJlbFByaXZhdGU7CgpjbGFzcyBRTGFiZWwgOiBwdWJsaWMgUUZyYW1lCnsKICAg IHB1YmxpYzogUU1ldGFPYmplY3QgKm1ldGFPYmplY3QoKSBjb25zdCB7IHJldHVybiBzdGF0aWNN ZXRhT2JqZWN0KCk7IH0gY29uc3QgY2hhciAqY2xhc3NOYW1lKCkgY29uc3Q7IHN0YXRpYyBRTWV0 YU9iamVjdCogc3RhdGljTWV0YU9iamVjdCgpOyBzdGF0aWMgUVN0cmluZyB0cihjb25zdCBjaGFy Kik7IHN0YXRpYyBRU3RyaW5nIHRyKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7IHByb3RlY3Rl ZDogdm9pZCBpbml0TWV0YU9iamVjdCgpOyBwcml2YXRlOiBzdGF0aWMgUU1ldGFPYmplY3QgKm1l dGFPYmo7CgoKCgoKCgpwdWJsaWM6CiAgICBRTGFiZWwoIFFXaWRnZXQgKnBhcmVudCwgY29uc3Qg Y2hhciAqbmFtZT0wLCBXRmxhZ3MgZj0wICk7CiAgICBRTGFiZWwoIGNvbnN0IFFTdHJpbmcgJnRl eHQsIFFXaWRnZXQgKnBhcmVudCwgY29uc3QgY2hhciAqbmFtZT0wLAogICAgICAgICAgICBXRmxh Z3MgZj0wICk7CgogICAgUUxhYmVsKCBRV2lkZ2V0ICogYnVkZHksIGNvbnN0IFFTdHJpbmcgJiwK ICAgICAgICAgICAgUVdpZGdldCAqIHBhcmVudCwgY29uc3QgY2hhciAqIG5hbWU9MCwgV0ZsYWdz IGY9MCApOwoKICAgIH5RTGFiZWwoKTsKCiAgICBRU3RyaW5nIHRleHQoKSBjb25zdCB7IHJldHVy biBsdGV4dDsgfQogICAgUVBpeG1hcCAqcGl4bWFwKCkgY29uc3QgeyByZXR1cm4gbHBpeG1hcDsg fQoKICAgIFFNb3ZpZSAqbW92aWUoKSBjb25zdDsKCgogICAgVGV4dEZvcm1hdCB0ZXh0Rm9ybWF0 KCkgY29uc3Q7CiAgICB2b2lkIHNldFRleHRGb3JtYXQoIFRleHRGb3JtYXQgKTsKCiAgICBpbnQg YWxpZ25tZW50KCkgY29uc3QgeyByZXR1cm4gYWxpZ247IH0KICAgIHZpcnR1YWwgdm9pZCBzZXRB bGlnbm1lbnQoIGludCApOwogICAgaW50IGluZGVudCgpIGNvbnN0IHsgcmV0dXJuIGV4dHJhTWFy Z2luOyB9CiAgICB2b2lkIHNldEluZGVudCggaW50ICk7CgogICAgYm9vbCBhdXRvUmVzaXplKCkg Y29uc3QgeyByZXR1cm4gYXV0b3Jlc2l6ZTsgfQogICAgdmlydHVhbCB2b2lkIHNldEF1dG9SZXNp emUoIGJvb2wgKTsKCiAgICBib29sIGhhc1NjYWxlZENvbnRlbnRzKCkgY29uc3Q7CiAgICB2b2lk IHNldFNjYWxlZENvbnRlbnRzKCBib29sICk7CgogICAgUVNpemUgc2l6ZUhpbnQoKSBjb25zdDsK ICAgIFFTaXplIG1pbmltdW1TaXplSGludCgpIGNvbnN0OwogICAgUVNpemVQb2xpY3kgc2l6ZVBv bGljeSgpIGNvbnN0OwoKICAgIHZpcnR1YWwgdm9pZCBzZXRCdWRkeSggUVdpZGdldCAqICk7CiAg ICBRV2lkZ2V0ICpidWRkeSgpIGNvbnN0OwoKICAgIHZvaWQgc2V0QXV0b01hc2soYm9vbCk7Cgog ICAgaW50IGhlaWdodEZvcldpZHRoKGludCkgY29uc3Q7CgpwdWJsaWM6CiAgICB2aXJ0dWFsIHZv aWQgc2V0VGV4dCggY29uc3QgUVN0cmluZyAmKTsKICAgIHZpcnR1YWwgdm9pZCBzZXRQaXhtYXAo IGNvbnN0IFFQaXhtYXAgJiApOwoKICAgIHZpcnR1YWwgdm9pZCBzZXRNb3ZpZSggY29uc3QgUU1v dmllICYgKTsKCiAgICB2aXJ0dWFsIHZvaWQgc2V0TnVtKCBpbnQgKTsKICAgIHZpcnR1YWwgdm9p ZCBzZXROdW0oIGRvdWJsZSApOwogICAgdm9pZCBjbGVhcigpOwoKcHJvdGVjdGVkOgogICAgdm9p ZCBkcmF3Q29udGVudHMoIFFQYWludGVyICogKTsKICAgIHZvaWQgZHJhd0NvbnRlbnRzTWFzaygg UVBhaW50ZXIgKiApOwogICAgdm9pZCBmb250Q2hhbmdlKCBjb25zdCBRRm9udCAmICk7CiAgICB2 b2lkIHJlc2l6ZUV2ZW50KCBRUmVzaXplRXZlbnQqICk7Cgpwcml2YXRlOgoKICAgIHZvaWQgYWNj ZWxlcmF0b3JTbG90KCk7CiAgICB2b2lkIGJ1ZGR5RGllZCgpOwoKCiAgICB2b2lkIG1vdmllVXBk YXRlZChjb25zdCBRUmVjdCYpOwogICAgdm9pZCBtb3ZpZVJlc2l6ZWQoY29uc3QgUVNpemUmKTsK Cgpwcml2YXRlOgogICAgdm9pZCBpbml0KCk7CiAgICB2b2lkIGNsZWFyQ29udGVudHMoKTsKICAg IHZvaWQgdXBkYXRlTGFiZWwoIFFTaXplIG9sZFNpemVIaW50ICk7CiAgICBRU2l6ZSBzaXplRm9y V2lkdGgoIGludCB3ICkgY29uc3Q7CiAgICBRU3RyaW5nIGx0ZXh0OwogICAgUVBpeG1hcCAqbHBp eG1hcDsKCiAgICBRTW92aWUgKiBsbW92aWU7CgoKICAgIFFXaWRnZXQgKiBsYnVkZHk7CgogICAg dXNob3J0IGFsaWduOwogICAgc2hvcnQgZXh0cmFNYXJnaW47CiAgICB1aW50IGF1dG9yZXNpemU6 MTsKICAgIHVpbnQgc2NhbGVkY29udGVudHMgOjE7CiAgICBUZXh0Rm9ybWF0IHRleHRmb3JtYXQ7 CgogICAgUVNpbXBsZVJpY2hUZXh0KiBkb2M7CgoKICAgIFFBY2NlbCAqIGFjY2VsOwoKICAgIFFM YWJlbFByaXZhdGUqIGQ7Cgpwcml2YXRlOgoKICAgIFFMYWJlbCggY29uc3QgUUxhYmVsICYgKTsK ICAgIFFMYWJlbCAmb3BlcmF0b3I9KCBjb25zdCBRTGFiZWwgJiApOwoKfTsKCgojIDcgInNsb3Rz LmgiIDIKCmNsYXNzIG15Y2xhc3MgOiBwdWJsaWMgUVdpZGdldHsKICAgcHVibGljOiBRTWV0YU9i amVjdCAqbWV0YU9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY01ldGFPYmplY3QoKTsgfSBj b25zdCBjaGFyICpjbGFzc05hbWUoKSBjb25zdDsgc3RhdGljIFFNZXRhT2JqZWN0KiBzdGF0aWNN ZXRhT2JqZWN0KCk7IHN0YXRpYyBRU3RyaW5nIHRyKGNvbnN0IGNoYXIqKTsgc3RhdGljIFFTdHJp bmcgdHIoY29uc3QgY2hhciosIGNvbnN0IGNoYXIqKTsgcHJvdGVjdGVkOiB2b2lkIGluaXRNZXRh T2JqZWN0KCk7IHByaXZhdGU6IHN0YXRpYyBRTWV0YU9iamVjdCAqbWV0YU9iajsKICAgcHVibGlj OgogICAgICBteWNsYXNzKCk7CiAgIHB1YmxpYzoKICAgdm9pZCBNeV9TbG90KCk7CiAgIHByaXZh dGU6CiAgICAgIFFQdXNoQnV0dG9uKiBiMTsKICAgICAgUVB1c2hCdXR0b24qIGIyOwogICAgICBR TGFiZWwqIGxhYmVsOwp9OwojIDIgInNsb3RzLmNwcCIgMgoKIyAxOCAic2xvdHMubW9jIiAxCiMg OCAic2xvdHMuaCIgMQpjbGFzcyBteWNsYXNzIDogcHVibGljIFFXaWRnZXR7CiAgIHB1YmxpYzog UU1ldGFPYmplY3QgKm1ldGFPYmplY3QoKSBjb25zdCB7IHJldHVybiBzdGF0aWNNZXRhT2JqZWN0 KCk7IH0gY29uc3QgY2hhciAqY2xhc3NOYW1lKCkgY29uc3Q7IHN0YXRpYyBRTWV0YU9iamVjdCog c3RhdGljTWV0YU9iamVjdCgpOyBzdGF0aWMgUVN0cmluZyB0cihjb25zdCBjaGFyKik7IHN0YXRp YyBRU3RyaW5nIHRyKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7IHByb3RlY3RlZDogdm9pZCBp bml0TWV0YU9iamVjdCgpOyBwcml2YXRlOiBzdGF0aWMgUU1ldGFPYmplY3QgKm1ldGFPYmo7CiAg IHB1YmxpYzoKICAgICAgbXljbGFzcygpOwogICBwdWJsaWM6CiAgIHZvaWQgTXlfU2xvdCgpOwog ICBwcml2YXRlOgogICAgICBRUHVzaEJ1dHRvbiogYjE7CiAgICAgIFFQdXNoQnV0dG9uKiBiMjsK ICAgICAgUUxhYmVsKiBsYWJlbDsKfTsKIyAxOCAic2xvdHMubW9jIiAyCgojIDMzICIvdXNyL2xp Yi9xdC0yLjIuMC9pbmNsdWRlL3FtZXRhb2JqZWN0LmgiIDEgMwojIDM2ICIvdXNyL2xpYi9xdC0y LjIuMC9pbmNsdWRlL3Fjb25uZWN0aW9uLmgiIDEgMwp0eXBlZGVmIHZvaWQgKFFPYmplY3Q6OipR TWVtYmVyKSgpOwoKCmNsYXNzIFFDb25uZWN0aW9uCnsKcHVibGljOgogICAgUUNvbm5lY3Rpb24o IGNvbnN0IFFPYmplY3QgKiwgUU1lbWJlciwgY29uc3QgY2hhciAqbWVtYmVyTmFtZSApOwogICB+ UUNvbm5lY3Rpb24oKSB7fQoKICAgIGJvb2wgaXNDb25uZWN0ZWQoKSBjb25zdCB7IHJldHVybiBv YmogIT0gMDsgfQoKICAgIFFPYmplY3QgKm9iamVjdCgpIGNvbnN0IHsgcmV0dXJuIG9iajsgfQog ICAgUU1lbWJlciAqbWVtYmVyKCkgY29uc3QgeyByZXR1cm4gKFFNZW1iZXIqKSZtYnI7IH0KICAg IGNvbnN0IGNoYXIgKm1lbWJlck5hbWUoKSBjb25zdCB7IHJldHVybiBtYnJfbmFtZTsgfQogICAg aW50IG51bUFyZ3MoKSBjb25zdCB7IHJldHVybiBuYXJnczsgfQoKcHJpdmF0ZToKICAgIFFPYmpl Y3QgKm9iajsKICAgIFFNZW1iZXIgbWJyOwogICAgY29uc3QgY2hhciAqbWJyX25hbWU7CiAgICBp bnQgbmFyZ3M7Cgpwcml2YXRlOgoKICAgIFFDb25uZWN0aW9uKCBjb25zdCBRQ29ubmVjdGlvbiAm ICk7CiAgICBRQ29ubmVjdGlvbiAmb3BlcmF0b3I9KCBjb25zdCBRQ29ubmVjdGlvbiAmICk7Cgp9 OwoKCiMgMzMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcW1ldGFvYmplY3QuaCIgMiAzCgoj IDM0ICIvdXNyL2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FzdHJsaXN0LmgiIDEgMwojIDMzICIvdXNy L2xpYi9xdC0yLjIuMC9pbmNsdWRlL3FsaXN0LmgiIDEgMwojIDQwICIvdXNyL2xpYi9xdC0yLjIu MC9pbmNsdWRlL3FnbGlzdC5oIiAxIDMKY2xhc3MgUUxOb2RlCnsKZnJpZW5kIGNsYXNzIFFHTGlz dDsKZnJpZW5kIGNsYXNzIFFHTGlzdEl0ZXJhdG9yOwpwdWJsaWM6CiAgICBRQ29sbGVjdGlvbjo6 SXRlbSBnZXREYXRhKCkgeyByZXR1cm4gZGF0YTsgfQpwcml2YXRlOgogICAgUUNvbGxlY3Rpb246 Okl0ZW0gZGF0YTsKICAgIFFMTm9kZSAqcHJldjsKICAgIFFMTm9kZSAqbmV4dDsKICAgIFFMTm9k ZSggUUNvbGxlY3Rpb246Okl0ZW0gZCApIHsgZGF0YSA9IGQ7IH0KfTsKCgoKCgoKY2xhc3MgUUdM aXN0IDogcHVibGljIFFDb2xsZWN0aW9uCnsKZnJpZW5kIGNsYXNzIFFHTGlzdEl0ZXJhdG9yOwpm cmllbmQgY2xhc3MgUUdWZWN0b3I7CnB1YmxpYzoKICAgIHVpbnQgY291bnQoKSBjb25zdDsKCgog ICAgUURhdGFTdHJlYW0gJnJlYWQoIFFEYXRhU3RyZWFtICYgKTsKICAgIFFEYXRhU3RyZWFtICZ3 cml0ZSggUURhdGFTdHJlYW0gJiApIGNvbnN0OwoKcHJvdGVjdGVkOgogICAgUUdMaXN0KCk7CiAg ICBRR0xpc3QoIGNvbnN0IFFHTGlzdCAmICk7CiAgICB2aXJ0dWFsIH5RR0xpc3QoKTsKCiAgICBR R0xpc3QgJm9wZXJhdG9yPSggY29uc3QgUUdMaXN0ICYgKTsKICAgIGJvb2wgb3BlcmF0b3I9PSgg Y29uc3QgUUdMaXN0JiApIGNvbnN0OwoKICAgIHZvaWQgaW5Tb3J0KCBRQ29sbGVjdGlvbjo6SXRl bSApOwogICAgdm9pZCBhcHBlbmQoIFFDb2xsZWN0aW9uOjpJdGVtICk7CiAgICBib29sIGluc2Vy dEF0KCB1aW50IGluZGV4LCBRQ29sbGVjdGlvbjo6SXRlbSApOwogICAgdm9pZCByZWxpbmtOb2Rl KCBRTE5vZGUgKiApOwogICAgYm9vbCByZW1vdmVOb2RlKCBRTE5vZGUgKiApOwogICAgYm9vbCBy ZW1vdmUoIFFDb2xsZWN0aW9uOjpJdGVtID0gMCApOwogICAgYm9vbCByZW1vdmVSZWYoIFFDb2xs ZWN0aW9uOjpJdGVtID0gMCApOwogICAgYm9vbCByZW1vdmVGaXJzdCgpOwogICAgYm9vbCByZW1v dmVMYXN0KCk7CiAgICBib29sIHJlbW92ZUF0KCB1aW50IGluZGV4ICk7CiAgICBRQ29sbGVjdGlv bjo6SXRlbSB0YWtlTm9kZSggUUxOb2RlICogKTsKICAgIFFDb2xsZWN0aW9uOjpJdGVtIHRha2Uo KTsKICAgIFFDb2xsZWN0aW9uOjpJdGVtIHRha2VBdCggdWludCBpbmRleCApOwogICAgUUNvbGxl Y3Rpb246Okl0ZW0gdGFrZUZpcnN0KCk7CiAgICBRQ29sbGVjdGlvbjo6SXRlbSB0YWtlTGFzdCgp OwoKICAgIHZvaWQgc29ydCgpOwogICAgdm9pZCBjbGVhcigpOwoKICAgIGludCBmaW5kUmVmKCBR Q29sbGVjdGlvbjo6SXRlbSwgYm9vbCA9IFRSVUUgKTsKICAgIGludCBmaW5kKCBRQ29sbGVjdGlv bjo6SXRlbSwgYm9vbCA9IFRSVUUgKTsKCiAgICB1aW50IGNvbnRhaW5zUmVmKCBRQ29sbGVjdGlv bjo6SXRlbSApIGNvbnN0OwogICAgdWludCBjb250YWlucyggUUNvbGxlY3Rpb246Okl0ZW0gKSBj b25zdDsKCiAgICBRQ29sbGVjdGlvbjo6SXRlbSBhdCggdWludCBpbmRleCApOwogICAgaW50IGF0 KCkgY29uc3Q7CiAgICBRTE5vZGUgKmN1cnJlbnROb2RlKCkgY29uc3Q7CgogICAgUUNvbGxlY3Rp b246Okl0ZW0gZ2V0KCkgY29uc3Q7CgogICAgUUNvbGxlY3Rpb246Okl0ZW0gY2ZpcnN0KCkgY29u c3Q7CiAgICBRQ29sbGVjdGlvbjo6SXRlbSBjbGFzdCgpIGNvbnN0OwogICAgUUNvbGxlY3Rpb246 Okl0ZW0gZmlyc3QoKTsKICAgIFFDb2xsZWN0aW9uOjpJdGVtIGxhc3QoKTsKICAgIFFDb2xsZWN0 aW9uOjpJdGVtIG5leHQoKTsKICAgIFFDb2xsZWN0aW9uOjpJdGVtIHByZXYoKTsKCiAgICB2b2lk IHRvVmVjdG9yKCBRR1ZlY3RvciAqICkgY29uc3Q7CgogICAgdmlydHVhbCBpbnQgY29tcGFyZUl0 ZW1zKCBRQ29sbGVjdGlvbjo6SXRlbSwgUUNvbGxlY3Rpb246Okl0ZW0gKTsKCgogICAgdmlydHVh bCBRRGF0YVN0cmVhbSAmcmVhZCggUURhdGFTdHJlYW0gJiwgUUNvbGxlY3Rpb246Okl0ZW0gJiAp OwogICAgdmlydHVhbCBRRGF0YVN0cmVhbSAmd3JpdGUoIFFEYXRhU3RyZWFtICYsIFFDb2xsZWN0 aW9uOjpJdGVtICkgY29uc3Q7Cgpwcml2YXRlOgogICAgdm9pZCBwcmVwZW5kKCBRQ29sbGVjdGlv bjo6SXRlbSApOwoKICAgIHZvaWQgaGVhcFNvcnRQdXNoRG93biggUUNvbGxlY3Rpb246Okl0ZW0q IGhlYXAsIGludCBmaXJzdCwgaW50IGxhc3QgKTsKCiAgICBRTE5vZGUgKmZpcnN0Tm9kZTsKICAg IFFMTm9kZSAqbGFzdE5vZGU7CiAgICBRTE5vZGUgKmN1ck5vZGU7CiAgICBpbnQgY3VySW5kZXg7 CiAgICB1aW50IG51bU5vZGVzOwogICAgUUdMaXN0ICppdGVyYXRvcnM7CgogICAgUUxOb2RlICps b2NhdGUoIHVpbnQgKTsKICAgIFFMTm9kZSAqdW5saW5rKCk7Cn07CgoKaW5saW5lIHVpbnQgUUdM aXN0Ojpjb3VudCgpIGNvbnN0CnsKICAgIHJldHVybiBudW1Ob2RlczsKfQoKaW5saW5lIGJvb2wg UUdMaXN0OjpyZW1vdmVGaXJzdCgpCnsKICAgIGZpcnN0KCk7CiAgICByZXR1cm4gcmVtb3ZlKCk7 Cn0KCmlubGluZSBib29sIFFHTGlzdDo6cmVtb3ZlTGFzdCgpCnsKICAgIGxhc3QoKTsKICAgIHJl dHVybiByZW1vdmUoKTsKfQoKaW5saW5lIGludCBRR0xpc3Q6OmF0KCkgY29uc3QKewogICAgcmV0 dXJuIGN1ckluZGV4Owp9CgppbmxpbmUgUUNvbGxlY3Rpb246Okl0ZW0gUUdMaXN0OjphdCggdWlu dCBpbmRleCApCnsKICAgIFFMTm9kZSAqbiA9IGxvY2F0ZSggaW5kZXggKTsKICAgIHJldHVybiBu ID8gbi0+ZGF0YSA6IDA7Cn0KCmlubGluZSBRTE5vZGUgKlFHTGlzdDo6Y3VycmVudE5vZGUoKSBj b25zdAp7CiAgICByZXR1cm4gY3VyTm9kZTsKfQoKaW5saW5lIFFDb2xsZWN0aW9uOjpJdGVtIFFH TGlzdDo6Z2V0KCkgY29uc3QKewogICAgcmV0dXJuIGN1ck5vZGUgPyBjdXJOb2RlLT5kYXRhIDog MDsKfQoKaW5saW5lIFFDb2xsZWN0aW9uOjpJdGVtIFFHTGlzdDo6Y2ZpcnN0KCkgY29uc3QKewog ICAgcmV0dXJuIGZpcnN0Tm9kZSA/IGZpcnN0Tm9kZS0+ZGF0YSA6IDA7Cn0KCmlubGluZSBRQ29s bGVjdGlvbjo6SXRlbSBRR0xpc3Q6OmNsYXN0KCkgY29uc3QKewogICAgcmV0dXJuIGxhc3ROb2Rl ID8gbGFzdE5vZGUtPmRhdGEgOiAwOwp9CgoKCgoKCgogUURhdGFTdHJlYW0gJm9wZXJhdG9yPj4o IFFEYXRhU3RyZWFtICYsIFFHTGlzdCAmICk7CiBRRGF0YVN0cmVhbSAmb3BlcmF0b3I8PCggUURh dGFTdHJlYW0gJiwgY29uc3QgUUdMaXN0ICYgKTsKCgoKCgoKY2xhc3MgUUdMaXN0SXRlcmF0b3IK ewpmcmllbmQgY2xhc3MgUUdMaXN0Owpwcm90ZWN0ZWQ6CiAgICBRR0xpc3RJdGVyYXRvciggY29u c3QgUUdMaXN0ICYgKTsKICAgIFFHTGlzdEl0ZXJhdG9yKCBjb25zdCBRR0xpc3RJdGVyYXRvciAm ICk7CiAgICBRR0xpc3RJdGVyYXRvciAmb3BlcmF0b3I9KCBjb25zdCBRR0xpc3RJdGVyYXRvciAm ICk7CiAgIH5RR0xpc3RJdGVyYXRvcigpOwoKICAgIGJvb2wgYXRGaXJzdCgpIGNvbnN0OwogICAg Ym9vbCBhdExhc3QoKSBjb25zdDsKICAgIFFDb2xsZWN0aW9uOjpJdGVtIHRvRmlyc3QoKTsKICAg IFFDb2xsZWN0aW9uOjpJdGVtIHRvTGFzdCgpOwoKICAgIFFDb2xsZWN0aW9uOjpJdGVtIGdldCgp IGNvbnN0OwogICAgUUNvbGxlY3Rpb246Okl0ZW0gb3BlcmF0b3IoKSgpOwogICAgUUNvbGxlY3Rp b246Okl0ZW0gb3BlcmF0b3IrKygpOwogICAgUUNvbGxlY3Rpb246Okl0ZW0gb3BlcmF0b3IrPSh1 aW50KTsKICAgIFFDb2xsZWN0aW9uOjpJdGVtIG9wZXJhdG9yLS0oKTsKICAgIFFDb2xsZWN0aW9u OjpJdGVtIG9wZXJhdG9yLT0odWludCk7Cgpwcm90ZWN0ZWQ6CiAgICBRR0xpc3QgKmxpc3Q7Cgpw cml2YXRlOgogICAgUUxOb2RlICpjdXJOb2RlOwp9OwoKCmlubGluZSBib29sIFFHTGlzdEl0ZXJh dG9yOjphdEZpcnN0KCkgY29uc3QKewogICAgcmV0dXJuIGN1ck5vZGUgPT0gbGlzdC0+Zmlyc3RO b2RlOwp9CgppbmxpbmUgYm9vbCBRR0xpc3RJdGVyYXRvcjo6YXRMYXN0KCkgY29uc3QKewogICAg cmV0dXJuIGN1ck5vZGUgPT0gbGlzdC0+bGFzdE5vZGU7Cn0KCmlubGluZSBRQ29sbGVjdGlvbjo6 SXRlbSBRR0xpc3RJdGVyYXRvcjo6Z2V0KCkgY29uc3QKewogICAgcmV0dXJuIGN1ck5vZGUgPyBj dXJOb2RlLT5kYXRhIDogMDsKfQoKCiMgMzMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcWxp c3QuaCIgMiAzCgoKCnRlbXBsYXRlPGNsYXNzIHR5cGU+IGNsYXNzIFFMaXN0IDogcHVibGljIFFH TGlzdAp7CnB1YmxpYzoKICAgIFFMaXN0KCkge30KICAgIFFMaXN0KCBjb25zdCBRTGlzdDx0eXBl PiAmbCApIDogUUdMaXN0KGwpIHt9CiAgIH5RTGlzdCgpIHsgY2xlYXIoKTsgfQogICAgUUxpc3Q8 dHlwZT4gJm9wZXJhdG9yPShjb25zdCBRTGlzdDx0eXBlPiAmbCkKICAgICAgICAgICAgICAgICAg ICAgICAgeyByZXR1cm4gKFFMaXN0PHR5cGU+JilRR0xpc3Q6Om9wZXJhdG9yPShsKTsgfQogICAg Ym9vbCBvcGVyYXRvcj09KCBjb25zdCBRTGlzdDx0eXBlPiAmbGlzdCApIGNvbnN0CiAgICB7IHJl dHVybiBRR0xpc3Q6Om9wZXJhdG9yPT0oIGxpc3QgKTsgfQogICAgdWludCBjb3VudCgpIGNvbnN0 IHsgcmV0dXJuIFFHTGlzdDo6Y291bnQoKTsgfQogICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyBy ZXR1cm4gUUdMaXN0Ojpjb3VudCgpID09IDA7IH0KICAgIGJvb2wgaW5zZXJ0KCB1aW50IGksIGNv bnN0IHR5cGUgKmQpeyByZXR1cm4gUUdMaXN0OjppbnNlcnRBdChpLChRQ29sbGVjdGlvbjo6SXRl bSlkKTsgfQogICAgdm9pZCBpblNvcnQoIGNvbnN0IHR5cGUgKmQgKSB7IFFHTGlzdDo6aW5Tb3J0 KChRQ29sbGVjdGlvbjo6SXRlbSlkKTsgfQogICAgdm9pZCBwcmVwZW5kKCBjb25zdCB0eXBlICpk ICkgeyBRR0xpc3Q6Omluc2VydEF0KDAsKFFDb2xsZWN0aW9uOjpJdGVtKWQpOyB9CiAgICB2b2lk IGFwcGVuZCggY29uc3QgdHlwZSAqZCApIHsgUUdMaXN0OjphcHBlbmQoKFFDb2xsZWN0aW9uOjpJ dGVtKWQpOyB9CiAgICBib29sIHJlbW92ZSggdWludCBpICkgeyByZXR1cm4gUUdMaXN0OjpyZW1v dmVBdChpKTsgfQogICAgYm9vbCByZW1vdmUoKSB7IHJldHVybiBRR0xpc3Q6OnJlbW92ZSgoUUNv bGxlY3Rpb246Okl0ZW0pMCk7IH0KICAgIGJvb2wgcmVtb3ZlKCBjb25zdCB0eXBlICpkICkgeyBy ZXR1cm4gUUdMaXN0OjpyZW1vdmUoKFFDb2xsZWN0aW9uOjpJdGVtKWQpOyB9CiAgICBib29sIHJl bW92ZVJlZiggY29uc3QgdHlwZSAqZCApIHsgcmV0dXJuIFFHTGlzdDo6cmVtb3ZlUmVmKChRQ29s bGVjdGlvbjo6SXRlbSlkKTsgfQogICAgdm9pZCByZW1vdmVOb2RlKCBRTE5vZGUgKm4gKSB7IFFH TGlzdDo6cmVtb3ZlTm9kZShuKTsgfQogICAgYm9vbCByZW1vdmVGaXJzdCgpIHsgcmV0dXJuIFFH TGlzdDo6cmVtb3ZlRmlyc3QoKTsgfQogICAgYm9vbCByZW1vdmVMYXN0KCkgeyByZXR1cm4gUUdM aXN0OjpyZW1vdmVMYXN0KCk7IH0KICAgIHR5cGUgKnRha2UoIHVpbnQgaSApIHsgcmV0dXJuICh0 eXBlICopUUdMaXN0Ojp0YWtlQXQoaSk7IH0KICAgIHR5cGUgKnRha2UoKSB7IHJldHVybiAodHlw ZSAqKVFHTGlzdDo6dGFrZSgpOyB9CiAgICB0eXBlICp0YWtlTm9kZSggUUxOb2RlICpuICkgeyBy ZXR1cm4gKHR5cGUgKilRR0xpc3Q6OnRha2VOb2RlKG4pOyB9CiAgICB2b2lkIGNsZWFyKCkgeyBR R0xpc3Q6OmNsZWFyKCk7IH0KICAgIHZvaWQgc29ydCgpIHsgUUdMaXN0Ojpzb3J0KCk7IH0KICAg IGludCBmaW5kKCBjb25zdCB0eXBlICpkICkgeyByZXR1cm4gUUdMaXN0OjpmaW5kKChRQ29sbGVj dGlvbjo6SXRlbSlkKTsgfQogICAgaW50IGZpbmROZXh0KCBjb25zdCB0eXBlICpkICkgeyByZXR1 cm4gUUdMaXN0OjpmaW5kKChRQ29sbGVjdGlvbjo6SXRlbSlkLEZBTFNFKTsgfQogICAgaW50IGZp bmRSZWYoIGNvbnN0IHR5cGUgKmQgKSB7IHJldHVybiBRR0xpc3Q6OmZpbmRSZWYoKFFDb2xsZWN0 aW9uOjpJdGVtKWQpOyB9CiAgICBpbnQgZmluZE5leHRSZWYoIGNvbnN0IHR5cGUgKmQgKXsgcmV0 dXJuIFFHTGlzdDo6ZmluZFJlZigoUUNvbGxlY3Rpb246Okl0ZW0pZCxGQUxTRSk7fQogICAgdWlu dCBjb250YWlucyggY29uc3QgdHlwZSAqZCApIGNvbnN0IHsgcmV0dXJuIFFHTGlzdDo6Y29udGFp bnMoKFFDb2xsZWN0aW9uOjpJdGVtKWQpOyB9CiAgICB1aW50IGNvbnRhaW5zUmVmKCBjb25zdCB0 eXBlICpkICkgY29uc3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsg cmV0dXJuIFFHTGlzdDo6Y29udGFpbnNSZWYoKFFDb2xsZWN0aW9uOjpJdGVtKWQpOyB9CiAgICB0 eXBlICphdCggdWludCBpICkgeyByZXR1cm4gKHR5cGUgKilRR0xpc3Q6OmF0KGkpOyB9CiAgICBp bnQgYXQoKSBjb25zdCB7IHJldHVybiBRR0xpc3Q6OmF0KCk7IH0KICAgIHR5cGUgKmN1cnJlbnQo KSBjb25zdCB7IHJldHVybiAodHlwZSAqKVFHTGlzdDo6Z2V0KCk7IH0KICAgIFFMTm9kZSAqY3Vy cmVudE5vZGUoKSBjb25zdCB7IHJldHVybiBRR0xpc3Q6OmN1cnJlbnROb2RlKCk7IH0KICAgIHR5 cGUgKmdldEZpcnN0KCkgY29uc3QgeyByZXR1cm4gKHR5cGUgKilRR0xpc3Q6OmNmaXJzdCgpOyB9 CiAgICB0eXBlICpnZXRMYXN0KCkgY29uc3QgeyByZXR1cm4gKHR5cGUgKilRR0xpc3Q6OmNsYXN0 KCk7IH0KICAgIHR5cGUgKmZpcnN0KCkgeyByZXR1cm4gKHR5cGUgKilRR0xpc3Q6OmZpcnN0KCk7 IH0KICAgIHR5cGUgKmxhc3QoKSB7IHJldHVybiAodHlwZSAqKVFHTGlzdDo6bGFzdCgpOyB9CiAg ICB0eXBlICpuZXh0KCkgeyByZXR1cm4gKHR5cGUgKilRR0xpc3Q6Om5leHQoKTsgfQogICAgdHlw ZSAqcHJldigpIHsgcmV0dXJuICh0eXBlICopUUdMaXN0OjpwcmV2KCk7IH0KICAgIHZvaWQgdG9W ZWN0b3IoIFFHVmVjdG9yICp2ZWMgKWNvbnN0eyBRR0xpc3Q6OnRvVmVjdG9yKHZlYyk7IH0KcHJp dmF0ZToKICAgIHZvaWQgZGVsZXRlSXRlbSggUUNvbGxlY3Rpb246Okl0ZW0gZCApOwp9OwoKCmlu bGluZSB2b2lkIFFMaXN0PHZvaWQ+OjpkZWxldGVJdGVtKCBRQ29sbGVjdGlvbjo6SXRlbSApCnsK fQoKCnRlbXBsYXRlPGNsYXNzIHR5cGU+IGlubGluZSB2b2lkIFFMaXN0PHR5cGU+OjpkZWxldGVJ dGVtKCBRQ29sbGVjdGlvbjo6SXRlbSBkICkKewogICAgaWYgKCBkZWxfaXRlbSApIGRlbGV0ZSAo dHlwZSAqKWQ7Cn0KCgoKdGVtcGxhdGU8Y2xhc3MgdHlwZT4gY2xhc3MgUUxpc3RJdGVyYXRvciA6 IHB1YmxpYyBRR0xpc3RJdGVyYXRvcgp7CnB1YmxpYzoKICAgIFFMaXN0SXRlcmF0b3IoY29uc3Qg UUxpc3Q8dHlwZT4gJmwpIDpRR0xpc3RJdGVyYXRvcigoUUdMaXN0ICYpbCkge30KICAgflFMaXN0 SXRlcmF0b3IoKSB7fQogICAgdWludCBjb3VudCgpIGNvbnN0IHsgcmV0dXJuIGxpc3QtPmNvdW50 KCk7IH0KICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsgcmV0dXJuIGxpc3QtPmNvdW50KCkgPT0g MDsgfQogICAgYm9vbCBhdEZpcnN0KCkgY29uc3QgeyByZXR1cm4gUUdMaXN0SXRlcmF0b3I6OmF0 Rmlyc3QoKTsgfQogICAgYm9vbCBhdExhc3QoKSBjb25zdCB7IHJldHVybiBRR0xpc3RJdGVyYXRv cjo6YXRMYXN0KCk7IH0KICAgIHR5cGUgKnRvRmlyc3QoKSB7IHJldHVybiAodHlwZSAqKVFHTGlz dEl0ZXJhdG9yOjp0b0ZpcnN0KCk7IH0KICAgIHR5cGUgKnRvTGFzdCgpIHsgcmV0dXJuICh0eXBl ICopUUdMaXN0SXRlcmF0b3I6OnRvTGFzdCgpOyB9CiAgICBvcGVyYXRvciB0eXBlICooKSBjb25z dCB7IHJldHVybiAodHlwZSAqKVFHTGlzdEl0ZXJhdG9yOjpnZXQoKTsgfQogICAgdHlwZSAqb3Bl cmF0b3IqKCkgeyByZXR1cm4gKHR5cGUgKilRR0xpc3RJdGVyYXRvcjo6Z2V0KCk7IH0KCgoKCgoK CiAgICB0eXBlICpjdXJyZW50KCkgY29uc3QgeyByZXR1cm4gKHR5cGUgKilRR0xpc3RJdGVyYXRv cjo6Z2V0KCk7IH0KICAgIHR5cGUgKm9wZXJhdG9yKCkoKSB7IHJldHVybiAodHlwZSAqKVFHTGlz dEl0ZXJhdG9yOjpvcGVyYXRvcigpKCk7fQogICAgdHlwZSAqb3BlcmF0b3IrKygpIHsgcmV0dXJu ICh0eXBlICopUUdMaXN0SXRlcmF0b3I6Om9wZXJhdG9yKysoKTsgfQogICAgdHlwZSAqb3BlcmF0 b3IrPSh1aW50IGopIHsgcmV0dXJuICh0eXBlICopUUdMaXN0SXRlcmF0b3I6Om9wZXJhdG9yKz0o aik7fQogICAgdHlwZSAqb3BlcmF0b3ItLSgpIHsgcmV0dXJuICh0eXBlICopUUdMaXN0SXRlcmF0 b3I6Om9wZXJhdG9yLS0oKTsgfQogICAgdHlwZSAqb3BlcmF0b3ItPSh1aW50IGopIHsgcmV0dXJu ICh0eXBlICopUUdMaXN0SXRlcmF0b3I6Om9wZXJhdG9yLT0oaik7fQogICAgUUxpc3RJdGVyYXRv cjx0eXBlPiYgb3BlcmF0b3I9KGNvbnN0IFFMaXN0SXRlcmF0b3I8dHlwZT4maXQpCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHsgUUdMaXN0SXRlcmF0b3I6Om9wZXJhdG9yPShpdCk7IHJl dHVybiAqdGhpczsgfQp9OwoKCiMgMzQgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXN0cmxp c3QuaCIgMiAzCiMgNDMgIi91c3IvbGliL3F0LTIuMi4wL2luY2x1ZGUvcXN0cmxpc3QuaCIgMwp0 eXBlZGVmIFFMaXN0PGNoYXI+IFFTdHJMaXN0QmFzZTsKdHlwZWRlZiBRTGlzdEl0ZXJhdG9yPGNo YXI+IFFTdHJMaXN0SXRlcmF0b3I7CgoKY2xhc3MgUVN0ckxpc3QgOiBwdWJsaWMgUVN0ckxpc3RC YXNlCnsKcHVibGljOgogICAgUVN0ckxpc3QoIGJvb2wgZGVlcENvcGllcz1UUlVFICkgeyBkYyA9 IGRlZXBDb3BpZXM7IGRlbF9pdGVtID0gZGVlcENvcGllczsgfQogICAgUVN0ckxpc3QoIGNvbnN0 IFFTdHJMaXN0ICYgKTsKICAgflFTdHJMaXN0KCkgeyBjbGVhcigpOyB9CiAgICBRU3RyTGlzdCYg b3BlcmF0b3I9KCBjb25zdCBRU3RyTGlzdCAmICk7Cgpwcml2YXRlOgogICAgUUNvbGxlY3Rpb246 Okl0ZW0gbmV3SXRlbSggUUNvbGxlY3Rpb246Okl0ZW0gZCApIHsgcmV0dXJuIGRjID8gcXN0cmR1 cCggKGNvbnN0IGNoYXIqKWQgKSA6IGQ7IH0KICAgIHZvaWQgZGVsZXRlSXRlbSggUUNvbGxlY3Rp b246Okl0ZW0gZCApIHsgaWYgKCBkZWxfaXRlbSApIGRlbGV0ZVtdIChjaGFyKilkOyB9CiAgICBp bnQgY29tcGFyZUl0ZW1zKCBRQ29sbGVjdGlvbjo6SXRlbSBzMSwgUUNvbGxlY3Rpb246Okl0ZW0g czIgKSB7IHJldHVybiBxc3RyY21wKChjb25zdCBjaGFyKilzMSwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0IGNoYXIqKXMyKTsg fQoKICAgIFFEYXRhU3RyZWFtICZyZWFkKCBRRGF0YVN0cmVhbSAmcywgUUNvbGxlY3Rpb246Okl0 ZW0gJmQgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgcyA+PiAoY2hhciAqJilk OyByZXR1cm4gczsgfQogICAgUURhdGFTdHJlYW0gJndyaXRlKCBRRGF0YVN0cmVhbSAmcywgUUNv bGxlY3Rpb246Okl0ZW0gZCApIGNvbnN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg eyByZXR1cm4gcyA8PCAoY29uc3QgY2hhciAqKWQ7IH0KCiAgICBib29sIGRjOwp9OwoKCmNsYXNz IFFTdHJJTGlzdCA6IHB1YmxpYyBRU3RyTGlzdAp7CnB1YmxpYzoKICAgIFFTdHJJTGlzdCggYm9v bCBkZWVwQ29waWVzPVRSVUUgKSA6IFFTdHJMaXN0KCBkZWVwQ29waWVzICkge30KICAgflFTdHJJ TGlzdCgpIHsgY2xlYXIoKTsgfQpwcml2YXRlOgogICAgaW50IGNvbXBhcmVJdGVtcyggUUNvbGxl Y3Rpb246Okl0ZW0gczEsIFFDb2xsZWN0aW9uOjpJdGVtIHMyICkKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB7IHJldHVybiBxc3RyaWNtcCgoY29uc3QgY2hhciopczEsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uc3QgY2hhciop czIpOyB9Cn07CgoKaW5saW5lIFFTdHJMaXN0ICYgUVN0ckxpc3Q6Om9wZXJhdG9yPSggY29uc3Qg UVN0ckxpc3QgJnN0ckxpc3QgKQp7CiAgICBjbGVhcigpOwogICAgZGMgPSBzdHJMaXN0LmRjOwog ICAgZGVsX2l0ZW0gPSBkYzsKICAgIFFTdHJMaXN0QmFzZTo6b3BlcmF0b3I9KHN0ckxpc3QpOwog ICAgcmV0dXJuICp0aGlzOwp9CgppbmxpbmUgUVN0ckxpc3Q6OlFTdHJMaXN0KCBjb25zdCBRU3Ry TGlzdCAmc3RyTGlzdCApCiAgICA6IFFTdHJMaXN0QmFzZSggc3RyTGlzdCApCnsKICAgIGRjID0g RkFMU0U7CiAgICBvcGVyYXRvcj0oc3RyTGlzdCk7Cn0KCgojIDM0ICIvdXNyL2xpYi9xdC0yLjIu MC9pbmNsdWRlL3FtZXRhb2JqZWN0LmgiIDIgMwoKCmNsYXNzIFFPYmplY3Q7CgpzdHJ1Y3QgUU1l dGFEYXRhCnsKICAgIGNvbnN0IGNoYXIgKm5hbWU7CiAgICBRTWVtYmVyIHB0cjsKICAgIGVudW0g QWNjZXNzIHsgUHJpdmF0ZSwgUHJvdGVjdGVkLCBQdWJsaWMgfTsKCgoKfTsKCgpzdHJ1Y3QgUU1l dGFFbnVtCnsKICAgIFFNZXRhRW51bSgpIHsgfQogICAgflFNZXRhRW51bSgpIHsgZGVsZXRlIFtd IGl0ZW1zOyB9CiAgICBjb25zdCBjaGFyICpuYW1lOwogICAgdWludCBjb3VudDsKICAgIHN0cnVj dCBJdGVtCiAgICB7CiAgICAgICAgY29uc3QgY2hhciAqa2V5OwogICAgICAgIGludCB2YWx1ZTsK ICAgIH07CiAgICBJdGVtICppdGVtczsKICAgIGJvb2wgc2V0Owp9OwoKCmNsYXNzIFFNZXRhUHJv cGVydHkKewpwdWJsaWM6CiAgICBRTWV0YVByb3BlcnR5KCk7CiAgICB+UU1ldGFQcm9wZXJ0eSgp OwoKICAgIGNvbnN0IGNoYXIgKnR5cGUoKSBjb25zdCB7IHJldHVybiB0OyB9CiAgICBjb25zdCBj aGFyKiBuYW1lKCkgY29uc3QgeyByZXR1cm4gbjsgfQoKICAgIGJvb2wgd3JpdGFibGUoKSBjb25z dDsKICAgIGJvb2wgd3JpdGVhYmxlKCkgY29uc3Q7CiAgICBib29sIGlzVmFsaWQoKSBjb25zdDsK CiAgICBib29sIGlzU2V0VHlwZSgpIGNvbnN0OwogICAgYm9vbCBpc0VudW1UeXBlKCkgY29uc3Q7 CiAgICBRU3RyTGlzdCBlbnVtS2V5cygpIGNvbnN0OwoKICAgIGludCBrZXlUb1ZhbHVlKCBjb25z dCBjaGFyKiBrZXkgKSBjb25zdDsKICAgIGNvbnN0IGNoYXIqIHZhbHVlVG9LZXkoIGludCB2YWx1 ZSApIGNvbnN0OwogICAgaW50IGtleXNUb1ZhbHVlKCBjb25zdCBRU3RyTGlzdCYga2V5cyApIGNv bnN0OwogICAgUVN0ckxpc3QgdmFsdWVUb0tleXMoIGludCB2YWx1ZSApIGNvbnN0OwoKICAgIGJv b2wgc3RvcmVkKCBRT2JqZWN0KiApIGNvbnN0OwogICAgYm9vbCBkZXNpZ25hYmxlKCkgY29uc3Q7 CgogICAgY29uc3QgY2hhciogdDsKICAgIGNvbnN0IGNoYXIqIG47CiAgICBRTWVtYmVyIGdldDsK ICAgIFFNZW1iZXIgc2V0OwogICAgUU1lbWJlciBzdG9yZTsKICAgIFFNZW1iZXIgcmVzZXQ7CiAg ICBRTWV0YUVudW0gKmVudW1EYXRhOwoKICAgIGVudW0gU3BlY2lmaWNhdGlvbiB7IFVuc3BlY2lm aWVkLCBDbGFzcywgUmVmZXJlbmNlLCBQb2ludGVyLCBDb25zdENoYXJTdGFyIH07CiAgICBTcGVj aWZpY2F0aW9uIGdzcGVjOwogICAgU3BlY2lmaWNhdGlvbiBzc3BlYzsKCiAgICBlbnVtIEZsYWdz IHsKICAgICAgICBVbnJlc29sdmVkRW51bSA9IDB4MDAwMDAwMDEsCiAgICAgICAgVW5yZXNvbHZl ZFNldCA9IDB4MDAwMDAwMDIsCiAgICAgICAgVW5yZXNvbHZlZEVudW1PclNldCA9IDB4MDAwMDAw MDQsCiAgICAgICAgVW5yZXNvbHZlZFN0b3JlZCA9IDB4MDAwMDAwMDgsCiAgICAgICAgVW5yZXNv bHZlZERlc2lnbmFibGUgPSAweDAwMDAwMDEwLAogICAgICAgIE5vdERlc2lnbmFibGUgPSAweDAw MDAwMDIwLAogICAgICAgIE5vdFN0b3JlZCA9IDB4MDAwMDAwNDAsCiAgICAgICAgU3RkU2V0ID0g MHgwMDAwMDA4MAogICAgfTsKCiAgICBib29sIHRlc3RGbGFncyggdWludCBmICkgY29uc3Q7CiAg ICB2b2lkIHNldEZsYWdzKCB1aW50IGYgKTsKICAgIHZvaWQgY2xlYXJGbGFncyggdWludCBmICk7 Cgpwcml2YXRlOgogICAgdWludCBmbGFnczsKfTsKCgpzdHJ1Y3QgUUNsYXNzSW5mbwp7CiAgICBj b25zdCBjaGFyKiBuYW1lOwogICAgY29uc3QgY2hhciogdmFsdWU7Cn07CgpjbGFzcyBRTWV0YU9i amVjdFByaXZhdGU7CgpjbGFzcyBRTWV0YU9iamVjdAp7CnB1YmxpYzoKICAgIFFNZXRhT2JqZWN0 KCBjb25zdCBjaGFyICpjbGFzc19uYW1lLCBjb25zdCBjaGFyICpzdXBlcmNsYXNzX25hbWUsCiAg ICAgICAgICAgICAgICAgUU1ldGFEYXRhICpzbG90X2RhdGEsIGludCBuX3Nsb3RzLAogICAgICAg ICAgICAgICAgIFFNZXRhRGF0YSAqc2lnbmFsX2RhdGEsIGludCBuX3NpZ25hbHMgKTsKICAgIFFN ZXRhT2JqZWN0KCBjb25zdCBjaGFyICpjbGFzc19uYW1lLCBjb25zdCBjaGFyICpzdXBlcmNsYXNz X25hbWUsCiAgICAgICAgICAgICAgICAgUU1ldGFEYXRhICpzbG90X2RhdGEsIGludCBuX3Nsb3Rz LAogICAgICAgICAgICAgICAgIFFNZXRhRGF0YSAqc2lnbmFsX2RhdGEsIGludCBuX3NpZ25hbHMs CgogICAgICAgICAgICAgICAgIFFNZXRhUHJvcGVydHkgKnByb3BfZGF0YSwgaW50IG5fcHJvcHMs CiAgICAgICAgICAgICAgICAgUU1ldGFFbnVtICplbnVtX2RhdGEsIGludCBuX2VudW1zLAoKICAg ICAgICAgICAgICAgICBRQ2xhc3NJbmZvICpjbGFzc19pbmZvLCBpbnQgbl9pbmZvICk7CgoKICAg IHZpcnR1YWwgflFNZXRhT2JqZWN0KCk7CgogICAgY29uc3QgY2hhciAqY2xhc3NOYW1lKCkgY29u c3QgeyByZXR1cm4gY2xhc3NuYW1lOyB9CiAgICBjb25zdCBjaGFyICpzdXBlckNsYXNzTmFtZSgp IGNvbnN0IHsgcmV0dXJuIHN1cGVyY2xhc3NuYW1lOyB9CgogICAgUU1ldGFPYmplY3QgKnN1cGVy Q2xhc3MoKSBjb25zdCB7IHJldHVybiBzdXBlcmNsYXNzOyB9CgogICAgYm9vbCBpbmhlcml0cygg Y29uc3QgY2hhciogY2xuYW1lICkgY29uc3Q7CgogICAgaW50IG51bVNsb3RzKCBib29sIHN1cGVy ID0gRkFMU0UgKSBjb25zdDsKICAgIGludCBudW1TaWduYWxzKCBib29sIHN1cGVyID0gRkFMU0Ug KSBjb25zdDsKCiAgICBRTWV0YURhdGEgKnNsb3QoIGludCBpbmRleCwgYm9vbCBzdXBlciA9IEZB TFNFICkgY29uc3Q7CiAgICBRTWV0YURhdGEgKnNpZ25hbCggaW50IGluZGV4LCBib29sIHN1cGVy ID0gRkFMU0UgKSBjb25zdDsKCiAgICBRTWV0YURhdGEgKnNsb3QoIGNvbnN0IGNoYXIgKiwgYm9v bCBzdXBlciA9IEZBTFNFICkgY29uc3Q7CiAgICBRTWV0YURhdGEgKnNpZ25hbCggY29uc3QgY2hh ciAqLCBib29sIHN1cGVyID0gRkFMU0UgKSBjb25zdDsKCiAgICBRU3RyTGlzdCBzbG90TmFtZXMo IGJvb2wgc3VwZXIgPSBGQUxTRSApIGNvbnN0OwogICAgUVN0ckxpc3Qgc2lnbmFsTmFtZXMoIGJv b2wgc3VwZXIgPSBGQUxTRSApIGNvbnN0OwoKICAgIGludCBudW1DbGFzc0luZm8oIGJvb2wgc3Vw ZXIgPSBGQUxTRSApIGNvbnN0OwogICAgUUNsYXNzSW5mbyAqY2xhc3NJbmZvKCBpbnQgaW5kZXgs IGJvb2wgc3VwZXIgPSBGQUxTRSApIGNvbnN0OwogICAgY29uc3QgY2hhciAqY2xhc3NJbmZvKCBj b25zdCBjaGFyKiBuYW1lLCBib29sIHN1cGVyID0gRkFMU0UgKSBjb25zdDsKCgogICAgY29uc3Qg UU1ldGFQcm9wZXJ0eSAqcHJvcGVydHkoIGNvbnN0IGNoYXIqIG5hbWUsIGJvb2wgc3VwZXIgPSBG QUxTRSApIGNvbnN0OwogICAgUVN0ckxpc3QgcHJvcGVydHlOYW1lcyggYm9vbCBzdXBlciA9IEZB TFNFICkgY29uc3Q7CiAgICB2b2lkIHJlc29sdmVQcm9wZXJ0eSggUU1ldGFQcm9wZXJ0eSogcHJv cCApOwoKCgoKCiAgICBzdGF0aWMgUU1ldGFPYmplY3QgKm5ld19tZXRhb2JqZWN0KCBjb25zdCBj aGFyICosIGNvbnN0IGNoYXIgKiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFFNZXRhRGF0YSAqLCBpbnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBRTWV0YURhdGEgKiwgaW50LAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFFNZXRhUHJvcGVydHkgKnByb3BfZGF0YSwgaW50IG5fcHJvcHMsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRTWV0YUVudW0gKmVudW1fZGF0YSwgaW50IG5f ZW51bXMsCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUUNsYXNzSW5m byAqIGNsYXNzX2luZm8sIGludCBuX2luZm8gKTsKICAgIHN0YXRpYyBRTWV0YU9iamVjdCAqbmV3 X21ldGFvYmplY3QoIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUU1ldGFEYXRhICosIGludCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFFNZXRhRGF0YSAqLCBpbnQgKTsKICAgIHN0YXRpYyBR TWV0YURhdGEgKm5ld19tZXRhZGF0YSggaW50ICk7CiAgICBzdGF0aWMgUU1ldGFEYXRhOjpBY2Nl c3MgKm5ld19tZXRhYWNjZXNzKCBpbnQgKTsKICAgIHZvaWQgc2V0X3Nsb3RfYWNjZXNzKCBRTWV0 YURhdGE6OkFjY2VzcyogKTsKICAgIFFNZXRhRGF0YTo6QWNjZXNzIHNsb3RfYWNjZXNzKGludCBp bmRleCwgYm9vbCBzdXBlciA9IEZBTFNFICk7CiAgICBzdGF0aWMgUU1ldGFFbnVtICpuZXdfbWV0 YWVudW0oIGludCApOwogICAgc3RhdGljIFFNZXRhRW51bTo6SXRlbSAqbmV3X21ldGFlbnVtX2l0 ZW0oIGludCApOwoKICAgIHN0YXRpYyBRTWV0YVByb3BlcnR5ICpuZXdfbWV0YXByb3BlcnR5KCBp bnQgKTsKCiAgICBzdGF0aWMgUUNsYXNzSW5mbyAqbmV3X2NsYXNzaW5mbyggaW50ICk7Cgpwcml2 YXRlOgogICAgUU1lbWJlckRpY3QgKmluaXQoIFFNZXRhRGF0YSAqLCBpbnQgKTsKICAgIFFNZXRh RGF0YSAqbWRhdGEoIGludCBjb2RlLCBjb25zdCBjaGFyICosIGJvb2wgKSBjb25zdDsKICAgIFFN ZXRhRGF0YSAqbWRhdGEoIGludCBjb2RlLCBpbnQgaW5kZXgsIGJvb2wgc3VwZXIgKSBjb25zdDsK CiAgICBjb25zdCBjaGFyICpjbGFzc25hbWU7CiAgICBjb25zdCBjaGFyICpzdXBlcmNsYXNzbmFt ZTsKICAgIFFNZXRhT2JqZWN0ICpzdXBlcmNsYXNzOwogICAgUU1ldGFPYmplY3RQcml2YXRlICpk OwogICAgdm9pZCAqcmVzZXJ2ZWQ7CiAgICBRTWV0YURhdGEgKnNsb3REYXRhOwogICAgUU1lbWJl ckRpY3QgKnNsb3REaWN0OwogICAgUU1ldGFEYXRhICpzaWduYWxEYXRhOwogICAgUU1lbWJlckRp Y3QgKnNpZ25hbERpY3Q7CiAgICBRTWV0YUVudW0gKmVudW1lcmF0b3IoIGNvbnN0IGNoYXIqIG5h bWUsIGJvb2wgc3VwZXIgPSBGQUxTRSApIGNvbnN0OwoKcHJpdmF0ZToKCiAgICBRTWV0YU9iamVj dCggY29uc3QgUU1ldGFPYmplY3QgJiApOwogICAgUU1ldGFPYmplY3QgJm9wZXJhdG9yPSggY29u c3QgUU1ldGFPYmplY3QgJiApOwoKfTsKCgppbmxpbmUgYm9vbCBRTWV0YVByb3BlcnR5Ojp3cml0 YWJsZSgpIGNvbnN0CnsgcmV0dXJuIHNldCAhPSAwOyB9CmlubGluZSBib29sIFFNZXRhUHJvcGVy dHk6OndyaXRlYWJsZSgpIGNvbnN0CnsgcmV0dXJuIHNldCAhPSAwOyB9CmlubGluZSBib29sIFFN ZXRhUHJvcGVydHk6OnRlc3RGbGFncyggdWludCBmICkgY29uc3QKeyByZXR1cm4gKGZsYWdzICYg KHVpbnQpZikgIT0gKHVpbnQpMDsgfQppbmxpbmUgYm9vbCBRTWV0YVByb3BlcnR5Ojppc1ZhbGlk KCkgY29uc3QKeyByZXR1cm4gZ2V0ICE9IDAgJiYgIXRlc3RGbGFncyggVW5yZXNvbHZlZEVudW0g fCBVbnJlc29sdmVkRGVzaWduYWJsZSB8IFVucmVzb2x2ZWRTdG9yZWQgKSA7IH0KaW5saW5lIGJv b2wgUU1ldGFQcm9wZXJ0eTo6aXNTZXRUeXBlKCkgY29uc3QKeyByZXR1cm4gKCBlbnVtRGF0YSAh PSAwICYmIGVudW1EYXRhLT5zZXQgKTsgfQppbmxpbmUgYm9vbCBRTWV0YVByb3BlcnR5Ojppc0Vu dW1UeXBlKCkgY29uc3QKeyByZXR1cm4gKCBlbnVtRGF0YSAhPSAwICk7IH0KaW5saW5lIGJvb2wg UU1ldGFQcm9wZXJ0eTo6ZGVzaWduYWJsZSgpIGNvbnN0CnsgcmV0dXJuICggaXNWYWxpZCgpICYm IHNldCAhPSAwICYmICF0ZXN0RmxhZ3MoIE5vdERlc2lnbmFibGUgfCBVbnJlc29sdmVkRGVzaWdu YWJsZSApICk7IH0KaW5saW5lIHZvaWQgUU1ldGFQcm9wZXJ0eTo6c2V0RmxhZ3MoIHVpbnQgZiAp CnsgZmxhZ3MgfD0gKHVpbnQpZjsgfQppbmxpbmUgdm9pZCBRTWV0YVByb3BlcnR5OjpjbGVhckZs YWdzKCB1aW50IGYgKQp7IGZsYWdzICY9IH4odWludClmOyB9CgoKCmNsYXNzIFFNZXRhT2JqZWN0 SW5pdCB7CnB1YmxpYzoKICAgIFFNZXRhT2JqZWN0SW5pdCh2b2lkKCopKCkpOwogICAgc3RhdGlj IGludCBpbml0KCk7Cn07CgojIDE5ICJzbG90cy5tb2MiIDIKIyAyOCAic2xvdHMubW9jIgpjb25z dCBjaGFyICpteWNsYXNzOjpjbGFzc05hbWUoKSBjb25zdAp7CiAgICByZXR1cm4gIm15Y2xhc3Mi Owp9CgpRTWV0YU9iamVjdCAqbXljbGFzczo6bWV0YU9iaiA9IDA7Cgp2b2lkIG15Y2xhc3M6Omlu aXRNZXRhT2JqZWN0KCkKewogICAgaWYgKCBtZXRhT2JqICkKICAgICAgICByZXR1cm47CiAgICBp ZiAoIHFzdHJjbXAoUVdpZGdldDo6Y2xhc3NOYW1lKCksICJRV2lkZ2V0IikgIT0gMCApCiAgICAg ICAgYmFkU3VwZXJjbGFzc1dhcm5pbmcoIm15Y2xhc3MiLCJRV2lkZ2V0Iik7CiAgICAodm9pZCkg c3RhdGljTWV0YU9iamVjdCgpOwp9CgoKClFTdHJpbmcgbXljbGFzczo6dHIoY29uc3QgY2hhciog cykKewogICAgcmV0dXJuIHFBcHAtPnRyYW5zbGF0ZSggIm15Y2xhc3MiLCBzLCAwICk7Cn0KClFT dHJpbmcgbXljbGFzczo6dHIoY29uc3QgY2hhciogcywgY29uc3QgY2hhciAqIGMpCnsKICAgIHJl dHVybiBxQXBwLT50cmFuc2xhdGUoICJteWNsYXNzIiwgcywgYyApOwp9CgoKClFNZXRhT2JqZWN0 KiBteWNsYXNzOjpzdGF0aWNNZXRhT2JqZWN0KCkKewogICAgaWYgKCBtZXRhT2JqICkKICAgICAg ICByZXR1cm4gbWV0YU9iajsKICAgICh2b2lkKSBRV2lkZ2V0OjpzdGF0aWNNZXRhT2JqZWN0KCk7 CgoKICAgIHR5cGVkZWYgdm9pZChteWNsYXNzOjoqbTFfdDApKCk7CiAgICBtMV90MCB2MV8wID0g JiBteWNsYXNzOjpNeV9TbG90OwogICAgUU1ldGFEYXRhICpzbG90X3RibCA9IFFNZXRhT2JqZWN0 OjpuZXdfbWV0YWRhdGEoMSk7CiAgICBRTWV0YURhdGE6OkFjY2VzcyAqc2xvdF90YmxfYWNjZXNz ID0gUU1ldGFPYmplY3Q6Om5ld19tZXRhYWNjZXNzKDEpOwogICAgc2xvdF90YmxbMF0ubmFtZSA9 ICJNeV9TbG90KCkiOwogICAgc2xvdF90YmxbMF0ucHRyID0gKFFNZW1iZXIpdjFfMDsKICAgIHNs b3RfdGJsX2FjY2Vzc1swXSA9IFFNZXRhRGF0YTo6UHVibGljOwogICAgbWV0YU9iaiA9IFFNZXRh T2JqZWN0OjpuZXdfbWV0YW9iamVjdCgKICAgICAgICAibXljbGFzcyIsICJRV2lkZ2V0IiwKICAg ICAgICBzbG90X3RibCwgMSwKICAgICAgICAwLCAwLAoKICAgICAgICAwLCAwLAogICAgICAgIDAs IDAsCgogICAgICAgIDAsIDAgKTsKICAgIG1ldGFPYmotPnNldF9zbG90X2FjY2Vzcyggc2xvdF90 YmxfYWNjZXNzICk7CgoKICAgIHJldHVybiBtZXRhT2JqOwp9CiMgMyAic2xvdHMuY3BwIiAyCgoK dm9pZCBteWNsYXNzOjpNeV9TbG90KCl7CiAgIGV4aXQoMCk7Cn0KCm15Y2xhc3M6Om15Y2xhc3Mo KXsKICAgc2V0R2VvbWV0cnkoMTAwLDEwMCwyMDAsMTcwKTsKICAgYjE9bmV3IFFQdXNoQnV0dG9u KCJIZWxsbyIsdGhpcyk7CiAgIGIxLT5zZXRHZW9tZXRyeSgyMCwyMCw4MCw4MCk7CiAgIGIyPW5l dyBRUHVzaEJ1dHRvbigiR29vZCBieWUiLHRoaXMpOwogICBiMi0+c2V0R2VvbWV0cnkoMTAwLDIw LDgwLDgwKTsKICAgbGFiZWwgPSBuZXcgUUxhYmVsKHRoaXMpOwogICBsYWJlbC0+c2V0R2VvbWV0 cnkoMjAsMTAwLDE2MCw1MCk7CiAgIGxhYmVsLT5zZXRUZXh0KCJUaGlzIG15IGxhYmVsXG4gaXQg aGFzIDIgbGluZXMiKTsKCiAgIGxhYmVsLT5zZXRBbGlnbm1lbnQoQWxpZ25DZW50ZXIpOwogICBj b25uZWN0IChiMiwgIjIiImNsaWNrZWQoKSIscUFwcCwiMSIicXVpdCgpIik7Cgp9CgppbnQgbWFp biggaW50IGFyZ2MsIGNoYXIqKiBhcmd2KXsKICAgUUFwcGxpY2F0aW9uIGEoYXJnYywgYXJndik7 CiAgIG15Y2xhc3MgdzsKICAgYS5zZXRNYWluV2lkZ2V0KCZ3KTsKICAgdy5zaG93KCk7CiAgIHJl dHVybiBhLmV4ZWMoKTsKfQo= >>From magnus@gol.com Wed Dec 27 19:36:00 2000 From: magnus@gol.com To: gcc-gnats@gcc.gnu.org Subject: c++/1520: cout prints in the wrong order. Date: Wed, 27 Dec 2000 19:36:00 -0000 Message-id: <20001228032615.4345.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01342.html Content-length: 2421 >Number: 1520 >Category: c++ >Synopsis: cout prints in the wrong order. >Confidential: no >Severity: non-critical >Priority: low >Responsible: unassigned >State: open >Class: wrong-code >Submitter-Id: net >Arrival-Date: Wed Dec 27 19:36:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Magnus Back >Release: 2.96 >Organization: >Environment: Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux/2.96/specs gcc version 2.96 20000731 (Linux-Mandrake 7.2) >Description: The printout order is different between optimized and unoptimized code. The optimized code seems correct. (My code is "wrong") [root@back 21dayscpp]# g++ -Wall hello.cxx -ohello2 [root@back 21dayscpp]# ./hello2 Hello World! 12 : 35Test Enter value 1 6 Enter value 2 7 second: 6 first: 6 [root@back 21dayscpp]# g++ -Wall -O hello.cxx -ohello2 [root@back 21dayscpp]# ./hello2 Hello World! 12 : 35Test Enter value 1 6 Enter value 2 7 first: second: 6 6 >How-To-Repeat: This produces incorrect code: g++ -Wall hello.cxx -ohello This produces correct code: g++ -Wall -O hello.cxx -ohello >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: text/plain; name="fault.txt" Content-Disposition: inline; filename="fault.txt" ------------------------ test.h ------------------------------------ #include typedef unsigned short int USHORT; typedef unsigned long int ULONG; inline unsigned short int examine(USHORT first = 1, int second = 2); float examine(ULONG first = 1, int second = 2); unsigned short int examine(USHORT first, int second) { if (first < second) second = first; else first = second; cout << "second: "<< second << "\n"; return first; } float examine(ULONG first, int second) { if (static_cast(first) < second) second = first; else first = second; cout << "second: "<< second << "\n"; return first; } ------------------------ hello.cxx ------------------------------------ #include #include "test.h" int main() { USHORT inOne; int inTwo; cout << "Hello World!\n"; int x = 5; int y = 7; cout << "\n"; cout << x+y << " : " << x*y << "Test"; cout << "\n"; cout << "Enter value 1\n"; cin >> inOne; cout << "Enter value 2\n"; cin >> inTwo; cout << "first: " << examine(inOne,inTwo) << "\n"; return 0; } >>From bryce@gcc.gnu.org Wed Dec 27 20:36:00 2000 From: bryce@gcc.gnu.org To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: libgcj/1516 Date: Wed, 27 Dec 2000 20:36:00 -0000 Message-id: <20001228043600.484.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01343.html Content-length: 981 The following reply was made to PR libgcj/1516; it has been noted by GNATS. From: bryce@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: libgcj/1516 Date: 28 Dec 2000 04:34:34 -0000 CVSROOT: /cvs/gcc Module name: egcs Changes by: bryce@gcc.gnu.org 2000-12-27 20:34:34 Modified files: libjava : ChangeLog libjava/java/lang/reflect: natMethod.cc Log message: Fix for PR libgcj/1516: * java/lang/reflect/natMethod.cc (primitives): Remove void entry. Add boolean entry. (can_widen): Declared inline. Remove redundant checks for void arguments and char->short conversion. Add special case for boolean conversions. (ffi_type): Declared inline. (_Jv_CallAnyMethodA): Move unwrapping logic inside isPrimitive() block. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/ChangeLog.diff?cvsroot=gcc&r1=1.621&r2=1.622 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/java/lang/reflect/natMethod.cc.diff?cvsroot=gcc&r1=1.18&r2=1.19 >>From bryce@albatross.co.nz Wed Dec 27 20:46:00 2000 From: Bryce McKinlay To: bryce@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: libgcj/1516: Method.invoke won't accept boolean parameters Date: Wed, 27 Dec 2000 20:46:00 -0000 Message-id: <20001228044600.2643.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01344.html Content-length: 1352 The following reply was made to PR libgcj/1516; it has been noted by GNATS. From: Bryce McKinlay To: jeff.sturm@commerceone.com Cc: gcc-gnats@gcc.gnu.org Subject: Re: libgcj/1516: Method.invoke won't accept boolean parameters Date: Thu, 28 Dec 2000 17:43:10 +1300 jeff.sturm@commerceone.com wrote: > >Description: > Method.invoke throws java.lang.IllegalArgumentException for > methods with boolean (primitive) types in their signatures. > >How-To-Repeat: > Run the attached test case. It should print `true' and > `false', not throw an exception. > >Fix: > Add boolean rules to can_widen. Alternatively, rewrite > can_widen to use an array of bitmaps or similar, since the > existing rules are not too pretty or efficient. I've checked in a fix for this: http://sources.redhat.com/ml/java-patches/2000-q4/msg00284.html Another option for efficiency improvement here might be to combine the ffi_type lookup with the primitives conversion table. However, right now I'd say that micro-optimizing the _Jv_CallAnyMethod stuff is a misdirected effort, I'll bet that by far the slowest part of invoke() is the _Jv_LookupDeclaredMethod() call, which must be done to check for overriding. Per's plan for speeding up _Jv_LookupDeclaredMethod involves global String interning. regards [ bryce ] >>From bryce@gcc.gnu.org Wed Dec 27 20:46:00 2000 From: bryce@gcc.gnu.org To: bryce@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: libgcj/1516 Date: Wed, 27 Dec 2000 20:46:00 -0000 Message-id: <20001228044601.2649.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01345.html Content-length: 706 The following reply was made to PR libgcj/1516; it has been noted by GNATS. From: bryce@gcc.gnu.org To: bryce@gcc.gnu.org, gcc-gnats@gcc.gnu.org, jeff.sturm@commerceone.com, nobody@gcc.gnu.org Cc: Subject: Re: libgcj/1516 Date: 28 Dec 2000 04:42:18 -0000 Synopsis: Method.invoke won't accept boolean parameters Responsible-Changed-From-To: unassigned->bryce Responsible-Changed-By: bryce Responsible-Changed-When: Wed Dec 27 20:42:18 2000 Responsible-Changed-Why: . State-Changed-From-To: open->closed State-Changed-By: bryce State-Changed-When: Wed Dec 27 20:42:18 2000 State-Changed-Why: Fix checked in. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1516&database=gcc >>From lucier@math.purdue.edu Wed Dec 27 21:06:00 2000 From: lucier@math.purdue.edu To: gcc-gnats@gcc.gnu.org Subject: optimization/1521: Misleading documentation Date: Wed, 27 Dec 2000 21:06:00 -0000 Message-id: <20001228050436.6481.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01346.html Content-length: 1734 >Number: 1521 >Category: optimization >Synopsis: Misleading documentation >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: doc-bug >Submitter-Id: net >Arrival-Date: Wed Dec 27 21:06:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Brad Lucier >Release: development >Organization: >Environment: all >Description: In toplev.c you find {"schedule-insns", &flag_schedule_insns, 1, "Reschedule instructions to avoid pipeline stalls"}, {"schedule-insns2", &flag_schedule_insns_after_reload, 1, "Run two passes of the instruction scheduler"}, which I took to mean that if I set -fschedule-insns2 then two passes of the instruction scheduler would be run, but this is not the case, only the second pass is run. Perhaps this is clearer from the info page: `-fschedule-insns' If supported for the target machine, attempt to reorder instructions to eliminate execution stalls due to required data being unavailable. This helps machines that have slow floating point or memory load instructions by allowing other instructions to be issued until the result of the load or floating point instruction is required. `-fschedule-insns2' Similar to `-fschedule-insns', but requests an additional pass of instruction scheduling after register allocation has been done. This is especially useful on machines with a relatively small number of registers and where memory load instructions take more than one cycle. but I think it should be fixed in the short documentation in toplev.c Brad >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: >>From warrenl@gcc.gnu.org Wed Dec 27 21:56:00 2000 From: warrenl@gcc.gnu.org To: warrenl@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: libgcj/1358 Date: Wed, 27 Dec 2000 21:56:00 -0000 Message-id: <20001228055601.16032.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01347.html Content-length: 1816 The following reply was made to PR libgcj/1358; it has been noted by GNATS. From: warrenl@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: libgcj/1358 Date: 28 Dec 2000 05:55:57 -0000 CVSROOT: /cvs/gcc Module name: egcs Changes by: warrenl@gcc.gnu.org 2000-12-27 21:55:57 Modified files: libjava : ChangeLog libjava/java/lang: System.java libjava/java/util: Calendar.java GregorianCalendar.java TimeZone.java natGregorianCalendar.cc Log message: Fix for PR libgcj/1358: * java/lang/System.java: Update Copyright date properly. * java/util/Calendar.java: Fix typo in comment. (set): Set 24-hour clock hour instead of 12-hour clock hour. * java/util/GregorianCalendar.java (GregorianCalendar): Properly initialize times. Spec says to set H:M:S values to zero only if a date is given. * java/util/TimeZone.java (getDefaultDisplayName): Casts to char needed for evaluating numbers '0' to '9' in printouts of GMT offsets. * java/util/natGregorianCalendar.cc (computeTime): Properly handle timezones and GMT offsets, being careful to account for units of milliseconds vs. seconds. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/ChangeLog.diff?cvsroot=gcc&r1=1.622&r2=1.623 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/java/lang/System.java.diff?cvsroot=gcc&r1=1.5&r2=1.6 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/java/util/Calendar.java.diff?cvsroot=gcc&r1=1.7&r2=1.8 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/java/util/GregorianCalendar.java.diff?cvsroot=gcc&r1=1.7&r2=1.8 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/java/util/TimeZone.java.diff?cvsroot=gcc&r1=1.8&r2=1.9 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/libjava/java/util/natGregorianCalendar.cc.diff?cvsroot=gcc&r1=1.7&r2=1.8 >>From warrenl@gcc.gnu.org Wed Dec 27 22:06:00 2000 From: warrenl@gcc.gnu.org To: warrenl@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: libgcj/1358 Date: Wed, 27 Dec 2000 22:06:00 -0000 Message-id: <20001228060601.17531.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01348.html Content-length: 667 The following reply was made to PR libgcj/1358; it has been noted by GNATS. From: warrenl@gcc.gnu.org To: apbianco@cygnus.com, gcc-gnats@gcc.gnu.org, pascal.forget@videotron.ca, warrenl@gcc.gnu.org Cc: Subject: Re: libgcj/1358 Date: 28 Dec 2000 05:59:33 -0000 Old Synopsis: java.util.Data.toString() doesn't seem to behave properly. New Synopsis: java.util.Date.toString() doesn't seem to behave properly. State-Changed-From-To: analyzed->closed State-Changed-By: warrenl State-Changed-When: Wed Dec 27 21:59:33 2000 State-Changed-Why: Patch checked into libjava 27-Dec-2000. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1358&database=gcc >>From warrenl@gcc.gnu.org Thu Dec 28 00:06:00 2000 From: warrenl@gcc.gnu.org To: warrenl@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: libgcj/1411 Date: Thu, 28 Dec 2000 00:06:00 -0000 Message-id: <20001228080600.4430.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01349.html Content-length: 534 The following reply was made to PR libgcj/1411; it has been noted by GNATS. From: warrenl@gcc.gnu.org To: bryce@albatross.co.nz, gcc-gnats@gcc.gnu.org, warrenl@gcc.gnu.org Cc: Subject: Re: libgcj/1411 Date: 28 Dec 2000 08:02:01 -0000 Synopsis: natTimeZone.cc should be removed State-Changed-From-To: open->feedback State-Changed-By: warrenl State-Changed-When: Thu Dec 28 00:02:01 2000 State-Changed-Why: Sent out patch to Net for review. http://sources.redhat.com/cgi-bin/gnatsweb.pl?cmd=view&pr=1411&database=gcc >>From korimort@opt.math.tu-graz.ac.at Thu Dec 28 02:36:00 2000 From: korimort@opt.math.tu-graz.ac.at To: gcc-gnats@gcc.gnu.org Subject: c++/1522: template inheritage Date: Thu, 28 Dec 2000 02:36:00 -0000 Message-id: <20001228103146.29200.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01350.html Content-length: 820 >Number: 1522 >Category: c++ >Synopsis: template inheritage >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: rejects-legal >Submitter-Id: net >Arrival-Date: Thu Dec 28 02:36:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Thomas Korimort >Release: 2.95.2 >Organization: >Environment: Debian 2.2 (Potato) >Description: One can construct template objects of kind "template dummy:basedummy", but if one tries to cast a dummy pointer to a basedummy pointer ("whatever" an instantiation of the template), the compiler does not recognize basedummy to be a base class of dummy. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: >>From afranck@gmx.de Thu Dec 28 04:16:00 2000 From: Andreas Franck To: gcc-gnats@gcc.gnu.org Subject: c/1523: GCC 2.97 miscompiles with -fomit-frame-pointer Date: Thu, 28 Dec 2000 04:16:00 -0000 Message-id: X-SW-Source: 2000-q4/msg01351.html Content-length: 2967 >Number: 1523 >Category: c >Synopsis: GCC 2.97 miscompiles with -fomit-frame-pointer >Confidential: no >Severity: serious >Priority: high >Responsible: unassigned >State: open >Class: wrong-code >Submitter-Id: net >Arrival-Date: Thu Dec 28 04:16:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Andreas Franck >Release: 2.97 20001222 (experimental) >Organization: private >Environment: System: Linux dg1kfa.ampr.org 2.4.0-test13-pre4 #3 Sat Dec 23 12:59:32 CET 2000 i686 unknown Architecture: i686 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i686-pc-linux-gnu configured with: ../gcc/configure --prefix=/usr --enable-shared --enable-threads >Description: When compiling the following code with -O2 -fomit-frame-pointer, GCC miscompiles the main function: the local stack space is cleared before func2 is called, thus overwriting the local tmp structure with its address and the return address. Compiling without -fomit-frame-pointer leaves everything fine and working. This only happens in this certain assembler situation, which I reproduced from a very similar structure in linux-2.4.0-test12, which therefore fails on booting when compiled with recent GCC snapshots. GCC 2.95.2 compiles this fine, regardless of -fomit-frame-pointer. I think it is unwise to assume a structure is no longer needed when a pointer to it is passed to an assembler routine not explicitly mentioning one of its members, so this should be fixed. >How-To-Repeat: Compile and run the following code with and without -fomit-frame-pointer on any Intel x86 platform: struct mystruct { int member1; int member2; }; void func1(struct mystruct* s) { s->member1 = 1; s->member2 = 2; } void inline func2(struct mystruct* s) { __asm__ __volatile__( "decl (%0)\n\t" /* decrement member1 */ "call func3\n\t" :/* no outputs */ :"c" (s) /* Base address of the structure */ :"memory"); /* This asm modifies memory */ } asm( ".align 4\n" ".globl func3\n" "func3:\n\t" "pushl %ecx\n\t" /* Push structure address as parameter */ "call func4\n\t" "popl %ecx\n\t" /* And get it back.. */ "ret" ); void func4(struct mystruct* s) { if (s->member1) abort(); } int main(void) { struct mystruct tmp; func1(&tmp); func2(&tmp); return 0; } >Fix: Change the assembler code in func2 to: __asm__ __volatile__( "decl %1\n\t" "call func3\n\t" :"=m" (s->member1) :"m" (s->member1), "c" (s) :"memory"); This additionally clobbers the structure members, which stops the optimizer to think they are no longer needed. >Release-Note: >Audit-Trail: >Unformatted: >>From nneul@umr.edu Thu Dec 28 06:26:00 2000 From: nneul@umr.edu To: gcc-gnats@gcc.gnu.org Subject: c/1524: problem with libgcc.so on sol 27, but not sol26 Date: Thu, 28 Dec 2000 06:26:00 -0000 Message-id: <20001228141605.26872.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01352.html Content-length: 1235 >Number: 1524 >Category: c >Synopsis: problem with libgcc.so on sol 27, but not sol26 >Confidential: no >Severity: non-critical >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Thu Dec 28 06:26:03 PST 2000 >Closed-Date: >Last-Modified: >Originator: nneul@umr.edu >Release: gcc version 2.97 20001221 (experimental) plus binutils 001221 >Organization: >Environment: solaris 2.7 >Description: Unable to build stage3 libgcc.so? ./ld:libgcc.map: file format not recognized; treating as linker script ./ld:libgcc.map:1: parse error collect2: ld returned 1 exit status gmake[2]: *** [libgcc_s.so] Error 1 gmake[2]: Target `all' not remade because of errors. gmake[2]: Leaving directory `/afs/umr.edu/software/egcs3/build.egcs/solaris27/gcc' gmake[1]: *** [libgcc.a] Error 2 However, the interesting thing is - there is a libgcc.a built The problem is - it causes a failure in the install target, so libgcc.a never gets installed, rendering gcc useless. I do not have this problem on Solaris 2.6, however, I don't see a libgcc.so on solaris 26. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: >>From nneul@umr.edu Thu Dec 28 06:36:00 2000 From: "Neulinger, Nathan R." To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: RE: c/1524: problem with libgcc.so on sol 27, but not sol26 Date: Thu, 28 Dec 2000 06:36:00 -0000 Message-id: <20001228143600.30733.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01353.html Content-length: 1084 The following reply was made to PR c/1524; it has been noted by GNATS. From: "Neulinger, Nathan R." To: "'gcc-gnats@gcc.gnu.org'" Cc: Subject: RE: c/1524: problem with libgcc.so on sol 27, but not sol26 Date: Thu, 28 Dec 2000 08:33:00 -0600 I just realized I wasn't building with gnu-as and gnu-ld... Copied an old installation script I used that didn't include options for solaris 27, only 26. Most likely you can close this ticket. -- Nathan > -----Original Message----- > From: gcc-gnats@gcc.gnu.org [ mailto:gcc-gnats@gcc.gnu.org ] > Sent: Thursday, December 28, 2000 8:26 AM > To: nneul@umr.edu > Subject: Re: c/1524: problem with libgcc.so on sol 27, but not sol26 > > > Thank you very much for your problem report. > It has the internal identification `c/1524'. > The individual assigned to look at your > report is: unassigned. > > >Category: c > >Responsible: unassigned > >Synopsis: problem with libgcc.so on sol 27, but not sol26 > >Arrival-Date: Thu Dec 28 06:26:03 PST 2000 > >>From bje@gcc.gnu.org Thu Dec 28 13:06:00 2000 From: bje@gcc.gnu.org To: bje@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: c/674 Date: Thu, 28 Dec 2000 13:06:00 -0000 Message-id: <20001228210600.4795.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01354.html Content-length: 847 The following reply was made to PR c/674; it has been noted by GNATS. From: bje@gcc.gnu.org To: anthonyu@yahoo.com, bje@gcc.gnu.org, gcc-gnats@gcc.gnu.org Cc: Subject: Re: c/674 Date: 28 Dec 2000 21:00:49 -0000 Synopsis: -omagic and -o magic have different effects State-Changed-From-To: analyzed->closed State-Changed-By: bje State-Changed-When: Thu Dec 28 13:00:48 2000 State-Changed-Why: This was never a GCC bug to begin with. The problem is that GCC passes the -o option directly to the linker. The linker was catching -omagic as a synonym for the --omagic long option. Likewise, -output would cause trouble. The linker has been fixed in CVS binutils so that -omagic and -output are no longer accepted. This fixes the problem. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=674&database=gcc >>From bje@gcc.gnu.org Thu Dec 28 13:26:00 2000 From: bje@gcc.gnu.org To: bje@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: libstdc++/898 Date: Thu, 28 Dec 2000 13:26:00 -0000 Message-id: <20001228212600.7030.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01355.html Content-length: 558 The following reply was made to PR libstdc++/898; it has been noted by GNATS. From: bje@gcc.gnu.org To: David.Billinghurst@riotinto.com, bje@gcc.gnu.org, gcc-gnats@gcc.gnu.org Cc: Subject: Re: libstdc++/898 Date: 28 Dec 2000 21:21:47 -0000 Synopsis: libstdc++-v3 configuration sets @EXEEXT@ incorrectly on cygwin State-Changed-From-To: analyzed->feedback State-Changed-By: bje State-Changed-When: Thu Dec 28 13:21:47 2000 State-Changed-Why: Waiting for more information. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=898&database=gcc >>From waratah@zip.com.au Thu Dec 28 16:36:00 2000 From: Ken Foskey To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: c++/1082 Date: Thu, 28 Dec 2000 16:36:00 -0000 Message-id: <20001229003600.5857.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01356.html Content-length: 517 The following reply was made to PR c++/1082; it has been noted by GNATS. From: Ken Foskey To: waratah@spamcop.net, gcc-gnats@gcc.gnu.org, nobody@gcc.gnu.org Cc: Subject: Re: c++/1082 Date: Fri, 29 Dec 2000 11:30:02 +1100 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1082&database=gcc Please close this call. The install had update to /usr/local/bin and the config for open office (linux environment set file) had /usr/bin. It was picking up the wrong version. Thanks Ken >>From rth@redhat.com Thu Dec 28 17:56:00 2000 From: Richard Henderson To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: c/1524: problem with libgcc.so on sol 27, but not sol26 Date: Thu, 28 Dec 2000 17:56:00 -0000 Message-id: <20001229015600.20336.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01357.html Content-length: 565 The following reply was made to PR c/1524; it has been noted by GNATS. From: Richard Henderson To: nneul@umr.edu Cc: gcc-gnats@gcc.gnu.org Subject: Re: c/1524: problem with libgcc.so on sol 27, but not sol26 Date: Thu, 28 Dec 2000 17:47:40 -0800 On Thu, Dec 28, 2000 at 02:16:05PM -0000, nneul@umr.edu wrote: > ./ld:libgcc.map: file format not recognized; treating as linker script > ./ld:libgcc.map:1: parse error This looks suspiciously like gnu ld and not solaris ld. It seems likely that something went wrong during configure. r~ >>From nneul@umr.edu Thu Dec 28 18:46:00 2000 From: Nathan Neulinger To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: c/1524: problem with libgcc.so on sol 27, but not sol26 Date: Thu, 28 Dec 2000 18:46:00 -0000 Message-id: <20001229024600.22891.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01358.html Content-length: 752 The following reply was made to PR c/1524; it has been noted by GNATS. From: Nathan Neulinger To: Richard Henderson Cc: gcc-gnats@gcc.gnu.org Subject: Re: c/1524: problem with libgcc.so on sol 27, but not sol26 Date: Thu, 28 Dec 2000 20:44:10 -0600 Richard Henderson wrote: > > On Thu, Dec 28, 2000 at 02:16:05PM -0000, nneul@umr.edu wrote: > > ./ld:libgcc.map: file format not recognized; treating as linker script > > ./ld:libgcc.map:1: parse error > > This looks suspiciously like gnu ld and not solaris ld. > It seems likely that something went wrong during configure. > > r~ Yeah, I followed up on it as soon as I realized that, but it never showed up on the bugs list. Thanks in any case... >>From ac9410@bellsouth.net Fri Dec 29 11:26:00 2000 From: ac9410@bellsouth.net To: gcc-gnats@gcc.gnu.org Subject: c/1525: Internal compiler error in array_size_for_constructor Date: Fri, 29 Dec 2000 11:26:00 -0000 Message-id: <20001229192303.12443.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01359.html Content-length: 1201 >Number: 1525 >Category: c >Synopsis: Internal compiler error in array_size_for_constructor >Confidential: no >Severity: serious >Priority: high >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Fri Dec 29 11:26:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Albert Cranford >Release: 2.97 20001229 i386 >Organization: >Environment: binutils 2.10.1 glibc 2.1.2 >Description: When compiling kernel 2.4.0-test13-pre5 for K6 cpu get Internal compiler error in array_size_for_constructor at varasm.c:4469 module=linux/net/ipv4/netfilter/ip_tables.c static struct ipt_table_info bootstrap = {0, 0, { 0 }, { 0 }, { } }; WITH struct ipt_table_info { unsigned int size; unsigned int number; unsigned int hook_entry[NF_IP_NUMHOOKS]; unsigned int underflow[NF_IP_NUMHOOKS]; char entries[0] __attribute__((aligned(SMP_CACHE_BYTES))); }; AND linux/include/linux/netfilter_ipv4.h:#define NF_IP_NUMHOOKS 5 linux/include/linux/cache.h:#define SMP_CACHE_BYTES L1_CACHE_BYTES >How-To-Repeat: compile kernel for arch=i386 >Fix: initialize entries to 0. >Release-Note: >Audit-Trail: >Unformatted: >>From david@polinsky.com Fri Dec 29 12:06:00 2000 From: david@polinsky.com To: gcc-gnats@gcc.gnu.org Subject: c++/1526: Failure in function cplus_demangle Date: Fri, 29 Dec 2000 12:06:00 -0000 Message-id: <20001229195933.18116.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01360.html Content-length: 2670 >Number: 1526 >Category: c++ >Synopsis: Failure in function cplus_demangle >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Fri Dec 29 12:06:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: David Polinsky >Release: gcc-2.95..2 >Organization: >Environment: pIII-166; kernel 2.2.17; building with binutils-2.10.1; creating a cross compiler from libc5 to libc6 >Description: After configuring, when making the target, I get a failure in cplus-dem.c as shown below. I have deleted a repetitive portion of the output. I can send extensive files, if they would help. step=gcc5d logmesg=/install/logs/m$step cat /install/shells/$step |tee $logmesg && \ date |tee -a $logmesg && \ make target_alias=i586-linux-libc6 \ 2>&1 |tee -a $logmesg && \ date |tee -a $logmesg Fri Dec 29 12:21:50 EST 2000 make[1]: Entering directory `/exp1/install/srcbuild/libiberty' make[2]: Entering directory `/exp1/install/srcbuild/libiberty/testsuite' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/exp1/install/srcbuild/libiberty/testsuite' make[1]: Leaving directory `/exp1/install/srcbuild/libiberty' make[1]: Entering directory `/exp1/install/srcbuild/binutils' make all-recursive make[2]: Entering directory `/exp1/install/srcbuild/binutils' Making all in po make[3]: Entering directory `/exp1/install/srcbuild/binutils/po' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/exp1/install/srcbuild/binutils/po' make[3]: Entering directory `/exp1/install/srcbuild/binutils' /bin/sh ./libtool --mode=link gcc -g -O2 -o cxxfilt cplus-dem.o underscore.o ../libiberty/libiberty.a ./../intl/libintl.a gcc -g -O2 -o cxxfilt cplus-dem.o underscore.o ../libiberty/libiberty.a ./../intl/libintl.a cplus-dem.o: In function `cplus_demangle': /exp1/install/srcbuild/binutils/../../src/binutils/../libiberty/cplus-dem.c:900: undefined reference to `cplus_demangle_new_abi' make[3]: *** [cxxfilt] Error 1 make[3]: Leaving directory `/exp1/install/srcbuild/binutils' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/exp1/install/srcbuild/binutils' make[1]: *** [all-recursive-am] Error 2 make[1]: Leaving directory `/exp1/install/srcbuild/binutils' make: *** [all-binutils] Error 2 Fri Dec 29 12:21:57 EST 2000 >How-To-Repeat: follow steps for cross compiler. mk src cd src create links to gcc and binutils in src cd ..; mk srcbuild; cd srcbuild run gcc4b run gcc5d (see description) >Fix: >Release-Note: >Audit-Trail: >Unformatted: >>From ac9410@bellsouth.net Fri Dec 29 12:46:00 2000 From: ac9410@bellsouth.net To: gcc-gnats@gcc.gnu.org Subject: c/1527: initialization in zero-length array inside a nested structure Date: Fri, 29 Dec 2000 12:46:00 -0000 Message-id: <20001229203709.31247.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01361.html Content-length: 4089 >Number: 1527 >Category: c >Synopsis: initialization in zero-length array inside a nested structure >Confidential: no >Severity: serious >Priority: high >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Fri Dec 29 12:46:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Albert Cranford >Release: 2.97 20001229 i386 >Organization: >Environment: binutils 2.10.1 glibc 2.1.2 >Description: When compiling kernel 2.4.0-test13-pre5 get: gcc -D__KERNEL__ -I/root/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -mpreferred-stack-boundary=2 -march=k6 -DMODULE -c -o iptable_filter.o iptable_filter.c iptable_filter.c:44: initialization of zero-length array inside a nested structure iptable_filter.c:44: (near initialization for `initial_table.repl.entries') iptable_filter.c:51: initialization of zero-length array inside a nested structure iptable_filter.c:51: (near initialization for `initial_table.entries[0].entry.elems') iptable_filter.c:52: initialization of zero-length array inside a nested structure iptable_filter.c:52: (near initialization for `initial_table.entries[0].target.target.data') iptable_filter.c:59: initialization of zero-length array inside a nested structure iptable_filter.c:59: (near initialization for `initial_table.entries[1].entry.elems') iptable_filter.c:60: initialization of zero-length array inside a nested structure iptable_filter.c:60: (near initialization for `initial_table.entries[1].target.target.data') iptable_filter.c:67: initialization of zero-length array inside a nested structure iptable_filter.c:67: (near initialization for `initial_table.entries[2].entry.elems') iptable_filter.c:68: initialization of zero-length array inside a nested structure iptable_filter.c:68: (near initialization for `initial_table.entries[2].target.target.data') iptable_filter.c:76: initialization of zero-length array inside a nested structure iptable_filter.c:76: (near initialization for `initial_table.term.entry.elems') iptable_filter.c:78: initialization of zero-length array inside a nested structure iptable_filter.c:78: (near initialization for `initial_table.term.target.target.data') confused by earlier errors, bailing out make[2]: *** [iptable_filter.o] Error 1 static struct { struct ipt_replace repl; struct ipt_standard entries[3]; struct ipt_error term; } initial_table __initdata = { { "filter", FILTER_VALID_HOOKS, 4, sizeof(struct ipt_standard) * 3 + sizeof(struct ipt_error), { [NF_IP_LOCAL_IN] 0, [NF_IP_FORWARD] sizeof(struct ipt_standard), [NF_IP_LOCAL_OUT] sizeof(struct ipt_standard) * 2 }, { [NF_IP_LOCAL_IN] 0, [NF_IP_FORWARD] sizeof(struct ipt_standard), [NF_IP_LOCAL_OUT] sizeof(struct ipt_standard) * 2 }, 0, NULL, { } }, { /* LOCAL_IN */ { { { { 0 }, { 0 }, { 0 }, { 0 }, "", "", { 0 }, { 0 }, 0, 0, 0 }, 0, sizeof(struct ipt_entry), sizeof(struct ipt_standard), 0, { 0, 0 }, { } }, { { { { IPT_ALIGN(sizeof(struct ipt_standard_target)), "" } }, { } }, -NF_ACCEPT - 1 } }, /* FORWARD */ { { { { 0 }, { 0 }, { 0 }, { 0 }, "", "", { 0 }, { 0 }, 0, 0, 0 }, 0, sizeof(struct ipt_entry), sizeof(struct ipt_standard), 0, { 0, 0 }, { } }, { { { { IPT_ALIGN(sizeof(struct ipt_standard_target)), "" } }, { } }, -NF_ACCEPT - 1 } }, /* LOCAL_OUT */ { { { { 0 }, { 0 }, { 0 }, { 0 }, "", "", { 0 }, { 0 }, 0, 0, 0 }, 0, sizeof(struct ipt_entry), sizeof(struct ipt_standard), 0, { 0, 0 }, { } }, { { { { IPT_ALIGN(sizeof(struct ipt_standard_target)), "" } }, { } }, -NF_ACCEPT - 1 } } }, /* ERROR */ { { { { 0 }, { 0 }, { 0 }, { 0 }, "", "", { 0 }, { 0 }, 0, 0, 0 }, 0, sizeof(struct ipt_entry), sizeof(struct ipt_error), 0, { 0, 0 }, { } }, { { { { IPT_ALIGN(sizeof(struct ipt_error_target)), IPT_ERROR_TARGET } }, { } }, "ERROR" } } }; >How-To-Repeat: compile kernel for arch=i386 >Fix: >Release-Note: >Audit-Trail: >Unformatted: >>From igor@txc.com Sat Dec 30 22:16:00 2000 From: igor@txc.com To: gcc-gnats@gcc.gnu.org Subject: other/1528: perl path in contrib/texi2pod.pl Date: Sat, 30 Dec 2000 22:16:00 -0000 Message-id: <20001231061204.28562.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01362.html Content-length: 722 >Number: 1528 >Category: other >Synopsis: perl path in contrib/texi2pod.pl >Confidential: no >Severity: non-critical >Priority: low >Responsible: unassigned >State: open >Class: change-request >Submitter-Id: net >Arrival-Date: Sat Dec 30 22:16:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Igor Schein >Release: gcc-2.97 >Organization: >Environment: Solaris >Description: contrib/texi2pod.pl assumes that the default location in perl is /usr/bin/perl, which is not the case on Solaris. >How-To-Repeat: >Fix: abandon #! construction altogether for this file, assuming perl is always in user's path. >Release-Note: >Audit-Trail: >Unformatted: >>From pedwards@disaster.jaj.com Sat Dec 30 22:36:00 2000 From: Phil Edwards To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: other/1528: perl path in contrib/texi2pod.pl Date: Sat, 30 Dec 2000 22:36:00 -0000 Message-id: <20001231063601.31404.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01363.html Content-length: 1147 The following reply was made to PR other/1528; it has been noted by GNATS. From: Phil Edwards To: igor@txc.com Cc: gcc-gnats@gcc.gnu.org Subject: Re: other/1528: perl path in contrib/texi2pod.pl Date: Sun, 31 Dec 2000 01:37:13 -0500 On Sun, Dec 31, 2000 at 06:12:04AM -0000, igor@txc.com wrote: > >Description: > contrib/texi2pod.pl assumes that the default location in perl is /usr/bin/perl, which is not the case on Solaris. It is now: 9% type perl perl is /usr/bin/perl 10% ./config.guess sparc-sun-solaris2.8 11% Still, it wasn't always, and the assumption that perl is /usr/bin/perl is not a good one. > >Fix: > abandon #! construction altogether for this file, assuming perl is always in user's path. Or replace it with #!/usr/bin/env perl which will also Do The Right Thing when perl is in the the path. Phil -- pedwards at disaster dot jaj dot com | pme at sources dot redhat dot com devphil at several other less interesting addresses in various dot domains The gods do not protect fools. Fools are protected by more capable fools. >>From jsm28@cam.ac.uk Sun Dec 31 08:26:00 2000 From: "Joseph S. Myers" To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: other/1528: perl path in contrib/texi2pod.pl Date: Sun, 31 Dec 2000 08:26:00 -0000 Message-id: <20001231162600.11750.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01364.html Content-length: 599 The following reply was made to PR other/1528; it has been noted by GNATS. From: "Joseph S. Myers" To: Cc: , Subject: Re: other/1528: perl path in contrib/texi2pod.pl Date: Sun, 31 Dec 2000 16:24:28 +0000 (GMT) On 31 Dec 2000 igor@txc.com wrote: > contrib/texi2pod.pl assumes that the default location in perl is /usr/bin/perl, which is not the case on Solaris. This is fixed by http://gcc.gnu.org/ml/gcc-patches/2000-12/msg00950.html which is awaiting review. -- Joseph S. Myers jsm28@cam.ac.uk >>From gdr@codesourcery.com Sun Dec 31 10:26:00 2000 From: Gabriel Dos Reis To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: other/1528: perl path in contrib/texi2pod.pl Date: Sun, 31 Dec 2000 10:26:00 -0000 Message-id: <20001231182601.31797.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01365.html Content-length: 1228 The following reply was made to PR other/1528; it has been noted by GNATS. From: Gabriel Dos Reis To: Phil Edwards Cc: nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org Subject: Re: other/1528: perl path in contrib/texi2pod.pl Date: 31 Dec 2000 19:17:02 +0100 Phil Edwards writes: | The following reply was made to PR other/1528; it has been noted by GNATS. | | From: Phil Edwards | To: igor@txc.com | Cc: gcc-gnats@gcc.gnu.org | Subject: Re: other/1528: perl path in contrib/texi2pod.pl | Date: Sun, 31 Dec 2000 01:37:13 -0500 | | On Sun, Dec 31, 2000 at 06:12:04AM -0000, igor@txc.com wrote: | > >Description: | > contrib/texi2pod.pl assumes that the default location in perl is /usr/bin/perl, which is not the case on Solaris. | | It is now: | | 9% type perl | perl is /usr/bin/perl Which is not always the case. On my system it is in /opt/gnu/bin. Anyway, this issue was discussed recently and if I'm not mistaken J.S. Myers posted a patch about which, I think, attempted to do the right thing. -- Gaby CodeSourcery, LLC http://www.codesourcery.com >>From ajb44.geo@yahoo.com Sun Dec 31 12:16:00 2000 From: ajb44.geo@yahoo.com To: gcc-gnats@gcc.gnu.org Subject: c++/1529: internal compiler error after reporting parse error Date: Sun, 31 Dec 2000 12:16:00 -0000 Message-id: <20001231201324.12690.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01366.html Content-length: 23731 >Number: 1529 >Category: c++ >Synopsis: internal compiler error after reporting parse error >Confidential: no >Severity: non-critical >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Sun Dec 31 12:16:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: ajb44.geo@yahoo.com >Release: gcc version gcc version 2.96 20000731 (Red Hat Linux 7.0) >Organization: >Environment: Linux 2.2.18 i686 AMD Athlon, red hat 7.0 >Description: This is the error message extern.cc: In method `term opCNOT::funct (const bitvec &) const': extern.cc:254: parse error before `not' extern.cc:256: Internal error #122. extern.cc:256: Internal compiler error in finish_function, at ../gcc/cp/decl.c:14422 >How-To-Repeat: g++ -c -Wall -g -DQCL_DEBUG -DQC_DEBUG -DQCL_USE_READLINE -Iqc -DDEF_INCLUDE_PATH="\"/usr/local/lib/qcl\"" extern.cc untar included files, run command line above. >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/x-tar; name="code.tar.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="code.tar.gz" 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 +2Sf7JN9sk/2yT7Z574//x/NHRgmAJABAA== >>From bje@gcc.gnu.org Sun Dec 31 17:36:00 2000 From: bje@gcc.gnu.org To: bje@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: libstdc++/898 Date: Sun, 31 Dec 2000 17:36:00 -0000 Message-id: <20010101013600.24302.qmail@sourceware.cygnus.com> X-SW-Source: 2000-q4/msg01367.html Content-length: 582 The following reply was made to PR libstdc++/898; it has been noted by GNATS. From: bje@gcc.gnu.org To: David.Billinghurst@riotinto.com, bje@gcc.gnu.org, gcc-gnats@gcc.gnu.org Cc: Subject: Re: libstdc++/898 Date: 1 Jan 2001 01:31:37 -0000 Synopsis: libstdc++-v3 configuration sets @EXEEXT@ incorrectly on cygwin State-Changed-From-To: feedback->closed State-Changed-By: bje State-Changed-When: Sun Dec 31 17:31:37 2000 State-Changed-Why: According to the originator, this is no longer an issue. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=898&database=gcc