From dcde0cb73dd39566f518898093b5b4d211a8c6d3 Mon Sep 17 00:00:00 2001 From: Packit Date: Sep 16 2020 14:32:59 +0000 Subject: perl-Math-BigInt-FastCalc-0.500.600 base --- diff --git a/CHANGES b/CHANGES new file mode 100644 index 0000000..ed2c57c --- /dev/null +++ b/CHANGES @@ -0,0 +1,424 @@ +2017-01-11 v0.5006 pjacklam + + * Fix syntax for required version of Math::BigInt::Lib. + + * Better checking of POD coverage. + + * Sync test files with Math-BigInt-1.999808. + +2016-12-13 v0.5005 pjacklam + + * Add more logic to Makefile.PL regarding INSTALLDIRS (CPAN RT #119199 + and #119225). + +2016-12-11 v0.5004 pjacklam + + * Fix Makefile.PL so that this module installs over the core version. + + * Sync test files with Math-BigInt-1.999805. + +2016-12-03 v0.5003 pjacklam + + * Use ExtUtils::MakeMaker rather than Module::Install in Makefile.PL + + * Add LICENSE file, since the other Math::BigInt-related distributions have + one. + + * Remove INSTALL file. The information is in the README file. + + * Inform that the TODO file is not up to date. + +2016-11-23 v0.5002 pjacklam + + * Sync test files with Math-BigInt-1.999801. Add t/biglog.t and t/bigroot.t + since these are included in the test suite for the other backend libraries + (GMP and Pari). + +2016-11-17 v0.5001 pjacklam + + * Avoid 'use parent' to retain compatibility with old Perls. + + * Fix incorrect version numbers in the CHANGES file. + + * Trim whitespace. + +2016-11-15 v0.5000 pjacklam + + * Sync test files with Math-BigInt-1.999800. + + * Math::BigInt::FastCalc is now a subclass of Math::BigInt::Calc, so remove + aliases like *Math::BigInt::FastCalc::_xxx = \&Math::BigInt::Calc::_xxx. + + * Use OO-calls rather than function calls. + + * Fix documentation error in Math::BigInt::FastCalc + +2016-04-25 v0.42 pjacklam + + * Sync test files with Math-BigInt-1.999719. + +2016-04-22 v0.41 pjacklam + + * Sync test files with Math-BigInt-1.999718. + +2016-01-03 v0.40 pjacklam + + * Sync test files with Math-BigInt-1.999714. + +2015-12-31 v0.39 pjacklam + + * Sync test files with Math-BigInt-1.999713. + +2015-12-02 v0.38 pjacklam + + * Use 'static double', not just 'double' in FastCalc.xs. + + * Move 'Test::More' from 'build_requires' to 'test_requires' in Makefile.PL. + +2015-11-09 v0.37 pjacklam + + * Sync test files with Math-BigInt-1.999709. + +2015-11-04 v0.36 pjacklam + + * Sync test files with Math-BigInt-1.999708. + + * Required version of Test::More is only 0.47, not 0.62. + +2015-10-28 v0.35 pjacklam + + * Sync test files with Math-BigInt-1.999707. + + * Update the README file. + + * Replace 'use vars ...' with 'our ...'. We require a Perl newer than 5.6.0 + anyway. + + * Required version of Math-BigInt is now 1.999706. + + * Move 'Test::More' from 'build_requires' to 'test_requires' in Makefile.PL. + +2015-09-21 v0.34 pjacklam + + * Sync test files with Math-BigInt-1.999703. + + * Required version of Math-BigInt is now 1.999703. + + * Update author information. + +2015-09-17 v0.33 pjacklam + + * Sync test files with Math-BigInt-1.999702. + + * Required version of Math-BigInt is now 1.999702. + +2015-09-11 0.32 pjacklam + CHANGES + * Add changes from version 0.30 to 0.31. + * Re-order change entries to decreasing order after version number. + inc/Module/Install.pm + * Update bundled version from 1.08 to 1.16. + lib/Math/BigInt/FastCalc.pm + * Increase version number to 0.32 + * Update author information. + Makefile.PL + * Required version of Math::BigInt and Math::BigInt::Calc is 1.999701. + t/01load.t + * Display more information about loaded modules. + t/bigfltpm.inc + * Sync tests with Math-BigInt distribution. + t/bigfltpm.t + * Adjust number of tests. + * Make sure we test Math::BigInt::FastCalc, not Math::BigInt::Calc. + t/bigintpm.inc + * Fix spelling errors. + t/bigintpm.t + * Make sure we test Math::BigInt::FastCalc, not Math::BigInt::Calc. + * Adjust number of tests. + t/mbimbf.t + * Make sure we test Math::BigInt::FastCalc, not Math::BigInt::Calc. + t/*.t + * Add "use warnings" to test scripts, since Perl 5.6.2 is required anyway, + and "use warnings" was introduced in Perl 5.6.1. + * Modified test scripts so the difference between the test files in the + Math-BigInt distribution and the backend distributions are as few and as + small as possible. This makes for easier release management. + +2014-03-04 0.31 pjacklam + FastCalc.xs + * Make the array interface 64-bit safe by using SSize_t instead of I32. + Makefile.PL + * Required version of Math::BigInt and Math::BigInt::Calc is 1.9993. + inc/Module/Install.pm + * Update bundled version from 1.01 to 1.08. + lib/Math/BigInt/FastCalc.pm + * Increase version number to 0.31 + lib/Math/BigInt/FastCalc.pm + * Add documentation about CPAN RT, CPAN testers etc. + t/bigfltpm.inc + * Add tests for fint()/bint(). + t/bigfltpm.t + * Increase number of tests. + t/bigintpm.inc + * Add tests for bint(). + t/bigintpm.t + * Increase number of tests. + t/leak.t + * Change "use base" to "use parent". + t/mbi_rand.t + * Include older version of this file, one that tests Math::BigInt::FastCalc, + not Math::BigInt::Calc. + +2011-09-04 0.30 pjacklam + + * Math::BigInt::FastCalc now requires Math::BigInt v1.997 (Peter John Acklam). + + * Include "^MYMETA\.(yml|json)\z" in MANIFEST.SKIP. Whereas META.* are + generated by the distribution author at packaging time, MYMETA.* are + generated by the end user at configure time after any dynamic + dependencies are known. (Peter John Acklam) + + * Updated common test files from the Math::BigInt distribution. (Peter + John Acklam) + +2011-07-09 0.29 rafl (7560 tests) + + * Synchronise with blead perl. + + Reduce object code size significantly through PERL_NO_GET_CONTEXT. + +2011-02-26 0.28 pjacklam (7560 tests) + + * Sync codebases (CPAN vs. blead): include t/mbi_rand.t from blead, + fix typos in FastCalc.xs and t/bigintfc.t (Peter John Acklam). + + * Remove redundant Math::BigInt::FastCalc version info from diagnostic + output of 01load.t (Peter John Acklam). + +2011-02-26 0.27 pjacklam (7560 tests) + + * Add Math::BigInt::Calc version information to diagnostics output of + 01load.t. This is useful for debugging, since Math::BigInt::FastCalc + relies heavily on Math::BigInt::Calc (Peter John Acklam). + + * Change bigintpm.inc to reflect recent changes in the Math::BigInt + distribution (Peter John Acklam). + +2011-02-08 0.26 pjacklam (7560 tests) + + * Add Perl v5.6 compatibility code to FastCalc.xs (RT #63859) + (Peter John Acklam). + + * Add 00sig.t for testing SIGNATURE, and 01load.t for basic module loading + and giving diagnostics useful for bug tracking (Peter John Acklam). + + * Rename pod.t to 02pod.t and pod_cov.t to 03podcov.t and use more generic + code (Peter John Acklam). + +2011-02-06 0.251 pjacklam (7558 tests) + + * Add requirement Math::BigInt version 1.991 (Peter John Acklam). + +2011-02-05 0.25 pjacklam (7558 tests) + + * Remove _new() from XS code and use _new() in Math::BigInt::Calc + instead. The XS _new() doesn't handle integers that are too large to + be represented exactly as floating point numbers, but small enough + to be represented as 64 bit integers. The XS _new() also returns + nan, not inf, when it overflows. This closes RT #63335 and RT #49569 + (Peter John Acklam). + + * Copied test files from latest Math::BigInt (v1.991): bigfltpm.inc, + bigfltpm.t, bigintpm.inc, bigintpm.t, mbi_rand.t, mbimbf.inc, + mbimbf.t (Peter John Acklam). + +2010-11-07 0.24 rafl (6938 tests) + + * Reduce repetition (and object size) in FastCalc.xs by using ALIASes + (Nicholas Clark). + + * inline the macros CONSTANT_OBJ and RETURN_MORTAL_BOOL. (Nicholas Clark). + + * Avoid creating two entries instead of one on the mortals stack in _new() and + _zero() (Nicholas Clark). + + * Convert from DynaLoader to XSLoader (Nicholas Clark). + + * Adapt to the changed order of the return value Math::BigInt::Calc::_base_len + in Math::BigInt 1.97 (Nicholas Clark). + + * Initialise BASE and BASE_LEN as part of bootstrap, avoiding special one-shot + setter routines (Nicholas Clark). + + * Remove the $BASE or $BASE_LEN globals. They were never documented or + exported, and are now unnecessary (Nicholas Clark). + +2010-09-14 0.22 rafl (6938 tests) + + * Modernize the test suite to use Test::More instead of Test. + +2010-09-03 0.21 rafl (6892 tests) + + * Remove some unneeded test code which only broke things when being ran in the + perl core. + +2010-09-03 0.20 rafl (6892 tests) + + * Avoid certain kinds of segfaults as well as wrong bnok() behaviour by + depending on Math::BigInt 0.90. + +2008-04-15 0.19 Tels (6892 tests) + + * forcefully regenerate META.yml (sigh@Module::Install) + +2008-04-15 0.18 Tels (6892 tests) + + * fix compilation under v5.6.2 (sigh) + +2008-04-13 0.17 Tels (6892 tests) + + * forgot SvIOK() to SvUOK() (bug #29720, Thanx Alexey Tourbin!) + +2007-09-16 0.16 Tels (6892 tests) + + * require Math::BigInt 1.88 + + * disable prototypes + + * fix SvIV() vs. SvUV() in _new() (fix bug #29720) + + * it works back to v5.006 (thanx zefram!) + +2007-06-30 0.15 Tels (6892 tests) + + * require Math::BigInt 1.87 + + * add _nok() + + * bundle and use Module::Install + + * put _new() into the XS + +2007-04-17 0.14 Tels (6438 tests) + + * require Math::BigInt 1.83 + + * support api_version() 2 by adding _1ex() and _alen() + + * add a few tests + +2007-04-09 0.13 Tels (6280 tests) + + * require Math::BigInt 1.82 + + * revert the accidentily change to "NV elems" in _len + (basically, apply the fix that was already in blead to the CPAN release) + + * plug all the leaks in _acmp(), _is_ten() etc. (Thanx Hugo!) + +2007-03-03 0.12 Tels (6280 tests) + + * fix bug #25033 It leaks (Thanx M. Schwern!) + + * require Perl 5.6.2, anything older is unsupported and untested + +2007-02-02 0.11 Tels (5953 tests) + + * require Math::BigInt 1.79 + + * add support for _as_oct() and _from_oct() + + * add _length() to the method list + +2005-03-30 0.10 Tels (5953 tests) + + * load Calc.pm and use its code to provide the routines that FastCalc + does not yet have in XS (cut down Copy&Paste code considerably + + * require Math::BigInt v1.76 to properly load Calc.pm + +2005-03-20 0.09 Tels (5953 tests) + + * take over changes from Calc 0.45 (fix bug with div shortcut) + + * require Math::BigInt v1.75 and use its tests + +2005-01-01 0.08 Tels (5953 tests) + + * take tests from BigInt v1.74 and require it + + * remove needless Exporter in FastCalc + + * Makefile.PL: add writing of own meta file with correct licence + + * take over changes from Calc 0.44 + +2004-08-13 0.07 Tels (5953 tests) + + * require BigInt v1.71, adapted to new API style by taking over Calc v0.41 + + added _is_two(), _is_ten(), and _ten() + + * cleaned XS code, got rid of "unused var" warnings (thanx perl-xs people!) + +2002-08-25 0.06 Tels (5355 tests) + + * working _modinv() and fix for _rsft() taken over from Calc v0.32 + + * added tests for _rsft() and _modinv() + + * require Math::BigInt v1.62 + + * _num(), _dec() and _inc() are now in XS + $MBI->numify() is about 50% faster + $MBI->binc()/$MBI->bdec() are about 5-8% faster for numbers that don't + overflow (much), and about 14% for ('9' x 100)->binc() + + * __strip_zeros() is no in XS, making it roughly 3 times as fast + + * added _copy(): more than twice as fast for large (> 1000 digits) numbers: + + Math::BigInt::Calc v0.32 + 1: 3s ( 3.23 usr + 0.00 sys = 3.23 CPU) @ 38128/s (n=123154) + 100: 3s ( 3.19 usr + 0.00 sys = 3.19 CPU) @ 27397/s (n=87397) + 1000: 4s ( 3.29 usr + 0.00 sys = 3.29 CPU) @ 8042/s (n=26460) + 10000: 4s ( 3.19 usr + 0.01 sys = 3.20 CPU) @ 984/s (n=3149) + + Math::BigInt::FastCalc v0.06 + 1: 3s ( 3.12 usr + 0.01 sys = 3.13 CPU) @ 39346/s (n=123155) + 100: 3s ( 3.10 usr + 0.00 sys = 3.10 CPU) @ 34138/s (n=105830) + 1000: 3s ( 3.09 usr + 0.00 sys = 3.09 CPU) @ 15807/s (n=48844) + 10000: 3s ( 3.20 usr + 0.00 sys = 3.20 CPU) @ 2362/s (n=7559) + +2002-08-13 0.05 Tels (5224 tests) + + * the note that "_len() and _acmp() are in XS" was missing + + * cleaned distribution of unwanted files + +2002-08-13 0.04 Tels first release + - added is_zero(), is_one(), _zero(), _one(), _two() and _acmp() + - more tests in bigintfc.t + + Some general observations: + + * is_*() methods are quite a bit faster than in Calc, but due to the + overhead in Math::BigInt real programs will get only a bit faster + (around 2-5%). + + * Comparisation is *much* faster, and even via Math::BigInt improves the + performance by about factor 9 for large numbers. For smaller numbers (less + than 8000 digits) it is still about factor 2.5 to 8. This is only valid if + the numbers have both the same length. If the length is different, then + FastCalc is still about a factor of 1.2 to 1.7 faster than Calc. + +2002-08-12 0.03 Tels + - Took Calc.pm and converted it to FastCalc.pm + - first two functions, _is_odd() and _is_even() in XS + - testsuite from MBI v1.61 + - extended bigintc.t (also renamed to bigintfc.t) + +2002-08-09 0.02 Tels + - first working version of XS code of _is_even(), _is_odd() + +2002-06-05 0.01 + - original version; created by h2xs 1.21 with options + -n Math::BigInt::FastCalc -A diff --git a/CREDITS b/CREDITS new file mode 100644 index 0000000..b01008c --- /dev/null +++ b/CREDITS @@ -0,0 +1,8 @@ +I wish to thank the following people: + +* The people at p5p that bear with my XS questions +* SADAHIRO Tomoyuki doe pointing out sv2mortal() + +List still not complete ;o) + +Tels diff --git a/FastCalc.xs b/FastCalc.xs new file mode 100644 index 0000000..f8bb314 --- /dev/null +++ b/FastCalc.xs @@ -0,0 +1,409 @@ +#define PERL_NO_GET_CONTEXT + +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +/* for Perl prior to v5.7.1 */ +#ifndef SvUOK +# define SvUOK(sv) SvIOK_UV(sv) +#endif + +/* for Perl v5.6 (RT #63859) */ +#ifndef croak_xs_usage +# define croak_xs_usage croak +#endif + +static double XS_BASE = 0; +static double XS_BASE_LEN = 0; + +MODULE = Math::BigInt::FastCalc PACKAGE = Math::BigInt::FastCalc + +PROTOTYPES: DISABLE + + ############################################################################# + # 2002-08-12 0.03 Tels unreleased + # * is_zero/is_one/is_odd/is_even/len work now (pass v1.61 tests) + # 2002-08-13 0.04 Tels unreleased + # * returns no/yes for is_foo() methods to be faster + # 2002-08-18 0.06alpha + # * added _num(), _inc() and _dec() + # 2002-08-25 0.06 Tels + # * added __strip_zeros(), _copy() + # 2004-08-13 0.07 Tels + # * added _is_two(), _is_ten(), _ten() + # 2007-04-02 0.08 Tels + # * plug leaks by creating mortals + # 2007-05-27 0.09 Tels + # * add _new() + +#define RETURN_MORTAL_INT(value) \ + ST(0) = sv_2mortal(newSViv(value)); \ + XSRETURN(1); + +BOOT: +{ + if (items < 4) + croak("Usage: Math::BigInt::FastCalc::BOOT(package, version, base_len, base)"); + XS_BASE_LEN = SvIV(ST(2)); + XS_BASE = SvNV(ST(3)); +} + +############################################################################## +# _new + +SV * +_new(class, x) + SV* x + INIT: + STRLEN len; + char* cur; + STRLEN part_len; + AV *av = newAV(); + + CODE: + if (SvUOK(x) && SvUV(x) < XS_BASE) + { + /* shortcut for integer arguments */ + av_push (av, newSVuv( SvUV(x) )); + } + else + { + /* split the input (as string) into XS_BASE_LEN long parts */ + /* in perl: + [ reverse(unpack("a" . ($il % $BASE_LEN+1) + . ("a$BASE_LEN" x ($il / $BASE_LEN)), $_[1])) ]; + */ + cur = SvPV(x, len); /* convert to string & store length */ + cur += len; /* doing "cur = SvEND(x)" does not work! */ + # process the string from the back + while (len > 0) + { + /* use either BASE_LEN or the amount of remaining digits */ + part_len = (STRLEN) XS_BASE_LEN; + if (part_len > len) + { + part_len = len; + } + /* processed so many digits */ + cur -= part_len; + len -= part_len; + /* printf ("part '%s' (part_len: %i, len: %i, BASE_LEN: %i)\n", cur, part_len, len, XS_BASE_LEN); */ + if (part_len > 0) + { + av_push (av, newSVpvn(cur, part_len) ); + } + } + } + RETVAL = newRV_noinc((SV *)av); + OUTPUT: + RETVAL + +############################################################################## +# _copy + +void +_copy(class, x) + SV* x + INIT: + AV* a; + AV* a2; + SSize_t elems; + + CODE: + a = (AV*)SvRV(x); /* ref to aray, don't check ref */ + elems = av_len(a); /* number of elems in array */ + a2 = (AV*)sv_2mortal((SV*)newAV()); + av_extend (a2, elems); /* pre-padd */ + while (elems >= 0) + { + /* av_store( a2, elems, newSVsv( (SV*)*av_fetch(a, elems, 0) ) ); */ + + /* looking and trying to preserve IV is actually slower when copying */ + /* temp = (SV*)*av_fetch(a, elems, 0); + if (SvIOK(temp)) + { + av_store( a2, elems, newSViv( SvIV( (SV*)*av_fetch(a, elems, 0) ))); + } + else + { + av_store( a2, elems, newSVnv( SvNV( (SV*)*av_fetch(a, elems, 0) ))); + } + */ + av_store( a2, elems, newSVnv( SvNV( (SV*)*av_fetch(a, elems, 0) ))); + elems--; + } + ST(0) = sv_2mortal( newRV_inc((SV*) a2) ); + +############################################################################## +# __strip_zeros (also check for empty arrays from div) + +void +__strip_zeros(x) + SV* x + INIT: + AV* a; + SV* temp; + SSize_t elems; + SSize_t index; + + CODE: + a = (AV*)SvRV(x); /* ref to aray, don't check ref */ + elems = av_len(a); /* number of elems in array */ + ST(0) = x; /* we return x */ + if (elems == -1) + { + av_push (a, newSViv(0)); /* correct empty arrays */ + XSRETURN(1); + } + if (elems == 0) + { + XSRETURN(1); /* nothing to do since only one elem */ + } + index = elems; + while (index > 0) + { + temp = *av_fetch(a, index, 0); /* fetch ptr to current element */ + if (SvNV(temp) != 0) + { + break; + } + index--; + } + if (index < elems) + { + index = elems - index; + while (index-- > 0) + { + av_pop (a); + } + } + XSRETURN(1); + +############################################################################## +# decrement (subtract one) + +void +_dec(class,x) + SV* x + INIT: + AV* a; + SV* temp; + SSize_t elems; + SSize_t index; + NV MAX; + + CODE: + a = (AV*)SvRV(x); /* ref to aray, don't check ref */ + elems = av_len(a); /* number of elems in array */ + ST(0) = x; /* we return x */ + + MAX = XS_BASE - 1; + index = 0; + while (index <= elems) + { + temp = *av_fetch(a, index, 0); /* fetch ptr to current element */ + sv_setnv (temp, SvNV(temp)-1); /* decrement */ + if (SvNV(temp) >= 0) + { + break; /* early out */ + } + sv_setnv (temp, MAX); /* overflow, so set this to $MAX */ + index++; + } + /* do have more than one element? */ + /* (more than one because [0] should be kept as single-element) */ + if (elems > 0) + { + temp = *av_fetch(a, elems, 0); /* fetch last element */ + if (SvIV(temp) == 0) /* did last elem overflow? */ + { + av_pop(a); /* yes, so shrink array */ + /* aka remove leading zeros */ + } + } + XSRETURN(1); /* return x */ + +############################################################################## +# increment (add one) + +void +_inc(class,x) + SV* x + INIT: + AV* a; + SV* temp; + SSize_t elems; + SSize_t index; + NV BASE; + + CODE: + a = (AV*)SvRV(x); /* ref to aray, don't check ref */ + elems = av_len(a); /* number of elems in array */ + ST(0) = x; /* we return x */ + + BASE = XS_BASE; + index = 0; + while (index <= elems) + { + temp = *av_fetch(a, index, 0); /* fetch ptr to current element */ + sv_setnv (temp, SvNV(temp)+1); + if (SvNV(temp) < BASE) + { + XSRETURN(1); /* return (early out) */ + } + sv_setiv (temp, 0); /* overflow, so set this elem to 0 */ + index++; + } + temp = *av_fetch(a, elems, 0); /* fetch last element */ + if (SvIV(temp) == 0) /* did last elem overflow? */ + { + av_push(a, newSViv(1)); /* yes, so extend array by 1 */ + } + XSRETURN(1); /* return x */ + +############################################################################## + +SV * +_zero(class) + ALIAS: + _one = 1 + _two = 2 + _ten = 10 + PREINIT: + AV *av = newAV(); + CODE: + av_push (av, newSViv( ix )); + RETVAL = newRV_noinc((SV *)av); + OUTPUT: + RETVAL + +############################################################################## + +void +_is_even(class, x) + SV* x + ALIAS: + _is_odd = 1 + INIT: + AV* a; + SV* temp; + + CODE: + a = (AV*)SvRV(x); /* ref to aray, don't check ref */ + temp = *av_fetch(a, 0, 0); /* fetch first element */ + ST(0) = sv_2mortal(boolSV((SvIV(temp) & 1) == ix)); + +############################################################################## + +void +_is_zero(class, x) + SV* x + ALIAS: + _is_one = 1 + _is_two = 2 + _is_ten = 10 + INIT: + AV* a; + + CODE: + a = (AV*)SvRV(x); /* ref to aray, don't check ref */ + if ( av_len(a) != 0) + { + ST(0) = &PL_sv_no; /* len != 1, can't be '0' */ + } + else + { + SV *const temp = *av_fetch(a, 0, 0); /* fetch first element */ + ST(0) = boolSV(SvIV(temp) == ix); + } + XSRETURN(1); + +############################################################################## + +void +_len(class,x) + SV* x + INIT: + AV* a; + SV* temp; + IV elems; + STRLEN len; + + CODE: + a = (AV*)SvRV(x); /* ref to aray, don't check ref */ + elems = av_len(a); /* number of elems in array */ + temp = *av_fetch(a, elems, 0); /* fetch last element */ + SvPV(temp, len); /* convert to string & store length */ + len += (IV) XS_BASE_LEN * elems; + ST(0) = sv_2mortal(newSViv(len)); + +############################################################################## + +void +_acmp(class, cx, cy); + SV* cx + SV* cy + INIT: + AV* array_x; + AV* array_y; + SSize_t elemsx, elemsy, diff; + SV* tempx; + SV* tempy; + STRLEN lenx; + STRLEN leny; + NV diff_nv; + SSize_t diff_str; + + CODE: + array_x = (AV*)SvRV(cx); /* ref to aray, don't check ref */ + array_y = (AV*)SvRV(cy); /* ref to aray, don't check ref */ + elemsx = av_len(array_x); + elemsy = av_len(array_y); + diff = elemsx - elemsy; /* difference */ + + if (diff > 0) + { + RETURN_MORTAL_INT(1); /* len differs: X > Y */ + } + else if (diff < 0) + { + RETURN_MORTAL_INT(-1); /* len differs: X < Y */ + } + /* both have same number of elements, so check length of last element + and see if it differs */ + tempx = *av_fetch(array_x, elemsx, 0); /* fetch last element */ + tempy = *av_fetch(array_y, elemsx, 0); /* fetch last element */ + SvPV(tempx, lenx); /* convert to string & store length */ + SvPV(tempy, leny); /* convert to string & store length */ + diff_str = (SSize_t)lenx - (SSize_t)leny; + if (diff_str > 0) + { + RETURN_MORTAL_INT(1); /* same len, but first elems differs in len */ + } + if (diff_str < 0) + { + RETURN_MORTAL_INT(-1); /* same len, but first elems differs in len */ + } + /* same number of digits, so need to make a full compare */ + diff_nv = 0; + while (elemsx >= 0) + { + tempx = *av_fetch(array_x, elemsx, 0); /* fetch curr x element */ + tempy = *av_fetch(array_y, elemsx, 0); /* fetch curr y element */ + diff_nv = SvNV(tempx) - SvNV(tempy); + if (diff_nv != 0) + { + break; + } + elemsx--; + } + if (diff_nv > 0) + { + RETURN_MORTAL_INT(1); + } + if (diff_nv < 0) + { + RETURN_MORTAL_INT(-1); + } + ST(0) = sv_2mortal(newSViv(0)); /* X and Y are equal */ diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..1eedfda --- /dev/null +++ b/LICENSE @@ -0,0 +1,2 @@ +This program is free software; you may redistribute it and/or modify it +under the same terms as Perl itself. diff --git a/MANIFEST b/MANIFEST new file mode 100644 index 0000000..aca4c1b --- /dev/null +++ b/MANIFEST @@ -0,0 +1,121 @@ +CHANGES +CREDITS +FastCalc.xs +lib/Math/BigInt/FastCalc.pm +LICENSE +Makefile.PL +MANIFEST This list of files +MANIFEST.SKIP +README +t/00sig.t +t/01load.t +t/02pod.t +t/03podcov.t +t/author-lib-arithmetic-binary-_add.dat +t/author-lib-arithmetic-binary-_add.t +t/author-lib-arithmetic-binary-_div.dat +t/author-lib-arithmetic-binary-_div.t +t/author-lib-arithmetic-binary-_gcd.dat +t/author-lib-arithmetic-binary-_gcd.t +t/author-lib-arithmetic-binary-_lcm.dat +t/author-lib-arithmetic-binary-_lcm.t +t/author-lib-arithmetic-binary-_log_int.t +t/author-lib-arithmetic-binary-_mod.dat +t/author-lib-arithmetic-binary-_mod.t +t/author-lib-arithmetic-binary-_modinv.dat +t/author-lib-arithmetic-binary-_modinv.t +t/author-lib-arithmetic-binary-_mul.dat +t/author-lib-arithmetic-binary-_mul.t +t/author-lib-arithmetic-binary-_nok.dat +t/author-lib-arithmetic-binary-_nok.t +t/author-lib-arithmetic-binary-_pow.t +t/author-lib-arithmetic-binary-_root.dat +t/author-lib-arithmetic-binary-_root.t +t/author-lib-arithmetic-binary-_sub.dat +t/author-lib-arithmetic-binary-_sub.t +t/author-lib-arithmetic-ternary-_lsft.dat +t/author-lib-arithmetic-ternary-_lsft.t +t/author-lib-arithmetic-ternary-_modpow.dat +t/author-lib-arithmetic-ternary-_modpow.t +t/author-lib-arithmetic-ternary-_rsft.dat +t/author-lib-arithmetic-ternary-_rsft.t +t/author-lib-arithmetic-unary-_dec.dat +t/author-lib-arithmetic-unary-_dec.t +t/author-lib-arithmetic-unary-_dfac.dat +t/author-lib-arithmetic-unary-_dfac.t +t/author-lib-arithmetic-unary-_fac.dat +t/author-lib-arithmetic-unary-_fac.t +t/author-lib-arithmetic-unary-_inc.dat +t/author-lib-arithmetic-unary-_inc.t +t/author-lib-arithmetic-unary-_sqrt.dat +t/author-lib-arithmetic-unary-_sqrt.t +t/author-lib-bitwise-_and.dat +t/author-lib-bitwise-_and.t +t/author-lib-bitwise-_or.dat +t/author-lib-bitwise-_or.t +t/author-lib-bitwise-_xor.dat +t/author-lib-bitwise-_xor.t +t/author-lib-boolean-_is_even.t +t/author-lib-boolean-_is_odd.t +t/author-lib-boolean-_is_one.t +t/author-lib-boolean-_is_ten.t +t/author-lib-boolean-_is_two.t +t/author-lib-boolean-_is_zero.t +t/author-lib-comparison-_acmp.t +t/author-lib-constructor-nullary-_one.t +t/author-lib-constructor-nullary-_ten.t +t/author-lib-constructor-nullary-_two.t +t/author-lib-constructor-nullary-_zero.t +t/author-lib-constructor-unary-_copy.t +t/author-lib-constructor-unary-_from_bin.dat +t/author-lib-constructor-unary-_from_bin.t +t/author-lib-constructor-unary-_from_bytes.dat +t/author-lib-constructor-unary-_from_bytes.t +t/author-lib-constructor-unary-_from_hex.dat +t/author-lib-constructor-unary-_from_hex.t +t/author-lib-constructor-unary-_from_oct.dat +t/author-lib-constructor-unary-_from_oct.t +t/author-lib-constructor-unary-_new.t +t/author-lib-convert-number-_num.t +t/author-lib-convert-string-_as_bin.dat +t/author-lib-convert-string-_as_bin.t +t/author-lib-convert-string-_as_bytes.dat +t/author-lib-convert-string-_as_bytes.t +t/author-lib-convert-string-_as_hex.dat +t/author-lib-convert-string-_as_hex.t +t/author-lib-convert-string-_as_oct.dat +t/author-lib-convert-string-_as_oct.t +t/author-lib-convert-string-_str.t +t/author-lib-convert-string-_to_bin.dat +t/author-lib-convert-string-_to_bin.t +t/author-lib-convert-string-_to_bytes.dat +t/author-lib-convert-string-_to_bytes.t +t/author-lib-convert-string-_to_hex.dat +t/author-lib-convert-string-_to_hex.t +t/author-lib-convert-string-_to_oct.dat +t/author-lib-convert-string-_to_oct.t +t/author-lib-misc-_check.t +t/author-lib-misc-api_version.t +t/author-lib-property-_alen.t +t/author-lib-property-_digit.t +t/author-lib-property-_len.t +t/author-lib-property-_zeros.t +t/author-lib.ini +t/author-lib.t +t/bigfltpm.inc +t/bigfltpm.t +t/bigintfc.t +t/bigintpm.inc +t/bigintpm.t +t/biglog.t +t/bigroot.t +t/bootstrap.t +t/leak.t +t/Math/BigInt/Lib/TestUtil.pm +t/mbi_rand.t +t/mbimbf.inc +t/mbimbf.t +TODO +META.yml Module YAML meta-data (added by MakeMaker) +META.json Module JSON meta-data (added by MakeMaker) +SIGNATURE Public-key signature (added by MakeMaker) diff --git a/MANIFEST.SKIP b/MANIFEST.SKIP new file mode 100644 index 0000000..562e21d --- /dev/null +++ b/MANIFEST.SKIP @@ -0,0 +1,11 @@ +.*\.tar\.gz +^blib.* +^\w+\.(html|txt|png|dot|pl|svg|old|bak|org) +^Makefile\z +^Makefile.(old|bak)\z +^FastCalc.(o|c|bs)\z +^Math-BigInt-FastCalc- +^MYMETA\.(yml|json)\z +.*\.patch\z +pm_to_blib +\.git.* diff --git a/META.json b/META.json new file mode 100644 index 0000000..4050d30 --- /dev/null +++ b/META.json @@ -0,0 +1,45 @@ +{ + "abstract" : "unknown", + "author" : [ + "Peter John Acklam " + ], + "dynamic_config" : 1, + "generated_by" : "ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 2.150010", + "license" : [ + "perl_5" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "Math-BigInt-FastCalc", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : { + "Math::BigInt" : "1.999808", + "Test::More" : "0.82", + "XSLoader" : "0", + "perl" : "5.006001" + } + } + }, + "release_status" : "stable", + "version" : "0.5006", + "x_serialization_backend" : "JSON::PP version 2.27400" +} diff --git a/META.yml b/META.yml new file mode 100644 index 0000000..ea7a689 --- /dev/null +++ b/META.yml @@ -0,0 +1,26 @@ +--- +abstract: unknown +author: + - 'Peter John Acklam ' +build_requires: + ExtUtils::MakeMaker: '0' +configure_requires: + ExtUtils::MakeMaker: '0' +dynamic_config: 1 +generated_by: 'ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 2.150010' +license: perl +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: '1.4' +name: Math-BigInt-FastCalc +no_index: + directory: + - t + - inc +requires: + Math::BigInt: '1.999808' + Test::More: '0.82' + XSLoader: '0' + perl: '5.006001' +version: '0.5006' +x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff --git a/Makefile.PL b/Makefile.PL new file mode 100644 index 0000000..c949f83 --- /dev/null +++ b/Makefile.PL @@ -0,0 +1,31 @@ +#!perl + +use strict; +use warnings; +use ExtUtils::MakeMaker; + +my %WriteMakefileArgs = + ( + 'NAME' => 'Math::BigInt::FastCalc', + 'VERSION_FROM' => 'lib/Math/BigInt/FastCalc.pm', + 'AUTHOR' => 'Peter John Acklam ', + 'MIN_PERL_VERSION' => 5.006001, + 'PREREQ_PM' => { + #'ExtUtils::MakeMaker' => 6.58, + 'XSLoader' => 0, + 'Test::More' => 0.82, + 'Math::BigInt' => 1.999808, + }, + 'LICENSE' => 'perl_5', + 'LIBS' => [''], # e.g., '-lm' + 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING' + 'INC' => '', # e.g., '-I/usr/include/other' + 'SIGN' => 1, + ); + +# Install over the core version? (Cf. CPAN RT #119199 and #119225.) + +$WriteMakefileArgs{INSTALLDIRS} = 'perl' + if $] >= 5.009003 && $] < 5.012; + +WriteMakefile(%WriteMakefileArgs); diff --git a/README b/README new file mode 100644 index 0000000..7f82eaf --- /dev/null +++ b/README @@ -0,0 +1,61 @@ +Math-BigInt-FastCalc + +Math::BigInt::FastCalc is a replacement library for Math::BigInt::Calc that +reimplements some of the Math::BigInt::Calc functions in XS. It can be used +via: + + use Math::BigInt lib => 'FastCalc'; + +This is always safe to use, since: + + * FastCalc is always faster than Calc, or equal in speed. It will be never + slower. + * If FastCalc is not installed, Math::BigInt will automatically use Calc. + +Of course, it also works with Math::BigFloat + + use Math::BigFloat lib => 'FastCalc'; + +or even Math::BigRat: + + use Math::BigRat lib => 'FastCalc'; + +Please have fun! + +INSTALLATION + +To install this module, unpack the distribution file, and run the following +commands: + + perl Makefile.PL + make + make test + make install + +SUPPORT AND DOCUMENTATION + +After installing, you can find documentation for these modules with the +perldoc command. + + perldoc Math::BigInt::FastCalc + +You can also look for information at: + + RT, CPAN's request tracker + http://rt.cpan.org/NoAuth/Bugs.html?Dist=Math-BigInt-FastCalc + + AnnoCPAN, Annotated CPAN documentation + http://annocpan.org/dist/Math-BigInt-FastCalc + + CPAN Ratings + http://cpanratings.perl.org/d/Math-BigInt-FastCalc + + Search CPAN + http://search.cpan.org/dist/Math-BigInt-FastCalc + +COPYRIGHT AND LICENCE + +Copyright 2007-2010 Peter John Acklam + +This program is free software; you can redistribute it and/or modify it +under the same terms as Perl itself. diff --git a/SIGNATURE b/SIGNATURE new file mode 100644 index 0000000..1f6629e --- /dev/null +++ b/SIGNATURE @@ -0,0 +1,146 @@ +This file contains message digests of all files listed in MANIFEST, +signed via the Module::Signature module, version 0.81. + +To verify the content in this distribution, first make sure you have +Module::Signature installed, then type: + + % cpansign -v + +It will check each file's integrity, as well as the signature's +validity. If "==> Signature verified OK! <==" is not displayed, +the distribution may already have been compromised, and you should +not run its Makefile.PL or Build.PL. + +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +SHA1 193aca3952e4af51b8490a8133b46bd1919c8346 CHANGES +SHA1 58d7a00ab2a9f5448a561d49b5a2077efa245ac7 CREDITS +SHA1 eea109be181996334ce12d3254eb17f1ebd69b9b FastCalc.xs +SHA1 d7c83d8f89b92a3262a01eb2778d39402e77263a LICENSE +SHA1 313717f5dc91de8b912b843ab856250965a66241 MANIFEST +SHA1 b84f4d19c93c52aa32e5145cabce4f7e1ccb85a9 MANIFEST.SKIP +SHA1 d517a913aceaa1b4ebe503f92a003f5a4b735923 META.json +SHA1 705110e0b6670158dd4ee50a397eb4c9acc36326 META.yml +SHA1 afeecbd665f9bfe8b001f9a043d964d3b6bc902f Makefile.PL +SHA1 e3642759d709f62d10e99d8480e0404ec48965c7 README +SHA1 ac0c8404bb7a1f8135c59a2b877a968f6e6e5f2e TODO +SHA1 43deda08b3f3414ebfaca287e8d8c4c3fc765ef5 lib/Math/BigInt/FastCalc.pm +SHA1 385cc7ed3bf3e6290640b9880445ca9a3dea629e t/00sig.t +SHA1 28eeae311120c5129c4fbd746f128aa1c7235c9e t/01load.t +SHA1 b2ed9206ca5b69ec3b8bbf850bf4b6dfde518e7e t/02pod.t +SHA1 db2a9660458731b43759c4ecfa2c2bb8815c7a42 t/03podcov.t +SHA1 e7eef054ec92ff5d259edfb9b39c932db74ffad3 t/Math/BigInt/Lib/TestUtil.pm +SHA1 245f3bff2049103fd3e78f491cf532c5d39d410a t/author-lib-arithmetic-binary-_add.dat +SHA1 fb019eeb1e92042a0997c37ac86072179138e7d0 t/author-lib-arithmetic-binary-_add.t +SHA1 d096727381e245cf51b952eefd3e95dfbc9c08f4 t/author-lib-arithmetic-binary-_div.dat +SHA1 992ae4dbcfd50603c4b612f90f7378a4b2c725db t/author-lib-arithmetic-binary-_div.t +SHA1 1061301e834c83427043e373b59162f594367ebd t/author-lib-arithmetic-binary-_gcd.dat +SHA1 72a8e176ee4d6e8532e8b5246d78f6ec5b37d9bf t/author-lib-arithmetic-binary-_gcd.t +SHA1 d39bf8a73a6059271f5c669c88f39f6305530213 t/author-lib-arithmetic-binary-_lcm.dat +SHA1 c07fd7b69df334ece22036ef50be2fcb6b3aa7a0 t/author-lib-arithmetic-binary-_lcm.t +SHA1 f5179d492bc455e95971b714078eadf29c41813e t/author-lib-arithmetic-binary-_log_int.t +SHA1 a28d97aed44453338896dc1da7a44e668446b00e t/author-lib-arithmetic-binary-_mod.dat +SHA1 ec8823914f5f52b80f2561849c9bd82bec708a10 t/author-lib-arithmetic-binary-_mod.t +SHA1 18871aee9027f01272891d94efb6107eea4770bb t/author-lib-arithmetic-binary-_modinv.dat +SHA1 eb1f6c3df1160bf9abe6637e69ee75d165341974 t/author-lib-arithmetic-binary-_modinv.t +SHA1 71492c41e07d6781da14071a7906e779ee458640 t/author-lib-arithmetic-binary-_mul.dat +SHA1 097b27d35c7d0891e1a45b632d7aaa493f30ddf5 t/author-lib-arithmetic-binary-_mul.t +SHA1 9881f81ca938c4e7a5e70def24e94c70d9e8120c t/author-lib-arithmetic-binary-_nok.dat +SHA1 5d76bdea8eb8e015af08e00ab28bc594bfe17f87 t/author-lib-arithmetic-binary-_nok.t +SHA1 7d46cd93fbd3a712870b74310d4b81a46e4d6ab2 t/author-lib-arithmetic-binary-_pow.t +SHA1 dd7fe3081c7b34d812bd2d63bd0a379336a6fb2f t/author-lib-arithmetic-binary-_root.dat +SHA1 c4dd1ca42582e4d27eb178c99461030b5129d2b1 t/author-lib-arithmetic-binary-_root.t +SHA1 208b3d832880b0173214a8d3e8ae758cc180bf20 t/author-lib-arithmetic-binary-_sub.dat +SHA1 dcf97b6990935de2ba015ae30c99f55f7a9211e1 t/author-lib-arithmetic-binary-_sub.t +SHA1 1a46baeec3de83d73e46be04e66734691e220ce6 t/author-lib-arithmetic-ternary-_lsft.dat +SHA1 639cd7ce96354e70c1676c7d6c165600d9a944a8 t/author-lib-arithmetic-ternary-_lsft.t +SHA1 1c840a9723e1966ffeae105251a5f8fb1bb222f3 t/author-lib-arithmetic-ternary-_modpow.dat +SHA1 38f26bbb4569e8350adefcf2a38e92e0c74168fd t/author-lib-arithmetic-ternary-_modpow.t +SHA1 d8906cbfdb4cd2b156dfd3b3e3ab8c9d6e9f2622 t/author-lib-arithmetic-ternary-_rsft.dat +SHA1 a1c31886c7bcd8ad37a87f506776c64974789da6 t/author-lib-arithmetic-ternary-_rsft.t +SHA1 691a1f55a902ade59462ffe8cb41b10e8b7921d3 t/author-lib-arithmetic-unary-_dec.dat +SHA1 d206db96ab625411354db49f3bad7925552f8de9 t/author-lib-arithmetic-unary-_dec.t +SHA1 acc3c86db320c6d7f60ac77c2416ed74528ad0f1 t/author-lib-arithmetic-unary-_dfac.dat +SHA1 4ced5df6d99a24180efe48e9818b97966937e0b3 t/author-lib-arithmetic-unary-_dfac.t +SHA1 0611b9f6f31bec9174d4cee4d20899e023feb0ca t/author-lib-arithmetic-unary-_fac.dat +SHA1 8e2f461b24972926f9777d792d96b20e4793eea9 t/author-lib-arithmetic-unary-_fac.t +SHA1 cc89be7f70dd75c8fef0cbf6f0bc24c9bd4b5ba2 t/author-lib-arithmetic-unary-_inc.dat +SHA1 ea13d6d205a217f2967c5cb0f42d57a971899583 t/author-lib-arithmetic-unary-_inc.t +SHA1 945458ba0c81213b1e7ee6a277cc47e425108f3e t/author-lib-arithmetic-unary-_sqrt.dat +SHA1 c635eaae7dc0bb20b244ee241a2d4cdf1ec6e25b t/author-lib-arithmetic-unary-_sqrt.t +SHA1 fa4e6baa4542ce315a681a6da751a37751e39ca6 t/author-lib-bitwise-_and.dat +SHA1 1ae05897cb2b17380ac0cb5bc743b76c68a4a563 t/author-lib-bitwise-_and.t +SHA1 8edc8041ff1e2cad7684faf9d183db5d68d50498 t/author-lib-bitwise-_or.dat +SHA1 d2ff3c35330c5af5ab1c24242aa9f8fdef23ec84 t/author-lib-bitwise-_or.t +SHA1 89dd08ab86c6193afcf2a5a6fee255e43bc7a380 t/author-lib-bitwise-_xor.dat +SHA1 bca2198fdd91f278e81b4aa1671a2949aba1913d t/author-lib-bitwise-_xor.t +SHA1 c776996cfe9671fff1eb9df983bd655d0bf60f1c t/author-lib-boolean-_is_even.t +SHA1 0c0468e2725f3cb3124ee2a939d6a28dd3434a97 t/author-lib-boolean-_is_odd.t +SHA1 a4bfd55d0cb512a467ef9bf114f89ef17f4e8bfc t/author-lib-boolean-_is_one.t +SHA1 ee980fafbb75da20f23d9bf14f658d673474e939 t/author-lib-boolean-_is_ten.t +SHA1 b6dc271b39eabd3092db3f1a089793e1ca17fc66 t/author-lib-boolean-_is_two.t +SHA1 4f1a4f23471e36a292ccbeb97449d7375a1821e1 t/author-lib-boolean-_is_zero.t +SHA1 c0a3c65cbdfdb8b6ea9eaa750953431d2497867c t/author-lib-comparison-_acmp.t +SHA1 fd1f43e10bd4307bc74ddabebacc7948ce390a1f t/author-lib-constructor-nullary-_one.t +SHA1 09741c9fc7acc33d8226c0233265f4fa22ce60c5 t/author-lib-constructor-nullary-_ten.t +SHA1 00eade15168d8d78b74c7d8222bcdc5b8d6770e9 t/author-lib-constructor-nullary-_two.t +SHA1 fe8ad1f86f3654be936a357a45ea829344d56033 t/author-lib-constructor-nullary-_zero.t +SHA1 6de6a0f39c22ca266139002bacb0f04c284fb4ef t/author-lib-constructor-unary-_copy.t +SHA1 c9539965e7ef898559b9f9b978aabb4429684cdd t/author-lib-constructor-unary-_from_bin.dat +SHA1 f8a5dc19fe94516d600b73cb976cacba3bcbf5cc t/author-lib-constructor-unary-_from_bin.t +SHA1 f6b48efb760df125dc6ff2775ca7ec2f682d73a7 t/author-lib-constructor-unary-_from_bytes.dat +SHA1 6affeb29514ab13420f35e0fb71c686a946c1dca t/author-lib-constructor-unary-_from_bytes.t +SHA1 a17c631c96d719880a0911475a7cf87b1d024257 t/author-lib-constructor-unary-_from_hex.dat +SHA1 b9d88ed48c3b3c522d77b2a130808f202a46986d t/author-lib-constructor-unary-_from_hex.t +SHA1 c4aee685339894d9975cd5b643869130e31e70c2 t/author-lib-constructor-unary-_from_oct.dat +SHA1 61251e95747dd62a00a34f5c90d4332a57e34d09 t/author-lib-constructor-unary-_from_oct.t +SHA1 79b7458aebac3683a72514ba5e33fdad11675c29 t/author-lib-constructor-unary-_new.t +SHA1 b78f1f41853952111950f7c9392686cce13b5283 t/author-lib-convert-number-_num.t +SHA1 25cb7ed724cecb287ae7cc1b52eeed6e8313b674 t/author-lib-convert-string-_as_bin.dat +SHA1 ea3aeb45c85887392876785e7363a8f15a9d2362 t/author-lib-convert-string-_as_bin.t +SHA1 23659b7433005b596a1f84cd2ae67ed0a6eb9836 t/author-lib-convert-string-_as_bytes.dat +SHA1 e3e2c831a31015d924eb577e708de724809e1234 t/author-lib-convert-string-_as_bytes.t +SHA1 d3ab340bf68cac2efcf28da0183851195aaa1a31 t/author-lib-convert-string-_as_hex.dat +SHA1 a37fa41344e4eb10c2dc7fa2d2f7e5d506f832f0 t/author-lib-convert-string-_as_hex.t +SHA1 1a321f2488a44cb420484a8b6daeaa80064e7cf1 t/author-lib-convert-string-_as_oct.dat +SHA1 37fff69d46848b664234c1c96121c9662d972e9d t/author-lib-convert-string-_as_oct.t +SHA1 7c1df5e0fba12e5ee3926500336883dd669fd55e t/author-lib-convert-string-_str.t +SHA1 4364a08e1bdeac38d8c8f01dc8d478d3c19938bb t/author-lib-convert-string-_to_bin.dat +SHA1 d06746d6a7e925b1bc41180691f8b932404506df t/author-lib-convert-string-_to_bin.t +SHA1 23659b7433005b596a1f84cd2ae67ed0a6eb9836 t/author-lib-convert-string-_to_bytes.dat +SHA1 4ca189d4b8daa7267a8b41895a7befacd9f3f7e0 t/author-lib-convert-string-_to_bytes.t +SHA1 9b266bc07af114945177a3da04eac28f2d9a60ae t/author-lib-convert-string-_to_hex.dat +SHA1 5b5b5dc2a8a28aab2543b7d817b9354e2153d7e5 t/author-lib-convert-string-_to_hex.t +SHA1 b87bd766abed476595a9d191016b3c16c3d01801 t/author-lib-convert-string-_to_oct.dat +SHA1 f33dbbccc1859928a41c5f9800f2fe40cce66abf t/author-lib-convert-string-_to_oct.t +SHA1 bcdaf0163a307403743343a99279b73fe5930e75 t/author-lib-misc-_check.t +SHA1 39ce4db5556175d7bb1d01b013dcb3566a0d7d7f t/author-lib-misc-api_version.t +SHA1 6db6bfd8e359eafac6310b404731898f9d4a22ed t/author-lib-property-_alen.t +SHA1 3b8c1e8f28192261387e91e120863e3ad5f20e16 t/author-lib-property-_digit.t +SHA1 6bb954e81dfd40e5685f0df883ba4b24df8bf6ce t/author-lib-property-_len.t +SHA1 c4f08d0be8e93d8b0f6ce3c0e76aef54e4350662 t/author-lib-property-_zeros.t +SHA1 8335b056d6202c39d89f9617d46a13c43c4177ce t/author-lib.ini +SHA1 518c629dc74fb7c1fef9ca1ebc0688db2964921d t/author-lib.t +SHA1 709cef0e13fd2a85f007482877bfdcf42bf5f8d4 t/bigfltpm.inc +SHA1 2018568f1d589d85b08a252e6479fc8c336bf74a t/bigfltpm.t +SHA1 f088abe3e0c21c9d9e54c8d91295edfe27fa63f2 t/bigintfc.t +SHA1 f05bb12c2eaafa41b4409146cc160d37d8424670 t/bigintpm.inc +SHA1 9d42bf14bc234f81254fbbd886269262e29b8592 t/bigintpm.t +SHA1 acd6b8d3c8a9a46831d4d75f998cd05cb6384d11 t/biglog.t +SHA1 53ddb359d85e401784b6bf57921328eca5642861 t/bigroot.t +SHA1 de0d8dd9808b14376e8590aa2d655958e3963f17 t/bootstrap.t +SHA1 fb4dce179529973a5e0691af4ce5246bc2e65038 t/leak.t +SHA1 cf9debc0777b67a2f2b179bf0502c9d498162e63 t/mbi_rand.t +SHA1 74a620fa3317abc2b1383d9194390d30df64bbf0 t/mbimbf.inc +SHA1 6c804dc12b26f18c5d9416119b2d62783660e07d t/mbimbf.t +-----BEGIN PGP SIGNATURE----- + +iQEcBAEBAgAGBQJYdnvVAAoJEGcmPl2fr1664XIH/10fRRtzxmxBvGhxvmIpCh6E +gy1Sn+DB/oZ4KRkIPsIKRZ7hCyTDVkyMlxPIXk0W3B+zmDQGd9TCuAp9oS/3eNMb +MVIrU6MxaKqJ2RSnLZq+nvu4dHBwIlp9F09Ane/DxOT1sHvyTVgwxZ+8hEI8gN2Z +wKiOQNQrIqUHZ18BGO4uaghpdgw+1YLWQMprS41q3EgGs6iRrii6wJzDohkZyAub +5MmQ63uvVf14VYXdBXNrXkkYbB8IAfWPBMRt2jyR8iFu0h/EX/dQzgX08vcjGYwx +klc06GSlaCsg/FA/yTscS2Ms/kcnTTdhXamWqGT/RLFPuxp3gFgtWJXbNWg/byQ= +=0ugh +-----END PGP SIGNATURE----- diff --git a/TODO b/TODO new file mode 100644 index 0000000..da80a16 --- /dev/null +++ b/TODO @@ -0,0 +1,6 @@ +The following list is not up to date: + +* fix t/leak.t +* put _str() into XS +* put _add()/_sub() into XS +* put all the other routines into XS diff --git a/lib/Math/BigInt/FastCalc.pm b/lib/Math/BigInt/FastCalc.pm new file mode 100644 index 0000000..8d0ba40 --- /dev/null +++ b/lib/Math/BigInt/FastCalc.pm @@ -0,0 +1,168 @@ +package Math::BigInt::FastCalc; + +use 5.006; +use strict; +use warnings; + +use Math::BigInt::Calc 1.999801; + +our @ISA = qw< Math::BigInt::Calc >; + +our $VERSION = '0.5006'; + +############################################################################## +# global constants, flags and accessory + +# announce that we are compatible with MBI v1.83 and up +sub api_version () { 2; } + +# use Calc to override the methods that we do not provide in XS + +require XSLoader; +XSLoader::load(__PACKAGE__, $VERSION, Math::BigInt::Calc->_base_len()); + +############################################################################## +############################################################################## + +1; + +__END__ + +=pod + +=head1 NAME + +Math::BigInt::FastCalc - Math::BigInt::Calc with some XS for more speed + +=head1 SYNOPSIS + + # to use it with Math::BigInt + use Math::BigInt lib => 'FastCalc'; + + # to use it with Math::BigFloat + use Math::BigFloat lib => 'FastCalc'; + + # to use it with Math::BigRat + use Math::BigRat lib => 'FastCalc'; + +=head1 DESCRIPTION + +Math::BigInt::FastCalc inherits from Math::BigInt::Calc. + +Provides support for big integer calculations. Not intended to be used by +other modules. Other modules which sport the same functions can also be used +to support Math::BigInt, like L or L. + +In order to allow for multiple big integer libraries, Math::BigInt was +rewritten to use library modules for core math routines. Any module which +follows the same API as this can be used instead by using the following: + + use Math::BigInt lib => 'libname'; + +'libname' is either the long name ('Math::BigInt::Pari'), or only the short +version like 'Pari'. To use this library: + + use Math::BigInt lib => 'FastCalc'; + +=head1 STORAGE + +Math::BigInt::FastCalc works exactly like Math::BigInt::Calc. Numbers are +stored in decimal form chopped into parts. + +=head1 METHODS + +The following functions are now implemented in FastCalc.xs: + + _is_odd _is_even _is_one _is_zero + _is_two _is_ten + _zero _one _two _ten + _acmp _len + _inc _dec + __strip_zeros _copy + +=head1 BUGS + +Please report any bugs or feature requests to +C, or through the web interface at +L +(requires login). +We will be notified, and then you'll automatically be notified of progress on +your bug as I make changes. + +=head1 SUPPORT + +You can find documentation for this module with the perldoc command. + + perldoc Math::BigInt::FastCalc + +You can also look for information at: + +=over 4 + +=item * RT: CPAN's request tracker + +L + +=item * AnnoCPAN: Annotated CPAN documentation + +L + +=item * CPAN Ratings + +L + +=item * Search CPAN + +L + +=item * CPAN Testers Matrix + +L + +=item * The Bignum mailing list + +=over 4 + +=item * Post to mailing list + +C + +=item * View mailing list + +L + +=item * Subscribe/Unsubscribe + +L + +=back + +=back + +=head1 LICENSE + +This program is free software; you may redistribute it and/or modify it under +the same terms as Perl itself. + +=head1 AUTHORS + +Original math code by Mark Biggar, rewritten by Tels L +in late 2000. +Separated from BigInt and shaped API with the help of John Peacock. + +Fixed, sped-up and enhanced by Tels http://bloodgate.com 2001-2003. +Further streamlining (api_version 1 etc.) by Tels 2004-2007. + +Bug-fixing by Peter John Acklam Epjacklam@online.noE 2010-2016. + +=head1 SEE ALSO + +L for a description of the API. + +Alternative libraries L, L, and +L. + +Some of the modules that use these libraries L, +L, and L. + +=cut diff --git a/t/00sig.t b/t/00sig.t new file mode 100644 index 0000000..c16ed5e --- /dev/null +++ b/t/00sig.t @@ -0,0 +1,37 @@ +#!perl + +use strict; # restrict unsafe constructs +use warnings; # enable optional warnings + +use Test::More; + +if (!$ENV{TEST_SIGNATURE}) { + plan skip_all => + "Set the environment variable TEST_SIGNATURE to enable this test."; +} +elsif (!eval { require Module::Signature; 1 }) { + plan skip_all => + "Next time around, consider installing Module::Signature, ". + "so you can verify the integrity of this distribution."; +} +elsif (!-e 'SIGNATURE') { + plan skip_all => "SIGNATURE not found"; +} +elsif (!-s 'SIGNATURE') { + plan skip_all => "SIGNATURE file empty"; +} +elsif (!eval { require Socket; Socket::inet_aton('pool.sks-keyservers.net') }) { + plan skip_all => "Cannot connect to the keyserver to check module ". + "signature"; +} +else { + plan tests => 1; +} + +my $ret = Module::Signature::verify(); +SKIP: { + skip "Module::Signature cannot verify", 1 + if $ret eq Module::Signature::CANNOT_VERIFY(); + + cmp_ok $ret, '==', Module::Signature::SIGNATURE_OK(), "Valid signature"; +} diff --git a/t/01load.t b/t/01load.t new file mode 100644 index 0000000..dee6f70 --- /dev/null +++ b/t/01load.t @@ -0,0 +1,26 @@ +#!perl + +use strict; # restrict unsafe constructs +use warnings; # enable optional warnings + +use Test::More tests => 2; + +BEGIN { + use_ok('Math::BigInt'); + use_ok('Math::BigInt::FastCalc'); +}; + +my @mods = ('Math::BigInt', + 'Math::BigInt::Calc', + 'Math::BigInt::FastCalc', + ); + +diag(""); +diag("Testing with Perl $], $^X"); +diag(""); +diag(sprintf("%12s %s\n", 'Version', 'Module')); +diag(sprintf("%12s %s\n", '-------', '------')); +for my $mod (@mods) { + diag(sprintf("%12s %s\n", $mod -> VERSION(), $mod)); +} +diag(""); diff --git a/t/02pod.t b/t/02pod.t new file mode 100644 index 0000000..b58930a --- /dev/null +++ b/t/02pod.t @@ -0,0 +1,14 @@ +#!perl + +use strict; # restrict unsafe constructs +use warnings; # enable optional warnings + +use Test::More; + +# Ensure a recent version of Test::Pod + +my $min_tp = 1.22; +eval "use Test::Pod $min_tp"; +plan skip_all => "Test::Pod $min_tp required for testing POD" if $@; + +all_pod_files_ok(); diff --git a/t/03podcov.t b/t/03podcov.t new file mode 100644 index 0000000..6dd79c7 --- /dev/null +++ b/t/03podcov.t @@ -0,0 +1,31 @@ +#!perl + +use strict; # restrict unsafe constructs +use warnings; # enable optional warnings + +use Test::More; + +# Ensure a recent version of Test::Pod::Coverage + +my $min_tpc = 1.08; +eval "use Test::Pod::Coverage $min_tpc"; +plan skip_all => "Test::Pod::Coverage $min_tpc required for testing POD coverage" + if $@; + +# Test::Pod::Coverage doesn't require a minimum Pod::Coverage version, +# but older versions don't recognize some common documentation styles + +my $min_pc = 0.18; +eval "use Pod::Coverage $min_pc"; +plan skip_all => "Pod::Coverage $min_pc required for testing POD coverage" + if $@; + +my $trustme = { + private => [ qr/^__/, + qr/^(un)?import$/, + qr/^bootstrap$/, + ], + coverage_class => 'Pod::Coverage::CountParents', + }; + +all_pod_coverage_ok($trustme, "All modules are covered"); diff --git a/t/Math/BigInt/Lib/TestUtil.pm b/t/Math/BigInt/Lib/TestUtil.pm new file mode 100644 index 0000000..cb24e25 --- /dev/null +++ b/t/Math/BigInt/Lib/TestUtil.pm @@ -0,0 +1,39 @@ +#!perl + +package Math::BigInt::Lib::TestUtil; + +use strict; +use warnings; + +use Exporter; + +our @ISA = qw< Exporter >; +our @EXPORT_OK = qw< randstr >; + +# randstr NUM, BASE +# +# Generate a string representing a NUM digit number in base BASE. + +sub randstr { + die "randstr: wrong number of input arguments\n" + unless @_ == 2; + + my $n = shift; + my $b = shift; + + die "randstr: first input argument must be >= 0" + unless $n >= 0; + die "randstr: second input argument must be in the range 2 .. 36\n" + unless 2 <= $b && $b <= 36; + + return '' if $n == 0; + + my @dig = (0 .. 9, 'a' .. 'z'); + + my $str = $dig[ 1 + int rand ($b - 1) ]; + $str .= $dig[ int rand $b ] for 2 .. $n; + + return $str; +} + +1; diff --git a/t/author-lib-arithmetic-binary-_add.dat b/t/author-lib-arithmetic-binary-_add.dat new file mode 100644 index 0000000..c1f2d58 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_add.dat @@ -0,0 +1,576 @@ +38:95:133 +51:582:633 +77:3259:3336 +77:48939:49016 +87:785746:785833 +51:8013093:8013144 +17:84981862:84981879 +73:518093993:518094066 +30:2050839865:2050839895 +47:29590479892:29590479939 +82:881113766641:881113766723 +94:2365621927473:2365621927567 +42:57129686171278:57129686171320 +97:714600987409929:714600987410026 +16:9193587152443802:9193587152443818 +69:34574756119616287:34574756119616356 +63:129203528618918440:129203528618918503 +89:4564395485854842757:4564395485854842846 +52:43281574081450827737:43281574081450827789 +64:879882042331215118762:879882042331215118826 +99:9815890112038293073519:9815890112038293073618 +87:32765771533116119241571:32765771533116119241658 +94:639148516878340632189500:639148516878340632189594 +69:9647162707796234310274816:9647162707796234310274885 +543:95:638 +311:941:1252 +454:4101:4555 +869:68317:69186 +742:564815:565557 +611:7399862:7400473 +331:19658460:19658791 +442:714143728:714144170 +168:2386517046:2386517214 +210:99110091792:99110092002 +588:826300028675:826300029263 +403:4410735238882:4410735239285 +437:92091100683922:92091100684359 +828:658015468778579:658015468779407 +947:4220984310162412:4220984310163359 +506:26738778699642029:26738778699642535 +949:890230005532953486:890230005532954435 +568:3922825066173932437:3922825066173933005 +628:62505015474366834170:62505015474366834798 +730:132028171858756066047:132028171858756066777 +883:4737039980787213331336:4737039980787213332219 +345:14372745729267444679207:14372745729267444679552 +424:414010976463363950688976:414010976463363950689400 +459:9223329874769558018680399:9223329874769558018680858 +9459:77:9536 +2149:417:2566 +9595:9000:18595 +1204:77327:78531 +7304:496118:503422 +4108:2927745:2931853 +8146:46777007:46785153 +3504:647771524:647775028 +3253:5801007851:5801011104 +6648:35280178805:35280185453 +1417:194886926548:194886927965 +5326:2990614262187:2990614267513 +3443:55183342419999:55183342423442 +3392:633446883541448:633446883544840 +7999:9817088827014053:9817088827022052 +6677:86655547463194854:86655547463201531 +7836:469808383526938388:469808383526946224 +8832:5592181420493197656:5592181420493206488 +3921:55149516509993724639:55149516509993728560 +4231:398160871733741326661:398160871733741330892 +2864:6139432649736846839193:6139432649736846842057 +6294:70861998413748565645930:70861998413748565652224 +4628:833664652049286387409906:833664652049286387414534 +7510:9968043041021011411794368:9968043041021011411801878 +17797:39:17836 +37507:562:38069 +66551:5342:71893 +62475:16938:79413 +17501:407729:425230 +43158:7877608:7920766 +31560:38917207:38948767 +75914:676435357:676511271 +19667:7374678858:7374698525 +63995:27192208612:27192272607 +19778:388411234299:388411254077 +14028:2114834510710:2114834524738 +79516:16409430525902:16409430605418 +22272:814912250681150:814912250703422 +99758:6040319323078675:6040319323178433 +67178:63754174502512454:63754174502579632 +41985:717742466744115882:717742466744157867 +30684:1782105050492224367:1782105050492255051 +68343:63548492877548405564:63548492877548473907 +93568:592216777063702842047:592216777063702935615 +86169:8092452505794800709192:8092452505794800795361 +46664:21253946235709418631717:21253946235709418678381 +41166:735283246010825732902491:735283246010825732943657 +50860:7012478285453214991051668:7012478285453214991102528 +132631:15:132646 +322798:541:323339 +299313:9249:308562 +199648:81737:281385 +521850:813289:1335139 +774280:7117493:7891773 +229030:33008889:33237919 +559752:714115421:714675173 +576782:9877822769:9878399551 +455065:94261465941:94261921006 +511413:371668375932:371668887345 +530296:6840272199342:6840272729638 +976579:43907494395463:43907495372042 +995925:666602750157219:666602751153144 +767279:6216665892203900:6216665892971179 +934690:96884761479803369:96884761480738059 +580832:817448168323860218:817448168324441050 +973282:2295757143807389695:2295757143808362977 +255586:11815597744558097544:11815597744558353130 +668022:463699427795924643173:463699427795925311195 +756100:9363304141768984233382:9363304141768984989482 +293890:26183307454183245836187:26183307454183246130077 +807549:894831758902262698143188:894831758902262698950737 +309216:4169368097765789401124419:4169368097765789401433635 +5913690:75:5913765 +5083204:448:5083652 +9750673:1913:9752586 +9466811:55702:9522513 +5229727:357671:5587398 +2006436:6290660:8297096 +5241050:69129573:74370623 +6476228:328916590:335392818 +4709008:9456386627:9461095635 +5378199:14393183642:14398561841 +5704852:626353795303:626359500155 +3364623:5176169832029:5176173196652 +1157104:62569330160722:62569331317826 +7879849:431827923085798:431827930965647 +9497770:9083627021512724:9083627031010494 +3493758:29646705240437970:29646705243931728 +5394256:370153101741238621:370153101746632877 +5497457:1568010330580995070:1568010330586492527 +2167224:20700004571464145634:20700004571466312858 +8080930:122282277162815310489:122282277162823391419 +2562132:5332464226618516636463:5332464226618519198595 +6151154:71726351080048278299890:71726351080048284451044 +6155998:491199108757670858241914:491199108757670864397912 +1776162:1486504762310437887099422:1486504762310437888875584 +67627136:74:67627210 +15857075:498:15857573 +71825805:2689:71828494 +15440325:41943:15482268 +47185724:310373:47496097 +41476221:7509269:48985490 +93251524:64162613:157414137 +27526215:745747577:773273792 +55575841:1299378605:1354954446 +95203435:51811311183:51906514618 +80186920:522069567260:522149754180 +45176756:2522528480337:2522573657093 +77144041:51624637410498:51624714554539 +93667423:522097325144134:522097418811557 +97857782:1132628083803050:1132628181660832 +51695405:18706988852090991:18706988903786396 +44120134:524028427672515890:524028427716636024 +30134935:7904023062373301655:7904023062403436590 +24333530:39527588659527008512:39527588659551342042 +14877216:519496083150274285117:519496083150289162333 +20697269:3288753338559466298974:3288753338559486996243 +79700606:50528795162107243563443:50528795162107323264049 +47254378:811355293457227127242956:811355293457227174497334 +71068213:3493394877495298284247417:3493394877495298355315630 +665232890:62:665232952 +743586690:749:743587439 +838270608:1349:838271957 +615183383:29123:615212506 +865735549:178624:865914173 +587794231:7599478:595393709 +263590918:23598444:287189362 +324000586:484951280:808951866 +615305242:8043210762:8658516004 +285636445:41334672687:41620309132 +796629907:287845927412:288642557319 +403314958:5928682554001:5929085868959 +295082893:17959476461053:17959771543946 +669189855:276689362857396:276690032047251 +307819887:7080057770162561:7080058077982448 +178924573:73206798479607154:73206798658531727 +684330563:895415107766644457:895415108450975020 +110895291:1527441236096786813:1527441236207682104 +139998623:37537035424603093662:37537035424743092285 +975325452:132352644838529647347:132352644839504972799 +710434638:5995165437482418378406:5995165437483128813044 +307423685:54615252244279083824283:54615252244279391247968 +354177665:143314873981406459164372:143314873981406813342037 +647407055:5539034701295398394506529:5539034701295399041913584 +2911696780:80:2911696860 +3411540795:610:3411541405 +4692231106:6079:4692237185 +2028534377:14705:2028549082 +2450413760:569579:2450983339 +8551236326:1118859:8552355185 +1384081964:39828728:1423910692 +3450906868:220323232:3671230100 +5768043138:5218652851:10986695989 +2504999290:97314069135:99819068425 +2110879419:701033225704:703144105123 +6640865137:4513745825803:4520386690940 +8308615763:26449658816453:26457967432216 +2264823766:526492871950980:526495136774746 +1875480191:2305928358015944:2305930233496135 +2088744444:42441580981294501:42441583070038945 +1804378467:674686951483865830:674686953288244297 +3891042279:8234586806703117787:8234586810594160066 +3631368829:74123755131914729748:74123755135546098577 +1107519346:961275538810824262488:961275538811931781834 +7837160335:3327196843569127986805:3327196843576965147140 +2269979592:43189607381864052248054:43189607381866322227646 +3554155764:376995601544081173565483:376995601544084727721247 +2330014325:6240642076808412869063588:6240642076808415199077913 +47521857298:98:47521857396 +29855709998:133:29855710131 +26059343189:8890:26059352079 +76220627648:79014:76220706662 +98869754891:488859:98870243750 +36546005659:7732753:36553738412 +60518586003:50968560:60569554563 +25422482306:986326526:26408808832 +58827043678:3262348615:62089392293 +13914559309:10856765235:24771324544 +63284387910:421539369103:484823757013 +92879359350:6740000506016:6832879865366 +59428223914:16468941035462:16528369259376 +92734144387:732822963251536:732915697395923 +19505171630:1841800444202701:1841819949374331 +43837430087:55282967691699730:55283011529129817 +87841633084:860176176531278839:860176264372911923 +89158750064:6890425624128678624:6890425713287428688 +60606782936:83084605697981245853:83084605758588028789 +34000632864:680306029462456383806:680306029496457016670 +80654953026:1656699497278453991955:1656699497359108944981 +79282191200:15784114706496076879577:15784114706575359070777 +20550390726:719508822656923966870644:719508822656944517261370 +46843806797:8206390444376816870432577:8206390444376863714239374 +203804183732:59:203804183791 +881354617654:207:881354617861 +118912306453:7389:118912313842 +630665273332:42836:630665316168 +331224282098:135774:331224417872 +196617834651:9962689:196627797340 +520953769460:72720610:521026490070 +540643129023:226865287:540869994310 +319589907148:9148627592:328738534740 +548370065479:35479801564:583849867043 +885165593394:712376729597:1597542322991 +952742027760:4930416376061:5883158403821 +960843001679:25833194217774:26794037219453 +955579154217:538965952443465:539921531597682 +216103433714:1461716588666077:1461932692099791 +421396827096:56138655828538750:56139077225365846 +240398545338:873124571000103763:873124811398649101 +789981933788:4400510409611681516:4400511199593615304 +537889589554:90758404931454976687:90758405469344566241 +688891346078:391296683808766851832:391296684497658197910 +352790936363:1493425087356870797973:1493425087709661734336 +548154313471:80146219324931026684054:80146219325479180997525 +383298201579:421809518573793184629579:421809518574176482831158 +418672369800:5212629249895037301938500:5212629249895455974308300 +4926362728296:16:4926362728312 +9816116647030:356:9816116647386 +7154921421405:4656:7154921426061 +1673041573729:79711:1673041653440 +8309789506219:226002:8309789732221 +9405874378302:7538593:9405881916895 +9819543125670:54322790:9819597448460 +3385431210527:302697080:3385733907607 +5181994517394:2727767603:5184722284997 +2050836592675:84313229390:2135149822065 +9244749302254:314359974808:9559109277062 +8328912197651:9228375835982:17557288033633 +3486674870939:63945828926868:67432503797807 +1078638847336:799570811265338:800649450112674 +9509676791835:3666946266300223:3676455943092058 +8855783606803:34300430744120935:34309286527727738 +5386727033022:206306522801062928:206311909528095950 +6936577607444:8274049520725934612:8274056457303542056 +7774050529704:94491102483090006369:94491110257140536073 +6437618088389:196511217671768864466:196511224109386952855 +4868690783597:1855364786767055789814:1855364791635746573411 +1294741457708:11419155121805243466589:11419155123099984924297 +7686674301597:481340853638404528982321:481340853646091203283918 +5748891305348:7651012123264148371393799:7651012123269897262699147 +95939441191683:19:95939441191702 +61786336010685:483:61786336011168 +61746183009943:6085:61746183016028 +35781501403274:52148:35781501455422 +73188326495531:537033:73188327032564 +64954655577396:7286147:64954662863543 +88045012011646:74965568:88045086977214 +19814370921064:153932353:19814524853417 +94399717056242:2923189115:94402640245357 +73842612582419:72059819764:73914672402183 +45465937108493:561044808473:46026981916966 +98366213885414:2341918580988:100708132466402 +55294115994704:58748467290444:114042583285148 +21852222846305:265872137113269:287724359959574 +45808622489742:6701017272505142:6746825894994884 +77897680155120:31129557129944474:31207454810099594 +21275318519666:230889315659949608:230910590978469274 +66600881993609:4859480276943369093:4859546877825362702 +40600605931222:77157735792545585734:77157776393151516956 +19743948720620:955249542708565034171:955249562452513754791 +69340559803093:6009099389988142357876:6009099459328702160969 +28297968959799:75117085555736425359203:75117085584034394319002 +82048941595545:692184003711664542958934:692184003793713484554479 +94904585143508:2738931273415411915470603:2738931273510316500614111 +442907756480959:82:442907756481041 +178462823527746:491:178462823528237 +958538725918951:4043:958538725922994 +695612829171856:68780:695612829240636 +697315011539971:274630:697315011814601 +750139099147100:5718750:750139104865850 +299671952863561:54803458:299672007667019 +311893449913439:146111337:311893596024776 +288450232716997:3466320301:288453699037298 +135963378508569:74264847544:136037643356113 +251120981256365:904178412927:252025159669292 +458678954528654:6851233122104:465530187650758 +298135357329571:32417062880185:330552420209756 +293672873410880:851005726763514:1144678600174394 +970282071415966:1776232765771656:2746514837187622 +388501615416706:40827011185413388:41215512800830094 +105960332687526:749884726692585168:749990687025272694 +317832744061140:8249358420973227800:8249676253717288940 +867879052015004:41670028247026712672:41670896126078727676 +844858850496026:725205253097414832996:725206097956265329022 +315914796180158:2456655025867968991912:2456655341782765172070 +561914227465634:14602911326439012541126:14602911888353240006760 +693846259553834:995200889549233370079732:995200890243079629633566 +289019500698574:1921607759514607080118840:1921607759803626580817414 +6586745434167218:79:6586745434167297 +3874061842555415:420:3874061842555835 +7113609043545984:1385:7113609043547369 +3025828750020285:46250:3025828750066535 +2789476696435345:126974:2789476696562319 +5770375998928322:4311827:5770376003240149 +7270576569761040:55986361:7270576625747401 +3927169190480660:754319658:3927169944800318 +6570496777698913:9617185382:6570506394884295 +9244767746865106:76132957278:9244843879822384 +8451059713153207:683622004271:8451743335157478 +1634476262414891:9739219040751:1644215481455642 +4548844165105896:80130715172201:4628974880278097 +8148285943170373:375291533410713:8523577476581086 +2193714685151355:6146103542951725:8339818228103080 +7335486858396207:69014070008603427:76349556866999634 +3329351849143829:220458728804573015:223788080653716844 +4019720020715369:4822584106321388029:4826603826342103398 +4282642147391871:67919169959050015185:67923452601197407056 +7399786458103667:895259886998644812517:895267286785102916184 +9080167559868583:6071679339552366256441:6071688419719926125024 +5853817187467547:37090184392713544722637:37090190246530732190184 +1199641686435023:918841226745049845682115:918841227944691532117138 +6982926101101493:6215447157221713524848119:6215447164204639625949612 +33880586973540105:99:33880586973540204 +56971064008907582:442:56971064008908024 +67560902118282259:7345:67560902118289604 +10564773217702105:89862:10564773217791967 +92977495594526378:669068:92977495595195446 +52451077857053795:5885475:52451077862939270 +60041179729484951:93320099:60041179822805050 +41431875220597760:360328139:41431875580925899 +85390906627142973:2660327797:85390909287470770 +45895929860960606:82132198986:45896011993159592 +90069248292517442:189059168678:90069437351686120 +99327917547688057:5409849814565:99333327397502622 +72601177107831311:52522205456695:72653699313288006 +95017035417633240:690361970660444:95707397388293684 +72948380514228342:9836109479775008:82784489994003350 +50346569218111194:46718698247608190:97065267465719384 +85573987119347048:431446756223737442:517020743343084490 +74918921984864492:4586237687231475590:4661156609216340082 +18994961090896048:65977755560479780586:65996750521570676634 +54212096672696500:557647750259775614200:557701962356448310700 +89647735133341810:2432260725784762339708:2432350373519895681518 +44438572952070806:76877039567515937815104:76877084006088889885910 +25310571830388872:220571264682979455399436:220571289993551285788308 +81653662614001616:7922695925583375060978442:7922696007237037674980058 +564129680773681620:72:564129680773681692 +273559364257334305:989:273559364257335294 +378401007153901687:6968:378401007153908655 +264366044750850589:22447:264366044750873036 +687097330601219006:106632:687097330601325638 +873120763430274707:3952148:873120763434226855 +659404740372285895:15366957:659404740387652852 +858086664758222576:512709623:858086665270932199 +277944987267676397:4417866870:277944991685543267 +978451541324238030:93879626336:978451635203864366 +571433400428371683:632075830424:571434032504202107 +435289772981320636:4825351708653:435294598333029289 +891700558675626112:53989487948189:891754548163574301 +837798895801703812:578212247038430:838377108048742242 +575671434863197896:6809748102182594:582481182965380490 +458405761462120524:77495684183111184:535901445645231708 +423795116331610954:726934288879987438:1150729405211598392 +118368788986646104:9767225868273711314:9885594657260357418 +137287639015303388:47995009574982402294:48132297213997705682 +207298911052769184:813014915272906139482:813222214183958908666 +490332708518219428:6449742008810967273470:6450232341519485492898 +274052610854248936:71877512830839220757868:71877786883450075006804 +400053018784603440:885915131167680957136746:885915531220699741740186 +436051821788532020:1941271107269048062925070:1941271543320869851457090 +3014582907476113784:89:3014582907476113873 +2784787897474980629:345:2784787897474980974 +9271985251013682281:8160:9271985251013690441 +3054221451767246589:88100:3054221451767334689 +4336190857240022737:462759:4336190857240485496 +7110648843451193090:3253109:7110648843454446199 +9225379379411686480:55450300:9225379379467136780 +4999588793325843917:603087117:4999588793928931034 +3781857500028475182:4101588644:3781857504130063826 +1854196791009998019:54787289997:1854196845797288016 +3896275114575246108:628921094762:3896275743496340870 +4903608702114032649:9562072973662:4903618264187006311 +2734040659867770778:48467380717646:2734089127248488424 +6721210251407333663:580531121728113:6721790782529061776 +6737475239570438419:3815986340711813:6741291225911150232 +2996674105940141127:87750140932050619:3084424246872191746 +4505528465748852589:708240326313438319:5213768792062290908 +7724435405316634177:3871355912314925411:11595791317631559588 +5349831095183443541:93446228346476122519:98796059441659566060 +6842914129254171561:721989182463274844733:728832096592529016294 +1309892798362694591:8291677969468375733777:8292987862266738428368 +6680808419803274675:81693655723638971634469:81700336532058774909144 +3845259086432056039:345729713345378356284793:345733558604464788340832 +4810135106142332763:6892397561842137305798925:6892402371977243448131688 +45123364737125838607:33:45123364737125838640 +54090731930833550684:547:54090731930833551231 +54174780072448771104:7050:54174780072448778154 +26883263877354327656:62224:26883263877354389880 +94091167085383231685:471795:94091167085383703480 +99373324792379540141:1469993:99373324792381010134 +18267055785591681422:92634592:18267055785684316014 +24420554980268571542:317447567:24420554980586019109 +28473905620585043325:6909518330:28473905627494561655 +72996010120415281544:63473818266:72996010183889099810 +11318498466544959527:825790675132:11318499292335634659 +70611477733898881179:3721334277824:70611481455233159003 +54085263322445093588:85942582465063:54085349265027558651 +43905610924320212803:888191622020917:43906499115942233720 +18021757345909237111:7602198130535049:18029359544039772160 +83061914270387352299:13231051706819487:83075145322094171786 +69606002940165683441:119295434012060563:69725298374177744004 +88488757097920513029:6265599204171873991:94754356302092387020 +59848299936217803865:41620752506234357229:101469052442452161094 +19932325601235556079:168454181854515061953:188386507455750618032 +15495981843710919651:7497997909517802085589:7513493891361513005240 +86934286700879594025:60347855607292018762635:60434789893992898356660 +85148093127215474877:375262271857426991595071:375347419950554207069948 +34066120512372499601:7041762838436453274931251:7041796904556965647430852 +301492478607448951205:60:301492478607448951265 +626159810656892084109:751:626159810656892084860 +116869082683733007342:4905:116869082683733012247 +783795709573932421251:23403:783795709573932444654 +172627403765817332188:408067:172627403765817740255 +704870409283928271305:1620970:704870409283929892275 +634124382550275049562:24568650:634124382550299618212 +195461848734224187646:420535052:195461848734644722698 +387657849167525876347:9003769504:387657849176529645851 +143431997755497449998:95713949554:143431997851211399552 +110355354749325650418:535748806856:110355355285074457274 +584051741444091726167:1107082145345:584051742551173871512 +417466798489758145658:66889275670014:417466865379033815672 +797358684365884894161:476240275458419:797359160606160352580 +753788663176948292263:8040180512774969:753796703357461067232 +551056520094492494619:67128980564607693:551123649075057102312 +185524386810973785807:541960141851070369:186066346952824856176 +303303816418135022019:8738649374506915253:312042465792641937272 +852495733433086795767:78074947571099953417:930570681004186749184 +997465331674817142173:699220352420858080799:1696685684095675222972 +893917817891187754865:6543267021930792869395:7437184839821980624260 +502341234725678398085:73396911060241554246361:73899252294967232644446 +249771191177498153915:635242800245435624100673:635492571436613122254588 +324652375413295863395:5925375509448690556711765:5925700161824103852575160 +1789936140077116147351:33:1789936140077116147384 +8576606456390085467648:291:8576606456390085467939 +1584719880662477426493:7886:1584719880662477434379 +8688829064889303339870:75015:8688829064889303414885 +4694164392882910429875:284804:4694164392882910714679 +5366697690794778938828:1946663:5366697690794780885491 +7579145499969571981945:78319638:7579145499969650301583 +4828260696984229733578:892075134:4828260696985121808712 +3341734213317143512079:9976898757:3341734213327120410836 +1147088609879452218328:84715883196:1147088609964168101524 +4327910719446801850613:922094877734:4327910720368896728347 +2218655590607882369654:6898605706884:2218655597506488076538 +7119488488812331075243:35351972027922:7119488524164303103165 +4790200368214597220734:938624195700584:4790201306838792921318 +2270929245883198267490:7573067834475244:2270936818951032742734 +1228104498958014747014:46331747515978416:1228150830705530725430 +4315916567543335923946:101299387789318836:4316017866931125242782 +7558063010997766677134:5324820726670614264:7563387831724437291398 +5315047196190310638460:17002833449040923798:5332050029639351562258 +1318444185297526565952:995029431178219490554:2313473616475746056506 +6715914371472445472068:5863936113438544261022:12579850484910989733090 +4111966649130116831880:51179853760755126098050:55291820409885242929930 +4060650888268892915724:803193447548221641747366:807254098436490534663090 +4362891179467949115856:3821323522018170950552842:3825686413197638899668698 +63289288480467904289304:57:63289288480467904289361 +88294395673367816498229:733:88294395673367816498962 +69841732960055071468384:8413:69841732960055071476797 +54140984260688785569951:25474:54140984260688785595425 +38806440777757272682757:442989:38806440777757273125746 +50801909009926816159174:7882236:50801909009926824041410 +97748354956044360567253:50576303:97748354956044411143556 +27720358992253790240553:612097156:27720358992254402337709 +20779576706813437840350:9430164492:20779576706822868004842 +93414238854820197381427:39041039727:93414238854859238421154 +28307636688265854714444:747639741250:28307636689013494455694 +40958918618775462619385:9857607115393:40958918628633069734778 +38420856925894337036376:97553818639721:38420857023448155676097 +66812100451837178340086:518156107831712:66812100969993286171798 +17248604330878722713946:7915241528352932:17248612246120251066878 +56600734627580566106622:84428883247371240:56600819056463813477862 +85584016226756797276386:219351057312963078:85584235577814110239464 +97104664757076221726512:8500556944889315690:97113165314021111042202 +19032843758065040760628:88104798262565550076:19120948556327606310704 +82658655049299755840790:330744708650497149120:82989399757950252989910 +25937775258459376450938:9117236290339930087876:35055011548799306538814 +79630397663318903941150:91266358701181876787458:170896756364500780728608 +72363750170986252170278:352822843949235545048656:425186594120221797218934 +41633236615281651457418:3513474588574508538718292:3555107825189790190175710 +862382897072047863920942:67:862382897072047863921009 +345365086632616786979602:165:345365086632616786979767 +830917411328470856914167:1577:830917411328470856915744 +861328817548390237954458:59803:861328817548390238014261 +435702441147691312915569:852845:435702441147691313768414 +163650798094815134949666:4890705:163650798094815139840371 +829972879311295759699527:52079524:829972879311295811779051 +905398967434531022182765:809939827:905398967434531832122592 +878572102846981788905912:8671635815:878572102846990460541727 +966819332280842407656343:81404007009:966819332280923811663352 +605914324927487434954496:836963143115:605914324928324398097611 +785889551334926098144317:7355877270848:785889551342281975415165 +410214032371695638643806:68589772674009:410214032440285411317815 +462994403230711797902629:471001494226809:462994403701713292129438 +639185048152260312035675:4518316291388173:639185052670576603423848 +430192732263357843456993:91520206145619971:430192823783563989076964 +590635656249492501482997:763432491013000107:590636419681983514483104 +104601987456388095909341:2537987326381803615:104604525443714477712956 +728422130387509745109937:73834339964384107603:728495964727474129217540 +718248234259751470727877:138830030885139879705:718387064290636610607582 +893755587645623388592635:2079483375835386354861:895835071021458774947496 +609068028736876094057391:33159553495973691451265:642227582232849785508656 +850894165421275537728675:466768583304814459423637:1317662748726089997152312 +889595520322071688083671:8126860723954790789209321:9016456244276862477292992 +3451989882450493243366475:44:3451989882450493243366519 +3676153522703674807812863:228:3676153522703674807813091 +9685068642890486639735688:4341:9685068642890486639740029 +4613512245353828870809701:99024:4613512245353828870908725 +6626765697622463003196582:204900:6626765697622463003401482 +1855110671684747849405083:2861253:1855110671684747852266336 +9343797076968945720810273:79418802:9343797076968945800229075 +1251688292887159125871506:389410492:1251688292887159515281998 +9279157541589530206326647:2935764182:9279157541589533142090829 +1167245941941112391056619:37763871218:1167245941941150154927837 +4912527100967787448470943:754359292966:4912527100968541807763909 +4850890418572250491729576:1808353379161:4850890418574058845108737 +5810035777814083249544709:13975429026659:5810035777828058678571368 +3927232818092860557052400:779039725509162:3927232818871900282561562 +9087609812767633363355124:4724382733901774:9087609817492016097256898 +5234627893021110881058360:71140343296456836:5234627964161454177515196 +9697164662445358490418398:208444783124859336:9697164870890141615277734 +5407486861167440724261314:2798637010678278988:5407489659804451402540302 +4083151706985507799310608:65152127165302838858:4083216859112673102149466 +7219110157835469406203668:642658258798688213336:7219752816094268094417004 +7043625276900062501518290:3357409280053756244982:7046982686180116257763272 +2475791768058130306552480:91956007428434837342810:2567747775486565143895290 +3250420820556278555501310:303180259280279321472232:3553601079836557876973542 +2248566248782537066521058:9572688262788075807973484:11821254511570612874494542 diff --git a/t/author-lib-arithmetic-binary-_add.t b/t/author-lib-arithmetic-binary-_add.t new file mode 100644 index 0000000..275c6b4 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_add.t @@ -0,0 +1,202 @@ +#!perl + +BEGIN { + unless ($ENV{AUTHOR_TESTING}) { + require Test::More; + Test::More::plan(skip_all => + 'these tests are for testing by the author'); + } +} + +use strict; +use warnings; + +use Test::More tests => 7705; + +############################################################################### +# Read and load configuration file and backend library. + +use Config::Tiny (); + +my $config_file = 't/author-lib.ini'; +my $config = Config::Tiny -> read('t/author-lib.ini') + or die Config::Tiny -> errstr(); + +# Read the library to test. + +our $LIB = $config->{_}->{lib}; + +die "No library defined in file '$config_file'" + unless defined $LIB; +die "Invalid library name '$LIB' in file '$config_file'" + unless $LIB =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Read the reference type the library uses. + +our $REF = $config->{_}->{ref}; + +die "No reference type defined in file '$config_file'" + unless defined $REF; +die "Invalid reference type '$REF' in file '$config_file'" + unless $REF =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Load the library. + +eval "require $LIB"; +die $@ if $@; + +############################################################################### + +can_ok($LIB, '_add'); + +my $scalar_util_ok = eval { require Scalar::Util; }; +Scalar::Util -> import('refaddr') if $scalar_util_ok; + +diag "Skipping some tests since Scalar::Util is not installed." + unless $scalar_util_ok; + +my @data; + +# Small numbers. + +for (my $x = 0; $x <= 24 ; ++ $x) { + for (my $y = 0; $y <= 24 ; ++ $y) { + push @data, [ $x, $y, $x + $y ]; + } +} + +# 9 + 11, 99 + 101, 999 + 1001, 9999 + 1001, ... + +for (my $p = 1; $p <= 50 ; ++ $p) { + my $x = "9" x $p; + my $y = "1" . ("0" x ($p - 1)) . "1"; + my $z = "2" . ("0" x $p); + push @data, [ $x, $y, $z ]; +} + +# 9 + 9, 99 + 99, 999 + 999, 9999 + 9999, ... + +for (my $p = 1; $p <= 50 ; ++ $p) { + my $x = "9" x $p; + my $z = "1" . ("9" x ($p - 1)) . "8"; + push @data, [ $x, $x, $z ]; +} + +# Powers of 10. + +for (my $p = 0; $p <= 24 ; ++ $p) { + for (my $q = 0; $q <= 24 ; ++ $q) { + my $x = "1" . ("0" x $p); + my $y = "1" . ("0" x $q); + my ($max, $min) = $p > $q ? ($p, $q) : ($q, $p); + my $z = "1" . ("0" x $max); + substr($z, -1 - $min, 1) = substr($z, -1 - $min, 1) + 1; + push @data, [ $x, $y, $z ]; + } +} + +# Add data in data file. + +(my $datafile = $0) =~ s/\.t/.dat/; +open DATAFILE, $datafile or die "$datafile: can't open file for reading: $!"; +while () { + s/\s+\z//; + next if /^#/ || ! /\S/; + push @data, [ split /:/ ]; +} +close DATAFILE or die "$datafile: can't close file after reading: $!"; + +# List context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($x, $y, @got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\@got = $LIB->_add(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_add() in list context: $test", sub { + plan tests => $scalar_util_ok ? 9 : 8; + + cmp_ok(scalar @got, '==', 1, + "'$test' gives one output arg"); + + is(ref($got[0]), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got[0]), 0, + "'$test' output is valid"); + + is($LIB->_str($got[0]), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got[0]), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + ok($LIB->_str($x) eq $out0 || $LIB->_str($x) eq $in0, + "'$test' first input arg has the correct value"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} + +# Scalar context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($x, $y, $got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\$got = $LIB->_add(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_add() in scalar context: $test", sub { + plan tests => $scalar_util_ok ? 8 : 7; + + is(ref($got), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got), 0, + "'$test' output is valid"); + + is($LIB->_str($got), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + ok($LIB->_str($x) eq $out0 || $LIB->_str($x) eq $in0, + "'$test' first input arg has the correct value"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} diff --git a/t/author-lib-arithmetic-binary-_div.dat b/t/author-lib-arithmetic-binary-_div.dat new file mode 100644 index 0000000..87aacc0 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_div.dat @@ -0,0 +1,399 @@ +9:54:0:9 +1:781:0:1 +3:4665:0:3 +3:12746:0:3 +6:401608:0:6 +5:4973563:0:5 +2:38956011:0:2 +5:158697436:0:5 +7:7124748164:0:7 +8:53946138772:0:8 +3:336282406075:0:3 +7:5075747178985:0:7 +2:12741528190606:0:2 +6:534035067908715:0:6 +3:4355706918152932:0:3 +2:10871312221127208:0:2 +8:119865422092255109:0:8 +3:7394159221356238406:0:3 +8:70181009638469054829:0:8 +76:6:12:4 +93:70:1:23 +98:500:0:98 +85:5843:0:85 +28:76287:0:28 +27:389276:0:27 +14:2106171:0:14 +43:83817435:0:43 +93:709704213:0:93 +72:7721474597:0:72 +28:21540325401:0:28 +73:804764354059:0:73 +15:4417473085200:0:15 +28:18486035530348:0:28 +48:592021382407669:0:48 +75:2526408092525483:0:75 +92:11195823033459326:0:92 +94:442333652048327763:0:94 +38:4519419506056979436:0:38 +32:54670855129208237849:0:32 +462:4:115:2 +873:91:9:54 +120:293:0:120 +466:8340:0:466 +425:89933:0:425 +493:762687:0:493 +727:4016580:0:727 +429:92218359:0:429 +153:194912651:0:153 +254:4147676135:0:254 +752:27376661295:0:752 +621:542759240192:0:621 +998:1945866604362:0:998 +221:24578881912168:0:221 +572:154357937401421:0:572 +296:9457382019920673:0:296 +154:52400786487349660:0:154 +108:190209567462298859:0:108 +440:6164636360441565028:0:440 +714:23535004752460335857:0:714 +1267:9:140:7 +3002:44:68:10 +7189:653:11:6 +9522:7247:1:2275 +6818:77522:0:6818 +6197:853484:0:6197 +6134:9018359:0:6134 +9319:54687670:0:9319 +1608:870022677:0:1608 +9681:9050448475:0:9681 +7852:11572637984:0:7852 +5888:516174684603:0:5888 +7863:4921462150542:0:7863 +5979:43852240340461:0:5979 +5499:173256160271247:0:5499 +3844:1405180378886787:0:3844 +2398:97350995707774135:0:2398 +8319:195445934782089888:0:8319 +3986:3791071368230034525:0:3986 +1447:54551629872573097192:0:1447 +36809:9:4089:8 +35455:92:385:35 +44068:678:64:676 +15586:4062:3:3400 +36181:55119:0:36181 +39335:936852:0:39335 +88611:5846538:0:88611 +80687:55734122:0:80687 +47953:451250620:0:47953 +51113:9874877859:0:51113 +69117:17237187914:0:69117 +51275:300287562141:0:51275 +49575:9647163059923:0:49575 +44529:56325613082253:0:44529 +23494:611400683835599:0:23494 +20783:6902647686603794:0:20783 +86879:12188914403900169:0:86879 +92722:601221826736435231:0:92722 +82406:9422212723735232531:0:82406 +37331:55975007755788120748:0:37331 +322789:6:53798:1 +831257:45:18472:17 +713855:369:1934:209 +223945:7920:28:2185 +522515:11940:43:9095 +836834:989153:0:836834 +537979:7226665:0:537979 +632261:95400227:0:632261 +719209:982015298:0:719209 +622413:5630235775:0:622413 +566993:20100556462:0:566993 +806924:329920616535:0:806924 +493919:8000613898695:0:493919 +151792:73173763491629:0:151792 +919978:515313872677780:0:919978 +371697:4839940299798753:0:371697 +837394:24743492517418066:0:837394 +696529:427492743841595191:0:696529 +619946:4328877720548698283:0:619946 +930154:15359013102601717284:0:930154 +4526030:4:1131507:2 +2693929:88:30612:73 +1303958:926:1408:150 +5610335:7316:766:6279 +1112571:58580:18:58131 +4009490:501198:7:501104 +4934643:6971096:0:4934643 +5613194:55587510:0:5613194 +2461401:473851479:0:2461401 +7513056:2813007185:0:7513056 +6730764:28215736440:0:6730764 +2626386:859625430383:0:2626386 +8314568:7420181740840:0:8314568 +8580608:81004176270812:0:8580608 +4577500:321499930821778:0:4577500 +4867244:6866791044783223:0:4867244 +4994809:94422246381803620:0:4994809 +6799865:449826531660591763:0:6799865 +4621297:8243216569435287494:0:4621297 +9651873:55881476630960943914:0:9651873 +17084510:5:3416902:0 +98683010:63:1566396:62 +46862987:162:289277:113 +33108190:4202:7879:632 +95668269:41838:2286:26601 +64405858:250755:256:212578 +14061020:5381002:2:3299016 +47751487:41381502:1:6369985 +66923018:812094384:0:66923018 +38608057:3888278753:0:38608057 +38154295:37984413331:0:38154295 +92030342:696128642471:0:92030342 +19558161:5003401424535:0:19558161 +18687555:87166408760955:0:18687555 +32409659:804112444869419:0:32409659 +80985663:4458420111026852:0:80985663 +61657971:15720184746905393:0:61657971 +21620877:976106176482122466:0:21620877 +92149039:1815947180936688646:0:92149039 +16413343:93148843025990351227:0:16413343 +241539998:7:34505714:0 +553724115:65:8518832:35 +148654342:330:450467:232 +576600760:6601:87350:3410 +234884438:84324:2785:42098 +816647581:845079:966:301267 +317436435:2424383:130:2266645 +342031261:97245915:3:50293516 +678697197:940150484:0:678697197 +398983015:5995268728:0:398983015 +461843182:27019709441:0:461843182 +487632385:159898741040:0:487632385 +576593978:9226752173660:0:576593978 +719781897:12040248754000:0:719781897 +504954340:231360953230610:0:504954340 +324290141:5206286911543031:0:324290141 +628522022:48573569746934682:0:628522022 +100796922:488322639350384702:0:100796922 +376682178:9130249333439273762:0:376682178 +381394252:99037776588064723015:0:381394252 +1085102340:1:1085102340:0 +8512483854:55:154772433:39 +3556988100:932:3816510:780 +2022229405:2283:885777:514 +4297445513:12264:350411:5009 +7454932845:662000:11261:150845 +6403673044:7947090:805:6265594 +7386153529:23523213:313:23387860 +2147729671:866090584:2:415548503 +7465546697:4730638851:1:2734907846 +5397361286:36434742382:0:5397361286 +9904184726:283560758911:0:9904184726 +7061677513:1592243347797:0:7061677513 +8464970610:77360078485205:0:8464970610 +7277282427:752538647923295:0:7277282427 +7625083838:5321909164375635:0:7625083838 +1501707071:22664145124272409:0:1501707071 +1710959478:766301062337515181:0:1710959478 +4900917534:5141803525329389219:0:4900917534 +6724278238:28153126766136651497:0:6724278238 +23472845057:8:2934105632:1 +49788096210:71:701240791:49 +89856106039:635:141505678:509 +21558467507:1404:15355033:1175 +28666537818:39827:719776:19066 +79270455863:527756:150202:449151 +26616721474:7758711:3430:4342744 +65981371765:59326043:1112:10811949 +21183908605:441168287:48:7830829 +35756474766:3324970372:10:2506771046 +44796120541:41822469141:1:2973651400 +52136996614:515714992133:0:52136996614 +16797619057:2726414496023:0:16797619057 +31480994742:99390790697358:0:31480994742 +47582791265:353250485585137:0:47582791265 +69096624962:6965472809790151:0:69096624962 +38700729904:95917404906224078:0:38700729904 +84158762973:310092991299016114:0:84158762973 +55631392877:8646492908705298455:0:55631392877 +97661790609:27946911272321260928:0:97661790609 +147733356815:6:24622226135:5 +929784281268:58:16030763470:8 +177296509142:258:687195771:224 +801753739955:3503:228876317:1504 +226377580403:49911:4535625:1028 +431473211893:542225:795745:379268 +280342055034:6791964:41275:3740934 +665599705429:61470546:10827:58103887 +560377686457:629894492:889:401483069 +181473543575:5881125382:30:5039782115 +631472384131:30560743199:20:20257520151 +783086153013:800215962262:0:783086153013 +954394972973:5893287801579:0:954394972973 +895308919349:52360347803216:0:895308919349 +693436399568:906439013840477:0:693436399568 +413546830707:3184926099979518:0:413546830707 +683608430192:30734267055303493:0:683608430192 +609893378986:815219742538269958:0:609893378986 +859069036850:1887808929737825386:0:859069036850 +821054664946:23985684834984347150:0:821054664946 +9400023950976:1:9400023950976:0 +8439447423583:68:124109520935:3 +2224144584533:458:4856210883:119 +7399432632711:9457:782429167:392 +2974196527921:81530:36479780:64521 +8510790996128:592379:14367138:154826 +7735109732622:5155064:1500487:3216454 +5859664257522:12162758:481771:173104 +4144232170133:202086694:20507:40336275 +1827240340396:8514716234:214:5091066320 +3284868271769:95152071316:34:49697847025 +6543922986523:699493493432:9:248481545635 +4795138517183:7387059276822:0:4795138517183 +7264630163401:71378276832462:0:7264630163401 +7468462026846:596027896723774:0:7468462026846 +6142283940151:3213166952958483:0:6142283940151 +7802251415656:57989933709313351:0:7802251415656 +9407948307604:154172920242974832:0:9407948307604 +9348641870843:5402977263622641773:0:9348641870843 +5671120081396:78385087137566687061:0:5671120081396 +33113571679488:7:4730510239926:6 +29067877816927:88:330316793374:15 +12598834992985:431:29231635714:251 +50238168642790:7592:6617250874:7382 +19003551955206:28852:658656313:12530 +34545242568759:156422:220846444:105391 +33568933439468:8284272:4052128:2908652 +26161212216954:34787149:752036:23831590 +83044235221333:520118706:159664:2146549 +55691478895634:8690641767:6408:1846452698 +73114547728246:95207665862:767:90268012092 +66357425836812:978069515630:67:826768289602 +87798815375485:6581753828794:13:2236015601163 +36471759749463:53736151805767:0:36471759749463 +71184175246144:581646390815651:0:71184175246144 +54281523438393:3202960547020668:0:54281523438393 +26003022079051:85491475881707584:0:26003022079051 +12234838969506:763178636153826206:0:12234838969506 +83694514363204:5296247038706373762:0:83694514363204 +95036577985030:89303562224828917200:0:95036577985030 +386554080086282:4:96638520021570:2 +555442654222403:16:34715165888900:3 +601214107045020:675:890687565992:420 +789298027787145:1707:462389002804:717 +785075545238810:54173:14492007923:26131 +943984400785905:612806:1540429435:441295 +601780961713314:5974938:100717524:299802 +866107570737606:62701332:13813224:26723238 +577876328822058:590045697:979375:324322683 +951342598363119:7385543973:128811:3293657016 +334933002458339:85480202965:3918:21567241469 +370740439812905:353729972822:1048:31428295449 +944194170298682:6063032240155:155:4424173074657 +267817428827967:35941063361519:7:16229985297334 +466165713063112:692101684311234:0:466165713063112 +338409855360588:2756669038595046:0:338409855360588 +488047298774032:73646994422383124:0:488047298774032 +574887166019822:179755791036348114:0:574887166019822 +249674598258396:3011039408609599222:0:249674598258396 +334659872023898:40876605815916543140:0:334659872023898 +9917691229548030:9:1101965692172003:3 +3395730125084115:28:121276075895861:7 +7492168836846444:794:9435980902829:218 +2167468920849561:2899:747660890255:316 +2689078408805738:45530:59061682600:27738 +6104619178667311:777913:7847431754:617909 +7324043712939896:6976819:1049768341:5852617 +5074873799611388:45191410:112297310:21504288 +8928112448793193:568414247:15707052:313623349 +5689029942573434:4836787761:1176200:178085234 +8015125213947007:39186359108:204538:25694714903 +6555620701790984:273104626906:24004:17237539360 +8400118752640485:3592645918088:2338:512596150741 +2906665345396774:32515289313820:89:12804596466794 +7795922566511643:658314600586189:11:554461960063564 +2823609071734735:8478161336989857:0:2823609071734735 +3712602526722755:56697350328782517:0:3712602526722755 +5339224434671863:579255647165837833:0:5339224434671863 +5620634593429099:7249439809329477277:0:5620634593429099 +1355592260480799:70105974904095190803:0:1355592260480799 +49211220109556295:8:6151402513694536:7 +99382245339605360:30:3312741511320178:20 +65135390277190255:794:82034496570768:463 +25312398930569059:7585:3337165317148:1479 +44624347560792506:60236:740825213506:45090 +76159966178314687:699240:108918205735:173287 +79350160799142604:4817818:16470144949:1241322 +97550711974220665:53465677:1824548335:24222870 +24752075989778890:616029215:40180035:570056365 +43383416255497487:1634096419:26548871:1225904538 +83449385052730371:85928758130:971146:15309813391 +87044707767102300:396162197278:219719:345943377418 +15677409029417437:6831272835602:2294:6469144546449 +64191683561676130:16557609060194:3876:14390844364186 +11900449842391213:239715150354351:49:154407475028014 +84525852702634881:7107737533206691:11:6340739837361280 +53248729343829207:58016657665747177:0:53248729343829207 +19084457241118795:296188830002690941:0:19084457241118795 +38518215045194577:1463031117216156915:0:38518215045194577 +95941604506645605:36000726079517939239:0:95941604506645605 +582966093218529977:3:194322031072843325:2 +575953889379831214:96:5999519681039908:46 +621557523994082627:199:3123404643186344:171 +160157963334450039:3895:41118860933106:2169 +461832382692724250:64011:7214890920196:58094 +858501364869511583:776745:1105255089983:666248 +570823650092962472:9287239:61463223902:4575894 +440268371177706695:83501248:5272596299:11025543 +705258301360858608:799997926:881575162:147744596 +243362724609010669:2676153812:90937495:711029729 +185087644961065001:89792075745:2061291:47356578206 +333297256538063418:530953636430:627733:137480950228 +272960644332062259:8867314657116:30782:6964556717547 +918295619002877772:30243396661683:30363:15366164196843 +721633882860909049:794932746061197:907:629882183403370 +169389528431751055:9119393533116001:18:5240444835663037 +870850773930362499:91793011343683701:9:44713671837209190 +385437945847748791:899349609491523121:0:385437945847748791 +731420154113178323:7817111681620133189:0:731420154113178323 +115189439870468615:66913001836699189657:0:115189439870468615 +6152567165728753787:8:769070895716094223:3 +9662915319512269359:68:142101695875180431:51 +9219331076799277042:639:14427748164005128:250 +2707411073848918550:1587:1705993115216709:1367 +9202718168197294795:32727:281196509554719:6082 +9463740888646403780:607616:15575200272287:465988 +3330126773566829009:9722185:342528636676:4971949 +7531595898225639718:37347780:201661140186:9752638 +6419038589354279195:183289716:35021269765:168042455 +2262595813038116180:7424761451:304736499:2550216131 +7130759690750270360:31464808485:226626508:18905949980 +3552031724223072796:933761829237:3804001:792043695559 +6746038478670589705:2533111559145:2663143:161714496970 +6426908179601004516:66917599797775:96042:8059823097966 +3316034503448939889:439873438503129:7538:268524012353487 +2500986629586635195:8334475268911725:300:644048913117695 +7181503793819621231:80693480636275009:88:80477497827420439 +8880092664915659875:577963439727003305:15:210641069010610300 +2647767568053861387:9483440349319738685:0:2647767568053861387 +1141049451439372467:32067592292137537657:0:1141049451439372467 +48381650365935706715:7:6911664337990815245:0 +11443951369677816280:47:243488327014421622:46 +71575729850152768604:436:164164518004937542:292 +64962897906082089311:6594:9851819518665770:1931 +84656283928071714152:75631:1119333129643555:5947 +72160800405357420569:712145:101328802990061:429724 +35293423780155717037:2375807:14855341271473:1263326 +82038385938984403086:11239218:7299296618233:941292 +11007810151186072725:409596969:26874735372:137785257 +56182008551081388694:2463826139:22802748806:1807548660 +24649963214397883391:97592831089:252579650:95429144541 +46793473583322704008:782325092977:59813335:718183255713 +56394698010479266599:4101201380506:13750775:597451874449 +76643840958357018576:40503079789005:1892296:25085942013096 +99280187265137504077:877546428662817:113133:727151227028416 +48868369685289275957:4032097523101815:12119:3379802818379972 +15701765108586655113:11977088300936683:1310:11779434359600383 +92767908704599648797:317314859219406495:292:111969812532952257 +10018105311046654961:4057927198723966611:2:1902250913598721739 +86016853985828329221:84443436749010104153:1:1573417236818225068 diff --git a/t/author-lib-arithmetic-binary-_div.t b/t/author-lib-arithmetic-binary-_div.t new file mode 100644 index 0000000..2a47c51 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_div.t @@ -0,0 +1,189 @@ +#!perl + +BEGIN { + unless ($ENV{AUTHOR_TESTING}) { + require Test::More; + Test::More::plan(skip_all => + 'these tests are for testing by the author'); + } +} + +use strict; +use warnings; + +use Test::More tests => 3997; + +############################################################################### +# Read and load configuration file and backend library. + +use Config::Tiny (); + +my $config_file = 't/author-lib.ini'; +my $config = Config::Tiny -> read('t/author-lib.ini') + or die Config::Tiny -> errstr(); + +# Read the library to test. + +our $LIB = $config->{_}->{lib}; + +die "No library defined in file '$config_file'" + unless defined $LIB; +die "Invalid library name '$LIB' in file '$config_file'" + unless $LIB =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Read the reference type(s) the library uses. + +our $REF = $config->{_}->{ref}; + +die "No reference type defined in file '$config_file'" + unless defined $REF; +die "Invalid reference type '$REF' in file '$config_file'" + unless $REF =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Load the library. + +eval "require $LIB"; +die $@ if $@; + +############################################################################### + +can_ok($LIB, '_div'); + +my $scalar_util_ok = eval { require Scalar::Util; }; +Scalar::Util -> import('refaddr') if $scalar_util_ok; + +diag "Skipping some tests since Scalar::Util is not installed." + unless $scalar_util_ok; + +my @data; + +# Small numbers. + +for (my $x = 0; $x <= 24 ; ++ $x) { + for (my $y = 1; $y <= 24 ; ++ $y) { + push @data, [ $x, $y, int($x / $y), $x % $y ]; + } +} + +# Add data in data file. + +(my $datafile = $0) =~ s/\.t/.dat/; +open DATAFILE, $datafile or die "$datafile: can't open file for reading: $!"; +while () { + s/\s+\z//; + next if /^#/ || ! /\S/; + push @data, [ split /:/ ]; +} +close DATAFILE or die "$datafile: can't close file after reading: $!"; + +# List context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0, $out1) = @{ $data[$i] }; + + my ($x, $y, @got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\@got = $LIB->_div(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_div() in list context: $test", sub { + plan tests => $scalar_util_ok ? 13 : 11; + + cmp_ok(scalar @got, '==', 2, + "'$test' gives two output args"); + + is(ref($got[0]), $REF, + "'$test' first output arg is a $REF"); + + is($LIB->_check($got[0]), 0, + "'$test' first output arg is valid"); + + is($LIB->_str($got[0]), $out0, + "'$test' first output arg has the right value"); + + isnt(refaddr($got[0]), refaddr($y), + "'$test' first output arg is not the second input arg") + if $scalar_util_ok; + + SKIP: { + skip "$LIB doesn't use real objects", 1 + if $LIB eq 'Math::BigInt::FastCalc'; + + is(ref($got[1]), $REF, + "'$test' second output arg is a $REF"); + } + + is($LIB->_check($got[1]), 0, + "'$test' second output arg is valid"); + + is($LIB->_str($got[1]), $out1, + "'$test' second output arg has the right value"); + + isnt(refaddr($got[1]), refaddr($y), + "'$test' second output arg is not the second input arg"); + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + ok($LIB->_str($x) eq $out0 || $LIB->_str($x) eq $in0, + "'$test' first input arg has the correct value"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} + +# Scalar context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0, $out1) = @{ $data[$i] }; + + my ($x, $y, $got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\$got = $LIB->_div(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_div() in scalar context: $test", sub { + plan tests => $scalar_util_ok ? 8 : 7; + + is(ref($got), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got), 0, + "'$test' output is valid"); + + is($LIB->_str($got), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + ok($LIB->_str($x) eq $out0 || $LIB->_str($x) eq $in0, + "'$test' first input arg has the correct value"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} diff --git a/t/author-lib-arithmetic-binary-_gcd.dat b/t/author-lib-arithmetic-binary-_gcd.dat new file mode 100644 index 0000000..d9964e2 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_gcd.dat @@ -0,0 +1,2607 @@ +0:0:0 +0:1:1 +0:2:2 +0:3:3 +0:4:4 +0:5:5 +0:6:6 +0:7:7 +0:8:8 +0:9:9 +0:10:10 +0:11:11 +0:12:12 +0:13:13 +0:14:14 +0:15:15 +0:16:16 +0:17:17 +0:18:18 +0:19:19 +0:20:20 +0:21:21 +0:22:22 +0:23:23 +0:24:24 +0:25:25 +0:26:26 +0:27:27 +0:28:28 +0:29:29 +0:30:30 +0:31:31 +0:32:32 +0:33:33 +0:34:34 +0:35:35 +0:36:36 +0:37:37 +0:38:38 +0:39:39 +0:40:40 +0:41:41 +0:42:42 +0:43:43 +0:44:44 +0:45:45 +0:46:46 +0:47:47 +0:48:48 +0:49:49 +0:50:50 +1:0:1 +1:1:1 +1:2:1 +1:3:1 +1:4:1 +1:5:1 +1:6:1 +1:7:1 +1:8:1 +1:9:1 +1:10:1 +1:11:1 +1:12:1 +1:13:1 +1:14:1 +1:15:1 +1:16:1 +1:17:1 +1:18:1 +1:19:1 +1:20:1 +1:21:1 +1:22:1 +1:23:1 +1:24:1 +1:25:1 +1:26:1 +1:27:1 +1:28:1 +1:29:1 +1:30:1 +1:31:1 +1:32:1 +1:33:1 +1:34:1 +1:35:1 +1:36:1 +1:37:1 +1:38:1 +1:39:1 +1:40:1 +1:41:1 +1:42:1 +1:43:1 +1:44:1 +1:45:1 +1:46:1 +1:47:1 +1:48:1 +1:49:1 +1:50:1 +2:0:2 +2:1:1 +2:2:2 +2:3:1 +2:4:2 +2:5:1 +2:6:2 +2:7:1 +2:8:2 +2:9:1 +2:10:2 +2:11:1 +2:12:2 +2:13:1 +2:14:2 +2:15:1 +2:16:2 +2:17:1 +2:18:2 +2:19:1 +2:20:2 +2:21:1 +2:22:2 +2:23:1 +2:24:2 +2:25:1 +2:26:2 +2:27:1 +2:28:2 +2:29:1 +2:30:2 +2:31:1 +2:32:2 +2:33:1 +2:34:2 +2:35:1 +2:36:2 +2:37:1 +2:38:2 +2:39:1 +2:40:2 +2:41:1 +2:42:2 +2:43:1 +2:44:2 +2:45:1 +2:46:2 +2:47:1 +2:48:2 +2:49:1 +2:50:2 +3:0:3 +3:1:1 +3:2:1 +3:3:3 +3:4:1 +3:5:1 +3:6:3 +3:7:1 +3:8:1 +3:9:3 +3:10:1 +3:11:1 +3:12:3 +3:13:1 +3:14:1 +3:15:3 +3:16:1 +3:17:1 +3:18:3 +3:19:1 +3:20:1 +3:21:3 +3:22:1 +3:23:1 +3:24:3 +3:25:1 +3:26:1 +3:27:3 +3:28:1 +3:29:1 +3:30:3 +3:31:1 +3:32:1 +3:33:3 +3:34:1 +3:35:1 +3:36:3 +3:37:1 +3:38:1 +3:39:3 +3:40:1 +3:41:1 +3:42:3 +3:43:1 +3:44:1 +3:45:3 +3:46:1 +3:47:1 +3:48:3 +3:49:1 +3:50:1 +4:0:4 +4:1:1 +4:2:2 +4:3:1 +4:4:4 +4:5:1 +4:6:2 +4:7:1 +4:8:4 +4:9:1 +4:10:2 +4:11:1 +4:12:4 +4:13:1 +4:14:2 +4:15:1 +4:16:4 +4:17:1 +4:18:2 +4:19:1 +4:20:4 +4:21:1 +4:22:2 +4:23:1 +4:24:4 +4:25:1 +4:26:2 +4:27:1 +4:28:4 +4:29:1 +4:30:2 +4:31:1 +4:32:4 +4:33:1 +4:34:2 +4:35:1 +4:36:4 +4:37:1 +4:38:2 +4:39:1 +4:40:4 +4:41:1 +4:42:2 +4:43:1 +4:44:4 +4:45:1 +4:46:2 +4:47:1 +4:48:4 +4:49:1 +4:50:2 +5:0:5 +5:1:1 +5:2:1 +5:3:1 +5:4:1 +5:5:5 +5:6:1 +5:7:1 +5:8:1 +5:9:1 +5:10:5 +5:11:1 +5:12:1 +5:13:1 +5:14:1 +5:15:5 +5:16:1 +5:17:1 +5:18:1 +5:19:1 +5:20:5 +5:21:1 +5:22:1 +5:23:1 +5:24:1 +5:25:5 +5:26:1 +5:27:1 +5:28:1 +5:29:1 +5:30:5 +5:31:1 +5:32:1 +5:33:1 +5:34:1 +5:35:5 +5:36:1 +5:37:1 +5:38:1 +5:39:1 +5:40:5 +5:41:1 +5:42:1 +5:43:1 +5:44:1 +5:45:5 +5:46:1 +5:47:1 +5:48:1 +5:49:1 +5:50:5 +6:0:6 +6:1:1 +6:2:2 +6:3:3 +6:4:2 +6:5:1 +6:6:6 +6:7:1 +6:8:2 +6:9:3 +6:10:2 +6:11:1 +6:12:6 +6:13:1 +6:14:2 +6:15:3 +6:16:2 +6:17:1 +6:18:6 +6:19:1 +6:20:2 +6:21:3 +6:22:2 +6:23:1 +6:24:6 +6:25:1 +6:26:2 +6:27:3 +6:28:2 +6:29:1 +6:30:6 +6:31:1 +6:32:2 +6:33:3 +6:34:2 +6:35:1 +6:36:6 +6:37:1 +6:38:2 +6:39:3 +6:40:2 +6:41:1 +6:42:6 +6:43:1 +6:44:2 +6:45:3 +6:46:2 +6:47:1 +6:48:6 +6:49:1 +6:50:2 +7:0:7 +7:1:1 +7:2:1 +7:3:1 +7:4:1 +7:5:1 +7:6:1 +7:7:7 +7:8:1 +7:9:1 +7:10:1 +7:11:1 +7:12:1 +7:13:1 +7:14:7 +7:15:1 +7:16:1 +7:17:1 +7:18:1 +7:19:1 +7:20:1 +7:21:7 +7:22:1 +7:23:1 +7:24:1 +7:25:1 +7:26:1 +7:27:1 +7:28:7 +7:29:1 +7:30:1 +7:31:1 +7:32:1 +7:33:1 +7:34:1 +7:35:7 +7:36:1 +7:37:1 +7:38:1 +7:39:1 +7:40:1 +7:41:1 +7:42:7 +7:43:1 +7:44:1 +7:45:1 +7:46:1 +7:47:1 +7:48:1 +7:49:7 +7:50:1 +8:0:8 +8:1:1 +8:2:2 +8:3:1 +8:4:4 +8:5:1 +8:6:2 +8:7:1 +8:8:8 +8:9:1 +8:10:2 +8:11:1 +8:12:4 +8:13:1 +8:14:2 +8:15:1 +8:16:8 +8:17:1 +8:18:2 +8:19:1 +8:20:4 +8:21:1 +8:22:2 +8:23:1 +8:24:8 +8:25:1 +8:26:2 +8:27:1 +8:28:4 +8:29:1 +8:30:2 +8:31:1 +8:32:8 +8:33:1 +8:34:2 +8:35:1 +8:36:4 +8:37:1 +8:38:2 +8:39:1 +8:40:8 +8:41:1 +8:42:2 +8:43:1 +8:44:4 +8:45:1 +8:46:2 +8:47:1 +8:48:8 +8:49:1 +8:50:2 +9:0:9 +9:1:1 +9:2:1 +9:3:3 +9:4:1 +9:5:1 +9:6:3 +9:7:1 +9:8:1 +9:9:9 +9:10:1 +9:11:1 +9:12:3 +9:13:1 +9:14:1 +9:15:3 +9:16:1 +9:17:1 +9:18:9 +9:19:1 +9:20:1 +9:21:3 +9:22:1 +9:23:1 +9:24:3 +9:25:1 +9:26:1 +9:27:9 +9:28:1 +9:29:1 +9:30:3 +9:31:1 +9:32:1 +9:33:3 +9:34:1 +9:35:1 +9:36:9 +9:37:1 +9:38:1 +9:39:3 +9:40:1 +9:41:1 +9:42:3 +9:43:1 +9:44:1 +9:45:9 +9:46:1 +9:47:1 +9:48:3 +9:49:1 +9:50:1 +10:0:10 +10:1:1 +10:2:2 +10:3:1 +10:4:2 +10:5:5 +10:6:2 +10:7:1 +10:8:2 +10:9:1 +10:10:10 +10:11:1 +10:12:2 +10:13:1 +10:14:2 +10:15:5 +10:16:2 +10:17:1 +10:18:2 +10:19:1 +10:20:10 +10:21:1 +10:22:2 +10:23:1 +10:24:2 +10:25:5 +10:26:2 +10:27:1 +10:28:2 +10:29:1 +10:30:10 +10:31:1 +10:32:2 +10:33:1 +10:34:2 +10:35:5 +10:36:2 +10:37:1 +10:38:2 +10:39:1 +10:40:10 +10:41:1 +10:42:2 +10:43:1 +10:44:2 +10:45:5 +10:46:2 +10:47:1 +10:48:2 +10:49:1 +10:50:10 +11:0:11 +11:1:1 +11:2:1 +11:3:1 +11:4:1 +11:5:1 +11:6:1 +11:7:1 +11:8:1 +11:9:1 +11:10:1 +11:11:11 +11:12:1 +11:13:1 +11:14:1 +11:15:1 +11:16:1 +11:17:1 +11:18:1 +11:19:1 +11:20:1 +11:21:1 +11:22:11 +11:23:1 +11:24:1 +11:25:1 +11:26:1 +11:27:1 +11:28:1 +11:29:1 +11:30:1 +11:31:1 +11:32:1 +11:33:11 +11:34:1 +11:35:1 +11:36:1 +11:37:1 +11:38:1 +11:39:1 +11:40:1 +11:41:1 +11:42:1 +11:43:1 +11:44:11 +11:45:1 +11:46:1 +11:47:1 +11:48:1 +11:49:1 +11:50:1 +12:0:12 +12:1:1 +12:2:2 +12:3:3 +12:4:4 +12:5:1 +12:6:6 +12:7:1 +12:8:4 +12:9:3 +12:10:2 +12:11:1 +12:12:12 +12:13:1 +12:14:2 +12:15:3 +12:16:4 +12:17:1 +12:18:6 +12:19:1 +12:20:4 +12:21:3 +12:22:2 +12:23:1 +12:24:12 +12:25:1 +12:26:2 +12:27:3 +12:28:4 +12:29:1 +12:30:6 +12:31:1 +12:32:4 +12:33:3 +12:34:2 +12:35:1 +12:36:12 +12:37:1 +12:38:2 +12:39:3 +12:40:4 +12:41:1 +12:42:6 +12:43:1 +12:44:4 +12:45:3 +12:46:2 +12:47:1 +12:48:12 +12:49:1 +12:50:2 +13:0:13 +13:1:1 +13:2:1 +13:3:1 +13:4:1 +13:5:1 +13:6:1 +13:7:1 +13:8:1 +13:9:1 +13:10:1 +13:11:1 +13:12:1 +13:13:13 +13:14:1 +13:15:1 +13:16:1 +13:17:1 +13:18:1 +13:19:1 +13:20:1 +13:21:1 +13:22:1 +13:23:1 +13:24:1 +13:25:1 +13:26:13 +13:27:1 +13:28:1 +13:29:1 +13:30:1 +13:31:1 +13:32:1 +13:33:1 +13:34:1 +13:35:1 +13:36:1 +13:37:1 +13:38:1 +13:39:13 +13:40:1 +13:41:1 +13:42:1 +13:43:1 +13:44:1 +13:45:1 +13:46:1 +13:47:1 +13:48:1 +13:49:1 +13:50:1 +14:0:14 +14:1:1 +14:2:2 +14:3:1 +14:4:2 +14:5:1 +14:6:2 +14:7:7 +14:8:2 +14:9:1 +14:10:2 +14:11:1 +14:12:2 +14:13:1 +14:14:14 +14:15:1 +14:16:2 +14:17:1 +14:18:2 +14:19:1 +14:20:2 +14:21:7 +14:22:2 +14:23:1 +14:24:2 +14:25:1 +14:26:2 +14:27:1 +14:28:14 +14:29:1 +14:30:2 +14:31:1 +14:32:2 +14:33:1 +14:34:2 +14:35:7 +14:36:2 +14:37:1 +14:38:2 +14:39:1 +14:40:2 +14:41:1 +14:42:14 +14:43:1 +14:44:2 +14:45:1 +14:46:2 +14:47:1 +14:48:2 +14:49:7 +14:50:2 +15:0:15 +15:1:1 +15:2:1 +15:3:3 +15:4:1 +15:5:5 +15:6:3 +15:7:1 +15:8:1 +15:9:3 +15:10:5 +15:11:1 +15:12:3 +15:13:1 +15:14:1 +15:15:15 +15:16:1 +15:17:1 +15:18:3 +15:19:1 +15:20:5 +15:21:3 +15:22:1 +15:23:1 +15:24:3 +15:25:5 +15:26:1 +15:27:3 +15:28:1 +15:29:1 +15:30:15 +15:31:1 +15:32:1 +15:33:3 +15:34:1 +15:35:5 +15:36:3 +15:37:1 +15:38:1 +15:39:3 +15:40:5 +15:41:1 +15:42:3 +15:43:1 +15:44:1 +15:45:15 +15:46:1 +15:47:1 +15:48:3 +15:49:1 +15:50:5 +16:0:16 +16:1:1 +16:2:2 +16:3:1 +16:4:4 +16:5:1 +16:6:2 +16:7:1 +16:8:8 +16:9:1 +16:10:2 +16:11:1 +16:12:4 +16:13:1 +16:14:2 +16:15:1 +16:16:16 +16:17:1 +16:18:2 +16:19:1 +16:20:4 +16:21:1 +16:22:2 +16:23:1 +16:24:8 +16:25:1 +16:26:2 +16:27:1 +16:28:4 +16:29:1 +16:30:2 +16:31:1 +16:32:16 +16:33:1 +16:34:2 +16:35:1 +16:36:4 +16:37:1 +16:38:2 +16:39:1 +16:40:8 +16:41:1 +16:42:2 +16:43:1 +16:44:4 +16:45:1 +16:46:2 +16:47:1 +16:48:16 +16:49:1 +16:50:2 +17:0:17 +17:1:1 +17:2:1 +17:3:1 +17:4:1 +17:5:1 +17:6:1 +17:7:1 +17:8:1 +17:9:1 +17:10:1 +17:11:1 +17:12:1 +17:13:1 +17:14:1 +17:15:1 +17:16:1 +17:17:17 +17:18:1 +17:19:1 +17:20:1 +17:21:1 +17:22:1 +17:23:1 +17:24:1 +17:25:1 +17:26:1 +17:27:1 +17:28:1 +17:29:1 +17:30:1 +17:31:1 +17:32:1 +17:33:1 +17:34:17 +17:35:1 +17:36:1 +17:37:1 +17:38:1 +17:39:1 +17:40:1 +17:41:1 +17:42:1 +17:43:1 +17:44:1 +17:45:1 +17:46:1 +17:47:1 +17:48:1 +17:49:1 +17:50:1 +18:0:18 +18:1:1 +18:2:2 +18:3:3 +18:4:2 +18:5:1 +18:6:6 +18:7:1 +18:8:2 +18:9:9 +18:10:2 +18:11:1 +18:12:6 +18:13:1 +18:14:2 +18:15:3 +18:16:2 +18:17:1 +18:18:18 +18:19:1 +18:20:2 +18:21:3 +18:22:2 +18:23:1 +18:24:6 +18:25:1 +18:26:2 +18:27:9 +18:28:2 +18:29:1 +18:30:6 +18:31:1 +18:32:2 +18:33:3 +18:34:2 +18:35:1 +18:36:18 +18:37:1 +18:38:2 +18:39:3 +18:40:2 +18:41:1 +18:42:6 +18:43:1 +18:44:2 +18:45:9 +18:46:2 +18:47:1 +18:48:6 +18:49:1 +18:50:2 +19:0:19 +19:1:1 +19:2:1 +19:3:1 +19:4:1 +19:5:1 +19:6:1 +19:7:1 +19:8:1 +19:9:1 +19:10:1 +19:11:1 +19:12:1 +19:13:1 +19:14:1 +19:15:1 +19:16:1 +19:17:1 +19:18:1 +19:19:19 +19:20:1 +19:21:1 +19:22:1 +19:23:1 +19:24:1 +19:25:1 +19:26:1 +19:27:1 +19:28:1 +19:29:1 +19:30:1 +19:31:1 +19:32:1 +19:33:1 +19:34:1 +19:35:1 +19:36:1 +19:37:1 +19:38:19 +19:39:1 +19:40:1 +19:41:1 +19:42:1 +19:43:1 +19:44:1 +19:45:1 +19:46:1 +19:47:1 +19:48:1 +19:49:1 +19:50:1 +20:0:20 +20:1:1 +20:2:2 +20:3:1 +20:4:4 +20:5:5 +20:6:2 +20:7:1 +20:8:4 +20:9:1 +20:10:10 +20:11:1 +20:12:4 +20:13:1 +20:14:2 +20:15:5 +20:16:4 +20:17:1 +20:18:2 +20:19:1 +20:20:20 +20:21:1 +20:22:2 +20:23:1 +20:24:4 +20:25:5 +20:26:2 +20:27:1 +20:28:4 +20:29:1 +20:30:10 +20:31:1 +20:32:4 +20:33:1 +20:34:2 +20:35:5 +20:36:4 +20:37:1 +20:38:2 +20:39:1 +20:40:20 +20:41:1 +20:42:2 +20:43:1 +20:44:4 +20:45:5 +20:46:2 +20:47:1 +20:48:4 +20:49:1 +20:50:10 +21:0:21 +21:1:1 +21:2:1 +21:3:3 +21:4:1 +21:5:1 +21:6:3 +21:7:7 +21:8:1 +21:9:3 +21:10:1 +21:11:1 +21:12:3 +21:13:1 +21:14:7 +21:15:3 +21:16:1 +21:17:1 +21:18:3 +21:19:1 +21:20:1 +21:21:21 +21:22:1 +21:23:1 +21:24:3 +21:25:1 +21:26:1 +21:27:3 +21:28:7 +21:29:1 +21:30:3 +21:31:1 +21:32:1 +21:33:3 +21:34:1 +21:35:7 +21:36:3 +21:37:1 +21:38:1 +21:39:3 +21:40:1 +21:41:1 +21:42:21 +21:43:1 +21:44:1 +21:45:3 +21:46:1 +21:47:1 +21:48:3 +21:49:7 +21:50:1 +22:0:22 +22:1:1 +22:2:2 +22:3:1 +22:4:2 +22:5:1 +22:6:2 +22:7:1 +22:8:2 +22:9:1 +22:10:2 +22:11:11 +22:12:2 +22:13:1 +22:14:2 +22:15:1 +22:16:2 +22:17:1 +22:18:2 +22:19:1 +22:20:2 +22:21:1 +22:22:22 +22:23:1 +22:24:2 +22:25:1 +22:26:2 +22:27:1 +22:28:2 +22:29:1 +22:30:2 +22:31:1 +22:32:2 +22:33:11 +22:34:2 +22:35:1 +22:36:2 +22:37:1 +22:38:2 +22:39:1 +22:40:2 +22:41:1 +22:42:2 +22:43:1 +22:44:22 +22:45:1 +22:46:2 +22:47:1 +22:48:2 +22:49:1 +22:50:2 +23:0:23 +23:1:1 +23:2:1 +23:3:1 +23:4:1 +23:5:1 +23:6:1 +23:7:1 +23:8:1 +23:9:1 +23:10:1 +23:11:1 +23:12:1 +23:13:1 +23:14:1 +23:15:1 +23:16:1 +23:17:1 +23:18:1 +23:19:1 +23:20:1 +23:21:1 +23:22:1 +23:23:23 +23:24:1 +23:25:1 +23:26:1 +23:27:1 +23:28:1 +23:29:1 +23:30:1 +23:31:1 +23:32:1 +23:33:1 +23:34:1 +23:35:1 +23:36:1 +23:37:1 +23:38:1 +23:39:1 +23:40:1 +23:41:1 +23:42:1 +23:43:1 +23:44:1 +23:45:1 +23:46:23 +23:47:1 +23:48:1 +23:49:1 +23:50:1 +24:0:24 +24:1:1 +24:2:2 +24:3:3 +24:4:4 +24:5:1 +24:6:6 +24:7:1 +24:8:8 +24:9:3 +24:10:2 +24:11:1 +24:12:12 +24:13:1 +24:14:2 +24:15:3 +24:16:8 +24:17:1 +24:18:6 +24:19:1 +24:20:4 +24:21:3 +24:22:2 +24:23:1 +24:24:24 +24:25:1 +24:26:2 +24:27:3 +24:28:4 +24:29:1 +24:30:6 +24:31:1 +24:32:8 +24:33:3 +24:34:2 +24:35:1 +24:36:12 +24:37:1 +24:38:2 +24:39:3 +24:40:8 +24:41:1 +24:42:6 +24:43:1 +24:44:4 +24:45:3 +24:46:2 +24:47:1 +24:48:24 +24:49:1 +24:50:2 +25:0:25 +25:1:1 +25:2:1 +25:3:1 +25:4:1 +25:5:5 +25:6:1 +25:7:1 +25:8:1 +25:9:1 +25:10:5 +25:11:1 +25:12:1 +25:13:1 +25:14:1 +25:15:5 +25:16:1 +25:17:1 +25:18:1 +25:19:1 +25:20:5 +25:21:1 +25:22:1 +25:23:1 +25:24:1 +25:25:25 +25:26:1 +25:27:1 +25:28:1 +25:29:1 +25:30:5 +25:31:1 +25:32:1 +25:33:1 +25:34:1 +25:35:5 +25:36:1 +25:37:1 +25:38:1 +25:39:1 +25:40:5 +25:41:1 +25:42:1 +25:43:1 +25:44:1 +25:45:5 +25:46:1 +25:47:1 +25:48:1 +25:49:1 +25:50:25 +26:0:26 +26:1:1 +26:2:2 +26:3:1 +26:4:2 +26:5:1 +26:6:2 +26:7:1 +26:8:2 +26:9:1 +26:10:2 +26:11:1 +26:12:2 +26:13:13 +26:14:2 +26:15:1 +26:16:2 +26:17:1 +26:18:2 +26:19:1 +26:20:2 +26:21:1 +26:22:2 +26:23:1 +26:24:2 +26:25:1 +26:26:26 +26:27:1 +26:28:2 +26:29:1 +26:30:2 +26:31:1 +26:32:2 +26:33:1 +26:34:2 +26:35:1 +26:36:2 +26:37:1 +26:38:2 +26:39:13 +26:40:2 +26:41:1 +26:42:2 +26:43:1 +26:44:2 +26:45:1 +26:46:2 +26:47:1 +26:48:2 +26:49:1 +26:50:2 +27:0:27 +27:1:1 +27:2:1 +27:3:3 +27:4:1 +27:5:1 +27:6:3 +27:7:1 +27:8:1 +27:9:9 +27:10:1 +27:11:1 +27:12:3 +27:13:1 +27:14:1 +27:15:3 +27:16:1 +27:17:1 +27:18:9 +27:19:1 +27:20:1 +27:21:3 +27:22:1 +27:23:1 +27:24:3 +27:25:1 +27:26:1 +27:27:27 +27:28:1 +27:29:1 +27:30:3 +27:31:1 +27:32:1 +27:33:3 +27:34:1 +27:35:1 +27:36:9 +27:37:1 +27:38:1 +27:39:3 +27:40:1 +27:41:1 +27:42:3 +27:43:1 +27:44:1 +27:45:9 +27:46:1 +27:47:1 +27:48:3 +27:49:1 +27:50:1 +28:0:28 +28:1:1 +28:2:2 +28:3:1 +28:4:4 +28:5:1 +28:6:2 +28:7:7 +28:8:4 +28:9:1 +28:10:2 +28:11:1 +28:12:4 +28:13:1 +28:14:14 +28:15:1 +28:16:4 +28:17:1 +28:18:2 +28:19:1 +28:20:4 +28:21:7 +28:22:2 +28:23:1 +28:24:4 +28:25:1 +28:26:2 +28:27:1 +28:28:28 +28:29:1 +28:30:2 +28:31:1 +28:32:4 +28:33:1 +28:34:2 +28:35:7 +28:36:4 +28:37:1 +28:38:2 +28:39:1 +28:40:4 +28:41:1 +28:42:14 +28:43:1 +28:44:4 +28:45:1 +28:46:2 +28:47:1 +28:48:4 +28:49:7 +28:50:2 +29:0:29 +29:1:1 +29:2:1 +29:3:1 +29:4:1 +29:5:1 +29:6:1 +29:7:1 +29:8:1 +29:9:1 +29:10:1 +29:11:1 +29:12:1 +29:13:1 +29:14:1 +29:15:1 +29:16:1 +29:17:1 +29:18:1 +29:19:1 +29:20:1 +29:21:1 +29:22:1 +29:23:1 +29:24:1 +29:25:1 +29:26:1 +29:27:1 +29:28:1 +29:29:29 +29:30:1 +29:31:1 +29:32:1 +29:33:1 +29:34:1 +29:35:1 +29:36:1 +29:37:1 +29:38:1 +29:39:1 +29:40:1 +29:41:1 +29:42:1 +29:43:1 +29:44:1 +29:45:1 +29:46:1 +29:47:1 +29:48:1 +29:49:1 +29:50:1 +30:0:30 +30:1:1 +30:2:2 +30:3:3 +30:4:2 +30:5:5 +30:6:6 +30:7:1 +30:8:2 +30:9:3 +30:10:10 +30:11:1 +30:12:6 +30:13:1 +30:14:2 +30:15:15 +30:16:2 +30:17:1 +30:18:6 +30:19:1 +30:20:10 +30:21:3 +30:22:2 +30:23:1 +30:24:6 +30:25:5 +30:26:2 +30:27:3 +30:28:2 +30:29:1 +30:30:30 +30:31:1 +30:32:2 +30:33:3 +30:34:2 +30:35:5 +30:36:6 +30:37:1 +30:38:2 +30:39:3 +30:40:10 +30:41:1 +30:42:6 +30:43:1 +30:44:2 +30:45:15 +30:46:2 +30:47:1 +30:48:6 +30:49:1 +30:50:10 +31:0:31 +31:1:1 +31:2:1 +31:3:1 +31:4:1 +31:5:1 +31:6:1 +31:7:1 +31:8:1 +31:9:1 +31:10:1 +31:11:1 +31:12:1 +31:13:1 +31:14:1 +31:15:1 +31:16:1 +31:17:1 +31:18:1 +31:19:1 +31:20:1 +31:21:1 +31:22:1 +31:23:1 +31:24:1 +31:25:1 +31:26:1 +31:27:1 +31:28:1 +31:29:1 +31:30:1 +31:31:31 +31:32:1 +31:33:1 +31:34:1 +31:35:1 +31:36:1 +31:37:1 +31:38:1 +31:39:1 +31:40:1 +31:41:1 +31:42:1 +31:43:1 +31:44:1 +31:45:1 +31:46:1 +31:47:1 +31:48:1 +31:49:1 +31:50:1 +32:0:32 +32:1:1 +32:2:2 +32:3:1 +32:4:4 +32:5:1 +32:6:2 +32:7:1 +32:8:8 +32:9:1 +32:10:2 +32:11:1 +32:12:4 +32:13:1 +32:14:2 +32:15:1 +32:16:16 +32:17:1 +32:18:2 +32:19:1 +32:20:4 +32:21:1 +32:22:2 +32:23:1 +32:24:8 +32:25:1 +32:26:2 +32:27:1 +32:28:4 +32:29:1 +32:30:2 +32:31:1 +32:32:32 +32:33:1 +32:34:2 +32:35:1 +32:36:4 +32:37:1 +32:38:2 +32:39:1 +32:40:8 +32:41:1 +32:42:2 +32:43:1 +32:44:4 +32:45:1 +32:46:2 +32:47:1 +32:48:16 +32:49:1 +32:50:2 +33:0:33 +33:1:1 +33:2:1 +33:3:3 +33:4:1 +33:5:1 +33:6:3 +33:7:1 +33:8:1 +33:9:3 +33:10:1 +33:11:11 +33:12:3 +33:13:1 +33:14:1 +33:15:3 +33:16:1 +33:17:1 +33:18:3 +33:19:1 +33:20:1 +33:21:3 +33:22:11 +33:23:1 +33:24:3 +33:25:1 +33:26:1 +33:27:3 +33:28:1 +33:29:1 +33:30:3 +33:31:1 +33:32:1 +33:33:33 +33:34:1 +33:35:1 +33:36:3 +33:37:1 +33:38:1 +33:39:3 +33:40:1 +33:41:1 +33:42:3 +33:43:1 +33:44:11 +33:45:3 +33:46:1 +33:47:1 +33:48:3 +33:49:1 +33:50:1 +34:0:34 +34:1:1 +34:2:2 +34:3:1 +34:4:2 +34:5:1 +34:6:2 +34:7:1 +34:8:2 +34:9:1 +34:10:2 +34:11:1 +34:12:2 +34:13:1 +34:14:2 +34:15:1 +34:16:2 +34:17:17 +34:18:2 +34:19:1 +34:20:2 +34:21:1 +34:22:2 +34:23:1 +34:24:2 +34:25:1 +34:26:2 +34:27:1 +34:28:2 +34:29:1 +34:30:2 +34:31:1 +34:32:2 +34:33:1 +34:34:34 +34:35:1 +34:36:2 +34:37:1 +34:38:2 +34:39:1 +34:40:2 +34:41:1 +34:42:2 +34:43:1 +34:44:2 +34:45:1 +34:46:2 +34:47:1 +34:48:2 +34:49:1 +34:50:2 +35:0:35 +35:1:1 +35:2:1 +35:3:1 +35:4:1 +35:5:5 +35:6:1 +35:7:7 +35:8:1 +35:9:1 +35:10:5 +35:11:1 +35:12:1 +35:13:1 +35:14:7 +35:15:5 +35:16:1 +35:17:1 +35:18:1 +35:19:1 +35:20:5 +35:21:7 +35:22:1 +35:23:1 +35:24:1 +35:25:5 +35:26:1 +35:27:1 +35:28:7 +35:29:1 +35:30:5 +35:31:1 +35:32:1 +35:33:1 +35:34:1 +35:35:35 +35:36:1 +35:37:1 +35:38:1 +35:39:1 +35:40:5 +35:41:1 +35:42:7 +35:43:1 +35:44:1 +35:45:5 +35:46:1 +35:47:1 +35:48:1 +35:49:7 +35:50:5 +36:0:36 +36:1:1 +36:2:2 +36:3:3 +36:4:4 +36:5:1 +36:6:6 +36:7:1 +36:8:4 +36:9:9 +36:10:2 +36:11:1 +36:12:12 +36:13:1 +36:14:2 +36:15:3 +36:16:4 +36:17:1 +36:18:18 +36:19:1 +36:20:4 +36:21:3 +36:22:2 +36:23:1 +36:24:12 +36:25:1 +36:26:2 +36:27:9 +36:28:4 +36:29:1 +36:30:6 +36:31:1 +36:32:4 +36:33:3 +36:34:2 +36:35:1 +36:36:36 +36:37:1 +36:38:2 +36:39:3 +36:40:4 +36:41:1 +36:42:6 +36:43:1 +36:44:4 +36:45:9 +36:46:2 +36:47:1 +36:48:12 +36:49:1 +36:50:2 +37:0:37 +37:1:1 +37:2:1 +37:3:1 +37:4:1 +37:5:1 +37:6:1 +37:7:1 +37:8:1 +37:9:1 +37:10:1 +37:11:1 +37:12:1 +37:13:1 +37:14:1 +37:15:1 +37:16:1 +37:17:1 +37:18:1 +37:19:1 +37:20:1 +37:21:1 +37:22:1 +37:23:1 +37:24:1 +37:25:1 +37:26:1 +37:27:1 +37:28:1 +37:29:1 +37:30:1 +37:31:1 +37:32:1 +37:33:1 +37:34:1 +37:35:1 +37:36:1 +37:37:37 +37:38:1 +37:39:1 +37:40:1 +37:41:1 +37:42:1 +37:43:1 +37:44:1 +37:45:1 +37:46:1 +37:47:1 +37:48:1 +37:49:1 +37:50:1 +38:0:38 +38:1:1 +38:2:2 +38:3:1 +38:4:2 +38:5:1 +38:6:2 +38:7:1 +38:8:2 +38:9:1 +38:10:2 +38:11:1 +38:12:2 +38:13:1 +38:14:2 +38:15:1 +38:16:2 +38:17:1 +38:18:2 +38:19:19 +38:20:2 +38:21:1 +38:22:2 +38:23:1 +38:24:2 +38:25:1 +38:26:2 +38:27:1 +38:28:2 +38:29:1 +38:30:2 +38:31:1 +38:32:2 +38:33:1 +38:34:2 +38:35:1 +38:36:2 +38:37:1 +38:38:38 +38:39:1 +38:40:2 +38:41:1 +38:42:2 +38:43:1 +38:44:2 +38:45:1 +38:46:2 +38:47:1 +38:48:2 +38:49:1 +38:50:2 +39:0:39 +39:1:1 +39:2:1 +39:3:3 +39:4:1 +39:5:1 +39:6:3 +39:7:1 +39:8:1 +39:9:3 +39:10:1 +39:11:1 +39:12:3 +39:13:13 +39:14:1 +39:15:3 +39:16:1 +39:17:1 +39:18:3 +39:19:1 +39:20:1 +39:21:3 +39:22:1 +39:23:1 +39:24:3 +39:25:1 +39:26:13 +39:27:3 +39:28:1 +39:29:1 +39:30:3 +39:31:1 +39:32:1 +39:33:3 +39:34:1 +39:35:1 +39:36:3 +39:37:1 +39:38:1 +39:39:39 +39:40:1 +39:41:1 +39:42:3 +39:43:1 +39:44:1 +39:45:3 +39:46:1 +39:47:1 +39:48:3 +39:49:1 +39:50:1 +40:0:40 +40:1:1 +40:2:2 +40:3:1 +40:4:4 +40:5:5 +40:6:2 +40:7:1 +40:8:8 +40:9:1 +40:10:10 +40:11:1 +40:12:4 +40:13:1 +40:14:2 +40:15:5 +40:16:8 +40:17:1 +40:18:2 +40:19:1 +40:20:20 +40:21:1 +40:22:2 +40:23:1 +40:24:8 +40:25:5 +40:26:2 +40:27:1 +40:28:4 +40:29:1 +40:30:10 +40:31:1 +40:32:8 +40:33:1 +40:34:2 +40:35:5 +40:36:4 +40:37:1 +40:38:2 +40:39:1 +40:40:40 +40:41:1 +40:42:2 +40:43:1 +40:44:4 +40:45:5 +40:46:2 +40:47:1 +40:48:8 +40:49:1 +40:50:10 +41:0:41 +41:1:1 +41:2:1 +41:3:1 +41:4:1 +41:5:1 +41:6:1 +41:7:1 +41:8:1 +41:9:1 +41:10:1 +41:11:1 +41:12:1 +41:13:1 +41:14:1 +41:15:1 +41:16:1 +41:17:1 +41:18:1 +41:19:1 +41:20:1 +41:21:1 +41:22:1 +41:23:1 +41:24:1 +41:25:1 +41:26:1 +41:27:1 +41:28:1 +41:29:1 +41:30:1 +41:31:1 +41:32:1 +41:33:1 +41:34:1 +41:35:1 +41:36:1 +41:37:1 +41:38:1 +41:39:1 +41:40:1 +41:41:41 +41:42:1 +41:43:1 +41:44:1 +41:45:1 +41:46:1 +41:47:1 +41:48:1 +41:49:1 +41:50:1 +42:0:42 +42:1:1 +42:2:2 +42:3:3 +42:4:2 +42:5:1 +42:6:6 +42:7:7 +42:8:2 +42:9:3 +42:10:2 +42:11:1 +42:12:6 +42:13:1 +42:14:14 +42:15:3 +42:16:2 +42:17:1 +42:18:6 +42:19:1 +42:20:2 +42:21:21 +42:22:2 +42:23:1 +42:24:6 +42:25:1 +42:26:2 +42:27:3 +42:28:14 +42:29:1 +42:30:6 +42:31:1 +42:32:2 +42:33:3 +42:34:2 +42:35:7 +42:36:6 +42:37:1 +42:38:2 +42:39:3 +42:40:2 +42:41:1 +42:42:42 +42:43:1 +42:44:2 +42:45:3 +42:46:2 +42:47:1 +42:48:6 +42:49:7 +42:50:2 +43:0:43 +43:1:1 +43:2:1 +43:3:1 +43:4:1 +43:5:1 +43:6:1 +43:7:1 +43:8:1 +43:9:1 +43:10:1 +43:11:1 +43:12:1 +43:13:1 +43:14:1 +43:15:1 +43:16:1 +43:17:1 +43:18:1 +43:19:1 +43:20:1 +43:21:1 +43:22:1 +43:23:1 +43:24:1 +43:25:1 +43:26:1 +43:27:1 +43:28:1 +43:29:1 +43:30:1 +43:31:1 +43:32:1 +43:33:1 +43:34:1 +43:35:1 +43:36:1 +43:37:1 +43:38:1 +43:39:1 +43:40:1 +43:41:1 +43:42:1 +43:43:43 +43:44:1 +43:45:1 +43:46:1 +43:47:1 +43:48:1 +43:49:1 +43:50:1 +44:0:44 +44:1:1 +44:2:2 +44:3:1 +44:4:4 +44:5:1 +44:6:2 +44:7:1 +44:8:4 +44:9:1 +44:10:2 +44:11:11 +44:12:4 +44:13:1 +44:14:2 +44:15:1 +44:16:4 +44:17:1 +44:18:2 +44:19:1 +44:20:4 +44:21:1 +44:22:22 +44:23:1 +44:24:4 +44:25:1 +44:26:2 +44:27:1 +44:28:4 +44:29:1 +44:30:2 +44:31:1 +44:32:4 +44:33:11 +44:34:2 +44:35:1 +44:36:4 +44:37:1 +44:38:2 +44:39:1 +44:40:4 +44:41:1 +44:42:2 +44:43:1 +44:44:44 +44:45:1 +44:46:2 +44:47:1 +44:48:4 +44:49:1 +44:50:2 +45:0:45 +45:1:1 +45:2:1 +45:3:3 +45:4:1 +45:5:5 +45:6:3 +45:7:1 +45:8:1 +45:9:9 +45:10:5 +45:11:1 +45:12:3 +45:13:1 +45:14:1 +45:15:15 +45:16:1 +45:17:1 +45:18:9 +45:19:1 +45:20:5 +45:21:3 +45:22:1 +45:23:1 +45:24:3 +45:25:5 +45:26:1 +45:27:9 +45:28:1 +45:29:1 +45:30:15 +45:31:1 +45:32:1 +45:33:3 +45:34:1 +45:35:5 +45:36:9 +45:37:1 +45:38:1 +45:39:3 +45:40:5 +45:41:1 +45:42:3 +45:43:1 +45:44:1 +45:45:45 +45:46:1 +45:47:1 +45:48:3 +45:49:1 +45:50:5 +46:0:46 +46:1:1 +46:2:2 +46:3:1 +46:4:2 +46:5:1 +46:6:2 +46:7:1 +46:8:2 +46:9:1 +46:10:2 +46:11:1 +46:12:2 +46:13:1 +46:14:2 +46:15:1 +46:16:2 +46:17:1 +46:18:2 +46:19:1 +46:20:2 +46:21:1 +46:22:2 +46:23:23 +46:24:2 +46:25:1 +46:26:2 +46:27:1 +46:28:2 +46:29:1 +46:30:2 +46:31:1 +46:32:2 +46:33:1 +46:34:2 +46:35:1 +46:36:2 +46:37:1 +46:38:2 +46:39:1 +46:40:2 +46:41:1 +46:42:2 +46:43:1 +46:44:2 +46:45:1 +46:46:46 +46:47:1 +46:48:2 +46:49:1 +46:50:2 +47:0:47 +47:1:1 +47:2:1 +47:3:1 +47:4:1 +47:5:1 +47:6:1 +47:7:1 +47:8:1 +47:9:1 +47:10:1 +47:11:1 +47:12:1 +47:13:1 +47:14:1 +47:15:1 +47:16:1 +47:17:1 +47:18:1 +47:19:1 +47:20:1 +47:21:1 +47:22:1 +47:23:1 +47:24:1 +47:25:1 +47:26:1 +47:27:1 +47:28:1 +47:29:1 +47:30:1 +47:31:1 +47:32:1 +47:33:1 +47:34:1 +47:35:1 +47:36:1 +47:37:1 +47:38:1 +47:39:1 +47:40:1 +47:41:1 +47:42:1 +47:43:1 +47:44:1 +47:45:1 +47:46:1 +47:47:47 +47:48:1 +47:49:1 +47:50:1 +48:0:48 +48:1:1 +48:2:2 +48:3:3 +48:4:4 +48:5:1 +48:6:6 +48:7:1 +48:8:8 +48:9:3 +48:10:2 +48:11:1 +48:12:12 +48:13:1 +48:14:2 +48:15:3 +48:16:16 +48:17:1 +48:18:6 +48:19:1 +48:20:4 +48:21:3 +48:22:2 +48:23:1 +48:24:24 +48:25:1 +48:26:2 +48:27:3 +48:28:4 +48:29:1 +48:30:6 +48:31:1 +48:32:16 +48:33:3 +48:34:2 +48:35:1 +48:36:12 +48:37:1 +48:38:2 +48:39:3 +48:40:8 +48:41:1 +48:42:6 +48:43:1 +48:44:4 +48:45:3 +48:46:2 +48:47:1 +48:48:48 +48:49:1 +48:50:2 +49:0:49 +49:1:1 +49:2:1 +49:3:1 +49:4:1 +49:5:1 +49:6:1 +49:7:7 +49:8:1 +49:9:1 +49:10:1 +49:11:1 +49:12:1 +49:13:1 +49:14:7 +49:15:1 +49:16:1 +49:17:1 +49:18:1 +49:19:1 +49:20:1 +49:21:7 +49:22:1 +49:23:1 +49:24:1 +49:25:1 +49:26:1 +49:27:1 +49:28:7 +49:29:1 +49:30:1 +49:31:1 +49:32:1 +49:33:1 +49:34:1 +49:35:7 +49:36:1 +49:37:1 +49:38:1 +49:39:1 +49:40:1 +49:41:1 +49:42:7 +49:43:1 +49:44:1 +49:45:1 +49:46:1 +49:47:1 +49:48:1 +49:49:49 +49:50:1 +50:0:50 +50:1:1 +50:2:2 +50:3:1 +50:4:2 +50:5:5 +50:6:2 +50:7:1 +50:8:2 +50:9:1 +50:10:10 +50:11:1 +50:12:2 +50:13:1 +50:14:2 +50:15:5 +50:16:2 +50:17:1 +50:18:2 +50:19:1 +50:20:10 +50:21:1 +50:22:2 +50:23:1 +50:24:2 +50:25:25 +50:26:2 +50:27:1 +50:28:2 +50:29:1 +50:30:10 +50:31:1 +50:32:2 +50:33:1 +50:34:2 +50:35:5 +50:36:2 +50:37:1 +50:38:2 +50:39:1 +50:40:10 +50:41:1 +50:42:2 +50:43:1 +50:44:2 +50:45:5 +50:46:2 +50:47:1 +50:48:2 +50:49:1 +50:50:50 +# +# Two consecutive Fibonacci numbers are a worst case scenario for +# Euclid's algorithm. +# +420196140727489673:679891637638612258:1 +394810887814999156320699623170776339:638817435613190341905763972389505493:1 diff --git a/t/author-lib-arithmetic-binary-_gcd.t b/t/author-lib-arithmetic-binary-_gcd.t new file mode 100644 index 0000000..be80f8a --- /dev/null +++ b/t/author-lib-arithmetic-binary-_gcd.t @@ -0,0 +1,172 @@ +#!perl + +BEGIN { + unless ($ENV{AUTHOR_TESTING}) { + require Test::More; + Test::More::plan(skip_all => + 'these tests are for testing by the author'); + } +} + +use strict; +use warnings; + +use Test::More tests => 10413; + +############################################################################### +# Read and load configuration file and backend library. + +use Config::Tiny (); + +my $config_file = 't/author-lib.ini'; +my $config = Config::Tiny -> read('t/author-lib.ini') + or die Config::Tiny -> errstr(); + +# Read the library to test. + +our $LIB = $config->{_}->{lib}; + +die "No library defined in file '$config_file'" + unless defined $LIB; +die "Invalid library name '$LIB' in file '$config_file'" + unless $LIB =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Read the reference type(s) the library uses. + +our $REF = $config->{_}->{ref}; + +die "No reference type defined in file '$config_file'" + unless defined $REF; +die "Invalid reference type '$REF' in file '$config_file'" + unless $REF =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Load the library. + +eval "require $LIB"; +die $@ if $@; + +############################################################################### + +can_ok($LIB, '_gcd'); + +my $scalar_util_ok = eval { require Scalar::Util; }; +Scalar::Util -> import('refaddr') if $scalar_util_ok; + +diag "Skipping some tests since Scalar::Util is not installed." + unless $scalar_util_ok; + +my @data; + +# Add data in data file. + +(my $datafile = $0) =~ s/\.t/.dat/; +open DATAFILE, $datafile or die "$datafile: can't open file for reading: $!"; +while () { + s/\s+\z//; + next if /^#/ || ! /\S/; + push @data, [ split /:/ ]; +} +close DATAFILE or die "$datafile: can't close file after reading: $!"; + +# List context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($x, $y, @got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\@got = $LIB->_gcd(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_gcd() in list context: $test", sub { + plan tests => $scalar_util_ok ? 9 : 8; + + cmp_ok(scalar @got, "==", 1, + "'$test' gives one output arg"); + + is(ref($got[0]), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got[0]), 0, + "'$test' output is valid"); + + is($LIB->_str($got[0]), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got[0]), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + my $strx = $LIB->_str($x); + ok($strx eq $out0 || $strx eq $in0, + "'$test' first input arg has the right value") + or diag(" got: $strx\n", " expected: ", + $out0 eq $in0 ? $out0 : "$out0 or $in0"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} + +# Scalar context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($got); + my ($x, $y); + my ($xo, $yo); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\$got = $LIB->_gcd(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_gcd() in scalar context: $test", sub { + plan tests => $scalar_util_ok ? 8 : 7; + + is(ref($got), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got), 0, + "'$test' output is valid"); + + is($LIB->_str($got), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + my $strx = $LIB->_str($x); + ok($strx eq $out0 || $strx eq $in0, + "'$test' first input arg has the right value") + or diag(" got: $strx\n", " expected: ", + $out0 eq $in0 ? $out0 : "$out0 or $in0"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} diff --git a/t/author-lib-arithmetic-binary-_lcm.dat b/t/author-lib-arithmetic-binary-_lcm.dat new file mode 100644 index 0000000..854ae92 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_lcm.dat @@ -0,0 +1,5057 @@ +# +# Small numbers +# +0:1:0 +0:2:0 +0:3:0 +0:4:0 +0:5:0 +0:6:0 +0:7:0 +0:8:0 +0:9:0 +0:10:0 +0:11:0 +0:12:0 +0:13:0 +0:14:0 +0:15:0 +0:16:0 +0:17:0 +0:18:0 +0:19:0 +0:20:0 +0:21:0 +0:22:0 +0:23:0 +0:24:0 +0:25:0 +0:26:0 +0:27:0 +0:28:0 +0:29:0 +0:30:0 +0:31:0 +0:32:0 +0:33:0 +0:34:0 +0:35:0 +0:36:0 +0:37:0 +0:38:0 +0:39:0 +0:40:0 +0:41:0 +0:42:0 +0:43:0 +0:44:0 +0:45:0 +0:46:0 +0:47:0 +0:48:0 +0:49:0 +0:50:0 +1:1:1 +1:2:2 +1:3:3 +1:4:4 +1:5:5 +1:6:6 +1:7:7 +1:8:8 +1:9:9 +1:10:10 +1:11:11 +1:12:12 +1:13:13 +1:14:14 +1:15:15 +1:16:16 +1:17:17 +1:18:18 +1:19:19 +1:20:20 +1:21:21 +1:22:22 +1:23:23 +1:24:24 +1:25:25 +1:26:26 +1:27:27 +1:28:28 +1:29:29 +1:30:30 +1:31:31 +1:32:32 +1:33:33 +1:34:34 +1:35:35 +1:36:36 +1:37:37 +1:38:38 +1:39:39 +1:40:40 +1:41:41 +1:42:42 +1:43:43 +1:44:44 +1:45:45 +1:46:46 +1:47:47 +1:48:48 +1:49:49 +1:50:50 +2:1:2 +2:2:2 +2:3:6 +2:4:4 +2:5:10 +2:6:6 +2:7:14 +2:8:8 +2:9:18 +2:10:10 +2:11:22 +2:12:12 +2:13:26 +2:14:14 +2:15:30 +2:16:16 +2:17:34 +2:18:18 +2:19:38 +2:20:20 +2:21:42 +2:22:22 +2:23:46 +2:24:24 +2:25:50 +2:26:26 +2:27:54 +2:28:28 +2:29:58 +2:30:30 +2:31:62 +2:32:32 +2:33:66 +2:34:34 +2:35:70 +2:36:36 +2:37:74 +2:38:38 +2:39:78 +2:40:40 +2:41:82 +2:42:42 +2:43:86 +2:44:44 +2:45:90 +2:46:46 +2:47:94 +2:48:48 +2:49:98 +2:50:50 +3:1:3 +3:2:6 +3:3:3 +3:4:12 +3:5:15 +3:6:6 +3:7:21 +3:8:24 +3:9:9 +3:10:30 +3:11:33 +3:12:12 +3:13:39 +3:14:42 +3:15:15 +3:16:48 +3:17:51 +3:18:18 +3:19:57 +3:20:60 +3:21:21 +3:22:66 +3:23:69 +3:24:24 +3:25:75 +3:26:78 +3:27:27 +3:28:84 +3:29:87 +3:30:30 +3:31:93 +3:32:96 +3:33:33 +3:34:102 +3:35:105 +3:36:36 +3:37:111 +3:38:114 +3:39:39 +3:40:120 +3:41:123 +3:42:42 +3:43:129 +3:44:132 +3:45:45 +3:46:138 +3:47:141 +3:48:48 +3:49:147 +3:50:150 +4:1:4 +4:2:4 +4:3:12 +4:4:4 +4:5:20 +4:6:12 +4:7:28 +4:8:8 +4:9:36 +4:10:20 +4:11:44 +4:12:12 +4:13:52 +4:14:28 +4:15:60 +4:16:16 +4:17:68 +4:18:36 +4:19:76 +4:20:20 +4:21:84 +4:22:44 +4:23:92 +4:24:24 +4:25:100 +4:26:52 +4:27:108 +4:28:28 +4:29:116 +4:30:60 +4:31:124 +4:32:32 +4:33:132 +4:34:68 +4:35:140 +4:36:36 +4:37:148 +4:38:76 +4:39:156 +4:40:40 +4:41:164 +4:42:84 +4:43:172 +4:44:44 +4:45:180 +4:46:92 +4:47:188 +4:48:48 +4:49:196 +4:50:100 +5:1:5 +5:2:10 +5:3:15 +5:4:20 +5:5:5 +5:6:30 +5:7:35 +5:8:40 +5:9:45 +5:10:10 +5:11:55 +5:12:60 +5:13:65 +5:14:70 +5:15:15 +5:16:80 +5:17:85 +5:18:90 +5:19:95 +5:20:20 +5:21:105 +5:22:110 +5:23:115 +5:24:120 +5:25:25 +5:26:130 +5:27:135 +5:28:140 +5:29:145 +5:30:30 +5:31:155 +5:32:160 +5:33:165 +5:34:170 +5:35:35 +5:36:180 +5:37:185 +5:38:190 +5:39:195 +5:40:40 +5:41:205 +5:42:210 +5:43:215 +5:44:220 +5:45:45 +5:46:230 +5:47:235 +5:48:240 +5:49:245 +5:50:50 +6:1:6 +6:2:6 +6:3:6 +6:4:12 +6:5:30 +6:6:6 +6:7:42 +6:8:24 +6:9:18 +6:10:30 +6:11:66 +6:12:12 +6:13:78 +6:14:42 +6:15:30 +6:16:48 +6:17:102 +6:18:18 +6:19:114 +6:20:60 +6:21:42 +6:22:66 +6:23:138 +6:24:24 +6:25:150 +6:26:78 +6:27:54 +6:28:84 +6:29:174 +6:30:30 +6:31:186 +6:32:96 +6:33:66 +6:34:102 +6:35:210 +6:36:36 +6:37:222 +6:38:114 +6:39:78 +6:40:120 +6:41:246 +6:42:42 +6:43:258 +6:44:132 +6:45:90 +6:46:138 +6:47:282 +6:48:48 +6:49:294 +6:50:150 +7:1:7 +7:2:14 +7:3:21 +7:4:28 +7:5:35 +7:6:42 +7:7:7 +7:8:56 +7:9:63 +7:10:70 +7:11:77 +7:12:84 +7:13:91 +7:14:14 +7:15:105 +7:16:112 +7:17:119 +7:18:126 +7:19:133 +7:20:140 +7:21:21 +7:22:154 +7:23:161 +7:24:168 +7:25:175 +7:26:182 +7:27:189 +7:28:28 +7:29:203 +7:30:210 +7:31:217 +7:32:224 +7:33:231 +7:34:238 +7:35:35 +7:36:252 +7:37:259 +7:38:266 +7:39:273 +7:40:280 +7:41:287 +7:42:42 +7:43:301 +7:44:308 +7:45:315 +7:46:322 +7:47:329 +7:48:336 +7:49:49 +7:50:350 +8:1:8 +8:2:8 +8:3:24 +8:4:8 +8:5:40 +8:6:24 +8:7:56 +8:8:8 +8:9:72 +8:10:40 +8:11:88 +8:12:24 +8:13:104 +8:14:56 +8:15:120 +8:16:16 +8:17:136 +8:18:72 +8:19:152 +8:20:40 +8:21:168 +8:22:88 +8:23:184 +8:24:24 +8:25:200 +8:26:104 +8:27:216 +8:28:56 +8:29:232 +8:30:120 +8:31:248 +8:32:32 +8:33:264 +8:34:136 +8:35:280 +8:36:72 +8:37:296 +8:38:152 +8:39:312 +8:40:40 +8:41:328 +8:42:168 +8:43:344 +8:44:88 +8:45:360 +8:46:184 +8:47:376 +8:48:48 +8:49:392 +8:50:200 +9:1:9 +9:2:18 +9:3:9 +9:4:36 +9:5:45 +9:6:18 +9:7:63 +9:8:72 +9:9:9 +9:10:90 +9:11:99 +9:12:36 +9:13:117 +9:14:126 +9:15:45 +9:16:144 +9:17:153 +9:18:18 +9:19:171 +9:20:180 +9:21:63 +9:22:198 +9:23:207 +9:24:72 +9:25:225 +9:26:234 +9:27:27 +9:28:252 +9:29:261 +9:30:90 +9:31:279 +9:32:288 +9:33:99 +9:34:306 +9:35:315 +9:36:36 +9:37:333 +9:38:342 +9:39:117 +9:40:360 +9:41:369 +9:42:126 +9:43:387 +9:44:396 +9:45:45 +9:46:414 +9:47:423 +9:48:144 +9:49:441 +9:50:450 +10:1:10 +10:2:10 +10:3:30 +10:4:20 +10:5:10 +10:6:30 +10:7:70 +10:8:40 +10:9:90 +10:10:10 +10:11:110 +10:12:60 +10:13:130 +10:14:70 +10:15:30 +10:16:80 +10:17:170 +10:18:90 +10:19:190 +10:20:20 +10:21:210 +10:22:110 +10:23:230 +10:24:120 +10:25:50 +10:26:130 +10:27:270 +10:28:140 +10:29:290 +10:30:30 +10:31:310 +10:32:160 +10:33:330 +10:34:170 +10:35:70 +10:36:180 +10:37:370 +10:38:190 +10:39:390 +10:40:40 +10:41:410 +10:42:210 +10:43:430 +10:44:220 +10:45:90 +10:46:230 +10:47:470 +10:48:240 +10:49:490 +10:50:50 +11:1:11 +11:2:22 +11:3:33 +11:4:44 +11:5:55 +11:6:66 +11:7:77 +11:8:88 +11:9:99 +11:10:110 +11:11:11 +11:12:132 +11:13:143 +11:14:154 +11:15:165 +11:16:176 +11:17:187 +11:18:198 +11:19:209 +11:20:220 +11:21:231 +11:22:22 +11:23:253 +11:24:264 +11:25:275 +11:26:286 +11:27:297 +11:28:308 +11:29:319 +11:30:330 +11:31:341 +11:32:352 +11:33:33 +11:34:374 +11:35:385 +11:36:396 +11:37:407 +11:38:418 +11:39:429 +11:40:440 +11:41:451 +11:42:462 +11:43:473 +11:44:44 +11:45:495 +11:46:506 +11:47:517 +11:48:528 +11:49:539 +11:50:550 +12:1:12 +12:2:12 +12:3:12 +12:4:12 +12:5:60 +12:6:12 +12:7:84 +12:8:24 +12:9:36 +12:10:60 +12:11:132 +12:12:12 +12:13:156 +12:14:84 +12:15:60 +12:16:48 +12:17:204 +12:18:36 +12:19:228 +12:20:60 +12:21:84 +12:22:132 +12:23:276 +12:24:24 +12:25:300 +12:26:156 +12:27:108 +12:28:84 +12:29:348 +12:30:60 +12:31:372 +12:32:96 +12:33:132 +12:34:204 +12:35:420 +12:36:36 +12:37:444 +12:38:228 +12:39:156 +12:40:120 +12:41:492 +12:42:84 +12:43:516 +12:44:132 +12:45:180 +12:46:276 +12:47:564 +12:48:48 +12:49:588 +12:50:300 +13:1:13 +13:2:26 +13:3:39 +13:4:52 +13:5:65 +13:6:78 +13:7:91 +13:8:104 +13:9:117 +13:10:130 +13:11:143 +13:12:156 +13:13:13 +13:14:182 +13:15:195 +13:16:208 +13:17:221 +13:18:234 +13:19:247 +13:20:260 +13:21:273 +13:22:286 +13:23:299 +13:24:312 +13:25:325 +13:26:26 +13:27:351 +13:28:364 +13:29:377 +13:30:390 +13:31:403 +13:32:416 +13:33:429 +13:34:442 +13:35:455 +13:36:468 +13:37:481 +13:38:494 +13:39:39 +13:40:520 +13:41:533 +13:42:546 +13:43:559 +13:44:572 +13:45:585 +13:46:598 +13:47:611 +13:48:624 +13:49:637 +13:50:650 +14:1:14 +14:2:14 +14:3:42 +14:4:28 +14:5:70 +14:6:42 +14:7:14 +14:8:56 +14:9:126 +14:10:70 +14:11:154 +14:12:84 +14:13:182 +14:14:14 +14:15:210 +14:16:112 +14:17:238 +14:18:126 +14:19:266 +14:20:140 +14:21:42 +14:22:154 +14:23:322 +14:24:168 +14:25:350 +14:26:182 +14:27:378 +14:28:28 +14:29:406 +14:30:210 +14:31:434 +14:32:224 +14:33:462 +14:34:238 +14:35:70 +14:36:252 +14:37:518 +14:38:266 +14:39:546 +14:40:280 +14:41:574 +14:42:42 +14:43:602 +14:44:308 +14:45:630 +14:46:322 +14:47:658 +14:48:336 +14:49:98 +14:50:350 +15:1:15 +15:2:30 +15:3:15 +15:4:60 +15:5:15 +15:6:30 +15:7:105 +15:8:120 +15:9:45 +15:10:30 +15:11:165 +15:12:60 +15:13:195 +15:14:210 +15:15:15 +15:16:240 +15:17:255 +15:18:90 +15:19:285 +15:20:60 +15:21:105 +15:22:330 +15:23:345 +15:24:120 +15:25:75 +15:26:390 +15:27:135 +15:28:420 +15:29:435 +15:30:30 +15:31:465 +15:32:480 +15:33:165 +15:34:510 +15:35:105 +15:36:180 +15:37:555 +15:38:570 +15:39:195 +15:40:120 +15:41:615 +15:42:210 +15:43:645 +15:44:660 +15:45:45 +15:46:690 +15:47:705 +15:48:240 +15:49:735 +15:50:150 +16:1:16 +16:2:16 +16:3:48 +16:4:16 +16:5:80 +16:6:48 +16:7:112 +16:8:16 +16:9:144 +16:10:80 +16:11:176 +16:12:48 +16:13:208 +16:14:112 +16:15:240 +16:16:16 +16:17:272 +16:18:144 +16:19:304 +16:20:80 +16:21:336 +16:22:176 +16:23:368 +16:24:48 +16:25:400 +16:26:208 +16:27:432 +16:28:112 +16:29:464 +16:30:240 +16:31:496 +16:32:32 +16:33:528 +16:34:272 +16:35:560 +16:36:144 +16:37:592 +16:38:304 +16:39:624 +16:40:80 +16:41:656 +16:42:336 +16:43:688 +16:44:176 +16:45:720 +16:46:368 +16:47:752 +16:48:48 +16:49:784 +16:50:400 +17:1:17 +17:2:34 +17:3:51 +17:4:68 +17:5:85 +17:6:102 +17:7:119 +17:8:136 +17:9:153 +17:10:170 +17:11:187 +17:12:204 +17:13:221 +17:14:238 +17:15:255 +17:16:272 +17:17:17 +17:18:306 +17:19:323 +17:20:340 +17:21:357 +17:22:374 +17:23:391 +17:24:408 +17:25:425 +17:26:442 +17:27:459 +17:28:476 +17:29:493 +17:30:510 +17:31:527 +17:32:544 +17:33:561 +17:34:34 +17:35:595 +17:36:612 +17:37:629 +17:38:646 +17:39:663 +17:40:680 +17:41:697 +17:42:714 +17:43:731 +17:44:748 +17:45:765 +17:46:782 +17:47:799 +17:48:816 +17:49:833 +17:50:850 +18:1:18 +18:2:18 +18:3:18 +18:4:36 +18:5:90 +18:6:18 +18:7:126 +18:8:72 +18:9:18 +18:10:90 +18:11:198 +18:12:36 +18:13:234 +18:14:126 +18:15:90 +18:16:144 +18:17:306 +18:18:18 +18:19:342 +18:20:180 +18:21:126 +18:22:198 +18:23:414 +18:24:72 +18:25:450 +18:26:234 +18:27:54 +18:28:252 +18:29:522 +18:30:90 +18:31:558 +18:32:288 +18:33:198 +18:34:306 +18:35:630 +18:36:36 +18:37:666 +18:38:342 +18:39:234 +18:40:360 +18:41:738 +18:42:126 +18:43:774 +18:44:396 +18:45:90 +18:46:414 +18:47:846 +18:48:144 +18:49:882 +18:50:450 +19:1:19 +19:2:38 +19:3:57 +19:4:76 +19:5:95 +19:6:114 +19:7:133 +19:8:152 +19:9:171 +19:10:190 +19:11:209 +19:12:228 +19:13:247 +19:14:266 +19:15:285 +19:16:304 +19:17:323 +19:18:342 +19:19:19 +19:20:380 +19:21:399 +19:22:418 +19:23:437 +19:24:456 +19:25:475 +19:26:494 +19:27:513 +19:28:532 +19:29:551 +19:30:570 +19:31:589 +19:32:608 +19:33:627 +19:34:646 +19:35:665 +19:36:684 +19:37:703 +19:38:38 +19:39:741 +19:40:760 +19:41:779 +19:42:798 +19:43:817 +19:44:836 +19:45:855 +19:46:874 +19:47:893 +19:48:912 +19:49:931 +19:50:950 +20:1:20 +20:2:20 +20:3:60 +20:4:20 +20:5:20 +20:6:60 +20:7:140 +20:8:40 +20:9:180 +20:10:20 +20:11:220 +20:12:60 +20:13:260 +20:14:140 +20:15:60 +20:16:80 +20:17:340 +20:18:180 +20:19:380 +20:20:20 +20:21:420 +20:22:220 +20:23:460 +20:24:120 +20:25:100 +20:26:260 +20:27:540 +20:28:140 +20:29:580 +20:30:60 +20:31:620 +20:32:160 +20:33:660 +20:34:340 +20:35:140 +20:36:180 +20:37:740 +20:38:380 +20:39:780 +20:40:40 +20:41:820 +20:42:420 +20:43:860 +20:44:220 +20:45:180 +20:46:460 +20:47:940 +20:48:240 +20:49:980 +20:50:100 +21:1:21 +21:2:42 +21:3:21 +21:4:84 +21:5:105 +21:6:42 +21:7:21 +21:8:168 +21:9:63 +21:10:210 +21:11:231 +21:12:84 +21:13:273 +21:14:42 +21:15:105 +21:16:336 +21:17:357 +21:18:126 +21:19:399 +21:20:420 +21:21:21 +21:22:462 +21:23:483 +21:24:168 +21:25:525 +21:26:546 +21:27:189 +21:28:84 +21:29:609 +21:30:210 +21:31:651 +21:32:672 +21:33:231 +21:34:714 +21:35:105 +21:36:252 +21:37:777 +21:38:798 +21:39:273 +21:40:840 +21:41:861 +21:42:42 +21:43:903 +21:44:924 +21:45:315 +21:46:966 +21:47:987 +21:48:336 +21:49:147 +21:50:1050 +22:1:22 +22:2:22 +22:3:66 +22:4:44 +22:5:110 +22:6:66 +22:7:154 +22:8:88 +22:9:198 +22:10:110 +22:11:22 +22:12:132 +22:13:286 +22:14:154 +22:15:330 +22:16:176 +22:17:374 +22:18:198 +22:19:418 +22:20:220 +22:21:462 +22:22:22 +22:23:506 +22:24:264 +22:25:550 +22:26:286 +22:27:594 +22:28:308 +22:29:638 +22:30:330 +22:31:682 +22:32:352 +22:33:66 +22:34:374 +22:35:770 +22:36:396 +22:37:814 +22:38:418 +22:39:858 +22:40:440 +22:41:902 +22:42:462 +22:43:946 +22:44:44 +22:45:990 +22:46:506 +22:47:1034 +22:48:528 +22:49:1078 +22:50:550 +23:1:23 +23:2:46 +23:3:69 +23:4:92 +23:5:115 +23:6:138 +23:7:161 +23:8:184 +23:9:207 +23:10:230 +23:11:253 +23:12:276 +23:13:299 +23:14:322 +23:15:345 +23:16:368 +23:17:391 +23:18:414 +23:19:437 +23:20:460 +23:21:483 +23:22:506 +23:23:23 +23:24:552 +23:25:575 +23:26:598 +23:27:621 +23:28:644 +23:29:667 +23:30:690 +23:31:713 +23:32:736 +23:33:759 +23:34:782 +23:35:805 +23:36:828 +23:37:851 +23:38:874 +23:39:897 +23:40:920 +23:41:943 +23:42:966 +23:43:989 +23:44:1012 +23:45:1035 +23:46:46 +23:47:1081 +23:48:1104 +23:49:1127 +23:50:1150 +24:1:24 +24:2:24 +24:3:24 +24:4:24 +24:5:120 +24:6:24 +24:7:168 +24:8:24 +24:9:72 +24:10:120 +24:11:264 +24:12:24 +24:13:312 +24:14:168 +24:15:120 +24:16:48 +24:17:408 +24:18:72 +24:19:456 +24:20:120 +24:21:168 +24:22:264 +24:23:552 +24:24:24 +24:25:600 +24:26:312 +24:27:216 +24:28:168 +24:29:696 +24:30:120 +24:31:744 +24:32:96 +24:33:264 +24:34:408 +24:35:840 +24:36:72 +24:37:888 +24:38:456 +24:39:312 +24:40:120 +24:41:984 +24:42:168 +24:43:1032 +24:44:264 +24:45:360 +24:46:552 +24:47:1128 +24:48:48 +24:49:1176 +24:50:600 +25:1:25 +25:2:50 +25:3:75 +25:4:100 +25:5:25 +25:6:150 +25:7:175 +25:8:200 +25:9:225 +25:10:50 +25:11:275 +25:12:300 +25:13:325 +25:14:350 +25:15:75 +25:16:400 +25:17:425 +25:18:450 +25:19:475 +25:20:100 +25:21:525 +25:22:550 +25:23:575 +25:24:600 +25:25:25 +25:26:650 +25:27:675 +25:28:700 +25:29:725 +25:30:150 +25:31:775 +25:32:800 +25:33:825 +25:34:850 +25:35:175 +25:36:900 +25:37:925 +25:38:950 +25:39:975 +25:40:200 +25:41:1025 +25:42:1050 +25:43:1075 +25:44:1100 +25:45:225 +25:46:1150 +25:47:1175 +25:48:1200 +25:49:1225 +25:50:50 +26:1:26 +26:2:26 +26:3:78 +26:4:52 +26:5:130 +26:6:78 +26:7:182 +26:8:104 +26:9:234 +26:10:130 +26:11:286 +26:12:156 +26:13:26 +26:14:182 +26:15:390 +26:16:208 +26:17:442 +26:18:234 +26:19:494 +26:20:260 +26:21:546 +26:22:286 +26:23:598 +26:24:312 +26:25:650 +26:26:26 +26:27:702 +26:28:364 +26:29:754 +26:30:390 +26:31:806 +26:32:416 +26:33:858 +26:34:442 +26:35:910 +26:36:468 +26:37:962 +26:38:494 +26:39:78 +26:40:520 +26:41:1066 +26:42:546 +26:43:1118 +26:44:572 +26:45:1170 +26:46:598 +26:47:1222 +26:48:624 +26:49:1274 +26:50:650 +27:1:27 +27:2:54 +27:3:27 +27:4:108 +27:5:135 +27:6:54 +27:7:189 +27:8:216 +27:9:27 +27:10:270 +27:11:297 +27:12:108 +27:13:351 +27:14:378 +27:15:135 +27:16:432 +27:17:459 +27:18:54 +27:19:513 +27:20:540 +27:21:189 +27:22:594 +27:23:621 +27:24:216 +27:25:675 +27:26:702 +27:27:27 +27:28:756 +27:29:783 +27:30:270 +27:31:837 +27:32:864 +27:33:297 +27:34:918 +27:35:945 +27:36:108 +27:37:999 +27:38:1026 +27:39:351 +27:40:1080 +27:41:1107 +27:42:378 +27:43:1161 +27:44:1188 +27:45:135 +27:46:1242 +27:47:1269 +27:48:432 +27:49:1323 +27:50:1350 +28:1:28 +28:2:28 +28:3:84 +28:4:28 +28:5:140 +28:6:84 +28:7:28 +28:8:56 +28:9:252 +28:10:140 +28:11:308 +28:12:84 +28:13:364 +28:14:28 +28:15:420 +28:16:112 +28:17:476 +28:18:252 +28:19:532 +28:20:140 +28:21:84 +28:22:308 +28:23:644 +28:24:168 +28:25:700 +28:26:364 +28:27:756 +28:28:28 +28:29:812 +28:30:420 +28:31:868 +28:32:224 +28:33:924 +28:34:476 +28:35:140 +28:36:252 +28:37:1036 +28:38:532 +28:39:1092 +28:40:280 +28:41:1148 +28:42:84 +28:43:1204 +28:44:308 +28:45:1260 +28:46:644 +28:47:1316 +28:48:336 +28:49:196 +28:50:700 +29:1:29 +29:2:58 +29:3:87 +29:4:116 +29:5:145 +29:6:174 +29:7:203 +29:8:232 +29:9:261 +29:10:290 +29:11:319 +29:12:348 +29:13:377 +29:14:406 +29:15:435 +29:16:464 +29:17:493 +29:18:522 +29:19:551 +29:20:580 +29:21:609 +29:22:638 +29:23:667 +29:24:696 +29:25:725 +29:26:754 +29:27:783 +29:28:812 +29:29:29 +29:30:870 +29:31:899 +29:32:928 +29:33:957 +29:34:986 +29:35:1015 +29:36:1044 +29:37:1073 +29:38:1102 +29:39:1131 +29:40:1160 +29:41:1189 +29:42:1218 +29:43:1247 +29:44:1276 +29:45:1305 +29:46:1334 +29:47:1363 +29:48:1392 +29:49:1421 +29:50:1450 +30:1:30 +30:2:30 +30:3:30 +30:4:60 +30:5:30 +30:6:30 +30:7:210 +30:8:120 +30:9:90 +30:10:30 +30:11:330 +30:12:60 +30:13:390 +30:14:210 +30:15:30 +30:16:240 +30:17:510 +30:18:90 +30:19:570 +30:20:60 +30:21:210 +30:22:330 +30:23:690 +30:24:120 +30:25:150 +30:26:390 +30:27:270 +30:28:420 +30:29:870 +30:30:30 +30:31:930 +30:32:480 +30:33:330 +30:34:510 +30:35:210 +30:36:180 +30:37:1110 +30:38:570 +30:39:390 +30:40:120 +30:41:1230 +30:42:210 +30:43:1290 +30:44:660 +30:45:90 +30:46:690 +30:47:1410 +30:48:240 +30:49:1470 +30:50:150 +31:1:31 +31:2:62 +31:3:93 +31:4:124 +31:5:155 +31:6:186 +31:7:217 +31:8:248 +31:9:279 +31:10:310 +31:11:341 +31:12:372 +31:13:403 +31:14:434 +31:15:465 +31:16:496 +31:17:527 +31:18:558 +31:19:589 +31:20:620 +31:21:651 +31:22:682 +31:23:713 +31:24:744 +31:25:775 +31:26:806 +31:27:837 +31:28:868 +31:29:899 +31:30:930 +31:31:31 +31:32:992 +31:33:1023 +31:34:1054 +31:35:1085 +31:36:1116 +31:37:1147 +31:38:1178 +31:39:1209 +31:40:1240 +31:41:1271 +31:42:1302 +31:43:1333 +31:44:1364 +31:45:1395 +31:46:1426 +31:47:1457 +31:48:1488 +31:49:1519 +31:50:1550 +32:1:32 +32:2:32 +32:3:96 +32:4:32 +32:5:160 +32:6:96 +32:7:224 +32:8:32 +32:9:288 +32:10:160 +32:11:352 +32:12:96 +32:13:416 +32:14:224 +32:15:480 +32:16:32 +32:17:544 +32:18:288 +32:19:608 +32:20:160 +32:21:672 +32:22:352 +32:23:736 +32:24:96 +32:25:800 +32:26:416 +32:27:864 +32:28:224 +32:29:928 +32:30:480 +32:31:992 +32:32:32 +32:33:1056 +32:34:544 +32:35:1120 +32:36:288 +32:37:1184 +32:38:608 +32:39:1248 +32:40:160 +32:41:1312 +32:42:672 +32:43:1376 +32:44:352 +32:45:1440 +32:46:736 +32:47:1504 +32:48:96 +32:49:1568 +32:50:800 +33:1:33 +33:2:66 +33:3:33 +33:4:132 +33:5:165 +33:6:66 +33:7:231 +33:8:264 +33:9:99 +33:10:330 +33:11:33 +33:12:132 +33:13:429 +33:14:462 +33:15:165 +33:16:528 +33:17:561 +33:18:198 +33:19:627 +33:20:660 +33:21:231 +33:22:66 +33:23:759 +33:24:264 +33:25:825 +33:26:858 +33:27:297 +33:28:924 +33:29:957 +33:30:330 +33:31:1023 +33:32:1056 +33:33:33 +33:34:1122 +33:35:1155 +33:36:396 +33:37:1221 +33:38:1254 +33:39:429 +33:40:1320 +33:41:1353 +33:42:462 +33:43:1419 +33:44:132 +33:45:495 +33:46:1518 +33:47:1551 +33:48:528 +33:49:1617 +33:50:1650 +34:1:34 +34:2:34 +34:3:102 +34:4:68 +34:5:170 +34:6:102 +34:7:238 +34:8:136 +34:9:306 +34:10:170 +34:11:374 +34:12:204 +34:13:442 +34:14:238 +34:15:510 +34:16:272 +34:17:34 +34:18:306 +34:19:646 +34:20:340 +34:21:714 +34:22:374 +34:23:782 +34:24:408 +34:25:850 +34:26:442 +34:27:918 +34:28:476 +34:29:986 +34:30:510 +34:31:1054 +34:32:544 +34:33:1122 +34:34:34 +34:35:1190 +34:36:612 +34:37:1258 +34:38:646 +34:39:1326 +34:40:680 +34:41:1394 +34:42:714 +34:43:1462 +34:44:748 +34:45:1530 +34:46:782 +34:47:1598 +34:48:816 +34:49:1666 +34:50:850 +35:1:35 +35:2:70 +35:3:105 +35:4:140 +35:5:35 +35:6:210 +35:7:35 +35:8:280 +35:9:315 +35:10:70 +35:11:385 +35:12:420 +35:13:455 +35:14:70 +35:15:105 +35:16:560 +35:17:595 +35:18:630 +35:19:665 +35:20:140 +35:21:105 +35:22:770 +35:23:805 +35:24:840 +35:25:175 +35:26:910 +35:27:945 +35:28:140 +35:29:1015 +35:30:210 +35:31:1085 +35:32:1120 +35:33:1155 +35:34:1190 +35:35:35 +35:36:1260 +35:37:1295 +35:38:1330 +35:39:1365 +35:40:280 +35:41:1435 +35:42:210 +35:43:1505 +35:44:1540 +35:45:315 +35:46:1610 +35:47:1645 +35:48:1680 +35:49:245 +35:50:350 +36:1:36 +36:2:36 +36:3:36 +36:4:36 +36:5:180 +36:6:36 +36:7:252 +36:8:72 +36:9:36 +36:10:180 +36:11:396 +36:12:36 +36:13:468 +36:14:252 +36:15:180 +36:16:144 +36:17:612 +36:18:36 +36:19:684 +36:20:180 +36:21:252 +36:22:396 +36:23:828 +36:24:72 +36:25:900 +36:26:468 +36:27:108 +36:28:252 +36:29:1044 +36:30:180 +36:31:1116 +36:32:288 +36:33:396 +36:34:612 +36:35:1260 +36:36:36 +36:37:1332 +36:38:684 +36:39:468 +36:40:360 +36:41:1476 +36:42:252 +36:43:1548 +36:44:396 +36:45:180 +36:46:828 +36:47:1692 +36:48:144 +36:49:1764 +36:50:900 +37:1:37 +37:2:74 +37:3:111 +37:4:148 +37:5:185 +37:6:222 +37:7:259 +37:8:296 +37:9:333 +37:10:370 +37:11:407 +37:12:444 +37:13:481 +37:14:518 +37:15:555 +37:16:592 +37:17:629 +37:18:666 +37:19:703 +37:20:740 +37:21:777 +37:22:814 +37:23:851 +37:24:888 +37:25:925 +37:26:962 +37:27:999 +37:28:1036 +37:29:1073 +37:30:1110 +37:31:1147 +37:32:1184 +37:33:1221 +37:34:1258 +37:35:1295 +37:36:1332 +37:37:37 +37:38:1406 +37:39:1443 +37:40:1480 +37:41:1517 +37:42:1554 +37:43:1591 +37:44:1628 +37:45:1665 +37:46:1702 +37:47:1739 +37:48:1776 +37:49:1813 +37:50:1850 +38:1:38 +38:2:38 +38:3:114 +38:4:76 +38:5:190 +38:6:114 +38:7:266 +38:8:152 +38:9:342 +38:10:190 +38:11:418 +38:12:228 +38:13:494 +38:14:266 +38:15:570 +38:16:304 +38:17:646 +38:18:342 +38:19:38 +38:20:380 +38:21:798 +38:22:418 +38:23:874 +38:24:456 +38:25:950 +38:26:494 +38:27:1026 +38:28:532 +38:29:1102 +38:30:570 +38:31:1178 +38:32:608 +38:33:1254 +38:34:646 +38:35:1330 +38:36:684 +38:37:1406 +38:38:38 +38:39:1482 +38:40:760 +38:41:1558 +38:42:798 +38:43:1634 +38:44:836 +38:45:1710 +38:46:874 +38:47:1786 +38:48:912 +38:49:1862 +38:50:950 +39:1:39 +39:2:78 +39:3:39 +39:4:156 +39:5:195 +39:6:78 +39:7:273 +39:8:312 +39:9:117 +39:10:390 +39:11:429 +39:12:156 +39:13:39 +39:14:546 +39:15:195 +39:16:624 +39:17:663 +39:18:234 +39:19:741 +39:20:780 +39:21:273 +39:22:858 +39:23:897 +39:24:312 +39:25:975 +39:26:78 +39:27:351 +39:28:1092 +39:29:1131 +39:30:390 +39:31:1209 +39:32:1248 +39:33:429 +39:34:1326 +39:35:1365 +39:36:468 +39:37:1443 +39:38:1482 +39:39:39 +39:40:1560 +39:41:1599 +39:42:546 +39:43:1677 +39:44:1716 +39:45:585 +39:46:1794 +39:47:1833 +39:48:624 +39:49:1911 +39:50:1950 +40:1:40 +40:2:40 +40:3:120 +40:4:40 +40:5:40 +40:6:120 +40:7:280 +40:8:40 +40:9:360 +40:10:40 +40:11:440 +40:12:120 +40:13:520 +40:14:280 +40:15:120 +40:16:80 +40:17:680 +40:18:360 +40:19:760 +40:20:40 +40:21:840 +40:22:440 +40:23:920 +40:24:120 +40:25:200 +40:26:520 +40:27:1080 +40:28:280 +40:29:1160 +40:30:120 +40:31:1240 +40:32:160 +40:33:1320 +40:34:680 +40:35:280 +40:36:360 +40:37:1480 +40:38:760 +40:39:1560 +40:40:40 +40:41:1640 +40:42:840 +40:43:1720 +40:44:440 +40:45:360 +40:46:920 +40:47:1880 +40:48:240 +40:49:1960 +40:50:200 +41:1:41 +41:2:82 +41:3:123 +41:4:164 +41:5:205 +41:6:246 +41:7:287 +41:8:328 +41:9:369 +41:10:410 +41:11:451 +41:12:492 +41:13:533 +41:14:574 +41:15:615 +41:16:656 +41:17:697 +41:18:738 +41:19:779 +41:20:820 +41:21:861 +41:22:902 +41:23:943 +41:24:984 +41:25:1025 +41:26:1066 +41:27:1107 +41:28:1148 +41:29:1189 +41:30:1230 +41:31:1271 +41:32:1312 +41:33:1353 +41:34:1394 +41:35:1435 +41:36:1476 +41:37:1517 +41:38:1558 +41:39:1599 +41:40:1640 +41:41:41 +41:42:1722 +41:43:1763 +41:44:1804 +41:45:1845 +41:46:1886 +41:47:1927 +41:48:1968 +41:49:2009 +41:50:2050 +42:1:42 +42:2:42 +42:3:42 +42:4:84 +42:5:210 +42:6:42 +42:7:42 +42:8:168 +42:9:126 +42:10:210 +42:11:462 +42:12:84 +42:13:546 +42:14:42 +42:15:210 +42:16:336 +42:17:714 +42:18:126 +42:19:798 +42:20:420 +42:21:42 +42:22:462 +42:23:966 +42:24:168 +42:25:1050 +42:26:546 +42:27:378 +42:28:84 +42:29:1218 +42:30:210 +42:31:1302 +42:32:672 +42:33:462 +42:34:714 +42:35:210 +42:36:252 +42:37:1554 +42:38:798 +42:39:546 +42:40:840 +42:41:1722 +42:42:42 +42:43:1806 +42:44:924 +42:45:630 +42:46:966 +42:47:1974 +42:48:336 +42:49:294 +42:50:1050 +43:1:43 +43:2:86 +43:3:129 +43:4:172 +43:5:215 +43:6:258 +43:7:301 +43:8:344 +43:9:387 +43:10:430 +43:11:473 +43:12:516 +43:13:559 +43:14:602 +43:15:645 +43:16:688 +43:17:731 +43:18:774 +43:19:817 +43:20:860 +43:21:903 +43:22:946 +43:23:989 +43:24:1032 +43:25:1075 +43:26:1118 +43:27:1161 +43:28:1204 +43:29:1247 +43:30:1290 +43:31:1333 +43:32:1376 +43:33:1419 +43:34:1462 +43:35:1505 +43:36:1548 +43:37:1591 +43:38:1634 +43:39:1677 +43:40:1720 +43:41:1763 +43:42:1806 +43:43:43 +43:44:1892 +43:45:1935 +43:46:1978 +43:47:2021 +43:48:2064 +43:49:2107 +43:50:2150 +44:1:44 +44:2:44 +44:3:132 +44:4:44 +44:5:220 +44:6:132 +44:7:308 +44:8:88 +44:9:396 +44:10:220 +44:11:44 +44:12:132 +44:13:572 +44:14:308 +44:15:660 +44:16:176 +44:17:748 +44:18:396 +44:19:836 +44:20:220 +44:21:924 +44:22:44 +44:23:1012 +44:24:264 +44:25:1100 +44:26:572 +44:27:1188 +44:28:308 +44:29:1276 +44:30:660 +44:31:1364 +44:32:352 +44:33:132 +44:34:748 +44:35:1540 +44:36:396 +44:37:1628 +44:38:836 +44:39:1716 +44:40:440 +44:41:1804 +44:42:924 +44:43:1892 +44:44:44 +44:45:1980 +44:46:1012 +44:47:2068 +44:48:528 +44:49:2156 +44:50:1100 +45:1:45 +45:2:90 +45:3:45 +45:4:180 +45:5:45 +45:6:90 +45:7:315 +45:8:360 +45:9:45 +45:10:90 +45:11:495 +45:12:180 +45:13:585 +45:14:630 +45:15:45 +45:16:720 +45:17:765 +45:18:90 +45:19:855 +45:20:180 +45:21:315 +45:22:990 +45:23:1035 +45:24:360 +45:25:225 +45:26:1170 +45:27:135 +45:28:1260 +45:29:1305 +45:30:90 +45:31:1395 +45:32:1440 +45:33:495 +45:34:1530 +45:35:315 +45:36:180 +45:37:1665 +45:38:1710 +45:39:585 +45:40:360 +45:41:1845 +45:42:630 +45:43:1935 +45:44:1980 +45:45:45 +45:46:2070 +45:47:2115 +45:48:720 +45:49:2205 +45:50:450 +46:1:46 +46:2:46 +46:3:138 +46:4:92 +46:5:230 +46:6:138 +46:7:322 +46:8:184 +46:9:414 +46:10:230 +46:11:506 +46:12:276 +46:13:598 +46:14:322 +46:15:690 +46:16:368 +46:17:782 +46:18:414 +46:19:874 +46:20:460 +46:21:966 +46:22:506 +46:23:46 +46:24:552 +46:25:1150 +46:26:598 +46:27:1242 +46:28:644 +46:29:1334 +46:30:690 +46:31:1426 +46:32:736 +46:33:1518 +46:34:782 +46:35:1610 +46:36:828 +46:37:1702 +46:38:874 +46:39:1794 +46:40:920 +46:41:1886 +46:42:966 +46:43:1978 +46:44:1012 +46:45:2070 +46:46:46 +46:47:2162 +46:48:1104 +46:49:2254 +46:50:1150 +47:1:47 +47:2:94 +47:3:141 +47:4:188 +47:5:235 +47:6:282 +47:7:329 +47:8:376 +47:9:423 +47:10:470 +47:11:517 +47:12:564 +47:13:611 +47:14:658 +47:15:705 +47:16:752 +47:17:799 +47:18:846 +47:19:893 +47:20:940 +47:21:987 +47:22:1034 +47:23:1081 +47:24:1128 +47:25:1175 +47:26:1222 +47:27:1269 +47:28:1316 +47:29:1363 +47:30:1410 +47:31:1457 +47:32:1504 +47:33:1551 +47:34:1598 +47:35:1645 +47:36:1692 +47:37:1739 +47:38:1786 +47:39:1833 +47:40:1880 +47:41:1927 +47:42:1974 +47:43:2021 +47:44:2068 +47:45:2115 +47:46:2162 +47:47:47 +47:48:2256 +47:49:2303 +47:50:2350 +48:1:48 +48:2:48 +48:3:48 +48:4:48 +48:5:240 +48:6:48 +48:7:336 +48:8:48 +48:9:144 +48:10:240 +48:11:528 +48:12:48 +48:13:624 +48:14:336 +48:15:240 +48:16:48 +48:17:816 +48:18:144 +48:19:912 +48:20:240 +48:21:336 +48:22:528 +48:23:1104 +48:24:48 +48:25:1200 +48:26:624 +48:27:432 +48:28:336 +48:29:1392 +48:30:240 +48:31:1488 +48:32:96 +48:33:528 +48:34:816 +48:35:1680 +48:36:144 +48:37:1776 +48:38:912 +48:39:624 +48:40:240 +48:41:1968 +48:42:336 +48:43:2064 +48:44:528 +48:45:720 +48:46:1104 +48:47:2256 +48:48:48 +48:49:2352 +48:50:1200 +49:1:49 +49:2:98 +49:3:147 +49:4:196 +49:5:245 +49:6:294 +49:7:49 +49:8:392 +49:9:441 +49:10:490 +49:11:539 +49:12:588 +49:13:637 +49:14:98 +49:15:735 +49:16:784 +49:17:833 +49:18:882 +49:19:931 +49:20:980 +49:21:147 +49:22:1078 +49:23:1127 +49:24:1176 +49:25:1225 +49:26:1274 +49:27:1323 +49:28:196 +49:29:1421 +49:30:1470 +49:31:1519 +49:32:1568 +49:33:1617 +49:34:1666 +49:35:245 +49:36:1764 +49:37:1813 +49:38:1862 +49:39:1911 +49:40:1960 +49:41:2009 +49:42:294 +49:43:2107 +49:44:2156 +49:45:2205 +49:46:2254 +49:47:2303 +49:48:2352 +49:49:49 +49:50:2450 +50:1:50 +50:2:50 +50:3:150 +50:4:100 +50:5:50 +50:6:150 +50:7:350 +50:8:200 +50:9:450 +50:10:50 +50:11:550 +50:12:300 +50:13:650 +50:14:350 +50:15:150 +50:16:400 +50:17:850 +50:18:450 +50:19:950 +50:20:100 +50:21:1050 +50:22:550 +50:23:1150 +50:24:600 +50:25:50 +50:26:650 +50:27:1350 +50:28:700 +50:29:1450 +50:30:150 +50:31:1550 +50:32:800 +50:33:1650 +50:34:850 +50:35:350 +50:36:900 +50:37:1850 +50:38:950 +50:39:1950 +50:40:200 +50:41:2050 +50:42:1050 +50:43:2150 +50:44:1100 +50:45:450 +50:46:1150 +50:47:2350 +50:48:1200 +50:49:2450 +50:50:50 +# +# Fibonacci numbers +# +0:55:0 +0:89:0 +0:144:0 +0:233:0 +0:377:0 +0:610:0 +0:987:0 +0:1597:0 +0:2584:0 +0:4181:0 +0:6765:0 +0:10946:0 +0:17711:0 +0:28657:0 +0:46368:0 +0:75025:0 +0:121393:0 +0:196418:0 +0:317811:0 +0:514229:0 +0:832040:0 +0:1346269:0 +0:2178309:0 +0:3524578:0 +0:5702887:0 +0:9227465:0 +0:14930352:0 +0:24157817:0 +0:39088169:0 +0:63245986:0 +0:102334155:0 +0:165580141:0 +0:267914296:0 +0:433494437:0 +0:701408733:0 +0:1134903170:0 +0:1836311903:0 +0:2971215073:0 +0:4807526976:0 +0:7778742049:0 +0:12586269025:0 +1:55:55 +1:89:89 +1:144:144 +1:233:233 +1:377:377 +1:610:610 +1:987:987 +1:1597:1597 +1:2584:2584 +1:4181:4181 +1:6765:6765 +1:10946:10946 +1:17711:17711 +1:28657:28657 +1:46368:46368 +1:75025:75025 +1:121393:121393 +1:196418:196418 +1:317811:317811 +1:514229:514229 +1:832040:832040 +1:1346269:1346269 +1:2178309:2178309 +1:3524578:3524578 +1:5702887:5702887 +1:9227465:9227465 +1:14930352:14930352 +1:24157817:24157817 +1:39088169:39088169 +1:63245986:63245986 +1:102334155:102334155 +1:165580141:165580141 +1:267914296:267914296 +1:433494437:433494437 +1:701408733:701408733 +1:1134903170:1134903170 +1:1836311903:1836311903 +1:2971215073:2971215073 +1:4807526976:4807526976 +1:7778742049:7778742049 +1:12586269025:12586269025 +1:55:55 +1:89:89 +1:144:144 +1:233:233 +1:377:377 +1:610:610 +1:987:987 +1:1597:1597 +1:2584:2584 +1:4181:4181 +1:6765:6765 +1:10946:10946 +1:17711:17711 +1:28657:28657 +1:46368:46368 +1:75025:75025 +1:121393:121393 +1:196418:196418 +1:317811:317811 +1:514229:514229 +1:832040:832040 +1:1346269:1346269 +1:2178309:2178309 +1:3524578:3524578 +1:5702887:5702887 +1:9227465:9227465 +1:14930352:14930352 +1:24157817:24157817 +1:39088169:39088169 +1:63245986:63245986 +1:102334155:102334155 +1:165580141:165580141 +1:267914296:267914296 +1:433494437:433494437 +1:701408733:701408733 +1:1134903170:1134903170 +1:1836311903:1836311903 +1:2971215073:2971215073 +1:4807526976:4807526976 +1:7778742049:7778742049 +1:12586269025:12586269025 +2:55:110 +2:89:178 +2:144:144 +2:233:466 +2:377:754 +2:610:610 +2:987:1974 +2:1597:3194 +2:2584:2584 +2:4181:8362 +2:6765:13530 +2:10946:10946 +2:17711:35422 +2:28657:57314 +2:46368:46368 +2:75025:150050 +2:121393:242786 +2:196418:196418 +2:317811:635622 +2:514229:1028458 +2:832040:832040 +2:1346269:2692538 +2:2178309:4356618 +2:3524578:3524578 +2:5702887:11405774 +2:9227465:18454930 +2:14930352:14930352 +2:24157817:48315634 +2:39088169:78176338 +2:63245986:63245986 +2:102334155:204668310 +2:165580141:331160282 +2:267914296:267914296 +2:433494437:866988874 +2:701408733:1402817466 +2:1134903170:1134903170 +2:1836311903:3672623806 +2:2971215073:5942430146 +2:4807526976:4807526976 +2:7778742049:15557484098 +2:12586269025:25172538050 +3:55:165 +3:89:267 +3:144:144 +3:233:699 +3:377:1131 +3:610:1830 +3:987:987 +3:1597:4791 +3:2584:7752 +3:4181:12543 +3:6765:6765 +3:10946:32838 +3:17711:53133 +3:28657:85971 +3:46368:46368 +3:75025:225075 +3:121393:364179 +3:196418:589254 +3:317811:317811 +3:514229:1542687 +3:832040:2496120 +3:1346269:4038807 +3:2178309:2178309 +3:3524578:10573734 +3:5702887:17108661 +3:9227465:27682395 +3:14930352:14930352 +3:24157817:72473451 +3:39088169:117264507 +3:63245986:189737958 +3:102334155:102334155 +3:165580141:496740423 +3:267914296:803742888 +3:433494437:1300483311 +3:701408733:701408733 +3:1134903170:3404709510 +3:1836311903:5508935709 +3:2971215073:8913645219 +3:4807526976:4807526976 +3:7778742049:23336226147 +3:12586269025:37758807075 +5:55:55 +5:89:445 +5:144:720 +5:233:1165 +5:377:1885 +5:610:610 +5:987:4935 +5:1597:7985 +5:2584:12920 +5:4181:20905 +5:6765:6765 +5:10946:54730 +5:17711:88555 +5:28657:143285 +5:46368:231840 +5:75025:75025 +5:121393:606965 +5:196418:982090 +5:317811:1589055 +5:514229:2571145 +5:832040:832040 +5:1346269:6731345 +5:2178309:10891545 +5:3524578:17622890 +5:5702887:28514435 +5:9227465:9227465 +5:14930352:74651760 +5:24157817:120789085 +5:39088169:195440845 +5:63245986:316229930 +5:102334155:102334155 +5:165580141:827900705 +5:267914296:1339571480 +5:433494437:2167472185 +5:701408733:3507043665 +5:1134903170:1134903170 +5:1836311903:9181559515 +5:2971215073:14856075365 +5:4807526976:24037634880 +5:7778742049:38893710245 +5:12586269025:12586269025 +8:55:440 +8:89:712 +8:144:144 +8:233:1864 +8:377:3016 +8:610:2440 +8:987:7896 +8:1597:12776 +8:2584:2584 +8:4181:33448 +8:6765:54120 +8:10946:43784 +8:17711:141688 +8:28657:229256 +8:46368:46368 +8:75025:600200 +8:121393:971144 +8:196418:785672 +8:317811:2542488 +8:514229:4113832 +8:832040:832040 +8:1346269:10770152 +8:2178309:17426472 +8:3524578:14098312 +8:5702887:45623096 +8:9227465:73819720 +8:14930352:14930352 +8:24157817:193262536 +8:39088169:312705352 +8:63245986:252983944 +8:102334155:818673240 +8:165580141:1324641128 +8:267914296:267914296 +8:433494437:3467955496 +8:701408733:5611269864 +8:1134903170:4539612680 +8:1836311903:14690495224 +8:2971215073:23769720584 +8:4807526976:4807526976 +8:7778742049:62229936392 +8:12586269025:100690152200 +13:55:715 +13:89:1157 +13:144:1872 +13:233:3029 +13:377:377 +13:610:7930 +13:987:12831 +13:1597:20761 +13:2584:33592 +13:4181:54353 +13:6765:87945 +13:10946:10946 +13:17711:230243 +13:28657:372541 +13:46368:602784 +13:75025:975325 +13:121393:1578109 +13:196418:2553434 +13:317811:317811 +13:514229:6684977 +13:832040:10816520 +13:1346269:17501497 +13:2178309:28318017 +13:3524578:45819514 +13:5702887:74137531 +13:9227465:9227465 +13:14930352:194094576 +13:24157817:314051621 +13:39088169:508146197 +13:63245986:822197818 +13:102334155:1330344015 +13:165580141:2152541833 +13:267914296:267914296 +13:433494437:5635427681 +13:701408733:9118313529 +13:1134903170:14753741210 +13:1836311903:23872054739 +13:2971215073:38625795949 +13:4807526976:62497850688 +13:7778742049:7778742049 +13:12586269025:163621497325 +21:55:1155 +21:89:1869 +21:144:1008 +21:233:4893 +21:377:7917 +21:610:12810 +21:987:987 +21:1597:33537 +21:2584:54264 +21:4181:87801 +21:6765:47355 +21:10946:229866 +21:17711:371931 +21:28657:601797 +21:46368:46368 +21:75025:1575525 +21:121393:2549253 +21:196418:4124778 +21:317811:2224677 +21:514229:10798809 +21:832040:17472840 +21:1346269:28271649 +21:2178309:2178309 +21:3524578:74016138 +21:5702887:119760627 +21:9227465:193776765 +21:14930352:104512464 +21:24157817:507314157 +21:39088169:820851549 +21:63245986:1328165706 +21:102334155:102334155 +21:165580141:3477182961 +21:267914296:5626200216 +21:433494437:9103383177 +21:701408733:4909861131 +21:1134903170:23832966570 +21:1836311903:38562549963 +21:2971215073:62395516533 +21:4807526976:4807526976 +21:7778742049:163353583029 +21:12586269025:264311649525 +34:55:1870 +34:89:3026 +34:144:2448 +34:233:7922 +34:377:12818 +34:610:10370 +34:987:33558 +34:1597:54298 +34:2584:2584 +34:4181:142154 +34:6765:230010 +34:10946:186082 +34:17711:602174 +34:28657:974338 +34:46368:788256 +34:75025:2550850 +34:121393:4127362 +34:196418:196418 +34:317811:10805574 +34:514229:17483786 +34:832040:14144680 +34:1346269:45773146 +34:2178309:74062506 +34:3524578:59917826 +34:5702887:193898158 +34:9227465:313733810 +34:14930352:14930352 +34:24157817:821365778 +34:39088169:1328997746 +34:63245986:1075181762 +34:102334155:3479361270 +34:165580141:5629724794 +34:267914296:4554543032 +34:433494437:14738810858 +34:701408733:23847896922 +34:1134903170:1134903170 +34:1836311903:62434604702 +34:2971215073:101021312482 +34:4807526976:81727958592 +34:7778742049:264477229666 +34:12586269025:427933146850 +55:0:0 +55:1:55 +55:1:55 +55:2:110 +55:3:165 +55:5:55 +55:8:440 +55:13:715 +55:21:1155 +55:34:1870 +55:55:55 +55:89:4895 +55:144:7920 +55:233:12815 +55:377:20735 +55:610:6710 +55:987:54285 +55:1597:87835 +55:2584:142120 +55:4181:229955 +55:6765:6765 +55:10946:602030 +55:17711:974105 +55:28657:1576135 +55:46368:2550240 +55:75025:825275 +55:121393:6676615 +55:196418:10802990 +55:317811:17479605 +55:514229:28282595 +55:832040:832040 +55:1346269:74044795 +55:2178309:119806995 +55:3524578:193851790 +55:5702887:313658785 +55:9227465:101502115 +55:14930352:821169360 +55:24157817:1328679935 +55:39088169:2149849295 +55:63245986:3478529230 +55:102334155:102334155 +55:165580141:9106907755 +55:267914296:14735286280 +55:433494437:23842194035 +55:701408733:38577480315 +55:1134903170:12483934870 +55:1836311903:100997154665 +55:2971215073:163416829015 +55:4807526976:264413983680 +55:7778742049:427830812695 +55:12586269025:12586269025 +89:0:0 +89:1:89 +89:1:89 +89:2:178 +89:3:267 +89:5:445 +89:8:712 +89:13:1157 +89:21:1869 +89:34:3026 +89:55:4895 +89:89:89 +89:144:12816 +89:233:20737 +89:377:33553 +89:610:54290 +89:987:87843 +89:1597:142133 +89:2584:229976 +89:4181:372109 +89:6765:602085 +89:10946:974194 +89:17711:17711 +89:28657:2550473 +89:46368:4126752 +89:75025:6677225 +89:121393:10803977 +89:196418:17481202 +89:317811:28285179 +89:514229:45766381 +89:832040:74051560 +89:1346269:119817941 +89:2178309:193869501 +89:3524578:3524578 +89:5702887:507556943 +89:9227465:821244385 +89:14930352:1328801328 +89:24157817:2150045713 +89:39088169:3478847041 +89:63245986:5628892754 +89:102334155:9107739795 +89:165580141:14736632549 +89:267914296:23844372344 +89:433494437:38581004893 +89:701408733:701408733 +89:1134903170:101006382130 +89:1836311903:163431759367 +89:2971215073:264438141497 +89:4807526976:427869900864 +89:7778742049:692308042361 +89:12586269025:1120177943225 +144:0:0 +144:1:144 +144:1:144 +144:2:144 +144:3:144 +144:5:720 +144:8:144 +144:13:1872 +144:21:1008 +144:34:2448 +144:55:7920 +144:89:12816 +144:144:144 +144:233:33552 +144:377:54288 +144:610:43920 +144:987:47376 +144:1597:229968 +144:2584:46512 +144:4181:602064 +144:6765:324720 +144:10946:788112 +144:17711:2550384 +144:28657:4126608 +144:46368:46368 +144:75025:10803600 +144:121393:17480592 +144:196418:14142096 +144:317811:15254928 +144:514229:74048976 +144:832040:14976720 +144:1346269:193862736 +144:2178309:104558832 +144:3524578:253769616 +144:5702887:821215728 +144:9227465:1328754960 +144:14930352:14930352 +144:24157817:3478725648 +144:39088169:5628696336 +144:63245986:4553710992 +144:102334155:4912039440 +144:165580141:23843540304 +144:267914296:4822457328 +144:433494437:62423198928 +144:701408733:33667619184 +144:1134903170:81713028240 +144:1836311903:264428914032 +144:2971215073:427854970512 +144:4807526976:4807526976 +144:7778742049:1120138855056 +144:12586269025:1812422739600 +233:0:0 +233:1:233 +233:1:233 +233:2:466 +233:3:699 +233:5:1165 +233:8:1864 +233:13:3029 +233:21:4893 +233:34:7922 +233:55:12815 +233:89:20737 +233:144:33552 +233:233:233 +233:377:87841 +233:610:142130 +233:987:229971 +233:1597:372101 +233:2584:602072 +233:4181:974173 +233:6765:1576245 +233:10946:2550418 +233:17711:4126663 +233:28657:6677081 +233:46368:10803744 +233:75025:17480825 +233:121393:121393 +233:196418:45765394 +233:317811:74049963 +233:514229:119815357 +233:832040:193865320 +233:1346269:313680677 +233:2178309:507545997 +233:3524578:821226674 +233:5702887:1328772671 +233:9227465:2149999345 +233:14930352:3478772016 +233:24157817:5628771361 +233:39088169:9107543377 +233:63245986:63245986 +233:102334155:23843858115 +233:165580141:38580172853 +233:267914296:62424030968 +233:433494437:101004203821 +233:701408733:163428234789 +233:1134903170:264432438610 +233:1836311903:427860673399 +233:2971215073:692293112009 +233:4807526976:1120153785408 +233:7778742049:1812446897417 +233:12586269025:2932600682825 +377:0:0 +377:1:377 +377:1:377 +377:2:754 +377:3:1131 +377:5:1885 +377:8:3016 +377:13:377 +377:21:7917 +377:34:12818 +377:55:20735 +377:89:33553 +377:144:54288 +377:233:87841 +377:377:377 +377:610:229970 +377:987:372099 +377:1597:602069 +377:2584:974168 +377:4181:1576237 +377:6765:2550405 +377:10946:317434 +377:17711:6677047 +377:28657:10803689 +377:46368:17480736 +377:75025:28284425 +377:121393:45765161 +377:196418:74049586 +377:317811:317811 +377:514229:193864333 +377:832040:313679080 +377:1346269:507543413 +377:2178309:821222493 +377:3524578:1328765906 +377:5702887:2149988399 +377:9227465:267596485 +377:14930352:5628742704 +377:24157817:9107497009 +377:39088169:14736239713 +377:63245986:23843736722 +377:102334155:38579976435 +377:165580141:62423713157 +377:267914296:267914296 +377:433494437:163427402749 +377:701408733:264431092341 +377:1134903170:427858495090 +377:1836311903:692289587431 +377:2971215073:1120148082521 +377:4807526976:1812437669952 +377:7778742049:225583519421 +377:12586269025:4745023422425 +610:0:0 +610:1:610 +610:1:610 +610:2:610 +610:3:1830 +610:5:610 +610:8:2440 +610:13:7930 +610:21:12810 +610:34:10370 +610:55:6710 +610:89:54290 +610:144:43920 +610:233:142130 +610:377:229970 +610:610:610 +610:987:602070 +610:1597:974170 +610:2584:788120 +610:4181:2550410 +610:6765:825330 +610:10946:3338530 +610:17711:10803710 +610:28657:17480770 +610:46368:14142240 +610:75025:9153050 +610:121393:74049730 +610:196418:59907490 +610:317811:193864710 +610:514229:313679690 +610:832040:832040 +610:1346269:821224090 +610:2178309:1328768490 +610:3524578:1074996290 +610:5702887:3478761070 +610:9227465:1125750730 +610:14930352:4553757360 +610:24157817:14736268370 +610:39088169:23843783090 +610:63245986:19290025730 +610:102334155:12484766910 +610:165580141:101003886010 +610:267914296:81713860280 +610:433494437:264431606570 +610:701408733:427859327130 +610:1134903170:1134903170 +610:1836311903:1120150260830 +610:2971215073:1812441194530 +610:4807526976:1466295727680 +610:7778742049:4745032649890 +610:12586269025:1535524821050 +987:0:0 +987:1:987 +987:1:987 +987:2:1974 +987:3:987 +987:5:4935 +987:8:7896 +987:13:12831 +987:21:987 +987:34:33558 +987:55:54285 +987:89:87843 +987:144:47376 +987:233:229971 +987:377:372099 +987:610:602070 +987:987:987 +987:1597:1576239 +987:2584:2550408 +987:4181:4126647 +987:6765:2225685 +987:10946:10803702 +987:17711:17480757 +987:28657:28284459 +987:46368:2179296 +987:75025:74049675 +987:121393:119814891 +987:196418:193864566 +987:317811:104559819 +987:514229:507544023 +987:832040:821223480 +987:1346269:1328767503 +987:2178309:2178309 +987:3524578:3478758486 +987:5702887:5628749469 +987:9227465:9107507955 +987:14930352:4912085808 +987:24157817:23843765379 +987:39088169:38580022803 +987:63245986:62423788182 +987:102334155:4809705285 +987:165580141:163427599167 +987:267914296:264431410152 +987:433494437:427859009319 +987:701408733:230763473157 +987:1134903170:1120149428790 +987:1836311903:1812439848261 +987:2971215073:2932589277051 +987:4807526976:4807526976 +987:7778742049:7677618402363 +987:12586269025:12422647527675 +1597:0:0 +1597:1:1597 +1597:1:1597 +1597:2:3194 +1597:3:4791 +1597:5:7985 +1597:8:12776 +1597:13:20761 +1597:21:33537 +1597:34:54298 +1597:55:87835 +1597:89:142133 +1597:144:229968 +1597:233:372101 +1597:377:602069 +1597:610:974170 +1597:987:1576239 +1597:1597:1597 +1597:2584:4126648 +1597:4181:6677057 +1597:6765:10803705 +1597:10946:17480762 +1597:17711:28284467 +1597:28657:45765229 +1597:46368:74049696 +1597:75025:119814925 +1597:121393:193864621 +1597:196418:313679546 +1597:317811:507544167 +1597:514229:821223713 +1597:832040:1328767880 +1597:1346269:2149991593 +1597:2178309:3478759473 +1597:3524578:5628751066 +1597:5702887:5702887 +1597:9227465:14736261605 +1597:14930352:23843772144 +1597:24157817:38580033749 +1597:39088169:62423805893 +1597:63245986:101003839642 +1597:102334155:163427645535 +1597:165580141:264431485177 +1597:267914296:427859130712 +1597:433494437:692290615889 +1597:701408733:1120149746601 +1597:1134903170:1812440362490 +1597:1836311903:2932590109091 +1597:2971215073:4745030471581 +1597:4807526976:7677620580672 +1597:7778742049:12422651052253 +1597:12586269025:20100271632925 +2584:0:0 +2584:1:2584 +2584:1:2584 +2584:2:2584 +2584:3:7752 +2584:5:12920 +2584:8:2584 +2584:13:33592 +2584:21:54264 +2584:34:2584 +2584:55:142120 +2584:89:229976 +2584:144:46512 +2584:233:602072 +2584:377:974168 +2584:610:788120 +2584:987:2550408 +2584:1597:4126648 +2584:2584:2584 +2584:4181:10803704 +2584:6765:17480760 +2584:10946:14142232 +2584:17711:45765224 +2584:28657:74049688 +2584:46368:14976864 +2584:75025:193864600 +2584:121393:313679512 +2584:196418:14927768 +2584:317811:821223624 +2584:514229:1328767736 +2584:832040:268748920 +2584:1346269:3478759096 +2584:2178309:5628750456 +2584:3524578:4553754776 +2584:5702887:14736260008 +2584:9227465:23843769560 +2584:14930352:14930352 +2584:24157817:62423799128 +2584:39088169:101003828696 +2584:63245986:81713813912 +2584:102334155:264431456520 +2584:165580141:427859084344 +2584:267914296:86536317608 +2584:433494437:1120149625208 +2584:701408733:1812440166072 +2584:1134903170:86252640920 +2584:1836311903:4745029957352 +2584:2971215073:7677619748632 +2584:4807526976:1552831213248 +2584:7778742049:20100269454616 +2584:12586269025:32522919160600 +4181:0:0 +4181:1:4181 +4181:1:4181 +4181:2:8362 +4181:3:12543 +4181:5:20905 +4181:8:33448 +4181:13:54353 +4181:21:87801 +4181:34:142154 +4181:55:229955 +4181:89:372109 +4181:144:602064 +4181:233:974173 +4181:377:1576237 +4181:610:2550410 +4181:987:4126647 +4181:1597:6677057 +4181:2584:10803704 +4181:4181:4181 +4181:6765:28284465 +4181:10946:45765226 +4181:17711:74049691 +4181:28657:119814917 +4181:46368:193864608 +4181:75025:313679525 +4181:121393:507544133 +4181:196418:821223658 +4181:317811:1328767791 +4181:514229:2149991449 +4181:832040:3478759240 +4181:1346269:5628750689 +4181:2178309:9107509929 +4181:3524578:14736260618 +4181:5702887:23843770547 +4181:9227465:38580031165 +4181:14930352:62423801712 +4181:24157817:101003832877 +4181:39088169:39088169 +4181:63245986:264431467466 +4181:102334155:427859102055 +4181:165580141:692290569521 +4181:267914296:1120149671576 +4181:433494437:1812440241097 +4181:701408733:2932589912673 +4181:1134903170:4745030153770 +4181:1836311903:7677620066443 +4181:2971215073:12422650220213 +4181:4807526976:20100270286656 +4181:7778742049:32522920506869 +4181:12586269025:52623190793525 +6765:0:0 +6765:1:6765 +6765:1:6765 +6765:2:13530 +6765:3:6765 +6765:5:6765 +6765:8:54120 +6765:13:87945 +6765:21:47355 +6765:34:230010 +6765:55:6765 +6765:89:602085 +6765:144:324720 +6765:233:1576245 +6765:377:2550405 +6765:610:825330 +6765:987:2225685 +6765:1597:10803705 +6765:2584:17480760 +6765:4181:28284465 +6765:6765:6765 +6765:10946:74049690 +6765:17711:119814915 +6765:28657:193864605 +6765:46368:104559840 +6765:75025:101508825 +6765:121393:821223645 +6765:196418:1328767770 +6765:317811:716663805 +6765:514229:3478759185 +6765:832040:102340920 +6765:1346269:9107509785 +6765:2178309:4912086795 +6765:3524578:23843770170 +6765:5702887:38580030555 +6765:9227465:12484760145 +6765:14930352:33667943760 +6765:24157817:163427632005 +6765:39088169:264431463285 +6765:63245986:427859095290 +6765:102334155:102334155 +6765:165580141:1120149653865 +6765:267914296:1812440212440 +6765:433494437:2932589866305 +6765:701408733:1581676692915 +6765:1134903170:1535523989010 +6765:1836311903:12422650023795 +6765:2971215073:20100269968845 +6765:4807526976:10840973330880 +6765:7778742049:52623189961485 +6765:12586269025:1548111090075 +10946:0:0 +10946:1:10946 +10946:1:10946 +10946:2:10946 +10946:3:32838 +10946:5:54730 +10946:8:43784 +10946:13:10946 +10946:21:229866 +10946:34:186082 +10946:55:602030 +10946:89:974194 +10946:144:788112 +10946:233:2550418 +10946:377:317434 +10946:610:3338530 +10946:987:10803702 +10946:1597:17480762 +10946:2584:14142232 +10946:4181:45765226 +10946:6765:74049690 +10946:10946:10946 +10946:17711:193864606 +10946:28657:313679522 +10946:46368:253772064 +10946:75025:821223650 +10946:121393:1328767778 +10946:196418:1074995714 +10946:317811:267596862 +10946:514229:5628750634 +10946:832040:4553754920 +10946:1346269:14736260474 +10946:2178309:23843770314 +10946:3524578:19290015394 +10946:5702887:62423801102 +10946:9227465:7769525530 +10946:14930352:81713816496 +10946:24157817:264431464882 +10946:39088169:427859097874 +10946:63245986:346145281378 +10946:102334155:1120149660630 +10946:165580141:1812440223386 +10946:267914296:267914296 +10946:433494437:4745030107402 +10946:701408733:7677619991418 +10946:1134903170:6211325049410 +10946:1836311903:20100270090238 +10946:2971215073:32522920189058 +10946:4807526976:26311595139648 +10946:7778742049:6549700805258 +10946:12586269025:137769300747650 +17711:0:0 +17711:1:17711 +17711:1:17711 +17711:2:35422 +17711:3:53133 +17711:5:88555 +17711:8:141688 +17711:13:230243 +17711:21:371931 +17711:34:602174 +17711:55:974105 +17711:89:17711 +17711:144:2550384 +17711:233:4126663 +17711:377:6677047 +17711:610:10803710 +17711:987:17480757 +17711:1597:28284467 +17711:2584:45765224 +17711:4181:74049691 +17711:6765:119814915 +17711:10946:193864606 +17711:17711:17711 +17711:28657:507544127 +17711:46368:821223648 +17711:75025:1328767775 +17711:121393:2149991423 +17711:196418:3478759198 +17711:317811:5628750621 +17711:514229:9107509819 +17711:832040:14736260440 +17711:1346269:23843770259 +17711:2178309:38580030699 +17711:3524578:701391022 +17711:5702887:101003831657 +17711:9227465:163427632615 +17711:14930352:264431464272 +17711:24157817:427859096887 +17711:39088169:692290561159 +17711:63245986:1120149658046 +17711:102334155:1812440219205 +17711:165580141:2932589877251 +17711:267914296:4745030096456 +17711:433494437:7677619973707 +17711:701408733:701408733 +17711:1134903170:20100270043870 +17711:1836311903:32522920114033 +17711:2971215073:52623190157903 +17711:4807526976:85146110271936 +17711:7778742049:137769300429839 +17711:12586269025:222915410701775 +28657:0:0 +28657:1:28657 +28657:1:28657 +28657:2:57314 +28657:3:85971 +28657:5:143285 +28657:8:229256 +28657:13:372541 +28657:21:601797 +28657:34:974338 +28657:55:1576135 +28657:89:2550473 +28657:144:4126608 +28657:233:6677081 +28657:377:10803689 +28657:610:17480770 +28657:987:28284459 +28657:1597:45765229 +28657:2584:74049688 +28657:4181:119814917 +28657:6765:193864605 +28657:10946:313679522 +28657:17711:507544127 +28657:28657:28657 +28657:46368:1328767776 +28657:75025:2149991425 +28657:121393:3478759201 +28657:196418:5628750626 +28657:317811:9107509827 +28657:514229:14736260453 +28657:832040:23843770280 +28657:1346269:38580030733 +28657:2178309:62423801013 +28657:3524578:101003831746 +28657:5702887:163427632759 +28657:9227465:264431464505 +28657:14930352:427859097264 +28657:24157817:692290561769 +28657:39088169:1120149659033 +28657:63245986:1812440220802 +28657:102334155:2932589879835 +28657:165580141:4745030100637 +28657:267914296:7677619980472 +28657:433494437:12422650081109 +28657:701408733:20100270061581 +28657:1134903170:32522920142690 +28657:1836311903:1836311903 +28657:2971215073:85146110346961 +28657:4807526976:137769300551232 +28657:7778742049:222915410898193 +28657:12586269025:360684711449425 +46368:0:0 +46368:1:46368 +46368:1:46368 +46368:2:46368 +46368:3:46368 +46368:5:231840 +46368:8:46368 +46368:13:602784 +46368:21:46368 +46368:34:788256 +46368:55:2550240 +46368:89:4126752 +46368:144:46368 +46368:233:10803744 +46368:377:17480736 +46368:610:14142240 +46368:987:2179296 +46368:1597:74049696 +46368:2584:14976864 +46368:4181:193864608 +46368:6765:104559840 +46368:10946:253772064 +46368:17711:821223648 +46368:28657:1328767776 +46368:46368:46368 +46368:75025:3478759200 +46368:121393:5628750624 +46368:196418:4553754912 +46368:317811:4912086816 +46368:514229:23843770272 +46368:832040:4822503840 +46368:1346269:62423800992 +46368:2178309:4809706272 +46368:3524578:81713816352 +46368:5702887:264431464416 +46368:9227465:427859097120 +46368:14930352:4807573344 +46368:24157817:1120149658656 +46368:39088169:1812440220192 +46368:63245986:1466294939424 +46368:102334155:225953814240 +46368:165580141:7677619977888 +46368:267914296:1552831259616 +46368:433494437:20100270054816 +46368:701408733:10840973377248 +46368:1134903170:26311595093280 +46368:1836311903:85146110318304 +46368:2971215073:137769300504864 +46368:4807526976:4807526976 +46368:7778742049:360684711328032 +46368:12586269025:583600122151200 +75025:0:0 +75025:1:75025 +75025:1:75025 +75025:2:150050 +75025:3:225075 +75025:5:75025 +75025:8:600200 +75025:13:975325 +75025:21:1575525 +75025:34:2550850 +75025:55:825275 +75025:89:6677225 +75025:144:10803600 +75025:233:17480825 +75025:377:28284425 +75025:610:9153050 +75025:987:74049675 +75025:1597:119814925 +75025:2584:193864600 +75025:4181:313679525 +75025:6765:101508825 +75025:10946:821223650 +75025:17711:1328767775 +75025:28657:2149991425 +75025:46368:3478759200 +75025:75025:75025 +75025:121393:9107509825 +75025:196418:14736260450 +75025:317811:23843770275 +75025:514229:38580030725 +75025:832040:12484760200 +75025:1346269:101003831725 +75025:2178309:163427632725 +75025:3524578:264431464450 +75025:5702887:427859097175 +75025:9227465:138458112325 +75025:14930352:1120149658800 +75025:24157817:1812440220425 +75025:39088169:2932589879225 +75025:63245986:4745030099650 +75025:102334155:1535523995775 +75025:165580141:12422650078525 +75025:267914296:20100270057400 +75025:433494437:32522920135925 +75025:701408733:52623190193325 +75025:1134903170:17029222065850 +75025:1836311903:137769300522575 +75025:2971215073:222915410851825 +75025:4807526976:360684711374400 +75025:7778742049:583600122226225 +75025:12586269025:12586269025 +121393:0:0 +121393:1:121393 +121393:1:121393 +121393:2:242786 +121393:3:364179 +121393:5:606965 +121393:8:971144 +121393:13:1578109 +121393:21:2549253 +121393:34:4127362 +121393:55:6676615 +121393:89:10803977 +121393:144:17480592 +121393:233:121393 +121393:377:45765161 +121393:610:74049730 +121393:987:119814891 +121393:1597:193864621 +121393:2584:313679512 +121393:4181:507544133 +121393:6765:821223645 +121393:10946:1328767778 +121393:17711:2149991423 +121393:28657:3478759201 +121393:46368:5628750624 +121393:75025:9107509825 +121393:121393:121393 +121393:196418:23843770274 +121393:317811:38580030723 +121393:514229:62423800997 +121393:832040:101003831720 +121393:1346269:163427632717 +121393:2178309:264431464437 +121393:3524578:427859097154 +121393:5702887:692290561591 +121393:9227465:1120149658745 +121393:14930352:1812440220336 +121393:24157817:2932589879081 +121393:39088169:4745030099417 +121393:63245986:32951158706 +121393:102334155:12422650077915 +121393:165580141:20100270056413 +121393:267914296:32522920134328 +121393:433494437:52623190190741 +121393:701408733:85146110325069 +121393:1134903170:137769300515810 +121393:1836311903:222915410840879 +121393:2971215073:360684711356689 +121393:4807526976:583600122197568 +121393:7778742049:944284833554257 +121393:12586269025:1527884955751825 +196418:0:0 +196418:1:196418 +196418:1:196418 +196418:2:196418 +196418:3:589254 +196418:5:982090 +196418:8:785672 +196418:13:2553434 +196418:21:4124778 +196418:34:196418 +196418:55:10802990 +196418:89:17481202 +196418:144:14142096 +196418:233:45765394 +196418:377:74049586 +196418:610:59907490 +196418:987:193864566 +196418:1597:313679546 +196418:2584:14927768 +196418:4181:821223658 +196418:6765:1328767770 +196418:10946:1074995714 +196418:17711:3478759198 +196418:28657:5628750626 +196418:46368:4553754912 +196418:75025:14736260450 +196418:121393:23843770274 +196418:196418:196418 +196418:317811:62423800998 +196418:514229:101003831722 +196418:832040:81713816360 +196418:1346269:264431464442 +196418:2178309:427859097162 +196418:3524578:346145280802 +196418:5702887:1120149658766 +196418:9227465:1812440220370 +196418:14930352:86252643504 +196418:24157817:4745030099506 +196418:39088169:7677619978642 +196418:63245986:6211325039074 +196418:102334155:20100270056790 +196418:165580141:32522920134938 +196418:267914296:26311595095864 +196418:433494437:85146110326666 +196418:701408733:137769300518394 +196418:1134903170:6556335613090 +196418:1836311903:360684711363454 +196418:2971215073:583600122208514 +196418:4807526976:472142416785984 +196418:7778742049:1527884955780482 +196418:12586269025:2472169789352450 +317811:0:0 +317811:1:317811 +317811:1:317811 +317811:2:635622 +317811:3:317811 +317811:5:1589055 +317811:8:2542488 +317811:13:317811 +317811:21:2224677 +317811:34:10805574 +317811:55:17479605 +317811:89:28285179 +317811:144:15254928 +317811:233:74049963 +317811:377:317811 +317811:610:193864710 +317811:987:104559819 +317811:1597:507544167 +317811:2584:821223624 +317811:4181:1328767791 +317811:6765:716663805 +317811:10946:267596862 +317811:17711:5628750621 +317811:28657:9107509827 +317811:46368:4912086816 +317811:75025:23843770275 +317811:121393:38580030723 +317811:196418:62423800998 +317811:317811:317811 +317811:514229:163427632719 +317811:832040:264431464440 +317811:1346269:427859097159 +317811:2178309:230763520533 +317811:3524578:1120149658758 +317811:5702887:1812440220357 +317811:9227465:225583836855 +317811:14930352:1581676699824 +317811:24157817:7677619978587 +317811:39088169:12422650078059 +317811:63245986:20100270056646 +317811:102334155:10840973378235 +317811:165580141:52623190191351 +317811:267914296:225851751528 +317811:433494437:137769300517407 +317811:701408733:74305136947821 +317811:1134903170:360684711360870 +317811:1836311903:583600122204333 +317811:2971215073:944284833565203 +317811:4807526976:509294985256512 +317811:7778742049:190166906871903 +317811:12586269025:4000054745104275 +514229:0:0 +514229:1:514229 +514229:1:514229 +514229:2:1028458 +514229:3:1542687 +514229:5:2571145 +514229:8:4113832 +514229:13:6684977 +514229:21:10798809 +514229:34:17483786 +514229:55:28282595 +514229:89:45766381 +514229:144:74048976 +514229:233:119815357 +514229:377:193864333 +514229:610:313679690 +514229:987:507544023 +514229:1597:821223713 +514229:2584:1328767736 +514229:4181:2149991449 +514229:6765:3478759185 +514229:10946:5628750634 +514229:17711:9107509819 +514229:28657:14736260453 +514229:46368:23843770272 +514229:75025:38580030725 +514229:121393:62423800997 +514229:196418:101003831722 +514229:317811:163427632719 +514229:514229:514229 +514229:832040:427859097160 +514229:1346269:692290561601 +514229:2178309:1120149658761 +514229:3524578:1812440220362 +514229:5702887:2932589879123 +514229:9227465:4745030099485 +514229:14930352:7677619978608 +514229:24157817:12422650078093 +514229:39088169:20100270056701 +514229:63245986:32522920134794 +514229:102334155:52623190191495 +514229:165580141:85146110326289 +514229:267914296:137769300517784 +514229:433494437:222915410844073 +514229:701408733:360684711361857 +514229:1134903170:583600122205930 +514229:1836311903:944284833567787 +514229:2971215073:1527884955773717 +514229:4807526976:2472169789341504 +514229:7778742049:4000054745115221 +514229:12586269025:6472224534456725 +832040:0:0 +832040:1:832040 +832040:1:832040 +832040:2:832040 +832040:3:2496120 +832040:5:832040 +832040:8:832040 +832040:13:10816520 +832040:21:17472840 +832040:34:14144680 +832040:55:832040 +832040:89:74051560 +832040:144:14976720 +832040:233:193865320 +832040:377:313679080 +832040:610:832040 +832040:987:821223480 +832040:1597:1328767880 +832040:2584:268748920 +832040:4181:3478759240 +832040:6765:102340920 +832040:10946:4553754920 +832040:17711:14736260440 +832040:28657:23843770280 +832040:46368:4822503840 +832040:75025:12484760200 +832040:121393:101003831720 +832040:196418:81713816360 +832040:317811:264431464440 +832040:514229:427859097160 +832040:832040:832040 +832040:1346269:1120149658760 +832040:2178309:1812440220360 +832040:3524578:1466294939560 +832040:5702887:4745030099480 +832040:9227465:1535523995720 +832040:14930352:1552831259760 +832040:24157817:20100270056680 +832040:39088169:32522920134760 +832040:63245986:26311595095720 +832040:102334155:1548111096840 +832040:165580141:137769300517640 +832040:267914296:27864426355480 +832040:433494437:360684711361480 +832040:701408733:583600122205320 +832040:1134903170:1548007923880 +832040:1836311903:1527884955772120 +832040:2971215073:2472169789338920 +832040:4807526976:500006843138880 +832040:7778742049:6472224534449960 +832040:12586269025:190405077810200 +1346269:0:0 +1346269:1:1346269 +1346269:1:1346269 +1346269:2:2692538 +1346269:3:4038807 +1346269:5:6731345 +1346269:8:10770152 +1346269:13:17501497 +1346269:21:28271649 +1346269:34:45773146 +1346269:55:74044795 +1346269:89:119817941 +1346269:144:193862736 +1346269:233:313680677 +1346269:377:507543413 +1346269:610:821224090 +1346269:987:1328767503 +1346269:1597:2149991593 +1346269:2584:3478759096 +1346269:4181:5628750689 +1346269:6765:9107509785 +1346269:10946:14736260474 +1346269:17711:23843770259 +1346269:28657:38580030733 +1346269:46368:62423800992 +1346269:75025:101003831725 +1346269:121393:163427632717 +1346269:196418:264431464442 +1346269:317811:427859097159 +1346269:514229:692290561601 +1346269:832040:1120149658760 +1346269:1346269:1346269 +1346269:2178309:2932589879121 +1346269:3524578:4745030099482 +1346269:5702887:7677619978603 +1346269:9227465:12422650078085 +1346269:14930352:20100270056688 +1346269:24157817:32522920134773 +1346269:39088169:52623190191461 +1346269:63245986:85146110326234 +1346269:102334155:137769300517695 +1346269:165580141:222915410843929 +1346269:267914296:360684711361624 +1346269:433494437:583600122205553 +1346269:701408733:944284833567177 +1346269:1134903170:1527884955772730 +1346269:1836311903:2472169789339907 +1346269:2971215073:4000054745112637 +1346269:4807526976:6472224534452544 +1346269:7778742049:10472279279565181 +1346269:12586269025:16944503814017725 +2178309:0:0 +2178309:1:2178309 +2178309:1:2178309 +2178309:2:4356618 +2178309:3:2178309 +2178309:5:10891545 +2178309:8:17426472 +2178309:13:28318017 +2178309:21:2178309 +2178309:34:74062506 +2178309:55:119806995 +2178309:89:193869501 +2178309:144:104558832 +2178309:233:507545997 +2178309:377:821222493 +2178309:610:1328768490 +2178309:987:2178309 +2178309:1597:3478759473 +2178309:2584:5628750456 +2178309:4181:9107509929 +2178309:6765:4912086795 +2178309:10946:23843770314 +2178309:17711:38580030699 +2178309:28657:62423801013 +2178309:46368:4809706272 +2178309:75025:163427632725 +2178309:121393:264431464437 +2178309:196418:427859097162 +2178309:317811:230763520533 +2178309:514229:1120149658761 +2178309:832040:1812440220360 +2178309:1346269:2932589879121 +2178309:2178309:2178309 +2178309:3524578:7677619978602 +2178309:5702887:12422650078083 +2178309:9227465:20100270056685 +2178309:14930352:10840973378256 +2178309:24157817:52623190191453 +2178309:39088169:85146110326221 +2178309:63245986:137769300517674 +2178309:102334155:10615019563995 +2178309:165580141:360684711361569 +2178309:267914296:583600122205464 +2178309:433494437:944284833567033 +2178309:701408733:509294985257499 +2178309:1134903170:2472169789339530 +2178309:1836311903:4000054745112027 +2178309:2971215073:6472224534451557 +2178309:4807526976:10610212036032 +2178309:7778742049:16944503814015141 +2178309:12586269025:27416783093578725 +3524578:0:0 +3524578:1:3524578 +3524578:1:3524578 +3524578:2:3524578 +3524578:3:10573734 +3524578:5:17622890 +3524578:8:14098312 +3524578:13:45819514 +3524578:21:74016138 +3524578:34:59917826 +3524578:55:193851790 +3524578:89:3524578 +3524578:144:253769616 +3524578:233:821226674 +3524578:377:1328765906 +3524578:610:1074996290 +3524578:987:3478758486 +3524578:1597:5628751066 +3524578:2584:4553754776 +3524578:4181:14736260618 +3524578:6765:23843770170 +3524578:10946:19290015394 +3524578:17711:701391022 +3524578:28657:101003831746 +3524578:46368:81713816352 +3524578:75025:264431464450 +3524578:121393:427859097154 +3524578:196418:346145280802 +3524578:317811:1120149658758 +3524578:514229:1812440220362 +3524578:832040:1466294939560 +3524578:1346269:4745030099482 +3524578:2178309:7677619978602 +3524578:3524578:3524578 +3524578:5702887:20100270056686 +3524578:9227465:32522920134770 +3524578:14930352:26311595095728 +3524578:24157817:85146110326226 +3524578:39088169:137769300517682 +3524578:63245986:111457705421954 +3524578:102334155:360684711361590 +3524578:165580141:583600122205498 +3524578:267914296:472142416783544 +3524578:433494437:1527884955772586 +3524578:701408733:27777188644266 +3524578:1134903170:2000027372556130 +3524578:1836311903:6472224534451934 +3524578:2971215073:10472279279564194 +3524578:4807526976:8472251907008064 +3524578:7778742049:27416783093580322 +3524578:12586269025:44361286907596450 +5702887:0:0 +5702887:1:5702887 +5702887:1:5702887 +5702887:2:11405774 +5702887:3:17108661 +5702887:5:28514435 +5702887:8:45623096 +5702887:13:74137531 +5702887:21:119760627 +5702887:34:193898158 +5702887:55:313658785 +5702887:89:507556943 +5702887:144:821215728 +5702887:233:1328772671 +5702887:377:2149988399 +5702887:610:3478761070 +5702887:987:5628749469 +5702887:1597:5702887 +5702887:2584:14736260008 +5702887:4181:23843770547 +5702887:6765:38580030555 +5702887:10946:62423801102 +5702887:17711:101003831657 +5702887:28657:163427632759 +5702887:46368:264431464416 +5702887:75025:427859097175 +5702887:121393:692290561591 +5702887:196418:1120149658766 +5702887:317811:1812440220357 +5702887:514229:2932589879123 +5702887:832040:4745030099480 +5702887:1346269:7677619978603 +5702887:2178309:12422650078083 +5702887:3524578:20100270056686 +5702887:5702887:5702887 +5702887:9227465:52623190191455 +5702887:14930352:85146110326224 +5702887:24157817:137769300517679 +5702887:39088169:222915410843903 +5702887:63245986:360684711361582 +5702887:102334155:583600122205485 +5702887:165580141:944284833567067 +5702887:267914296:1527884955772552 +5702887:433494437:2472169789339619 +5702887:701408733:4000054745112171 +5702887:1134903170:6472224534451790 +5702887:1836311903:10472279279563961 +5702887:2971215073:16944503814015751 +5702887:4807526976:27416783093579712 +5702887:7778742049:44361286907595463 +5702887:12586269025:71778070001175175 +9227465:0:0 +9227465:1:9227465 +9227465:1:9227465 +9227465:2:18454930 +9227465:3:27682395 +9227465:5:9227465 +9227465:8:73819720 +9227465:13:9227465 +9227465:21:193776765 +9227465:34:313733810 +9227465:55:101502115 +9227465:89:821244385 +9227465:144:1328754960 +9227465:233:2149999345 +9227465:377:267596485 +9227465:610:1125750730 +9227465:987:9107507955 +9227465:1597:14736261605 +9227465:2584:23843769560 +9227465:4181:38580031165 +9227465:6765:12484760145 +9227465:10946:7769525530 +9227465:17711:163427632615 +9227465:28657:264431464505 +9227465:46368:427859097120 +9227465:75025:138458112325 +9227465:121393:1120149658745 +9227465:196418:1812440220370 +9227465:317811:225583836855 +9227465:514229:4745030099485 +9227465:832040:1535523995720 +9227465:1346269:12422650078085 +9227465:2178309:20100270056685 +9227465:3524578:32522920134770 +9227465:5702887:52623190191455 +9227465:9227465:9227465 +9227465:14930352:137769300517680 +9227465:24157817:222915410843905 +9227465:39088169:360684711361585 +9227465:63245986:583600122205490 +9227465:102334155:188856966713415 +9227465:165580141:1527884955772565 +9227465:267914296:190166906872280 +9227465:433494437:4000054745112205 +9227465:701408733:6472224534451845 +9227465:1134903170:2094455855912810 +9227465:1836311903:16944503814015895 +9227465:2971215073:27416783093579945 +9227465:4807526976:44361286907595840 +9227465:7778742049:5521390000090445 +9227465:12586269025:23227871381754325 +14930352:0:0 +14930352:1:14930352 +14930352:1:14930352 +14930352:2:14930352 +14930352:3:14930352 +14930352:5:74651760 +14930352:8:14930352 +14930352:13:194094576 +14930352:21:104512464 +14930352:34:14930352 +14930352:55:821169360 +14930352:89:1328801328 +14930352:144:14930352 +14930352:233:3478772016 +14930352:377:5628742704 +14930352:610:4553757360 +14930352:987:4912085808 +14930352:1597:23843772144 +14930352:2584:14930352 +14930352:4181:62423801712 +14930352:6765:33667943760 +14930352:10946:81713816496 +14930352:17711:264431464272 +14930352:28657:427859097264 +14930352:46368:4807573344 +14930352:75025:1120149658800 +14930352:121393:1812440220336 +14930352:196418:86252643504 +14930352:317811:1581676699824 +14930352:514229:7677619978608 +14930352:832040:1552831259760 +14930352:1346269:20100270056688 +14930352:2178309:10840973378256 +14930352:3524578:26311595095728 +14930352:5702887:85146110326224 +14930352:9227465:137769300517680 +14930352:14930352:14930352 +14930352:24157817:360684711361584 +14930352:39088169:583600122205488 +14930352:63245986:472142416783536 +14930352:102334155:509294985257520 +14930352:165580141:2472169789339632 +14930352:267914296:500006843139024 +14930352:433494437:6472224534451824 +14930352:701408733:3490759759854672 +14930352:1134903170:498367759235760 +14930352:1836311903:27416783093579856 +14930352:2971215073:44361286907595696 +14930352:4807526976:498458819452608 +14930352:7778742049:116139356908771248 +14930352:12586269025:187917426909946800 +24157817:0:0 +24157817:1:24157817 +24157817:1:24157817 +24157817:2:48315634 +24157817:3:72473451 +24157817:5:120789085 +24157817:8:193262536 +24157817:13:314051621 +24157817:21:507314157 +24157817:34:821365778 +24157817:55:1328679935 +24157817:89:2150045713 +24157817:144:3478725648 +24157817:233:5628771361 +24157817:377:9107497009 +24157817:610:14736268370 +24157817:987:23843765379 +24157817:1597:38580033749 +24157817:2584:62423799128 +24157817:4181:101003832877 +24157817:6765:163427632005 +24157817:10946:264431464882 +24157817:17711:427859096887 +24157817:28657:692290561769 +24157817:46368:1120149658656 +24157817:75025:1812440220425 +24157817:121393:2932589879081 +24157817:196418:4745030099506 +24157817:317811:7677619978587 +24157817:514229:12422650078093 +24157817:832040:20100270056680 +24157817:1346269:32522920134773 +24157817:2178309:52623190191453 +24157817:3524578:85146110326226 +24157817:5702887:137769300517679 +24157817:9227465:222915410843905 +24157817:14930352:360684711361584 +24157817:24157817:24157817 +24157817:39088169:944284833567073 +24157817:63245986:1527884955772562 +24157817:102334155:2472169789339635 +24157817:165580141:4000054745112197 +24157817:267914296:6472224534451832 +24157817:433494437:10472279279564029 +24157817:701408733:16944503814015861 +24157817:1134903170:27416783093579890 +24157817:1836311903:44361286907595751 +24157817:2971215073:71778070001175641 +24157817:4807526976:116139356908771392 +24157817:7778742049:187917426909947033 +24157817:12586269025:304056783818718425 +39088169:0:0 +39088169:1:39088169 +39088169:1:39088169 +39088169:2:78176338 +39088169:3:117264507 +39088169:5:195440845 +39088169:8:312705352 +39088169:13:508146197 +39088169:21:820851549 +39088169:34:1328997746 +39088169:55:2149849295 +39088169:89:3478847041 +39088169:144:5628696336 +39088169:233:9107543377 +39088169:377:14736239713 +39088169:610:23843783090 +39088169:987:38580022803 +39088169:1597:62423805893 +39088169:2584:101003828696 +39088169:4181:39088169 +39088169:6765:264431463285 +39088169:10946:427859097874 +39088169:17711:692290561159 +39088169:28657:1120149659033 +39088169:46368:1812440220192 +39088169:75025:2932589879225 +39088169:121393:4745030099417 +39088169:196418:7677619978642 +39088169:317811:12422650078059 +39088169:514229:20100270056701 +39088169:832040:32522920134760 +39088169:1346269:52623190191461 +39088169:2178309:85146110326221 +39088169:3524578:137769300517682 +39088169:5702887:222915410843903 +39088169:9227465:360684711361585 +39088169:14930352:583600122205488 +39088169:24157817:944284833567073 +39088169:39088169:39088169 +39088169:63245986:2472169789339634 +39088169:102334155:4000054745112195 +39088169:165580141:6472224534451829 +39088169:267914296:10472279279564024 +39088169:433494437:16944503814015853 +39088169:701408733:27416783093579877 +39088169:1134903170:44361286907595730 +39088169:1836311903:71778070001175607 +39088169:2971215073:116139356908771337 +39088169:4807526976:187917426909946944 +39088169:7778742049:304056783818718281 +39088169:12586269025:491974210728665225 +63245986:0:0 +63245986:1:63245986 +63245986:1:63245986 +63245986:2:63245986 +63245986:3:189737958 +63245986:5:316229930 +63245986:8:252983944 +63245986:13:822197818 +63245986:21:1328165706 +63245986:34:1075181762 +63245986:55:3478529230 +63245986:89:5628892754 +63245986:144:4553710992 +63245986:233:63245986 +63245986:377:23843736722 +63245986:610:19290025730 +63245986:987:62423788182 +63245986:1597:101003839642 +63245986:2584:81713813912 +63245986:4181:264431467466 +63245986:6765:427859095290 +63245986:10946:346145281378 +63245986:17711:1120149658046 +63245986:28657:1812440220802 +63245986:46368:1466294939424 +63245986:75025:4745030099650 +63245986:121393:32951158706 +63245986:196418:6211325039074 +63245986:317811:20100270056646 +63245986:514229:32522920134794 +63245986:832040:26311595095720 +63245986:1346269:85146110326234 +63245986:2178309:137769300517674 +63245986:3524578:111457705421954 +63245986:5702887:360684711361582 +63245986:9227465:583600122205490 +63245986:14930352:472142416783536 +63245986:24157817:1527884955772562 +63245986:39088169:2472169789339634 +63245986:63245986:63245986 +63245986:102334155:6472224534451830 +63245986:165580141:10472279279564026 +63245986:267914296:8472251907007928 +63245986:433494437:27416783093579882 +63245986:701408733:44361286907595738 +63245986:1134903170:35889035000587810 +63245986:1836311903:116139356908771358 +63245986:2971215073:187917426909946978 +63245986:4807526976:152028391909359168 +63245986:7778742049:491974210728665314 +63245986:12586269025:796030994547383650 +102334155:0:0 +102334155:1:102334155 +102334155:1:102334155 +102334155:2:204668310 +102334155:3:102334155 +102334155:5:102334155 +102334155:8:818673240 +102334155:13:1330344015 +102334155:21:102334155 +102334155:34:3479361270 +102334155:55:102334155 +102334155:89:9107739795 +102334155:144:4912039440 +102334155:233:23843858115 +102334155:377:38579976435 +102334155:610:12484766910 +102334155:987:4809705285 +102334155:1597:163427645535 +102334155:2584:264431456520 +102334155:4181:427859102055 +102334155:6765:102334155 +102334155:10946:1120149660630 +102334155:17711:1812440219205 +102334155:28657:2932589879835 +102334155:46368:225953814240 +102334155:75025:1535523995775 +102334155:121393:12422650077915 +102334155:196418:20100270056790 +102334155:317811:10840973378235 +102334155:514229:52623190191495 +102334155:832040:1548111096840 +102334155:1346269:137769300517695 +102334155:2178309:10615019563995 +102334155:3524578:360684711361590 +102334155:5702887:583600122205485 +102334155:9227465:188856966713415 +102334155:14930352:509294985257520 +102334155:24157817:2472169789339635 +102334155:39088169:4000054745112195 +102334155:63245986:6472224534451830 +102334155:102334155:102334155 +102334155:165580141:16944503814015855 +102334155:267914296:27416783093579880 +102334155:433494437:44361286907595735 +102334155:701408733:23926023333725205 +102334155:1134903170:23227871381754270 +102334155:1836311903:187917426909946965 +102334155:2971215073:304056783818718315 +102334155:4807526976:23427343368031680 +102334155:7778742049:796030994547383595 +102334155:12586269025:23418276459564525 +165580141:0:0 +165580141:1:165580141 +165580141:1:165580141 +165580141:2:331160282 +165580141:3:496740423 +165580141:5:827900705 +165580141:8:1324641128 +165580141:13:2152541833 +165580141:21:3477182961 +165580141:34:5629724794 +165580141:55:9106907755 +165580141:89:14736632549 +165580141:144:23843540304 +165580141:233:38580172853 +165580141:377:62423713157 +165580141:610:101003886010 +165580141:987:163427599167 +165580141:1597:264431485177 +165580141:2584:427859084344 +165580141:4181:692290569521 +165580141:6765:1120149653865 +165580141:10946:1812440223386 +165580141:17711:2932589877251 +165580141:28657:4745030100637 +165580141:46368:7677619977888 +165580141:75025:12422650078525 +165580141:121393:20100270056413 +165580141:196418:32522920134938 +165580141:317811:52623190191351 +165580141:514229:85146110326289 +165580141:832040:137769300517640 +165580141:1346269:222915410843929 +165580141:2178309:360684711361569 +165580141:3524578:583600122205498 +165580141:5702887:944284833567067 +165580141:9227465:1527884955772565 +165580141:14930352:2472169789339632 +165580141:24157817:4000054745112197 +165580141:39088169:6472224534451829 +165580141:63245986:10472279279564026 +165580141:102334155:16944503814015855 +165580141:165580141:165580141 +165580141:267914296:44361286907595736 +165580141:433494437:71778070001175617 +165580141:701408733:116139356908771353 +165580141:1134903170:187917426909946970 +165580141:1836311903:304056783818718323 +165580141:2971215073:491974210728665293 +165580141:4807526976:796030994547383616 +165580141:7778742049:1288005205276048909 +165580141:12586269025:2084036199823432525 +267914296:0:0 +267914296:1:267914296 +267914296:1:267914296 +267914296:2:267914296 +267914296:3:803742888 +267914296:5:1339571480 +267914296:8:267914296 +267914296:13:267914296 +267914296:21:5626200216 +267914296:34:4554543032 +267914296:55:14735286280 +267914296:89:23844372344 +267914296:144:4822457328 +267914296:233:62424030968 +267914296:377:267914296 +267914296:610:81713860280 +267914296:987:264431410152 +267914296:1597:427859130712 +267914296:2584:86536317608 +267914296:4181:1120149671576 +267914296:6765:1812440212440 +267914296:10946:267914296 +267914296:17711:4745030096456 +267914296:28657:7677619980472 +267914296:46368:1552831259616 +267914296:75025:20100270057400 +267914296:121393:32522920134328 +267914296:196418:26311595095864 +267914296:317811:225851751528 +267914296:514229:137769300517784 +267914296:832040:27864426355480 +267914296:1346269:360684711361624 +267914296:2178309:583600122205464 +267914296:3524578:472142416783544 +267914296:5702887:1527884955772552 +267914296:9227465:190166906872280 +267914296:14930352:500006843139024 +267914296:24157817:6472224534451832 +267914296:39088169:10472279279564024 +267914296:63245986:8472251907007928 +267914296:102334155:27416783093579880 +267914296:165580141:44361286907595736 +267914296:267914296:267914296 +267914296:433494437:116139356908771352 +267914296:701408733:187917426909946968 +267914296:1134903170:152028391909359160 +267914296:1836311903:491974210728665288 +267914296:2971215073:796030994547383608 +267914296:4807526976:161000650659506112 +267914296:7778742049:160310476909494808 +267914296:12586269025:3372041405099481400 +433494437:0:0 +433494437:1:433494437 +433494437:1:433494437 +433494437:2:866988874 +433494437:3:1300483311 +433494437:5:2167472185 +433494437:8:3467955496 +433494437:13:5635427681 +433494437:21:9103383177 +433494437:34:14738810858 +433494437:55:23842194035 +433494437:89:38581004893 +433494437:144:62423198928 +433494437:233:101004203821 +433494437:377:163427402749 +433494437:610:264431606570 +433494437:987:427859009319 +433494437:1597:692290615889 +433494437:2584:1120149625208 +433494437:4181:1812440241097 +433494437:6765:2932589866305 +433494437:10946:4745030107402 +433494437:17711:7677619973707 +433494437:28657:12422650081109 +433494437:46368:20100270054816 +433494437:75025:32522920135925 +433494437:121393:52623190190741 +433494437:196418:85146110326666 +433494437:317811:137769300517407 +433494437:514229:222915410844073 +433494437:832040:360684711361480 +433494437:1346269:583600122205553 +433494437:2178309:944284833567033 +433494437:3524578:1527884955772586 +433494437:5702887:2472169789339619 +433494437:9227465:4000054745112205 +433494437:14930352:6472224534451824 +433494437:24157817:10472279279564029 +433494437:39088169:16944503814015853 +433494437:63245986:27416783093579882 +433494437:102334155:44361286907595735 +433494437:165580141:71778070001175617 +433494437:267914296:116139356908771352 +433494437:433494437:433494437 +433494437:701408733:304056783818718321 +433494437:1134903170:491974210728665290 +433494437:1836311903:796030994547383611 +433494437:2971215073:1288005205276048901 +433494437:4807526976:2084036199823432512 +433494437:7778742049:3372041405099481413 +433494437:12586269025:5456077604922913925 +701408733:0:0 +701408733:1:701408733 +701408733:1:701408733 +701408733:2:1402817466 +701408733:3:701408733 +701408733:5:3507043665 +701408733:8:5611269864 +701408733:13:9118313529 +701408733:21:4909861131 +701408733:34:23847896922 +701408733:55:38577480315 +701408733:89:701408733 +701408733:144:33667619184 +701408733:233:163428234789 +701408733:377:264431092341 +701408733:610:427859327130 +701408733:987:230763473157 +701408733:1597:1120149746601 +701408733:2584:1812440166072 +701408733:4181:2932589912673 +701408733:6765:1581676692915 +701408733:10946:7677619991418 +701408733:17711:701408733 +701408733:28657:20100270061581 +701408733:46368:10840973377248 +701408733:75025:52623190193325 +701408733:121393:85146110325069 +701408733:196418:137769300518394 +701408733:317811:74305136947821 +701408733:514229:360684711361857 +701408733:832040:583600122205320 +701408733:1346269:944284833567177 +701408733:2178309:509294985257499 +701408733:3524578:27777188644266 +701408733:5702887:4000054745112171 +701408733:9227465:6472224534451845 +701408733:14930352:3490759759854672 +701408733:24157817:16944503814015861 +701408733:39088169:27416783093579877 +701408733:63245986:44361286907595738 +701408733:102334155:23926023333725205 +701408733:165580141:116139356908771353 +701408733:267914296:187917426909946968 +701408733:433494437:304056783818718321 +701408733:701408733:701408733 +701408733:1134903170:796030994547383610 +701408733:1836311903:1288005205276048899 +701408733:2971215073:2084036199823432509 +701408733:4807526976:1124013801699827136 +701408733:7778742049:5456077604922913917 +701408733:12586269025:8828119010022395325 +1134903170:0:0 +1134903170:1:1134903170 +1134903170:1:1134903170 +1134903170:2:1134903170 +1134903170:3:3404709510 +1134903170:5:1134903170 +1134903170:8:4539612680 +1134903170:13:14753741210 +1134903170:21:23832966570 +1134903170:34:1134903170 +1134903170:55:12483934870 +1134903170:89:101006382130 +1134903170:144:81713028240 +1134903170:233:264432438610 +1134903170:377:427858495090 +1134903170:610:1134903170 +1134903170:987:1120149428790 +1134903170:1597:1812440362490 +1134903170:2584:86252640920 +1134903170:4181:4745030153770 +1134903170:6765:1535523989010 +1134903170:10946:6211325049410 +1134903170:17711:20100270043870 +1134903170:28657:32522920142690 +1134903170:46368:26311595093280 +1134903170:75025:17029222065850 +1134903170:121393:137769300515810 +1134903170:196418:6556335613090 +1134903170:317811:360684711360870 +1134903170:514229:583600122205930 +1134903170:832040:1548007923880 +1134903170:1346269:1527884955772730 +1134903170:2178309:2472169789339530 +1134903170:3524578:2000027372556130 +1134903170:5702887:6472224534451790 +1134903170:9227465:2094455855912810 +1134903170:14930352:498367759235760 +1134903170:24157817:27416783093579890 +1134903170:39088169:44361286907595730 +1134903170:63245986:35889035000587810 +1134903170:102334155:23227871381754270 +1134903170:165580141:187917426909946970 +1134903170:267914296:152028391909359160 +1134903170:433494437:491974210728665290 +1134903170:701408733:796030994547383610 +1134903170:1134903170:1134903170 +1134903170:1836311903:2084036199823432510 +1134903170:2971215073:3372041405099481410 +1134903170:4807526976:2728038802461456960 +1134903170:7778742049:8828119010022395330 +1134903170:12586269025:2856839322989061850 +1836311903:0:0 +1836311903:1:1836311903 +1836311903:1:1836311903 +1836311903:2:3672623806 +1836311903:3:5508935709 +1836311903:5:9181559515 +1836311903:8:14690495224 +1836311903:13:23872054739 +1836311903:21:38562549963 +1836311903:34:62434604702 +1836311903:55:100997154665 +1836311903:89:163431759367 +1836311903:144:264428914032 +1836311903:233:427860673399 +1836311903:377:692289587431 +1836311903:610:1120150260830 +1836311903:987:1812439848261 +1836311903:1597:2932590109091 +1836311903:2584:4745029957352 +1836311903:4181:7677620066443 +1836311903:6765:12422650023795 +1836311903:10946:20100270090238 +1836311903:17711:32522920114033 +1836311903:28657:1836311903 +1836311903:46368:85146110318304 +1836311903:75025:137769300522575 +1836311903:121393:222915410840879 +1836311903:196418:360684711363454 +1836311903:317811:583600122204333 +1836311903:514229:944284833567787 +1836311903:832040:1527884955772120 +1836311903:1346269:2472169789339907 +1836311903:2178309:4000054745112027 +1836311903:3524578:6472224534451934 +1836311903:5702887:10472279279563961 +1836311903:9227465:16944503814015895 +1836311903:14930352:27416783093579856 +1836311903:24157817:44361286907595751 +1836311903:39088169:71778070001175607 +1836311903:63245986:116139356908771358 +1836311903:102334155:187917426909946965 +1836311903:165580141:304056783818718323 +1836311903:267914296:491974210728665288 +1836311903:433494437:796030994547383611 +1836311903:701408733:1288005205276048899 +1836311903:1134903170:2084036199823432510 +1836311903:1836311903:1836311903 +1836311903:2971215073:5456077604922913919 +1836311903:4807526976:8828119010022395328 +1836311903:7778742049:14284196614945309247 +1836311903:12586269025:23112315624967704575 +2971215073:0:0 +2971215073:1:2971215073 +2971215073:1:2971215073 +2971215073:2:5942430146 +2971215073:3:8913645219 +2971215073:5:14856075365 +2971215073:8:23769720584 +2971215073:13:38625795949 +2971215073:21:62395516533 +2971215073:34:101021312482 +2971215073:55:163416829015 +2971215073:89:264438141497 +2971215073:144:427854970512 +2971215073:233:692293112009 +2971215073:377:1120148082521 +2971215073:610:1812441194530 +2971215073:987:2932589277051 +2971215073:1597:4745030471581 +2971215073:2584:7677619748632 +2971215073:4181:12422650220213 +2971215073:6765:20100269968845 +2971215073:10946:32522920189058 +2971215073:17711:52623190157903 +2971215073:28657:85146110346961 +2971215073:46368:137769300504864 +2971215073:75025:222915410851825 +2971215073:121393:360684711356689 +2971215073:196418:583600122208514 +2971215073:317811:944284833565203 +2971215073:514229:1527884955773717 +2971215073:832040:2472169789338920 +2971215073:1346269:4000054745112637 +2971215073:2178309:6472224534451557 +2971215073:3524578:10472279279564194 +2971215073:5702887:16944503814015751 +2971215073:9227465:27416783093579945 +2971215073:14930352:44361286907595696 +2971215073:24157817:71778070001175641 +2971215073:39088169:116139356908771337 +2971215073:63245986:187917426909946978 +2971215073:102334155:304056783818718315 +2971215073:165580141:491974210728665293 +2971215073:267914296:796030994547383608 +2971215073:433494437:1288005205276048901 +2971215073:701408733:2084036199823432509 +2971215073:1134903170:3372041405099481410 +2971215073:1836311903:5456077604922913919 +2971215073:2971215073:2971215073 +2971215073:4807526976:14284196614945309248 +2971215073:7778742049:23112315624967704577 +2971215073:12586269025:37396512239913013825 +4807526976:0:0 +4807526976:1:4807526976 +4807526976:1:4807526976 +4807526976:2:4807526976 +4807526976:3:4807526976 +4807526976:5:24037634880 +4807526976:8:4807526976 +4807526976:13:62497850688 +4807526976:21:4807526976 +4807526976:34:81727958592 +4807526976:55:264413983680 +4807526976:89:427869900864 +4807526976:144:4807526976 +4807526976:233:1120153785408 +4807526976:377:1812437669952 +4807526976:610:1466295727680 +4807526976:987:4807526976 +4807526976:1597:7677620580672 +4807526976:2584:1552831213248 +4807526976:4181:20100270286656 +4807526976:6765:10840973330880 +4807526976:10946:26311595139648 +4807526976:17711:85146110271936 +4807526976:28657:137769300551232 +4807526976:46368:4807526976 +4807526976:75025:360684711374400 +4807526976:121393:583600122197568 +4807526976:196418:472142416785984 +4807526976:317811:509294985256512 +4807526976:514229:2472169789341504 +4807526976:832040:500006843138880 +4807526976:1346269:6472224534452544 +4807526976:2178309:10610212036032 +4807526976:3524578:8472251907008064 +4807526976:5702887:27416783093579712 +4807526976:9227465:44361286907595840 +4807526976:14930352:498458819452608 +4807526976:24157817:116139356908771392 +4807526976:39088169:187917426909946944 +4807526976:63245986:152028391909359168 +4807526976:102334155:23427343368031680 +4807526976:165580141:796030994547383616 +4807526976:267914296:161000650659506112 +4807526976:433494437:2084036199823432512 +4807526976:701408733:1124013801699827136 +4807526976:1134903170:2728038802461456960 +4807526976:1836311903:8828119010022395328 +4807526976:2971215073:14284196614945309248 +4807526976:4807526976:4807526976 +4807526976:7778742049:37396512239913013824 +4807526976:12586269025:60508827864880718400 +7778742049:0:0 +7778742049:1:7778742049 +7778742049:1:7778742049 +7778742049:2:15557484098 +7778742049:3:23336226147 +7778742049:5:38893710245 +7778742049:8:62229936392 +7778742049:13:7778742049 +7778742049:21:163353583029 +7778742049:34:264477229666 +7778742049:55:427830812695 +7778742049:89:692308042361 +7778742049:144:1120138855056 +7778742049:233:1812446897417 +7778742049:377:225583519421 +7778742049:610:4745032649890 +7778742049:987:7677618402363 +7778742049:1597:12422651052253 +7778742049:2584:20100269454616 +7778742049:4181:32522920506869 +7778742049:6765:52623189961485 +7778742049:10946:6549700805258 +7778742049:17711:137769300429839 +7778742049:28657:222915410898193 +7778742049:46368:360684711328032 +7778742049:75025:583600122226225 +7778742049:121393:944284833554257 +7778742049:196418:1527884955780482 +7778742049:317811:190166906871903 +7778742049:514229:4000054745115221 +7778742049:832040:6472224534449960 +7778742049:1346269:10472279279565181 +7778742049:2178309:16944503814015141 +7778742049:3524578:27416783093580322 +7778742049:5702887:44361286907595463 +7778742049:9227465:5521390000090445 +7778742049:14930352:116139356908771248 +7778742049:24157817:187917426909947033 +7778742049:39088169:304056783818718281 +7778742049:63245986:491974210728665314 +7778742049:102334155:796030994547383595 +7778742049:165580141:1288005205276048909 +7778742049:267914296:160310476909494808 +7778742049:433494437:3372041405099481413 +7778742049:701408733:5456077604922913917 +7778742049:1134903170:8828119010022395330 +7778742049:1836311903:14284196614945309247 +7778742049:2971215073:23112315624967704577 +7778742049:4807526976:37396512239913013824 +7778742049:7778742049:7778742049 +7778742049:12586269025:97905340104793732225 +12586269025:0:0 +12586269025:1:12586269025 +12586269025:1:12586269025 +12586269025:2:25172538050 +12586269025:3:37758807075 +12586269025:5:12586269025 +12586269025:8:100690152200 +12586269025:13:163621497325 +12586269025:21:264311649525 +12586269025:34:427933146850 +12586269025:55:12586269025 +12586269025:89:1120177943225 +12586269025:144:1812422739600 +12586269025:233:2932600682825 +12586269025:377:4745023422425 +12586269025:610:1535524821050 +12586269025:987:12422647527675 +12586269025:1597:20100271632925 +12586269025:2584:32522919160600 +12586269025:4181:52623190793525 +12586269025:6765:1548111090075 +12586269025:10946:137769300747650 +12586269025:17711:222915410701775 +12586269025:28657:360684711449425 +12586269025:46368:583600122151200 +12586269025:75025:12586269025 +12586269025:121393:1527884955751825 +12586269025:196418:2472169789352450 +12586269025:317811:4000054745104275 +12586269025:514229:6472224534456725 +12586269025:832040:190405077810200 +12586269025:1346269:16944503814017725 +12586269025:2178309:27416783093578725 +12586269025:3524578:44361286907596450 +12586269025:5702887:71778070001175175 +12586269025:9227465:23227871381754325 +12586269025:14930352:187917426909946800 +12586269025:24157817:304056783818718425 +12586269025:39088169:491974210728665225 +12586269025:63245986:796030994547383650 +12586269025:102334155:23418276459564525 +12586269025:165580141:2084036199823432525 +12586269025:267914296:3372041405099481400 +12586269025:433494437:5456077604922913925 +12586269025:701408733:8828119010022395325 +12586269025:1134903170:2856839322989061850 +12586269025:1836311903:23112315624967704575 +12586269025:2971215073:37396512239913013825 +12586269025:4807526976:60508827864880718400 +12586269025:7778742049:97905340104793732225 +12586269025:12586269025:12586269025 diff --git a/t/author-lib-arithmetic-binary-_lcm.t b/t/author-lib-arithmetic-binary-_lcm.t new file mode 100644 index 0000000..76e3d5f --- /dev/null +++ b/t/author-lib-arithmetic-binary-_lcm.t @@ -0,0 +1,172 @@ +#!perl + +BEGIN { + unless ($ENV{AUTHOR_TESTING}) { + require Test::More; + Test::More::plan(skip_all => + 'these tests are for testing by the author'); + } +} + +use strict; +use warnings; + +use Test::More tests => 20205; + +############################################################################### +# Read and load configuration file and backend library. + +use Config::Tiny (); + +my $config_file = 't/author-lib.ini'; +my $config = Config::Tiny -> read('t/author-lib.ini') + or die Config::Tiny -> errstr(); + +# Read the library to test. + +our $LIB = $config->{_}->{lib}; + +die "No library defined in file '$config_file'" + unless defined $LIB; +die "Invalid library name '$LIB' in file '$config_file'" + unless $LIB =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Read the reference type(s) the library uses. + +our $REF = $config->{_}->{ref}; + +die "No reference type defined in file '$config_file'" + unless defined $REF; +die "Invalid reference type '$REF' in file '$config_file'" + unless $REF =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Load the library. + +eval "require $LIB"; +die $@ if $@; + +############################################################################### + +can_ok($LIB, '_lcm'); + +my $scalar_util_ok = eval { require Scalar::Util; }; +Scalar::Util -> import('refaddr') if $scalar_util_ok; + +diag "Skipping some tests since Scalar::Util is not installed." + unless $scalar_util_ok; + +my @data; + +# Add data in data file. + +(my $datafile = $0) =~ s/\.t/.dat/; +open DATAFILE, $datafile or die "$datafile: can't open file for reading: $!"; +while () { + s/\s+\z//; + next if /^#/ || ! /\S/; + push @data, [ split /:/ ]; +} +close DATAFILE or die "$datafile: can't close file after reading: $!"; + +# List context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($x, $y, @got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\@got = $LIB->_lcm(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_lcm() in list context: $test", sub { + plan tests => $scalar_util_ok ? 9 : 8; + + cmp_ok(scalar @got, "==", 1, + "'$test' gives one output arg"); + + is(ref($got[0]), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got[0]), 0, + "'$test' output is valid"); + + is($LIB->_str($got[0]), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got[0]), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + my $strx = $LIB->_str($x); + ok($strx eq $out0 || $strx eq $in0, + "'$test' first input arg has the right value") + or diag(" got: $strx\n", " expected: ", + $out0 eq $in0 ? $out0 : "$out0 or $in0"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} + +# Scalar context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($got); + my ($x, $y); + my ($xo, $yo); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\$got = $LIB->_lcm(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_lcm() in scalar context: $test", sub { + plan tests => $scalar_util_ok ? 8 : 7; + + is(ref($got), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got), 0, + "'$test' output is valid"); + + is($LIB->_str($got), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + my $strx = $LIB->_str($x); + ok($strx eq $out0 || $strx eq $in0, + "'$test' first input arg has the right value") + or diag(" got: $strx\n", " expected: ", + $out0 eq $in0 ? $out0 : "$out0 or $in0"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} diff --git a/t/author-lib-arithmetic-binary-_log_int.t b/t/author-lib-arithmetic-binary-_log_int.t new file mode 100644 index 0000000..70639db --- /dev/null +++ b/t/author-lib-arithmetic-binary-_log_int.t @@ -0,0 +1,146 @@ +#!perl + +BEGIN { + unless ($ENV{AUTHOR_TESTING}) { + require Test::More; + Test::More::plan(skip_all => + 'these tests are for testing by the author'); + } +} + +use strict; +use warnings; + +use Test::More tests => 22023; + +############################################################################### +# Read and load configuration file and backend library. + +use Config::Tiny (); + +my $config_file = 't/author-lib.ini'; +my $config = Config::Tiny -> read('t/author-lib.ini') + or die Config::Tiny -> errstr(); + +# Read the library to test. + +our $LIB = $config->{_}->{lib}; + +die "No library defined in file '$config_file'" + unless defined $LIB; +die "Invalid library name '$LIB' in file '$config_file'" + unless $LIB =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Read the reference type(s) the library uses. + +our $REF = $config->{_}->{ref}; + +die "No reference type defined in file '$config_file'" + unless defined $REF; +die "Invalid reference type '$REF' in file '$config_file'" + unless $REF =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Load the library. + +eval "require $LIB"; +die $@ if $@; + +############################################################################### + +can_ok($LIB, '_log_int'); + +my $scalar_util_ok = eval { require Scalar::Util; }; +Scalar::Util -> import('refaddr') if $scalar_util_ok; + +diag "Skipping some tests since Scalar::Util is not installed." + unless $scalar_util_ok; + +my @data; + +# Small numbers. + +for (my $x = 0; $x <= 1000 ; ++ $x) { + for (my $y = 0; $y <= 10 ; ++ $y) { + + if ($x == 0 || $y <= 1) { + push @data, [ $x, $y, undef, undef ]; + next; + } + + my $z = int(log($x) / log($y)); + $z++ while $y ** $z < $x; + $z-- while $y ** $z > $x; + my $status = $y ** $z == $x ? 1 : 0; + push @data, [ $x, $y, $z, $status ]; + } +} + +# List context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0, $out1) = @{ $data[$i] }; + + my ($x, $y, @got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\@got = $LIB->_log_int(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_log_int() in list context: $test", sub { + + unless (defined $out0) { + plan tests => 1; + + is($got[0], $out0, + "'$test' output arg has the right value"); + return; + } + + plan tests => $scalar_util_ok ? 11 : 10; + + # Number of input arguments. + + cmp_ok(scalar @got, '==', 2, + "'$test' gives two output args"); + + # First output argument. + + is(ref($got[0]), $REF, + "'$test' first output arg is a $REF"); + + is($LIB->_check($got[0]), 0, + "'$test' first output is valid"); + + is($LIB->_str($got[0]), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got[0]), refaddr($y), + "'$test' first output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + ok($LIB->_str($x) eq $out0 || $LIB->_str($x) eq $in0, + "'$test' first input arg has the correct value"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + + # Second output argument. + + is(ref($got[1]), "", + "'$test' second output arg is a scalar"); + + is($got[1], $out1, + "'$test' second output arg has the right value"); + }; +} diff --git a/t/author-lib-arithmetic-binary-_mod.dat b/t/author-lib-arithmetic-binary-_mod.dat new file mode 100644 index 0000000..4d0b356 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_mod.dat @@ -0,0 +1,12250 @@ +335:8:7 +183:2:1 +132:2:0 +445:8:5 +638:7:1 +839:39:20 +443:38:25 +389:97:1 +531:43:15 +553:48:25 +381:860:381 +343:872:343 +721:712:9 +483:204:75 +561:294:267 +341:5509:341 +349:8257:349 +441:3139:441 +694:1203:694 +507:2855:507 +507:6:3 +769:2:1 +517:1:0 +975:8:7 +676:8:4 +823:26:17 +264:31:16 +126:41:3 +874:73:71 +643:20:3 +283:705:283 +992:559:433 +672:317:38 +250:257:250 +938:545:393 +414:1740:414 +306:5539:306 +774:2296:774 +227:5577:227 +489:7925:489 +734:6:2 +636:6:0 +431:6:5 +344:4:0 +530:2:0 +865:67:61 +623:14:7 +408:33:12 +452:10:2 +525:74:7 +224:653:224 +471:842:471 +861:677:184 +403:394:9 +833:996:833 +670:3978:670 +883:7984:883 +740:6648:740 +655:9837:655 +643:3010:643 +110:5:0 +839:7:6 +875:6:5 +990:7:3 +969:2:1 +474:42:12 +439:17:14 +666:59:17 +279:29:18 +509:54:23 +831:352:127 +468:941:468 +653:716:653 +309:492:309 +736:126:106 +915:8378:915 +143:8090:143 +731:9138:731 +977:6932:977 +755:3681:755 +491:2:1 +450:9:0 +608:9:5 +948:4:0 +102:8:6 +219:12:3 +821:41:1 +143:48:47 +430:40:30 +506:45:11 +263:735:263 +346:291:55 +895:556:339 +228:296:228 +322:264:58 +806:2388:806 +113:7038:113 +439:9850:439 +515:8130:515 +686:9807:686 +7016:8:0 +4514:5:4 +6177:7:3 +5587:4:3 +7737:3:0 +6377:39:20 +6017:54:23 +9238:54:4 +9443:11:5 +9452:72:20 +3828:335:143 +8622:311:225 +1681:433:382 +9253:520:413 +1726:110:76 +1077:5669:1077 +3963:2921:1042 +9259:7534:1725 +1656:1122:534 +7602:3784:34 +3030:50661:3030 +6027:17249:6027 +3882:38446:3882 +1136:58517:1136 +4375:70242:4375 +2993:9:5 +8011:4:3 +3516:3:0 +6248:3:2 +6225:9:6 +7504:60:4 +9219:27:12 +7853:31:10 +1122:70:2 +5615:82:39 +5794:392:306 +4807:216:55 +2048:933:182 +1378:697:681 +5248:342:118 +9147:3773:1601 +2005:3090:2005 +9955:9053:902 +2319:3428:2319 +8293:6840:1453 +2068:93538:2068 +9260:66014:9260 +1343:16117:1343 +2638:33541:2638 +5528:12623:5528 +1632:3:0 +9950:9:5 +3374:4:2 +6815:9:2 +2181:3:0 +1650:23:17 +3458:50:8 +7962:48:42 +5655:25:5 +7837:41:6 +3138:656:514 +3580:371:241 +6310:163:116 +8776:918:514 +6163:595:213 +9191:1674:821 +3666:9725:3666 +1523:1226:297 +9386:5251:4135 +7233:8841:7233 +5813:45382:5813 +6461:74541:6461 +7814:31612:7814 +4847:37749:4847 +7858:80381:7858 +7401:4:1 +4572:1:0 +9030:1:0 +7311:6:3 +4556:9:2 +3405:77:17 +1140:16:4 +5881:65:31 +7292:93:38 +4505:31:10 +5038:824:94 +3136:623:21 +4095:811:40 +9979:186:121 +1375:940:435 +8183:8324:8183 +4847:2294:259 +5251:6551:5251 +5083:4880:203 +9141:6290:2851 +3890:50277:3890 +7097:82328:7097 +9469:71443:9469 +6510:39354:6510 +2187:88755:2187 +3463:9:7 +5638:2:0 +2120:3:2 +7292:8:4 +2758:3:1 +3144:26:24 +8095:88:87 +1578:10:8 +8523:91:60 +5185:61:0 +9680:839:451 +9249:389:302 +6804:838:100 +4158:812:98 +4138:846:754 +5431:6489:5431 +9812:1350:362 +6283:5171:1112 +9546:9508:38 +2249:5368:2249 +9039:52152:9039 +8084:53973:8084 +7349:30635:7349 +6400:88096:6400 +3423:59892:3423 +17236:4:0 +42260:6:2 +56700:9:0 +70712:8:0 +56832:3:0 +81201:14:1 +42264:33:24 +51796:74:70 +91899:99:27 +46114:74:12 +44940:943:619 +69149:992:701 +17319:944:327 +38498:610:68 +81612:922:476 +95807:2081:81 +20346:1008:186 +64572:8202:7158 +98600:6984:824 +72993:1103:195 +42267:51490:42267 +77124:80935:77124 +76747:52794:23953 +90168:31773:26622 +48371:24930:23441 +54630:168709:54630 +92449:343920:92449 +83884:454948:83884 +23012:685365:23012 +72989:144464:72989 +62895:7:0 +86615:4:3 +25570:4:2 +28604:1:0 +90934:9:7 +79950:89:28 +91589:77:36 +33441:61:13 +76503:38:9 +96183:33:21 +46737:788:245 +77759:779:638 +13349:183:173 +41366:395:286 +80672:983:66 +95317:2333:1997 +88312:3983:686 +30647:5499:3152 +11057:7984:3073 +12776:4147:335 +20624:43964:20624 +19328:32155:19328 +20247:11815:8432 +89944:53179:36765 +72751:91722:72751 +79285:719192:79285 +82427:176064:82427 +38750:422445:38750 +81162:605622:81162 +36476:121259:36476 +23938:7:5 +82005:6:3 +38056:2:0 +66005:1:0 +55867:1:0 +29809:60:49 +66880:41:9 +68905:33:1 +10377:70:17 +25990:27:16 +47941:324:313 +88994:773:99 +93339:460:419 +30586:526:78 +91557:212:185 +38501:6825:4376 +39875:3688:2995 +53531:2136:131 +85198:3355:1323 +66531:9950:6831 +87161:91712:87161 +96805:16047:523 +40342:15072:10198 +59461:59913:59461 +62151:38812:23339 +35479:251645:35479 +86191:988782:86191 +88914:497407:88914 +69487:968601:69487 +77573:546788:77573 +63528:4:0 +63025:6:1 +78315:6:3 +24763:1:0 +85255:4:3 +60043:62:27 +43321:33:25 +97357:53:49 +57457:48:1 +30930:31:23 +59514:149:63 +80152:410:202 +83471:392:367 +40046:524:222 +55265:502:45 +33440:6522:830 +35056:4579:3003 +79690:4116:1486 +26709:5488:4757 +36523:1787:783 +51451:47447:4004 +83901:14732:10241 +20388:51806:20388 +17507:71627:17507 +35161:57242:35161 +90230:952437:90230 +62744:104984:62744 +35284:414994:35284 +48131:315458:48131 +11208:732496:11208 +95271:5:1 +66414:7:5 +53604:1:0 +22992:7:4 +51064:9:7 +28125:30:15 +24980:43:40 +65793:37:7 +79359:27:6 +27020:46:18 +42142:707:429 +72321:995:681 +62201:838:189 +38996:971:156 +65142:874:466 +71060:9852:2096 +36660:5737:2238 +45432:6718:5124 +63045:4368:1893 +25801:5344:4425 +51114:92283:51114 +92508:64727:27781 +35069:45229:35069 +27505:60708:27505 +86358:24044:14226 +95567:701050:95567 +60994:913506:60994 +85299:670082:85299 +84363:583214:84363 +42665:459351:42665 +449628:2:0 +133781:6:5 +223421:3:2 +773772:8:4 +649662:4:2 +863620:19:13 +231906:45:21 +493406:38:14 +188092:63:37 +710981:10:1 +741174:209:60 +884848:344:80 +370278:707:517 +797033:293:73 +218203:926:593 +827121:6257:1197 +251223:5478:4713 +969828:8401:3713 +489861:1622:17 +427168:3174:1852 +440102:52313:21598 +274971:50054:24701 +544276:64103:31452 +428114:47493:677 +725528:77072:31880 +161894:206885:161894 +516856:743344:516856 +470901:344115:126786 +938804:294240:56084 +278774:107028:64718 +411932:7711827:411932 +818457:4596594:818457 +997315:1389806:997315 +201753:4623379:201753 +219000:8365338:219000 +413400:5:0 +990700:4:0 +345204:9:0 +836853:5:3 +336627:6:3 +873841:43:38 +395440:95:50 +803402:65:2 +806166:67:22 +589728:33:18 +173150:695:95 +973353:266:59 +760533:329:214 +426338:665:73 +794032:597:22 +372550:2879:1159 +848948:2981:2344 +105971:1466:419 +984665:8485:405 +285780:4339:3745 +542996:90247:1514 +495725:91707:37190 +887655:36770:5175 +128394:72366:56028 +741878:96581:65811 +246944:336455:246944 +108338:617552:108338 +216277:112494:103783 +823575:736170:87405 +618542:964691:618542 +222964:7054066:222964 +662347:6648878:662347 +962378:9233345:962378 +690967:9627756:690967 +300549:8738170:300549 +551280:7:2 +520776:4:0 +172483:4:3 +560212:2:0 +757999:4:3 +226651:46:9 +767890:21:4 +810919:19:18 +671432:38:10 +104039:70:19 +714466:303:295 +278848:822:190 +684970:306:142 +763254:392:30 +736697:433:164 +511367:6914:6645 +843410:4832:2642 +409198:3597:2737 +251185:6679:4062 +853453:3496:429 +721861:79591:5542 +268176:44896:43696 +946780:54581:18903 +457524:93923:81832 +835101:22340:8521 +369993:822027:369993 +838094:734098:103996 +510761:257140:253621 +826056:594487:231569 +948169:283732:96973 +383092:2618630:383092 +962124:4602401:962124 +268679:8511734:268679 +696854:1208944:696854 +243624:8513459:243624 +125441:2:1 +339431:1:0 +524997:4:1 +687475:2:1 +744993:5:3 +119028:82:46 +965818:22:18 +364830:72:6 +281862:22:20 +949959:26:23 +681417:788:585 +881810:667:36 +252093:588:429 +780593:624:593 +467318:214:156 +111310:9939:1981 +818058:7207:3667 +110222:4426:3998 +970664:4051:2475 +319824:8671:7668 +280122:55488:2682 +491169:57807:28713 +448195:71562:18823 +159361:84562:74799 +889031:62958:7619 +226745:500816:226745 +251791:874472:251791 +132547:259431:132547 +533335:546316:533335 +728510:605374:123136 +434799:5166324:434799 +676853:9261794:676853 +566464:4208786:566464 +561686:2245199:561686 +465983:3516250:465983 +813309:7:0 +880649:2:1 +954323:8:3 +943994:5:4 +463504:8:0 +628357:36:13 +688661:66:17 +867421:39:22 +139774:14:12 +516917:32:21 +846506:919:107 +917646:984:558 +994124:186:140 +600164:775:314 +134005:413:193 +828002:6714:2180 +601538:4592:4578 +907081:5064:625 +518966:4300:2966 +656260:3201:55 +960055:57701:36839 +625980:60290:23080 +718095:86045:29735 +487892:46741:20482 +695946:74129:28785 +164727:514531:164727 +900763:319258:262247 +167797:933234:167797 +679099:305545:68009 +109376:254087:109376 +939617:6468619:939617 +623435:3480010:623435 +608540:1019783:608540 +425736:8013454:425736 +165353:7360421:165353 +9770451:7:5 +7034869:7:2 +8936367:5:2 +2675200:9:4 +3722834:5:4 +3147020:31:24 +4021907:12:11 +3957820:28:20 +1550639:82:19 +2473935:15:0 +8115582:756:678 +1003387:399:301 +5758356:680:116 +3184360:967:29 +5405225:754:553 +4253282:6307:2364 +3176522:7168:1098 +3997395:7881:1728 +1217011:9545:4796 +4570541:4072:1757 +4841465:93916:51749 +4533687:57737:30201 +9734726:13353:389 +8730400:82147:22818 +3157091:61563:17378 +4549887:270296:225151 +2939403:572940:74703 +2964254:845421:427991 +7786451:932847:323675 +9119979:964525:439254 +7344029:5080315:2263714 +1046290:4021900:1046290 +1182120:7658304:1182120 +9502000:4620217:261566 +8966170:5163576:3802594 +1020753:95363962:1020753 +4194901:57096647:4194901 +4908146:73487014:4908146 +3267340:16080677:3267340 +8235694:83131021:8235694 +9838198:1:0 +6834159:8:7 +5060713:7:0 +7509236:5:1 +2325978:6:0 +1567922:67:55 +2093028:36:24 +1581930:39:12 +3932148:56:52 +6256753:46:17 +3544058:518:420 +7322468:596:12 +8139477:926:863 +5779428:508:420 +5761225:161:1 +3610827:4933:4804 +8668266:7837:544 +5889958:9693:6307 +6694723:4007:3033 +2716457:9645:6212 +2814794:51700:22994 +3140981:12946:8049 +1559939:26188:14847 +9942508:66868:46044 +6810209:83904:13985 +5706698:658797:436322 +5293969:721606:242727 +9874510:184789:80693 +6191456:179548:86824 +8236065:998287:249769 +6823728:9302327:6823728 +8192320:4189813:4002507 +7490527:9327425:7490527 +1413227:3725085:1413227 +5204388:5879420:5204388 +7731696:79465338:7731696 +6196295:39029720:6196295 +1062184:51981462:1062184 +1869821:27223888:1869821 +3171806:31585239:3171806 +7619938:5:3 +5298716:2:0 +3549827:5:2 +1250225:7:4 +6400077:7:5 +4665389:39:14 +5458557:42:27 +1558386:37:20 +5166871:94:67 +3648069:67:53 +1632604:663:298 +4700442:317:283 +1804207:172:99 +8406868:755:698 +1776946:460:426 +2201713:8660:2073 +6892811:6345:2141 +6870569:6278:2437 +1576482:5402:4500 +6869065:4586:3823 +2696378:50593:14949 +4888010:50141:24333 +1013265:70042:32677 +9099505:26582:8461 +8454943:25234:1553 +2515077:657035:543972 +6846147:817400:306947 +2692509:901050:890409 +2698790:173774:92180 +1236951:839766:397185 +4303539:7690819:4303539 +9081344:1997427:1091636 +2680754:9617761:2680754 +6711662:5997933:713729 +9239603:4991372:4248231 +6777212:67669214:6777212 +1224223:94748011:1224223 +8097637:53614682:8097637 +7088967:89131111:7088967 +8153224:38777414:8153224 +6846499:3:1 +4878706:6:4 +8353568:6:2 +2406088:7:6 +2457196:7:0 +2786972:96:92 +9733551:75:51 +8353534:52:46 +4148684:66:56 +2296488:74:46 +3746644:946:484 +8574375:112:103 +4035226:792:778 +9401335:122:15 +4252848:767:600 +4061817:7397:864 +9336770:7526:4530 +7006918:5115:4483 +7920491:2974:729 +8052048:1791:1503 +2344568:58559:2208 +1139521:86729:12044 +1021742:76914:21860 +9042827:18166:14325 +8735013:60593:9621 +4659614:914166:88784 +5630070:485107:293893 +8308338:870409:474657 +9110478:780071:529697 +2625350:431645:35480 +3081021:5452445:3081021 +2633153:2933937:2633153 +7797518:6131839:1665679 +8240054:9375678:8240054 +2976521:5172364:2976521 +4879133:48122414:4879133 +7838870:99234068:7838870 +5541896:29770327:5541896 +5728159:59938077:5728159 +1462226:42062631:1462226 +3744437:1:0 +4772108:1:0 +5658468:6:0 +3898797:6:3 +2326304:7:1 +7953280:86:0 +1530761:70:1 +8667009:93:60 +2146405:33:19 +5209020:50:20 +7727585:603:140 +8726344:551:157 +9751631:228:71 +9804805:606:331 +6798606:846:150 +2405865:5964:2373 +8978526:3627:1701 +2812797:3878:1247 +6531829:5314:923 +3442115:3323:2810 +6844602:31152:22314 +7003286:25804:10402 +3180755:99470:97185 +5730293:62425:49618 +1515990:75317:9650 +6388942:652004:520906 +9078819:966350:381669 +5850396:868628:638628 +7932267:335175:223242 +7509415:101768:80351 +8955827:6803562:2152265 +1111171:7357999:1111171 +3401037:2800710:600327 +2086046:8198221:2086046 +3044272:8347385:3044272 +3271444:11935650:3271444 +5774706:50919966:5774706 +9386550:25319905:9386550 +1443888:25340916:1443888 +6771765:83423971:6771765 +86497363:8:3 +66346971:5:1 +82593336:8:0 +74648862:8:6 +15507832:7:4 +70332912:45:27 +33254542:42:34 +98913044:99:65 +10549013:60:53 +77199906:55:36 +90288448:304:144 +90286381:603:397 +91083741:737:122 +86725522:367:119 +72300468:280:268 +71929906:2569:475 +91538487:9460:3527 +62688233:9955:1598 +35255099:6267:3224 +30545410:8954:3316 +77116775:65873:45365 +66399112:69850:41612 +11204958:83728:69134 +61000189:47110:39849 +77781825:87116:74353 +20653368:929427:205974 +65340890:997553:499945 +69944686:229492:179118 +43952724:308643:125418 +14362488:322243:183796 +12640252:8899570:3740682 +44807620:1628032:850756 +49738334:3788886:482816 +21530820:4875491:2028856 +39131260:6231204:1744036 +35340822:32379315:2961507 +54834330:64754998:54834330 +32182719:51719082:32182719 +26967989:15920291:11047698 +95599524:78243046:17356478 +60600304:700233126:60600304 +12838239:121695581:12838239 +73967442:634796029:73967442 +99174206:278436932:99174206 +77470593:257183328:77470593 +95437811:9:2 +78282731:6:5 +92297195:1:0 +65335651:6:1 +19185629:1:0 +32673754:57:43 +94610731:41:33 +40473101:47:38 +44188701:67:57 +62038253:72:29 +15462670:794:314 +65150195:550:495 +60385226:905:6 +48027337:243:88 +71007116:415:201 +30471441:6950:2641 +79307204:2860:2264 +62211585:8581:7916 +36157294:9908:3002 +14704771:7885:7131 +42711486:33348:26046 +55982799:68482:33005 +93851262:67034:3662 +39751136:81109:7726 +94381383:51846:21663 +71271206:893574:678860 +94881270:965685:244140 +47814594:457085:277754 +89142669:324624:195693 +62451955:619889:463055 +34285679:8736159:8077202 +61793387:6493726:3349853 +41577958:2979387:2845927 +19015112:4858484:4439660 +35538333:6066072:5207973 +42985016:69925187:42985016 +89397432:18789840:14238072 +91008561:56620867:34387694 +50502500:66765902:50502500 +74311958:81465741:74311958 +10204536:266573909:10204536 +56375601:425356371:56375601 +15361764:962164762:15361764 +93144940:714410814:93144940 +14208462:979701779:14208462 +91440538:9:7 +25752054:3:0 +25736327:4:3 +48553945:8:1 +78364201:2:1 +81255599:38:9 +34135769:14:3 +94995379:77:17 +58967604:78:72 +29297785:10:5 +63025300:892:148 +57235438:526:326 +49230156:423:147 +87061128:858:726 +76761643:220:123 +74558717:5932:5341 +70203781:7748:6901 +85318761:3012:849 +61408672:1705:1392 +61136616:9780:1836 +29192415:92231:47419 +77111996:33824:27100 +79800082:14098:5402 +32411421:20947:6412 +64708529:90440:43929 +83682599:248969:29015 +72785705:848102:697035 +48782649:572305:136724 +25161462:990489:399237 +82050065:717183:291203 +13990490:7456395:6534095 +38379557:4292946:4035989 +77490557:7712117:369387 +51200325:4599646:604219 +68296790:6916690:6046580 +68368914:63780178:4588736 +65144338:85745458:65144338 +19435303:24964822:19435303 +78835696:44420680:34415016 +13541527:97564465:13541527 +60821084:795710123:60821084 +96228359:695663239:96228359 +93679528:504018779:93679528 +64747323:506577353:64747323 +43290274:127896398:43290274 +98093998:7:2 +85075786:7:5 +33595494:1:0 +91226063:1:0 +34325069:7:2 +78461287:72:7 +49428269:54:17 +57553645:78:19 +83367253:16:5 +92609388:98:74 +31925040:827:359 +55343403:276:159 +54619111:195:1 +40821554:515:79 +37916459:143:9 +32695079:1940:259 +10368742:1668:454 +43305855:9989:3540 +47515968:8571:6915 +27352831:6171:2959 +95604227:94948:86539 +69587323:91841:63686 +23534598:59587:57320 +82912118:21799:10521 +66849414:56748:270 +43091088:914392:114664 +15109945:977428:448525 +74325406:997927:478808 +94401915:781509:620835 +38698602:342518:336586 +15485472:1389060:205812 +91664033:2163286:806021 +19020730:3702338:509040 +60347685:1108329:497919 +17817086:7416961:2983164 +40862350:73145286:40862350 +69145371:13059744:3846651 +97228969:12065517:704833 +85714386:89027124:85714386 +57624474:70221490:57624474 +20339909:420232381:20339909 +85576650:716860476:85576650 +25991089:467263023:25991089 +45583063:599650139:45583063 +10313676:162013784:10313676 +10991281:9:4 +75092533:6:1 +86052062:9:2 +50119440:2:0 +84391781:9:5 +13672535:43:40 +83333998:73:45 +46282774:64:22 +60033329:72:17 +17821182:99:93 +13129436:867:455 +83308583:834:323 +36125797:482:379 +78977859:860:619 +93442842:592:378 +14539965:9579:8622 +91402042:3211:927 +52220912:8871:6206 +26275089:8721:7437 +28534227:5104:2867 +95683703:37652:9971 +95271165:72728:70213 +93945700:55294:1194 +82509627:75743:25500 +32048309:28333:3686 +28972217:295989:261284 +34318873:667054:299119 +14328671:426932:239915 +64062865:754240:706705 +64015915:773215:612285 +52061194:5992054:4124762 +43363336:2666031:706840 +99104218:6880037:2783700 +27028658:7590858:4256084 +47885838:5022662:2681880 +77994096:84304691:77994096 +48568352:46566325:2002027 +53428641:65492679:53428641 +54550713:82123195:54550713 +93598032:23631933:22702233 +20805003:864147360:20805003 +55304860:211580843:55304860 +50896838:920822038:50896838 +24136365:980187625:24136365 +23724577:935246391:23724577 +206699044:5:4 +815300438:5:3 +962345179:9:1 +779479658:1:0 +651197485:2:1 +495262077:81:51 +990927278:98:82 +678875493:23:18 +206536092:55:37 +119888278:46:42 +730178205:348:81 +745698031:524:443 +754022811:424:291 +704550740:306:122 +730070440:793:541 +982296817:7706:5291 +734279797:7112:1357 +977972228:2121:338 +815720366:2508:890 +652690783:6696:4879 +180719567:35581:3668 +625290998:61732:7570 +788260801:82537:32451 +675757306:74039:3353 +766629091:56078:42831 +448777684:197629:159854 +209695430:299774:153404 +899538619:721381:697893 +615766674:158795:118459 +498597415:229844:65779 +592018870:3632355:3577360 +844226432:6876091:5343330 +688796134:6652225:3616959 +856394756:3761970:2427566 +348928064:5088120:2935904 +152836313:27955344:13059593 +247321610:54778383:28208078 +964954815:73709271:6734292 +133444099:37874430:19820809 +876403271:45259570:16471441 +286050534:621753483:286050534 +210904131:932105104:210904131 +382235706:224724813:157510893 +243848827:324415033:243848827 +909218396:509360496:399857900 +737099033:4005654926:737099033 +706293427:8012865032:706293427 +671740045:6941022041:671740045 +599393028:5884364487:599393028 +863625569:7594668767:863625569 +704902640:2:0 +464723753:3:2 +512968073:5:3 +150737967:1:0 +633351163:5:3 +701804719:34:9 +827062673:67:0 +475602282:71:49 +471663626:78:44 +681331226:86:10 +490490530:409:143 +313127163:492:159 +604943070:831:0 +635314300:650:400 +175698494:164:46 +118502289:2832:81 +895402683:2709:2331 +670481720:2623:952 +276154285:2397:709 +915370398:6944:5374 +276591433:46345:4473 +597121006:58439:49743 +548483825:40868:35265 +442114578:91720:24178 +551741822:64159:38581 +947566536:469750:80786 +510401894:266221:56237 +201705473:597448:365497 +697696246:587183:122842 +110235244:665957:352339 +139661959:1492809:830722 +878180170:4125686:3534738 +798214497:8789817:7130967 +368331053:7984338:1051505 +897164427:6234686:5604329 +663628847:78889774:32510655 +262263043:87678403:86906237 +387147440:42888832:1147952 +967664738:35859046:35329542 +736393187:75434513:57482570 +462438155:349195761:113242394 +234459727:663649699:234459727 +603543908:927489724:603543908 +142996911:794482148:142996911 +671838307:650187099:21651208 +146470252:4889123402:146470252 +884852054:4038659416:884852054 +530640060:3197313341:530640060 +100896578:1440485441:100896578 +122976517:4492411413:122976517 +366003722:1:0 +713832639:2:1 +512374296:1:0 +367260642:3:0 +494970985:2:1 +292354157:53:9 +509317931:49:24 +266296703:27:23 +281002516:15:1 +225981450:90:0 +778975422:433:195 +563549440:229:134 +630878479:555:544 +595530915:966:609 +222483696:562:260 +187156525:7901:5538 +946608578:5636:2926 +495628178:7146:3056 +687039942:8615:2307 +616260257:7085:6957 +440501037:33977:23209 +707527157:88089:84398 +417323140:20731:8110 +796087984:65733:61354 +676159671:33479:17787 +933026395:794625:136645 +192167864:527915:6804 +542816966:172438:154580 +182113134:243245:165874 +231513545:396426:761 +590456709:9115832:7043461 +809333554:1115694:455404 +341564268:3014446:931870 +467513243:8991157:8964236 +217650402:6923503:3021809 +890800892:41808782:12816470 +645509513:61330927:32200243 +259947353:69023425:52877078 +330486449:65236028:4306309 +378513514:56726453:38154796 +521933107:552327960:521933107 +409715073:664009055:409715073 +967154731:927709102:39445629 +272393492:296829318:272393492 +954924697:993571637:954924697 +619416939:2863172516:619416939 +235166054:4446946256:235166054 +569824811:5284915630:569824811 +747572585:8931598269:747572585 +701271000:1776358445:701271000 +498703833:9:0 +375604754:8:2 +844357755:8:3 +634112777:2:1 +139642524:3:0 +677237916:13:4 +301113662:29:21 +305827447:21:16 +394964452:77:36 +238028854:43:32 +957856177:938:593 +227513209:709:72 +761125473:271:22 +154197349:273:124 +748065044:564:260 +558243319:2949:568 +592010374:2200:1374 +392250783:7734:5505 +232786177:6166:1179 +494700288:2830:2138 +537094094:95508:52610 +347322210:32352:23490 +199577338:98925:45613 +329608696:38242:898 +182266934:82299:56948 +595818167:115924:84731 +974930247:852854:118125 +461566639:396710:192909 +899822639:950089:88356 +124454941:769444:574457 +377769545:9522883:6377108 +379929596:2512472:546324 +751309107:3940939:2530697 +962081350:7824881:7445868 +348595944:9078740:3603824 +320394415:88622618:54526561 +475306448:31343936:5147408 +760311935:39310639:13409794 +543155544:26146610:20223344 +175884759:81051708:13781343 +471952895:307851623:164101272 +514425275:930011770:514425275 +665499498:744140101:665499498 +977931111:674390628:303540483 +684706990:927451928:684706990 +711171626:1414407650:711171626 +433519749:9926201913:433519749 +936437008:7790818608:936437008 +536663446:3766479901:536663446 +702841581:1139341189:702841581 +195008931:7:5 +822790849:3:1 +499518946:6:4 +873447560:3:2 +346568150:3:2 +943389116:47:40 +113511544:92:12 +194733342:43:16 +639773129:62:27 +803339033:28:21 +489675254:193:93 +374160728:987:872 +779002000:947:747 +838768848:560:288 +256889851:471:328 +508508807:7878:7541 +383575291:4622:133 +648663473:1625:848 +788240290:8144:6962 +107832358:9457:3644 +915313422:42677:19803 +476244809:34201:30085 +202853341:57132:34741 +918151177:77937:53317 +649348854:24165:11139 +905916018:359380:278418 +964796109:721447:221470 +761630877:664034:647913 +801906972:103053:51579 +519100614:970868:657102 +903720699:3389401:2140033 +877952270:4310312:2958934 +507068440:4678603:1779316 +667897772:7983266:5286694 +147989901:9638929:3405966 +622085623:72193178:44540199 +491583793:66990476:22650461 +642011542:72701549:60399150 +327517020:94078735:45280815 +709750962:37154376:3817818 +326218783:611900123:326218783 +944740653:781232696:163507957 +857175466:194522691:79084702 +963514736:905354100:58160636 +429267152:674206989:429267152 +363461543:6423352107:363461543 +133862049:7734497020:133862049 +830696789:1660507441:830696789 +444565326:2753339002:444565326 +598011809:8745485244:598011809 +1058786229:7:4 +8130304846:4:2 +1830834994:9:4 +9728492138:8:2 +2309001906:6:0 +8627091640:10:0 +1327355446:30:16 +5404283040:63:30 +8275296027:16:11 +6532508863:80:63 +1925116831:574:43 +7401113513:537:155 +6975463302:318:60 +9390436119:244:227 +3845011554:732:18 +6822700305:2571:1611 +2088978681:5158:4155 +4947113082:9660:4902 +8368905708:3754:888 +1325771899:3903:859 +1096371715:46944:41539 +6438175915:59622:13489 +6921554892:40906:14256 +3162463036:94839:56581 +6885237738:85070:12218 +2963218409:388640:227049 +7207899464:330035:265099 +5331931813:678272:35621 +5095601380:930902:774734 +8816034809:947413:356844 +7579078526:1762537:169426 +5562362079:3603922:1510433 +6875387917:8560570:1250207 +1395252131:4057454:3545409 +5398809607:6477728:2862183 +4216396304:20680147:18326463 +9511669705:80955511:39874918 +8926563893:84214186:84074363 +8593826828:51621078:24727880 +4883802344:34871750:1757344 +8516500934:281641550:67254434 +5485900218:305447251:293296951 +5558747840:623339125:572034840 +4586073177:408302393:94746854 +6443857857:476671682:247125991 +7670485165:8537198672:7670485165 +8802604904:6230544302:2572060602 +5700015705:4877102400:822913305 +1747403689:9237913659:1747403689 +8813885448:3809106017:1195673414 +6377832054:82809857740:6377832054 +8835867881:40262641036:8835867881 +9545984792:32562832859:9545984792 +2165645538:82414619066:2165645538 +4496161181:54888700192:4496161181 +9722411126:6:2 +2595030891:3:0 +8065926777:5:2 +2799112212:5:2 +6127157415:1:0 +3862162969:90:79 +3575511736:55:16 +9497413607:24:23 +6326201285:44:41 +2624113881:93:27 +1557203777:575:277 +7791929588:874:214 +7106627774:601:503 +3280990444:672:172 +2166529443:994:85 +1182341801:8858:2535 +8592162112:2202:2152 +1545488076:9777:8355 +6899817227:9142:2431 +6693080635:8612:6475 +3565484548:15679:1553 +4896325242:29608:20674 +3540769809:26520:5049 +3602587603:89923:2454 +1536905947:33410:12537 +8330131121:981345:474761 +5981332443:583137:96234 +9909611401:844414:413111 +9555603024:788283:36498 +3531815480:758346:198158 +9889776931:1705715:41361 +7976981440:6984178:1050164 +7721992211:8651661:4710599 +8058690351:8974779:8313588 +5543462487:7766660:5833907 +3192684439:80594353:49504672 +9770947122:59833011:18166329 +9358979256:97063812:40853304 +9196538078:58448673:20096417 +2817592381:15391948:865897 +1620080827:642525319:335030189 +7468494982:476717813:317727787 +4182662240:830691243:29206025 +8968482122:677640938:159149928 +9844090887:122296317:60385527 +4035338615:4486832473:4035338615 +2489354531:1986128306:503226225 +2155944695:9960606726:2155944695 +3820388468:1303395547:1213597374 +2166111568:5760889966:2166111568 +2206945025:14504696672:2206945025 +1667152255:90242238582:1667152255 +7267381820:85685407305:7267381820 +6568194021:76903621410:6568194021 +7860978749:88659550526:7860978749 +4685229020:2:0 +9178142779:9:1 +3744142626:1:0 +1946541828:3:0 +6158494025:6:5 +1592943065:32:25 +8388326393:73:53 +3595456964:56:36 +6072161508:97:17 +6294885881:67:41 +7708047945:521:388 +9013866333:378:87 +1304526344:928:552 +7427930925:771:504 +8736654034:231:31 +4672170137:4316:869 +5581124445:1931:1489 +1196965452:5843:3530 +3708783545:8828:8325 +2194823848:5101:1275 +1073325921:64521:19086 +6518959619:15251:11175 +2197656960:45125:24335 +7147389040:69965:44500 +2902605360:99594:37824 +4815627998:436054:283676 +6981338646:636720:340566 +3189459406:744299:138191 +8367431546:453586:130604 +6662937662:272610:76652 +9849299331:5624807:262274 +5864626107:1467496:512091 +5966986290:6464921:6329128 +1623161303:1446684:1428539 +5794873070:9670832:2044702 +9052136484:87133222:77414618 +7356191520:76708181:68914325 +2881378190:25225991:5615216 +5695391016:29863781:21272626 +1027084863:68426389:689028 +4154795139:791337447:198107904 +8957931012:816134617:796584842 +6395460108:525515689:89271840 +1563827077:936233862:627593215 +6240888524:758125839:175881812 +8870182600:8007242232:862940368 +9650310940:8069022663:1581288277 +9055262222:2461951886:1669406564 +3672085414:1717332189:237421036 +1315679357:3389382178:1315679357 +5842219228:88314281043:5842219228 +9008815908:49328018350:9008815908 +3886866416:26590305350:3886866416 +2587272508:13573974352:2587272508 +4115951991:35526984888:4115951991 +8643336920:1:0 +3135337443:2:1 +9271253168:3:2 +7136412608:9:2 +9465844515:8:3 +3333020628:53:35 +5049685435:20:15 +9587277576:59:6 +3567759862:46:0 +6644692227:57:48 +1932053305:226:97 +1674038559:857:469 +4274090660:258:224 +7784791407:200:7 +6049245450:977:469 +1121467490:8356:374 +5955744597:2579:580 +4229715894:4575:294 +6527171173:1778:1601 +3821048262:7600:3862 +1506568531:60768:8275 +2877416897:11142:6539 +9040561433:17038:11215 +1925382233:63896:4065 +4461549593:58710:563 +4382130825:428245:327985 +7036005172:318371:6072 +3000171954:804939:164301 +1680374178:615514:20958 +6233888544:302834:50654 +2865218857:2309767:1107777 +1528355329:8816543:3093390 +4424467104:9315793:8781222 +3849748815:3876664:221463 +7069663254:4536761:1389616 +3573650337:40605540:362817 +4231688153:77151307:65517575 +9710508856:39511362:30225166 +1875481126:15266914:12917618 +9278222675:95241942:39754301 +4997472885:404875356:138968613 +5702188016:165769942:66009988 +6388136224:971910191:556675078 +3147707804:292882928:218878524 +4169826835:308755741:156002202 +2636841360:5131981561:2636841360 +6170239010:3420406147:2749832863 +5512488829:1170337146:831140245 +3493398291:5494336270:3493398291 +3437267239:4297357742:3437267239 +7329205158:26460792334:7329205158 +5644712486:10057280606:5644712486 +5253850015:97348790915:5253850015 +4922340803:68812083962:4922340803 +2337088590:92294189578:2337088590 +4617381111:7:0 +4990612371:5:1 +2852897093:8:5 +2955108653:5:3 +5562903167:3:2 +7657375149:49:11 +9247596734:86:50 +8495635657:54:13 +5701074083:93:80 +8833665868:16:12 +8857324973:187:35 +1131455907:387:261 +3372218625:108:57 +6416184397:174:169 +8281379637:418:3 +2865339351:1603:896 +8543136641:9957:770 +2447012611:5472:5347 +8779395455:8883:6767 +9438123673:6213:5077 +2886800304:89730:6744 +2097022446:78771:59655 +1336057758:26665:7933 +3816927860:10536:8996 +3029420015:98099:24796 +1000634902:600656:542662 +4645653070:572929:344738 +1679822879:127526:50407 +3671312291:997160:766331 +8324874727:156870:97567 +8809719140:5783017:2184249 +3285451119:2237127:1348683 +2155549862:8242344:4298078 +4872240342:5113267:4410158 +6331537086:3788534:896772 +1353340510:87122247:46506805 +9737694672:59857240:40821792 +7355601658:43224956:7359138 +2909802979:36313663:4709939 +9558791543:89436181:78556357 +8249940244:882465106:307754290 +8038635436:326113702:211906588 +4142019044:121161408:22531172 +3494170526:346925481:24915716 +4883762905:587128601:186734097 +8288051961:9431116181:8288051961 +9138174989:9835692288:9138174989 +9229034998:3036439224:119717326 +9334276033:5545090077:3789185956 +5109293755:8570183193:5109293755 +4445651250:14195218503:4445651250 +1059134227:64988211386:1059134227 +6434084218:59582953552:6434084218 +4348678441:57948173461:4348678441 +2872732941:63991881888:2872732941 +30743995368:9:3 +87243393266:8:2 +42615219613:6:1 +86255491956:6:0 +27425898047:3:2 +96748966433:99:20 +40083425356:51:40 +58837740324:71:67 +20927303260:34:14 +60753416334:13:0 +93011727346:713:356 +38516296425:766:239 +95151266321:589:272 +67571085820:312:4 +87132015749:420:149 +25155998782:7814:5696 +85496928906:3881:853 +73150454967:1323:240 +40518558831:5674:2823 +38518488325:7174:5353 +34712316859:80091:76549 +13791457509:63739:58862 +58348811307:21185:3872 +22188388221:86741:40421 +36351629814:68651:32851 +14578986643:555948:362239 +83618602604:504699:72284 +24204090446:619769:251689 +94770762672:546762:505212 +84197192507:569136:350939 +49866473168:5091136:3887184 +88029734823:7694151:953232 +84164637895:4824921:3540892 +63986862166:1558066:207678 +39545356150:7100422:3106032 +30256422626:10544639:3853335 +29880726618:82458527:30739844 +61315509061:64018039:50245738 +19139231671:72118450:27842421 +49499800846:15042402:10298266 +57643455228:523822694:22958888 +68292812858:345772077:175713689 +47499457381:311924737:86897357 +11634143040:585403886:511469206 +29305202684:911045476:151747452 +39282208194:5436556295:1226314129 +19104292315:5270800643:3291890386 +67131278466:5779223646:3559818360 +40793084437:6283739593:3090646879 +85527839170:6099169229:139469964 +40631584355:37389183338:3242401017 +67906313822:26403706196:15098901430 +22721433103:89065176314:22721433103 +28355632314:81949797689:28355632314 +21169991636:50001207935:21169991636 +34713528279:447226504573:34713528279 +58802397192:525515788047:58802397192 +36261679299:514806424865:36261679299 +74872507512:176672708136:74872507512 +69691803545:240565433662:69691803545 +98283635896:3:1 +38350351415:1:0 +25627770694:6:4 +32208108126:8:6 +72750050714:8:2 +54293137113:91:33 +49894156369:17:11 +54423105766:26:16 +22109672182:79:10 +84371111038:54:10 +84480590940:797:36 +54323035255:756:559 +80645150397:500:397 +67293402309:751:747 +65848276748:205:18 +71489332225:6197:2782 +14527882845:1601:590 +46733070641:8408:2505 +56893688014:8322:2134 +15989109861:1609:597 +60672591674:50589:40427 +71258680146:95206:35738 +35787257740:58142:42752 +11283438899:28416:13619 +92570931106:77440:6946 +23350505433:431363:394880 +83371325004:449600:198604 +86247469884:834136:309892 +67801001368:369819:235003 +10068194520:833135:591180 +58287217286:2492121:1491338 +31754496179:2611100:909079 +92613883270:7673601:1192801 +16781806504:9030966:2271676 +13480164613:7338152:7317541 +31631468206:80810155:34697601 +86650095628:58339479:15969313 +87747793256:29709946:14322718 +63936556323:70329290:7231713 +68866928065:33071271:12541843 +63900782783:678933942:80992235 +41751215753:108866388:55389149 +16549764499:111431031:57971911 +96822107347:134672329:127375125 +29695419295:362173125:359396170 +86498694186:1169295852:1140096990 +49800347877:4634236092:3457986957 +73766226658:3797375096:1616099834 +18236207367:9151204839:9085002528 +44288327675:3299306299:1397345788 +62467992961:42708380274:19759612687 +64007995061:10962334083:9196324646 +98633478899:45651821756:7329835387 +76477531212:45005536356:31471994856 +73208587804:31041718290:11125151224 +98719363569:350363568396:98719363569 +87114127905:130691953527:87114127905 +13054312849:488745788206:13054312849 +44973665797:290984602085:44973665797 +96358541144:332015387819:96358541144 +16896354051:9:3 +79674329310:2:0 +57047091606:9:0 +33529626130:6:4 +48048374299:8:3 +13400079712:42:40 +33232044274:72:34 +72344534551:67:27 +30066289617:60:57 +65598410804:89:49 +58382694015:216:15 +77863186048:270:148 +78630437769:728:65 +64784437322:367:138 +85533488011:615:181 +13781216517:7668:3201 +79457511308:3407:2428 +74408154797:2113:817 +75041730179:1390:339 +92552537193:4696:3001 +98237587278:52897:29522 +66138178923:27648:15723 +39719050025:58526:28969 +20590958508:35210:9668 +28978376270:40457:38595 +85726435255:561596:490643 +57013944325:534920:31045 +75009985383:905556:65235 +72885985225:186919:98798 +80787495820:420677:264063 +92463144501:6690592:5853653 +19197384336:8885550:4596336 +96207994297:8491079:4069227 +25752778150:7303743:7084075 +56072073795:2475993:736317 +12282454696:10361552:4015576 +88404991368:35442898:10403756 +50843796916:66790964:15873312 +15272181110:82171848:70389230 +15189230218:63043574:58772458 +21711297104:800713847:92023235 +87688276493:876219027:66373793 +68428426520:142492095:32220920 +40800187529:265494469:179533772 +43423754345:787752149:97386150 +55083894914:6223353616:5297065986 +69553103557:3608502524:991555601 +14222222989:7193430341:7028792648 +57032919155:8776125936:4376163539 +55963784063:8679245463:3888311285 +61289397627:85781961592:61289397627 +39162425556:15133505007:8895415542 +47763496386:18954725101:9854046184 +63881859606:39947903824:23933955782 +54185928642:85839460940:54185928642 +84803658875:101730950620:84803658875 +15356577292:835978313845:15356577292 +38105015420:305417665665:38105015420 +34406374567:523266131462:34406374567 +33012166043:144255185679:33012166043 +67526052053:9:5 +91995209778:7:3 +11165678950:3:1 +99076763462:8:6 +99342479404:4:0 +22298941878:22:4 +54436147019:28:23 +95508757331:40:11 +81068390244:47:42 +31761976872:10:2 +20589174739:745:119 +62262801195:822:195 +27053038763:896:555 +67411120042:787:720 +29683321651:363:346 +86871751940:8516:1876 +54140751984:6904:5128 +85217461124:2099:600 +29846726987:9675:212 +93561929197:2336:1677 +55994488455:90976:34119 +28948863383:23832:13823 +54406083606:39416:21142 +43487330263:33012:28447 +43949821502:58663:29869 +66666192726:857209:191587 +25893039018:801161:316659 +49085207048:393613:91496 +60764348362:969731:34171 +82961664369:571473:357486 +84041745287:1607485:822002 +40497626234:8644352:7481466 +68202992445:8591786:1395177 +98830834986:1297403:1161461 +16679990874:9390820:1894554 +14755445587:27640445:23088402 +31418530063:83165448:65156167 +62692148506:24779359:370236 +98230635462:49682370:8589972 +78105787587:46173229:26857348 +41866937192:298881954:23463632 +17220873631:113966264:11967767 +90718577836:311764781:306791346 +10577659503:358674363:176102976 +24155407568:817059238:460689666 +88704272252:2284883369:1878704230 +99886201139:2771975463:95084471 +34944137594:6848508152:701596834 +41396107134:8268392474:54144764 +68356614511:4027668890:3913912271 +11918889703:15575214564:11918889703 +22295265807:85019050112:22295265807 +13744143619:86991726829:13744143619 +37122857620:37235908155:37122857620 +56734458604:78960804472:56734458604 +42799402246:967927035275:42799402246 +48392071888:516811369705:48392071888 +87183480342:453174501459:87183480342 +59234252254:234750506656:59234252254 +64521188843:340531722413:64521188843 +84226908981:3:0 +56327012846:6:2 +49525459226:9:8 +30581677268:6:2 +83330636630:7:3 +95605524247:23:18 +99198517038:73:3 +76308369242:78:14 +30010805046:27:0 +67487296568:66:32 +98660662087:736:455 +46874600327:160:7 +49845831757:209:139 +52977190310:586:364 +87956827469:660:269 +67422878497:6191:3491 +34693347638:8767:5383 +94171626655:5292:5083 +25910367626:7186:1448 +56367517345:2439:538 +82512048206:74845:1251 +39325276550:51433:16214 +87537468564:59808:27636 +73507254343:85843:65129 +91016029813:48256:2165 +65176269820:684107:27716 +16450333499:484646:478967 +47382972118:682603:84873 +16240101033:860249:320411 +92899092462:436617:93372 +34971060643:4206052:1944315 +61633095378:7493266:982528 +64205067539:9921446:3390473 +95524145823:8711473:2844378 +71023546323:8814685:3629278 +99981000020:98457855:46277195 +80719484940:67714505:3794980 +74936481586:29040416:12208306 +18258169318:30445373:21390891 +56720101809:81391998:71271201 +46546996203:166278160:155389563 +24249391826:877855142:547302992 +67736817612:330676220:278868732 +72640962809:215501306:17022687 +65530566562:622278000:191376562 +12179388497:2763319224:1126111601 +94020910727:2919186286:606949575 +11760921756:8534418951:3226502805 +35392307474:4278373997:1165315498 +98157618402:6880736928:1827301410 +12916398532:35650396763:12916398532 +71913764221:76470057437:71913764221 +49027222854:43692424420:5334798434 +98029957745:10117359226:6973724711 +54585483195:50163852889:4421630306 +25531543119:348686383401:25531543119 +57437483091:352190632740:57437483091 +41559756096:945015660216:41559756096 +88778016289:553577432131:88778016289 +67280934478:807408920284:67280934478 +747515368035:9:0 +837359868505:1:0 +141241942463:7:6 +412196122033:8:1 +738551536123:6:1 +682385716320:34:2 +313926488926:43:23 +121423128535:54:19 +368423154536:79:50 +117349446674:23:9 +918428365212:637:85 +435432711617:131:18 +306746862820:971:620 +499717116259:490:249 +853074868304:709:682 +374006796416:8728:4144 +234377779841:8893:8011 +301489958535:9954:1347 +394358890348:9013:5459 +809467619240:9040:2120 +241104550876:26617:19329 +615934206741:37389:9555 +940769298746:63621:36719 +846820588882:88142:25846 +846277646980:35155:15265 +628700898618:734062:285602 +366549140979:682293:190296 +431508471599:253303:225221 +313019587147:332931:191464 +429113174480:499325:260030 +544310749485:2688453:1178199 +735247665225:1104354:798291 +989528735056:5069729:3819649 +581040555745:9894948:9209185 +299196079960:1425440:500280 +185073359020:61034661:16266868 +901836782007:64875138:7488669 +677762332910:15621143:7801569 +119254485498:52976127:5223621 +664076709635:51966280:51583795 +162552339396:304514506:246107698 +353110597813:933549461:228901555 +236788293956:268064031:87754583 +166614121171:113854599:44842834 +490918208076:195424417:12072572 +304571563152:8574393220:4467800452 +470304032146:9920493126:4040855224 +463216013614:2349029624:457177686 +494948820018:5312459725:890065593 +729755164765:1797587440:1732251565 +299043929783:71822656478:11753303871 +251910705079:50904370702:48293222271 +823898935795:53870501374:15841415185 +496762114078:91393191117:39796158493 +526353089056:56329203292:19390259428 +539952002097:159407723338:61728832083 +585135387159:323149883869:261985503290 +459657163894:435934892536:23722271358 +397606487535:884971977216:397606487535 +506682572559:971738829503:506682572559 +735840602777:9889063632937:735840602777 +422500605461:9155958168871:422500605461 +349646960435:9074890752287:349646960435 +333731638482:1441460958606:333731638482 +868425267967:8788601628529:868425267967 +926098781632:7:3 +251605087964:4:0 +999540441554:1:0 +796398975214:7:3 +793678190667:8:3 +966685699286:50:36 +830065443430:45:40 +948876974637:10:7 +756347572267:78:1 +989530030263:48:39 +351391290115:104:99 +434567014090:105:55 +983085056258:596:538 +897454325178:385:103 +375738724989:888:717 +405033150529:6782:4659 +103017211460:2546:2164 +930180965924:6560:6244 +496483008366:7936:7534 +258642241194:2190:2184 +574397608505:63244:42481 +303352644501:50438:1755 +533089103441:51715:23291 +160436007831:82817:16836 +577148016343:96321:1060 +817983316512:243924:37572 +792497329350:264745:115530 +527992632519:686593:555740 +274980292364:458196:377708 +470565044216:830949:287414 +551557426455:9106843:1480160 +239231551704:3578746:3117842 +646588224731:4898075:3140131 +860613659148:5389199:1692440 +992120010201:6556691:868227 +460314740180:79919071:60810291 +510657547890:71367697:21675855 +547530601859:58725824:29744707 +436263146691:32203125:7412316 +967346795713:23494122:23310607 +946367547714:238133794:23850358 +238504897394:111466566:77912720 +272706580355:239400739:29138634 +132416580615:500923316:172825191 +824898518936:480986032:7474056 +554528404612:7020013512:6967350676 +954305199796:2426999306:494472538 +681239464646:8551438235:5675844081 +159603726919:5814049841:2624381212 +521598591948:6114521742:1864243878 +391717838592:92220724663:22834939940 +557106239723:47512892691:34464420122 +478160245120:43116091880:3883234440 +220506151568:50716583723:17639816676 +939227020350:46786878938:3489441590 +423094552462:994121705949:423094552462 +450509813633:192619777022:65270259589 +515994818383:926927488080:515994818383 +364248763884:583830112779:364248763884 +541248629875:241173056746:58902516383 +185893454233:6004550794971:185893454233 +400338301260:3268724021078:400338301260 +177896261879:8024298807776:177896261879 +506761503092:8598673857371:506761503092 +478219745459:5844910617518:478219745459 +104247110241:1:0 +154699440080:9:5 +139125010708:2:0 +968249526314:5:4 +809743476856:8:0 +376102333422:90:72 +735803669257:28:13 +478446579019:27:10 +230255856799:93:88 +784862152318:60:58 +456637494790:546:22 +887492680878:536:6 +850675782901:588:553 +728322484068:201:123 +468794744203:348:319 +882068688719:3051:710 +898033521790:1387:921 +692533617962:3310:3292 +997018345684:1743:424 +732600414847:6971:4812 +863624204775:12895:6730 +900042794704:62929:17056 +853725711632:14234:12586 +703061795216:31693:2944 +494049521020:80621:1970 +602619375314:273678:124130 +444819068597:471307:464611 +564885364757:324251:239884 +322147796544:743725:337894 +993411751589:956882:781239 +152638920974:3696777:2695421 +517029992035:9117269:7901583 +394905722097:3314310:2371287 +704624653228:4239585:1386643 +759979167734:3030779:2241147 +124061371824:95369089:81556124 +127591390927:75056358:70638685 +425772284337:32542319:21124860 +788894677119:31368080:18833199 +543850302667:52361486:23909071 +109580955130:155746533:91142431 +857671310066:241200827:202370081 +130688352904:202789617:91839556 +828146602203:581074803:115007928 +374947775261:567472241:416096201 +963381447156:3947887024:97013300 +767101604975:1243021715:157206820 +846379254821:9310675339:8418474311 +919038137160:6699316202:1231817486 +947427390015:6809442597:914869032 +243645730441:74182247513:21098987902 +872407585254:94627407201:20760920445 +748813944964:38376317530:19663911894 +217345393717:36279078608:35950000677 +447285799100:95400666376:65683133596 +319867844166:982228864966:319867844166 +215294476789:779616360031:215294476789 +613220629262:219994076747:173232475768 +255237018443:155487730000:99749288443 +768957326974:161077324743:124648028002 +854985153810:4429963505934:854985153810 +487746551096:6530502256135:487746551096 +138993955893:3769769108648:138993955893 +366291509736:2908804435140:366291509736 +183257052073:6358986562582:183257052073 +530634024383:5:3 +571196097526:8:6 +230618397175:1:0 +996620517228:3:0 +367180464481:2:1 +372116398926:89:0 +228821536463:70:23 +445619293691:78:65 +502832139130:26:22 +605583068698:10:8 +929744103634:767:346 +209493757602:548:458 +934081287726:921:534 +775284719468:277:37 +225611128008:658:476 +641594585233:2680:1713 +845501959198:5447:1352 +291579517140:1263:294 +444165004813:8035:7513 +670476360677:2502:851 +241249185126:37414:9140 +224040468030:63373:55812 +443964835657:23006:16953 +917051039659:30116:17159 +396640331490:90548:69274 +465526276456:861882:537442 +166282034030:876003:20573 +342122507533:299258:287903 +312817862288:870470:540268 +419132978737:439589:252852 +112544057374:4277512:2716654 +357791260919:2135782:788715 +894453209854:5152414:4444282 +682266384434:1944377:50150 +711931943348:6583791:287354 +217803945374:67974670:13102694 +364236156608:59284119:53813591 +672580524875:91699039:59772849 +346553851391:55637516:43401743 +455785079075:24450368:5769187 +362944314516:992749927:590591161 +181789944711:935070781:386213197 +580719670470:679805620:165670990 +785247052484:824303302:510308980 +125115206442:973327797:529248426 +563607390712:6689263461:1709259988 +584858413950:8481808582:8095430374 +407958184941:5068125272:2508163181 +897712512970:8878516384:982358186 +471764395387:3386438394:1049458621 +212593327345:30636295872:28775552113 +797389774594:79941582674:77915530528 +478984322059:31263976095:10024680634 +296355764187:70071159701:16071125383 +721823579769:63631438405:21877757314 +897837124485:849120582871:48716541614 +568820827408:200689811563:167441204282 +783673809299:467215575351:316458233948 +249017084135:897795849433:249017084135 +118081409471:105536490504:12544918967 +327332296447:4893356553816:327332296447 +859655659661:2100658347082:859655659661 +898782514250:4901638355871:898782514250 +366773382594:3462909566403:366773382594 +538317479396:6015719954395:538317479396 +118440457178:3:2 +916161768165:7:0 +206847710504:3:2 +157341522023:4:3 +480058795875:3:0 +729529735675:40:35 +961931018978:94:50 +168614698756:15:1 +185020184767:30:7 +570341619946:64:42 +101068329647:904:551 +575663010362:318:278 +404315907894:412:2 +911871338488:406:180 +411603080633:149:115 +666515187164:7328:2940 +445921354821:4773:1875 +648563535644:6297:3158 +612202276994:4803:4766 +407861248245:9616:2565 +388932988164:76515:50754 +126128558845:40356:37513 +295881983658:30139:6464 +990858637301:49098:17585 +635430827694:74223:5502 +160745712363:378310:280123 +482010279285:190381:46246 +906133299942:814673:220924 +773133455389:651677:154514 +989486052739:206976:29059 +997980456100:9645146:6844626 +311913312356:7455768:1258076 +157096382604:5571276:3113232 +748222032637:6193539:5360203 +118526095844:6210779:5800187 +804448424846:68676685:38413441 +530068445459:79345634:39610339 +855527815264:43396296:13235920 +644553129666:29887458:210438 +577155781257:83280910:19074957 +242788273387:716952914:458188455 +172793167567:732366993:686924212 +908666849530:959858025:641157880 +728488014141:208477787:66626363 +724285463135:970706576:138357439 +532044864749:8408269321:2323897526 +640782860903:7876238684:2807527499 +691569527040:3744746195:2536227160 +459676333871:1733187892:381542491 +684277738143:6216026763:514794213 +682791999958:44318136129:18019958023 +138710353098:97730803399:40979549699 +105741339854:59485418520:46255921334 +268329706531:16604817608:2652624803 +386705410401:67460140140:49404709701 +669127574766:896748685770:669127574766 +468248227268:661391837198:468248227268 +295427783641:384190837993:295427783641 +146811259008:744215394503:146811259008 +672597806716:552261279555:120336527161 +788949733960:3605874081547:788949733960 +890518913706:7484616902647:890518913706 +978803425039:7934513835216:978803425039 +635835911675:5557365375903:635835911675 +831279652517:7191452996831:831279652517 +7163350830340:2:0 +6539286150333:5:3 +5109050198955:4:3 +3155937958462:4:2 +6545164294877:5:2 +8608477604932:29:14 +2189506636921:33:10 +8699036388336:11:8 +3055087428036:86:2 +9556899906380:76:52 +8834736210779:545:214 +9840401080440:470:190 +1429265962684:994:616 +4504650623966:423:101 +2788598166116:336:308 +9955560422591:9914:2675 +3032576672449:1124:649 +3965356646986:9830:6656 +3992007735202:5205:1117 +5997024424340:4669:635 +4506450866748:26741:116 +3319645763665:66807:54649 +4907062826298:75190:38428 +2417186075304:96432:58968 +6644419976199:28815:15879 +9930959900060:811266:490334 +3260334415597:249701:194544 +7312565702677:371288:275237 +1975120245583:338343:13522 +3806697617813:294054:94871 +5850393546526:8367454:3588990 +5629063198015:6817336:2497487 +9002887738799:6540738:111245 +1808618278184:2560289:1965405 +9408791689188:4989810:963378 +2356570702173:25384165:6360233 +1288593729720:37099147:29056969 +9481722922320:91373848:41463056 +9918490254496:83000671:76071338 +7862376786236:93995286:47093480 +6113300603874:531358879:16700979 +1255304321667:486675995:166930562 +7646318885476:151976171:93770124 +6284682370953:844068178:594785743 +7344914627839:400236844:168303595 +1355013975627:5998487894:5354199477 +3043918262135:8844289235:1482765295 +6979700534101:1553799482:33260957 +2702119414550:1564820964:1238430686 +2853115498452:5269138479:2511581313 +6693680957726:38502670720:32718923166 +2689957596751:69404285333:52594754097 +9588369721099:21211821365:626464119 +1849337020366:81278354189:61213228208 +1342077644203:56095224105:51887489788 +5044174429444:975274977000:167799544444 +5522462322193:719048561628:489122390797 +4652831851236:795758216592:674040768276 +4752192528640:758803507442:199371483988 +5686361538335:950921418901:931754443830 +1693974413647:7729260958298:1693974413647 +2805636555907:6783537773354:2805636555907 +8312348296784:7590619066450:721729230334 +2314570396642:6215845105637:2314570396642 +8939789433194:4937263805462:4002525627732 +7990045907880:16835633617850:7990045907880 +4192317459202:11316147845548:4192317459202 +9228069941587:25249210170667:9228069941587 +1480432682414:57389098027086:1480432682414 +4318110502380:38686151042475:4318110502380 +5834243027103:2:1 +8268967914075:3:0 +1649116796465:7:5 +6360042078448:1:0 +1252747730736:4:0 +7397068876103:91:88 +9224633392618:37:26 +7021339681454:21:14 +5660282362435:23:8 +2010272844477:36:21 +6216430569401:861:626 +4779571776235:580:295 +7708031726936:798:590 +7777718046057:684:597 +5248124062695:552:39 +8221540717364:1946:982 +9763432634947:1707:910 +1856375518528:6246:3466 +3250613631466:6686:3890 +4283087896528:8979:3850 +2140261036880:21138:2306 +2097699976767:21235:13362 +3868352718514:71351:31098 +6328081795108:90510:21808 +1243623472390:49165:8880 +8616402885739:194560:44139 +8724696309525:152061:123774 +6339290263499:118819:41275 +7521374707576:963112:662288 +8493737911487:842616:108287 +3855163016069:4596016:1815189 +1334788859618:3945800:3635618 +8293792674619:7309401:5404345 +7569213131019:6654170:1597639 +1104633362198:5017314:1442702 +4066370139303:38370224:8910455 +8317566000898:69355887:61252423 +3247866604057:21480360:14691697 +9920412095475:26319722:8798957 +2685225385099:46498911:6272671 +3087626614351:543947702:179457799 +1497576030705:118365624:14155857 +5222460814044:886793808:132078732 +8970070255508:937716307:813779053 +7229885546993:505538447:180216446 +8350088330034:5572921009:1852658552 +9375912032417:3259522071:1526556221 +7420159757143:4009260270:3028257643 +3217640616747:4486827814:585074109 +3260887680554:9883942818:9070493432 +5986716894024:98338897643:86383035444 +9446776268524:50370500005:27492767589 +3659987467742:31121899273:18725252801 +6229582583747:89286258374:68830755941 +1595752710681:68237255682:26295829995 +9234146232566:702568610229:100754299589 +2574619796527:833656556791:73650126154 +3586573024027:488324184545:168303732212 +6353989790068:446872294776:97777663204 +2730805559906:198983280331:144022915603 +5011195373747:4408424081254:602771292493 +2378182470419:8297943253271:2378182470419 +4965615002292:8744964449321:4965615002292 +1348131915962:9539559043282:1348131915962 +3512133767385:6228920592543:3512133767385 +4703364220151:19724605415560:4703364220151 +1349185198134:42209935424004:1349185198134 +7812075804840:41003786123103:7812075804840 +5998457491286:70756102450630:5998457491286 +4724172233755:46967303977532:4724172233755 +5809149102873:4:1 +5036643268753:8:1 +2409632206479:4:3 +9172726878530:5:0 +8832321082919:3:2 +8386787127944:78:56 +7453238945038:22:18 +2763376150254:40:14 +2098868140676:11:10 +1479873891718:43:18 +6238578413871:819:531 +9521517915553:769:429 +7864640255450:530:110 +8101491591691:884:459 +6013374011261:681:191 +6269922164737:2225:2112 +5869852841078:3897:953 +2353690944017:1872:881 +3607766939365:6618:3037 +7067722484269:7219:542 +4473730758476:64033:27882 +9847238319485:37221:13367 +7342850076230:61783:23259 +1441960272813:95717:35420 +2802173965250:45970:28620 +9202166544531:263963:94880 +8052958008710:142172:118446 +2339743641247:284939:95671 +8799176807895:964021:900778 +4538104895446:190713:188188 +8160029256425:7277700:2741525 +3598900513181:3493303:1950097 +4491916914588:3815524:3528536 +8805171586158:2351599:1847691 +9868248788324:6126492:1799324 +9475923714957:65356390:31441637 +9000336479498:78070748:28367066 +9651585312126:46355538:37811760 +6818619830001:57488760:50472681 +1142072559947:18440061:5821973 +7067738869628:810374275:464817353 +4906558804631:794569107:94568906 +5638647813349:572510473:564675245 +8854364782061:934565332:292826693 +9496403215904:334036538:78477102 +5287564135667:3343999186:701422601 +4831316061842:4268590649:3540037823 +2574916859922:3616208230:176600162 +7396183784174:3999569145:980435069 +9991750301294:7237170999:4454322674 +9154655924071:32708146836:29082956827 +9320198653349:60730917630:28368255959 +5098379808116:81427725349:49860836478 +2920765622688:46676061953:26849781602 +6126440905082:26982975265:1305519927 +3919446230975:264808408084:212128517799 +9472872450462:452850948055:415853489362 +4991453864348:226345295530:11857362688 +8085304910041:854820261328:391922558089 +9149180889080:331235275479:205828451147 +4519196645236:7667744124242:4519196645236 +3256790978270:4482190895839:3256790978270 +7192272764571:6182572052073:1009700712498 +5484914384262:2830332782948:2654581601314 +4084443386170:3269997047707:814446338463 +7071767154796:82460272329724:7071767154796 +6668068344583:96472581082084:6668068344583 +4553393154229:55103294567838:4553393154229 +7820013912882:41029848211214:7820013912882 +5004750340819:73673238274608:5004750340819 +4176554675625:8:1 +5816004959108:6:2 +6398206302654:5:4 +7618552000823:9:2 +2163730490388:1:0 +8967147013591:21:4 +3619335470016:49:0 +4003011203256:29:23 +3757234727390:64:30 +1935689477436:28:8 +4712375480738:227:61 +4142893673555:904:19 +3212944808016:663:216 +7698660009881:791:533 +3292128700957:227:168 +6986207460439:9123:5425 +7934493264507:9741:6378 +5120844210359:1871:238 +6826542642185:1644:1385 +7284026840552:2921:1091 +9146685996029:39083:12726 +9578306064420:18051:1842 +7477885103133:72398:8651 +3988397230351:76338:20113 +5675860395166:20393:1244 +9192557147996:121543:77519 +7672617150045:103720:57325 +4570014995904:630722:169168 +9710940007753:200723:7292 +8991491753843:940941:698993 +3373609768058:6097185:724448 +6618721989636:4746898:3435786 +5670842128477:2228202:1192417 +8996039101149:7767816:7106493 +6194718398340:1929266:1542886 +9912903915339:82211609:74736946 +7264631633431:42870095:36815111 +8319840856816:90943956:14930068 +5107555866707:76792600:3248107 +9238989112680:62642919:35561046 +3463296262937:941995489:520845373 +3494230548878:791601857:99952080 +1666192056931:744659749:388198418 +8936166754321:737036140:340592961 +6332514481105:918244582:299843633 +6047248966523:2728946454:2632570913 +5534351835240:6571486952:1159821656 +4872080926818:3583584839:1989130617 +6213148170907:3666930253:1368322325 +6508792529205:7293300032:3168900661 +7379717713322:81248363314:67365015062 +8800108600854:85400071614:3901224612 +7536212050313:61244481557:3140818802 +9805245536248:96390857661:69768912487 +3397154261705:16270865958:12814142441 +9655338424998:278617134834:182355840642 +4631313087610:697164065362:448328695438 +8254310081999:890661350085:238357931234 +2368998330903:522484427761:279060619859 +2613395846166:370223213474:21833351848 +7883193395371:5302687479436:2580505915935 +8029864891979:3211370022949:1607124846081 +3180480669973:7872448930495:3180480669973 +5285857262908:8922234036364:5285857262908 +3985550149758:2523978952231:1461571197527 +3417627617193:37660231911907:3417627617193 +1720690902380:17245042048383:1720690902380 +1983187939160:72201826813725:1983187939160 +2663953469884:98047457390307:2663953469884 +2091378547859:61196167254141:2091378547859 +8927605221729:1:0 +4321583188101:2:1 +4968571404441:5:1 +4315729390088:7:4 +1035154572142:2:0 +6701137158135:65:30 +9146026422499:78:31 +1245266284412:15:2 +3183841081603:23:4 +2601360865637:55:17 +4848087206107:797:378 +3803651836234:851:455 +8489623624303:954:373 +4172100774576:391:325 +5415706474665:183:132 +6865892299333:8998:309 +8810455017760:2704:1280 +2678165383703:6080:3543 +6645238876043:8792:5619 +2664464818842:8827:2192 +4982808789190:63663:430 +2572577984652:75058:11680 +4290428053884:17072:4108 +6914905104978:58232:44426 +7176300606901:81903:43177 +2256888586906:790221:26044 +2140405782736:225869:215870 +9873611530820:631585:278040 +9328638158744:942912:518936 +4250756159264:497723:161449 +2883324213884:5338811:3234736 +2266360185968:5257424:362896 +6829760506163:7111351:4783061 +6595476716592:4870105:657402 +7034955813265:4013813:1961547 +3663190475888:86821623:12558272 +9337960758658:98450672:12970130 +1950836022143:28883879:18834483 +9317661616629:93331706:77411531 +5154620105918:76181969:71901409 +8358438106533:867238696:858793181 +6133681649548:505088459:392491911 +9635530164432:556853092:301113556 +1678779417069:332999812:127364777 +8821008577040:296524296:3819632 +6985539141575:8046547579:1135843003 +5881204840336:8697083083:1976676228 +6531453170911:9984953296:1293715327 +2357889534998:1435444603:889496872 +6583916692633:2789578978:510304553 +2558949238970:21867276141:477930473 +6083265448633:62536712712:17204315569 +2478694989654:94570866209:19852468220 +2560403512745:29904216754:18545088655 +4090275659422:66090388909:58761935973 +1862724454995:710590515609:441543423777 +2591253086006:610690843408:148489712374 +8783909471999:334658776516:82781282583 +6081931221162:515731575770:408883887692 +3610734371413:981942439260:664907053633 +2625261820544:6639277778023:2625261820544 +2338849419141:3017559842331:2338849419141 +5671471776115:9745284314318:5671471776115 +3878760842920:9693601309867:3878760842920 +6465424608868:8466619492580:6465424608868 +8254291711522:50151182258631:8254291711522 +4470587239247:96050481574671:4470587239247 +6883150657998:35806436001975:6883150657998 +7361155678191:22564184948048:7361155678191 +5631456228567:25631435689663:5631456228567 +84742174365858:3:0 +88394057490465:3:0 +39326177198111:5:1 +48493408797027:6:3 +13285726883815:6:1 +56741124066547:96:19 +66854934085631:40:31 +47895758283383:86:69 +23139912475451:65:31 +46236762724879:76:23 +33880608688828:117:31 +79547519834309:368:69 +11800763867667:894:465 +69565482020099:899:464 +35335924010405:579:209 +69376730342194:6895:5714 +13444214531792:8695:1772 +95078780539597:6098:495 +93609460832573:6434:169 +26543601191130:7391:559 +42403097051484:96154:72022 +72079480013595:12162:10467 +44861265325804:21736:17516 +63050790252936:64922:53396 +81437492198057:47417:38197 +56171993546230:713916:369574 +97781568436028:564699:69299 +43647137170405:947494:793131 +35351562449323:634267:487560 +25686281206104:639961:159244 +82481816925160:9713026:4548384 +69956964169870:6081518:3741644 +17925344558553:6489540:2065953 +70002245664680:1762852:928620 +43984628441827:8829583:7749829 +13066440681982:57207520:14283902 +53558311632988:87017245:67507938 +36706784576517:78537463:23657040 +94721936329134:95495227:29677380 +69640898408595:37701423:36288531 +29697813023706:885677253:169053363 +66063046245959:780273416:417206903 +78064163790225:767691513:684599307 +88919517617825:441051580:431728765 +91597844639034:462508436:361431414 +52728084147035:7491660338:1778688191 +84871203633897:2543778103:591005405 +10204738473822:2008995418:1050745800 +47819871408720:9387040047:2289409302 +90026228030524:1709414501:1622749860 +17124229762498:48279057095:33443550868 +15830922807392:66517185747:66349785353 +45666739019974:13242720816:5837646406 +65321052407454:30199645995:29417766264 +11052806358807:82524687402:77022934341 +32161773245045:560972858704:186320298917 +63043689971250:972482601256:804803490866 +83649122552698:684107871813:187962191512 +59728255987536:979028810004:7498577292 +94103226161304:957560816442:262266149988 +49759383959646:7979424191816:1882838808750 +40562716988650:6100456961355:3959975220520 +81846896032987:8951463417986:1283725271113 +57209843414603:1692736669572:1349533318727 +10638858194423:6174839991054:4464018203369 +84979035306525:82309765278273:2669270028252 +92279761846941:30645997754751:341768582688 +77761871100216:72862909270176:4898961830040 +78100368738192:54373550214974:23726818523218 +93774411279347:46928483842946:46845927436401 +56517099618671:138397492378759:56517099618671 +26851540191626:760930367360030:26851540191626 +25621191555930:500268319178240:25621191555930 +81280047457943:793202121522898:81280047457943 +53686239921301:221588443819965:53686239921301 +43420941426859:2:1 +86187971691230:6:2 +60578410646989:6:1 +23817031831518:1:0 +52810146706264:6:4 +16992706401772:51:19 +58931824194216:65:51 +75570709544067:89:67 +72081610485162:94:16 +81720425640266:36:26 +95418298558628:781:628 +37632950984747:766:201 +41134857880524:314:182 +89055852295612:266:146 +68330522965021:966:667 +28677064003319:2339:81 +74280978026195:8686:4659 +69778493638769:9243:3620 +96556123440337:2405:1367 +24674061905755:6892:3799 +87840963280633:29818:15165 +61992461065175:74725:52000 +87415348302622:67180:40622 +78855523323478:26035:11853 +26471139277702:72939:38851 +39902572349607:310962:30867 +10520415781894:474099:148729 +85244380140953:109731:49955 +52580558138433:784707:655749 +75985440561767:318853:148050 +99759646207161:2528918:1667081 +21823647018563:8748980:7577983 +74898283067160:8787199:3648327 +73693480753267:3023252:2092635 +64585938900047:9774397:7721439 +45519174565490:86283486:62675732 +13152006559347:75389578:68508513 +34492281377559:82435884:35845467 +61186370005710:84673765:6657765 +35032023471111:67361322:26990469 +48590225449004:801338314:275441300 +31766082394433:802185835:325514268 +75626324519825:372080402:238652521 +65680003113538:698936997:194568451 +72920078384417:485805720:154006697 +66126595353050:3848566650:523172750 +30776561262431:2057395098:2045386547 +67657379991427:4272467321:2859963392 +79051711281594:4639934238:1151668788 +87169401791830:6671679737:3906027925 +85804234025499:87611012594:33052695973 +29722562438459:23359209897:9647449475 +83942639270345:67378541892:56354614805 +85345933408021:26231580965:14600528876 +59148163092876:27461298878:23986608542 +22313500950337:111916123585:42192356922 +21500778993689:770237847949:704357099066 +65306874053312:170113391894:153444957910 +30344671686283:355107388198:160543689453 +40125483115791:332958996658:170403516831 +74603865976391:5683943922665:712594981746 +30984244588923:2645767969048:1880796929395 +95752710070026:3061749766933:838467295103 +11943812297179:2874505968791:445788422015 +59291187184128:6312020616092:2483001639300 +22243042732980:13772558507361:8470484225619 +86784322820963:22200170579919:20183811081206 +54074788360207:72570512734954:54074788360207 +65852274525532:94628663211569:65852274525532 +87021369944022:89647699480337:87021369944022 +66004678558710:348288958681369:66004678558710 +22446211923566:221833258638325:22446211923566 +42420831466575:887149669038154:42420831466575 +26204984698021:221392845125761:26204984698021 +80290977097345:137095961532367:80290977097345 +39095582329493:3:2 +50476789676288:5:3 +15976215763942:6:4 +13098594266956:6:4 +59083668120228:2:0 +69420600039088:85:28 +79627677949287:91:13 +23541302453864:88:8 +19194476593397:62:35 +81834931140318:74:10 +62656102002362:970:62 +28698083166996:757:338 +45714788863131:728:115 +35432522830154:474:248 +70555183167759:432:303 +78041959399580:9761:6292 +33787180182481:4955:261 +77837116511832:2389:100 +48200511070706:7790:7246 +57064818652579:2172:1171 +79283411357658:92224:2202 +64010923069158:39611:20943 +25607535351941:89796:23405 +24924879876879:29795:504 +95331809251372:48022:2592 +43754253974263:853306:695915 +30013709868185:250867:50609 +91335377052568:235457:229457 +85308724021234:895724:715850 +67822177221565:221635:168325 +49157896106507:8909875:4091132 +51318067329523:7879804:640495 +22938821668436:1903607:1343927 +86879350227158:6792605:3177338 +85117545876710:7976727:5892365 +56235382323686:17351806:1017316 +50362260138392:73408175:67822417 +31518783573476:74357190:34804706 +72799868022079:25095654:10811749 +51370948165385:58479729:15022625 +44535841233918:519342799:118848472 +67498195805888:271751223:83534702 +84865132556077:909118555:733683937 +48824582203072:635089563:166778758 +16912671797194:856026362:158963160 +24985626894889:7752177403:359125020 +33227827574547:1264607619:262385322 +68581112599755:3647298438:960070041 +31634253678233:1112655644:341063669 +42025961600507:3338601772:2981096343 +87707730561841:99991207315:15441746586 +57059610303824:41001797199:26110400015 +14462298352746:14221754328:12995955498 +44422062642140:15006915575:1592540140 +22249405315306:10765260981:8376128560 +65463371562018:505066551981:309786356469 +10125420385360:926404335947:861377025890 +10992225365800:568749514285:185984594385 +74586119072117:254625067072:235599487093 +83247279523544:944069613225:169153559744 +99741137894368:1280151336196:1169485007276 +60789782185950:1148012144431:1093150675538 +85481014425213:4335585611597:3104887804870 +28063221803313:1035798470938:96663087987 +37279074317546:2539276031594:1729209875230 +72629765508220:15796086559124:9445419271724 +39169758365113:41402756655507:39169758365113 +27370560044385:61644077414136:27370560044385 +21600315421141:23424693370929:21600315421141 +96468688643942:55739625085014:40729063558928 +76366168723288:589014568730802:76366168723288 +51480378076073:591380376169722:51480378076073 +19192419644847:385291674345981:19192419644847 +24153047372015:470576253082687:24153047372015 +46709198253822:975761138042844:46709198253822 +43762520060561:7:1 +24632243486332:4:0 +97462965807915:8:3 +46729172422416:7:1 +12972931433039:1:0 +40169991849807:50:7 +75688945752689:11:5 +67721886560278:88:38 +86683042110703:33:16 +54232459279923:26:15 +50714622201523:548:371 +27354472557194:550:244 +69603567500531:687:299 +99743264015536:471:109 +31209229305339:963:87 +94009451056795:7985:4350 +92140955574469:4770:4489 +69338747016311:6970:4401 +85553306239211:6242:2629 +52846100411481:5797:5437 +29800276619781:23878:20991 +10115824406156:22383:17171 +85919791337992:41760:28072 +31481119800839:86213:60871 +69913587916074:25302:15396 +65608631363632:570062:252366 +54154096982332:534912:332476 +22184116639572:691145:153222 +40002974938969:975127:673773 +96150807421853:502110:111533 +57069186531467:8816856:5293451 +24329078153487:4540274:1763391 +76475849522105:4484652:2804417 +85066588017528:2507209:312746 +48107794462223:7041668:5936391 +78551805412184:11023954:3843760 +45913237019850:14463307:4090709 +58065903468858:70264689:7655526 +94118760590822:43501996:17145022 +40810305899321:46668080:3300921 +56474957167583:871029155:39844848 +16727916275957:139455194:126300463 +46113391527758:598687150:112486158 +69911969749634:824456229:554899121 +24061361482766:786981073:202156864 +70222419406885:9243791427:6579727393 +68446521668407:8494476751:6522485600 +65137182442259:9060425957:1780237386 +93172757834001:9049849575:4556459376 +79488046317012:6869829110:4123514312 +40910374278118:32251235626:15807504350 +23160704027820:21272170628:16582384556 +96682009590538:58964977529:38411420507 +71917633105535:89366162955:67238089715 +63950867625980:33170272969:31751614717 +52592976218210:367468418815:44992327665 +37257098502841:960911764344:742451457769 +42010311152415:726286769759:611965276152 +29475175418350:760503374264:576047196318 +62856943434878:834956194739:235228829453 +12971732464339:9554501100262:3417231364077 +65940611205808:4436337752253:3831882674266 +89532260901061:8089575329943:546932271688 +93091516842300:8466637988486:8425136957440 +93254177489804:3252351239005:2188342797664 +32505021700370:23017599206527:9487422493843 +89565780205162:10410267898638:6283637016058 +47542581845860:62080833332801:47542581845860 +38132739385676:34603751968744:3528987416932 +63496930860400:37139613657412:26357317202988 +97950207750874:511537670223591:97950207750874 +65544503772244:509044998671687:65544503772244 +32900902665457:391825535641042:32900902665457 +24166941819050:135373562589169:24166941819050 +79383978548504:222407352358099:79383978548504 +46605044703526:5:1 +99468196476772:1:0 +93618918659193:5:3 +11223224896449:8:1 +51947527544203:4:3 +82777647705715:19:15 +14350075898467:16:3 +12695904682080:81:24 +15611196721749:23:7 +41276897231650:44:14 +27229975164701:154:1 +51425161116051:906:453 +19727993427395:399:344 +46030142439528:735:303 +22480034508116:812:584 +63581048384354:6437:3861 +42829655041451:2494:863 +27440790390964:5266:3676 +12913683344414:8879:4298 +72639092618739:4260:819 +64590968861106:18779:5829 +92145198271268:99571:27715 +26627583790523:33570:12413 +83121531346941:65974:11187 +44862561649812:33407:18672 +77904705608246:278818:100992 +38311345911924:433622:118000 +63472676404715:934492:510659 +34115150561776:264015:79081 +75779620286503:648747:267862 +23481787117827:5805477:2745399 +12146590165623:2385841:1648749 +22636523640543:1413821:1026600 +41855136862389:4310959:1443717 +30988909410806:7584625:5063181 +74561037925431:84651998:65999019 +84134409886660:85243592:7505764 +28519038126350:28274802:26661476 +39501575595107:70069868:37859447 +37588670452630:50821492:27718098 +67014381017728:236714566:13953996 +89348652947936:565008444:477647552 +29983792017418:611989157:607248517 +84930047346305:232716843:35493455 +72832542101426:552163213:5653874 +34371704650068:8478762917:7278547467 +73503896695547:2804284116:805731071 +35673547342210:6581962465:5892744375 +50295009714511:3639947770:1851376421 +41227837268986:5009034757:3481218876 +33511472174015:94496091745:59855696285 +35233972518141:35682681922:15165461127 +72394308836879:92428833897:22531895528 +68620245637942:26411649736:2779623814 +64604808684597:79055969099:16081930714 +42984802108603:171645491098:73429334103 +25284358500494:839482207485:99892275944 +75973787241215:525048166935:366851202575 +26556508014148:678296115969:102959491357 +92425026826585:802112958735:182036572060 +34796929164556:5555043909141:1466665709710 +80925273839522:1320876948076:351780006886 +34418712646709:5136875214527:3597461359547 +87334791781573:6911900245654:4391988833725 +13759737907597:8094761605879:5664976301718 +54389276778957:10190525648821:3436648534852 +12117839882097:26343478984132:12117839882097 +38304736642063:46543256982949:38304736642063 +32241109970450:40946494962886:32241109970450 +32138003201788:55853130023572:32138003201788 +82734685527311:401689469730962:82734685527311 +94122804587867:459261236843833:94122804587867 +47682939033843:121417541872079:47682939033843 +19527771872017:935435303455573:19527771872017 +73464788525963:936953353160309:73464788525963 +889172708841893:9:2 +679976105934595:4:3 +965869406447855:4:3 +547840498354984:5:4 +304329201194607:6:3 +846364690681695:31:22 +859005315544247:84:11 +701956370874695:89:12 +597232161151563:10:3 +109422727506597:33:21 +969310552493601:372:225 +726073088547306:376:42 +378914206232422:200:22 +792771810293708:259:7 +222090567475935:614:477 +200267791361144:8006:3834 +928948234596655:8160:2095 +940691433186694:5280:1894 +330289669526140:5306:4804 +614826100751399:6066:1529 +828603912127897:30508:24285 +285773008472410:45916:45790 +971324200584211:31687:16972 +981255217526126:28919:11257 +624024999346361:16187:13510 +788613353969801:422699:20046 +698428507894596:524795:29816 +671775485969003:977816:547739 +583472027620019:717811:146486 +243342906765657:879554:792711 +649810952085972:4345629:116394 +578965416772493:2136013:928018 +935582671016684:7132248:4543748 +718324936579110:3073376:1897318 +185132020745071:9896306:3482767 +974004459866257:25694595:12482347 +150739509034188:19150084:5829868 +520208337006755:84450083:48230905 +189875157765745:71882005:63552330 +916840869151136:92039684:74382160 +558114773498793:281254333:143943252 +863571183097718:132044487:106073231 +485542374717689:981966735:84896324 +916197085407317:861398846:351819027 +188517929404424:863003884:771971812 +760847789296124:3108164723:146752954 +844710361099366:4689044703:2403077431 +569075841121525:8440534320:6576732805 +780459878923347:2335603328:1677648851 +432561741919600:5217029927:2139582249 +368920308875574:91471412632:16101730718 +559161542678581:89012953884:71179333177 +858902335944613:10518949271:9090068921 +732613168018314:66696589109:17833245058 +207088879403786:84048656421:77038638863 +670718306615932:506829349205:183077617717 +495363070993322:178202657987:137884447449 +797392353557207:304409382207:144181557074 +442667699688191:300314344341:4356129557 +642420984912248:408096596741:76941641914 +974124510208671:2592967344565:1761755996796 +831226352371426:4356143139571:3559155852936 +221522869090767:7648891828860:7353897882687 +191537190832973:8529145142851:3895997690251 +498493839361426:8904124258682:8767005133916 +328016142041883:90752686715541:55758081895260 +623709717676489:90232485467365:82314804872299 +625806272094022:93343639280385:65744436411712 +750824032011770:99027196534196:57633656272398 +953108122153493:34881738936568:11301170866157 +204870350142478:525676885783518:204870350142478 +356428100122706:360827721409844:356428100122706 +878105014571442:199043750742799:81930011600246 +193122337265934:825729044251502:193122337265934 +388794269569550:549654620631440:388794269569550 +647658682470747:9474050779197231:647658682470747 +909887944909473:9832490090645350:909887944909473 +741222375198506:8377180053502549:741222375198506 +646691408400794:9104150848786113:646691408400794 +636514134531656:8500210973386150:636514134531656 +121578310740278:1:0 +479548766875850:1:0 +671237870327301:6:3 +815786316983931:7:6 +570018645553215:1:0 +300623291471925:77:37 +614568062099094:86:18 +455810906964084:26:22 +961754455453749:60:9 +432738812777494:52:2 +173646201371580:309:156 +929203033655159:865:849 +398174247439504:895:634 +292043526543652:637:520 +675978841079088:842:660 +374381441396672:8334:2210 +836118809575220:2269:1294 +751934306451208:9438:6172 +642516184838052:9106:86 +506509612147336:1869:847 +213610917793067:76539:5186 +498291824293428:16579:12011 +271729974324166:33301:18217 +939126995498939:68662:59537 +490176873379346:51438:45890 +907123212280666:714485:496261 +139630530559916:633740:94016 +928663249395999:719757:338817 +976727994166155:871908:867171 +690645111921619:799923:112426 +521753500267500:4663156:2803592 +948925703189641:7606236:2633797 +237210657190048:7180720:2494288 +716654140985927:9546898:3342429 +384176035737399:4709892:3101355 +318478363836182:62107921:158120 +643838424922284:18775130:14750844 +729104471034209:73180096:51211617 +597090735594870:17897857:6056444 +177650164739744:92856875:12907869 +610036814855824:959468474:42807306 +377389337954973:676225800:567265173 +493761240972294:255174960:245121894 +632804383420782:707470400:409436782 +970481828651573:281765072:81752405 +288767358664125:5282449554:2253794715 +310628840886863:6839148402:1559616425 +950467661547860:9722809375:4708285360 +874553690767569:5336440016:1891625441 +836908697561034:3405062146:2308130716 +441431426019055:50879392770:1814346535 +199438784440749:34703968839:29779491855 +898365374259107:20804182249:19980565038 +593658800508184:83699129187:64576313980 +701502285774173:24364946446:11112647387 +261958429049143:616038303642:142150001293 +607094331581902:606978925541:115406040902 +921268674362323:272909525163:199026937198 +830673198159171:872307988877:235992748267 +998325330795751:731056148158:433688560081 +302383231034591:1869907932419:1328053915132 +513309025947912:1516194248416:835369983304 +811035036505830:6765561682571:5933196279881 +785487111217075:9768550371827:4003081470915 +359531257682868:6969114420507:4106422237011 +280362777580651:52721850160891:16753526776196 +866963402278097:43055314523999:5857111798117 +395373507713515:70878777200669:40979621710170 +483310138640241:89163172532437:37494275978056 +715891141381888:49000806930716:29879844351864 +760288664310979:785682221871260:760288664310979 +665251262141354:144850871026347:85847778035966 +753230735641658:499303138827549:253927596814109 +608509529091255:911401997988236:608509529091255 +958236158879384:455893925109538:46448308660308 +838873021066592:9330263735073774:838873021066592 +426031529717994:2646787401694972:426031529717994 +692561123766425:2628243914452687:692561123766425 +905939724249192:7851195832424850:905939724249192 +388786467558451:8582292378635897:388786467558451 +168713542386953:4:1 +435513642081373:6:1 +990898889856634:9:1 +630521147392551:4:3 +103359257446396:8:4 +847012533648076:45:1 +976702179551306:14:12 +549614348066182:74:20 +828430969484444:73:28 +211529079276342:57:18 +868049571119825:313:272 +770013658582228:385:368 +483464715101196:546:192 +194589005790125:572:89 +891310187659336:816:280 +435290208493923:9855:5103 +422538582775635:4449:3330 +565860538874496:6135:3126 +918308536853155:9744:2611 +587062744984045:6400:4845 +529068884441485:34632:4405 +204608499611660:40858:20562 +869398450058072:17940:11972 +550386195280546:68722:66420 +928852695475498:56838:19204 +747445438881744:671858:171246 +213920191144906:315264:73930 +479797140391093:699053:603874 +779725422831569:224173:15127 +897916040812869:968440:265629 +112930192476669:3484357:899187 +909081712733151:7253732:2847375 +162423739419376:2045877:1339348 +677220982760932:6284484:3325120 +631212499228587:3079722:1687503 +414419234010429:81486692:1391961 +741421023949011:72693310:1879391 +596684834458051:15945427:3911879 +470035287515940:79457511:11032335 +361765612691716:41123213:19884434 +926521055382499:236329470:112437889 +433617197138934:211139526:163732260 +636658491833386:801782908:368387262 +790343003891947:580995232:83926315 +653300255721876:928761732:894577488 +915229944088922:5109339025:4263218722 +923258341527641:2611890696:1994524169 +851023552307771:7081564096:3668635067 +827772985009816:6949330280:3508707616 +172922349272076:2016022927:2014754505 +374916547385991:18079635843:17218545543 +647985708887128:61907242236:2604402916 +793232058007243:74757881155:50938952693 +448092114293872:29241746703:20829563803 +299230795652621:99553665594:72030542651 +424894193492918:255722526288:139077328550 +702399957718008:659920522794:244521465192 +508589444959300:289326283255:243165280265 +475711367198502:338509965818:104865224212 +233223577524204:522606230052:141198921012 +754145318733204:1962692170495:471525263124 +127388144978380:7919253583010:680087650220 +814631482453886:4476157021043:4447061645103 +981698654370576:7686167630495:5555365297711 +438047867558922:5890672660091:2138090712188 +875202767466305:58361823901986:58137232838501 +590500650691373:66002211046330:62482962320733 +184808139568908:58084770692237:10553827492197 +448785424998436:83777302478456:29898912606156 +856186957443345:35754917455634:33823855963763 +959736714110521:165233786381647:133567782202286 +407756795366926:463957654186105:407756795366926 +837724123985093:216953578052643:186863389827164 +661657879151649:403332032370845:258325846780804 +224856292457697:306702358240213:224856292457697 +144097080611689:5594901153215553:144097080611689 +392925429255724:9801992195637290:392925429255724 +629263573287392:4511632547539656:629263573287392 +780944957769401:1441107768313627:780944957769401 +119361018628693:5817233592106175:119361018628693 +414592279904430:2:0 +492290635040331:2:1 +930000939913897:3:1 +780754633959155:8:3 +249816657423443:1:0 +959102269741079:17:11 +423189623560280:13:5 +852632596815649:57:49 +985501431050376:42:30 +142329459208009:70:59 +558049262300640:272:192 +688328019773841:209:51 +844020313766075:855:605 +134481937755381:986:795 +539092285753164:236:168 +752374968872358:6944:902 +820888845108977:3307:1196 +397281187875058:3189:1471 +163871030834006:6094:4940 +232118021454840:6801:5601 +214443769702064:21865:12004 +207152334936848:24350:23048 +452010352056883:91594:24957 +284027284151201:14839:6300 +154117798867749:76240:56709 +481382416077855:620342:478771 +331365449609195:687582:399281 +696309152773574:510102:229862 +351512912840643:656799:545241 +560180097888148:244241:9110 +278271743760390:5229745:3724530 +613695725198858:2849866:721230 +993069769982991:1488702:409509 +727670836133949:3476819:2860393 +202807865866764:3553557:3456177 +680034581652774:61402019:37191551 +810240209516860:58059825:23848060 +213090004545856:12394934:5303122 +222760693306202:25653397:10484833 +854639941209631:82170207:25903888 +443486938377702:893794931:194334398 +499847992568341:209424299:149019812 +778038182795441:233930993:75246951 +754190325840098:435007180:107572538 +639885625829197:150659929:63501675 +543393885877985:8543625011:2247928363 +502791391676552:2299369565:2045115392 +463712696140869:2241182942:739526359 +696040513946893:4392869501:3520121946 +297130800795623:3244515862:1282669525 +975535050776094:25655831734:23360754212 +748801413352684:69542153976:41041493092 +472597062741587:65069304785:63771392917 +110512922104913:29259987066:27210943697 +807193687144446:62213438169:36540339840 +989888881804376:332146673893:91793603236 +535681655148696:270996202896:193158226200 +661743216238327:144304642003:106432654572 +737183709210916:468448251904:314608965924 +649438350761402:132855631162:40025641546 +759359603749879:5133742994014:4699383629821 +829343114977602:5643317572348:5418749414794 +939388256369894:2242951083226:1834703581426 +517823362231655:2420374301585:2283635994050 +842012087461387:4176574127558:2520687822229 +308947136667928:19617825046894:14679760964518 +734972134909851:97778731795016:50521012344739 +946465901185508:74958843186132:46959782951924 +147179035670825:74657527538805:72521508132020 +409524450218564:31172712035407:4279193758273 +780481920762943:546958783686080:233523137076863 +282972188019264:507916661312117:282972188019264 +473553856897283:590509609078970:473553856897283 +406456816330426:607138154409290:406456816330426 +167334542869139:206786560278683:167334542869139 +385699706640044:2585179644705659:385699706640044 +764485296870691:3620592938193406:764485296870691 +182404340752279:7648187565932670:182404340752279 +336933605945231:2649993928391868:336933605945231 +846230990008728:7063387625474937:846230990008728 +799419276955174:1:0 +730399397177584:6:4 +304525931295986:1:0 +323553532962576:4:0 +947441666618275:2:1 +875386719033340:68:32 +541051564409499:80:59 +342865898364809:75:59 +268957550389455:23:22 +897597461817953:47:9 +252661993901657:159:92 +178475967201946:681:394 +494173287456821:318:113 +375485353749848:619:290 +672533119259780:144:68 +449311012339956:3959:402 +516139915048567:1512:943 +483464197745202:9763:1571 +685591641019374:9759:1416 +578833225691836:1910:1596 +128427717978684:37599:36324 +717888889614549:27025:22399 +995944877036817:41176:29361 +107073181853524:34100:14824 +407340920476424:98572:70616 +955127281152595:454753:437312 +976199155955097:586273:211420 +339538763215333:148433:61494 +591578264460123:532412:387483 +176094556345065:178113:9666 +482625976359485:2151178:75891 +818504682975090:5218119:2302956 +793088853245021:3516736:1465821 +486564915387495:2835294:1471029 +244390629738407:1127974:801585 +568064735795349:71071476:22776609 +166147819221019:12616678:10456785 +665842363401302:88512465:87416672 +590757116129113:46612211:13502543 +497519917379946:87227463:26074605 +821110674492852:908956675:117348227 +595393276132708:933887274:915692200 +163067428276965:271355856:196951605 +948185712426060:565069019:463613079 +642890895466892:415336013:172328439 +922609051048936:2820940874:591621118 +901057377868484:5936279267:1420489088 +506415916098913:8404152823:6879443402 +399518368756107:2497515938:734217999 +601989814825842:5258065463:4416097898 +333210824361659:78445167763:54196872198 +569036219722443:59975469147:48943924854 +638432751644070:32624254576:8713846326 +986375645307630:35394930042:25129827216 +310249851637364:33276784566:10389128546 +338233866648652:669254615780:260285679752 +376857617125804:612491224754:175513902094 +287512204038970:157256354666:47587709522 +341723537865269:196813136114:55933571365 +355188960467894:758991259461:740042299607 +663381350377741:3571821070492:2594452336721 +488025410421397:2597801605712:2236510153253 +999648043140545:5303719809517:2548718951349 +896084031015233:1352700058117:596592541779 +135092589727201:8655966539621:5253091632886 +691011541516603:46371687110875:41807921964353 +717296886327416:54990739926120:2417267287856 +335237123265173:94397118884189:52045766612606 +987952855762861:28213947783876:464683327201 +556328744939490:17619273463822:10131267561008 +220599800976085:860538499732630:220599800976085 +861157953558029:804200569293881:56957384264148 +978758286777037:622628038905881:356130247871156 +854264041914485:247681609785324:111219212558513 +484312033329618:193918805168130:96474422993358 +991179108075838:9109836393951371:991179108075838 +910209195699654:8312155755610328:910209195699654 +689812952966319:5065415408295201:689812952966319 +220343126509351:8133217333791002:220343126509351 +981766211711571:8885922427483740:981766211711571 +6275043810706805:2:1 +4482974116698456:3:0 +5068407990505344:5:4 +6894759366736878:2:0 +9029886163592686:6:4 +5747675888511667:53:33 +3757148451432251:87:65 +6693811430893822:92:74 +7481803639505909:55:54 +8773525365632926:87:4 +7940887379019146:202:126 +8114731704376933:601:13 +8517771279954073:391:359 +6612564811351424:802:652 +8215957200662838:324:126 +2142693982386104:6917:2100 +8578957691563343:8245:6993 +8648932215661901:7667:5663 +8190878961487372:8326:1918 +2769273992315665:2207:993 +1703491161396752:72960:42512 +9040186535569779:91693:36402 +2113566272097605:88820:48225 +1925801164927804:17195:7254 +6512024464654045:54627:54031 +6391813790920236:446392:311356 +4171010009098620:779231:328012 +8032037564012880:837543:540447 +5307243409442843:820040:228603 +5827257981018122:823896:803858 +1854397960188488:4463223:1021784 +6612986817594389:5565786:1706411 +2661698066351003:3286262:1805693 +6641081166389739:3924811:3807070 +6253398157666035:8879806:3362501 +8795079400108666:25553873:6393173 +1071981498995456:90875625:85659206 +3640837783661029:65014252:12967309 +7234673703784759:28902892:27287307 +2075388971782306:11876704:8366818 +1804097017337295:970031467:483972284 +3481300431578618:582997136:78625258 +1472656372990265:675087891:70014026 +2561335825209239:335871088:37546727 +8392017210309771:145243158:2829867 +3304565920946521:2659405389:2081602066 +9315575675362951:5443057776:14049991 +1783760435054139:9255923464:5144689379 +6128687061914607:8055774866:6603584261 +2601960704413733:5136914092:704705709 +2577732003683387:62440324902:8070754121 +8202930625769665:25193183189:4986248076 +5021586614943866:79917105478:75209339214 +2780485717433780:97738610295:17731761620 +3226873386369085:32919970559:24952205346 +8683610763923860:616060577015:236930897435 +5039934147050117:715795757281:16220034596 +5104644732717263:270025534071:82036639079 +5065900875052480:223249140473:154628579637 +2007547309454694:468217915438:297105971988 +4720411561652158:7203623445093:2038205116243 +1960359501153695:4213093734172:1270914763715 +8244819045534718:8309222694479:2070132611550 +1648206424501726:4348974845286:4293932983618 +4903152609119064:5613475078663:2588865446265 +5231060629298118:24406931017612:7977391529150 +1372211707805210:15876654143986:6819451422414 +8430020573126480:87603873508689:20048716292336 +8064571844311693:76238498419255:59529510289918 +9778995548580456:63444081490419:8606999055930 +8827324435931187:513110480044560:104446275173667 +2926202133677184:437640580188749:300358652544690 +4388754989312874:603587988860757:163639067287575 +1878548997614400:485085005361652:423293981529444 +6832701736998104:286401614242747:245464609414923 +3856610194581693:8675160923150277:3856610194581693 +6312255037008445:3399099059000992:2913155978007453 +9382178004965964:2015144504318097:1321599987693576 +3061124208305158:1410607898088469:239908412128220 +6742834874798034:2613040308501782:1516754257794470 +7523610681392486:11086994981864686:7523610681392486 +5121150867054487:78054716836313676:5121150867054487 +4855756823846828:78065905487531950:4855756823846828 +8000842423939238:84253526123340037:8000842423939238 +4158041344824299:20130697245029980:4158041344824299 +8128593996091906:7:1 +5071854925205702:6:2 +5715176957215964:8:4 +3078722860989138:7:6 +3338981024601427:7:2 +5725063157508662:95:47 +6536051799176871:73:60 +2629645216090209:53:9 +5149659432622693:50:43 +6831648242053820:68:60 +7927141721367926:364:330 +6643125540189121:411:400 +2224652897884843:314:185 +3391433810467295:877:272 +1778959103787930:105:15 +5819269036073589:8711:8489 +5633606579895226:5911:5537 +8126921929002404:9656:6740 +1594395959051206:9454:920 +3461345800408821:4105:461 +5846152656742766:42764:29430 +9496086418845839:11086:4479 +8668523095462056:93321:18552 +8895350431112237:57094:18957 +9947600696963364:36182:4994 +1735193759010168:351638:192236 +8561313342022514:466131:371378 +7001065676925780:738401:33933 +4581509025350418:623195:119588 +5991282981886066:140132:22990 +6770023360470306:9528048:7651026 +6537637701860801:9306498:6050231 +7866263385854117:4663280:99637 +4783609026599204:6072897:5087603 +5746489761995900:9907248:8725868 +3596840866137552:12986646:2045394 +3647972370846629:17248521:9643997 +1401783920827176:35065179:21099738 +5159020677683554:44927610:24309694 +4646888099726308:26569698:4477660 +6630456656692527:958136794:572872663 +9486773475374864:600750159:305769209 +7605186893422594:261307860:101390974 +8807930064775035:255726798:240316101 +7879415413008602:392758458:95120888 +6524138647063651:3555224122:189143281 +4228330988258439:9191191011:6284366988 +3894471642955252:7024897868:1737995544 +7857328961223624:6516442746:4307821950 +8781312074625427:2884719329:1429041765 +8648813092005331:91049969857:67505258758 +6272282645606749:65732093613:60540960676 +9720240476561771:64521998832:1352520971 +2441883835387942:62140289670:19012515622 +1130647249462337:12286637604:6283867049 +8006318483431248:805862149094:78032182358 +2471671181097631:486530352886:96988436751 +9080961458124327:584451302460:341571803307 +9553363450185022:607401554673:151798288078 +4439465699133989:256376306641:53573338433 +4907194354634773:8541714793432:4250063204805 +7021378682881592:2102075946160:445022707192 +4619035209429904:6373777276531:4420461221460 +5686221871445790:3743492836215:3599746071420 +3668649486326309:8115948958513:240557078433 +6421491469512487:66707009959235:17618513425927 +4224791413092894:39137314817837:37098727584335 +2288217839075176:86184148408749:47429980447702 +4033059280265745:74069486379318:33307015782573 +2447905645639624:72375865603464:59502080725312 +8429670688720502:913299046121322:209979273628604 +3829250733923139:234229547461083:81577974545811 +5465580841119461:722193265018677:410227985988722 +9503713175223259:179445687642972:172537417788715 +8468356238955612:961494901926813:776397023541108 +1387202212711887:1486761561768565:1387202212711887 +9682102400272913:8705323864528196:976778535744717 +3878291575158596:7687987413307973:3878291575158596 +1476828811250605:5613250939673965:1476828811250605 +7760285620386510:6530852355861888:1229433264524622 +3022005251182799:77877442779645973:3022005251182799 +1633544315595574:38270352859793632:1633544315595574 +3100956956577819:70804309699047438:3100956956577819 +2069937986377156:35536860977071477:2069937986377156 +6776991602191939:77464055802976766:6776991602191939 +2767181482510745:4:1 +4630588270597113:5:3 +9254163649261237:2:1 +4234265802874791:8:7 +4687565421893694:5:4 +4341477946432283:49:48 +1747149511826488:37:21 +3432871186367856:58:38 +9444615551803350:81:18 +6108456227086021:38:3 +6025165720739753:444:77 +4457551882044691:160:51 +7217845822729876:513:472 +8361736791241007:406:223 +4414423774655413:899:67 +6450970848210315:5728:1995 +4067267697534809:1892:625 +7892182625744022:5419:5293 +5965127968852346:9406:9240 +4088303063728119:9923:5840 +4346741106672351:19823:1047 +1101317042395771:73348:51175 +5653315049710711:61890:27781 +1985646406477091:73498:24601 +5922399374268137:45649:5899 +6466342982402482:806702:704064 +9917462562509618:105868:71054 +5637493918014790:953913:827908 +9745577999065825:920720:808785 +5666299187957829:504837:101808 +1833354032310910:3351970:613570 +1439800660943531:7100810:432201 +6341385124124575:3119472:129103 +5513506543707821:8634962:5229407 +6850860619239888:8470998:4182954 +1609660722116983:94976134:74373747 +5784274327333091:14714788:9819927 +9808167590554245:48673294:45637333 +7442983902965184:42121447:1917981 +6570522934410117:15779619:8583879 +4013474893296733:117842201:26581889 +2265571807943339:447859336:116418891 +2656600541711734:558629143:548135224 +8296300820242802:977685148:320566 +8842483773134249:286767790:115555409 +2856460851176831:5771989606:1318990733 +5189772810129309:7993434460:3513236469 +3519180643514403:2815564500:943835403 +6909952004850913:7666604100:3396500413 +3195796967062828:5572305688:1642715196 +1605797073510756:40851766707:36679558707 +2330416488998716:11317823388:8746469188 +7121627506439803:85379326906:52469883437 +2760832442523158:41476564791:27860339825 +6548901629325043:90109150429:38903596610 +9418990360730266:386509760884:133997748070 +5372046003213540:138355141110:130939335570 +7348518741655815:527358574326:304366997331 +4492688094477467:910407292161:738514955093 +8602540345314907:970175931298:960538426839 +9194713692813020:4800644101233:1480238951825 +8792525275194659:7975740470926:3259276234207 +7195237755201483:6667340980067:1176837709190 +9116994955388433:4413316361010:3496669902783 +5134739743272195:8805511475630:1126552979905 +3973876342924898:66625467081822:42973785097400 +9519995099919479:74101756777126:34970232447351 +1469380091550934:31532572972469:18881734817360 +8161369856934464:26120379522258:11811445989968 +4392233158626469:62541384056257:14336274688479 +6474061904383193:991394915048253:525692414093675 +9052289213918674:658724675504450:488868432360824 +6082664564023299:404366205108407:17171487397194 +3277832782666965:324572531248099:32107470185975 +6617040310283029:881154839315800:448956435072429 +9819646832496837:8493188613051917:1326458219444920 +2353472539528625:5936195439193083:2353472539528625 +3213500301379406:6828034294590177:3213500301379406 +7518175009711395:3087628841293613:1342917327124169 +5833106048506985:8650477661182620:5833106048506985 +9772866860883736:20983811089658678:9772866860883736 +2577291723368463:19332180430574055:2577291723368463 +5986158739379934:17439086171449799:5986158739379934 +3815785558188104:33134717851354474:3815785558188104 +6456888679437482:47363009237491168:6456888679437482 +6153185046636557:4:1 +1632259925306192:5:2 +8834858896766279:8:7 +6840804592237456:5:1 +2471681287988829:9:0 +1560859319469280:55:50 +2119238072834168:23:14 +1384379861744312:71:51 +4139471685722848:50:48 +5766716924572268:15:8 +8886767147613517:645:322 +8476250697524175:147:111 +1031690818346722:609:226 +5753474616099939:800:739 +7407287451397947:224:155 +7595381960116861:5290:3461 +4241348517942591:4970:3121 +3121472198622003:9437:3383 +1732354236920446:7617:2959 +6643573168321515:9965:5585 +1273497941590542:61450:18592 +1636233247542384:89473:78381 +9686391202917753:66993:66489 +6138140410806830:23818:14728 +2737274669845502:63163:19990 +9464424785277782:554880:260822 +8600100141885370:701213:681989 +2691975492352822:346904:336910 +3888192054508853:471166:236275 +8949241291033082:262346:28522 +6642474335125352:3486701:1443350 +5187925427530093:6041620:5716153 +2489718598970313:2855274:1249029 +5410315268895270:4201217:2367371 +8101589821866657:4967709:4582068 +2954927329563744:95562038:37824464 +2138183781096503:72180726:47679137 +7712648939327943:45290124:17507595 +1257419627173253:34321540:2789473 +2683899208017049:92639572:101385 +8678722802234477:462528282:303458921 +4397869114005554:439260117:336682490 +6716592442697842:101575824:71556994 +7934379364764714:176045405:110100149 +8644394626332815:156244165:110907300 +6650859046463214:3323731868:1780225986 +4128150092679764:3633868583:2705020104 +2979578232574277:1346257575:579857027 +1848891386299913:7775869697:7296704829 +3817413113492563:9607864248:6882612955 +6429840847355601:55224753694:22774763181 +5596875640464468:40756908181:14738325005 +7931229286471474:80038755262:28950049370 +1862591046845738:70155505657:32527158045 +9461491206587868:40513154645:8557639923 +3769068195988922:318828284719:199042325623 +8184929144812854:402717243702:103883813406 +5135807551306119:580399618783:431724314135 +1556524167279734:919648434976:479015300342 +8891198427949058:548070169023:404146057952 +8113696059890215:4123455844110:2858414525845 +3177581655774818:2550946542836:1653209943998 +3677366411623900:3568036786425:2288521606150 +3062147632284721:3961187413737:149761466020 +7425819089180729:5576405719139:3623077006720 +9144526169360285:17931523136974:17380892640519 +9163564307914484:65535352110053:54150364617117 +7637351280857661:87995205565508:69763602223973 +7902086184656619:96384217563558:94964562008421 +3227287562696844:22100860652707:561907401622 +9185356600438030:747064976129198:220576886887654 +4991146649749206:387947834990502:335772629863182 +4140837783808601:607775698699936:494183591608985 +4699185536542288:670560257978854:5263730690310 +1949367287450206:580256636035485:208597379343751 +6270361972742881:4542077137661300:1728284835081581 +5342598855314473:1035616099874701:164518355940968 +6935346741143284:2167507462518750:432824353587034 +1865449985134844:4271272535795033:1865449985134844 +5728315386364154:4689779782150895:1038535604213259 +3363258484430419:74654755838559481:3363258484430419 +8767109808750276:84658961860103622:8767109808750276 +3921551275178452:68439588387335653:3921551275178452 +6325902446985328:37851998978735272:6325902446985328 +2838335307734077:82598316255212557:2838335307734077 +3291890737308541:5:1 +4512627425859055:6:1 +4482211812996353:4:1 +1098322903122247:8:7 +7456380860729773:1:0 +6822797995365346:92:26 +7349154056149652:36:8 +7528990779182532:98:72 +9370182153731180:67:26 +5605616962373342:44:2 +9371211820359939:471:330 +9149478278995221:273:258 +6241747808267188:842:618 +3659404483879205:899:349 +3222069604787623:795:178 +8008887603899364:9640:1604 +9637239666845713:3677:3011 +8095745656389665:6183:2639 +7663512089409265:1483:1067 +3303368025517226:3323:3037 +4566506312299320:27069:375 +5103441454776444:89696:83868 +2337445916287636:36270:7096 +3033198065366071:25747:8748 +1366992053928657:60267:21717 +9862580653433422:469847:47458 +7883184559595062:292431:20683 +6656437540252000:755003:31407 +4746602969505540:497337:320106 +8702776252967592:810010:101882 +3528966841937566:7467534:1173904 +4547761478266669:1724831:227489 +3644661410468666:2350886:1796912 +6655192711059935:8827036:8253459 +1298369820636376:9606067:998097 +5167876111896926:22423812:17572370 +4272485149029765:25828336:8018709 +6006478834417548:47206802:13259606 +6691406016555313:85586044:72564725 +3842770134501447:78772010:38354987 +2287754807108412:356309822:252401054 +3927402826658163:886197415:91324158 +6585649519398435:508610884:158435931 +5060267692028403:971833176:372918723 +2901323593195720:583900280:176712680 +5043642679374465:5091290826:1244214999 +8573849261705168:9244415479:5192720870 +5927311418438804:3470296607:3170123520 +4976517761988063:2822930077:2558545533 +6969425502829048:2698619396:735532804 +1383482954058899:27064226814:13807780847 +2522545622305359:84745387258:14425183731 +7990979160864489:97046756316:52199048733 +4053988398118870:22621988344:14976932350 +1521833456819279:98546361358:80544729043 +8682161336226541:116585238429:58630418911 +5330323303664304:203866780029:22473026070 +6815733539189666:431981158015:366809187011 +2067204658942179:840072280239:626849554239 +3484458291996831:167148071759:89588108717 +3858947670985615:5386898252372:1928522287263 +4908291138828313:1412688627889:610845541927 +8026298846528172:2927291772598:2592097837054 +9942449831131896:6804584071251:952503034185 +6568219159107841:4896448771558:2081356448563 +9015320356527465:79225083123000:62885963628465 +5500770170581472:56992597937729:29480768559488 +2763408836271565:68397092976984:27525117192205 +8595517465818008:99250385267088:59984332848440 +5127698907591119:85435737420386:1554662367959 +1473067192913225:610152329301452:252762534310321 +8786213220538843:717642813807187:174499454852599 +5893666107824408:865345222841275:701594770776758 +2299092335303355:692705316485397:220976385847164 +7146104577250207:970130632223860:355190151683187 +3198809784072439:3251363634561085:3198809784072439 +8712961810481405:8576508321177404:136453489304001 +9867304561672105:3567005819524577:2733292922622951 +2084956855276007:6845120274193835:2084956855276007 +4197219808887971:3861725599525893:335494209362078 +8810062721023500:78180388924302455:8810062721023500 +3253004249200856:82068617629536646:3253004249200856 +8754716468955489:24844935174650391:8754716468955489 +2605159204851309:12409085564536866:2605159204851309 +7067626305761773:21193077986524579:7067626305761773 +11128489228631224:5:4 +37645672781617366:8:6 +19000843227605432:4:0 +29201191444809671:6:5 +98493572288290849:8:1 +16695951783545222:43:2 +10029838794010511:40:31 +86580624914063966:91:49 +87323261392886514:99:6 +87331693086487812:86:54 +90175480112734665:548:81 +41645735262640287:141:75 +34035859480208300:578:264 +63399600047742776:504:440 +68936135119611946:907:445 +28053906001251184:5764:1088 +50637520517579305:5190:2185 +78446502668148555:7940:6295 +40773153803515532:4181:263 +26101603409725185:6904:4425 +37336200571655472:96232:75776 +71807519470169348:84801:29519 +78721377622517714:12475:6314 +91952733498121007:87186:18299 +25070973511507590:27620:6630 +57252117068063629:781592:280789 +79880887206500360:656391:290378 +56501019904644598:822828:324034 +44761674100169917:958725:539992 +96062294369996041:253491:67630 +64658812254721325:5514406:414311 +75760896453842498:8556989:4152018 +48757871667522093:2802555:1961448 +96856181687936896:8582637:1893802 +59948928164778589:4687605:2929564 +55053899623512325:80079937:71260662 +44419922576828688:48524485:25541938 +32160972827021599:40722346:3112719 +14349863876788308:26360874:11368902 +83853092443382193:18367725:2755068 +86412355175293422:351124861:195901922 +59834847744191182:377252274:94395922 +75301886183805892:840377619:60904693 +30878150266519298:351479898:127885346 +62342392859218022:906044356:432212058 +87526049301357947:4922843583:2295515054 +75381017328439380:8625141548:5743648548 +46820306632456903:9117871308:994391671 +24160465182310679:3518596950:1632150929 +44021739070504793:3068958680:386600873 +47053090749123433:30472145169:15340734787 +37094543626617695:53143096729:24392614947 +91976491841209971:34961901360:15333672291 +34935431907219948:62801789926:52207184668 +45896597928153017:94689783633:81042103385 +14346807019664204:761909847183:44597208314 +94665888862117344:599751417858:525315992766 +55756090810730013:776219726968:227822618573 +30840364756837308:412486183784:10253858980 +84053969783787619:363119167027:234357878740 +60495459993237835:3209848423696:2656600263019 +26202069162686213:3919733786971:2568530572049 +71733642983675828:7219309902166:2579795754452 +88839148329232598:7585212811048:1135886238422 +82953741474405206:8626268726382:3541401515894 +25796973353018535:78154784765430:5894380426635 +83901135165355524:66763776728304:45831594605700 +47120438085892835:34371865526062:30982315187895 +64742001937528034:18403055163114:53873692982 +46471625592572860:37052980585915:7187937835450 +42881909501058991:575008670575689:331267878458005 +51638387046196677:907040496605482:844119236289685 +83561582841454377:634025631085996:504225169188901 +50764487131392787:139168506199737:107150874688519 +58153891316215026:375857004451306:271912630713902 +64803703692840378:1179315288082697:1120678136374740 +31716201553609164:6292139761868138:255502744268474 +87024569712362190:8538121750539439:1643352206967800 +80290600510259319:5757842660026919:5438645929909372 +41008184233825634:4706793312884800:3353837730747234 +71369261050441500:75966382643385839:71369261050441500 +25659350166921231:82580106982569857:25659350166921231 +25012890737578173:63948749438557582:25012890737578173 +61424469153402475:28377750851603130:4668967450196215 +61010200995690827:77408982215923841:61010200995690827 +13236233845013546:719864951139909922:13236233845013546 +68207714849085141:596084007050535996:68207714849085141 +26919056310230729:133980650078799853:26919056310230729 +15155273165615283:189295755745236141:15155273165615283 +93021509729837268:784531670668979332:93021509729837268 +51694188585485456:4:0 +59510219208154895:8:7 +62881723534253157:8:5 +15856189187809628:5:3 +72966632742348133:8:5 +72829882829355542:10:2 +54566337144239351:32:23 +69194351531169173:38:25 +98666506392191120:26:6 +47499870078251521:70:21 +33598258669062355:873:4 +93630826809834849:263:65 +96149389558105243:554:501 +47439897181226201:301:85 +72895501590878725:759:748 +57552550497833153:2776:945 +38468098627738286:9602:6746 +45490187914911605:5155:4705 +18725643337522148:3561:956 +14194188165701718:5528:2014 +41361660192853668:46341:11316 +20016052007747749:58793:24383 +29916663685339170:34705:25435 +21298981389348914:83373:82958 +17258453905691969:73912:18873 +33295657532048532:152634:46578 +62214243405515917:712590:501307 +34961788084329814:131029:69692 +75756375146089137:538658:104789 +28196079761243461:340895:107621 +86169035382479292:2335737:1829925 +66299010451391414:6721698:2912006 +17109025792929940:3288642:698602 +37151854864577228:3591108:3471320 +48026949830632385:6682073:332964 +87086947856645344:62840035:15127814 +28364644219294116:24908505:9614226 +95552990931136669:82093179:79160746 +87084514454610128:23675826:14776724 +16464887125143956:76071267:34996526 +77121231273558516:120612826:25113214 +78677064022333965:121555686:27343707 +63054548101226655:674475385:655382500 +54841246386239601:175413432:127258065 +62657039155397755:280435648:46649979 +86943290286080123:3860448755:627909873 +84528784729883374:1064588312:79872846 +83006098003894271:4788605528:2750072391 +10841594155892003:5026855433:4130456181 +85318029935051371:5549046208:1735037291 +40253792682885669:31958588728:706057261 +79710430440532441:40844178501:34470800368 +23055369495166770:11158763901:1906504848 +17060303570351564:14344082721:11001220283 +45322277120150789:76005360953:52367794030 +71640284821904386:748441989486:166030293952 +46158457053637523:912222009004:23398035123 +13979525794047351:148902526336:109914044663 +68397050158851040:251059482868:162062673196 +15555584685370890:871949543414:4830865130 +97561958623439453:3871585239318:1882177865171 +21851518646603276:1847868259994:476472174226 +45380819694621110:8129784864124:360583080942 +62596886462252566:1236504747904:70104360470 +85123879101747425:4779116438622:3036213450983 +25349088785112535:92569574028329:77595075378718 +51587095288387966:98307500234189:73965165672930 +99327964466344992:36838822834189:10498105371448 +92454617789600299:36642200250851:6346556703226 +41923236939948052:20905356753328:7996649525412 +30052714734873758:809191654988232:112623500309174 +11027812047531554:566248152045211:269097158672545 +37122907687266890:574845466877445:332797807110410 +26934965120615040:700790935087026:304909587308052 +96899663669725060:555686637004566:210188830930576 +67091474311820561:2651690630498224:799208549364961 +70833429783972722:1152160228965041:551655817105221 +82456134188466807:8931862956439421:2069367580512018 +98877375048112528:1903393732525575:1804294689308203 +95031734548062930:7561245443082787:4296789231069486 +94374823503887205:96007667074390893:94374823503887205 +29095102398667968:21042755104536154:8052347294131814 +62775048688178512:88902443645864781:62775048688178512 +67769361438220162:21361006554556721:3686341774549999 +53099479957987301:64724995491356211:53099479957987301 +33856316974835049:986647584494969981:33856316974835049 +42825174794206967:317099752443480586:42825174794206967 +98823241997558604:197118734007568675:98823241997558604 +68728819753440995:692192194449913034:68728819753440995 +23393629325347502:662328396940862504:23393629325347502 +88787975622135816:2:0 +67599372825068629:1:0 +31591295602881448:4:0 +58043099215708907:6:5 +44081933216328919:8:7 +97698600509258276:60:56 +39435500334833057:47:14 +25483093713405828:74:68 +70051249599582706:87:67 +52202315677829231:53:15 +71305186607354437:360:277 +14477455373373152:273:251 +29973013379847322:138:58 +76676443344655018:466:330 +33921239752332483:926:309 +49402499484463577:1480:217 +43681054817896243:6251:244 +89320133863188303:8137:243 +29294484547872209:8515:809 +39652028933906848:8482:3814 +47201724824089990:15517:6018 +68989711063449495:25237:12799 +46680440382106263:16061:11230 +24579402379746422:32258:4338 +71060579293568598:68718:56400 +40437324387481923:414391:322059 +59390179922658026:547702:340876 +68023617056209639:832816:597335 +30021160897997535:254234:5305 +39011501915514082:515245:184587 +44853545503637473:6485272:4897505 +76488059535130629:5572419:4934685 +83394984189503435:3382385:521175 +29733359880311205:8674317:4881633 +39996256388523214:2103248:1880574 +99094672109595879:74990079:37005453 +79093579166040954:68271880:18434 +70126690059966822:20590337:16618068 +67704415981015528:65391920:55578248 +49868402496278615:44125258:8162711 +94150684764207577:407199723:403562854 +72898642827543800:805307539:270529557 +65366875453714821:911077455:815792466 +92577573010942637:364179171:22750064 +10198812140399377:399963966:183148495 +49523667153539492:4992508893:901081157 +87829210275394973:6273088881:233869142 +75927492998585380:2181520839:514441264 +54696306137320564:9753889290:6399144964 +45107349074569051:4056534869:3761656345 +97460132864933725:94414482529:27958513243 +61033250621213071:33345445459:14743350683 +35564655094725304:62097238649:14089476779 +92660482097943362:44898024520:28889616402 +97138970228978032:44865932986:7916587348 +69489427614918153:726378026633:473697072208 +77875823515235373:208963596766:106126869557 +45355040097296754:431909004048:275582216274 +19512067621048341:695381306977:363528580698 +39145087050747159:640531251263:300692311440 +61941248809974080:8152745237662:4843239455866 +19018872191337618:5737835127687:3686578182900 +62270856360973783:7608661467900:1570907680183 +11807764381199897:3700069058141:844016671966 +98406957426387938:1620187005711:39073513220 +70681744632989085:14705260277260:8263740477525 +47181304119754590:21933714586338:1884044541552 +35834092598077211:75907611294309:5700067163363 +48747498480363600:46734842717095:3057526433515 +40181401599879320:86152846596454:34175085931756 +64536781339266292:991033807793970:119583832658242 +90376699284961912:554202472221641:41696312834429 +13564416544327259:507235350461766:376297432321343 +98592038652656211:692991301651736:187273818109699 +48955667470642137:477983070486952:201394280973033 +94503536244336680:5185862044653905:1158019440566390 +40960518333689876:8680815561692483:6237256086919944 +31067886567256888:9328144020552481:3083454505599445 +11488914566971415:8751882708649732:2737031858321683 +49055358408993631:4777161180527444:1283746603719191 +15848709216295636:72254756811612190:15848709216295636 +24465247009667591:32785835687459978:24465247009667591 +80571661824294531:16792547451747556:13401472017304307 +30552285819700305:83249797636398107:30552285819700305 +23636498961077441:80674116989151140:23636498961077441 +94146022464815047:790580687766315862:94146022464815047 +82003702454130735:367140471374260619:82003702454130735 +88600401425924582:481244419044774732:88600401425924582 +96719129268270148:319666917822007046:96719129268270148 +97499883579359948:750895790622066881:97499883579359948 +59466085919467548:1:0 +35672724931862726:7:1 +56970168870578335:9:7 +55020535285055534:5:4 +91460835230073232:4:0 +83409588601956985:66:49 +55185261507151464:57:36 +97030434220770322:24:10 +56515305825211089:27:3 +71588258191421730:32:2 +66204483627342099:821:124 +76384289542413320:120:80 +23652682206982328:193:45 +40092267939755062:508:206 +78421959250218395:458:265 +99869122796810309:8398:6975 +60472118072204901:2158:465 +15223148022336384:5500:1384 +78973490871482357:8523:1532 +75507219963998431:1497:1078 +99322727716498753:22678:17305 +93716344158451140:14189:10059 +81389789501598273:26658:4341 +85144028061950998:59482:7810 +89891628106805104:28306:3392 +93298770010820155:338332:297627 +44790234915752738:203319:10484 +33628304471461388:502502:13702 +64945788368859410:897970:577500 +66591786780503128:348650:237978 +97964093570332964:6428152:3809084 +13452641042773534:5901512:5168846 +46916107400913323:4603424:2470859 +81909362851589104:4806930:3063874 +86615421971643552:4974518:4923998 +94745110163956056:95291739:27386964 +32319602910184353:30339223:23029128 +80604304068341913:63427882:30103933 +29286710064745174:69488830:28545334 +78389000769552040:33727809:10037824 +69911652757437841:345767900:148905041 +82375397055953169:323280370:109640209 +29090056356470620:206585165:201402400 +54551756806223715:233901300:40923015 +86821108775342871:173563022:66125659 +49441400808327296:5946556608:4667998976 +69380288164764592:2536058941:2429119331 +41726573308413257:2824561709:1076166417 +22265207670340358:9515182794:3448595354 +95703137333433384:5092876186:3075757550 +77977881812858646:11375217171:5966103189 +19679628848720990:23495393061:5097792695 +18972099668456040:54627492564:26128471404 +60063552042953663:39411746597:10817379066 +60269445751581829:73924471128:7232461477 +78666962657754949:748100095891:497074336844 +63783033586818328:969262937441:685988513323 +19727363468198481:826492215430:647270315241 +75886148412962063:454111667149:1827359822 +81141917529931134:731703066557:437667159176 +86641882148163595:1270776803562:319681306435 +80006208741521104:7780214036982:2267799235198 +39804830013462129:6968215653393:2382201281313 +76384298213647619:2633837752143:369563748476 +49855324571489656:2824173521829:189390642319 +26552086987039210:51099667179100:31359721086310 +23591077477774402:46950126674035:22113887408832 +43598503237314038:30359191743080:2703894251158 +70919269208500216:23076396032814:5504199662794 +49680337794615691:37989518873012:28036627589007 +13012396933668254:353487857879920:286834049991134 +41685933394592326:344775846974260:312831757681126 +37552334686225217:361945278036002:271971048517011 +96377527826116809:335308148267753:144089273271698 +97360451270985656:337623724282311:124818677680088 +39953843208115914:6425874304871553:1398597378886596 +66542015155710524:1413057979202641:128290133186397 +26649240790331172:1375509571940074:514558923469766 +15412461327840449:9837573503821138:5574887824019311 +81433764828416935:8682870728741999:3287928269738944 +39397905457859075:47300337599576091:39397905457859075 +27008564604431865:59987376199720800:27008564604431865 +81311158064796893:75419979691135467:5891178373661426 +26132543721050829:95748136426046069:26132543721050829 +75459133491879546:95481790240945303:75459133491879546 +49397598549657756:161410544000545184:49397598549657756 +45255688797036198:502451918068932883:45255688797036198 +71244948190657344:119705682254245618:71244948190657344 +83272214654204104:933951184341498616:83272214654204104 +66929056222489733:896115388033512533:66929056222489733 +68884384858584742:2:0 +20621893745933901:9:0 +47129212306906883:2:1 +79866478228175043:9:6 +62894888781392760:5:0 +42339316543429724:58:42 +27479549899764251:76:3 +46601091060515719:89:64 +36713234338969805:80:45 +25665552343932546:60:6 +54400088818361650:675:400 +68222494714778372:727:117 +68975068886729856:939:933 +16568090061082300:265:235 +75888996932959062:409:38 +48166247343017771:7881:3035 +23790404847547578:3684:546 +72756065127397236:5797:1509 +21680198716722440:4189:1559 +57897751315465716:9569:5135 +61119766246393147:44147:33659 +24465003897981038:59627:32640 +76448053762861560:86110:56640 +80147140875892686:82086:47322 +51903918928021994:42178:12512 +89450822430681917:848896:324413 +79180692047619306:114617:19971 +74589044484727994:937774:34096 +40223145216085017:277505:125442 +78791912459349288:950716:804132 +15199565353614119:3299156:1988387 +60220828175405845:8352516:5709169 +31717525732793306:1794273:186332 +82046809933680318:1665123:1186632 +19068815606401607:7697425:2567057 +73228338382852006:92409716:30111162 +14799570054964683:74518742:48580555 +18132203627499400:86390565:68760745 +88401090582302967:45156855:33808212 +58601382494726618:60638137:49748819 +84783004227212083:171166141:43969552 +31218754275746428:564703765:553781423 +27869473274226472:638613498:246475162 +16621227919456562:615667857:302945429 +94169360926470371:880499334:299637737 +65168346967316580:1061964102:187174248 +22209382637261988:3123188283:358313613 +45180714081036841:9996261745:100193896 +85364321691078199:8159158252:1509461163 +66893660069744680:4630860035:2369902995 +55750024700073127:59699983313:31082994459 +93147812278062892:89908946052:76262431696 +12310048896273020:17909350924:2810608848 +21151141741775754:48778972924:42513227190 +43134010291912404:34697013818:1199899888 +54034289621866063:930929077377:373183672852 +94822115707372996:396088446248:126029386788 +80243805019738502:495705142199:48010848780 +41268069787084778:163617876809:41662565180 +34794139282906411:198738289873:33183390936 +50982564649948851:7413977397913:4056061899063 +41969233003063500:1986438601665:1744665687045 +13100468804230438:3645711728825:1426562562213 +49640909301342472:9227087601906:8405090690098 +93976993482872813:3704379609065:587180502828 +85618355028510180:19107909049576:14922486409700 +87761018030082831:30002763428384:2935002059631 +18000823045547807:49573089794956:5791449978779 +64438302958584011:38057351623980:7206659185871 +55432065201431137:85062257266509:56535720933778 +15955972439558727:185705457329921:171008566515442 +98616492493254907:252236854219084:244119347812147 +30877718874034672:589725941851156:211969897774560 +48275642925159000:844530261707434:137418007835262 +78616433686220553:455145612848710:331388276242433 +56950947620706455:6807618518298865:2489999474315535 +55915508227832587:6639879354950224:2796473388230795 +28844374934616885:6241088671693527:3880020247842777 +34431903018283097:2858275880355568:132592454016281 +90599754950047894:9346098805445083:6484865701042147 +93124063009729882:54388128863659379:38735934146070503 +57662826241931856:46705996548707883:10956829693223973 +76486143691207651:52652320153154224:23833823538053427 +67157576673096661:97756233194971505:67157576673096661 +13833403788432292:84281005538656997:13833403788432292 +63697623635494722:786247231341781020:63697623635494722 +57266390654230284:752483479032491699:57266390654230284 +43998086056105281:353644398568504037:43998086056105281 +79384782105305704:963170262478481773:79384782105305704 +91302968258828459:484350461955506566:91302968258828459 +768749119529505479:8:7 +990344110702356095:9:5 +503379644215286210:8:2 +156955564166012752:2:0 +909238539526059846:8:6 +661307673106343605:93:67 +802785837354615078:71:63 +676399017247726722:91:40 +450027456897063578:21:8 +493104797809734670:77:21 +494711312700234135:143:77 +213478004326474157:170:97 +558012571095573567:821:21 +126952056219931247:553:18 +918602898247563441:725:591 +308063939004189562:2449:399 +783663284613769502:3790:1122 +999948726076469236:6661:4756 +676718242818342821:8898:1445 +275418811888875596:6791:3246 +256381049588427547:43966:4645 +574975716099429119:89691:53570 +647117087621864699:46594:12875 +432049604428009201:66068:45813 +171931347343440216:69689:14088 +240222815210004756:874424:748340 +386761307108092346:716874:583250 +735195884560770434:635087:408950 +595309602161750424:748119:376176 +546181675863860513:751239:542837 +653713099058273634:2818291:2164122 +881641210675441230:9473646:5824560 +499628227588156597:1613078:649393 +827394027501737061:5966665:3385091 +441513209742786489:5255026:653485 +205016098551052110:23614320:443070 +758536437322564782:45008826:1531680 +160139979041333361:86869052:17693005 +966309682589972563:31706155:1270553 +838998046555856392:75005537:24258959 +580246152994890202:664656990:539628232 +619681826118124385:287303333:287031214 +596243777031857765:708718557:316945877 +385193374695330764:218120994:103878428 +794557101166507858:282852199:200118412 +339776003931996372:4157232227:1302926818 +974022962294047011:8029595917:11515892 +254823210399699082:7441912692:4391756506 +303789574919885264:3826509450:1180504814 +809861571220449372:7853160779:7381842027 +671164828129330544:28865254661:725635233 +790896696511674883:35853394805:27630140958 +880854893185203018:31162195906:19517792150 +299020941086975991:56730564403:36097460903 +166022774381676360:89076750863:11818452289 +979711759846327167:695456338529:161157691939 +708349981311090205:264250306117:82233247771 +522653599125086739:996655107094:684379243481 +924369628655339331:147803274668:115308109927 +298329234564686625:712619943002:159486158351 +796828839273747136:2868069983282:1560028458922 +145195365405723515:5238664256107:546883461903 +759710950749941666:5256064173014:4691246671120 +852264769082193699:2434977240875:819980775824 +231692931871713026:6405013748201:4369558038253 +579042754477030690:30836687507069:22273156796077 +621480562824507292:50425110285481:41503666239448 +899001662186725803:10776488538997:5435286518069 +807748248785586263:60894207013957:47486952460615 +724702291967904131:74629034041137:54371428463861 +147410712618966932:342992057553867:267119928357989 +279844144233395900:693000154902677:565081807617069 +461790467082195250:413968314953530:215795909009300 +647115009032039777:906097106782707:161674789186979 +373052633543023219:637410624831064:167418016850779 +960376160608990981:7593410056325999:3606493511915107 +217505726610542711:6483907657055351:3536773927716128 +640349752224077416:8972511823866508:3301412729555348 +564276577454789903:8264759361426410:2272940877794023 +846543420529850367:5197997188517528:4467875990010831 +332200415473352571:30161531748821601:423566236314960 +929454447365155734:70695354951189371:10414832999693911 +598046294875017930:40128125983775784:36252531102156954 +498647971240549358:49843319162885245:214779611696908 +110492368759039062:79086730323291983:31405638435747079 +564606653432454517:353505876869733378:211100776562721139 +797482606606551715:775727514263329487:21755092343222228 +647624372890770357:456793787321180569:190830585569589788 +859589935775589645:351807242714127863:155975450347333919 +292576561055471883:963955049654571243:292576561055471883 +791746272265835804:8947565853708892122:791746272265835804 +399848844006008632:5675975883662473703:399848844006008632 +934130310612378124:8026121702889407067:934130310612378124 +292100655031185791:3980051271523670668:292100655031185791 +752842153814428835:9644372722156867967:752842153814428835 +471803709596065044:2:0 +352562707701466628:4:0 +793423186762868170:1:0 +170953311332570743:6:1 +733390968263051373:3:0 +155908962950632750:46:26 +760531627637032007:62:7 +829445586616487775:43:23 +502965807338241800:63:35 +364705838509091795:79:63 +225693238990844025:838:579 +703821759534302979:331:32 +183300215663209531:912:571 +370649484067044784:856:136 +995312371900510407:138:15 +371498885022264028:9875:1403 +607533355292069446:1816:1390 +802274341025144592:8987:5819 +186463916298840232:2618:1746 +224923283613802148:8047:1181 +845977789194294606:95904:70638 +223513142718800866:41405:20406 +363097952460036262:74051:9704 +415583649657800216:38141:22463 +875812694594969794:59152:25954 +598414972580697295:277373:115740 +386793872873107301:869144:768877 +120817256594841900:583695:213705 +926461209731648502:383233:338356 +594023186157136659:976039:667527 +654365347454356024:4632417:1172893 +601810314351666297:7464411:248433 +706071428723219399:2541817:1323224 +638482022150502311:6235072:3403111 +258789008966231957:7719290:5153637 +366770051212681095:24987701:18148447 +442108276737178536:95168818:24364646 +796612474535778489:21838858:18686915 +611112986641707977:45892616:7026985 +693791392991622738:57985070:57446058 +543815800513951499:868550967:544543910 +355669299792680606:562477614:170695418 +410060951732535573:321203428:132672373 +441056525789861709:739712825:672477059 +936511974011687914:247066935:114488359 +674658309622480752:1626078449:219457344 +376583403539271067:6188575741:4710595523 +860895577448152541:8775054760:7725892341 +281782146917266453:4099365610:2809473773 +564948207712789430:6913791621:4296693326 +608845102316842289:96518547443:24377909380 +973934668747304665:93156734470:13837286545 +212098441054365187:48126426135:35296971472 +831089049866439710:50763546797:38848812614 +276162996350146308:59262802762:54100506406 +748762537974557285:830798433243:465223704077 +843354275833464502:692827782804:650454119050 +352075181549025254:304576356186:142615818554 +759044468037891309:784109001888:294504243117 +110526351695137864:639836714723:317757172121 +575788540385593063:9093597085923:160099120549 +315106165955128463:8919027993153:5825985026126 +672149646337432924:2925112185304:2742837353284 +704238063557477730:2902383060065:935480246065 +691589005266137404:1109116926615:254792280769 +434613417877462792:61375460587856:13781454854456 +532556132679354677:23609621148018:17518064660669 +696742807431014855:52948471858133:46814721700841 +773164462134300678:14423983600289:10093191609700 +273043918037437390:16592224383919:2273575666326 +825064459126741227:357508834950805:291576895234092 +529973913372027012:502560354285474:275299955137416 +816609347967357404:201536543682910:184809507888994 +955192285828967382:724743662464755:704882362885047 +348225879290108733:183666773473487:177343557850868 +120380683854959784:4224251166226760:2101651200610504 +674108547485684101:4343507594541477:864870331755166 +639258057296643196:9326140523741885:5080501682195016 +443478784298004804:3739967983701155:2162562221268514 +441952659821588832:4910596718502098:4909551874902110 +781240184137211634:78377197461697781:75845406981931605 +492692328104137232:59009199430524856:20618732659938384 +641483939784005868:18015234820255140:10950721075075968 +405159682121039698:20445955632533974:16686525102894192 +783176456237745642:77710464951838954:6071806719356102 +213408689307245364:112088517995274789:101320171311970575 +488210259352455223:111204622898830867:43391767757131755 +496195778132569021:448246413606150192:47949364526418829 +312591790153368885:929986390592220259:312591790153368885 +949109019919889383:872699454314765829:76409565605123554 +760292927393486113:4476093490566987687:760292927393486113 +726368974992026915:3643166775033025490:726368974992026915 +576534276520855045:2590157505917301422:576534276520855045 +196850518580921946:3314272849826817216:196850518580921946 +363198200748036503:4648098834063943449:363198200748036503 +481102773938859107:9:2 +812867691023746352:8:0 +187264884720368485:6:1 +469805224296694031:1:0 +929442223767177118:5:3 +839194585270581640:67:51 +891684361036282102:21:16 +116553833843648234:26:20 +133184658893569357:71:47 +692604117866770726:24:22 +134909570966606623:954:487 +548781296877436221:772:653 +399568345120626826:212:22 +484802767684181027:130:107 +563946114887841756:188:12 +593316667613550326:2855:2216 +803343459872794337:4156:953 +624936160301759312:4767:503 +126655369325719673:3016:2441 +954037621335840716:5194:346 +935490617922372606:57807:41445 +777395918553175518:29621:7853 +983278675915104143:51797:33463 +330690965792625905:25064:3249 +534247864489635044:53798:28750 +270244538849825962:401760:295882 +431132816680057108:893057:22012 +120413687565455102:869901:349469 +419371274278920208:714994:286636 +442259138218535211:841553:427796 +674188431848400728:1831537:1041896 +287201913581565280:7486762:1613306 +634219773116804718:6757675:3223343 +367609904355278063:4351246:3784419 +745357447571000145:5078622:1148835 +687234318683459147:81247147:33473297 +682733161957602230:82017565:1050895 +642312795852137111:82630602:27419747 +600914509741860456:83290466:66140328 +979519605277155375:11594761:9858667 +221743487348386924:741943889:63941005 +846141275895003407:213802752:210269711 +109841256416440790:898652544:197576918 +133698375371363741:446208110:153375551 +433034806325113530:692043874:652100698 +600970458073312253:8518176277:3739495673 +824855844385730574:6662912994:1858566060 +875509318616430966:5303646110:3279016936 +884223371314837033:9277761330:325959973 +404493600219195051:5704074862:3347152023 +423215032814479232:53897060616:6092432288 +444087388386616324:23898782112:4092393316 +523856101883772158:94461208437:27802073459 +159491357388312451:68657627836:31213423631 +262171933726431416:37189718101:3606265735 +833600616759751093:443991412915:79140644868 +493582342830935053:774435095448:6922629493 +992597129640140575:744427878415:73825810440 +226115943910548153:396538629251:100584525929 +599049423324576813:226884487914:184004068935 +802228634063470236:4015843428765:3671516230011 +322496653025667943:3032212201934:2692076775439 +534660107610630965:2634811193487:1585417055438 +668103016910734283:3682697324818:2799031551995 +779031165535404431:9725065267804:4812257965011 +788399087656244122:30900724063535:28914623275667 +833421035772915544:69005084446668:46630910506108 +448345425245812524:84679563150928:51817924799692 +570276885858767632:27562550833557:7709112473302 +974448660309233668:61828257951433:35314994649588 +582206414851971382:954174836014773:159764882959852 +105930433565912737:888938476468648:146754866143625 +431408292547653413:886773926543644:436164247442429 +880204406758853355:336076366541048:20402787848643 +104383331734545963:367440797937193:30145120383151 +554986143299839115:4807418050264031:2133067519475550 +304885841433973556:6549837852962288:3593300197708308 +293173259494575988:2934200126795952:2687446941776740 +516144332945565448:6729831760991112:4677119110240936 +689908630687153874:1743118287717257:1376907038837359 +126887846008204726:42767838287513889:41352169433176948 +943094711334285025:65556561238286031:25302853998280591 +763264979808086212:72650601631896085:36758963489125362 +258429105240231652:40772241444436985:13795656573609742 +335127664989003068:90513240303041414:63587944079878826 +963351488371922196:910296994439705251:53054493932216945 +332456407125873743:750357788924695666:332456407125873743 +308318256094994505:535337243091861424:308318256094994505 +998033788568981141:982329502057717199:15704286511263942 +796896168228266082:360357238379442138:76181691469381806 +524495611070526692:8877875159003607223:524495611070526692 +214436298741697558:2858826478407279575:214436298741697558 +101088518460831950:9802561378840569683:101088518460831950 +647201320458866930:2348252793005931376:647201320458866930 +560617742995258534:6288550357608630092:560617742995258534 +156403527458264699:8:3 +223201026877186823:8:7 +692673078469220623:5:3 +308763406892150754:7:5 +829220540787424076:7:4 +112666312063220730:74:68 +807061061705087787:26:13 +707859632400891604:71:38 +791132967059477435:24:11 +950572624636858232:83:52 +640182840442041846:738:246 +363079419526732559:749:462 +465942573567367053:212:169 +513700507731339538:801:376 +976214634889415155:587:231 +929557406684830496:6844:72 +630846715026177895:5914:5859 +616666356609983962:9480:3562 +691078132805243946:4559:3591 +908958769231820784:5749:2904 +373836175947199888:74337:59158 +768655749688274683:70940:39803 +125993830448731802:61705:28172 +391345209357274752:69551:35996 +504807442886912708:59313:26990 +469619229071245767:580694:537943 +731927099807524443:743492:250699 +397904426474913859:367687:14463 +807080543873286866:515498:364320 +177709008791076948:796258:248968 +314866991255728614:9830271:2031072 +313614664443827574:5212236:3831618 +620077405297271398:2900868:627994 +633640807618571510:2821236:718970 +628986815079594422:5519049:2012711 +900172078594059805:61095856:34080845 +196874891278927341:69533175:44474991 +876821535516803956:47438563:41883643 +881808008650349333:63137740:26469113 +989525778545774204:70432736:26729052 +624730530702848082:894243194:339067774 +500120526675930313:532242289:289204976 +304276873690755195:156092200:117073395 +485678065407052041:721500065:115775326 +618945531806621245:779498595:507243325 +652101736720572511:1276486829:1271495992 +894986465190581152:9939868357:2655779448 +562459959602649318:9039879506:3681375712 +230668271624053704:1048359959:187151003 +237110675915047942:6880225086:3818836504 +540477544348762649:35332545987:4953872024 +891811314152541774:40535689351:2910910379 +689325274761650885:66103272781:15685018980 +494415841508342584:13284196227:3431569588 +943985572610736109:82144568566:69635857081 +667025447238904527:730175419250:709473579277 +650216928545997790:446319282781:251980760188 +663717961962354749:950776314509:32329912029 +640954498153070905:500302690291:211632491202 +608139346913625045:662331733075:258570554620 +325916189322402565:1975825232927:1841325860988 +316594301241447661:5199516988712:911315762693 +265773049579178218:4403358089518:3968728229810 +679814433109123684:8365930744591:7266734403615 +969833294469495689:7576156646782:1905958285087 +738322411120042774:59190071540547:44648794800043 +570049301548254625:40748601467597:17115618040192 +570774793605580164:70763108069729:70327023215779 +936561036798355292:64313813365553:23286569172506 +146369144617962614:97573623240212:8709757644614 +706051160029670422:693267531961744:304812492615030 +888691971745866949:317641681046275:248189859435774 +699592551161635810:883478275533685:761235214490975 +635670939178103606:274797389965520:64576187855846 +314615060749252586:852363535289697:92916227354393 +922574312506198569:9005220710558440:4041800029237689 +640144751248768541:1253510383781830:854455520035241 +128660643925828266:4696713019914154:1849392388146108 +950487372364011632:4267535188352709:3094560549710234 +851196054155858233:2995988866493168:335216071798521 +672330230538408350:35031613567902877:6729572748253687 +729423504742296769:94965946535588615:64661878993176464 +941798925042729494:70505348534007606:25229394100630616 +416363236714938597:44521008293031826:15674162077652163 +183217170000736474:13430425280262687:8621641357321543 +545094981001779493:687278151595105418:545094981001779493 +749533855105848139:541724598279190107:207809256826658032 +657559182740400177:822869488080671550:657559182740400177 +696880696486207479:748287182296732136:696880696486207479 +306005267500795204:106473757509490252:93057752481814700 +896174014164345152:5661331931160504479:896174014164345152 +242196378412025115:6628174543319757162:242196378412025115 +302050844701696859:6417722592307545204:302050844701696859 +752527364334659325:7240705691914391353:752527364334659325 +458428841298413412:4300053874599747812:458428841298413412 +260587622018793583:1:0 +307405671370944125:9:5 +540916925148326588:3:2 +384103830076030877:1:0 +166987333248071691:5:1 +904043712832754260:46:44 +771090135746472654:95:59 +143199295582373534:44:42 +572282753851059384:79:65 +444092977582730691:11:6 +360595027300502916:379:140 +552817626179529657:287:254 +359383755902642894:755:209 +880882018802993883:255:108 +542065938001435450:458:222 +147995464378735689:3912:705 +752287309860376406:6175:1156 +595969065865251981:6081:1473 +475873087089167838:8856:1422 +618288829986879359:9921:8162 +864699505715073955:86263:66404 +976466339711068642:87646:55010 +461229869398056005:98539:76442 +664275578453495333:51448:26245 +253509270073960022:27456:5270 +758828711466326791:848284:268335 +945785746920154726:828133:342431 +588445643609407513:484326:92737 +473911613172092066:739092:587582 +380301739666218007:183761:40286 +905143840941531560:3673513:3144209 +999492574385222931:1956027:48939 +579018310843330597:6519150:5300347 +662828219537573000:9102214:7046038 +199978558992152661:4739289:2113773 +872871871931536706:16270146:4916546 +765328188201626567:83979231:62188154 +626570176508930155:34028898:9887023 +713260441208795743:50138283:30339949 +561467106853964858:69113404:4601054 +715329084006395514:586586491:115639878 +311253863190298892:233822562:176204444 +713075059273706362:214674883:161133892 +292553501720280140:825907027:206761785 +640179098570691006:928473056:632979422 +721238938699193499:4229256295:1248827109 +872299494343651358:7322601599:4910561217 +633461408700133957:7683981767:6806286353 +565953520432517628:1981429652:21545780 +223004316049252443:8378027585:5274398013 +538554800284686515:94228374596:63551216195 +573035990806549398:97784614024:62472314958 +891851641213535247:79476683663:61654997597 +504456354834983985:70405485705:64081859115 +158192619048850261:81148026464:59523081813 +770614509377556535:124056862202:77660968167 +553497244727208094:870582708132:782299169530 +497204056085462828:801803371660:172695495208 +843556781033850298:274808174110:113622312098 +534601650779108934:143383542434:127553128086 +573617430739894710:4454202981045:716637938565 +441542287679184407:4189474547633:996680499638 +804278820922476563:7020801145523:3924895943775 +408402562467649992:3461588076767:939582602565 +719066234980009420:4252591382268:4063335077836 +137972100255440223:12597233907484:7194500675455 +331524992769130707:13093709068642:5372860183909 +371588402389561848:56755162144540:12355829258468 +110579597981553327:21262539660602:14391746422927 +664592018863404316:37364718936477:23127859224394 +255319039297350857:806753239426330:385015638630577 +720706582830563928:842867347404769:55000799486433 +651669051254687769:206477927204982:24712995764577 +206409187552597956:953983675765511:348713587247580 +625634468769122836:113404291448827:96397137393104 +400908382896312750:2381529204132265:811476602092230 +625365652153792780:1150496024063263:646311087440971 +689855554849494582:7511928953134516:6270020114253626 +886338064165436872:2605749180838176:383342680457032 +503120312557536474:9544831341409236:6789082804256202 +307382883895325674:67838029345688995:36030766512569694 +527285281181119602:50366592469024013:23619356490879472 +404302261560393401:86931324377351384:56576964050987865 +213147620922741466:40699160120302847:9651820321227231 +622131044941888947:10381823536987109:9603456259649516 +318574939903239961:638031838198236410:318574939903239961 +519304047034198719:726120695834078026:519304047034198719 +753875539514774034:202667462866733289:145873150914574167 +610241357947094044:485186691472853949:125054666474240095 +110429939165482666:667555674917630031:110429939165482666 +855661158340092083:7810493751355067426:855661158340092083 +448697041977651293:3582747569149288751:448697041977651293 +203912632918014862:3421463156339775189:203912632918014862 +972438241124909742:8399370510923792784:972438241124909742 +901739552891548370:5840250909246411086:901739552891548370 +4883819645987684728:9:7 +3628245516993564642:8:2 +1613180409596858629:9:1 +4265905711456839060:8:4 +2496680636428948889:5:4 +9530251550738315287:97:10 +2394877170400708016:73:48 +7299892708917393558:55:28 +7164261356019213145:90:85 +9205323377696364687:83:19 +9777219475432131133:687:487 +9707932684550673941:782:461 +2830596702920337922:334:120 +3760666938150531014:322:4 +1074118598288657518:169:116 +2192703355217433784:7800:6784 +6047942265874006541:1498:589 +2762327965715021310:2670:2370 +6091632365980308908:9770:4078 +9437080707450938742:7741:910 +6079538922628195213:92106:33145 +5211457118565920637:60307:57329 +2530418911270794220:19488:1132 +8648937967551321084:52689:14568 +5153660981469919413:65519:49411 +4013996379096055067:807604:67699 +3419724788887383939:699923:583587 +4730701242075964189:586515:52759 +9760051305537743309:569917:27224 +6763083458379331145:345482:287979 +8728881009227053151:1396893:891818 +8292162256271824532:6873319:1790287 +5607527510476649225:1879088:542825 +2647018518893693164:5760661:3738240 +1221284686721584271:2726166:677219 +7698302874986646841:25985147:163758 +5297091404339469096:11885967:2786481 +4111060772138121387:93864906:81755973 +5621812792110628608:48265133:26734741 +7528649263647787891:87134044:59167863 +6042766042354132676:281551183:49163747 +7526858026796372245:840643939:89375536 +9681144621966797570:547250483:158013732 +8292662934430057647:110934606:59359437 +2563423563266721271:448757156:232056651 +2471542208508813653:4043491341:718891049 +8582378154577039259:5064406366:1559084977 +2729106631682453232:7055681051:6259121898 +8155420885428293428:4467213997:3514869801 +7043883542435683531:4236884250:4047734281 +8726180818034672892:46149362690:7340517782 +7863960124420655310:39486884716:23557457642 +9554423333853909055:55900206695:30092502675 +4340662037720024366:43089932073:14112769235 +7485837216400083890:56308065447:26573500085 +9445486378064357697:427911264077:355709884584 +6222747197641930858:458464263624:285866788258 +9232685272365795206:177374018246:103695689494 +2333779420046407835:994689298004:596186800879 +1245990756803010845:815595582490:491859542905 +1412732088306703797:3574303945076:2751231195101 +5891530100106347428:1430756531881:914309658296 +4804042370910825260:3115253900321:3100718010518 +3079300311944777008:5890661388211:4196548582446 +9699732347440313827:1096735570360:67095957227 +9657029798968164897:70060173807766:5501479507223 +5337308155172174012:79580929548135:53953167403967 +3197923592873256770:78153207532091:50647075157232 +4964135401437126327:85463318296869:84021481787331 +3105978793160595627:97574578412298:82387718737989 +1672296138208039410:353173278614762:20663967141340 +7595365626448968653:815755308300679:683706169647163 +3020755329292408741:726720996211424:502869037730597 +1379766117336261038:862425214027141:748200106862579 +1902115526057357016:238822888572413:130041466659884 +8680794922301821936:3276378320955539:1668750090599125 +1889688224596813482:1254285030305101:734968957331376 +6613051789610134014:4118389563985088:3036539414067774 +1331477015513123038:1241807415330299:259466279042510 +8770968650057768766:9852426935332064:2308677612231806 +3873184250904566263:88149726331575520:82746018646818903 +9466291046053500305:86651485826316007:21279090985055542 +6536116671735783652:39142368807507894:38483449689473248 +7787775154461105063:78830015947344081:62433591621385125 +5709282449494732459:88374387648154821:53321640012823915 +7027973433165262609:971734998474664798:225828443842609023 +7434107297446724995:824207722062249309:16237798886481214 +5068922534542079203:944190866780833392:347968200637912243 +8898952740563314013:538419313906293854:284243718062612349 +9726762363416884140:686801885794481647:111535962294141082 +2702641390124076442:4861640605647376083:2702641390124076442 +1977075653410272322:9387765475788983832:1977075653410272322 +7854504730372620107:5175942802090512544:2678561928282107563 +6488314028570671102:7223260084902514356:6488314028570671102 +8673634593830147636:7844831376159173671:828803217670973965 +1815687535180067484:33043725620619747175:1815687535180067484 +8461189463731912367:17561107611549842851:8461189463731912367 +2496707557164743408:80886975536629779754:2496707557164743408 +6643729807320002490:10629608853286357605:6643729807320002490 +1084813087824455911:26167542957200378702:1084813087824455911 +4651704623724417914:5:4 +3949078508315543054:1:0 +8617610469081886443:3:0 +2053335313182213952:6:4 +7735993210699978560:1:0 +2880939536240594059:59:33 +9740880099591350252:61:26 +2946735921441916316:98:20 +7671817727531513498:44:30 +3517747665470272312:95:7 +4489733022410086151:410:221 +7341182383718420849:411:341 +1757295739922992001:388:257 +1255248759493351329:116:5 +7596763548501810572:165:32 +1991571747748871978:1084:774 +6869032273244996189:1765:1419 +6173121985320229043:2103:1400 +9085070134703376710:5309:4705 +6974474217929037789:4562:1615 +8016729678914606299:20200:14099 +1764341451333393848:28952:9232 +9193801779135820245:86192:30533 +7482997844849555292:88683:69480 +3189197882849941014:86057:28874 +1694575365644473317:299561:145817 +1139862739359569938:347307:105226 +2322414504730043012:764258:68764 +3167022046961017372:133394:69758 +4323436655436416331:182526:78867 +8358739810961086138:1043946:1021810 +9100388554469684636:8210714:2308610 +9547101812823085890:6284238:5713908 +8608985471419032316:9271238:427488 +6897081916448893636:7264184:5847844 +5044979329971386200:88440151:83245329 +6298745644629700392:36198573:14798226 +6347374377153869939:72671418:6848429 +5695747713951432680:54237937:24489878 +5126061666181690386:70978641:18085683 +4640373632881374489:983449497:963488373 +9665236873439380147:947728009:260068197 +4929389669648074848:814596237:318349248 +5336470348778358630:719756691:246401769 +3604953808027072636:843895256:249114788 +7226458596894368623:6087866157:61286512 +3939292521606624820:1357651943:36814966 +3641243606195252725:1120064236:646969965 +1435789781091928376:4261995920:3378553656 +6684336351567369074:2892211376:2484794498 +2520564359225579127:84280902991:3497415499 +1124758025971883074:66910009034:38100243700 +1851928759385152766:20787142063:7193997899 +3065901667048844541:44741217808:7911380205 +1131949165120664497:58174808346:33270533377 +6507019080433319160:555650503392:514594855416 +9471261625319916070:449302122379:293000061189 +2508714341110496161:206785864831:15775099528 +4198385725751235297:513429857260:469905485197 +5778438168683339888:747392812605:533740286588 +6158345144738877945:7564916798788:3586016725937 +3476265850355042155:6508849006835:246237584850 +2603024832755894412:2625961228593:1375494654267 +8474497636821112446:5197699873500:1436670760446 +2113095911542783719:9554315318840:6209736216279 +3464503483528821449:48003216730336:15325667011657 +7180740092260366617:59559281817470:34839218913537 +8370540566767792472:19267797678537:11953483285025 +4504491532380412752:75269716778189:50601506470236 +8025397509723095033:52511692086523:35608139784943 +3908781934129089232:624162912315741:273777207919090 +9319004558938142895:295688663591223:80637197158827 +9012098191607371869:704934249935066:218740437488125 +2641767757968634989:889233327992446:744773831070369 +3286580011967179703:267136872379534:262207954152435 +1186842237089460704:4717187449061033:2828187375141421 +7641181802420666851:3622334766326394:1677780238301905 +9282285880209710174:5683114863111974:1759308747856632 +8051257640869297493:8016411449523232:2780545547972565 +1470640208886588778:9037596452582137:6549583568282584 +6741589800884451035:68968136445090394:51680565710682817 +6614094459498166325:74965719224995316:17111167698578517 +8046564216432409467:24307430225732866:804811714830821 +6641640440886891052:97152831116341991:35247924975635664 +4507861823629363431:59390853965801638:53547776194240581 +2892119072743951633:822339358769671484:425100996434937181 +7593165130607314774:377651309945134325:40138931704628274 +8720693042878036676:572289719210789408:136347254716195556 +1060828361120631248:700121608552052386:360706752568578862 +5096942811454358950:584897977054613816:417758995017448422 +1881497492230855529:9516556143330981149:1881497492230855529 +6460287004043287245:3495039334133524486:2965247669909762759 +2226507316919551737:2599187118681517262:2226507316919551737 +6025487860065382117:5247804887035488404:777682973029893713 +4433074204171768638:6638112444803228564:4433074204171768638 +5122755715413429090:24258595959821072003:5122755715413429090 +7694339974713496430:84118155472986425056:7694339974713496430 +5719191440809209258:31418248787487545711:5719191440809209258 +3185520643941507238:68090764843540902340:3185520643941507238 +4243575712589492872:44442990543662814223:4243575712589492872 +5109477169345223497:1:0 +5733379946825551492:7:3 +7287106016702674225:4:1 +1777799851492364186:4:2 +4603691842987357121:8:1 +4790091985721487462:10:2 +4828451872747271538:64:50 +5093433777465023033:39:17 +8689257654609145502:63:56 +3367472005891163185:92:81 +9698271873775423958:294:236 +2135709607414423944:595:344 +2659787768245405078:279:172 +7811673629349840495:456:63 +3729287294169770795:475:45 +7790059194311040278:6927:380 +6183320538507425126:1176:422 +7037272528837709748:9861:9768 +7240670584430891555:2024:1883 +8459902630618331824:6120:1504 +2032161004713956065:97107:63814 +8790585560629920323:32905:17438 +9071917292615217906:70620:15606 +4029682118597910314:19916:5610 +2066266183385358727:99529:19193 +3819727408922608270:390375:62770 +1616506927063340364:165319:112241 +8579842433274142667:193568:129003 +3337308924495053318:631519:105496 +2582112172925065406:639603:255902 +3891861000525290041:1860232:1206377 +5852008206368922676:7828416:5284084 +2729246617235255351:2959391:1529369 +3106841986260913195:8110984:2426859 +6933296334400032841:9847152:4716025 +2787821562015982244:57430291:42755276 +8657568488069189854:93952846:81669454 +5949177497667941835:25906769:16293687 +7021167840739946464:11816453:5447639 +7564743837572491258:22398125:10980008 +3320124852306866039:921157717:474801553 +6566433431797993939:697337005:444612159 +4696347341203318804:481740820:348922324 +9703007219369818434:703648349:449621141 +6047732963471243502:255873488:20503902 +9577290668870751943:6300694234:1450004299 +1384205639824758865:8763858972:2762936257 +6399950389981301774:3627138519:1236564209 +9100192360526564923:5159968246:3646251265 +2820506059168784649:1000470246:885918549 +8622278653932741524:53490221418:26769509042 +4253320272998703566:88845704287:9793976709 +5117950164823524167:90244363546:87635511187 +3756997795131596099:27671478717:9907132637 +6512799303795406997:53766461098:17720761321 +3052959938820938675:167874879861:132159662111 +5152598161749092577:957497498192:597271013713 +4783760278619589892:799181130830:287806843482 +2735479778529093144:219676106538:187126653066 +1273616508078542979:547756094594:329221114691 +9725648052555185864:4330181002078:899353968772 +9111490904660998216:5874055569598:2474379186898 +7160313057532516987:8454349511603:3190874495373 +9706420698705922969:8535786358230:2456162827849 +6059685038685210317:6834702844901:3322881759212 +9715037323967419738:63344843668061:28685127908351 +5894860624589758636:79698970613364:5962142903740 +2404403144384208089:27949951781755:8542358734214 +3101332469411668842:68284236208059:67313550253239 +3980426752010640587:33152099236242:19957211244857 +6895607071713205154:734571911332804:180540032174006 +9820685551390433728:319877288306733:132923085423895 +2904399465842287068:738999098137138:133010163334728 +5894091146128692531:651630963604571:89080325347836 +8801057088288259613:251152231020011:180608885034151 +7384099634127554636:2666359079709029:951342413253335 +1015656949656131221:7430535143209196:5104170179680565 +3054127878847299132:2260541804722564:135900667115168 +9734451781714921269:5866905513825709:1255534278070038 +5250408486866138232:1435212518403528:401094546032808 +5190428986286016908:70174949217696079:67657693394203141 +6436316811079028126:78246230624019137:20125899909458892 +3231155245163674835:94243315349467912:26882523281765827 +5600088653508789129:64106406404360311:22831296329442072 +3047196180890138714:96019938177595760:70578097384670154 +1600304993751776921:655086880793442800:290131232164891321 +2360396732247531201:497321214634273706:371111873710436377 +9612504075719692626:724705010482635703:191338939445428487 +5989900236344493410:988893275132695023:56540585548323272 +7649511341265294503:685510429971998310:108896611573313093 +5737529805758750401:6748168865183109018:5737529805758750401 +1772394007600832567:8962106115531051278:1772394007600832567 +5844660841950772950:4866806377957814528:977854463992958422 +3380988721978358361:9668113310565781671:3380988721978358361 +3262557525443925350:8886759792747665371:3262557525443925350 +9353973782622414967:81103234390696823496:9353973782622414967 +1591897946002754182:40728630987861918796:1591897946002754182 +8127428293063488943:12533410391194225495:8127428293063488943 +2162710501113395177:93763139781219042038:2162710501113395177 +8765805568390496149:77487499781521730272:8765805568390496149 +3310452226429776833:5:3 +1271494400102295456:9:3 +7471856019478411041:8:1 +8209327168769501598:1:0 +9239061907812445635:3:0 +8599442393606076217:63:37 +7768194497119767625:71:18 +2527247658704358666:28:6 +9892644759639538100:18:8 +2996295855235314427:87:76 +7187273729699745145:485:475 +3273201969181174536:228:96 +8949853388088476927:388:151 +1932006830197209761:462:149 +6100097389363440786:300:186 +2455829345225337898:2446:8 +1991490950043926081:2803:1317 +6793975862812243712:3120:1712 +9641306422940868273:3334:1989 +4562409273865827267:3162:393 +8697717951768838513:54470:1743 +1025934941378027492:86844:16436 +1428748182391618150:13615:10345 +6547233430897383233:95723:44735 +3878143293092789541:25685:13306 +3822392854052856703:892100:743703 +8321263408431601885:256862:193115 +3344844057895453746:237065:170461 +8208336014508333148:967554:322396 +1792634780471910666:547026:229056 +4259589249561791954:8121233:1077351 +9304099832540823684:8594530:1407234 +7603653659998031504:2253597:2116907 +7983038529262135899:2183850:2046699 +1330426336283496693:3438995:64508 +6132931532915702935:90099675:86771785 +1852742277106625947:38723062:23568237 +5025186621575332089:81299095:54485519 +8476775682315070740:49485712:49443268 +4571592530343503015:95538794:38251629 +5152038821596359319:413060695:141713349 +6297103465875699210:490106397:164782692 +6716666327838118922:426759361:324540941 +2371097054393878980:793644904:340852044 +8618238563863572494:873168279:547988690 +3493892833678448445:3359049992:710193629 +5491020271432697674:7961463721:970265592 +1520314253307926583:6361762272:1561360695 +4563166692223963919:4193448229:1155937688 +2695538608859779716:4257588580:455980376 +2805222782776214070:90098896025:52059456845 +5705525739290062671:38904555177:25262581968 +1935407730471209854:16391959530:4010489764 +1237912039709624268:30587244293:15258543252 +8689330290916895118:26563794127:18278643661 +9422166098075691072:983191948616:705228946616 +7361393702945378203:152419236355:15677106943 +6102724781129384211:560026063509:361468156776 +4471407059524535574:808418893966:119216103342 +1429872454188028715:173258833285:49006414580 +4721238040227870613:9129601057855:1797174025188 +1668526906648284393:7266295988520:3690284379393 +8362796101358247658:4332971778003:249856671547 +8714512069241241216:8523077283919:6469525420476 +5568652553980041506:2314406992320:1863491743586 +5414169217356893556:94047407701363:48050804828372 +3790342446354914235:48721369208575:14807404613535 +1982977772154419618:83724386097934:49411810950762 +1721694397770693026:28960081152866:17573232809326 +9997197725832086596:92338988095827:24840649280614 +3175174443512320118:371019674105509:359092191479605 +9891801757262590162:325201869201983:136501745873251 +6058606903948746474:482515086572041:147476950199678 +7463906309474859655:525309327834761:311379598575367 +8384348080783800439:407736390645278:64679944948925 +8301221769950064523:5848478249929641:2231133299903944 +5013676454522018317:6309251028597979:4131137815222991 +3437766263923626415:3973334274855131:832116173938100 +2237801838288568088:5998257406091064:451825816601216 +5582200949121446122:3359256896926627:2475243326318675 +2726411925997965721:39284141021064630:15806195544506251 +7780464838318750308:74350060029378780:48058595263357188 +4521679351527156112:46393652247902049:21495083480657359 +1698454006597961737:21853509636148240:15733764614547257 +2416108992188101482:21593057321358882:19279629517265580 +4146982029406182430:236083007137202365:133570908073742225 +1490647446818604004:343809495424465131:115409465120743480 +8915710398302761524:235230598136294323:212178267259871573 +8815375570198025470:774372351933014364:297279698934867466 +3574265671275326184:648310252576087242:332714408394889974 +1210972516151251244:3571949645885241262:1210972516151251244 +6820710574545728585:6798377577079081273:22332997466647312 +7223335604331752673:8111945075354281072:7223335604331752673 +2380450073383499957:3140949056835005827:2380450073383499957 +2860604211350146032:1463113614025035665:1397490597325110367 +2511415047121917139:26173413941219671773:2511415047121917139 +2931089782186557589:30552500700317404722:2931089782186557589 +9423995272792615775:29180710676095697440:9423995272792615775 +2547604897243254228:76074711737849487414:2547604897243254228 +7349222028066173575:28880251019534362432:7349222028066173575 +7092201979625018753:7:0 +3876237205500400972:7:0 +5054419131317578569:2:1 +7545039612564564497:3:2 +6583658056125418509:1:0 +3290515890619854761:35:11 +7167816967563107351:40:31 +2966519277575549506:98:90 +4133838425862575260:87:1 +6787515332805795520:37:23 +3470562465129682316:764:188 +5642431677918243226:814:700 +8249180219582776707:283:134 +4959458590488882096:854:22 +2552668285032387317:442:185 +5255499509843797015:8400:8215 +8194084433515049032:1826:766 +9605473760406715001:4803:2861 +6220447034618723067:4773:2781 +2919501179432456199:6200:5399 +1154414493513274414:60809:11607 +6925682907441864153:80823:3663 +1668709533388507389:34787:16412 +1142714091794298313:81061:37309 +7620390683092220974:24741:4192 +8190508985278506666:401397:33819 +3257981153240851794:804098:526546 +1787843117806030410:157614:115644 +7151549260599094288:283905:229018 +9559799259104050934:838175:203609 +3592293419329590941:1884926:1658461 +7956936761253858110:7026251:6417174 +2525146744634021188:2209374:481672 +4915232100942137932:9590401:3294865 +4466636757842157539:2648735:642119 +9821833964928718675:13687568:1770243 +4554203678972357936:51603967:13197321 +7897961906865178132:27406518:18772288 +2017099242839902790:85794202:65210688 +8854849634682692680:61220013:41362915 +1661790620633403460:237861796:15831424 +3436867622954302749:135027456:28237341 +7861945426241636920:252626172:224728972 +2227716284033242506:341712457:209604721 +3455259558771330059:548198186:251320975 +7223052910701603039:7402310973:1379257539 +1412880486187684460:1240201123:753416519 +6223753398938395037:5293164494:120125879 +5171673671619612230:1531523465:95479425 +3893000219460288395:5519103891:2306635034 +6605277575305613818:20097329189:11323299524 +1365931984078019232:29781918477:17983370088 +8150860667701358727:53083412875:28807734352 +2486816579336882984:54659753481:37039262684 +4512657840426970197:26623736534:18929580371 +5317684336345015551:706037046162:404470064481 +3088183460860732099:160889149314:63025294693 +9463437122746211092:282986610856:85980177708 +2889179723558894406:993754370820:872362188066 +4119678008871528924:788634528350:284696987074 +3244115202474040987:1215263015894:963120405337 +9909605884177738612:9732056519771:7457316556259 +4163223555801231001:7676993828197:5156757654295 +9793422266802854895:4276484694739:2897314776338 +3364953503662392737:9740391312271:8699751316264 +2673373516803924935:59975690892956:17070941304191 +4757524198951128215:91814415805633:68429566448687 +4511139744985922041:48637798966697:32528623741988 +1589790233790596968:49714084958000:33225003672968 +9932646330645750650:26340261947035:23293300269535 +9689005372896155212:993468997846416:695705897906380 +9576371498975086957:831157096847414:610586196030263 +5336209525977122641:996234700623537:376469437458469 +6190915162704772019:483224608888167:324698238464582 +9968622273807859046:740612859224851:713801500589437 +5142952867262776837:2600034263685506:85093692845969 +5593806943258183193:5491401940993394:3559767326908101 +5922897421350624921:4969106985743561:4691001330043770 +7801059136559330080:4344793217670798:2155310840247670 +8275521376943501398:3511489190413149:2452844330122354 +3140084212579394709:16959178808799491:2636132951488874 +3151473368999504606:37306906836070996:17693194769540942 +7621560373091772794:98803979581773631:13653945295203207 +7804640993996461934:48020368388155577:25341315115258460 +3888262668462053531:78008160301473293:65862813689862174 +2224167997894193872:496539403329648122:238010384575601384 +6615621401549503144:847642991456587086:682120461353393542 +7269741641990108062:555505404886449909:48171378466259245 +6648306869072001112:278621077228941319:240022092806350775 +3883104526528261933:247835897451900199:165566064749758948 +8297590859426860613:6650746086232842189:1646844773194018424 +3758748375125893210:5181683734468724495:3758748375125893210 +8604319540081104796:5889697218144392680:2714622321936712116 +5282097650693981918:8114781320555697011:5282097650693981918 +3955388029921247530:5545543167574359617:3955388029921247530 +4031312507194950871:17541320967458861438:4031312507194950871 +9310083535510561091:58746282686969157947:9310083535510561091 +2891048602768271809:60510734308683399530:2891048602768271809 +2426569167384431739:83673565556516254891:2426569167384431739 +8069942374881355275:10496184184764107199:8069942374881355275 +53838776070315785637:1:0 +48762094978176847542:1:0 +98974797379490374729:9:7 +30906304363617450396:9:6 +20176295514498274441:2:1 +95622359408757882436:71:67 +93935416939986986745:84:45 +34083200881887475375:57:25 +20424406089965811649:99:34 +35716593513565431380:51:41 +75546416036337739935:939:87 +94022447806149934274:844:194 +21781717350123025511:723:104 +68441860388786894476:337:311 +39198374162890478085:791:151 +33370141825819608969:3940:3189 +13619142577501580918:4356:1118 +25173543394019463700:8851:4289 +29088481935548823149:4297:2089 +22013292847497700293:9014:4099 +66273276884246138841:93130:12261 +96028219045501812064:24329:16680 +89118820717538828134:73073:48967 +78521906834141648806:20549:18393 +85862647815788502415:33212:12483 +84909181535009182161:690014:316711 +46833610923527715194:448634:7412 +58095322446134467193:796242:182729 +24465115767253776886:137278:25244 +57050369724124210641:960406:659203 +62826905934918211311:1294799:119718 +72851902055782465436:4555083:4479113 +28003982801741115347:2433785:809092 +19990999603641379907:3028044:2759951 +99142710813940238781:6986171:6795695 +49148841355374157480:97582515:29850130 +33418327989447221169:31295428:17429953 +88353689303496823756:32642142:23221852 +65669476239250630042:76646877:11044282 +73280697802442281311:57401562:7195341 +17318832813724619148:866884332:317723544 +31224236979063314913:847689136:638399425 +23669089070063442510:746546321:637415560 +65334085120176667161:591421581:158365734 +19839757788368806208:979187522:601433840 +63944857547862182523:7979792014:6206081951 +28176422764759911260:1764421549:1570034271 +77032274944324423003:1613136789:1446761761 +71590254890713191297:3317690735:1424564342 +98634769829656329096:7632086318:6744580294 +24626437945683789626:48858552387:1940490080 +25796284485219520433:88759716042:15407249627 +35491660254958465083:76744369636:65019112167 +28249249129932606492:32506846318:11171183692 +72241936433715246930:52999042823:29560507647 +14801939143336809940:298522019365:50425139470 +89965191130839986985:656313309406:49537272039 +65525946813968073519:935722447712:552791019503 +43508508039928002569:889641632689:388361413585 +57598896874635324343:914649596214:158045866123 +91888308175315944298:9018310275018:5281714990822 +85153777659664328486:4026589486758:2756697370058 +50015841908408589961:1071558755220:121127263141 +36168175927723428689:9830946629907:5304936016805 +27264234723646270729:6058053653770:603176308349 +71913566230397336969:44515138082987:28384403083274 +30240042355475783410:21050172279035:17414754752495 +80504560811188873534:90720709976362:705974974716 +92481598810353867163:43221461504853:32527958835121 +68858240022464728372:93683699613858:65020381801366 +62934743123692246934:691545054322774:685455048199064 +30747155974701101851:731707992405571:54425826602860 +68429690399274095350:547286595276414:258245482947274 +23873658213130082490:972257217507847:854494442407252 +78508250869368653736:112696448644854:73064109432300 +86599241176569068381:1287750716601091:580986578900813 +74402748365712932733:2260892666828493:1292485720885089 +68802111439146435938:8160610635006901:3175403253607 +88294137565513214051:5583860705333754:2132092775895803 +63168125985302220619:2402186826176013:221204177782771 +25682614891964915402:33649704972607462:7889997865421896 +48900673349045074672:27317244707653725:2805322344906922 +43968675926293945494:47974466202309984:24064884978000150 +59759941130362145728:50534333139890992:28359359010993184 +93731529272931628082:70589450758529745:59328116362656467 +54665581974347724104:883793136846640431:754200626702657813 +93047915238463000137:851089315593315257:279179838791637124 +72169809799079835264:664445256623732102:409722083716768248 +33712070914385713644:600966963293713332:57920969937767052 +82035229170631996007:155002870626781627:38710609064515324 +28151207474788927560:1804246784438971634:1087505708204353050 +55599401862646493683:4636752753873641067:4595121570036441946 +98569221594491633946:9181719847509609554:6752023119395538406 +18803703621932125095:7349698287060353777:4104307047811417541 +42198876243011764130:9102859349715158254:5787438844151131114 +16974143763246342554:61082972501690104035:16974143763246342554 +89813441769731186067:92855749326948858096:89813441769731186067 +24032161772788878611:95475936727079316428:24032161772788878611 +65099433626999906998:91155373737107029797:65099433626999906998 +66105231109706730657:46398872382231616556:19706358727475114101 +19346190144209901737:601758992072905610604:19346190144209901737 +12270546258637415440:358631715730057361166:12270546258637415440 +81489301303813702457:469589175468422486276:81489301303813702457 +13351328705609758379:140411479985450685753:13351328705609758379 +33632815060147406452:350251650960739955295:33632815060147406452 +13326065469289169113:7:6 +74959558113426773641:1:0 +68936219931633160599:2:1 +73265790954787125861:3:0 +66108274725794335608:2:0 +75459195734138618507:95:82 +72390102343534843233:96:33 +59667508335430515163:79:34 +54817856889475171647:59:22 +39186111478557368340:25:15 +39696156838463099222:375:347 +92047828654152644460:556:384 +63499228381807466068:501:46 +51238900088460115320:758:380 +27847003663891203614:857:28 +68805121135315913474:3293:3127 +60594978350200555139:1937:658 +63085196413440882997:2736:2581 +20847226622810216508:1433:1231 +75819008745889804964:1865:1449 +69764559485079673550:39183:22715 +79599960536136479033:22791:19958 +16842747219246120207:52504:27951 +23471693204969197998:27820:7258 +25349758837898665930:26756:17254 +17335752791526880093:379229:294694 +39090490605440479917:897186:440859 +11407971887516937143:479204:285883 +99348729110797203891:779390:38161 +59424810755864458800:140626:39940 +57814437168388144371:7560322:1278019 +20117566784037191972:1873731:434765 +79694566771740093318:8549699:5769853 +77969393821305808985:7692735:2283005 +70743754139271075337:8167905:4364752 +43501932835124873597:33311815:13221847 +95181536361114766150:75319457:26233501 +74481227174848144359:12863749:6614035 +48360012404475874588:55407358:39876830 +69179929840702794675:45523788:39700275 +83415924967505819865:711285862:665389173 +78034629725440442467:709636043:633454968 +41716109705964079615:693315717:204485413 +77920956528205548640:434613386:184358216 +25966693530261301462:690943299:645239251 +87506058354676189591:2026062201:1858926823 +43982681695710511435:7302885315:6247915630 +29220976877265143849:4911873985:251936309 +87633274432563816882:1141331322:876424806 +73137665073145678131:3412629363:3044462547 +35764122312885989534:29099683583:8724695785 +82252291912537882950:63273989665:51923732695 +78374279250580542030:28172033311:21849890378 +43800609839374260959:98657184668:61130033939 +39314011019762914388:60060567135:3222373193 +49975452469401334837:936512053331:146870702733 +76476037222252141976:717294193462:301296057410 +53724741752792964068:358933966997:183688525934 +46480194181871539810:614894108459:493390342016 +31488134571104217648:498447340388:365731051316 +91604618776409638774:2183793599438:93998517476 +87103643370968883146:3105863637379:2035311291288 +47016341721763915960:4611274713685:1470943199155 +16851925339602889611:1625446697790:1046229708261 +63426169500584648409:5683852477248:2868449443929 +35840351625913375071:54398680909657:52701990408906 +55542867108621714348:26977817593389:19001554265922 +14467245292517158805:11203319968909:6100466055290 +70591069668839016999:66377165452253:16245015187547 +52819602416927394733:60799101352349:18322466086889 +55139422465873194924:961599634430787:337827977437557 +15730971592175441051:383873297391620:227738364245071 +16490156815706379001:517492615912063:254609668491506 +59700981923257457065:577002084460902:307250341309831 +53904092760550467759:988826892834885:172351442381754 +56083872306259690595:9820309671955600:83769721258995 +68127471799636581954:7619614040109096:502667021154618 +36731088043513259293:4530071704721738:1266661629407589 +25106902393835070215:4065732982448062:1001227218287365 +81353518185460629273:8854916650460728:3398917677921137 +23437623959241308873:32882814431839545:25060083771552833 +63927955086447057147:19939595806236274:1610931653562703 +61476650358979829676:36732231889938774:23626407112260774 +84629564541385933538:28096835400444573:1896315246879662 +99552108050786422478:86949510766962758:81867733381027326 +60134105739129420398:143356599243069671:67690656283228249 +99999935344061948299:198741799041046177:32810426415721268 +94751815326600028300:456854752833151480:182881490137671940 +99577915322423501323:676329985990786877:157407381777830404 +11812985125100209440:343560367239341229:131932638962607654 +30056842123743687333:5039248833110062970:4860597958193372483 +21767681327698764706:3743546746595431601:3049947594721606701 +76205112748165370886:5390329167758011502:740504399553209858 +87195142009286737349:3930102980959501088:732876428177713413 +98766944767617206805:5203143021752918316:5110370376064677117 +47058722957336577749:93408185058448439530:47058722957336577749 +64224833763281985710:78736946869377748771:64224833763281985710 +89573606698890613240:83701199717852084635:5872406981038528605 +40290903822408839701:21347292560281521300:18943611262127318401 +90896371684220017132:62500806316789560481:28395565367430456651 +35338769947895995049:343138652270281652903:35338769947895995049 +38278078581052662671:281446552527858565462:38278078581052662671 +56484201087543413258:185468548753570748830:56484201087543413258 +18657189650386565391:300990047155804119263:18657189650386565391 +89651895031551960607:649972810647666933489:89651895031551960607 +84841559974394197086:2:0 +84226361132934552157:4:1 +74257571539175035711:3:1 +68431993094864591954:7:6 +46415483232668082146:2:0 +95184845359083100666:97:80 +80964066743815530349:78:61 +19694637938164508468:41:6 +54498539894022179550:17:15 +42921428031135127282:92:86 +93878591041600024966:948:574 +89455768171870444347:410:297 +80238090961099202004:101:75 +69951550038562403570:918:686 +20375412332168354106:947:140 +12916280230830828376:5295:4636 +42654691834587094972:4228:4168 +24145229533731208217:7596:233 +56764222556660940964:3666:2476 +83986752527596432929:9536:7649 +68841762178246168861:43154:26763 +55550860460360480170:52076:24042 +63096189861695499395:84989:21335 +14743677177805058083:79937:58659 +50713074521575471585:80910:55765 +81429595811011970903:105013:90952 +97780081753473306828:516257:250933 +58792082591657573919:114248:9391 +84625098900723147545:960387:77645 +94629509201170120253:357780:62333 +56007767781426157528:7180530:2449768 +39921489688921282831:1763818:1301647 +88003699235286335061:3637587:315576 +34271266078269300432:2082125:1720182 +80358138450912434772:4829541:2964156 +83297664339037657579:14445216:13014091 +71639942280885019037:85911978:65450279 +54355154803458791829:91645117:26620393 +61058875174624938613:33324516:23408581 +80951663832732667192:98441166:20699650 +35420712078601257715:791320042:772413733 +90333653522146936851:386334641:133032618 +28437845556402969098:101484290:61162758 +40101555964953702910:879699651:222087907 +37224754584227464110:112736307:110138172 +92355300994910786395:6563319313:1233687114 +79946357463563405505:4387683151:3386616840 +20955465604405997045:9875720814:3883207739 +49746532073272906657:1649612332:393880865 +31024422290228518099:2328642102:630874147 +77307595103723541212:48926583598:46290438484 +94899755948100148546:10502621887:329484906 +92386089383541393604:70491536069:2866764903 +33833883205822753470:15679794397:10515717041 +29338955334035602610:11952767196:5464966262 +49716598880242496265:889820339768:719012445265 +56618687869983456792:217859296529:199051760111 +82562070785050396208:620295081368:236675282432 +19429860017664195669:419101138329:154832475759 +71922142146033601000:501468820987:495305581454 +47890097918367709408:8660165299846:7342120918320 +39595692410882992006:8927678024292:3016986060994 +20335287717114746755:9537963819293:5487684576207 +68997379922564248541:7473600352053:2853159200750 +40589682321593816733:3790596116331:1851498166719 +38614559612047531298:45841646361955:32165640184868 +91070951990954114799:84622804886193:58618042980585 +78606801241401410121:75612279787306:48337678730603 +89710016856323885749:73460071350779:63502253115496 +91422875400082023363:28978497485952:4649531384259 +20742687115621208644:198087638910321:138094765855450 +57123190322349431377:766117341171124:715247289254813 +77724393951540593431:708675348207850:425136844644681 +51774950903230680667:938764786540972:195395922992923 +60478716341174736839:908125184779950:303410384406689 +55215551307034610785:6248848549082238:725527343955817 +95813447077863423583:5569994422833989:3973010695978794 +76271632387094922076:4185112314285837:2145571549828588 +14198807036634613378:4522012822615548:4208786444408206 +85111439287990803617:9281587377973923:8564619347903630 +38886345348947664451:62234457512996682:52043860837734883 +71942449232980725333:72738962921396387:3614903719698590 +68503626814604796051:96502352003924836:83459243822087327 +72976305282016896463:41954432567456953:17547047209255196 +61571065023541658600:74840045435292359:52547675731339502 +91329659998750384680:502921188161480971:300924941522328929 +71210669154357984593:495383902910629677:370771038137940782 +36739552772995903236:967210205950843355:952775152814699101 +66659196104752950553:868279461534659689:669957028118814189 +78859145740195784780:621129707486432561:596802596905282094 +60083595775895092720:3105868141854607551:1072101080657549251 +80089206371273619646:4801214395252475759:3269776047234007502 +78802014416590472165:6835361889449011695:3613033632651343520 +42314326514575349113:7678176282876180238:3923445100194447923 +34958434414621002750:4351972094936591105:142657655128273910 +65218465606066997020:89102437333455540260:65218465606066997020 +78907553080388444401:47438803449057113533:31468749631331330868 +47535682509667367342:16754379079250058760:14026924351167249822 +71764994343518689455:29684216894708223455:12396560554102242545 +50774311456612843985:70530680004105358517:50774311456612843985 +45438784377830754164:544616993565854846128:45438784377830754164 +53459433868125250164:677918942896724042517:53459433868125250164 +80935165781703940663:683823399830704400172:80935165781703940663 +82723379200691355776:703023443890998949256:82723379200691355776 +86600177426320033248:847917581416718994116:86600177426320033248 +41396259469988787278:2:0 +23571415848350068955:4:3 +93533538849591288862:4:2 +40396330223215821886:4:2 +11024944392550316002:6:4 +26600314433550560186:22:0 +35708424546382569861:49:12 +34550322604292817191:62:51 +43482739978772714926:12:10 +76420990853760657481:99:25 +74361531820323275369:861:611 +88803952428411573884:634:130 +78112686626589031125:534:399 +19235204763402755965:504:229 +61340246737695725923:279:172 +68960541525563354671:1522:247 +60679323955813241069:9417:8237 +68926791514189871396:3041:232 +50956576219909350829:1690:839 +98523124655280691999:9041:3097 +20815808065484955349:39640:16029 +49002987517154183080:50156:1364 +13394985375876258165:16827:1479 +73556626535276169123:98302:93257 +86985026897899320639:54847:41243 +62453538360329376896:271412:254640 +74881985826978989693:454970:315383 +91134788508910895256:869634:839754 +27967573010239422368:947217:150146 +89251476997425518482:327123:72349 +16501728955876395543:2579066:635485 +58524448416181338791:8929191:691193 +65237124203450014911:6303117:1941867 +53599498186694645646:2408404:1664214 +18122454757546918313:6201348:3169181 +18266690381135187226:20170696:10400898 +55616049695394028457:84634350:80524457 +70821445546852894766:49120201:17538250 +69865553317861846322:23766700:14522622 +53999260870283735325:57894141:9886437 +61409213943106195290:883212555:309694515 +89976128854873430321:581657539:414428682 +69558905138707251452:208491214:129926836 +97772239826370984963:691305387:388321281 +64340370901511137046:138509984:58369654 +44419106467352686844:8338611531:3680896292 +49433782654943846464:5798183006:4287666226 +58506076444860094288:7178571706:2146668772 +45039943239068466977:8231692136:1837774521 +53142675968702574005:9402781988:7242855765 +22130921965720095486:93787309230:9325825686 +18162244336787636157:83699359465:9028613602 +27507020601523102521:38693901045:675294366 +54200911147092525017:72005663322:59791558889 +41213282959775395101:69202586036:1487398089 +19666701324688222283:246629281197:35165420951 +11922998111615690113:589118564010:106356555043 +98588842140065141661:437989114269:5792431686 +91596068945331000221:891335121418:196125628107 +43906806077468304373:283176183619:128626746049 +51882937065385719675:3700111133039:958579659909 +57464582569624740539:1463562465955:614725529949 +29137774508602902711:3694821923718:2387751145731 +49283664171343134625:8089468935521:6517683029342 +31963876323797657217:4334985228923:1457861242253 +68761440159408665101:99988967353773:27199892510731 +53447545663594871648:40909373531536:21875872529152 +43991315319253961072:65152110942371:23641966580533 +58211033199820741408:90761502426781:54480375625686 +62913172029881906915:69343724951539:37411723876080 +48522607407921525399:992868830458798:114794569608341 +70886761204522449457:937973264493747:369713672013679 +34348060330965027895:188617932649854:168941628664933 +36063651615962924467:390721177504562:86932291851867 +67040955437942104518:384698667697203:288015685932114 +41319330904617232308:7405482968236789:4141424824186477 +83229323984100699731:1618175446699866:88058539791887 +79357348860071463336:7990217036954438:6503466076939558 +28647516454234585350:7463079031361248:4219131870115526 +30338292191086027289:4211035304060262:1993860635899841 +34052574382750566977:25526947047340478:25153968645709803 +45467074371592440392:68173984943223028:63200399405903744 +69102116004897068879:79353909103142244:64215085163316599 +14381243139343541175:17264253168318152:120250134520559 +44583867598926726365:21079844241283530:21076872853343945 +67832565436626278106:318575505378217902:294558296444082882 +13167432921637710768:673329323456992109:374175775954860697 +48301287848630194735:483997102466597094:385574704437082429 +79593612898700359947:890122764197700138:372686885105047665 +84249079487526192607:538240674218639176:283534309418481151 +72486970027463419669:6658496456237581426:5902005465087605409 +64680044375509682612:9485362218393781486:7767871065146993696 +90282978889974358413:2611737665455640696:1483898264482574749 +88916967518034868946:8240241076775705678:6514556750277812166 +84076165289725548633:4060183953689363434:2872486215938279953 +62209187262460192446:46347952978069058147:15861234284391134299 +27659878613177934948:35706466523711090873:27659878613177934948 +85590131775688763101:11483173633490918564:5207916341252333153 +36684848417806197005:21077322037986576161:15607526379819620844 +88689382216487586693:12078677371484451403:4138640616096426872 +13082991421305606901:766783401289809978036:13082991421305606901 +94678112616497918133:780009487513444223031:94678112616497918133 +92886105923451007039:379218741910130019034:92886105923451007039 +89610600437114088912:375607452375659151573:89610600437114088912 +22818551688253562445:769198650272851983519:22818551688253562445 +31391202167671413969:1:0 +26694360610096864782:8:6 +17497350554337322073:9:8 +54795808429198382476:3:1 +72198928322929476844:9:7 +49610778179996044548:43:37 +21106823569133962599:50:49 +40679361279213833325:53:13 +52478052619056075475:14:9 +88312449289660672610:14:2 +52748851333373351927:157:110 +86750551899878059882:925:257 +66118495554485200034:984:290 +99888026697864665015:583:437 +66421918495997278056:615:606 +91074282293142433932:4198:4036 +64262032785309106266:7306:3418 +46605317435529931145:3868:3357 +52231159119879210071:8817:3770 +22762962282145619762:8986:3608 +73400667443103749543:56083:40503 +53364774970180968508:34629:31252 +90398265568938214552:12332:11672 +34173984735342944267:30003:16760 +80435067384613723344:92198:74 +37101922024424681856:429280:221856 +54704991808178071461:157525:107636 +57439296695562029124:592144:183556 +45708578045953032778:783375:59653 +70059031122248490978:788899:582579 +88570602518834106902:7048124:5757354 +85328173701161906407:8536751:5635937 +44940466827811790382:5429210:5339282 +87642537243237834442:1065991:529083 +63486007418259571848:9240317:7107852 +33678701883575224218:74508397:71664224 +40286462029934206575:86031694:69870429 +49135528864568242860:75405568:7553708 +97316099941022789088:21362641:3323109 +35448852392403258597:96284605:16911882 +34022764617234086982:839326317:184980426 +69471833428061093817:434517698:70449535 +61544715468268327668:713725417:266241150 +20019319593751482074:987311097:475365671 +24953448859668327166:662629160:335394766 +25592601755976389215:9518065058:881598519 +14533476356771190301:4071736377:2631679330 +61734665565701418402:7352017619:2284942650 +83394915136940794465:6615328466:4545157865 +47719040926545098326:8374848779:1251650220 +84452285617146912405:14913703057:4046262919 +22743263371698628289:19214479730:15406992529 +44328869169906075242:96141772365:72257335967 +35209595523437702428:22722548978:228544324 +12894667635644322635:73184051875:29510155760 +94206152061154434596:517907912808:80700818636 +85864481854808691907:266527967076:160751756863 +25796038417002828735:359482001368:36806633015 +45113018198576399784:347119972505:12250090964 +79009396439353235948:117746488126:108379283810 +40443932568438087209:7580871117145:320211746499 +39187109862641199849:6826144733656:1396642321721 +41625857977269956193:5836895773990:743685627253 +24361782272850795642:4783889813742:400292769096 +85444056767551503051:2501518902630:807875934951 +35276150104366826642:11978892161085:1713766214627 +57971319251611240523:83111823982826:74017174260089 +34348060049775603333:91635404352834:86529989776611 +30156148841140074033:35573214912803:23095258714873 +37505667362600111658:96226517613275:34951579594558 +52187391175683365243:434466064932541:196388116405405 +40056230957010262132:754787384620365:419242592111947 +75993031493256006088:589707642982179:356080357509253 +38777080096581708283:702698698639594:57809552992581 +42612302064398276266:130343671469988:88300086859330 +18188255719410772202:3653841507642437:3086535874363253 +35615926186539301937:8358675930596533:7966722198071357 +71130899775003988514:3900538544665285:678874487851254 +41453065788162699248:9119828643992621:3444601216236803 +85513772943820100563:3691590774485198:1764243644974091 +23434434844407220307:37853745622608039:2966304012844166 +73951791161685093473:69255007327167177:56698343597715614 +95367946197512553521:22367721764075689:14348317257891314 +41376454770279171707:45774549405920129:42036656733295220 +61991944568734565437:74070008264915135:69417659265512577 +92367003863940305021:972313887884262136:969498402819664237 +87761151135349352727:602874923854121962:344287176501668237 +96208525747484264904:649295294110565376:112822219120589256 +94114895211282464676:134486003879710594:109178499364759470 +22840998200564294478:334142375436220186:119316670901321830 +46301085423120490990:2262437187327683301:1052341676566824970 +87089482106814564421:9360314860833457292:2846648359313448793 +96443483264542169140:3244578792381571825:2350698285476586215 +58023922485371044788:3319966166286364569:1584497658502847115 +26187610488222615237:8982974178469001243:8221662131284612751 +41392124871863921719:70836745443980473815:41392124871863921719 +31141071610922233389:21048495821864001370:10092575789058232019 +89635680228987388528:86754462617080953142:2881217611906435386 +28841574652755629958:26022189608908634466:2819385043846995492 +42397959358527675514:12002358973209598033:6390882438898881415 +29825398334028872614:184086440055199165997:29825398334028872614 +95795979577715296577:295227109224515024569:95795979577715296577 +40970415107326370815:745346826344351794986:40970415107326370815 +57475653494751580613:471603587110474320447:57475653494751580613 +88733979377863620525:343773792174051199716:88733979377863620525 +163126205627702602369:5:4 +493933167176004497801:6:5 +518390769454797042982:2:0 +317309442684030164607:7:1 +922366976596680708422:4:2 +503593186895932487981:51:23 +988306818883143474383:83:26 +445171707032653798859:87:71 +426144487537269053459:30:29 +412782494752172215529:66:23 +204552212642644684279:250:29 +664510627450234121091:510:111 +380371734495164905911:975:561 +544983008293604869122:448:386 +751335504288301328698:399:43 +496587830195293556067:2434:423 +951379603442582046839:2993:629 +740224095259153741571:8143:6990 +695758768754299342202:4569:254 +730929553586626423640:7824:3752 +764766228698602811704:20394:11188 +303135433051348669094:85865:24 +305010070226916675213:18617:6231 +679084620069047007254:69847:43283 +156237284692372232884:47148:12880 +320244342000691034807:813326:271105 +429132867738550068133:664772:85597 +904184408351889068361:564468:149973 +995062641824724862648:634566:299872 +367590807386321750767:619929:482941 +669372777821977279015:2799854:1688583 +213070496217896934549:2298869:1013186 +893219616788363565450:3727065:3309405 +474260219291620636117:6963934:2568435 +976771234006823256071:2468437:2136225 +140560227095272921651:23166635:13068121 +750639352751391821176:30885306:9315448 +602006462735326601052:17813352:3984852 +866199221985598684525:96349434:50613907 +868990189175070566545:89254533:74773030 +971156979205149091119:847904813:443738080 +642875986361265489471:515919746:312988969 +693751183874130166187:522417977:504640438 +753523006479755328033:627837088:252653505 +519094269331445130090:218375788:185426694 +612499292923674688790:8418200293:4732160334 +953648519172201046083:8886241407:5559636606 +546590187349735388892:7275667461:3787095933 +604635729935697021097:4875059969:156887916 +225064780538327618487:1122540940:633193227 +530835888534740469525:19602764667:15012980193 +487766341424977081094:96671768035:46178033904 +437953521222763872703:45441767806:14389492503 +346287497747334437207:49868262644:25568110411 +206207266099406402626:25729584956:23087015126 +188724568876770166504:643196229084:501211849732 +469007977676119933148:217381570653:185969688248 +561464875311359436655:708799888153:539631555729 +722925547570788210422:612395584299:299772358973 +297791277517583156688:367456087471:214854903061 +262855952548072659191:3964795408187:340112374057 +838905671974982863966:6160528257265:5788003773611 +599142412438251986858:1670779751480:1607921785338 +471682020356967352336:6770926377928:5272178533392 +626029386804519105090:9872055571580:1764284798470 +230580471856982115428:70208968064084:38522981314460 +283025153544742436559:15999118466360:11915384583999 +418477184076339675308:91311222570302:42505987296556 +515669801977868993033:35624577213140:21240442408213 +917396675695265323342:22224444687031:1854935668960 +740157495113075814987:399423600432215:401753758227 +425443645357839743405:270365957168902:101012170258637 +122742848657786035820:856072282423725:60876154769045 +488079194291133791635:771974606430556:565299234052303 +312491143116895288605:626819644539267:238446156354027 +106419088798911625322:2518646276508218:1246323886398386 +191169263998465214671:9928743840507373:1230093336254929 +839502062397744114158:6943916172296171:3428915653928771 +400000130093963906072:4397030014389788:2309684924891712 +357914790304737290516:2599944022133541:1296329789769374 +317690697835643203289:24753847030671842:24578891031454903 +107119131934157224252:76523689251487433:62490671326305485 +237361317432614852547:22280651611388002:5535816498467241 +452364606613996065288:94020095097114956:33929101776011972 +300255167572903000653:70940571507352338:34668953787906237 +775130456292155494977:784431344977604669:112287454282082005 +333589813647699237969:570714020318357555:292825781778425849 +164822967187629646389:383675520430335646:226168923015654255 +392170573531087938751:789131710081811185:761245330509590991 +603607547515795307779:619939419047074509:406492782991810522 +922502172005768836294:3347933362971570664:1820497188586903694 +380755245600005822824:9355246598296396882:6545381668149947544 +675305533675832695874:9638184662751702441:632607283213525004 +610445689178935499415:5194136542112478408:2731713751775525679 +843608134504174619437:2446767281293162046:1920189739326875613 +440318409826413797773:54797608032343208210:1937545567668132093 +351758472918183562905:86296126975225450657:6573965017281760277 +233003536916087567059:90176621112244269544:52650294691599027971 +386548956793843020145:31900822744179848206:3739083863684841673 +212796888788620946961:12082866021653290726:7388166420515004619 +563838379535790596662:725380929056565359215:563838379535790596662 +733421411109882396817:507384231609030680958:226037179500851715859 +515750886822846729137:598065726296765624959:515750886822846729137 +311939103235783092768:947520728571130895721:311939103235783092768 +388751795092068874005:852849753827423522247:388751795092068874005 +954072481424996912028:8251254479123512763519:954072481424996912028 +738959891097011210967:8148806209702817060504:738959891097011210967 +799576690137949810493:4072957745286572999518:799576690137949810493 +694108662518873864788:7491815902231137498558:694108662518873864788 +832087622356925617272:7141833207502438607206:832087622356925617272 +755379256260582111072:4:0 +620036300694589486686:4:2 +295113932740051081405:5:0 +788028064383877018683:1:0 +623462527675068013781:3:2 +376683840277563786724:70:64 +946988202424550773755:14:9 +610450868095883590243:12:7 +641809044038667078221:92:81 +557448213534760393833:70:43 +957008663731577074200:632:264 +679168297526167388939:609:314 +370062153845274902714:498:212 +767757264718464098035:931:531 +282134611674319016525:176:77 +554160425880201460136:1415:1141 +401435620820061702556:8475:6781 +460008694968483573000:4678:1596 +679183517267930899597:2936:2005 +187546666509416090602:5060:682 +732694352779294531509:40534:15405 +418753824703001994117:72134:23725 +601415716887242478065:41764:23949 +256229735068089554052:23914:15054 +671346762449434577350:64560:7270 +751753558724525921871:887517:57591 +900174573361064239905:397480:184345 +843455857625570005043:157502:53785 +456024000522379253168:129427:86008 +536921398845042070895:839199:26969 +641088551742570883626:8761598:1117932 +108784724822203343930:2694346:1211134 +511994126630733253410:6275978:4423752 +919037658022257474557:2940864:967613 +336166987968696543153:9342101:6710067 +239047416344611469378:90296408:51682274 +851897028868287772874:31195760:20634474 +969405430327399982916:65968019:39944748 +334337928936693718459:55696414:1189943 +330226060128237320994:28427762:7828998 +957920182743572249489:355490542:95108059 +189220538988504792400:113363153:77451920 +886166611548523518878:547827630:32921378 +295216660309451193557:656480520:143495117 +805029337046899199786:608906962:153556896 +333234838869693903374:1777647437:1397886718 +525760972368511626222:6555552953:1589409473 +484631334490083631340:4121485546:1033718488 +156631179277794965209:5562689700:523441609 +666361043297998191547:1750452992:1427424443 +625569443605593962073:71956032391:69114337469 +490099840600307225004:38995998947:21116616771 +927358843410400640444:57820621684:23854238648 +484647895440148349634:78778319805:63523918779 +747473583268277529177:71131163067:67114005276 +143681501541996437541:696861544558:141251509129 +473009851495236271414:431845721078:336986223774 +220920134462336312766:219449773022:121038393970 +375935462594756004750:629030219631:334002085182 +769355191525309686813:747987838450:375546715013 +176224756114127439196:9546179368253:3439308046729 +438866286199763703774:4780469744637:3519350598678 +669084428697838982742:1089904557332:142988410314 +234894298048008072001:4193931008247:2018113900186 +409018504773681116494:4062247118206:2808770531024 +800319606940449150093:76489339221150:24289995085293 +555455241035519949306:59760247657599:53605747768833 +709014386567882701178:52751898147552:20176497110234 +379174271294079613714:87154033503977:15742940190020 +787266811358744278129:74006915654848:40379047585521 +235466990519277576095:760316552010669:755944333440140 +901644927171616540566:936599863383079:843889720815004 +841744792436048811657:798950450597360:158853342417977 +829581879996799921101:379199537795062:225570862472585 +964024290515413760633:236761301855950:219851618018283 +379665567924412024475:1097481905886858:482438100594239 +266754583131086365858:5945837571118221:526340438498914 +750669463184500535214:4322436589360281:545583479254506 +946875666521487254234:6536590930834515:4714053591914879 +697460507422108720219:2679915270947620:1838496906824739 +148919565210930884937:72143643870072405:15084263101441017 +853750248134601660503:75746039462006270:16637358328991333 +943792420054753284819:68468318712356732:25114923628090931 +202128177462678898097:61581608147879713:17339521337680031 +703802391992065069887:76672621180413840:24402177046432527 +326504845665522201749:201404346411592989:28400132329966580 +195958491262161923502:690103052124608823:659327510897626593 +204486396732597898503:155614722715427267:8651084526469665 +391329046441390459897:976828422110583746:597677597156961497 +536091226723830295395:688961678739505155:79040664495284805 +281099823849711514003:4460759404626336044:71981358252343231 +422335242373134684928:4422716428644018165:2177181651952959253 +183940617830547348205:2342061438273865044:1259825645185874773 +921506215802438152318:5392508937076417469:4779696499447182588 +984248440430282987238:2119075906929971227:997219614776337910 +358013073842594539058:63585223162521642815:40086958029986324983 +546592021478765685578:23612161692049475318:3512302561627753264 +659687979096279541869:17390482044063011814:16240143465948104751 +805035884467116267526:66020324859824042399:12791986149227758738 +218147385685977433806:29215066335215616917:13641921339468115387 +833119255555910528619:645098441575353024517:188020813980557504102 +899969062421553593782:480953533014935583907:419015529406618009875 +944220329609346559292:561513532671122759293:382706796938223799999 +107313870193755574022:476167462031052698606:107313870193755574022 +491871331239386559847:509550792267253375482:491871331239386559847 +767431145020283249695:9938569104358441345640:767431145020283249695 +160427519627967153473:3205503580567578817225:160427519627967153473 +941437203195357148756:9563166123358688162879:941437203195357148756 +761082188526102700012:3463675826536021978786:761082188526102700012 +200845743012828184112:5432320649213310448974:200845743012828184112 +875986115250869108662:2:0 +447305270713877182765:7:4 +634639635223286674812:2:0 +106486507143439874267:1:0 +833651073966479310689:5:4 +635019881538468341094:56:46 +945158405637969077766:37:35 +557626507402423602041:32:25 +272862356013051426341:80:21 +740016079137933119232:66:18 +735836252464772307651:318:291 +833950172619466387424:780:524 +441142818298202394396:827:520 +777585972527160997203:884:315 +232625960908983854379:452:159 +709882974841061861012:1766:1188 +971200105708024648507:6060:5287 +445855618098129337228:8948:872 +247320498245558636431:8733:2941 +355705128248549288913:9292:2181 +376105878365983003101:93895:25991 +717655941497728587260:64891:27353 +377314973052861488430:67938:39396 +603047242641033058355:88391:12004 +942470923734850490750:58952:48734 +743382187013233137556:285357:242455 +951168108883007058590:429988:177178 +923674225843115646786:323218:309776 +352674384049318124345:757166:582825 +355497074606654690229:784688:176709 +344825509609972927859:2726912:1326451 +370142094577975066900:9456014:4359566 +333268739217514294148:9223873:7188750 +781646852647323785595:5356179:5212686 +968412323079129240976:7833218:3291408 +855965786186982531477:81514473:81165420 +769996266203502729394:35607929:18361129 +710772954432433177324:33238332:24822004 +203873999843499715427:39247903:19407322 +189957937603141058470:12291106:1556612 +547798169434301560383:163094733:47125923 +466126990476545239829:516700509:80642822 +132996201417926333239:259666990:48386299 +145459411804299018579:809234022:584596311 +743808976649598356010:124775375:40148260 +994667358702072567305:6270978714:3322631105 +853968637955170623072:7278731086:6796386718 +333552806486635294793:4117872157:415006665 +958330162735813914312:7948441015:3471973517 +136166264337497579208:8963278193:3641410268 +142091555458956070420:12458453939:3909030233 +784473297217494813760:60467453499:48507177736 +109041934565748142935:16957088731:10630605665 +771590178191002048675:69394336105:66089527500 +669325833502989483409:30633903178:10221126273 +710064778243306778057:855490409439:498183402302 +573054833276933885894:196786277908:47125767298 +534251186231675556577:231419449834:51154512563 +139772675173120499500:755981437621:473368301870 +195921379235679941035:413038243977:358868442598 +335278503626928795785:9292797106540:6165215052485 +127863301991524950147:7774823265770:4679798963367 +852864414063705082104:1251926246221:988368863785 +299978585350357846723:7189836919719:3331243693108 +940754731722400685084:3368827382415:3173114874374 +846699562601303948666:13935708643079:6126873522979 +423384347857731190971:67799326460782:63486532580595 +537899255752974689910:32405517941727:31032730275183 +836201711241279109354:75189320369501:834393919571 +860998414979262463718:30012171986584:11291340790430 +405748188522117032334:761457710409556:117326412250842 +864818118262063466581:792453794980371:612539264908345 +129549786693201848280:981330620181121:406200611340586 +175750125101606049815:641300940273132:319817873678951 +434262465403822444312:604306908648779:269165906069564 +513119702128455098012:7070305284614004:6436708162985720 +114682967635756969183:5793563258632963:5176494376099561 +271168779425736242434:6972589053941790:4791117940029334 +971382776793911297866:7623708002444363:397954460341858 +582258473342893886294:8265821624151623:5732316029410551 +650353761373165223497:50834264615772577:31014143586645936 +448006473568073991058:33255724501081431:18608814006034057 +143897229623204779849:23018370492310961:9395675768962638 +316454988534313578832:56366272567820047:14734338571834974 +757733582923342648970:13257077124862209:12082774718231366 +934380639111991942933:425925359742364839:326325196985851006 +852244661362618442182:185285995617951152:114367515661094134 +450412158746344146954:866845362389530391:519415666177874025 +463062864030495130083:760510172812277825:672678960630212483 +718640160494539294305:794976707561834541:776193566202703782 +539343745352694474507:5633855752031672832:4127448909685555467 +597183931414613585860:5419721334281153704:1014584643686678420 +793691719124327281065:3012978974352571574:1278248869600957103 +956406557463551079755:2320111109160191852:520780489552036731 +858089013766701630339:8715684627288999392:3951920292379689923 +531613021293086751992:32229145106372618194:15946699591124860888 +517539664259142170169:18145624547169715057:9462176938390148573 +754952966674090204753:89601986598389650084:38137073886973004081 +515097369803949515205:79589398435374655492:37560979191701582253 +345988260160185488874:92340650545348771021:68966308524139175811 +689018056775681681287:855572567522722155668:689018056775681681287 +732494680688536574760:266987271623750473225:198520137441035628310 +581986796902084106101:175224032909657652081:56314698173111149858 +822541225994541415918:847029522421039642542:822541225994541415918 +996617507382863355870:492602870563552124875:11411766255759106120 +485098337745732606289:4649319029515387012962:485098337745732606289 +666486093154886129579:4404033657662981446460:666486093154886129579 +729889403893834005257:9192595663454117724837:729889403893834005257 +414446826629668420021:2156948956448577422891:414446826629668420021 +820760013591364480545:9858012116714363071384:820760013591364480545 +706521087089271808506:8:2 +625073547569198139278:6:2 +333988865256576467050:9:7 +103098319496628677762:8:2 +913399474937799172997:7:2 +836334109032748246824:81:24 +329107730627651156461:42:7 +951288290044968957445:92:57 +907743261049895826277:49:1 +484461292385863892576:95:61 +271055183262421780232:586:88 +233124689426724553823:826:617 +520782085955367733159:734:291 +873265484772977191917:105:42 +617034008826754790041:797:597 +189537358802635710856:2567:851 +679707164894408352563:3336:2051 +837119584103729762259:5764:4263 +280433903676719890174:2983:1533 +240133995091982480292:5605:5272 +104134323512919313778:19460:2838 +562389908997170494855:45982:7787 +877025871488822874291:47737:45350 +893471030396017193098:78708:19690 +409451795048231973045:52951:46647 +228245529598806668085:229253:195697 +228353001180056054565:627595:599820 +660272339422535491423:451244:151955 +640169786820357512012:961183:652865 +177346919974644759162:572496:441930 +540826861709913157990:9942201:7226542 +153215112020494894677:5320306:3729585 +649077125883658131585:7818551:5068209 +925331317138410917543:9446640:2792423 +247046487791532200828:5293240:4009268 +198602950561884939178:99117849:29058754 +483035848586531743455:21069993:13946577 +275722256933493444549:47048171:13249821 +631196518421676322680:58628797:15645342 +496351784932241971070:45198185:30108630 +252785593125019501974:495391849:163985848 +375866981709692818389:356745144:290309469 +532384061257022187527:449823308:105591063 +906777697207996073153:228964530:136116233 +836484356645954933916:768955578:752187360 +145924153662527835644:9169570309:4708718704 +790623121027826335013:7232763743:2666901103 +854997996393095150381:1337985701:147373635 +271056167199247720017:9130160614:3928964859 +878972677252331889097:5795220237:4466240659 +964763394191387763802:35894976138:21068692810 +593630441954678992075:21509751611:8662415986 +490458651305066100494:79572690697:73011649540 +817513417426613883064:41222147344:40427558120 +988684907345156440093:21885638526:9272259535 +839072733825165366134:259238698439:30139986624 +731634285441334095949:759783425136:444855246349 +561353242131741987473:919995713996:120273925113 +504733010657869695460:550502682084:164614061524 +994702512045437516465:757833526705:171718755915 +115087261593426131785:7158900188171:1848268625146 +265699981023925922145:5588106756060:322198141785 +732886798706784592837:1593103939606:221556741081 +150223003645581364838:5073614596052:3069436009790 +967765218415416723560:1244145350859:296343058331 +565910367644675596291:36195463457406:15371359056439 +890459965122866682354:69863050902058:49839823042418 +807739844594499640199:66481093185007:13846305760773 +372659862678076642884:79087413759819:48129223274703 +511768666576033470794:32276077494813:20996293407932 +176794666264629786137:948549600503933:197524304737865 +694161985704366193952:137481517922813:66596271314075 +201902464533754130823:333099076474108:122013273626459 +683902822366933499940:484151327011146:340857528883260 +837376329476154776377:740093202811189:95435043415894 +983635588190151823669:5899809163048277:1705099253937398 +375539222819026370337:5437521444778250:2241756861312337 +556707767430934341718:1577447865522869:1176522065505714 +809200292330789836546:4644200207143870:4136638456215486 +714820951211874248636:4369208364096643:986012207067264 +501401221766544211340:36791702237389824:3903675395689868 +532666647656337520094:92093889042051475:87687326153840169 +418991283751542995761:85117874318363027:41106356560176867 +323729862564372348110:34885392083708898:28309419637483568 +172452847237426932304:18112164303815803:6930900796671941 +779032005183447996026:288409913299594361:36829361243626965 +289111777759609481346:941828777350998010:912171890204090286 +547740161419770542878:330881342832216335:131539032452508453 +202074665530442468885:669955556133065454:418043134389767231 +409466971510541762729:950944322269353109:560912934719925859 +728624835995420340487:7073281293534037495:76862761414478502 +325755796769841723479:1497209162153027835:861408582634683284 +436852563984738603023:7728064269657737133:4080964883905323575 +748553238700039740935:3673322031255023604:2868866355269949323 +139548701255649216327:3777529787086355292:3557628920540425815 +145007757869659821573:32940296423008225931:13246572177626917849 +491493560082045565470:83994397935741965639:71521570403335737275 +343831621249535688516:72049224982468203778:55634721319662873404 +361307513930310490358:94214634990579129464:78663608958573101966 +836652148321257936477:93855902060350082392:85804931838457277341 +422652383038513386562:759604323861335188264:422652383038513386562 +944699306258682518017:494716667057189840216:449982639201492677801 +993671203421593976707:433769918337845683125:126131366745902610457 +835372476770795585140:563346127487237482455:272026349283558102685 +159881100199986298138:768332339622456676619:159881100199986298138 +683997127341950843788:6621577029738268189305:683997127341950843788 +200600205367407866666:2564711695919253813020:200600205367407866666 +153907184837346357540:8670899399616770460947:153907184837346357540 +508527841731279651096:4905683003487401724489:508527841731279651096 +872175119169888375338:4415196989076377522580:872175119169888375338 +976654988185675796914:9:4 +456999468375689987123:4:3 +637424757346451756124:8:4 +245700590845195322960:6:2 +201076259827730265914:6:2 +265375946288841305480:19:0 +845440814459168910097:27:7 +385518558831993050039:70:9 +868283327082327299584:45:34 +211912955854356130415:97:85 +585941453346377622447:647:150 +782961349991355964186:628:170 +495731369536319335292:776:756 +535562575751693862449:487:475 +919446153113505845368:706:548 +236031824181929724246:5284:78 +503381376290982975544:8716:2344 +789450048621963867937:5177:215 +878388552099355689933:8424:2517 +774273014645194900543:5508:3991 +548483519592478264337:31265:1297 +815217682771468348504:90871:69223 +723403083944651452668:55925:33018 +653950834711166165757:42357:42129 +674508004112237429869:99893:30315 +763636390070412544912:660367:221047 +529676293044095736696:704797:175945 +322427123573586674111:152514:83069 +291341475512194052874:787940:353194 +676331607331509487919:998527:656545 +712950811646934675835:2963163:1192729 +202174906375843849833:7635761:6710606 +427298898785421950207:8686389:5938574 +241422319313333646949:1030778:362907 +248271184918001802377:2351690:831167 +673972192966406666120:83102032:35702936 +107484709304204527558:63602089:34077775 +224973664627638523784:69543165:5003429 +979845994857965649151:76857306:39653461 +610587544288567850908:40727974:12050732 +131118284921265003206:297512182:112082034 +158917867894682643094:807222209:452605281 +279152975237032115188:268721253:172368574 +619594052656954274324:508428186:73025972 +254026064359055525497:352018260:295563877 +615656858002840645297:1720444745:693679977 +609210323231923711643:4006339181:2412355628 +495373354026933449333:6189744743:4014511312 +782164950836014742081:3180312279:159828791 +974862740914675555018:6917141503:3424939680 +353154958268613455869:45853032950:4453406969 +913539071760105628786:95416494400:74670151986 +299257194159404056152:25696033234:2315527316 +933328357325176531381:10469323122:9789610357 +457625637179637880746:70214927070:50212029336 +516313226506454340303:246670031435:184892952743 +131908157521129296977:727328981781:311969452649 +150513498783025566729:594182947019:420803274239 +124609254720665749523:437894749498:256090825813 +796759616197679863986:452454052309:205938750890 +447120868755786856234:9770013958176:35319863050 +821305315570740680739:4166442763757:2178350628663 +695618874135569545632:8363405890037:7572766533451 +379669054506973593823:8778701758362:488979425815 +241316365096495756757:2791534139324:2276799068093 +363726370106085316050:15655887509031:8543384557659 +246603923143534413117:55061032857373:38027002235216 +553055250512625105093:95637587846846:7847363578835 +890273138216343143334:32173601455897:18391935183991 +294204661853019501391:94485949247022:76730546466133 +965907790132105528400:605142966400457:372310486481452 +622475300786870296120:437152768647999:358925925080050 +161956697494707838884:315322495012063:126961622016698 +671721626239836047489:625607673326480:411312461206689 +979551172397741396760:432120681860526:133204935475764 +672756458563747919094:7310209996606271:5142786069405235 +837994067364382968253:9417203382331641:4224387601893868 +500516114405329523303:7322388427943193:1575801700508981 +693855814668397746424:2186066479105514:500266786708338 +405358643639008584626:2992482346855408:2969898668727762 +744466281481817548313:69466969372352214:58237687691223089 +533713030639290511371:67448157059199444:63211986904510443 +751800620857776649025:31352403718148049:1332100304582054 +636494117688026395542:50828655909877336:17688384542394150 +456463109148382325982:47183124020894251:13567370251341808 +190321591426030075811:572927737636945842:109582530564056267 +239911813551226245571:641717918267116801:551030037591678798 +688115544263927799178:427864605055965041:109259333936013250 +774240621305751662588:295744953946184074:276076828587940930 +663806242705106442783:678489490776580760:243520725610459503 +758182315735137782269:1522077242346888936:187849046387092141 +465848954004586932968:7670003837857850206:5648723733115920608 +802539648231297522760:6242766804068369582:3465497310546216264 +239201386469568656017:6014429400522050197:4638639849208698334 +844364363985717898122:4046501119300193230:2692131171277706282 +937167444507309153840:67174864649718102141:63894204060973826007 +689623717616101515345:36215880899649921597:1521980522753005002 +687454138743613873730:60279784230579082369:24376512207243967671 +764520542645825430113:58748220197664068473:793680076192539964 +231406879533918024400:40271266749172653951:30050545788054754645 +573479818255856780841:571212037183455309250:2267781072401471591 +442568560548363201191:354300189581841004130:88268370966522197061 +347165596854489678245:528204855477441027756:347165596854489678245 +821910668000902908138:856423607944909338566:821910668000902908138 +570786439456054436101:194345519355006263763:182095400746041908575 +985819600839496253681:7721270913236868705197:985819600839496253681 +314820824452568722617:9792512134362334296643:314820824452568722617 +575882881928150935089:5773482552432094675285:575882881928150935089 +246105680927728690886:1206850483595056743101:246105680927728690886 +275484531189986598567:3955034923991551061732:275484531189986598567 +1253802869427741106107:6:3 +5831808772406100989744:3:2 +6528890343928351466060:7:0 +8888037842215560416306:5:1 +9018682853222952012223:2:1 +6128428068942033947008:33:4 +1174608758135749078588:70:68 +4110705915721545462839:54:35 +8463203291431564285381:34:23 +9392152913953550656488:81:63 +7493639459297417202561:439:435 +1626185920367101399294:204:22 +7600207936117875995751:818:765 +8885304688456900278324:903:414 +6456193521131673161403:480:123 +5183243086189066240161:1013:741 +4173028565728233066352:1234:402 +1403514713940403732241:2955:2291 +2652979773291137211304:4868:312 +3998766933873354132323:9401:8660 +1915949733456246876536:41221:27977 +3313810692657267314933:88651:7468 +2420000943098409725153:28434:9353 +7850378318079918025413:32604:23889 +4579389559388763091697:54662:12807 +4954536150400673805212:561318:267476 +8003866034503228184204:582498:149450 +7666474945549883312088:959289:544605 +1507402212925831581052:708993:306343 +3762192675044969718680:353062:90936 +5794881913346531399138:3741422:2465326 +6225497144336273403914:6995115:5700554 +5042607502048879688332:7627150:1255982 +4292997600232406097337:8576204:6137709 +5610729957040355167523:5053233:1537295 +2960472592536585263374:93002372:80280630 +1874302388290285929623:41235622:18722247 +1753095657198107000044:71438441:56968504 +8707782080362360156931:32093125:6238181 +1721561390825586000063:71331248:62783903 +4414852800768597197645:612249954:34051541 +4246084987814258125969:647283528:597987337 +8643115670231796117729:389027383:264384009 +5371558125567042071238:498370834:180070284 +4959009160304247660009:173085191:104825432 +2049834729208446307597:8339357200:8037408397 +2835943457415457008467:3517281528:37734491 +1643900231349782616512:7355416922:1836156862 +1974032862015084923245:7871177522:200398287 +1475248054087478410538:7669560987:5674873640 +9985439719680893526972:79851910233:32772302121 +9640634981037703950103:46862077006:17369788239 +7872690449665245128744:50917368216:8884665752 +3332824758255180087536:52130779538:7780607880 +9117868358529881330455:95964282672:70302463447 +3362042138493888256689:736479453314:730249809329 +8210825110553761250643:992672832014:4994748765 +7302525956736480617452:316994512920:142867695412 +4632846422003592014072:760658994913:171289709569 +7039563105898093322025:144931698045:15172191945 +8831271670068403271521:1398792261015:526507024591 +3815167776558937006410:8813190666743:4821338180794 +2984798041956226818089:8000644053839:4970846163009 +3141777659937433383647:2957378156682:1688617227491 +4817915685753673203689:6290297158423:1381596420970 +5311500330653441156868:63848885558992:35556281439780 +3217762490864280774200:81238997412409:25389122131254 +6829521008089349495210:58956256192964:50649683305454 +9303636690106278666279:94362056558734:4406074386677 +7804021764407172742437:69337512593614:60893040239743 +2239221187466573595234:377831510117143:97936754785733 +3938340066691121256538:580580552809704:335153581848034 +2812984063932373392486:130065189121913:96654523838377 +2032643701463330477581:703874100927643:296049088588039 +3179394116691813813988:788199670442418:1642073745832 +5038382251908022481435:6516278019922236:2603182169528471 +4090651229070568738760:7737660184423630:5632351881537550 +9027209890673162897598:1843939035615494:1664584558700764 +3507687630622796566986:1234022291394867:245711840832225 +8884168826693765940970:8486471545352833:4251782608480924 +1099940060082329462570:94291729029067072:27040958262067690 +5728982047262405745827:21705589692608134:8703795414857867 +4941919871428880406875:89185873949271732:41410025784465023 +5796146153666526310632:27184928941103220:20269204967671212 +2859700599307213127238:55393027661044224:35546305805063238 +9626504915944459341741:731021188506315464:417905693297311789 +8525624138159413927582:127390575796362058:9852987883195932 +3997456793713907979232:833845214636184146:2834748041183308 +1875689985074396905602:702551032849761597:581278398383203209 +2417872437976916935008:808795568125201139:382484850690730537 +8487034102263321916202:2126108159750619475:1736436698599591477 +7931144180853753681934:7177555505407277173:7122902884119682942 +8092425554549478139624:6648441576308302123:1272156182274455933 +9072111091085103175704:6456854377220547859:230691090233433809 +2292563702392520136397:3522249646254996844:3101432326772187797 +5410928296473793706159:94993915367067506914:91269035918013318975 +3573833935097300498655:85823938687154540893:55052448923964322042 +9728478175260643059483:34298873061002528602:21897098996927465117 +6298077621808621241501:85968102523026891548:22406137627658158497 +4611586981835661694283:98612534960857133943:75410373636233532905 +9008144304064114864682:859237225727971556973:415772046784399294952 +8035251096622655731283:792747294215746699286:107778154465188738423 +6662181410025128940571:902410665284426538265:345306753034143172716 +4873390876604457454353:506603995429912110853:313954917735248456676 +4648024304744129127613:210323922484663600916:20898010081529907461 +1090603108783239525938:6671971390588594337698:1090603108783239525938 +2968650935073739892102:2404962648499586732939:563688286574153159163 +2795118729204460950808:3148768058197233710117:2795118729204460950808 +3202360269547170383550:9171595396315063971487:3202360269547170383550 +4165504982158820071013:4227946645276652792872:4165504982158820071013 +3515753010060422856340:27322811919811134480777:3515753010060422856340 +4547900491945274074699:74794813483774021332854:4547900491945274074699 +6630616052600298139794:19801617787394532546000:6630616052600298139794 +3681545040447260302760:86042831722607551804625:3681545040447260302760 +8048727826295370155565:67838232318824405114253:8048727826295370155565 +1294460991905812667921:7:5 +2712314303550177034768:9:7 +2645901086070728522846:5:1 +9547900891444762090255:9:1 +9196630847417183739108:6:0 +3255981627327456782236:44:20 +9996507800923256789677:42:25 +3510105346306508343899:29:14 +6417347686652177078625:74:65 +3886197839757319356347:77:0 +8156903605525596448302:932:62 +1908470775679442735546:522:110 +4323647936580255184813:783:205 +9464815342510504754205:399:99 +6440695017874343776590:813:786 +3364348039039239161769:8618:7201 +2604123038600204868703:2567:489 +4000488324416556683873:7748:357 +2532919484090911186505:4086:569 +9583681966493940384409:2698:937 +6750491767329546745192:53862:51106 +2388441095279041955104:66214:23840 +1915962409958795110338:30100:15238 +9060330687088202052523:17978:16581 +8196756953325712465221:72813:23733 +4813072960716597295948:269604:230908 +6798714629122141496937:980840:534217 +9760001284043006445100:999958:645742 +9160204482453004847978:918550:886378 +1540214783301185374260:920152:301548 +8873131686609733965705:4074057:427125 +5030305961727364831370:5386902:875672 +4286373301181584256981:8573361:1464134 +4590429252756809389687:9516170:4205477 +7833794937276987575942:3862766:3280880 +4116026805775807599436:17266789:4757414 +1547858638007880427487:88979370:15385337 +1143172461497242658058:47518456:32194146 +7567212030333913921624:57256776:50569504 +6778175995219368738068:71790894:44814140 +5435915327225196674482:986700307:115882502 +5409473368245004426620:345474327:106628235 +1188975977051789620636:659404162:483615836 +6367882231600348597963:579670314:350590933 +2070624982175672066443:123631738:42203955 +5683358306860678996613:5686484108:1292968765 +3321996857970239845377:8960912501:6853959792 +7050603423197674286430:8382540228:1459878138 +5447975627998624497633:9862124450:5084170833 +2312967805907565539870:9070631331:488689994 +2251675044802690937204:66584059505:18251915689 +8627740987919660876627:80959573868:20352302351 +4573018925188597637559:47788150899:10534810848 +9521620523035229611891:74805340052:9773852671 +5212200938182533688776:47718976617:33742502709 +7217381151228233656292:249206552676:226735095848 +7328375592309965197722:391349673257:345581343137 +3737580547472788004995:663744737326:295365162549 +3008186038741610697264:971749527523:895735440611 +3786880380685778897148:858690349834:252379660886 +7764284306461543145091:3776006345166:2150294079861 +9507685052098024774514:2086993212919:1572602945893 +8175220861513811065802:4625558543105:1005531571507 +5694626876423998702530:6896176064524:555929254982 +9083476312035994764818:5178408415494:3151441682702 +6798835479013085071081:61656281284439:54654373056397 +2138724571237037717818:45553518390020:2238895043578 +5163136741029514323215:89893788045774:7433656323983 +1114667967592577606310:28021320202309:25295271248790 +7730962262302606766382:41374243394870:23851658987222 +8323856808882563379616:949784133856797:897888956595451 +9061370174562126101979:165737307128739:128504165683425 +1517932541402221896174:239907309108680:131687527930014 +4461304691823707421016:565771269927436:208501399958416 +8981539713728001325042:932263023475321:280425800920596 +7841793408437079665257:4418205004906344:872918898013849 +3082362361750473225583:2411047565212137:2000861190496399 +6139118048507242128851:2910072749023199:2386513160309660 +8721764088649686552759:6381309620867464:682065525383871 +7802262476266109476617:3090631170668923:1173486461390193 +3205634866612666871501:24834946338651247:14498058579862482 +6365358332981871859002:31537845502218006:11899578207272010 +5924648228404493889424:51072861888726578:43030726544661690 +4077798073228857134580:61825231366633213:53113211196937952 +6777417304874071561488:20938070404644156:15171735613994160 +1417852807692768838282:117711961663630453:12229454340031897 +1686763032624474530330:140340211121569384:14035154332104034 +1910449362910827343176:675944545141662817:230078340488222334 +5623814307193008928708:226315711185870923:95199935302363081 +5964403143882584358486:220400924501682743:133725942547650163 +8455851700646528084867:4985462432408941186:507415280963833411 +2390160828509781417749:6687730263759492120:2641124347642730909 +1107538995238364746966:7121201595732133394:3752747899884070896 +6692600248564579541244:1822271466489895861:1219423613681939652 +8433940755583260453849:6878910870640855369:396028177571771455 +3472572049592256614055:11777054181515702367:10118120226640118157 +8825838854659065040275:61052664838300665774:34255117943769168819 +5710120938561939282548:99524704993226886416:37212753948006756836 +6257313497301565421351:74942535772032012432:37083028222908389495 +7517834667073435602918:92322149940531110262:39740521890415671696 +4110685933305585019786:473554965835231170007:322246206623735659730 +9118383413418128612838:919035345894538383608:847065300367283160366 +5919304276527065761631:579845674719674847380:120847529330317287831 +1437757801312232577789:173202289174378616161:52139487917203648501 +2098695309057728376279:133839198300302580444:91107334553189669619 +5524439146037476176681:4688748644650653976141:835690501386822200540 +8880995971098974584664:1032754639590280245656:618958854376732619416 +7382207807165084758154:6298132908418711612658:1084074898746373145496 +4545211631761137971783:5197056051976404907728:4545211631761137971783 +4994765509218097593040:8353310033332529409108:4994765509218097593040 +6452880132567963799157:46294060902010153237923:6452880132567963799157 +8916109922883594809253:48949313020344217768938:8916109922883594809253 +1947120390228596835315:37735394524273906566613:1947120390228596835315 +1021939537777825388713:90207430590032855761669:1021939537777825388713 +7533113063163624903665:68772564504879680419603:7533113063163624903665 +3743258113446067192125:9:3 +9178626646798467852749:1:0 +3557641420721345977996:5:1 +5868267223358827476245:6:5 +6264859766812567728200:6:2 +6514789971324311234090:19:6 +8523925587547732330171:68:63 +8059223924382273251393:51:26 +4938098074639208307056:25:6 +3678053628939458710689:83:65 +1808302445029888666954:135:124 +5090061404753797716720:427:161 +5490381525032570496357:677:340 +2234741106247096683230:683:259 +1991384799612236918178:673:75 +1150705493875201588757:1918:1847 +7694100339586499143727:5028:2351 +8832159068341855465819:9793:5017 +1496873883507215214130:4968:4858 +3550161677144897749300:8855:3985 +2794622063152938156184:55194:52450 +2997007655815778888027:22447:20358 +2569597186311521835159:29389:22419 +5952064196640540893346:42583:20004 +5098544176117121729331:44115:39336 +1093865126407847849854:914831:149877 +7911111679588187260095:319914:144525 +4235677738955417833910:106918:88850 +6226935881733043843069:841825:182069 +6592832815668455122983:653045:14923 +4563963194858201190560:3844147:641367 +2829604538574107516221:1092011:99120 +2212015760166077230584:7039436:302292 +4813190330785986972251:9677558:7869257 +8992798280329732028213:6680562:2913551 +3305855358596735003970:78892190:63342020 +3261939232729007752752:96870934:2304330 +6782620338394626377973:24023221:6610195 +1162948681576242336945:31065325:19170095 +7617036686457840983276:83678499:41043713 +5995321467053612022420:294631967:241896403 +2215146605502143296109:507497566:311361829 +3049028634758762842190:230541054:185127650 +9188698938979043404191:900830213:731628051 +6065173704664366848554:308742412:302922882 +3909613013830953794135:2057832360:1292691935 +4190437010008988497789:1180675131:1108875172 +4237688046511758046144:5490680049:2210917972 +4951085156027788642150:5023958948:2844125694 +7833825239106764563444:9121352117:3645386608 +4428960869984226827981:60246127193:4772385886 +6113131400196529927302:27614841624:25959003510 +3509533711775870246969:44843506699:5623265519 +9630035314936648862673:89902450608:23617585137 +5959045262573136695956:53679547326:50782458640 +8911421334929505557109:844382610360:587175889269 +1314779507521681064228:139477818480:53594484308 +5067842487946066034987:512944005136:171293431003 +5170657604623267194048:403596649236:93808642956 +9803817814071350445965:100520931495:65401895285 +1343235127748675928279:1369701792111:1184529254619 +2421218905667429591870:3730473224497:2603506358888 +9642598366095027360020:4403650440021:555338097692 +5799044296595854201411:1941719852314:1776983664739 +5947225678500473107998:9359436120418:1004184510896 +9067265184867826210719:37129586891727:35976172436517 +4286798410452537464650:21012341019974:12440109512140 +9605335064555364865226:23045430162682:3203808892046 +9049784388364392785277:55970547490206:35487293289297 +7033110234276272828156:12809249944807:2556314834278 +9943547009333903069753:730795104255283:231571792801762 +6194435906691481955332:738650618852740:280748957551592 +4703159424175601711617:293437351028817:141233014195579 +5181184637029964042725:147040478083372:36028652649953 +1781092709698274027613:459557939178409:89352385510628 +9642519907757193163085:6553603817603773:6002802233834995 +4748632186978186229071:6290532982705441:3196328589399786 +4473079055514264252359:1770183211509584:1328167484933175 +7989363252295009960498:3414041254625031:1438366752915910 +3903905740268557445721:6388852458740007:3834207934908378 +2523264583818461835853:59603282016243389:19242942814205927 +1000549918636543106933:29060528151154286:24994920452194239 +1115368847256343997257:72631886035301721:33605298250769581 +4946135957025708553564:55103090605115469:27441219938940655 +2883787193795697376235:26088220898610040:21343884242164675 +4092774144529442328473:300486876068891853:142892471135290613 +2486338598035444813842:924608344806369117:66758851118258229 +4550478397855380179442:434331335273698560:423329528114064882 +2189322061937804915597:551981428354498168:163717083865181309 +3730155136885947901397:246934622937111364:207657420880748177 +3230225420692521772648:4053569644690749453:3583983518685208060 +8714457021337507716722:7717597772831389275:1289135810869225247 +8667315684681591537733:8615303681737093793:320180854075181975 +5829783297881668952221:5552406611165037942:5308762769544151063 +3798377229878946561909:9453150576189344268:7663848827019510441 +5080586849161076428374:67788249412450043271:64256392639773226320 +2545381761479267091777:93697326721284130430:15553940004595570167 +4189286473718746442834:84946602975774100880:26902927905815499714 +7871685108475002155051:60205953585083841119:44911142414102809581 +5248554009688271844638:65416406912232709714:15241456709655067518 +7913228423640197948819:374285836641271321246:53225854173500202653 +9413759210954654773074:101382196164568483102:86597163814354327690 +6707013478675252185243:920156689640434411547:265916651192211304414 +7011195158567835638628:829758363533702626672:373128250298214625252 +2103504589845530053589:496164395447650965518:118847008054926191517 +3589438976461037874389:6628320976770807910636:3589438976461037874389 +6868075790686359031082:1703396083439897839415:54491456926767673422 +3362471030685625185235:8876457842973107817320:3362471030685625185235 +3727731964437723310547:2050596499450470243191:1677135464987253067356 +1067033829342038891467:6526100819298955039689:1067033829342038891467 +7424610717268317346208:91128878086468100348415:7424610717268317346208 +8933037487501233033112:12767496228635614052468:8933037487501233033112 +3434822207943474135502:76225838319876880020993:3434822207943474135502 +7097391930733997773277:43735710296753421199992:7097391930733997773277 +5536729801391742424523:54465826886371388572823:5536729801391742424523 +3688785369205640261005:8:5 +3930844083950960789191:7:5 +8494122564442850528737:3:1 +4377933939622968811309:3:1 +7058553780041538658885:4:1 +3442605546007084872483:61:4 +7801112175904306025678:38:24 +6067697908971152225345:23:9 +7015721568884339166506:31:5 +5993114743618275909053:58:7 +1017362076940489998657:261:255 +4387474969370164939034:724:130 +8330110171853388129915:338:67 +9028939389278423925735:118:43 +2039572703611714972082:190:182 +1405878130770730845229:1171:112 +2112957731408090095711:7279:6646 +5053770957096305549349:5238:1815 +7448449380868788040402:2378:1076 +1730835057873201586169:9999:3218 +9753122336950679031877:71795:61557 +7046267377229444863084:79730:62914 +6025615926430051745727:57528:591 +3495430869464993082780:29183:8087 +1987469043638058295303:70158:4465 +9012208714538126723266:253588:93386 +6548269541719883823053:622971:77363 +4514754766852619434990:935798:575512 +8010250212211253895752:625757:502805 +5512806237458789912391:300252:236571 +7985243162564594746409:1203799:443177 +2048798500995162197694:9135613:7647199 +4708801921072592721608:8898007:248067 +3793158966585034634934:8105467:5635468 +8013839601089599500342:8795955:7080717 +4168208414074086317980:39962047:28470684 +5449607765922430336137:57159021:5318247 +7676725876669693506598:64461901:58427633 +5954795925773691531491:21413676:14846531 +8542687087158241782981:33950504:3909485 +2542938131360623553194:882788727:48828973 +9551207076141258035706:190045504:37683514 +2387255350301914636921:770944848:715777321 +1879195489158888921691:546177717:208476505 +4760102749755593435360:536267340:524928380 +2755167698075166749507:2929009970:2739917077 +4071539829499570724183:2362229252:1458830527 +7120626146373279281297:6021904832:3104200273 +3381695243273153157424:7738773376:5362982704 +7008991267231693824702:5908481815:3778980132 +5416671408463481408224:64283517960:40382689984 +7938116524806507028600:50918734432:1011993784 +9441919217312385805114:85336328557:49517023372 +7229088365063558720587:64531410745:3573454042 +1033025044513963422364:57168657637:13649437335 +3686713204127693717668:472785411660:222991253428 +8771572633893428738110:983260045354:114976738628 +6382356865686726814285:973680387676:743799507453 +3270760240746689333122:812764976576:515555704962 +9260274462865098122532:827503818061:249442107962 +3616182194586076571942:4809101183064:3763277054318 +9637236275310853077666:2664316206992:2183603205394 +7850607486799396678180:3964808492664:3776231592988 +7061892039244227500546:2435831558890:641251109516 +9968269812708805927684:7649696475871:4480523658087 +4055883202409433968312:31851493638787:1479122113212 +8275514527284140709207:46304311236916:12376669202739 +7103979125851163126366:90473302638276:22232283099446 +7639369105314109999377:95764375384931:11350304860810 +7430646097890529261111:51513712720633:20036930514505 +1797363496101756433285:160726545708865:2888312025455 +3387741342108594383750:328357290254142:44449660121528 +6844265679264251159481:496855012629905:433805086921201 +7631303499415936087016:174808548454755:131254076427731 +2526990592211874088884:481049591245845:48578924373819 +5441041519842796441277:7414323849810996:2891039747971697 +8191343670722440267834:9094967797751375:6398516653130959 +6095617718647205583271:1085203122097525:310934866830046 +2732135804495648737050:3821375485549940:1365971378084710 +4694223912535226950197:6645178523422718:3351804184727817 +1491788832537991544283:88739251855042675:82008854724177533 +8126767479094941534066:85193745100830614:50940181608433992 +8670183743282349111276:62782271178386037:14875818415787613 +1404000016666215375005:58007992639070446:32570822793370467 +3872940570060346736767:13730792879115031:5668991402862845 +5170006100978050482310:400269405247931112:126462795772239718 +6189205497360998285044:781138151360540836:247924131433241416 +4578178064991532975118:247786975171775032:65911717817483886 +3257723162015023776799:874684460796731867:398230007994304091 +6410536591032305420567:634979863778960557:414866183698597652 +7172353997517197950010:7320392747436171785:5689497777185772495 +6618977992987511515868:4882938720668330703:2596026481923413303 +8946216214204887361720:5316640722693534250:3626518634362753220 +9444057097147086937319:5718083118584295102:3501868364415723917 +5500325409452256983206:9791402043177664764:7348863229587050602 +9955350137342587761418:41934843746022825171:16792169535178195891 +3555667899469583342038:59958030174320225882:18144119184690015000 +4654378406847357587585:36446291927104529516:25699332105082339053 +7928219846601877299928:70018656588822430372:16111652064942667892 +3729036210307310370713:70891582701619828304:42673909823079298905 +9626436747282724325193:693825122748709116778:606710151549505807079 +4614165527750398224148:996514117053313964951:628109059537142364344 +1075166484635242287967:398788991933423538084:277588500768395211799 +4219303840666311152812:250627460612274826659:209264470869913926268 +2522810171719135027622:180437885025945721926:177117666381840642584 +2678360250534601716320:9508901860317761808201:2678360250534601716320 +9097427217933570486907:9184295117668936069912:9097427217933570486907 +8892986560604005710110:7492817857858430072925:1400168702745575637185 +8929900923490342629922:7027583293546294181628:1902317629944048448294 +7160392774785090853748:4609845787316568744344:2550546987468522109404 +7375877642775848537264:15727405366699825116676:7375877642775848537264 +7199187308734127555933:50762386458532534328409:7199187308734127555933 +4911813885216746969655:52773213154290915033597:4911813885216746969655 +5855129771503246382969:49593646707955974394012:5855129771503246382969 +9129604952516403444434:86559322782331820721970:9129604952516403444434 +5906632512888918055913:7:3 +5430390775488798326284:1:0 +4159316868372511096265:3:2 +4498176845205780326689:2:1 +4989922378806744658414:5:4 +2140053108518217738745:31:23 +5702613653214955909146:41:6 +3300846302766825892217:43:16 +6704720680019898883592:33:14 +2005376844481138105429:52:49 +1527100634308989488748:710:118 +1032283423310688421680:824:488 +3458857117448025936161:857:85 +6477482128691257527007:141:112 +5411886158829398032710:967:726 +3035709646917034523843:1729:862 +4367427184544586951116:7781:3882 +7955563947649883652432:5694:2022 +1960273287382579723205:5101:2372 +4755691170282821896109:2135:24 +7848110274109082649350:38136:3710 +5402536510916480100150:68986:9304 +8436805889843534464875:10455:510 +9703677523008863078454:98323:86479 +3751448333653978478599:16339:7283 +1715094920915499841314:784071:211758 +5332837539167938092240:620135:437670 +7586689619176397189525:171297:98219 +5313535217698175952344:361239:269732 +7298179518026286628496:920907:101105 +9152289137621138754324:9867659:4803567 +2106300547719709030836:8265707:2203402 +9076479778371520799261:6901087:522024 +7681994947343225791767:6486445:1836067 +4234524771169006851337:4013885:98072 +8125498498585247688478:82455149:66145453 +6413963722840458341035:13983550:1357135 +9614534440966447247826:15786463:12957284 +4722958127707271169546:88788416:59447754 +3308999671641196942033:21953373:11553595 +7224068108304903669824:793368649:103629815 +9314970315391989877593:116020707:65141040 +4260971230118301668882:870096893:789176832 +8884071720637024158111:158380985:114578881 +8781985841184189652406:860225324:484893006 +4709530796514934246891:1161648752:177269643 +3543593703174579441441:4208628150:408186291 +5129471176534491035285:8369893875:2091739910 +4495952431493317710912:2743745826:774207360 +5566862692264137172383:3566266785:699149613 +6935960201525346444522:94935162509:60005569759 +1281052185982007019491:59816177395:18879621606 +5935425360528234581468:20611790632:9475170132 +8599284704511758561192:45193809236:11429834316 +2377167811503963482672:64262454677:27788483680 +1803369246789042911115:813524118361:557937002869 +7043060798985925473015:617835457902:464627485539 +2057110889729159170985:323636541468:188950957625 +3950390969389330133217:764755523078:570688006459 +4908152541578807074344:711476790657:707888423262 +1060426254162349688029:7922875040042:1764108576115 +9037474076245743562962:1304402796114:248876155572 +9336968860128178759387:4783053700346:3629621649221 +3922938593715500039386:9496362707737:263026242533 +7428489818790675775987:3921065833078:1947709268353 +5640232992765482699815:14611023330883:14482098087488 +5069217975281277137414:60487976416823:5262434396028 +1957214060997030424469:97300384064798:2567175444415 +1515441135956337407854:94248296891953:56391074160181 +5763789540693579924144:75042225506466:14226402025800 +9362810009282289256608:165909630783576:126533265185592 +4686222900518183521553:236259775126468:101714360303429 +5603897767824748458855:925011050916724:444216305705675 +6067921324979705164018:203940198534945:87923322412888 +7938161743717633558482:275847663813440:9800237922322 +6006697254272723191459:1961637393274933:740161236526020 +4843552879449633483350:3380213642100012:808907178988394 +5683066576118036087966:1840992791184680:992420949869206 +5986378992316528167339:5796509052231159:5286079537554294 +7405415752278541755087:9479042043413891:8946281873550247 +7242977494816250218137:35550818879005981:31410501966679102 +5650159197073256648384:94895339921583501:90658142174998844 +3293576633672413724451:65206641157044200:54395471268226651 +7964684257853645548450:15752630883249512:12309604743035642 +6002579211935829792838:92830512317147507:65454996754842711 +1154936227907787699752:817081881224126313:399529738097219483 +9215370736277572947496:985598607442282123:23756692235097446 +4397979074170581254032:324724758433532920:231670705244918472 +5329068001611254814925:903284036384412359:595470979606309184 +8115388880330715941233:732014030723713455:281335727628579103 +6235075879926564969911:1061439898410026447:177916666069620233 +2624221997973117036432:2898690083112222889:907472756555321887 +1906210047498214046980:8040750153986148847:552261003496770241 +8246892817008497055184:5170519517240946119:5084706526428941498 +7060015498180825882942:2802610567833849446:239477807359128468 +2952774602415062215733:14816518394617976163:4287441886084959296 +7471042390946204941555:14903025659771151349:4626535400858115706 +1159118542350917292055:15363395128680677697:6863907699866464780 +6162273684480427432190:43840148164208078189:24652941491296485730 +3849760367610230483076:82185839012053209037:69211773055782867374 +6747428179976814599743:122249753595184869119:23691732241646798198 +4279676956604193388558:676703442237577411053:219456303178728922240 +3100870003053952130100:480788680696395803423:216137918875577309562 +4978733381507291548860:930789497571747623281:324785893648553432455 +2921978718619107083108:343229691682638385378:176141185158000000084 +1532430179314045772547:7013502746544277723872:1532430179314045772547 +1319113086093767558968:5038295255530551072643:1319113086093767558968 +4116803121305283887336:1490449048067972647130:1135905025169338593076 +8776466540110336537605:5257504668603549999698:3518961871506786537907 +1343828356529382633869:7860060986473512370161:1343828356529382633869 +5189769784939363829049:97396872456865932503689:5189769784939363829049 +7425454089939974482325:19332910876344114865111:7425454089939974482325 +1354469480753973462533:70839691260612404072325:1354469480753973462533 +2193842643800596452333:67257359447004782838031:2193842643800596452333 +2546430392678769505712:93018044672316560708067:2546430392678769505712 +50375893766511741653042:5:2 +35537516914512501752556:8:4 +34855190240518353584019:2:1 +60737967546827860805178:1:0 +76141208169508326274825:2:1 +82937250492789467010297:59:26 +69723184138849065787548:95:53 +75282781427587666076830:35:0 +27782766719087232630481:86:29 +79894142352292661986930:26:12 +24713285022109194581374:530:134 +62773038087148382162820:889:707 +33287361602449094750618:872:338 +50420144050640038777275:367:4 +93945359042533524213474:342:150 +13433198732435034899473:1141:428 +45788536482992637022553:3289:2009 +91176356590504399059550:7794:6010 +92690766713209473844138:1165:223 +33990598270763641805745:6246:21 +24675381941015545017928:50858:15366 +49096557856767224023456:51254:42782 +50930699661391690760354:45835:3399 +62883259408732644813807:15101:5396 +71613374822447026577628:36585:34473 +79741383534870587185045:636071:361542 +29669839525337214640320:411199:379497 +39304932114853697186188:439144:365084 +61321538540746370594456:499362:400430 +86918895394339265897487:649375:472487 +58073338340757351048462:7621869:4603530 +94810543402525307642652:5576953:2979879 +18317830585492679072755:4955807:1041123 +65934103539807692052292:6993670:4329812 +23659831240200400890851:4517047:152884 +81384460484666530983007:45616276:19626243 +12120370499190066794252:26989755:12580217 +92563964565354654674633:96483085:68145808 +61316629921017656872012:42761497:32803344 +57517290029470749928048:33823709:29337440 +15514523404588573502233:829160768:572549401 +32484485101425748218431:902496737:890137923 +84129761952169021080801:578280598:378255063 +85350349579271001285005:907549568:722323597 +24002460591738367050569:411200821:179979857 +50685291181421592997104:6298657572:2879720268 +18664817070098560937063:8507500392:5274454631 +86224901614308130651876:9215130107:1951747645 +87284622787261633281401:9741369201:3495060971 +82416606547495200706973:3224204172:918786017 +39678838799608624894345:11972302699:10366809583 +74953380348367030592328:83407152355:30383892833 +47477934863217640571271:28263026568:26299872255 +56196552427445702690794:41352439361:15899368842 +88893489395182252481207:12803207124:3272879399 +99366770942397095931960:318531524270:65921311960 +24485707843502964361501:140956171017:98267491522 +96665593692643764436485:238754167288:139818052029 +23652418678262436688439:241766834162:124265589975 +74986454942464435426522:438121448440:180776158002 +20321724329275856932098:8933643823984:6850337985298 +80657659248476281373406:9860898342589:9651420043423 +21441198309535984493880:4815400074513:3853711580007 +44171724360669614152289:3313870377306:2801819249495 +39919454706845774634042:7533397738409:1786706249029 +17017626942463839667892:94288978089137:7603230981197 +22905085275795835204425:45825736151058:14166050139855 +57520705586415155138605:67474099271293:27568260872989 +13598549056581013056280:42130091522795:2251820189920 +25147355749455404275636:41178748851629:36125207050933 +81657449770048291895393:644776394868682:507685612609511 +81863624357205958924559:169069865755158:92514696468983 +40221441916191080049091:164383312349162:64498431417033 +81579499565511356254287:971233291453502:716673830579225 +63748835354446352302652:419859391632375:213277618734152 +51985323033492583198573:7680884754229566:4331231779912201 +88305501417189462880309:2286734702351878:582798461299183 +73864249633109961972313:9278113518462035:314103338196833 +91951121700005152582362:7950985412462317:2906158634368197 +54862500336931230871942:5996454679199180:1030007977979862 +97331782759945922778715:68086935846377839:10054960181615757 +82669544739547714626885:83945075804857428:14361545095245345 +31171069018013010062116:92941164391072254:89539877633226580 +60829408061870181653533:97595012420722989:95935244694900646 +43513327469593915528052:16523535647671772:841980356066672 +29873478558717179245403:189748043068922682:115902075198959369 +67683502679724358971414:911277640972538485:178451771008075009 +66367823786667686670893:220481702674239814:185501289411779125 +43498020093715571253909:384424628294178242:373402229303171609 +34103129066466164772879:802959420817603270:639504921736292709 +53795560112841764891997:9864830956759502320:2636905632198741037 +43536656459933612017977:6396037064292475713:5228200359022315299 +68645230641478802405040:6313700771430497707:2675854486431334536 +67042033496995216197158:5884036829977756472:5201893058636711662 +24133312732704480052040:6554725355380186624:5368699550013089096 +29884244958094956943153:43646843749336895338:29803833548520531961 +19201612168703233009467:51542875793948195230:27662373354504383907 +34413203674574722312713:69231594311338482100:5101301839496709013 +95908127541877200356538:42337377527492277041:13967442107192858673 +39152964270182381355815:20486636668515059005:3001596650103597260 +71834457444896223361388:187754861804739976867:112100235485552198194 +15910683801139826293499:472036482996485620439:333479862255800819012 +47185230792812565588561:627968995998857688186:87556092898238974611 +45132077184070330229949:146247472437117504239:87855673438138924337 +32303881152634109834803:963047451935491760807:523315238762881728172 +39772385824337439934021:5387610608817885740982:2059111562612239747147 +18279693609416680059232:9180063575536676059541:9099630033880003999691 +64522886264043743918142:3219869198310572800384:125502297832287910462 +26279498640792912151481:4593255203524691566097:3313222623169454320996 +66360293159031900486756:9578513069517747255774:8889214741925416952112 +83074672528770979111107:45582751630058356787915:37491920898712622323192 +81821534899662034316492:78256082881679496606019:3565452017982537710473 +76318510379465147457567:45567280359151769111157:30751230020313378346410 +60761470067645549755800:93354532128179967041185:60761470067645549755800 +22454759005009707155215:37203744205762719770438:22454759005009707155215 +62739331512311474320888:235636608991620588119696:62739331512311474320888 +77006264553475003357137:360385954235609914497293:77006264553475003357137 +47139164488600125616323:666784299150177251666456:47139164488600125616323 +46158894353785164965877:589977760758205236447874:46158894353785164965877 +79982698719254854095287:986654244226334300077612:79982698719254854095287 +25435055687532239643632:9:8 +28929473547095112858024:5:4 +92555357203559415231849:8:1 +47028705904488783067198:8:6 +12258155082857433563143:3:1 +45430692213292621049051:30:11 +49252536401952053646335:50:35 +15675754537537831684068:78:30 +57072985186275494303564:89:56 +81442561036475598549160:58:4 +97071428087394560483327:276:263 +65038636830774874151779:845:479 +20430324274977072478999:277:273 +18562631936909794187831:246:215 +95558747003144287349534:680:94 +43941592279489677495522:2963:2911 +53600736264325727368731:6355:3976 +81624695165780610718225:8615:2905 +45330552067946360165284:1090:884 +58161587841888987479284:2613:2380 +92598644093835400415027:76913:60587 +83883858419894909006272:61253:40628 +35000170210164316263406:32599:23687 +34430742067491590086664:12327:9890 +41819998857494105710131:97930:20291 +42468415462297449859463:753113:2484 +49955818259238254210659:689709:551614 +30947206188593349074349:838209:149301 +57711409320018040119000:402284:161684 +76114896932082960433665:782730:367875 +43983654272400588687939:2133867:857319 +16109777616023003880989:2409036:1368437 +10304220888213432423174:8841110:1773994 +93914894145844574576829:3853731:1370760 +40162907523357105120300:9773373:7758786 +79648010106908749247247:85101723:75109092 +11392485384636455565807:26917437:15149448 +61869574065593696006874:65077408:39125146 +61699633671005732419609:57161615:33952069 +40634624035268789860923:13147212:11229495 +11419220064575843254351:865884039:534650548 +98007906833993108263559:125150442:2317391 +14360220923230918321413:630570703:471381080 +36218202630605241736334:973336895:263690834 +12213714001065851893579:895383132:216059251 +40610240276646441340624:2570044616:2397176752 +72195585739522913588722:9411739241:874763001 +10928575621985028205555:4153196525:3340664555 +37671928945150687627778:1381649118:470543582 +40886310329242844268847:5449755560:1244832127 +66199214893094286880630:66160867860:32805447250 +73782143203286139475871:35165982568:23057384119 +54476574472493279809732:66718978749:27303934627 +57993165273389179797832:29461377129:4463576977 +96011388493734548864052:57669388988:56832285196 +17006749882373444604981:556398108766:204380456137 +78537048549135306596934:626474428322:337553178524 +93881638821431202876534:734407908916:343931076438 +38618608613628524227514:244333221683:26820715314 +99414322879064346414343:837687840008:610128242831 +87518984930631718375387:7454499094325:2761314169812 +90661975462153694427238:1524417685465:1238480359248 +42879856278792884141812:6440404977365:3217783686867 +69145360611875505024650:2154128984505:388102432715 +10863026321424531847763:6484289993037:4404453309239 +63039806419624126482715:38111064366133:24409594777827 +98059535768619678363347:21003044111850:2352086949497 +58990496157111762745105:92046596282710:20725592717475 +48611717518482018182445:29855910361741:2452883113444 +86720147856876816720282:76252372487915:43499391688662 +79138746399534459951966:195441460282367:68788361563626 +95886220119709259468367:536646948412560:175794546125967 +47056795855822120215928:989991675821340:684977463524488 +19457318034033230259960:841107040093608:651046357706472 +24525439712643698764161:324408055036141:324383132949394 +85433641899053548677470:4175462202387662:2480539478239586 +97659902963767405695580:7028890885951926:971989329216760 +24953759509997700624736:1330664745301595:479739194225796 +66646261795776895489351:1656940656228770:1046368974968521 +24092061545863475587726:6982802725073690:2566616955423416 +23591891602814355389832:39951963470292964:17461825538390048 +80240992832616263635595:58861027129498085:51401951977715300 +51453571684815151357129:60087806951782032:22065162486663337 +36937447120516491744613:87615658909253858:87174917613273541 +98955773538214876803738:21870369541211453:5993572475987288 +15879326196475528864105:607122443579398974:38684656348699135 +80555568506607378817484:701912156749248590:619837279864386134 +24414774401268879207493:880837498127539565:601465667865084388 +22972389802302438477030:851472881228896627:502939628036377197 +10698631085918177100636:141374647939567532:104603091404116536 +43921963235689823963195:1725773429329970281:1029459242080311745 +97982991526100005263795:6504398061321811265:739130348240367835 +81103905344276960755177:6688036372233619303:4776294572093086999 +61313896118100915676549:6082213341203689490:5185638767725617349 +15431899864857548548799:8776360999586217455:3057227584978262909 +33900117740638562873775:90407878745784168569:87571089715283828969 +17371978736130753592712:46912569230106116203:14328120991490597602 +41695787712461250638308:60509784187969997833:4546406949922131371 +40239473092474471833767:88536342416202401201:43973635518581688513 +82668299904639601542582:57532659349002757652:51401079471641554310 +34985719286247867445730:656712644039016011116:179949152180018856582 +98720705834048105341032:505475879126828488669:152909404316550050577 +66511842347720028359479:194309197268322496648:58096881953734505863 +47475261598157576412860:165907339270375742643:25762566830114016962 +47489315974650851142065:726350068644216796119:276561512776759394330 +38657298131240886125053:3353613635112187148020:1767548145006827496833 +64311689756207334323040:6268322685824971763796:1628462897957616685080 +60466653661162701951862:6848432653755522486394:5679192431118522060710 +51284256057316803989771:7202242523894036754453:868558390058546708600 +11785083492796249527321:1048887633068079231379:247319529047377982152 +62033119705514430617461:63124920951389165577284:62033119705514430617461 +23406019169104782294515:58145556359883965916713:23406019169104782294515 +90653520144211061099101:76803696952655785039573:13849823191555276059528 +58485528956043931800993:46813161149062546327371:11672367806981385473622 +77073601703557091441318:89360664954531951946568:77073601703557091441318 +68619049663592018389540:953153960675920275126796:68619049663592018389540 +81276829806142537250062:945987817937282641982627:81276829806142537250062 +17428368323339323531330:272644238438903572082000:17428368323339323531330 +73063161209658985247770:258968571237238842316804:73063161209658985247770 +14368356028076263336437:197468660415844471526501:14368356028076263336437 +77419136617698663485157:2:1 +56296008074360872192984:2:0 +50773845088690554505741:6:1 +82161715891626480177827:7:3 +35998785426124691874875:3:2 +43155552152769177226913:47:42 +98211559417945493770690:96:34 +24431848611098230705241:18:11 +92612324268396812591183:91:17 +83576757501641323681924:69:67 +86378850859767468128377:487:271 +40728816411665016234429:875:179 +42186584778667799018969:158:69 +73291721169624440570995:794:351 +52557445954689555355158:242:166 +80424286392663190573546:1852:1738 +86991449824424331115940:9437:8995 +75221500647912718527004:9970:9284 +12070656624381130865416:4198:3196 +46919704635633106778045:3045:2120 +16912083008503947125349:81644:29869 +52829027003373596723571:30539:29661 +71597819547007549160269:25082:1561 +69077248180669155060796:87431:4807 +94649936881721940962751:36049:10050 +64355251757658049807161:654416:219209 +36356834685306417569777:787402:175203 +42377662242748954937344:906744:536512 +41885127052630075033680:490779:13593 +43219098515916699376444:767767:66510 +77022986399134799747708:2062216:170908 +95237814652297288199025:4717026:4480737 +41049477877685692285472:9655094:8496534 +39496370124075727204892:8750792:2613468 +68046452393202639922368:7476371:6401883 +67580215037563662349576:27341100:22385176 +98568913425870148069036:96150653:41561591 +81891634409072051746784:54400606:5957462 +76813434521768655155963:39487310:19429503 +93375693922776970798999:46264468:6010427 +58790070624826827290138:106138440:75010298 +59985661717780431125448:263808961:194898152 +58330665327177821790637:131595307:8221301 +67095356596340347416132:755801282:391039594 +20332056648408587709425:439153814:201783721 +10664390620680089366209:9376060467:6408302230 +22821429502121826382192:2717599580:2477810632 +94882293648878507031059:2676547920:455480579 +82252955213392176758870:6430273234:2880011382 +33626520045188417539887:3020019511:1407290769 +78772866755348474794500:89305649077:59365363838 +62362034183822148417750:29380352748:12691899654 +91859022068662314139722:61060129831:14659995702 +83371611387207998057941:83978131430:69034625041 +24949608901519588490304:82937455643:29234575624 +18975537680635511324611:735805355715:14911411246 +19018874214010523565782:503841014464:397659125846 +91571185193321371031623:533983830050:532755283123 +99926739616903431419385:179845887582:84048604209 +68352560120836676998333:391219671591:13240076968 +77509244014353324531667:4375821268856:2446102022019 +87319691502225565573247:3912780233026:1612809229907 +84418055285914406107951:7093250534927:4643849642882 +51939798425297094426825:2006892640726:1048720745017 +93840547442262298181050:5363830020703:4652716139002 +43309134292241176544220:95727496856353:33528240538982 +40331969010877924995131:32253335054043:17507913347006 +45364148722282134471176:39630508061673:10194382405691 +43915870041188088701860:88805210535568:4790009955668 +49826258214968017754045:17252079121203:4829834521343 +90952596953619280407729:535153852413199:51112531840908 +40445976464298789136014:663055575882297:82158022689342 +50461397627606831787914:451659099596172:166615022461958 +65529826052395346688211:816610579911058:363246476559599 +36509885124573923856055:662231397463360:3174778656375 +19116910199908779301007:6676509720813625:6504225360329507 +27690463353861487395298:7905812324948332:7829987656838690 +25267535740480759929530:3369754746406185:2632860870758480 +86941964668052925712150:7682445954534066:368645264016526 +28224152501069865445335:7292768862405081:6624388529187780 +63504439848950690708486:68331940810159341:13993147486831454 +68632203879564262859618:47065824748723670:18111954678963228 +51175975653250741033105:91237498667329460:41513257640953965 +15793554988760860238796:84364866383139970:30177505142154946 +83010920280745254102351:60839428532961239:22165231082618537 +91911174580276287655738:329008902049774955:234730357305551803 +11090885523807220769418:867268062716029753:261537794632288054 +90097855247041644675138:725359593464865527:214783177232700941 +24246107257206465119828:636436085871685048:438129838751531220 +87502059245671075883543:542620775719260097:118194734631161517 +17411187261137860260206:7431700031829177343:6145786593926922900 +79045691525388639693180:9603698615644008988:7251918638445721940 +72701145361931544574285:4432414889355608304:676346720857172077 +35313949926506563997439:8124704258582494399:3985218707043339385 +70888291188665379336169:7426057471696528263:6572621322017065834 +17586564640191039297894:21348184882726670020:17008481706989871434 +13449629722666967384006:40654748816930606333:33562613079867294116 +37996864307599932675761:11637834041745886896:10973995341357847217 +51322167013060032310345:28752016342092382020:28569858767222786665 +48587728536186383338713:40468863823320860505:25091948201350732713 +25487054647829647436970:433659219932261555557:334819891758477214664 +49760108049102869245087:113275476770709917694:32173746761215377421 +88655118285319017546895:620682546551470458245:518196675010212476105 +81992686963592360974198:439232654371182400773:295413250552434430420 +38745442481400487716826:156252731563294243854:151017785266809484888 +66459245435267635104429:1624900652451608236371:1463219337203305649589 +45733424643424940399064:3480187076868830970812:490992644130137778508 +50069416158873744166406:5205817588338157837055:3217057863830323632911 +89512133553467475056344:8757512071066303904774:1937012842804436008604 +14004756577023436919091:9676659644886865325689:4328096932136571593402 +52032889224737453183615:42349567823404225463083:9683321401333227720532 +73146867650800887083045:52525906177873404824093:20620961472927482258952 +28836628684334855191256:48142945540483572053778:28836628684334855191256 +63639792543744696628863:68090284705093665954457:63639792543744696628863 +46204386472569014442509:31097056670075441596703:15107329802493572845806 +92360271952207795385271:134552299785891067552817:92360271952207795385271 +58699360141691656124171:283645007113217201896419:58699360141691656124171 +13952412804674333819209:666692448279833915019335:13952412804674333819209 +50099189387353338446053:193178141021320485997434:50099189387353338446053 +35937858027076116548239:916922781116687502644535:35937858027076116548239 +83144004898510832871839:5:4 +34445627640229601213858:3:2 +48764669494706085813537:3:0 +26588002882771755336980:4:0 +46598761187557268477775:3:0 +66965369743858195526199:59:0 +35914279838622172355388:96:60 +45892163651937135473021:84:53 +93997637921446904469225:85:20 +56338126633060565074033:57:16 +35591657038443820944015:889:323 +58719168956933927116831:602:205 +94089379013166581626604:922:546 +16514411329090449886674:194:172 +29844602594379661627218:687:165 +15086707658559216198205:6675:6655 +14885659172478087521449:8961:4276 +68709417705033778362680:3314:662 +59082046681548031188490:9406:8194 +42215109530576630900536:7470:6616 +71082738476304947865130:32893:15120 +47039392201554742187833:19349:12141 +69095749512849050753556:46493:9437 +64816810841947379570062:67839:13165 +72396850553162363584626:40290:38766 +84722229710555369541343:327001:278144 +65729782900864124408387:281407:255444 +94086188237000001592673:446912:392097 +94806562421632849302183:357617:244276 +14090885422292330178443:889663:722793 +25401307739172205703338:6460299:2333098 +13496748164157353821629:4661943:917820 +98875894518742064223070:2694114:1307908 +57607685825189269524719:8364328:511839 +14729417619826658233235:1054009:489129 +86383639235597693363343:75493821:29826090 +37004709281193706686622:31848198:26758396 +97424443417060167309984:51915536:30387504 +60239514107930116053308:57064935:23566268 +73247087867347895040856:64657678:48861056 +58187842770060714967740:322057984:38721468 +73488195928523045754248:631578621:547001633 +70688661647863825723157:378260117:141486801 +15581174638696254577414:787560908:58129234 +22838263040515827245306:905256710:22567896 +50592293612865859766869:1211850429:625769899 +16273526124227826589175:1276927743:455768 +37151076001102969012158:4237345205:3328927383 +77065420094881633872016:1899479085:575693671 +44958655328396865391283:7902407231:6032796329 +44772248297272018149694:84864518274:29277044782 +90810021994629953452070:89534707884:12984687662 +58187442993133413887017:46573048528:4471678393 +46417051048546049905049:23834322739:23657304012 +60072946998901143188432:85070999203:16553848402 +66586742378893000637361:632921546488:333416322073 +62994597499008908834021:749429438886:749338735085 +58056260290117644636320:644523865961:486448436207 +41458448336135774445464:434326725926:151559503380 +28662449026542080157235:884674321397:793116470590 +10131885223062109013139:6927053057675:420806590764 +90303853765641876717139:7454059039641:5760455069962 +71271549952763764798909:9527597123309:5059385384159 +71005971531627654196974:5520692531341:1656422265836 +86760556854818806361454:8498983367041:4600522673441 +74841458904841071583263:75597859961057:59833963930836 +43490943625876430977161:58766252582982:2501347809843 +28740957459879037267954:37522810973052:25993272676546 +73936390320410578885789:82396905505797:60711680915353 +79324848824609784748199:79047113379212:13514048080083 +36936946050854801971246:943540059271079:303798373768920 +69860936211734307166942:478152044098962:103582426111198 +79816028773104832877062:921674443665206:769957165725834 +55537106675656718653245:367033418867323:221310485167944 +80302115361935089530012:772474774505337:741886661153388 +15822105723462701005040:2415174049181455:1045692890799620 +36189301249106670540787:6252203918335811:675411167527470 +18761915067158183516596:7334728058244266:3422203913836300 +95704735870158248411203:7489080527687272:894757537639739 +68909311737966683230975:2682561028767297:573193752436021 +60198016652880736173920:23900333492770480:7681304800493120 +67857683320769049567577:30779972795441127:1396075563777742 +46395200515619621818370:24175299756660871:20123115394369205 +56473922503155884453586:15445510042989740:9876651122419906 +82812977245154749128254:34727349644824766:20913777277813928 +19059276532168695352590:460916485838168747:379842760417664140 +75583826663364513575048:852760748343779951:230494661921398114 +18708450458905206557612:231915056994841058:94726188373249810 +96656570450809608598355:749346444441854506:620621588121432933 +88716805210204308472248:948008084330385706:312662398153333356 +12783753207362430745040:3298622418315682346:1591336389161654290 +32253859930233755312299:7705410867774707526:6715448596604315989 +51004202700643199733410:8102097845773960935:1496761496115647585 +16997443598477354647857:3740881218782894649:2620221546664257450 +99398341035501182466365:4857360428465340151:2174587814926956452 +64659900401426224232666:61668617548986582922:31189210088285330410 +46497725835177805735035:35852103623845603386:33399538673903746779 +86536630304510639689627:37176659513455603947:26543616699449304958 +18323691273138461495825:69356861525944757996:13479830289045384881 +22654489066340295032765:40823406141192945449:38322064119403254019 +90921352414787317364961:134195003652190181287:71334942254564633662 +88204871765412519194019:302809624511854406493:87271032462886904556 +16580486047611270383976:503015594658510798823:483987018538924821640 +35017688143755744659839:323432359663512644635:86993300096379039259 +89385878381016674177666:789273072014455036653:198021243383255035877 +84618219839653330420592:8913118990747953898931:4400148922921745330213 +93389651188419568614810:5537357671481894720521:4791928444709253086474 +44407908558095123528766:1088900283732966906017:851897208776447288086 +13819719214382031697931:8860763359152410583960:4958955855229621113971 +60341878323591271587139:4534374385180489351067:1395011316244910023268 +44608914103167410326210:57489512873315998051736:44608914103167410326210 +52295871543320731037896:90402128080586267249404:52295871543320731037896 +66410163925326458040266:78306104861882386003020:66410163925326458040266 +74863587171484947375233:53438808535417867696409:21424778636067079678824 +67261265738484738270396:94331048859908902105420:67261265738484738270396 +43988442783343675650417:622583888513907338873917:43988442783343675650417 +51507635498483428066118:804771721887237757792245:51507635498483428066118 +29332039265715525330089:926690509686540442638309:29332039265715525330089 +23760238014025970910017:335870847439097384655290:23760238014025970910017 +72622106500929031370821:666821187842210998303649:72622106500929031370821 +60168628202200677645042:6:0 +85144613877204915967613:9:8 +55543207967087193946969:8:1 +17860337509891212431387:8:3 +70608070257309690493790:3:2 +91118269794877840754887:74:5 +52662612040217064981763:89:64 +66872211590731092348730:87:43 +38608494743840309212240:41:32 +30497814330660787426096:79:75 +14478079294718176411280:253:61 +49905548456601110940621:743:75 +98792327754036929194658:957:806 +78060394821916786242636:219:186 +83837513869324628502604:321:31 +61601795997802954742965:3187:1804 +66343053861817348816356:8969:1476 +53623197049823774692232:5340:1292 +66746982628062815694327:3011:1745 +62356305223339055567810:9125:2435 +42771218649974599030872:84763:3762 +54030249048619382220510:32392:9438 +79385743740422548651278:41247:17562 +24332558501640946501916:37462:4992 +73211369038642237211870:21260:15950 +97084836124562127968320:884491:293344 +18767920193202208807535:313432:70463 +87169731427401101803426:195268:145290 +27692401667879765755567:999955:306132 +60629848363872229094328:310558:172610 +73443561314588663365467:6802096:2094763 +86238697820194331312417:3416552:2066737 +76915273278942285344270:5062484:2017730 +30786703084740000819228:6137646:2843304 +16318166732346591986216:2919493:1621747 +35192929709329362688629:21895006:11883013 +44899192867304647438430:36203688:5343710 +52886843744181328622533:27701885:15757683 +43957210297464044116982:89237386:56651082 +53653954985892622143644:98664203:28107204 +47257174975602174030185:354023490:6266645 +16040531654880668590747:275257791:114944989 +34209803320351029433339:610701461:374044289 +68348892831121635853617:170489838:137888733 +69800741404370632296946:114431087:76044264 +12572089604414463678694:5582638324:2321931614 +88594656611543975478102:8126408499:812249361 +95046330153783171330567:6483157886:597935969 +48514528807606436441647:1295214691:1051331934 +27154531574703134138207:9270930542:7018349335 +72429083365055710035840:91579667330:35845309670 +54792679367261084228596:66285537791:65312052939 +20825512039898985141548:60780858440:36360688908 +57361625763498967785121:84727125054:40831412869 +50969375122681536545708:95830158006:58957337276 +15578614977024335872541:206194317292:138972040249 +87484360759925090818695:697061475036:344527835811 +78043698594176955658832:671169914029:332408015544 +10455613896424472062228:114291582133:61656861620 +55771360643397628557736:943716324416:261953257896 +22211345794945458046726:3792081314572:258113302262 +26563631525742777306090:4281387131916:2607432064674 +77015855469303191661188:7759309669271:2801085471542 +10664701311374780871240:8960920822071:2510256015468 +84157076799780004187363:8675681855398:5011694637975 +52426690777546676412319:58212950601741:4511920998433 +21175908878637397452544:90254559214894:72234948583680 +60877449038457527893042:74062134197030:22033821716392 +25355377793299930375437:42232271032741:20763378464381 +98709061355531959038057:83749801954707:6617234267442 +38042696812294872066899:881501611145519:638079107967194 +23148617701396239540517:958420919736653:863295505659754 +26651977614622397002462:954167539698995:53928002241352 +80127837791471627268065:951186239039354:328675394086049 +81272767223898893917581:511489151862678:217278272087601 +78149517160927750365780:7687425498531352:2847088362913852 +40874318576915582039396:1468618572569948:1096821859883672 +45912340830308045876698:5155509495855069:2570065687447888 +75429380033339114105275:6549354569564388:5000846188002115 +73351778097979894249799:2151028064001771:293068301732999 +22126431218975315876387:95688747301564341:35114192688613934 +26108516082182036151438:22281712466334177:8626604829588396 +19073915808927791045869:64234820695127213:28151716716417649 +85383446931855670411834:83224055773822445:59806925628253864 +88588229050466646445749:77053428169368929:56790999527512307 +75408174391672470941283:710030812003085448:62033696784021891 +47118811864456785653379:880573959723562188:179853608696535687 +59187158040829640206716:437886675299059741:205574032230314451 +45257725354657261312617:435840278683235614:70816190075154857 +77997073937717526682697:473975291069644262:174014587936572239 +90165064244599192819012:5714467064544311482:2202900219046256016 +18024701694199453013663:1819813747998502086:1266334022288353919 +54495463778799349441339:9689143095461515554:3723009923785965643 +74069292451133223236230:7014821337402754740:6808770834938691310 +16286254629747043973436:9107524075539378231:2001582682635696408 +49754997926143459080431:90027608265921159333:59758163354979128615 +24000447241416147288730:75814701408473434229:43001596338542072366 +31472526369921474842624:83467232714962938536:5379636380447014552 +33324879462105172264561:44549716567076507708:1691469931944498977 +22874466609184113598699:93384666991462766405:88607863267198595879 +79437305479532175548582:192571814379449383687:97717955199029469538 +53550886142685997096789:134612187330335446600:109847772542824796589 +39046647357312789266231:273869822830998117439:157132515311056589893 +11387060643662178138399:716908264623096266561:633436674315734139984 +11355542108998090333578:537063754090134994512:77203273105255448826 +37811329753370138795638:3868536481089712377617:2994501423562727397085 +10879629890863958124169:9468476353701815020964:1411153537162143103205 +35867433044739486604399:1735853826595727289331:1150356512824940817779 +40562843432722509318560:3721576144519390039171:3347081987528608926850 +44689988324762086363898:6503130794397361595986:5671203558377916787982 +12372133503605086821781:18085049951085190911286:12372133503605086821781 +20913780658785496564248:18081733546997852238497:2832047111787644325751 +96628570890468256288769:50886185517675797472248:45742385372792458816521 +17541871236818093899088:26770879968096537110175:17541871236818093899088 +80166134154100207670901:52770940030904009175561:27395194123196198495340 +34576284029725009057592:202897110084845124478538:34576284029725009057592 +62119893165073831906409:491506833144126988451687:62119893165073831906409 +55309346443203958696053:718914461748401420442050:55309346443203958696053 +55511066031169856835510:209693130852648950409506:55511066031169856835510 +38971213701149668996300:458703073306725158660869:38971213701149668996300 +267905013148091220838980:1:0 +301809168101666899797994:6:4 +609706505828425866701361:5:1 +557133854597982268782253:7:1 +564535901356775428623575:2:1 +449384891735388797764392:88:80 +875662386537095252812258:90:88 +325849391291170509804957:74:41 +581487005508139668005771:84:59 +682133357962055363236390:19:6 +704166342734321866495574:563:364 +237340302304569311023203:315:48 +158543000394630534398159:768:719 +612770087267834470715668:267:160 +995984284867514140544126:593:266 +165475252171389911168928:5604:4776 +599011616413945900190714:6516:5918 +157881064806350243425844:4498:608 +324969866224166836889775:7430:1365 +853787607685161578368270:8446:7100 +299313125688556835819678:22064:19902 +729308830846054844771681:11780:2781 +232207505796620149042687:80640:78847 +304677773796454015175305:10203:5353 +571957841657797312277173:21693:6214 +931074223357751070754167:446092:125599 +265407524556910973546314:494892:446134 +657270448944384330385534:243460:178074 +371380730539014116562199:280689:46774 +467724142044093957687916:708595:625531 +850100832163892454235357:9332765:1227467 +426414880629762006119846:4220219:520702 +940526833426263494548363:5855921:644364 +781080631330395025853407:8080308:29863 +152272694351185132325467:1759679:1520633 +285981733240966081558314:34602305:4540439 +317051738831455767138952:35600390:2127812 +470648385800111650266380:75531576:4731260 +719149261732073704387504:84181713:24285448 +389913174329527747541918:93614947:44397834 +824904767157391431621793:177748580:67764353 +749282891636526030158546:170862087:17669735 +496832223184923628267158:993277993:256210278 +947309139149798719003623:989709755:263763028 +421269296779139643034908:154026023:50021335 +745453740206015417272910:3132763493:349098636 +466304679114542521325037:1249982248:385616581 +148452948947257964565616:5362668373:736378935 +762141736917664165840785:6084383055:5872185735 +904350391225320975964304:5007813554:2702220316 +998574996662144113769437:58261453764:7488850165 +567416253282099679329913:12479587339:10354492281 +752638251996395915806949:55490425874:28471904273 +792523224708293389955234:25028793800:10048578634 +555433670973158472616194:18582496200:13765604394 +241034179480853006190556:902422001090:448854118046 +244489751335563275975618:811635011173:117353300165 +816763761705671888586804:812491162265:273620276414 +192840484979462381657179:395476134466:92551214661 +915456934473001261645068:628600997642:39109708422 +159944296333972691441332:4835863484793:3314345531797 +170352991932594870443149:8297249843381:4953244674017 +250224084378825746299502:6890233831686:2226126422102 +112649420717964395199678:6189690778744:6026077594918 +363862787761831908045517:7863015437811:4193224018423 +136857888939740132680373:14358621969855:3812152547063 +170391447439032222059047:33773526644787:9595261965634 +836115719884340850715844:61771957476887:19297334596553 +344746859736632093843629:32468330980043:8166025131609 +655855362618200775810679:57832238008542:7444137057277 +563990625140366105414099:621281262630939:264485098769009 +831124308234114222342193:966236733714300:185187321680293 +743789025101363873189872:601135768615179:130457878691671 +518356629972246359037616:247300875047387:127200775217738 +875240914950707622117495:830687445176009:546653555151391 +472560521419892522957303:3716056547985327:306706655341595 +236341947769068214297505:6471743386365456:1568245262898881 +694006858140309417854905:6617157479655897:3686802028149223 +244906684915090087167341:9514041660845320:1556149215319381 +158591645509849594275256:6293327695670358:1552098225467428 +602138497068723729366001:50054791030680038:33598338543081695 +181128625853616360670852:36865268467073142:13770353042081074 +576784185856957532707689:23549415731723654:3300637278494419 +568876979627142573524895:32460444471822258:29593562152022007 +171107979505943592935073:84689482321813493:79080716784475478 +874365926303608044458845:985496883977014897:569442029186348844 +458419803343013308264100:851270768946852066:279015906108498308 +204597107157072505997548:311054746068881236:225820773735256076 +506422376468296224763858:220856365053504188:56538801442704986 +665540141440331705835775:484746570627454507:66098808628632520 +682039341638064654557663:5200161301082492393:1785871988199768962 +516677792371940638634647:4414319487923443591:3767907941183526052 +352595763857182008618647:9922756844385529900:522148786589152047 +975245649214327402525962:4029644061788126594:3282312550368625864 +944874456200864859870736:4742099253226353160:1695797007540034416 +870604571052078436450041:99786114405535022190:70508978190902864481 +634335206543232648753760:22788274105409283422:808545059835418968 +729006438988749167360713:75523542184535082382:53209823616552209649 +674843587102027646412651:23752931999607185876:22788993187495675491 +174117287059234907152105:53853705420155076279:8257435873545542098 +661500078993918381861570:887324733344675673318:443152652135005239660 +801150047195222651501827:948560081327396930585:565338554899642088087 +306750621682701240198151:402814416084169572007:208851042648195900824 +146897617654255177378406:653864338459860014702:432005839246534085158 +838694774893615443980696:950347772731840285488:488039344132312180280 +269149037421143542095876:5577331570719486364403:1437122026608196604532 +749103989012225242137946:2499662080148331751880:1705027047874048325826 +403325352355376702860559:2776966438399319911540:665218787475315687259 +857424625707481000362970:2439426086177835462048:1186069459060753184122 +845064079826673560881215:9072521336924502469496:1319595492694831218087 +114281516219184293741067:92032353892808522215322:22249162326375771525745 +355557768415484222353496:69270076511428300929758:9207385858342717704706 +841183061622545370200949:84347409884359541817396:82056372663309493844385 +949022845124664340098725:84100700651510734703011:23915137958046258365604 +819092799058924065838631:75403947889816311265030:65053320160760953188331 +391764171119499874003759:401570280618672672580524:391764171119499874003759 +567462746970263530373493:677281702306440883567460:567462746970263530373493 +978678997292757515585757:680746788274080596362898:297932209018676919222859 +128582689269472433651183:312628316037352550875472:128582689269472433651183 +883038686730821354048966:616443133961662358356318:266595552769158995692648 +107812280326022877670437:7859515082349093556667758:107812280326022877670437 +295774246300154285851629:9706014162521672832471714:295774246300154285851629 +190992036696991512092244:5793134656813939077270387:190992036696991512092244 +332766183235084630339475:5957717718958846913080018:332766183235084630339475 +635880071621162221842020:1816253844391404014289241:635880071621162221842020 +606434284312960140980084:1:0 +205737898567467839396645:8:5 +932565787370262272858525:2:1 +528576864793388593270557:8:5 +597355531855466922713387:5:2 +846019350487716521763736:96:88 +362477757499959406174185:51:27 +636872084859429016252740:18:0 +866511341182152937278412:28:20 +773397990737580584640677:45:32 +684156941853226330668841:864:649 +889484331853378577268081:881:43 +847893571750702229395121:522:467 +755517234928285915578628:276:40 +765244940287593778361072:355:102 +669169157802202024513689:5545:5334 +300112862986715783012838:6315:4413 +190723680247383298212252:5637:672 +373392433573294396120316:5724:2600 +548571716691470270416624:6206:3908 +305571688895276248091158:62921:4767 +525273983634982410958652:13813:6260 +452125110699999348799523:90197:40282 +775644163808240399382716:63455:20481 +594077225586391051911074:91786:31734 +256822704593748783685722:192830:110142 +164417262047692303445635:642281:384060 +318428079694472938523241:541010:126211 +272306017635329635815657:546445:275277 +605557829232449010603732:112805:96142 +346447376282466413696879:5481997:5068352 +877261515747633382181864:8377179:2648561 +630613823018644059108638:4047262:2028818 +908056751483882854445704:4524565:1681874 +417438707525957587778520:9464879:6479684 +839120765048249258775665:92262578:10348235 +217991561189020217313633:63557851:11719059 +442417940221231021626950:84733214:36196648 +248181769725783222772591:35854709:7375241 +185810744035506285628331:72035273:7152288 +505071005396326353151259:421481013:222216725 +341722533016078374939985:675707220:547083865 +399422439130843611593547:682052339:460833064 +515236709588996675060342:881885926:118951690 +739575114735690832160114:835525275:615824489 +666359055892114991222396:8519390634:4034502800 +325933213286234867831449:3615401922:1143823909 +703665801062516081371020:4734827482:4554562682 +865744312911131802556588:2138209361:1104906607 +199422988902967836247200:2192446592:1288929440 +374981669682651277897041:83775888487:43063402801 +454844706983469056540648:56702980381:14226018550 +913208514222329238498476:27966568358:11072671488 +235210845053813781197677:94205497317:93273141145 +331715633589251925796917:15821621929:9231209665 +798331613702214564575238:993542714606:671843094376 +846741652277026224559043:556159063007:178658867697 +507628727957059046362161:922461538172:53632882589 +529019246965005531949566:968754809987:603200223197 +171402525880579668382536:323282271983:105754632944 +659898896817678676219728:2515355147284:2435485809080 +498606887289387433845759:6740616298714:6196108225385 +774570223156202601834333:6476534288082:2072254635453 +406258771767028148190087:8987189545331:1821768334510 +717322749034838953807347:2308663140258:1297936570341 +237647278974452083162008:76646437184990:68828639414408 +438098148603414686976529:10695483282117:285459265642 +127776214077125595372273:81114971132356:23300479701241 +597609871066288826685424:95019472269985:53615009311729 +463988215012958688970715:73099108210333:27904763639861 +715091314009208997005761:572852785276906:181824612627529 +421011593048063912708612:533004019852694:115885413120678 +384770524428448068588928:176541649862105:6674707773313 +361606076822338667879543:410645438978582:348893920928853 +801319793833448817875706:354054528052335:248963511527346 +531513630088539679370991:8564894307125581:5580662553244780 +679202482694044242073463:6782871666287274:1448309705883533 +533589057787276320616948:3989730891122170:2703561046926738 +897182565456186276718671:1955929753393314:1191988832268147 +514179534596449822100954:6824729909892713:1708530673559208 +474658442673484256331078:82188259174051908:41372467582238814 +948034123578862101195403:70625771353056015:28815674407525228 +780603729058764971558139:57250181326201524:25683985544685195 +416955395191367809539325:29177298191553875:16405593548023825 +898431010371421943685591:81414218639352568:32106825435214647 +220559564978329360762831:987019951502255482:86615635350755111 +211014288578779524352862:802883980336577250:320866720291507862 +473585120454101477184914:990747082891074586:88855504696480226 +854870710133201274315999:426560810054185654:190703607805134599 +166348714511488303011478:766675944360856790:734835680122714808 +479119129449998753876399:5617016746022596885:4452064509307376554 +650893677082125426806580:7034731658837166456:5130348216600465180 +402588838308859077211980:6366377668971502984:4580033777114515756 +425358118755574069605277:7330697615113790867:1720336211468338469 +221369710012680104058133:4385666958350516088:3170289937804516333 +546413026745496280990957:77772451342969368014:61556061136470692607 +865919256101857330553159:15961685442158740061:13782550187840983970 +799000508118685954683218:91837720263949577332:12341822324631894818 +202688416882514464983292:16827748208037997519:15017464904822864456 +916159641764892293502597:70663150933807716132:11889908075253851217 +673634288401317570786962:112398068625183097200:32663130595269267362 +768844328277343599031890:782055550884433519880:83721757945448989850 +482912064696657923857933:838496535915618878015:776556545177068999308 +611908962239725259022453:862912955454719865798:103676822328874171671 +121125125147301866150722:126375492239686635811:57403581682069043784 +680744342290791145872029:2569793696833248960490:2318806326813420302669 +373750990175706450680984:1021728158226686240919:820212422965972745549 +602846673069639203143520:4106572464426934778218:3287093263306725523692 +188942191014405694486411:8953411284180319498987:920554046618985007684 +206073979926965391951548:9911681129455411966150:7840357337857152628548 +234471986276697868562691:80221716124734153807782:74028554027229560947127 +278394381425708522809304:31764860379258183221217:24275498391643057039568 +235873093628592961218945:81181023760090943458824:73511046108411074301297 +360010856228721662255332:66344143397556697210895:28290139240938176200857 +632670574907946493225032:53586075382000403687303:43223745705942052664699 +113673101362025910946840:759714266671634693699080:113673101362025910946840 +160179858350960787079983:724492381771539800365012:160179858350960787079983 +196586096953413498935190:565006103157655911347371:196586096953413498935190 +755453649137578626210336:146035833096753426391926:25274483653811494250706 +751808212432533650683670:896482207760113046689550:751808212432533650683670 +220065976336471009032742:5246255304895385485695059:220065976336471009032742 +540426426066596739395694:2207275137864666861940640:540426426066596739395694 +426540642267398127667676:2864454785965250366644418:426540642267398127667676 +962798809472419953156955:7251946440052598407945996:962798809472419953156955 +650390915170353396742199:9572065467266807076622114:650390915170353396742199 +109038166758957222578262:7:2 +253201086104917652532627:8:3 +339253209872378986666822:2:0 +781388175474445598665566:5:1 +108222212810298886802169:8:1 +761914348491906706401626:67:23 +832357589421092648124254:62:50 +907630732676563180440427:11:8 +838058686395819869326775:14:9 +534248263867007783867322:55:32 +372286064589229144902902:732:218 +627920509048612116250059:949:549 +646020754986634638738514:915:844 +603841972305717950292575:378:17 +694437105076569367349337:582:363 +863992504475677792280915:2549:1702 +253628648615841668540366:8834:436 +982814510014562926079545:8909:8505 +706938094390009201303944:2279:291 +250462391842449774858416:1499:1176 +213130884442177119917902:57054:1342 +255489848883430216322804:87530:56254 +271572623810131925626665:27090:26115 +794315373869160945366060:16769:8912 +529970072250814471698066:76552:67530 +580568770658341538060351:306858:269315 +893289257688217560464436:634431:518520 +905530880851097879613991:937957:279577 +397755637979103237151448:121955:97643 +387035991037178035083211:923588:613447 +295292816282983193273501:6995401:2044399 +844102896109286550405310:7839857:4369660 +642614852909343037561682:5321989:4042002 +345164931835097966435350:9160635:4538260 +939887005600385635888255:7092104:6841295 +322117521216673693258936:24073495:1018276 +906488175742818252794724:79436313:8289498 +104819705271996664799444:63464165:26851939 +166369174771327671047654:62638397:12293339 +365387114434561309761557:50920285:31952872 +224341353746177806194425:352343517:13141484 +189764178513678298202112:288994315:65696067 +865324423370635654818112:793029503:321083574 +632017723819414018761821:414693401:90232139 +271114431391678329140473:704353066:102973859 +923414941622842520719962:2854080030:2133241362 +280200781891351220857067:5518578972:3948616259 +503917576012007278033506:4952988478:4481307382 +144574979536458875617165:2419869652:1048914609 +494155074345081754896624:6695958658:5012314914 +789817376637702581767169:31478130980:18718056409 +583823717581491949672477:57078151898:30944360111 +961175387774948375584832:81025260466:64813066002 +551045916215470959650200:16619508824:8984864640 +469277111983573795494945:76695027515:46735609820 +862867351434001307415661:690132404952:59181650029 +320367724682987441213512:362380257080:85572066552 +539253063564628600074978:137742353122:117552493588 +975323134454920240276664:600979370792:61457856544 +934666044661018052313464:572849005448:44843189552 +364684615190469672060716:9644866748207:3053564204170 +778349711079890318290670:6660449828172:1524620941550 +818025032667670873610065:1825368237985:1204703247155 +784130117901648493659370:3176187345738:1657082379364 +870930011457783269886641:4911088626158:971477019689 +931971691516536092143313:69743406400073:1369017432696 +996195540236974960126353:90019085646457:22742063963288 +908612916586411236039659:46755255503610:30639777942449 +719136203419291625928399:14172032831059:6700665674064 +263119294627941821534001:88430631341325:80735556029301 +719114897344586047904167:595791433566930:343786507408027 +409190205954846737022191:943990210679239:294951733419847 +363208023747124012843683:476725463079359:313481595738660 +326306975337056399823792:370362403254845:302098422055467 +468481324999551309599273:894322081888070:669171230363063 +664889257623099377675469:2321284447575046:2108511670621133 +941277886057177621667415:2979807119315741:430108163485987 +425148494021785220153169:2117038312372903:1528131943880784 +468459874685618126690528:5947231963706887:5032532716660276 +252452913788287109240120:5610504414565590:3381905732076050 +670111837744205218453684:14933415704202530:690409674371794 +717812830262833746170407:58073778859514751:16998841998500047 +326460330379376855889690:89210427909405234:32860155056975496 +144823452274668432909985:66311357006160163:45375427692359452 +398892392976843410011647:22888206319150498:6260192169388861 +640496324978371438998864:276299105052123658:185780312232173956 +370180741480203039617839:955436727157127552:603290082598105647 +301191958281983020693377:960634015428804283:532888528298627255 +255968328401391252907137:199770130986136933:62787020194737175 +598882652532321908064120:926159109149574126:387782932790968740 +738676818531154133589979:1792732652787236854:1049009353847504673 +911808265104990906673817:8654000705221964355:5442801394298302307 +314300805371926312825556:1922569830794781910:1012003426160960666 +311823663185559002106320:6972749115319430649:2322748474063483040 +781098376967754944161326:4426875502971952405:2755721371774013506 +356428974174646742127363:19456091737374872524:12829637676452360207 +115818824058284216177235:50958344113138482365:41466233233584243955 +654087127690838786097786:29229926671854410341:9058554752645897229 +694203819889033809877942:27234881940477781342:13914108195641251704 +667216000861163441690699:52618793352690340860:9701149049919585899 +507287609852759364863008:280543962475020325838:64125697922615747904 +186750016052002962562160:542256254063077181250:213864654304412212160 +112266798099407599299843:168208308629167088298:71856243753151405077 +106405925402880309620046:808977793972451344956:429834392489183430810 +221239546644690744739310:424597444945659712810:24277828002034365300 +664886440104242890898073:3942930464121486820676:2474122131833105024505 +451578430069508284689668:8123384609654387624740:4792276538516965328968 +564045461352027361372286:2331561414656324866669:2139160419853068505057 +327426069227662529671064:9420307159281138280667:7135625812103828128386 +389391837838661316251453:8308724492678000538556:7190511175473291477877 +500026283516585874060209:26589307321074085476100:21418751737252335490409 +747904381261150564629097:92948615052469203774714:4315460841396934431385 +909811883216595700733187:17751718838516306075009:4474222452264090907728 +980129112532470223236058:55909611396411792530547:29665718793469750216759 +590706446230192515535748:46198311955752814543722:36326702761158741011084 +455051649300051413247303:510270301205769184587521:455051649300051413247303 +436734946476383082543431:274332407592110625182976:162402538884272457360455 +319929985305463468733531:637866689553239464261848:319929985305463468733531 +536435264291464950400953:624971371392896140376418:536435264291464950400953 +617030507473815932631209:592063865114493855774755:24966642359322076856454 +307819703066811184293954:1494248043217456738992909:307819703066811184293954 +687721288156860621830563:7716757757219949263304156:687721288156860621830563 +918228971404470644155916:1045842804093877251157551:918228971404470644155916 +784004208893219747362181:7202756461686026602370428:784004208893219747362181 +264422431139724661709875:3291249654517536939246385:264422431139724661709875 +233746026309176401005720:7:0 +880691460876629788184528:5:3 +420455736523155128075223:8:7 +590472910577895601885269:6:3 +849543982385922685041904:1:0 +822776410808024384289554:42:32 +604250202781122618253435:80:75 +960460332776314877726051:58:49 +370148613408100523162963:42:41 +196167384206044632235154:82:4 +322039711075913963722026:906:540 +840650951302346879776208:301:218 +477971393898014068724799:554:71 +156179512057407195030614:632:214 +282791911525510981073603:874:659 +449484453218034593431160:9738:8816 +796444490246962512715927:4113:3985 +245941554541919754955165:6871:2839 +966042630855336071962909:6109:1798 +779614499022098903205689:6648:2081 +529514366389366481498855:75841:27613 +137591969954319575670271:86620:25731 +322076038402241930660796:52482:19332 +472875240847004158404453:71036:46209 +187257577591039035056361:23871:17352 +527881243814880852273975:277166:256109 +836552276012900727011032:952100:524832 +829382684637768241742794:666515:612809 +899944103310815459656323:468844:130135 +563143762915246455070435:793732:176647 +553463908748705013149717:4991630:3787277 +622531196505841171399697:6374915:851632 +142358503665179989742404:5848396:5283552 +136316026430994715385491:8890687:1292871 +398895248656089786943680:4273314:2831604 +326511529614334797360599:52467376:6045751 +225737447919326307381204:37465309:32676970 +559015950497848159034634:18097217:7507916 +331957277893155349359821:40100435:3200506 +541496523113124848847051:89178340:35590031 +635272039265739885108027:724968404:130863699 +239341146185799267026602:879343686:340193974 +717970699768379837977655:207455981:129485157 +149461096405678490183429:812369800:809999429 +623242078029493264839322:336253710:117195982 +982138611501798825757772:5153922950:141845672 +859206378699781832670037:2687998569:2198372902 +848405082339131022665149:1658158625:1374798649 +902260414384947361045665:7234630475:6383917440 +115905361278800306362099:1269099369:288198211 +902484463064039958312682:58721605367:8099198272 +334598182081223833723185:89286064226:1277444635 +236020648687843512512727:62106703905:58439555247 +141631129492144461093138:44462919287:8130263323 +325759091100380112456573:90343666580:21057148513 +872356618451114093055018:819563921934:787062251958 +570103116925955086418873:890969904083:524611819429 +215657269606522204452377:462533775300:17945414477 +680673305948648174602053:933301424982:144846331659 +681968645152871941875786:445135789821:151184341125 +741363226026574649736429:2243876563108:42682193005 +314486876672121447836988:4759250803278:164370099702 +417035311060012525101823:5726323078776:38063448799 +914361164326171643511786:5086378078458:2697440901744 +107669210818894906132676:6747520909900:186084593776 +934394969182530328551545:49797875906901:39219822194837 +605046632877083339562699:83484548329387:15444749669595 +151554958948613907541168:65049057489240:11332669248808 +347403971425134093573136:72090261898081:23071323374314 +429093252095189575893378:10172389821266:5506751332988 +445504823009907296044849:973107764220229:159220606798792 +899022158360224107867226:620696243777886:397840099803508 +284658421258359797777006:979565064045923:171767915364525 +809069356250179931073768:895601481292157:748200217301867 +104025784624455933148599:188962027346232:12154493089575 +307209248160619440830935:4890904394782491:589959494442175 +720969434665487799997123:2699844207387023:200123867676248 +177709794463100600124814:4120733257668690:3882263196652204 +189705043774914562022103:5834293181109191:2164454126532929 +117709301030858700398530:3057530494831594:2835952821531490 +987822108712770379745222:91597573070342673:81217732037666885 +762345337620474608254681:28232928549815968:26781772238846425 +651925345178925280272345:44724994160035286:10279055500632971 +159384440587586986938322:71619142370010877:49915100500783934 +515991718106015439894396:37098820183904183:32265490501729354 +293909151180435288570925:876948083802496322:894028646252625 +963732106425687042522177:520868930215612811:97852481810710348 +647720529768036478112225:423527949052423594:178524457716746295 +372556833925626591665959:919154481023283726:543904864115425009 +863178506878254595838031:925143234018519588:441531061431322683 +984342015023523051166668:1017300638357322291:900048339645072777 +865449709550919883948466:5192732764072304657:2903426809228289561 +870922479306372906047714:6790762933437704871:342330053818637093 +576604341943936322270923:4085203099934039480:2435606846253905803 +607148224862777006030500:7776483482236541424:7053470641270893124 +555759465169987735310128:57683433815087862550:37263795431267503428 +113646759767441162051575:46516400706715938846:7192840934123450797 +328549257152592738285101:54714426911269723290:43837977329319651941 +499147347120772708500484:42390841834310520684:37575363600637967068 +163889285917220371161256:18266010645478647589:6638405985944992748 +890822478181378393515800:230938358834528544485:93228156601797437155 +725316333440352739070640:200777349014676518303:108548799341154960204 +530040285247950519387144:997637409357100984395:294820879329896673399 +201633601489490690557065:716668240620208687211:249825875212049450774 +165291293250357607357432:193740766381958113641:30419526547336421659 +221389301329888246786520:5514442661299594790697:811594877904455158640 +754116333902161484515898:4073402876882295684761:536801678936782835113 +432405960898064287147038:5759086658840499977548:474461485026788830938 +254523912886301011733310:9815505807281933538524:9136267704252673270210 +542232363767139955644886:8074016545613364338954:1273255211044544934968 +997482436061283265658652:61201129690929856613861:18264361006405559836876 +825347995114789925922701:15955940010159897691796:11595054596635143641105 +983628180360749964901730:18776382227968179143589:7256304506404649435102 +436085751081925346891841:89890349715610395687281:76524352219483764142717 +355031730995986664164811:42394680144740377917513:15874289838063640824707 +833551223624753965390384:205749685134038103484448:10552483088601551452592 +521700909324729175179482:810502138395419169819858:521700909324729175179482 +764823766707914170837314:330728017594261745664221:103367731519390679508872 +116788711477877963694113:524429861955129841253420:116788711477877963694113 +612514378603414918633138:602729256279456507607712:9785122323958411025426 +463367381877318346393374:8806058360847872837191053:463367381877318346393374 +162243662806023953591451:6174125235898701566942105:162243662806023953591451 +842484435576649548269907:5110228841913647113337451:842484435576649548269907 +381259105648267402907154:1160985746289777426623434:381259105648267402907154 +948320595771110919015141:7994873779640060109524789:948320595771110919015141 +920387907050452952425967:9:2 +895692160217100330520793:1:0 +659974290847374083720318:7:4 +422493217124287732058087:7:4 +887613664843353370998816:8:0 +740003688379911495225577:26:21 +771655655852203549881741:43:30 +300774204687495318119478:41:7 +173536980626132280361716:15:6 +467862071847147594605089:60:49 +765138724789589974344240:873:567 +374390843769093230446645:485:15 +801082172081418328971035:904:819 +787138804597629570254903:747:308 +725070674431088449588217:778:333 +327166494101491166852232:7347:849 +166719789000616795573589:2167:828 +410948235095968903828841:4974:2519 +846243710383926830152400:1017:755 +846124811612314456387603:8077:7729 +433022904229456626589495:41557:22751 +713507376838510495218330:76308:58050 +814052501975878046174077:55534:53917 +415546772508611249208661:38160:31141 +155071776558951819215280:77652:50400 +560489691718807026220895:805400:67895 +319007930395017295150959:488913:238425 +319963156145936761788321:345899:277804 +481466028181813054975452:602365:182237 +348491448724192038791190:244375:31190 +771308977228222235151589:7723258:5755389 +552171495049344464648400:9132264:5879808 +848796543499177663652771:8853483:2762561 +536983353924611341473751:4503428:3424611 +678210229973908268611813:9680965:5590388 +211976178445824515378981:33599702:23214377 +566063776699780063522688:50151205:25723568 +652203366109122473263264:26028496:22090832 +495053492012388126583384:38995222:1019770 +465871062763163835608792:47581871:21253101 +800640772080239449274399:974065524:419119775 +903599786144611223056834:847652484:94832854 +280482572108429118597419:204393949:150372214 +872940164690979437482629:105915669:36573597 +653064152483351435273247:235985510:184420717 +471585903654322526466130:1609772030:454277920 +910130521440831607760518:5749558241:585892968 +612510928992473156732375:1053471187:575534076 +514845975595530456159759:3859117271:267978259 +310993282514499206293816:6139493976:4718423392 +142185518567270864542084:61694200135:9156587144 +645766778579220892290737:75383916408:25690559825 +607922910253839274429480:84595411581:9014420164 +210923582956573160528376:73465770697:4760314212 +753681839791678755455270:95076569650:64316128820 +483894833508060776815690:453263112933:367153539799 +316423557571258808394128:397897180433:55307839067 +223795315394632714923240:519560661573:337231741569 +311317698819828710173266:445962655190:5205959796 +313703870863106279878050:195232674680:162443290970 +258792957563216318373350:8694361345296:1839778222886 +903718313611266101181185:8375209602658:4524287056603 +950201068588437265933561:7606604132750:4538199222561 +969860411344944600182257:3332168732451:1091862831199 +301161673363652863973685:8552821353316:4359691782173 +870680760313871277867308:11529160040459:4887051720981 +741120394926529733086160:42225041844074:23460271102408 +262419426592939738059715:95419669588944:41985090102643 +793680442785115034796064:79615908566375:31734973014564 +367398810980931215299274:72801210353696:38265299389514 +352701679001220955367473:759658505977096:664961886419881 +547245271617533201180952:468852552178156:246223308452476 +415800402808074356333988:662130606828654:352996747988274 +215779992781537963790406:445524145786859:100939115376537 +389228314100889855518145:296777981607404:152482853149153 +838312949835277385059701:7879093852784641:535630632933294 +709670076030736759874846:4971331561633799:2651297566887959 +960841143628956325307703:4056504605749311:3515351376813159 +448421993936905134792981:9492916351589025:6540813557561556 +686808726516256699959870:6850804960333324:5318800853647686 +647327366385045423481795:94324520669714072:64317593121010499 +441649766899239902047505:23117837716141738:6586319038900175 +727791500308692843783238:38230503776217963:37825592041191685 +135216532052482367725408:31140753419988801:17501521634992900 +750090907590889414734491:99490219354124900:18734903328793791 +790067198886625208148430:631619743087250677:590287993000817564 +902077028659192896855324:268758782309458040:1223918601749084 +587219496704044912675137:946149645560068586:234533998385391511 +146703072663732983783745:644775718521755059:477307070663984770 +415300373570570633134272:606561018994489891:175085423294564392 +680930496980941581063221:3699301710256983837:31173938566186631 +287075032235352923989907:2880759457590385231:1590767555854950295 +445827608504646331615556:2835067443593132954:1912729851802067240 +972383618968743091160644:4115063966480751122:2233817274562534288 +391997817530125831945590:7243362971412288764:1500243235588615438 +195844294563310517839076:40576478553561653422:22209063821978424504 +342828797501184360671688:69166152549412380718:41345466296601833280 +137869391566438393247830:79242392048181556939:66871794650665730909 +797453611041512830108265:69813549432311716246:43249425648407146453 +924593986209814041152733:74355389691744912935:59070782657793718943 +963609531272594616102774:779978583592925557304:335980535331552832334 +106088387247353514973175:699254093951599372231:501019060662009766294 +116165263954446931914590:332104486710705662448:260798092410655720238 +781032575508457693526292:345037666667608009901:212335839660767120329 +420321196535445037689524:503373870713979632109:4014489272044878509 +763707255119963291093716:8399059997894456876722:7791855309462172188736 +161234050364878636155667:5353622645273019691853:625371006688045400077 +244196719965092293226017:3172983633940232121386:3049963785634652000681 +807929215997351136673336:9082447555987236330013:8673831070474339632192 +304427574193730680285742:3021528083921615706767:2274765801569109609042 +517965097515398451202779:90794862018738291040707:63990787421706995999244 +940313918870848249106601:19171288881989469683719:920763653364234604370 +527554352403367376312158:24640163639971623332920:10110915963963286320838 +204418772514073205455320:41994816148393861002169:36439507920497761446644 +832738713615032851193749:95609855439796918920312:67859870096657499831253 +193077140886141052014895:875621755439811653006108:193077140886141052014895 +211115933103214247692699:219741724276597250999268:211115933103214247692699 +783201943133417078116273:712940700947490582828518:70261242185926495287755 +479026083241027508460103:581404062585407343037678:479026083241027508460103 +987805544764157219227041:902935603574227162034623:84869941189930057192418 +880765798937727621574873:2928945711211171510828918:880765798937727621574873 +156120724695196161615075:1030660228201239559402273:156120724695196161615075 +903673286910723360509429:4643262830483684511449708:903673286910723360509429 +307328123830897862738646:4180406511919975378627756:307328123830897862738646 +329542484153432570788022:9810985031940705570698309:329542484153432570788022 +5037251798109587445215467:6:1 +4922990415171708960509146:6:4 +7783338415088889597269962:5:2 +2746357533116741339862966:8:6 +7186067876514752798476242:1:0 +9908494966048496251532638:35:8 +5057958094088120598925159:66:7 +4299795658932479136327609:64:57 +6836271599183033433062588:83:9 +3573433800040583533819718:28:2 +9137679339788803003118097:433:339 +8309776279001631785052590:380:50 +2486454033532414072967712:119:33 +1167614212252230206798754:878:692 +9121775455573025790500394:225:69 +7183513401419984627111256:2110:1136 +9914706507576710318138255:7854:3599 +5603408423196066602315449:6439:3255 +1517086072344944670207796:2740:356 +3397152461158250249189125:2488:381 +4693364797466242993214749:88725:44674 +7871957152951488978301134:61482:11904 +6825931938340666362255214:88676:87978 +9205467129928431982245794:32525:19944 +5554882167698172129190504:18782:5964 +5896459166747021255538553:678469:430916 +4971231307335674765193695:438075:259595 +4121961124444800438088054:571760:184294 +1652298053552004266123931:864033:35931 +7625087734272735039275306:374901:3125 +8633992062137117728841794:4687942:2473910 +5876189938410206922140779:9287075:6672279 +3323486839923801538535926:1622616:678766 +1874616674611175245314656:6394064:159520 +2252952036847798824223532:2264669:1518792 +5467961784471776727014777:29024836:9270625 +2928415508156124066895632:29827063:10000199 +5422774469340910490887569:34353269:12019727 +8373223903489568140880345:21736846:16941151 +1385890773164683947987405:19366156:9429493 +7426766430513716530899368:385681933:10623326 +9298559358133965653358039:626547818:410624213 +6601842330106219146582546:548507402:464219394 +6696657452082657302797212:682579395:447111837 +1945041052720771762544119:820478684:656668347 +6468828319490080149106191:4486593982:2767489259 +9198899701003517390773464:6669288184:1965872784 +8082842552214996686541589:7126661682:1824707899 +9299905069886503598187542:7216100362:1465214412 +1403637871782410154289305:5985110080:1812637465 +8413578463428892765221409:68637011266:13756234515 +7924517262997557706643002:46300749419:34680928100 +9739592281337571669887826:44324682821:21638918009 +1625947386366034479898514:89006042730:35078845484 +5074393596566630799094110:48327187580:48071408290 +4916970282198587779987036:882413702539:760595018492 +6430111909697685741076492:136113288327:26482930252 +4931313279099689582605289:836013953081:802620277715 +8397295748673874240193840:895064534889:538417542521 +9263038245804212899326069:100308776506:64825407905 +8357002990823492052852822:8492320900433:5564200824403 +2567142236927611166490757:7914500190354:5526560985667 +6626365849789524349644703:6476619385308:4406240614915 +6676268899087197532119738:2839108368425:1535800496838 +6316068603725394615108075:4921414442590:3906404803105 +6608537679973933261924563:92381603464936:29159315600731 +4422266547996351596260028:95534494363329:89861076287159 +6545962910969043509523670:34794720185658:32056303601644 +4118532503275476609934707:32639569119167:25296812362755 +8220513108134487085721241:46879164972114:20880978110013 +2436215680697244567478899:340307500665560:1832438143739 +4398347340140527333860434:427209225879266:148300812771326 +8243166348838123425923973:118766887187323:40281883718708 +1950155400602183771897423:131663662525914:44566083913019 +4951649386018064433664789:617917009558652:548577595057313 +4432067624442638662372082:7035962823877261:4740062526258609 +1639621490805008236532895:4819614356861613:3055197405000219 +1424695336946432572011155:8596754486537626:4983426676062615 +3810664035093354943385870:2527444034201580:1624472649266390 +1911739495226143415573589:6577517854783051:6187086732200233 +5646838957886418186008945:50664475279589975:24223777843888670 +4255898570341836248281927:62339720973084538:44016169062433289 +7147173049051525374344400:65830966877869449:35037410939898756 +1492912978574448473137279:96592515101615070:25739663001687469 +2951061882649948133269353:95721658501834471:3876914598610688 +5819334467233977114520483:769764239462500189:721199577098201084 +3661447181275187459357798:996249520433179161:60044033978296607 +4276608876831313801522241:449774681680836316:79116877347992065 +3095276021661021742784204:786975434025948990:119805975017694494 +5413996648065796286677203:455768339509242375:200579864648286453 +5000098686800085826194678:2324315277871695682:1444943881743032412 +9551581261257258894127455:5473280211102728755:1239735764964643060 +2470744367276653314175458:5819051727271834985:4099135668538719383 +4788996771914436799210488:1551389511388844887:78092120406771092 +2517050635086590640787232:3975472439561594460:137340364916410532 +7040871295576440631038618:85866704773095394529:59104296937565844205 +1175754132592555482246009:51054999309359335682:8553497319340825231 +7433956322818756171706791:53657340778987898350:44593877794806041 +3744605299223238254771040:73737635827046147581:60676654180788312698 +6995289477391045250578160:51734762103370913677:25354345850528656282 +5725033754812126941954005:417799210874570175630:348967408766395471745 +3495021053871418091799001:177021187757179728152:91743981418718894065 +3991740651307467944438893:390570459143149092154:110558864484222625013 +8542614532933660191937634:481558119906697801093:255043908747898348907 +7396306809370085205515180:971302710426792047147:807972180490558537922 +4641954543528544979545681:2507701679455774068150:198734855907179400031 +1709887555712783866249081:7463693740785193418485:701689072974573416016 +3753704737741353144902730:1722260254242034296909:899643747960411938019 +7907173099023620676691834:8182276893294010175178:3093620101606847469886 +2356134498503915661577634:4015440738698470310382:3086225626612059693782 +8756721847582506394978624:88469084803709323744731:86751536818992667994986 +3686652053005531991779866:27409382688717275833867:13794772717417030041688 +9235078909834032695548438:60732878662459949491640:3681353140120372819158 +4665734609797581647247899:29127498006723881275148:5334928721760643224219 +9190094226886866569149666:35054382256082387879014:5846075793280944847998 +1458388657257992983058925:854087929577905082440243:604300727680087900618682 +2405019727118575159460359:387643837077432725711623:79156704653978805190621 +1621885740406865056914015:694097632703088443649294:233690475000688169615427 +1596339749127019621508464:743273393091642240370097:109792962943735140768270 +9961583429783009045545863:253247553366774262767613:84928848478812797608956 +5633979885433592152405946:7047015059107694403635116:5633979885433592152405946 +7754142356393677065792787:8409618244578516744059965:7754142356393677065792787 +2928012021215398677579295:3746038795948746167448314:2928012021215398677579295 +7709889464771365565714977:7159251527395298489497803:550637937376067076217174 +4766103706804890876134137:2299989443675499857419510:166124819453891161295117 +1620188634599184801516819:57538411099510147875296767:1620188634599184801516819 +7406717717771810306989803:69393588642825818187775895:7406717717771810306989803 +3572458515246544160217462:69254073566135282529441181:3572458515246544160217462 +5453587346876812867616918:11408209153691910037631914:5453587346876812867616918 +2138622916686397686767970:94831395725634778952552176:2138622916686397686767970 +5616239047316117331580066:2:0 +9369193060422063947211854:1:0 +2652223742352330944052739:5:4 +8267991767445680590988367:4:3 +4976838092738906759037178:4:2 +5240158106909382407234666:64:42 +5413974456506074875318235:56:11 +9863260708339818572705080:38:10 +7239466086355341963146053:14:3 +5307432197323268412745038:19:8 +1982506246015969083368215:547:252 +2247073991777040025743628:212:196 +3907381624325763992904395:514:287 +9307021858467907731406353:846:567 +5463863752419552264606451:578:433 +8369414399289002399712405:6716:4281 +6601427042756718944474850:8287:1008 +9034535849072162030764237:2086:397 +1149261855725075532165736:1305:1096 +1211219736886120169068245:6598:2417 +8491755657438551562428942:77498:62746 +2779294826773896123419893:73182:56809 +1124574852219660861360007:44160:9607 +3184233826739840754043878:45625:33878 +3532578884154549333580987:49279:16696 +8118735914524397057992455:646339:194299 +8358050660238399349962940:588568:24436 +9331139244434772763188067:497477:138749 +5752709640646373986161003:132581:66572 +4642864236732848886977135:447863:29454 +1081704911126766394705306:4277296:1032330 +8774027191298269746420106:5786791:5601727 +2233641547690268327658449:4893211:2381386 +1820426729271659626170444:1439897:354476 +4499353338513088587762882:9690408:1627914 +5665909029308125291857017:77051986:75518825 +2270588354391556103469407:33494056:23562071 +7946530612564722085702891:37396158:30893101 +6537139800672054517090006:44868922:20879900 +6339738043743734610585453:59112840:23380293 +9362921179111470603060632:214869011:179227784 +1112898498453402619065337:516753204:418725889 +3738810087301639341359387:448003413:74589248 +1498319851743618936151850:847852196:513998714 +1449978458460406978773249:675176265:57749184 +1783999796080664042663384:4394450833:247201732 +7413207545429620895064241:2473987971:2245715791 +8042738527586730293553254:8925644820:3218073674 +3965241145658690932065825:7774712054:5922531421 +4900074233499897694725840:2289343640:1008024640 +8714449182905382496768260:69944757776:2812428724 +4445205148935703754328451:97238503078:67241237475 +2153346845021834326481592:62509358928:62475205608 +4532268658052329041206917:12718291023:6660011188 +3059349688403571134441014:98076259631:17386662186 +1535114964485965699141296:626194842389:258196693401 +6314426433604030363701477:103374865813:3897874708 +5930174324045578661400340:211659820797:161192292037 +3460597712077449600815871:254672063341:92224975714 +8059168605363515215454976:771057542966:466739553416 +5555578147958095879177162:8826263058563:8789040557618 +2202781945807864155043768:7947729035131:7593729178777 +7491023244494620177642167:6571890942311:4811675788667 +8727208825496805344425912:6655723685075:6125535810737 +7258486640258320883901830:6796757701640:4671361065190 +4801150104132641814492221:39230984858935:25966542987526 +6367542289370274819923931:75376322059720:4938791965691 +4568499174971128685895829:59319045308466:56947888349173 +8890382028525904388649122:70962254141282:66749705354140 +4134253604113818660167710:31598810541494:22169781754046 +9310241336943992601021635:454588223988611:193948662428731 +4274221100859994495884528:586920124890766:93328877242362 +6404669516501336916853163:690683365584619:252441509679351 +3150426119012735497495537:808691183154034:147441323404377 +5745772991740881562034295:630131731558402:119427896434375 +8314547948453386963434320:6384627253725402:2440370453987774 +9838589662724077096146612:5168988871777705:3660126777137787 +8214360610554582444779064:4817838613307835:4456155162769824 +5803927256278610540249697:2092438238608035:797401774905237 +8953258579158595156988924:3906097257911808:3250062065098748 +7484865371527510215849850:78633994428220011:69999662293082464 +8990384764360085261930051:99256476694417470:6045582117906881 +3538406866073019428220930:15055803399524173:5971667035193485 +6983798739497115855177902:59846441777265989:22980760979962246 +3137584366455992959199855:25501292265192246:1442335139784761 +2094995047347075263652088:301348481325499765:214823952088887833 +6335560896930268604036009:237225140822887911:210555019840690826 +5769312675332497219669841:647440845912188996:316892122597952637 +4219492544447414082846944:562447106768722125:288290791483043819 +9308673685582111465836128:680192203147281580:556895039464012068 +8745280332761334678414127:6976443177645731035:1846082594413876087 +4359510417384897747298942:8607348301629753845:398137348611606427 +6070433738094854009764830:7983469452298909084:3153303071015018330 +7038846346010436618900457:9459689096443418341:5205616046352382449 +1864044547800567426284033:9264255627431105227:2201516409605769817 +2494862169022779627240820:38917772254423064496:38378652989077724740 +4029856746191540027751895:45295886994643830753:17567939062337149744 +3184800128126207224246340:83638263513123054349:22330073507560745118 +6212108606950012067485344:38445366770350722649:29353463201600414626 +2558504426659627585246509:44482732904080116796:35560948555587607773 +2663719596187149135521705:822831285337730128805:214725548916708579920 +6951106162185458982492906:946301854725990046430:519039223062091464556 +2130411160224598141136451:140748049018250746113:48690284354847970083 +8802056611659489480005577:364393252521676217973:137596998400434867762 +2659217923186664972205076:663700446030527703276:433936388370992881420 +8691816748742736335637782:4474498607815105509670:2340452365801435858642 +5081129140202153475833128:5475416464153570582049:5418077931793546273705 +6152509522692652571420606:9678577916186716147669:6612545914087817650791 +2722150438552703872035620:7124415566415279440068:623692182067125929644 +5575308102741005361974865:1549144405891688623954:1486530342709692988373 +1090744299747316021210407:61697417877180172748468:41888195835253084486451 +5441352302500230626869243:80303603663000491186548:61010857079197717370527 +2493186086599460783084188:97873400961505146214477:46351062561832127722263 +7198396149140618541491271:53749116990421000925694:49763589414625418373969 +8540494709776624567788535:25496287765541373148389:24734596085805936226609 +8480217355322860546023910:750492846034690102636690:224796048941269417020320 +4089581031717016082901036:748316729014350210013143:347997386645265032835321 +2920947715540879958735886:856972852741873642525946:350029157315259031158048 +3000210890146774823940596:490441707646399447509759:57560644268378138882042 +5027868038026172526692724:360742927019377313440735:338209986774267451963169 +1872134298932807577129835:6318096565775521834345618:1872134298932807577129835 +2476066281289999078687249:4849466593348245289738883:2476066281289999078687249 +1335365635330684684252634:8260052181322900868815008:1335365635330684684252634 +1282506500312541148727090:6459492532310010230926905:1282506500312541148727090 +8725792140235202201464207:1458125158130777979784966:1435166349581312302539377 +7964799116797901407303765:39154744715348459785612687:7964799116797901407303765 +8432575150606904516360997:54978046853775603296107463:8432575150606904516360997 +4834269800157383538672690:23874077624728220388585034:4834269800157383538672690 +5610558765489994374313119:38811391032550881572598104:5610558765489994374313119 +5826675011838830077440840:51833618159519388407091081:5826675011838830077440840 +8853591558208167318715674:3:0 +2856696645257342821004552:5:2 +4768639862016391193994324:6:0 +3218471567379655917890759:4:3 +9619778623911942707799073:6:1 +2540968608575759164480745:30:5 +1400293206392251199767060:74:16 +6650210748807947380484648:19:5 +3255426350470218870104264:22:6 +6465424521833447020747699:81:58 +1362944378883518367669332:528:116 +4062141721704604547220849:729:99 +6079960115255671644106327:557:308 +7505463896958763431641972:254:146 +4585833569716398236799032:853:80 +8911921548507425270842985:3821:1476 +9627237465268966027398888:6573:5931 +1750636417438631932433201:3657:1595 +3689503489012040795186950:9437:4638 +6548383851495484214162387:1031:412 +4169216536889171895175666:77119:20267 +5903837038851035251243759:51353:45495 +4300853354894941039337100:32819:17401 +4140564865125631485820611:60115:12071 +9906477882972985266094835:87905:34095 +7817179020813193156040836:545867:529092 +6145604041501652059699829:865395:836549 +6562808324772168005678279:134224:6839 +5594828456279107673062251:581584:412427 +4479178691199869281407369:972806:399665 +2505967152088116253642687:6073510:3158177 +7659250681906149799665043:3510490:63983 +3781875301975156817567707:9308996:5351207 +3742423134116912463874308:5692898:5057368 +7238759109574246401763333:3333193:2075954 +6388164665043933008330141:33378512:3476141 +7358139943616153744691553:65117616:32986609 +1317954969989947331328954:47190738:17987322 +2847874582696503227427238:55675883:29940778 +3339410913721947935906843:50920328:11965139 +7646527459754520138334926:766483024:101964142 +2229463256164041684379126:804864083:305886507 +8964752997864938679527560:658391334:443956690 +8026764486155930669891000:799009983:143405447 +6895380183789370262296875:592809805:285081630 +3544237229935341097817449:4117142542:1004451375 +5069874672197267080740662:5877776879:963069736 +5422093096015151977325437:7775306651:3878576472 +1713982548605764524809613:4468302834:51784647 +4722549580223980465861753:9057097888:8598376569 +4385370897427461238579722:43831862657:11284535999 +1941630617366425559736576:84672072686:17630377022 +2323773615757902659675401:28222653489:1288753927 +5189644941055486955874748:32585252870:5877968938 +1614047328529687827799689:43685607256:42130948737 +8269902643336579585227753:719362859836:534968951033 +4198760080078619012098889:808823126803:711408524339 +4723482423428764829950810:111026909187:92536468663 +8323214230340635379426723:464585725483:354303136413 +5049908441386676871981717:487561303796:89388286937 +1814565298901519355089180:8470479493783:3692243734360 +8302360138400497689327906:4249690247570:789064945576 +9902678184669988380432606:5819809908160:2297726333086 +3763714110045062793547920:8501418992666:4252743662022 +7083623289430803918694816:8395322988119:3001449348963 +6543278545294096571861868:73301715389453:18520658384923 +8439155147547834383034906:49834755152919:28739452221717 +6157151996140882962026324:35041630590400:10027729259924 +9981234533462452539052780:98549465757622:85406054212892 +6814978510185040908202507:25413127204609:10407891535689 +4113946841207001108520251:286032888127456:196259031048667 +4299276491612583740926804:913646880287936:611645401060948 +7713247191784654412718290:992560541971079:987783883231913 +8609401149692153615085731:209470653174446:140715133117571 +1650115036991221617685174:602461547315028:390528015011602 +1188327381058662260635588:5581005705264783:1153602132239428 +1504774626685603476868997:4787113394081850:3819285186740147 +7821846477971732808108621:5181603563732136:1823987052930045 +8648163614425859788848390:2681510831254605:1050103557546045 +9072537590577239843141702:5885868411139974:3445895525226824 +5552001807642953945635947:51027413932655980:9027142564201847 +5119817248496486603059952:11691137842984674:2791860963762524 +4436575317164332940367065:33784495077316789:18302422723970369 +8657320647545655061871240:13632488821001857:6035490900847616 +2341577361699381893325208:25314162077934353:3975268777859050 +2719899731174042873899990:398767654726959080:66215625278521950 +6290994333657518230644778:784199188425865055:230458616270939383 +4906550743506708772534256:731657550619445764:334736409020717956 +9997779691887689759184500:766560322964543879:234697829352609811 +9305946980933060862813177:219399207389312343:153983018140185807 +4702492881429411379297591:2650870107982093425:409465332622672816 +4968294730561996816586981:7916052147349398168:6249738272839590485 +9489193002586790352912165:3196902242532751410:708797921111185305 +2492624632855546413029542:3013605473618236887:2232700009464343441 +4871813380865637760191786:6809901976189298441:2697197837466201945 +8057971155397403273704691:17616779563069220587:3332910852569549130 +3813093656496859163325153:71139404870985756944:21555412022591126753 +1201099831114196210043357:60113784711193647401:26412584547134971377 +2926021774061881921558045:29738526943032164849:18369610004189900086 +5220772946734259724991806:84854929691755833550:73397448982065828056 +9972629731080147853519627:547396191047181509017:165922582595122247921 +6859972214412983504060786:291840904333692818882:251758049533796239376 +7464282389056761022482669:163517802346934941361:21747523874819235741 +9551143135320546686376858:583598972109091303368:545956755267506759538 +6134037148957373715307552:468799260273397237475:267627540244260184652 +5327429839355912056292153:1975347373318370847629:1893320889584251084369 +3402839321725222652924863:8370774416349905645632:4304908687160960798271 +6279992357942145970182849:7580766123067608608222:3118008042166042575033 +3126977451303303497197713:3645682474931843853586:2627570286713314674511 +2097244845062232974082323:7388990651384833368570:6160490720325130777013 +9283952484485092162374064:62816372696193000187776:49945698144721134770992 +2884360219007915302301189:95045052940928855952894:33008630780049623714369 +1865901194999611784932711:76032764880773797252266:41114837861040650878327 +1491431336142143050567737:93756400361165440197606:85085330724661447603647 +7188177792529747044081313:45685385052437312855182:15572339297088925817739 +3573117254551707096848694:215866827078260492497851:119248021299539216883078 +2686597183512833569991713:873416130491812280163143:66348792037396729502284 +6250018654355129531886207:158870486103933076004455:54069696301739567712462 +8510080297244716893436688:793969661631559058784031:570383680929126305596378 +2654543812044286851921468:515145448955493410493624:78816567266819799453348 +4869238834518578365313224:9942276039254637724595997:4869238834518578365313224 +3875849734473384756615203:9629057221563131732303009:3875849734473384756615203 +8377064094502787367934718:7520513693542345451201155:856550400960441916733563 +3891531075530042158585004:3550771257278954403744887:340759818251087754840117 +6428168201854580288898623:3122549668378804129920568:183068865096972029057487 +6162512517428167425907263:10452780347074911909140192:6162512517428167425907263 +4926730437756475665474907:48535332448899250704165596:4926730437756475665474907 +2482825119456689292510980:74819960747016399441586382:2482825119456689292510980 +7622311088299834549218414:18632435629930724215653229:7622311088299834549218414 +2929918841845401726472014:43868153635487855028913275:2929918841845401726472014 +5296100345740817101077423:9:6 +5779718983070015526011304:5:4 +8960346185225592501202530:9:3 +9956449059881631938512830:7:4 +2999680261451005420978209:2:1 +2494278636886542785569111:75:61 +3232951221084525387391569:30:9 +3703088108135149395043326:79:58 +4549642039132214644478410:75:10 +1207462158859718316611278:63:19 +6885787599319461167481879:528:183 +3593953014937093391178914:677:329 +2999447175169991986640134:433:304 +8350065312614862965216419:880:419 +9988789462017985356695517:468:417 +9619208222701257947791160:8329:5672 +4783723472476573771334404:2419:638 +2364389176434187595624288:3574:1604 +2893415749221582726724647:5092:4271 +2061854118614628382980280:5107:4087 +7503871157185374465529946:89637:25634 +7678185518863349220924528:14450:3228 +4511917247908080018120581:97388:37337 +8796796905009123428293007:41423:29725 +6127959315636069261703413:31131:4866 +1983470967583918541081450:198528:152810 +7590986353850255191397560:131760:85000 +5844842734159326287269417:302092:118649 +1492418460329461953963754:883470:359494 +4270223717847368830116507:828851:92402 +5973545016758794900170427:6421450:651577 +9596471836044789947232320:4884637:4596572 +2795276097788105705474906:9087262:6821134 +1432450400355973396024569:1531844:1165657 +2558952948446971709477178:5165564:3879942 +1407068256823277316384318:79610471:65376359 +1748981156509404063240185:36283784:35453385 +6505497883417564609700788:38174294:10284404 +5259307210612584091394832:18908737:16241184 +9589269792528376889591449:63436831:38373886 +4320643046942099391499387:688998655:239781807 +9959927926486681040613418:469860471:60232519 +2258980400103839142934099:264649877:129854252 +2725534703149229968332085:357876636:151329265 +7364467872779608864480365:280402152:146239509 +3489568852747877351974689:1221681973:539778532 +5282685511238094749796161:1169005856:636314081 +1104722879566424898746700:1566962632:981694308 +4032426947549260853499398:7780021912:2830091990 +4914279909210635373459792:8057815999:3617367418 +7130161261557375812310881:58804982101:11803194491 +1454340053504333230101594:60485176156:36890866562 +4852391364088719495178725:68798216484:38229542901 +2580442673935475569812532:52209768343:1079633865 +2598856121411951181659808:72587571634:41332242260 +8996416513661380597957384:165113235520:2109627464 +5586149030960219657095214:785932252459:305918152034 +2816595872593537880688216:363684207595:308051918396 +5727584808132122378988804:210786081333:74833994871 +1775832161461192345318097:643359673055:210249061202 +9641991721298224116443601:9882142087382:3381075144075 +7941285411727516855039888:9258240486379:605083253610 +3846126145364997867486487:5739391925142:3991662471631 +7026309609928913124606649:3739990469349:1828216367209 +9755221731022473984852917:3286383186747:2106235374254 +2702475602212886573535024:79455680864493:11928099133554 +4154984185042901752665180:83172687142877:6359064129016 +7323605288892898423424868:84694730530248:51908883536388 +3783321301831187732573466:34101974852388:6213474186078 +2007453463635224751412442:76245487726769:13363450306121 +8219626032415178808968441:172873405893568:151913332782969 +8829603874825438233240792:993473946543399:236419026465051 +3758564817177792918292225:381824925822608:277000288307089 +6400744890077435210703823:744010544808263:89692245849897 +4315899744388581174885266:898738555033687:262462483523661 +1663165171658488165421197:2582591954064728:2337079584168333 +2931366782681560480549147:9974167252552072:1035580003660923 +6880013807241544734676600:2542959539785782:1156166231268880 +7503206717896009902688695:8147163968575935:7260355908085470 +6821144440290839465472258:4839847280300347:2574027343245860 +7811127775448134143974362:36889904951779701:18881042744254855 +7668843871718836547763970:81412899301630136:79125421868793802 +5417553087921422262688203:85366390443978813:58833126779815458 +8963761098605284163024680:86471456094785878:79692725681155924 +4887176487957520251628116:67638768523950418:37036673025026020 +2594693781408758733916594:373342942876892246:276109245451686916 +8117073197582058904294033:498258635089965875:69591730360676408 +4323099492112484488311609:595436814215535938:168607849028167355 +6835750948509482316535404:272226346106748032:123315795482330092 +4477514742300681082259373:122755036242284305:121601076358239068 +8967239311768016192799790:8651271897597787719:5661926162070726472 +7523179268618084541292751:5647612853420331642:5481802567601647835 +1984398324557018830387964:5478686024736506587:1810339381935056803 +4820084325727556032699210:5587756830455703898:1467424009014725940 +5900219035872631962783267:2474284542050261476:528346905642930051 +7250076086837728122222889:28762461154426418040:8791024924206134209 +8911543870277194989429254:85195092742402483392:51974329152824142662 +6165888097499536049396173:49473040327463414322:13608447443259030991 +8958586778879688000375003:99425546475750573710:46764775134057382873 +8164398774065763698721846:10800894568978130139:2569375195126651746 +5800148797159534715560515:271885301741748600209:19655102811827301918 +9248594269887559121338131:823923787905103425915:49750652773165442256 +1106920650540156396161912:518312818914411862845:322782157887068987837 +1309856199931974868384990:952497330462215741523:172370546428223790865 +1231013126121372861073473:730083981893933108435:91532648201640252063 +1447295203715879711398670:5871807448952553741435:2830571273551491005660 +1241683049853334109802568:8858644067646511596388:1472880382822486308248 +4157445370779541555542736:4459868446922481122430:847978247789149437976 +5066898525139544604022299:8603607779131366669455:7977151010301002382759 +7523116251487043344625914:3490701313065193900360:654921831550489350114 +8317188768588692473969108:76027320371287606832105:30210848118343329269663 +6742764734083402093762378:19619761170314676469158:13186652665468064841184 +8524413740930797766671655:71506662374281135752299:15120918391342612148074 +1335863126960049276440203:39538437524548012173716:31094688649964874707575 +1467877966707308234481008:52450372540624302758260:51717908110452060007988 +3654827141622855860484464:778351207870546805283515:541422310140668639350404 +4305485798927271741696846:907273011729054133361883:676393752011055208249314 +4403170753291354205258343:964495810444598595803952:545187511512959822042535 +7174021803909210557408152:710499386253902079868380:69027941370189758724352 +3436379487521366525815160:287278057189079371421846:276320858441493440174854 +3980768488019085985226578:8354762838898050109965749:3980768488019085985226578 +4510381752709832995053310:5364962173789171044596569:4510381752709832995053310 +2578459313986411835492849:9145442404695493441005442:2578459313986411835492849 +5217033421147979623902954:7769161575543387506657670:5217033421147979623902954 +3191945479727177167269712:2299163158609477955059668:892782321117699212210044 +1401826837592794823924478:12220748553701406820632277:1401826837592794823924478 +4630138353890276746558586:94093942236959409911802829:4630138353890276746558586 +4933558360370014232584409:11521150243743447018445284:4933558360370014232584409 +2426797941900011233337659:40539137383481130452954551:2426797941900011233337659 +6843769689793942804097021:17084559369161739006789662:6843769689793942804097021 +6598044747978890828262207:8:7 +5549483341086570004649026:9:4 +1517264461850415033533204:2:0 +8137115095846207948268610:4:2 +1834181927853517397427861:4:1 +3725872710052839575243023:96:79 +1433793819583034507612232:72:0 +1370551469100956266052521:35:26 +4733566038235944416035488:60:48 +1788930430047789017060898:19:1 +6591957343377820006501670:490:160 +3145164191751766291389600:303:270 +7302201037280695901200551:811:489 +7377861071026201628354256:583:27 +3500418793494606742010921:215:101 +6643978325783138111018190:5445:1230 +4606000766520402161712243:2268:1011 +3161998060389888352512811:1684:955 +7060797894327235385889519:4414:901 +1929320631378721187401392:3384:1224 +9629480533855136781198819:81507:50757 +5443667327371605244687142:75756:71258 +1718920992180483381277071:91309:50315 +8625711815419482816790171:65950:53371 +2492052286592747010669173:48851:28896 +4775830107111558855106331:627209:503318 +8654513358985728677385751:980679:714907 +1202383875739758652622220:317937:52536 +5176649561273507166140120:655353:179699 +5212923386675537612079987:330601:222891 +4288809093663750373233696:9320472:9270840 +7436172167177244809261108:3921588:865436 +4691831102315795811578357:5872691:1975829 +6887455926744880220671817:3223110:839927 +6079871587004092600970370:1934686:1649524 +2760910566815622655511187:22155935:2931982 +6977357634383368891027555:88688635:62875915 +7970811232899925487980782:37903049:33551205 +7038465020598391103674115:86826215:25534800 +2061359325182456790083344:87017101:529590 +9550076703892924061433348:150112484:141757752 +4669991125855594451817371:346690011:193419239 +4648863020812022886578166:131987361:84434196 +6384062268417228344881883:694643221:289875908 +2583879774776581735684962:193337475:121133187 +4932584274044101757398413:9991915639:8367257500 +2641612798063046736131763:7449486214:3579210903 +7308457773406951795011269:9441248096:428297957 +6182299707020238681483677:1074791580:145189757 +7094470258679127512305607:1238592286:778249385 +1741735565581387238293222:78632751474:59277851794 +9798149681411320263528960:95179893566:74192328816 +8274056905469945286317283:35497251691:26122428764 +1999965253093133158895332:15981912220:10026800732 +3418038830562767668547285:17354827176:1446907685 +8380875925450184461827831:977665881684:597030942975 +1259091424739122042798721:632864520803:307720574452 +3502023501803160235843131:531852523735:339123484916 +9524565257687283162830310:534006703106:376786081718 +8584331150702132625186550:328442621288:262849209518 +6591099439488318027490596:1576594608511:250640456263 +8310665159850652246371199:4190388337543:3089750457459 +4283523710766715947273051:4884917051710:16577160511 +6897974645312619821274585:6695064606473:5150446747446 +8863194662133559421637308:2675154045899:1677857649959 +8458187801833243596937633:61670302685771:44237710279256 +2657417852439812533316095:49625176715560:16344031217335 +7864654512042774361434086:59563332657940:45113025097286 +7882906910494961677606248:97355010809806:4570294773880 +5673794587058123659052789:45426214516036:34733047254933 +5007989386934722426756704:234656170164738:178797865481106 +6051246170143092246649342:210883313342001:137035647546841 +1522364787600180560018081:918081995702679:358861961952332 +2289334513446562603882930:421338502398569:359690848798294 +7921501405328505279424639:846218149097708:727685684918347 +6729902196084368851036902:5602265159675379:1371321085205421 +5192142757666969471497962:7543170223098543:2948827343212835 +7254934188619984554651525:2727718354174771:2115867144871617 +4273768626739885875131420:8924173585029720:4017356992433300 +5454387930558684792512409:9666291045423385:2964355896846504 +2692985071826580708432839:14583108631969273:12064954403993745 +4043942591959510193067748:23006561790265390:14492318709029978 +3692642756028984651265399:68121991891970554:60129447694652457 +2364584655251976279943070:84784920011316014:46653341566502102 +4833271442558510277988045:20100826934322588:7765263168474721 +9856611435904033063870750:270950042641652956:267937474288356210 +8089450314557694605112814:752643412376069656:533525666762872358 +2722219670587212694829158:195844567418515782:159615720013638922 +8559441667624681652078676:727072575626645806:129092111447026244 +7976876727164760234137810:700910065884129930:102134475606329750 +6367108666710691291367492:1371673367995924780:1156785335867625372 +6672022613847821809978422:8526054308227596306:1445215857458699652 +6132524417240700558114409:4716573660421496863:2327945047386363768 +1736306048528228625197833:6578007027093936513:1625684621518972405 +7629792745589088751121455:6701261206378749862:4786454499308242735 +1822491982103857152247116:37606082386068616243:26017510199871878850 +3100964466167958511388952:40051607889233939918:8776951909947177720 +1068512928105917645538451:75782667852491488668:53094053640146808319 +8133755882598015042323971:57076505687868093194:11363042684553619807 +1664434031014025400544721:28067060575332204894:1204775674985920733 +5715618860834640032477208:699922037966553312645:55498799765681418138 +8572200612590695945999542:625951145444448293949:425626874421008661936 +5259712849590614829948608:181259183868644121410:115111274168358994638 +3444752769840034502511161:468429617544426836802:389792035863971506055 +5307809305809224320110461:640141959597891074219:392318783109423760732 +3782233385625145794902498:5454643392369402678881:2165514713149738437965 +2153221137883433150118183:7193300387937550704492:2424321890105489475075 +6617416729819572897885959:1116553625670460642625:719944096423129690209 +5510950467870531416369558:3406152360173035869640:3202101470732415161678 +7447648897032048788919777:5874974936119066907837:4055652969191016690298 +1253659895123441979743073:55876233081058922988763:24382767340145673990287 +2025862499805086577594670:77918796356150633418610:77892590901320742129420 +9167916314710930563228163:36025698949890797591566:17388781438667974970399 +2465036963410928408052658:46511766802176206572481:46425089697765666283646 +3488670882482948644150704:23804488937624051652730:13215497589837102852124 +2852497089655498975057659:600363447219158366542583:451043300778865508887327 +1644715042603153531180928:696824897304323507115059:251065247994506516950810 +7536458776720019157732401:689002401497087247139216:646434761749146686340241 +5233948048290298243178165:686562086389781351305729:428013443561828784038062 +3668458516567310359430838:267679469996760543033044:188625406609423300001266 +5096678160427980615080668:3154936740339067954171456:1941741420088912660909212 +9376428420306090675428315:6323796892887005412494232:3052631527419085262934083 +1068861607684980909165296:1387460864646978529341429:1068861607684980909165296 +5427175689503225294393146:5280458914865912985255914:146716774637312309137232 +5769623150464890097169715:6339176811540568760879445:5769623150464890097169715 +5277166970261219735419888:69301434651190915933298599:5277166970261219735419888 +3542711203298948149365421:71058551275782107240993616:3542711203298948149365421 +6303644347170583841291775:42996770911030490136320792:6303644347170583841291775 +5930581978413258662267560:66360947376164950834204537:5930581978413258662267560 +4402556357635439799624712:41200583526942998164041977:4402556357635439799624712 +50828811912830137291149995:1:0 +67550010169783393869737575:6:1 +36394081915939244171801837:4:1 +40696329695875165443397274:7:1 +35679538487535982180976977:2:1 +45831941388455161020759145:40:25 +75083700783772023994862298:52:22 +18339098410666101477304722:77:57 +53576351231432763101204612:77:6 +20552323637383967350836325:40:5 +85616114825040911206981140:368:340 +52672599970939936561086234:434:8 +66496578483561319770473699:903:518 +15902394109252367046376115:800:115 +14768485192394194671166031:692:503 +92594187714563156230278157:7185:757 +25760595439922150800690336:5331:232 +77763452660945889229652110:1397:719 +22127185581703500111266333:5475:1433 +77768088836002589522152331:9746:6771 +37453799484161101739698860:29215:5695 +56457009818684959180079805:79925:50305 +35473758265187470737593423:68849:60949 +82815396565987551304974586:69634:2152 +20059733307798704920272283:61561:56569 +68975916123646664250818417:919574:685037 +67492850838487140023169617:297637:199246 +76261226326193854907409185:754264:497465 +25855503057464290448504417:826255:607322 +94761579653547088048688991:898154:425901 +54077843439513035776939350:7676983:4451368 +15635949049219505365407813:9814199:2609585 +76503452535967212871316832:1271033:774304 +94365251228472225519509313:4682014:223381 +34151988078988418314715670:5631753:556260 +62458796917328018094479304:57730993:24733175 +63099774952101265386236524:80304013:66154313 +42952725517102703544168634:33774730:15047564 +85384758960450933139221755:29131272:21112259 +75593167306011994391795815:23149196:10424235 +94463172954006941301294437:617099491:519323111 +87475978948984625344177025:615624364:233630257 +51616780523781805447708484:135852092:107229604 +47500733191245735925735899:430165865:9440269 +69373807804115477098086554:366393571:196368663 +27912993152676249906369872:8582026566:3948425096 +75603802454669449386055715:1758989476:919736007 +46139244294114329588906274:2416071040:493742114 +92614037099888093550322972:9622603457:6657472458 +43834592499604934588155063:7416225082:1458766785 +38405613840217040982416480:10459479123:7021415438 +79271843609302209161188438:69038656560:25482629398 +63012183675858366031091620:19077762163:18426955954 +61224934876285442732087858:69006462012:7498533626 +50713771268735374625286682:20723209638:15352975594 +33570491555227419286311879:644414225079:427481917278 +35329702280066113200432544:619781869283:45901321670 +25121919700253859710590704:893129525832:664842294600 +21296442935282904323176418:220548061037:99244755519 +11174601865903751811676683:187053358172:84739594895 +57541944941510358535795963:5494368426562:3562486545665 +18018899693044416974537931:3314281692227:2400890480464 +81089580081996662666529872:2384586167836:813474859884 +13032321659762790605517175:1883060142022:692835932729 +87989381221601769080974809:2461689980907:2443906583340 +81656611590324324421964138:81615338586353:9892853739811 +30717200870564925923693211:71450266880400:32173359520011 +72749593215482896482492358:34888897880118:15794796064240 +99351531727898247706351863:14280133255015:12344736739463 +52813180316446150779116868:57725697584501:36607022702759 +68712562173922142871008986:531743047415668:84631145733594 +95097543442840656150029210:452865600682294:196977999301212 +64238828508536798361962260:287676991259949:81014702094985 +52095546865044306023156227:287629504277742:277207351092901 +18770460433207484005546367:679129122956009:583354542377850 +41323151722056086515652938:4833009758549530:104451329304348 +24369266647594805416028072:1264949838059604:124460734257920 +85600192071176849782103740:9790102495032996:4284632873817796 +66950035206299019302519479:1701736504933036:104871239350079 +53575085030322877792719585:6253529600992588:738536685865917 +28200385393870196012317144:97675871705026497:21680965079154952 +84822354940203564242518954:90238011601683927:74059586940721777 +11579878777206437575174759:62750155553652349:23172076475073152 +96287709411220132437753208:27944146104761823:7687350118783033 +36367146412265889502889059:55803220406107040:7375705796913539 +98176743835847630827273314:130101968950766866:56388054145585194 +21795761005712092179681349:761111630544417935:564165754057241839 +29329992835012864877390736:222165116714739921:63117103724063283 +34533003601968589014886884:488956193719433786:88850444905599608 +54583041610414123355577330:950023686693088742:705674725537212530 +45839311178885568178054360:2342582345657160612:1856088715267887712 +96174517085282275190608583:1889006191851944020:90016485618857403 +83370749569197550315438935:1997854695008412652:1438257969203358263 +32090443752247367332852226:1966830908012218343:421330719145512710 +49105043421334139043308897:3522428724048952786:2323845556065432775 +13603092819247717530111895:73048366383317948040:26031346249246103095 +15642274807135253244601803:58739316771990626693:53490070921346882596 +98406705678165525976028796:58235167040306473551:46885950042372445731 +39655903841476053168610606:97282440036007821318:79114957968917826358 +53298882531614041504200272:96341621695599877180:96185822408251540412 +61754811155378075652522315:241847125919321116374:114940383105870886911 +96985338329535059053273026:947903160056787742123:626508324821217958281 +30394039568893289364169869:436241252204310640302:239045314558433048925 +63836182691512690332200893:627853783010588484763:405011477127320892394 +41289883654985907894405314:296011752691346044594:92307328122172122036 +12758218835911412262945591:5723207974097763665340:1188261647497052902731 +60250759259472286015399571:9563862409065646947395:7989944767775893758466 +39685748000663844351483037:5571715599557732760770:3989500613671629279097 +26157720476329025920469336:3857085443781218923268:2824082048580401789028 +60013728766034247011205659:6789542635835148409819:961407887370216815518 +39750033756406308300538953:14065880937917453061838:13920106789503400846603 +36758505996289317323223505:93344282838654231559242:74202840698204320441399 +88177875247365498330554898:97774410253008048166277:83131609405246932739321 +61493273667934109028729951:14735951167317661179182:149446717508928003465 +28195012665055160606184462:98298627090440420349825:81605317189200386134512 +80128453015500368946859151:719098925398115748890336:308472296309520820031855 +80274102387471663327074555:356243775051674781983081:119253000844837380881330 +76850116806744979550333681:719255868366197304912520:608994759928065229606561 +64930612285648365704680125:487227500989898628354207:129354653991848133570594 +39411390653133309056192475:309648253194004978189697:86062497494676826100956 +23947997605031167692844675:1416544686183787125104347:1283282626090573691175123 +74564789735572818873196663:6682476560843375192156581:1057547566295691759474272 +81554728338855282982336844:4024733234279930200913625:1060063653256678964064344 +63233887530913212531358234:6091587755892025136420240:2318009971992961167155834 +70618286262439631469019378:6942626115702996974060883:1192025105409661728410548 +24690479557377908832491086:98962936805094580707228789:24690479557377908832491086 +54100359002402663349394620:92405374538201765017336362:54100359002402663349394620 +80848398641286779875881365:45274710008367050111404174:35573688632919729764477191 +25383594636698256896136009:59726660947797542882869877:25383594636698256896136009 +44024485178978198568877335:21549499876989217986152788:925485424999762596571759 +94179797638041025855807339:497431099078509580904171875:94179797638041025855807339 +57826651932430050987025668:942815394011462670301406573:57826651932430050987025668 +93209412998225721854505632:796454667089188455388861618:93209412998225721854505632 +41971974003997986047845883:188219552443433076925753626:41971974003997986047845883 +66652389820438542750332130:955308050350067726314748740:66652389820438542750332130 +39635298029779932821659443:3:0 +19904241723135673661838883:8:3 +40903751431240835470985944:1:0 +74958462101533505459916310:5:0 +23632131811071509655325517:8:5 +58129213293254911791913503:66:57 +40759425158730516820781159:95:49 +87873636721645142593611927:47:0 +70750559024872693734038498:99:62 +56628587304560105488074447:78:39 +14140594139337119602265413:628:105 +99794332750156688021410114:980:474 +96762024789124163492807518:695:403 +59121034752589178303782950:530:170 +55930288609315043578838137:791:178 +63174597420381066871876051:2968:427 +72066072045812609301507165:3582:111 +98269404371067674100507766:7126:2512 +42676610714623460801658136:1925:936 +37357953969743917251544859:8649:6782 +67522223733720559743289439:51872:3071 +59809493304668303106496241:15019:164 +36900291307076285777350220:81595:37040 +69568977059844430116380066:49179:13973 +19153701844494462382221392:50965:24762 +61333997091447895263126570:502175:472720 +21530545000832129216149301:393875:329176 +24042069395035236030030963:581621:223028 +23046649400491934813245813:249833:240260 +44335864763025290779371127:464291:34514 +89255286176767530018148933:6561063:2440915 +18174796437621421518866447:2985166:2463829 +98757500930161566328622465:7773924:1957469 +13979295959483854561646639:4321015:342534 +63946164866781326980151712:4436380:2711132 +14768477305288370590945205:20758453:16322721 +56280224584984337702931824:25705079:124890 +48307851853473346961099677:37834702:13444743 +71907355830646224560281586:92986549:75590035 +71141411069132403573074050:96705040:88469410 +16199172381469156016193392:658502602:430158876 +27474359237592121546536469:953468261:143838423 +18783678205255002971128309:596153202:14125069 +17041515474775199284931787:980542854:537458517 +33395243014640817081480487:520309290:246649867 +82339131707431748677636385:8815194705:3251046440 +97636328508012396783637518:3949227882:1363260060 +87919763443797470157701110:9927147379:2805930028 +76464570509497327550297214:3362860458:1447878036 +43150581421137961260173093:1945040703:894133484 +46002650397125476944746825:90522238428:51991711217 +85422279112449791221862825:50689407489:2388626360 +51394066522830022171707308:29711065986:1883787680 +46098568597849367983456708:43581903193:29676701258 +72380900943839284151100274:84221649131:65715597591 +66178167915473503945787657:132646176408:1905256121 +95370810677907400798809375:233110936983:39925602156 +56815811704021388600475791:458856258566:269317391169 +94034738675953804127320415:205415674433:132223560132 +52920547907785895995011287:131024789807:32791792312 +69144796688944114723973873:8058974291945:6382935654048 +23675469097918400397325086:3933709798768:909928823790 +61686919369401770165141984:4056029018062:3147020074034 +88319844578740839929450860:8406199755001:3757258779668 +72670051511564680007575980:2747953884630:1487326671660 +90133046624433358214532304:39478333022777:35913571241934 +99372370210564346473407678:13264589721762:4251219764688 +75616385026602428387931655:10239899241823:6622208109895 +45862114784839174021280034:30630492167987:5965989792338 +10113261484259322917827777:81899548200875:39313976352777 +74129045115710152060649142:109315192079662:19625847761448 +73208260014039226822563781:990271104718976:365527323242181 +36470471057823211785090339:153542687779518:139354695801669 +96486326955832231934588329:332849647216877:132435384299629 +12538876101107499512073059:444868542625636:273269648136863 +94105038277818991847392115:2601930229885775:380432196469665 +53125085697829724140926507:7478213026877255:3043768526786377 +23420220986347206309446718:3061138670878490:2049805422375778 +39643580094705948194834878:9512413479942414:3587657983413964 +18767206668891377529715505:2523513579585048:1495448635446617 +94836478520910759503317275:79746760868525546:73534223195329305 +46873688312235448027022909:88493329947140542:80628089028908037 +33284406229126535430726092:55843731697195073:12947453880785197 +13516320442882713364664644:54240443312679558:39976439266340806 +18662929047726209045520462:81723503645894683:1140673302107921 +91469875366110383815632040:343892254819701753:31998802578487210 +70322922348428057443855290:562706389852389475:131688479463649140 +65637149393231518645984450:895851733050263867:180978349122667293 +86254451287564829648843297:729641870370740359:291824850784758354 +43513116500090134104136668:265450725427197781:107029251228640295 +44677853063675263333475781:9576679132969283620:1744932855723896661 +22768372366019033329392907:7743585905159003708:7395696781793808711 +35960384816010742087156874:4970813335504042913:78093831417383496 +96682007334393304831879024:1910969574712474508:687106955640443172 +34307969362058766437951804:2595273845865162175:1093481149851432454 +38982646366718470818343551:16949702378606241690:8916459596949270861 +10543588471583302884336013:78776070987563695799:41578465802711206255 +49286963511451473419362433:77571423393140478538:20373034841868280683 +76587996275319065318476998:82337954557057556528:30436799066193053350 +72562586669760741725405576:36386365474044894004:23368649037025172680 +14895625851195111544613415:780158555419545631257:58552569726807023514 +55729378320117796362885799:541565032428741528145:170223070578150652719 +15308291150296749511555076:620337683180544563947:218142450451307034957 +51895628328838496837862667:413259869016177508252:107017262990061609515 +95324156401982237938009174:817150859172263018807:240076101067742097396 +98699522725011190899406343:1565153530621230544226:941084036392780514783 +55587184860490004781874171:9733152961945385363870:1148294819908968812601 +46813557227576526754739612:7118473197890169058874:2477478250775023584188 +71416631612029994912432063:1383641681450209879469:1349865658862193519097 +49343573725107442493232967:8529176450928614248490:2287956485409065718317 +84006338613429338507668319:74329785740354107914771:13680726829196563977089 +90976600651069199439536823:44577046560102789902361:39425668459508038720383 +60565894444020606988276006:97610206884051465823248:47566175908698177862246 +92930233028771533600939772:43625103304392351153930:8762990415825643068872 +35807736180623476165531136:55425965745018485360366:2562309341534622734700 +60832590208469238393734624:360339749550529958188383:295512283980205418086280 +83619176442893201516332193:117651052828481706938503:86928934671189589995063 +23649685285389199164057405:614035998845812457926883:316317329248325762835851 +91264515104356019545898623:773919995610252348786176:715875617956494737916031 +66179038795629367629202457:500534114956876268713562:108535621321700159012273 +73892276309933284821755434:5025241648360401809013347:3538893232887659495568576 +46111177665515429416028145:8636888735445992895098873:2926733988285464940533780 +25041220993278357081507185:4764972048054146263040042:1216360753007625766306975 +24027009286164591410643080:7667289384414420755582621:1025141132921329143895217 +19951277267107674990689392:3251511301052710537783937:442209460791411763985770 +58993205251391289488616388:44093332546037916141353708:14899872705353373347262680 +55118101057544821483847826:94965277343248376023811292:55118101057544821483847826 +31875377070672055129608657:29047481604985796030113475:2827895465686259099495182 +98731817890809301623540251:93165450598617553604635666:5566367292191748018904585 +81414377327384225190188611:84114857443322176825715695:81414377327384225190188611 +44743591563653020020308495:679957583398452365997896835:44743591563653020020308495 +70479088979461231345853707:104012543426320745089818413:70479088979461231345853707 +43706229455239871483265192:968011808741201296802900187:43706229455239871483265192 +43439226674440788175314518:849469510848490517404326554:43439226674440788175314518 +68160320953474502677003624:742603566369212482788509208:68160320953474502677003624 +50667645915974153819291289:3:0 +69647879284850762581171555:6:1 +97166637548463658867560801:8:1 +64118487537147288721677994:1:0 +87630990474836842154899325:6:5 +83192472680447496517828921:48:25 +33130579834126235474175425:85:80 +37982333301498393296843819:58:13 +82572712119104312961296325:49:3 +37653829179633752663228094:89:12 +90341225856245140018721496:574:444 +66188425570887740105282360:602:70 +13764388723461594265699665:104:65 +85754288028585724525931098:463:111 +47606164958317391710395871:379:196 +90901718348305269575418647:5778:2597 +71645069585487579382760009:3422:1845 +71624197716617198380840988:4116:92 +59310370870188363689431713:1994:197 +16640054755983768468556025:6410:5475 +21583308822074297129110639:45070:26179 +92864182113366782163764043:54019:51355 +93283850377579814191196479:13354:5725 +99621253182846174040560061:81903:9715 +78099143593421011500320181:90634:34277 +33045821926309831891588665:726180:209265 +20081094546540161760230163:280350:264963 +40827600227917172438282203:147134:119601 +80057371135744389723216768:665950:456318 +11371179057766264888420118:422234:370538 +25736820767991734383708687:2225848:1776407 +92483567632873332718591893:5051488:2597205 +84832758888181463782090563:7413950:2303763 +35210629191414205905217820:9537960:1663700 +75166637850718088101473369:8276262:1402593 +85280176995670196589916692:62560467:52273548 +93488617873639143550418825:31007006:15913109 +58725492106899069226238797:23382892:9396473 +52298734925378517517264587:29501734:26851743 +17292656504805670300563902:34523477:12859323 +97312503066988594503121528:184256693:93900349 +82564062436690706756958676:903699631:213040308 +11474376838642060381825547:215920367:170687225 +78634273656511552331636359:797340176:570273191 +55194720462152923852622587:869795496:832074259 +66027343078200433246035546:1370763233:327664157 +52213949765947483542725625:3435540971:1111706117 +72239775878737390997200821:6958551090:5573676921 +10743923530466860377455918:3723622178:2207904406 +12471959044740649922919800:8924290576:142181944 +75502041316747091224400062:61052421737:32159340402 +84724123111448235864436996:24909552962:15422144998 +45312286225434042012698198:42164854531:33326427652 +42272961860053182578324514:86725028142:73086341982 +81577265502673527887236353:64637937754:20818686565 +54155664083450002122517322:871111080019:245446319221 +68977790134447502461104625:291696790782:201310415911 +19843975394117176689927299:114585059187:67514070359 +55051316027428127098873244:524688195032:331380209204 +64656953009883435538613312:646929792612:244692015920 +42549015287182843775987066:8403900161415:95701223396 +84393540150095861215831537:7681749503963:419026459510 +84308953136933013528720816:4786874466092:373661393900 +32716806673304240560043559:4139233111858:3073364852081 +67282642343642435099825181:8489420524206:6390572614719 +22264386784857847328894459:24112269671145:7634548216994 +35757624348754309548933777:35167667921882:12558073785957 +22281512785851794124080510:87194987528908:5412545736866 +31160770699064440788398094:53330645609026:24677128711120 +45014632375344609447320217:20047633705912:9006779858273 +54891914422698945906895579:993534766321796:768263587182367 +30498456216492029499400275:988606925718478:841455713969435 +91339752624386814910682865:543903057551865:500163080423925 +37647580873163122685378252:919101060950525:810382353317152 +28482997351309738468012868:513312602081344:260058609280452 +88187314302039898352660705:6366409927565549:797173420348866 +22737805642966111765720238:9068023553909178:7623088992341138 +98752338205420819097747939:7258210347565661:7206763708744860 +94214900196422949358762439:2876311198683419:923250571009873 +23179728502796411039995875:3188937647059935:1775395519478295 +64562058262962029829758275:41169688128472740:28662344770416355 +90058856189944727056661910:31999334776996161:8077962455670228 +72138162495237246884477155:25527672652905431:522477874025548 +46248044632309979049579906:84936369339936314:80138163860128150 +35911403243183700837692854:30398006135289100:25598872047790654 +88600714792032888893331103:372650703509890042:132824282025961869 +47585230154021833283698393:146185704380223881:58851225667074074 +43398355714917382483127052:818818969582838371:497022232727616692 +63831502722039920519365014:659308410369303371:537912231856044777 +73047655484674687144792128:476752715099908988:181820164927892168 +58082621522505490126808762:9867504667908011799:2436022619858921414 +77831964841485545688136648:3346089416010476842:1023667648319032498 +69188538470228646612869242:5579496522878107243:2997271723502262228 +41724575840014597365563314:3907605939281338282:3663251351959436226 +16838534276748118913332173:5518045045080491144:4617928242048261557 +39147984510117013115455764:12179180372426920630:6588531754765304084 +67673917238615736073468462:81566911649918106297:52949293231067717581 +26776845373251305561522562:78577691098234118978:4155397163071508480 +22912139321397342079654526:92428649762941102359:1331661872215882016 +54119838860755242592211562:77505632630597395156:58269420630074026598 +53022158442765242503455243:301830867722367206190:133571712440126470323 +19056477934273293018685597:934859660455314160064:298615552169179941021 +50705279939855906545030957:325077266716005262778:52954760121662181295 +63855161095083851432199453:609363682355490069715:550184734402516834318 +97048910333891671738459785:583755363073955887872:164978209579335627657 +71413261502883677023103086:4414251805217475725021:3910049880572219438369 +45851666374868684071355255:7669681088272242805107:2312829177216582425609 +80768907725226103076174035:5337955853325361798567:297708560053702056758 +39252140967754604049006327:9844258437114051509008:3082578980880682591431 +84247580850743561444782342:5005639421880539165489:2669380494087289602472 +85749984845291964083854664:97168080039813960651527:47738250176050789207850 +88881469183521738504366396:90692295073859373944068:3020011139552039179756 +76503995065190511838005886:17082482310188151435979:8639280167969707691924 +57747080641442907547711589:41403060698575403154251:31214027628795550685695 +26569892976486799547156741:59839232466069426648771:1273761551974115102417 +52284520970473548089149818:597677340235913101406846:286592369949108266754216 +13161646548958359443592278:555031629966530104622153:395919059728167037282759 +74429681927645374767165944:661988245812575672170821:286998396636899484033992 +59772366395054941477155117:634292151686019855169826:148904136569075091191473 +63506020885113473738695850:527916308546488381206414:156063859534867993926170 +22234116495272780763790834:7187396570669994903173249:671926783262796054271087 +91847712614085282003902144:3700862897867143760457203:3027003065273831752929272 +28385793456898270715486537:3898485302041670684167799:1096396342606575926311944 +51058397640390594158032701:4231712629790357753741509:277846082906301113134593 +26907172221616777482688823:2857175504674945050194562:1192592679542272030937765 +97396482775387755159967344:62456088238883327832572110:34940394536504427327395234 +98166195318137509057847177:60922358936446216435561067:37243836381691292622286110 +46346889605859276934231884:65244108416493167198775158:46346889605859276934231884 +79605943100270627022260950:19969414774359550824447051:19697698777191974548919797 +30086017696266314392292504:91555460106798716943150976:30086017696266314392292504 +40470099169312544578667256:652077802224132374714074934:40470099169312544578667256 +56901879496866539956355636:765425820920621331126671930:56901879496866539956355636 +85654193108544373439965353:267897648650352871024414291:85654193108544373439965353 +80157107344024389495425403:670933330432151626876087881:80157107344024389495425403 +52945283699552493674424948:285110034627055531522269932:52945283699552493674424948 +93291886831368591414192416:1:0 +16133113730739112810340907:4:3 +99910025665120635781496146:7:5 +22425091927861094368214692:6:4 +41564007730008333122561545:4:1 +74253631700166687425481374:10:4 +28097913016242000016175609:18:17 +49866788374753700840715289:43:29 +60621995596684708592866007:17:15 +34538614779509155548348960:81:57 +20173915114324781850383430:232:222 +67231020687445924351365282:221:50 +14950320375341065338051781:175:31 +23331674186561237526522412:815:737 +23925411567954408950952315:402:195 +73392108654500482246145221:3473:1012 +99353907251285588204455799:7101:5480 +34822506782993388728309185:9550:3885 +30378495447615759683679545:9839:980 +93248830712608617432640702:1349:603 +30270051316521894182159249:30701:30194 +44273470236212312589854483:94176:1907 +27607054070398344699455178:32192:17226 +17725247256615646802078444:85006:76286 +66689072471314544394129862:77679:21442 +28249168143099798733722564:743633:704384 +45856686874747181999245061:796277:60712 +63610712483257358779600283:493703:184073 +75420789314467471318284103:880025:203503 +76673313230270039191071185:101768:80441 +91414677769058611323675703:1849647:734341 +79046568748776420465122649:1840681:926403 +10129082701533213003039141:2525095:1554436 +83148266404923567683535454:2638820:2048934 +23386789501532199612525377:6773313:2921480 +50882129811232349580691004:84575845:8162644 +59128144808428532717322924:95268830:68212784 +61349728767196486850884358:60854148:55077578 +51330531754964528749153713:98787229:51726351 +32848456204697825644742795:31532846:29642297 +89364148423540967691922257:130267598:95323445 +46816004835983727356892198:570902282:41589952 +68185482779828332101318845:178458512:33768269 +93018788646639421687659082:746102831:539847875 +42907973670843816522067456:609303594:150737560 +89341999122281391385278504:9795821941:4722303779 +86358522541707752468368080:4160749778:2529609484 +78651110010819634611026438:9697811775:6793168613 +44625145393152745238561458:3594264340:3253519198 +74916909306489804758648995:3625278435:3603949465 +12914405652554894300536001:75769537109:25679845847 +29279269918378679231435248:17833513524:12177450496 +16364124802207619903777006:46038260201:28981914679 +91925453891685110919266996:54990530890:22347452036 +22021722711299902872501883:15941954724:4887616399 +70578338546924575847195566:696125032661:140469578548 +24383989587812309719504495:700087814662:287465459089 +62109458277885833833442966:606597986789:366528648309 +71867523250725722961246434:195692020478:24616255326 +61923392029400252197076759:320278956989:169254532647 +31105774584061306008334856:5981076779289:3556195186688 +31927442788492921813221026:9183507609098:2938878566242 +36428047040522639153719535:8669722884388:2587419064171 +40214663945098034155285322:2013072625835:1788928997692 +62673583053832724243711614:7073886332695:3616201003224 +16630458743343552394023576:83461995328524:17510309433252 +86332599251169533228923160:44859893415143:11834997090766 +72349256285730244785681398:84373868549585:39206655174288 +10899464196894534105638751:10758656223268:9172806742087 +36752376076517337623512623:15700193358435:6625188243468 +11314982331782235977943906:965507335235163:922202477828703 +87473908353148354240047393:144315920129000:4524442984393 +98788988959841950518042372:162323851502806:585218526796 +57531627361773462253800826:809771917730295:591637601912596 +49398307213325089924940871:155903648909029:134076082678478 +17313854119336537574944554:2040642361303666:779487382921396 +44897488821428635853306077:7633045938946715:6920059163192827 +49084916129252184821225824:6612495877576230:6165280202531074 +33352029249212501584073074:1013026902974532:111898589439826 +34082058807560085250902870:3223128291862778:2219765447342924 +77899353943757813648826927:39454423819423238:15442841928847277 +61209466162822595834222307:52983323219715384:23955068717374059 +43800740147714806207737660:50181775455611057:22015806805998657 +77721206744452348539868414:77239868375450358:55091171778607642 +96976198831556261722128914:62371122024998984:5844998799638794 +87990582930458296016405229:717597668801617601:378763978985087762 +74357528420677871703745383:117680555016698779:17131646400694273 +33728908129672160283553833:740270957965405341:213029118033187431 +12805631565465751063194639:165883348205596443:92077515457922181 +77660605504500509898410582:169692734743511534:12691427851502732 +76082889327799638295176174:6931467850900421748:6761655107601028566 +20735182299868378915259313:3586569339310393089:1929170291623706964 +52893181911652724707153526:7950447801829818793:5501010205601049511 +82650754716577189568444023:2536302378361986403:264843032283324305 +36936156172625261722989242:4456196364834830455:1151884235503682552 +90777826854201286595806822:96524082091060894103:16418185429640546618 +92597701453338662468400550:88958229477686948352:12891260585685423526 +53374950186226998309091668:52448266235473920404:27982904724679393796 +90186325934592939649286337:65904892883151514351:27461609029714433056 +44592151213942999640772221:70509938906027030167:44121176667141467580 +85522475132732083979781055:506547131980967840837:96651857359539906997 +41662128919819666623734358:369932037323766617087:12944379746440779331 +82347496512453117502894419:720929893639791276870:341341598693695539 +69179625921485392785771403:282928837065875253247:130112834102863840939 +97107296508264402435590642:707559753485276293834:380820438113317224814 +47581198505675343559165481:3314327547048417130304:712240248267236521257 +87044504447637716594285472:6005668674516556030915:4348347869270038234377 +63663477949709265703216422:1580590914979055196015:437076182880518124252 +56730709361440780782586098:9193316824369418917040:7944555081466064449298 +84881719526944408995005842:6863101016082575603424:5749261051196507461234 +18590366260894485463081374:62506848054248379813969:25832388782716658332581 +38066909061352308873133316:49977340342722714579223:34153060540323078344613 +66893395261881145648606739:23566527256705011940279:11590907352321762094937 +31749040725597972815067066:66006676788633529665151:65835867053878575794586 +53424675592942833571652843:81194579821489631913968:79836650224145404175867 +59416695665279515799301968:299927174919884155870468:31115031142452936949304 +42676447214365618743167726:583783555500363738244870:60247662839065851292216 +88535930910861055917175112:100041653127249223408732:99109546372742423856024 +47305928634716980061850777:765251202563769000200552:625605278327071049617105 +62216996707574729891574037:730433054630015834812285:130187064023383932529812 +95907224838302251275493592:9089918390190326954367617:5008040936398981731817422 +46446585577058370147411406:6520610016363513381752543:802315462513776475143605 +17665575206754641970281615:1215653880899406505190162:646420874162950897619347 +87058064461599155612429607:1084637915180044477201158:287031247195597436336967 +18235169367703550700659470:2950716055154369204218417:530873036777335475348968 +10997503650193354870206673:48225180047887269700183739:10997503650193354870206673 +15458036064742438240174301:81610950339668765862507116:15458036064742438240174301 +53360578245089451632525040:90372053381154994160202046:53360578245089451632525040 +85762877092952848329094245:64432160628420864073547089:21330716464531984255547156 +14065947193830608321386920:16903696557875025281684435:14065947193830608321386920 +99247502269797435427963633:145789371730044046924058535:99247502269797435427963633 +28525995779834464982579405:368418452282858111954848852:28525995779834464982579405 +54625698417214335800619535:108123304656675983487377431:54625698417214335800619535 +45737642243548298360774884:373804737274286901208755935:45737642243548298360774884 +59126584651355331161102439:502281363039756114605687321:59126584651355331161102439 +32585680461007354449802638:4:2 +36334087956802160511794539:4:3 +64294777731691538843941832:8:0 +96766759096225153107686691:9:6 +85556736936068981004149773:8:5 +64500955297836600470541078:78:36 +54716399852818042709234553:51:24 +29319827365510321473884228:79:58 +27108759783202591967699328:34:28 +41568396313151042099787033:44:33 +87179582837098225465534595:867:152 +39032808212310048934345765:910:35 +60191957642060203065704358:319:178 +44857072363336965778071198:559:524 +24761790325549464674108631:328:7 +10870406346712537092219969:4301:129 +11176967998551838755377706:8938:5584 +63042726080838463129856797:6832:5277 +24095908659998151722817787:8191:848 +62156821652998787489244385:6406:3369 +15650327839400142535083403:40857:21604 +59213371522373138439125431:24399:8809 +45633010143398979637361104:12253:11956 +17406741922422316227886813:68547:21916 +35096114338065052174076886:28243:980 +97616092538867144349545506:492420:57646 +66194070547064434415582873:283858:178929 +39474218063784590440714535:737447:511016 +11709584395214327762898661:272105:157526 +19982266137329184310132761:893142:253149 +49633329999284119175532235:6971442:5659723 +75725157722607789687459561:9677911:2504636 +24286600343005181181031608:2068627:1570552 +58986170041013791274476254:7812074:4011304 +91753171209295342398953137:3011529:1566001 +19678771530591772955473116:22827808:3289788 +98493179221515324494707768:52127768:31129792 +85052478309708720177462848:24982521:6178763 +46790382597375668963020294:22615861:17547439 +20909739872049825650257856:58952571:8764499 +62004762435067013629917382:553825394:233977602 +94534021865703786343524528:620761910:154987468 +57708788727772733081996664:285133049:156229082 +30693459657410400220620351:196853835:18568116 +43596264888313113136762350:979236600:490084350 +86448636133307866743540132:3623021595:2339951007 +70370218493044556024274138:7650487843:5385455358 +71723976357842794912341157:4978342129:4031598492 +11916177305958171419445254:7623516305:2691524494 +41401435700697395665896255:3635618113:3094429703 +64261507205759457702580285:45570944454:12463998199 +24946354088778041870083666:75532522758:42701853034 +96902926351079178991735714:35331990101:8274460669 +22820477850449068186401297:34555454919:3858176724 +78691610586567066653847404:39277515652:17467824868 +88744857635538533284969398:862536260615:192270624843 +67672834524645406687716609:775726764985:504855419699 +47805774859383568565238947:320482986315:69067657877 +74884611544354336861532774:259372923720:487961654 +46885644796995339174023029:253014939799:125800928341 +19050050693732343085045388:7717315507679:694358344589 +26606948036812712632864192:4773893931912:72961745248 +33122421216523663630087515:1478326549752:499052951547 +45589873288929673653523731:7413113310315:851215866861 +21667708580380112347840142:5406196190649:5186520522584 +61016102311099905332876115:47421415021856:20070698360883 +54813166580241381205162540:96461771403369:14425654756816 +25603384619493286358629906:45402062852160:20050664992786 +22444342875388419938096805:19045007021448:3347808331869 +48875692930225395432388714:63653159050838:35509974402706 +39492624293857607383688057:190268416946445:153141383490272 +37033546952878212110494535:986699039767608:337992601647191 +59461488466823930738563181:625773959208875:115453017761181 +53820407042759914968803985:304482776836282:257864102134275 +37899992714884477227331813:728343087881359:306888041076727 +84939832852952018806441126:8889293553401297:3677163381078805 +39344614252665241987796588:9725830838008014:9679612165941482 +92765880880025125211308317:7166414061277518:1568638075292919 +48726984148272770116965031:3253983280850603:262160204270031 +39209304347903178607003627:1432639951706152:381615388708155 +34472332294799986942438355:14643001892949649:2405720709648592 +12434378826434354713470641:79862365571799381:16857832266686279 +42926274617121149446015960:70419447722429726:68305236218567736 +33207375791778792990885051:74751947677001258:5687158509192261 +12771657890122891666832347:12675476921898544:7061966078496283 +56435578301260408707692937:401256813482795397:20154906987562821 +21923047647552038382807960:277882331815614709:148099166036011276 +41136684446218953449398819:589466611757985778:69558418677929867 +29165895318465743113484423:880774590959385406:379276886326959933 +17992462751886341512213461:764433633082116460:560970695707056821 +89944034851349112165817540:4604820383468269761:3115983688660964638 +85404047020383378445445066:4225012715471064393:3340944813316880864 +26098798689733169310949720:5532431801181276782:5327068192956560844 +52943661851573870543317467:7694549178810245733:458860398225390624 +89322928165708907674045523:2905040179251916335:1901348062529489573 +25967809991586817971512760:21134012944745845595:4472105757826178765 +22800439159679306239726092:95066152157835807916:58424600439576576400 +25800927846649670725195635:67535382418442953138:48024419817123119805 +10824058346512385983116213:83939625618231258271:43623041465229070763 +32162351648559528492106553:84845969662731706071:44466416808866890796 +81401076588800035550480607:282538694867148857784:265904100113878621287 +13801658156637562557229663:739112287513755503124:214411893206047395211 +86334968730182262142181456:805104937292880793931:345884517483085784602 +50638671414074703989762544:347479541961275588284:130284516051233546940 +68140242500518679496740301:325977262038022195106:237484924785987147803 +13470893282786809193002583:6062549586847512097788:5970650398484823815435 +40159364870349017010569365:6415191473360848076426:266247110108052142605 +96395871188379732882904282:7927735482883649177174:2535451997442537645616 +80644101086828909313241500:9298121133658876684019:1496494605471832744713 +63045253160025245722447228:2948634585542112414860:497086549340180325568 +51328111073704067821816721:83294773842502155837003:18530386722739826222873 +49734947399163345314461450:53969270622343422437432:29249155985053249586578 +21297458625113489514830180:92061384079748577211320:31278902691568179015260 +34533651508877094935503842:31238342101160641422344:15283487094586163813722 +41332110052249008797445937:85049198661473771462451:83248701434229638157202 +65066445562565572621205836:614962385978032440172634:495395034872166403079266 +46917182734689731250613181:195133925089407564888752:85040713231915677312701 +60508882777567115905531581:856892515484536087386569:526406693649589788471751 +58881999646980565810454121:638450958715293169137999:144511445173594249758213 +15076066090969009040644564:178974259225613659452337:42228316017461646648256 +96482273731188066286332926:3983210283795526321628778:885226920095434567242254 +44786667375468928157763120:5654863452083801858499060:5202623210882315148269700 +33180596065871091737740491:5857729131739539619088154:3891950407173393642299721 +42383108924567597936545463:1400500817778600268514701:368084391209589881104433 +85535130384394794292979058:4855605130607100862712701:2989843164074079626863141 +25566262524516082227596672:17319810493396647184545735:8246452031119435043050937 +28471637591484369427107236:29217971569899144233981270:28471637591484369427107236 +55988309347690388569114138:14722065986962185031772311:11822111386803833473797205 +64737001368330655384416571:49233797979678395549351984:15503203388652259835064587 +60291055964260375521015880:10314808031206444630636898:8717015808228152367831390 +48664194451549178286152873:230013914973696229784082816:48664194451549178286152873 +34800079951438561645648183:814561678738907072294536627:34800079951438561645648183 +72292489759829431961109962:951372953942467687920396536:72292489759829431961109962 +24979061214314975372009658:902849288268464225571667046:24979061214314975372009658 +37067585821017101264398914:363960720830790420274310235:37067585821017101264398914 +407802020448409706272733035:3:1 +300531715280088053556231946:1:0 +251025238525357265959404718:9:7 +580257564586420500499380777:2:1 +858761317830091527830360771:8:3 +196652273107281201053860125:13:5 +234575866038663518909907512:30:2 +429084684130740481045123644:84:72 +777892455428520687659875984:92:76 +473757137152336750520252750:84:74 +518865291806337903719299165:805:620 +308316563417460600533009320:422:158 +249746098033816538832045023:241:137 +112584747233547555621867739:307:59 +592027954889434502189378246:506:168 +240861062555340829182005643:3999:2475 +194682029500545855962502651:1426:1425 +218789460717852201023185184:5074:1796 +897555934544887765511214382:1756:1010 +567418301920403690163910950:3221:198 +250263455806881518061097803:55690:45953 +287715651277331713528066242:98662:61726 +930472174905520055599602321:20883:14613 +563094592701399082567817878:29946:27856 +586408004884579655810015298:13688:2010 +356675732127914320901169734:829721:56882 +342500373184240646409769743:288049:164079 +111029289912922576213147321:863359:53574 +238292472590516581444008202:799339:461892 +584152220493270584300330453:118404:85925 +416317435993187210708015579:9752446:1667367 +448710320493901355879322064:8462841:5101516 +830613604980686948726553538:7875300:7286938 +854435275417625252347107722:7398984:7221290 +491248370628971110871024838:3281661:1181805 +823759322733692292121775355:47965206:30922119 +739916948486897274834355909:68539562:700175 +115474130560394254897191375:21112412:15665519 +269353067631204203022248490:97753402:37642658 +404711852158972339186969929:38465864:7101225 +822122853163676608253736495:925323821:124800092 +625597399636325201309937476:155441844:126591224 +164734365516864001332860555:490499640:72549395 +542731320923717940272995049:872054426:343177245 +292398752581707535038992459:386036912:338465595 +253733345125268557806458804:4456728649:3148084034 +720714047329368478422698938:7372887656:1035361762 +485822510448796212395272010:4948834469:1044079499 +567487863433405820109132315:7257046267:3732247690 +627386505232560820575112566:6596080310:3288843266 +151081203804942539716815575:80370232342:17154764595 +775767380263430487417843703:14983125167:13562194517 +882068218833549154936744765:51373706807:20083425033 +872540851314233096860982205:87661812069:6877156179 +873403941319828320270339840:42250451574:2985518568 +186797332849602566825942559:102157442617:59655211040 +588094145592512403943826338:397343551473:122196408340 +236426448986162440102045425:488198096385:298326712200 +999413492156412954869839086:198107948907:93967837272 +196368787413046499030793089:296755334587:116820885466 +927456898040686703422844429:7794508841884:1838315348721 +863135459918219165122833897:3390585584146:256958209397 +280527841949820524654611290:7138255280511:220514291982 +171702580321677888702545311:2844421011275:395003892311 +794123036846025365071135431:1323509768742:52822922481 +999941195640790383027182255:76881322575165:14049018501815 +277337838591672317693532255:18779075759111:13096624199226 +161019330006200140045853891:96122202160093:94539863961532 +802581200280335052905228390:16021918889004:8640550941302 +351046382391939502894679357:78951209694102:23603119764647 +547410239231977869119846517:930137974103815:337105751740367 +460105347146247775342385179:821417188693502:345451371523899 +739394173364597981162716543:118231038387209:15558000629645 +710618991066595944507470697:800865575797587:106397987298903 +790948609011436667522142052:719788637606605:298237275279612 +974392218096970489915937264:2789299436125467:2612385919935098 +408603464634836391898602145:3344989524084615:476416241050105 +759598616935458735001600858:5248226146452347:2910128355260660 +336339133841778842995143456:1462171406149011:45101489280615 +557331665363484299897850828:2766621340065889:608571599333872 +268935202970211875666224771:14790732846387744:13920508718784259 +196365448515005961567181711:58698177096795450:53066677606256761 +707559365284197582642668109:73743918625462626:73037261452030011 +219553834893665977926709414:13074582579380348:3748868071943258 +727448241498541734916572996:46125651311993783:5191068999722560 +250533898388173490772985129:504060248687574579:275457465899410621 +574149218890385439837069904:715136358645154469:267091630354914801 +556513408946051009664567719:561572382230655398:377517724884470345 +229293083588789865552217969:633410001749822164:83867936058806173 +226372585582223762392745374:880675821871114100:790971213454062474 +814653239128943350022959248:5392075977539867997:2678984727006593484 +997756621430043085129350013:8065595687931348575:1734021059576996938 +563606659511581060798793645:2025585686058021850:997190040771763645 +470110102600210049680956026:4194439606360383342:155125961715318248 +186796301778496529197824364:2255146027817932921:1213887627633394871 +470827107821532267162485276:31333837087612317677:14998321001838643341 +562823388393316766933720429:81185751788633183129:79060049256830969027 +770149403222432957646875190:39633840030283629829:1683893212858120842 +831807494525290038038252526:69588994506076501752:13611965219350838982 +818248492024822321145834759:44138354374185131953:26110623560126285167 +826087225116455308098825042:879195833362575018028:95263979996609824410 +603106998092234966172606746:119342713937720226951:532562283419387774 +294175719707094553275749117:273587780755384813469:184862086277208393398 +581975760853276551258805344:652754655068962705866:598542751609515267456 +232489844053482966902802678:175086842783164411240:79516486970780123718 +406012701062466567223878678:1696208748395392596396:1390211551813780146534 +933853950301513743864046660:7872270264030996826627:5890230836745305418785 +109621274273730665448017031:6030632497105437382963:2467373845130137898580 +221097855550181274574786771:8113084339021243934155:81143174334881194711 +641125184605008426156513064:2814103759235135334498:1995657263718574506214 +927097859209697187727145685:22884368923529867708272:6305379655187129630421 +197218943695429559247405411:89891243670922897460040:87446325095645117537691 +724259276311874395212782570:84034626579975044455025:48864445649462099377120 +455934985096439562478466799:11310618941611264186404:3935560089503124521559 +133734688930690885920256669:96191796603219585640520:28091652215661879933869 +346279959305258047181373549:396787286277965964056173:281445670871726524390693 +328621288865810678005695220:768931558498556187568277:287513386927185914040941 +546921961342478068546885486:742380332544111596447306:530036590011933561668270 +886115835370849340693650851:473523027756963009220525:154250437571550442048576 +976369095835553264393820032:837520385276354019639860:657846988600831513383132 +702707091950797246223061753:6879331395331909347998744:1015289626942492727189865 +931321690222427725696159864:5004244277146524747800316:532254673174122605301088 +316176137954282433199456583:8806732826477916673296170:7940489027555349634090633 +315109323136386621589966184:3371855313541471274494130:1526778977029793062012094 +828302404196895688450982268:4103240140614898342591801:3551135933301121590030267 +679229994270853207274224291:97169328429193918194265236:96214023695689698108632875 +615403656637858106485343116:67325238838855684175956950:9476507088156948901730566 +659264368939267609592175822:59886060670195559769404182:517701567116452128729820 +476068832707276657519943162:22341587506039207643477531:6895495080453297006915011 +583128882196966024807846321:89208780836897632530160609:47876197175580229626882667 +717511990185876218506967882:643744278519141474250282843:73767711666734744256685039 +751269706263346844397047092:602907070208187582649693471:148362636055159261747353621 +118368354192113815338507616:795878149817178488380785277:118368354192113815338507616 +191157775888888540620126261:454630716085863745518475620:191157775888888540620126261 +525354765942142723377669293:604502729572973609466766333:525354765942142723377669293 +126285595487087141351592941:4784299003555446209861515068:126285595487087141351592941 +995827892156766906510695711:5082577302745335110944785704:995827892156766906510695711 +967500496410808188498842085:6169492535695325577954592048:967500496410808188498842085 +669469210936108482811357027:1958340661371824979753457896:669469210936108482811357027 +434403573568323109869628578:1452086069005387665918133201:434403573568323109869628578 +119109941931001949122376299:5:4 +204301445732964878765618678:5:3 +684669827921063356132003925:2:1 +903884205213628915201360271:4:3 +722023881802419729531957504:1:0 +562389223749811440660268067:33:26 +362809759039387861296026230:75:55 +550521676795740099055061267:11:9 +745427169238012681888088811:15:6 +160106915568220631638315595:75:20 +332133848917898363470076668:186:64 +284607085803533439730430025:920:265 +731887704277407761743923273:231:87 +387823640722762409234151155:204:179 +492239411820595892623486400:228:164 +743288657922815380717133678:7263:1634 +668076836794493341125716985:8357:4856 +535911195603823443991912915:1492:355 +685198187392376422489259150:7381:7029 +170637547472173880626287709:7281:2395 +130878338312363734383830890:30285:24505 +859417940361214192021632977:13172:11125 +622719769898556380951863581:79522:73195 +291550191678124548887013028:47170:20408 +145679869119220656731949908:34043:20893 +944813477044187635703405916:328232:22852 +947665327564839781170959369:905744:503529 +445297084434463025129398538:981002:873344 +365736824429996849330261800:570244:452772 +959391666933434757962915548:603201:303283 +585878440455211252754534211:4607697:4104078 +894083785565331744355221435:1967626:1400761 +690615450045079083652480935:1540519:92600 +733639488858289854342415220:9518490:1641200 +612775575158803827232732068:2631494:708816 +144727673429753937253456630:70439886:66809482 +663568854056917846750315318:23794990:1891458 +787284000274113260872515168:76153331:71994246 +909781981102861966241628626:52807413:39112262 +310659912452274038868171009:96934009:73587530 +360178836354834866025732977:445227116:274402709 +580365250661468335087475672:733637618:510430890 +619218531100864141133330938:858427082:486402244 +387953497711024200873346417:791845150:505907667 +517091438475017089370908490:384996693:15530660 +638081436989848468688909028:8256834090:2185216308 +120489434094393297319202389:1893072774:1228155187 +147444442142221199752879017:7182004001:4281945468 +599186415959180078544568003:4476795305:803748833 +392435222459429443505459793:8056628527:4131109176 +605591714535682791118225846:83057815943:78185748941 +641434699860468720242936131:10431534257:3509875942 +201645685342821831800352983:78444389674:58978007463 +405890558860168037145346487:39150348432:24127773287 +268844514211196086160541545:73381417095:57985588130 +275568138351907341146771872:431256343415:380740766577 +284160395942179569068696082:420668683335:213219825147 +197627664325231896420724699:960134025097:688902086187 +806201843899049041505567242:499948868909:42541438242 +726352374871778857116236668:229667778373:101337836638 +946960914621696618295430135:6437632581080:2590081221335 +572873219011525401468205790:4532548292899:2112605686604 +705960740662017631961649926:7550212185620:2587346010566 +363624232109214379796855434:7940755474658:7092665821764 +146039512390635775752480041:2993053608722:1411419896087 +884080184037822691886760056:29871793922839:25517893598405 +247823374158026199781466546:81095003848296:57204346065410 +988586138898786803659010857:59611657161768:43134743922505 +846240084241854349816681343:21011969758963:424944707490 +399971829309032524487989598:73033869623753:58669529539405 +741442028547010379025101286:487458054879133:319694310224898 +751151998499971994474413380:947958154716302:909568909425908 +915926297405235700374846742:153552217352044:11181572978738 +381557209680195490503683042:734431255842888:506803215259058 +798688471126220026685746197:158719807507357:137998845301153 +947349908814345479515486300:7086543189797408:5214733995929020 +385274490750537721463221197:9104662063546225:8970747320270622 +661640391918316307342101755:1401032412142774:588508388930215 +678201395282656143758311754:8832032727729725:1764655391716454 +655042061292802060652658433:5568721595143165:2115602741699173 +822731198534258041057661051:50508351729192170:2774083679145011 +461295001477773414351217255:93147194342312669:74473825320677376 +785474684328198127769721147:42484845771481798:29021732305414487 +542322016848681046841709202:61571664005420537:12810102564872647 +807409453400234326633960495:33796212018485083:22920400835476436 +263479285909624273008336897:290910074842772907:281292373740773130 +243639911304802398786801768:259709284210276310:110569882970225918 +113424920043172916427140032:496597499976311146:100908548515707052 +392891013821877953788998982:955810113835882690:15911138350877082 +845046532139073291780099738:696506512343522859:25737856048957344 +128077080292911979998330831:3476882913302731286:3205658853390576473 +777112008994006859470783752:7097534936514047245:5903294792370410547 +600299547718385847969436108:6476945257491453042:4121481676489740688 +745944504852140086221920129:4641096906685990901:4332333647836929724 +430496220508993409070798110:1647416324733903260:906073615789187010 +838128135591361229519912210:90354568479065509856:61925234350750754770 +514298610132265037947581190:86780421892545936412:80513514561287729970 +479807705424206900634706378:48967774805598670808:48961361077438779282 +779250748557800234459680590:59356336060388702254:53395732275612081944 +844525522422767412928931169:15371869598927210833:2515326101107431894 +749519807318784065003386423:156559041247370339815:129385772200063685968 +986138064861107657662013844:751243134596093325739:734398315447390897758 +664334286972071015016715327:304135952981446381322:88388249296564487101 +794800123240341420832079010:442975136463785148058:401167787730846825612 +108941658015602232367159809:368763302130207051632:128247087944345827841 +320147698244839959248860592:7172533203982267487464:1678685091449945904952 +972040402147158302990132158:9667357890176551977184:6901005686354788235326 +504862212832043836374737695:1036188285259707167414:194604956713195614475 +402271459295219419566103308:8701582015392002816140:6024305662521378767248 +252443132780965485374301398:2681740050706032051109:214847803864275206792 +105954097228961444360728984:11040069196358943805677:2553151504660657646815 +205845951078941314868777211:20017140422833932982580:9696110939982008907071 +823576247066864237627522097:11819322145468432337482:5879970623872351776337 +397429359751136922314143979:54094974917923573047447:47674004070354707598317 +398706198418589991390528912:14789704063991209131519:5356261514975623039710 +294389762661725925250672928:115540607624306751981016:107835042616627955025176 +810700265655621751908732649:739840435103632226598020:574989217144463783900749 +946428961560073047650507521:239244152735812655524461:218337489933995051264266 +162056002333027431333286024:448722320577310106706665:67244604618482812179959 +766181894763373191868583857:166717463910999521287045:115148092330391554612082 +383784648350631303284279641:7912920461923276703170151:3964466178314021532112393 +988321492120680203818417688:3020165727485131957376861:727299233042053756184141 +855711276423558325216009618:3121159226146011099377220:513648459551283986651338 +243433247856120230943096656:1808219057838618673348974:1131894105745328714334140 +194055142568081642351069461:1880192381418965997948498:395327281928144562374167 +992251551218944155316381857:17147159340602114060593821:14863468804623653862534060 +918461105278729169671913479:22152157562141639455886380:10222645230921951980571899 +408765772493707797144861931:11353011605492368854565707:57354695982518380496479 +879697092891125563700800718:15611307307262663372520114:5463883684416414839674334 +843528215623681930383252640:27774152788491383084781177:10303631968940437839817330 +703911033726888729073274136:807818841252653544922317848:703911033726888729073274136 +129821354509816955477478111:571102847361531446805229889:129821354509816955477478111 +268386526145661531741110188:855354438289402777322962455:268386526145661531741110188 +418187114431731013343428455:790160728332538487669189930:418187114431731013343428455 +441272556631456707340453550:837707462957174629991930781:441272556631456707340453550 +806270986475303829738742861:9099456970290161354993497621:806270986475303829738742861 +448431604862358032206446314:7008652093854959809414257029:448431604862358032206446314 +945548177118802328523892616:6625601484454566695597333344:945548177118802328523892616 +218200052116896641444753523:9772093353021364747814391809:218200052116896641444753523 +325084095300789881646459059:8755112224318564293084785868:325084095300789881646459059 +547601118551452751890211070:3:0 +783838333851427718418002672:1:0 +334382223481408556557511939:8:3 +940900485809352873387913495:6:1 +386560464504366239616843792:2:0 +136742544397160090377655317:10:7 +205043464664703952798533892:32:4 +556582950913579846961112059:45:14 +138840794044066799940880716:24:12 +853229126643438667097805224:84:80 +361005206021477040609640190:818:476 +711384142625070045278444641:975:916 +746937457102724349673976266:834:496 +808177774830032262572356839:264:135 +516539245321434228243084972:331:8 +315900193410729783737924044:3123:904 +512515421969579988436371407:8073:149 +343825090066076123435055070:4648:3886 +541336406951384121815748820:6068:1200 +411916541948777822206803526:4524:4510 +182416153420261751620212354:25412:20566 +921370565459665236449448693:94606:16187 +428796836591861761817656778:70901:17189 +585003647059046014636296707:20508:2567 +382321335874964113157676339:12807:3522 +413805035118439716927079058:351854:183146 +573167352914670654212476980:738093:491016 +405872036691978736720910544:177288:111360 +853164929770005442532382903:799640:97823 +454262136490527963590670091:484072:324667 +693411569390527194833761585:9151319:5619326 +865769539598413780055266094:1998564:1943966 +841776630972729409488085580:1900850:741080 +591394427120674871086687361:8112779:3512619 +172376767183106965665714367:1256102:627365 +206131180814539447329107663:35592467:10912216 +800238380634866256479324524:65146512:39558748 +867493976435952224440500117:74666283:38504127 +355043503264293948561908615:84631275:17936090 +593246808327852937494774237:67421686:24345527 +411861104100949529627865119:959040889:520654346 +991234681014175554489383540:611033722:88426534 +710149027216916403028246066:610258371:487801975 +508586984410921185055296513:937064571:679809807 +710449865841854812159898554:350793569:39326107 +967260026621348286621625090:1628196409:87144436 +253776049694899341905497978:8585629230:2641934398 +577850408944309556396840579:2213075462:1414940737 +425811550293568874078703553:7816094845:1604609708 +472957928104753470640853496:7833690307:3604380941 +446619532577758532475878135:86098449815:33452912275 +147565824294804876408812599:31900276589:22554554316 +274842655667843681299266393:34449680874:15413239353 +962928334875322248478952119:27784264765:11259943114 +416307922546726178244662478:97618069040:54545439998 +866650043509735893076617282:480135472972:199288250886 +935205607931888664018423740:182828669644:103013731724 +763794550599702205956796277:201056719678:167996668043 +437406824459639444272889424:269265359132:182222939604 +922500111796120005998157614:126085901112:79147424342 +979969968902178982682828999:1214986235306:152454178693 +857136316244783328508500186:7813738159811:4890747082700 +947996893254923248602397106:1114775786534:4889262560 +107583331859473104731715605:3428702333497:1393581232414 +168190637629568798147230749:4240435547957:1041094189942 +806857951188885162554889533:54477977564694:34908685130597 +699385331567246350274788596:97393212591424:10503806939828 +344117824522931713475242066:68416459163558:66578183084810 +164492231267696773352552971:63837161328829:34235252006516 +879816936485400258733820736:46330190539530:17303334042126 +643187731232570818415817055:375039465407726:288644828890869 +759339210226094572821009112:905200722931928:738657851900360 +246312348710237039828775988:519726955464904:338151612168004 +257912566091883883911012433:187463826844027:170193863847833 +252016564842195892390037277:980260059032031:4854099266739 +194022703074564225856082872:2015137991595731:1088554038630597 +330834177995982942656090241:8695363242303498:7090101512741577 +435843964285062494996622869:1309058265804655:958987066745259 +844775374237710764097771617:9905085561108267:4485913644745175 +304083479292185385756243858:6760310831011936:1454938576260978 +510525553976738451773476742:25633804123512288:21743621305897862 +361287146473985392588366713:79683123483301049:48892619804791262 +941861745430762413098211429:48646664979931224:3414452513252277 +324103650946609404836144746:56372521220134611:41827400092181443 +309984714550695715066735042:38463301428283890:6015018315239302 +583265688783735723562906212:319758403374233482:146359680586650132 +549128811162989454583747678:135469883479831510:104721623716465738 +117094418481567555589786306:670801505154371031:8973867729330298 +603514405819590641913282437:624265232391927135:82729354043463572 +221280683050546064860296271:306707530637385462:54849032528357437 +232691108340075554081198117:8264392044856097546:1618033327149190827 +684338921598743928773215164:1393824753913998478:796594704663511904 +703410068434450997701635020:9783301299381212881:8928477503091184851 +296185974732240327154983104:5770497631090114010:1637272827501772794 +415480398360901810941516793:3468231856124612954:1282337562139583035 +767780753648455915621407288:65155397001160643507:45405696079398523915 +206158829968910781276666479:47217284132937012764:46071636918382847071 +204719382765807635629070066:80270410784161158076:54943795758745623870 +930026038540953193346700479:41548633440562643790:14953861995621451619 +985687500127764047027690272:87744964188680520704:57666011983673271072 +322263868172172745485799503:701523887763781639638:630706797790995453615 +481815298679996976546846608:492631995862762021471:23550393620781285355 +799755946995153375891007977:881354648506488963856:637265989186264651881 +487343791002372159052657330:434846349962218871220:180594614452385751610 +466154032226744088448562960:946877797175635246936:411410395802570488544 +465269488689603873368735967:4268272166206731658032:2212940072882253299775 +285625324735325817689123230:6487447538125480243119:2471974275299025323017 +626370804361304896435300048:2399911116762539027601:1202619632497848521851 +879331061721482960771061717:4778062555643329569172:319293662803508492697 +434648359860791036262445631:7013590972064942283298:2100139982433081901975 +382240408712325072732670449:70118063019888446074845:26847190913153178690354 +366891308311148400055146710:47615568040175049076248:13356561599646922655870 +946154335171774801519144597:57320787055814800584492:17424028495703071519645 +103560794480998155158972169:42639229463051393351823:32745344709372100745925 +575411153453456671249912018:35731815209475825336500:21733135267455856252518 +166834327601169435837070460:254139060862780111449430:119103675185682726244380 +976988261442703313651907571:755952487932118864034186:297647034405741319739259 +343053764789123687448723940:934418783294198321112341:122071320152903600494793 +961791280180664232211101965:583096509823907036839319:265135481041528463064934 +621691763344657699621559548:744654901148826100075449:649575786536732158635082 +389103210845283735289871174:6967416976345953774335371:5895277146256277701425769 +412301339365769016624102712:7409580875990931152773709:4774391186267803221548717 +329962175898954016256321136:9211801907796368615332368:7549109126081114719688256 +706612724788583103069130455:2200282023270412721481420:322195318780619473594635 +637162916025100595150657670:9202414768115200269972340:2196297025151776522566210 +945581212724937123611803423:45651706841745060580644135:32547075890035911998920723 +530416098429285108596565197:43220287342626100190184046:11772650317771906314356645 +103591626894057331652770256:74121000501505494644538889:29470626392551837008231367 +670531889433260765148150382:40746692708232186604633934:18584806101545779474007438 +596788268126537188465676418:49194648136973418079393494:6452490482856171512954490 +897069684909541612322760474:843178542831445867333910902:53891142078095744988849572 +907365032230207293167625844:891323144629813984928968011:16041887600393308238657833 +948357805645230063381928816:852406401209414653787859321:95951404435815409594069495 +653781437570299355041870640:625884750303313990111575048:27896687266985364930295592 +625881446186573902348949771:399907622114458585944260801:225973824072115316404688970 +633943712407473053571870172:3454484045037379919058707137:633943712407473053571870172 +131596228310752070861518018:9214386493494085875158208396:131596228310752070861518018 +366357255233851743982891632:9021413766433898750437810499:366357255233851743982891632 +272959384477352245660110979:8767937552857349418327343464:272959384477352245660110979 +620113919412733570847429401:7330714138094018097640066759:620113919412733570847429401 +219936483359268161709118594:8:2 +247565909228194795323739204:7:5 +216082279943316571894476272:9:8 +118920945863430842386222285:2:1 +285499967916604412461538442:1:0 +209374174980318740272925886:67:64 +285550237539166787273152580:72:68 +451355130814942678162113584:27:17 +336691670956441067105236488:23:4 +509786636560081419398182786:54:10 +368738555874426418092576391:301:3 +660338478451154613112373342:321:137 +844613853048940357341561847:299:257 +722142749705414333720160535:660:535 +258824015551742020875832446:529:81 +436910356670896772170165980:8459:1311 +525141402265816173640274150:1072:598 +192004765953131014184124020:1995:50 +797154280934399581799271144:7402:1668 +470456737223636881326078255:3038:2683 +349602446730808313422944476:69110:886 +572902599887674866153097407:88423:55724 +666685118815809226284909863:18955:12128 +291846709366998582691846657:42362:20655 +452621553204154803208540501:61893:37894 +763892631720915304410014983:220044:191863 +393237346738991242210092963:369741:1992 +742209247735731577638781507:288340:231287 +476602117552734372204722260:189672:120412 +346655154886955866549158100:380649:341830 +641109352108107013026687097:6843704:615473 +400592179597947753151214964:8629353:1723509 +720236607116857140297986538:3595450:1363888 +934293183330477919974900444:1526043:1058802 +942216417330468758975476154:5680632:668234 +357074943431950590528047842:94332331:79030869 +276472360744206026166886529:95408363:94692320 +880257455316157899395035786:64718931:44446432 +790176487396646669024097755:69197380:38721675 +582803308064338896825304907:70359185:64829007 +587990512567077547194535711:595283714:39598783 +172828228760958434452433961:596835860:314269761 +190988398477448434844630956:568796245:106636751 +118653134890254439676375230:135791025:90030205 +890071341039309218526124079:580936506:207889601 +880100687791248159093693907:4200589654:1364273703 +615582855664093252810029047:5548729632:2499379127 +692047674431156598895512606:6697648899:5920808475 +746345358986477988563669139:6483984492:4111380867 +246271801641422865884684530:4497220452:2180192386 +289198257565756927191443335:68507609956:49281948843 +102485363358084267911472495:46688168851:34022177765 +148825821732754899451064215:24585960132:23456598403 +502396863556633343661935919:76342267994:43835213689 +931144538854533942281773034:24735903542:21048888024 +216820867579626310096076829:870688917161:773454544669 +237912378921247755760166571:300543370991:95975844130 +816916295981628991883879560:720536877313:102627166915 +808239774888356746883467035:769981169559:703631087766 +140526520754240460258503101:580969095587:553148703084 +476209635057173621699881228:6299851506654:246290445598 +220161040971103301378798491:3181611262422:1981721370835 +567017969821011434428187805:3861369131371:1323311116084 +880996551408328040036590335:2963343430288:953303495071 +738507010505047515946166805:2163375476058:1525696896909 +187254567966061428153633972:90548713094588:24861781565896 +200239408703287181280883564:50463811129998:43157060224522 +101631510724552162609650898:45830128968615:6047433144943 +565879407043393375232367451:88230030974570:66827162975951 +737879143218349153151988483:43153958488011:35561100953556 +472632241543640483370899438:601240514476864:301407503000558 +216275637811390113526062519:370135165661408:217037150393495 +276914461876280676618215865:957597767470639:8006002622377 +558501550988009133753853476:537231173122912:482817252829508 +656364471395118598285660796:952927735508298:682539387741410 +962437518012711160782520177:9521738764970561:2203755123134647 +233525080795691063855017472:4730564985926286:2978132790152762 +996331137280676021731211822:4307817415150145:1616095729452422 +901591435361989465191032659:7050795428107562:74872578505713 +918800223558972585280836412:7466015408886673:6902629005132915 +571452708897182941397872216:78926035044067956:67715106192417688 +299224726315464937831795958:41105400539256261:26967308187053552 +628741846625290575954444011:98161978994598036:54841388232777539 +106140786466567678226283769:83658844492166125:24134645609980519 +590039423903261797364787692:61111220625375598:24062639844922232 +547093463105727957621009377:708889692565604460:421553862333868397 +177111502052059483415025401:806184239087757700:570391236856313101 +470611333860555970301497788:615483291856798443:84061048951300515 +685664328311453194093605783:890340332035548211:140480480236156424 +352902585330655292905102061:765713412103931529:658008246104099318 +363860853765344032403152540:1257846307080250246:988410589776268402 +757939285478607207094306666:5115261241613781485:3920717526762756491 +610385736557283474081092079:6975310964968171866:4020821575808120211 +791251009104537850465636016:8501597872995942863:693830417687249562 +589281256875208800024789118:6083890728779129303:5622549971825824490 +332368152018649807095813632:37934934232240670926:11824977737076195000 +526239254602290767571953089:98961932432876548634:74392685895568183761 +879909780694133350092233281:17731941203529976316:2967604201320238993 +930375343907415686242884462:37987222773831061420:33124191191480774142 +101693540756812099232773318:45791960921431532811:36117402751249023226 +429455916929770289273455394:780896823604776023161:146994676505784017122 +201994685616430667268891547:404289037402942243531:158147836037075741548 +883018208248665763383458554:169722255519073605749:156125449056986598278 +279092983760120394907889053:315870714393381730098:44255703279790389487 +864647539039815670546012273:199747125399406227897:159852151937785989403 +779638309948084129755200157:4322591398454840735620:2757548573690156570097 +154029810710446006269267029:4750475931763039536670:379098961212332278949 +439775502795055982149326136:4433213289758455150175:744451017231251966136 +212856471053377535436725855:5950028618061468229729:147270846570986400609 +141450837828446189221489322:2945506924239917487891:1704312596871617987720 +263691209736175407043381477:57500456567936748147980:51616372185416784893177 +327260609474699306889520217:44885880694623105975746:42539210896864326331877 +682680812917743281656912131:88490915092678058417162:61893892824739026924463 +558945308350844935973577106:45546897351682551241978:39330948348349683265068 +910226632911825845774800500:75725971247702830139661:458514437827496075280 +196072447214927169511996199:520913884355872389538366:208826697119151045570583 +227166094397219034184980115:634888166835366203863418:511018836993299405739889 +691012427225287428332337554:254395416829802842891468:74475115542907039110466 +603143985592469879226545001:589020604526077784486614:575907162292305696738879 +119105919511749453346858140:647656067414512600510757:584859174893647453389609 +143400746713980153230282632:4322903951530101784750645:744916313486794333511347 +110545904971582990213228455:7883010551376899678284098:183757252306394717251083 +177845312244379187772434805:4450650150938249541233538:4269956357787455664326823 +188097729133741873766195716:9496378803802993879546213:7666531861484990054817669 +184232727334329883395839579:2517308481204748461827932:469208206383245682400543 +412959214425901344350972023:79753939741690298631261604:14189515717449851194664003 +494889478651532755833489119:19604873170758326858318246:4767649382574584375532969 +425745694608340188374811080:35755483252478818010371490:32435378831073190260724690 +525577987955014620745812200:88254230039871024462572413:84306837755659498432950135 +832282150384369456800669948:22136824669214196438840124:13219637623444188563585360 +418385377083331983765119427:753171860544632501307981903:418385377083331983765119427 +518496354500438015051201555:667474907872823717762948113:518496354500438015051201555 +174813745848235044292882187:284886384118173407095237381:174813745848235044292882187 +205377407865817390473687380:437511185679047888516484420:205377407865817390473687380 +931373270496127529940149189:453162912152843359426151057:25047446190440811087847075 +446330478887263458243427941:5767550279527437246383574266:446330478887263458243427941 +608031122933011254287863093:1358054433780046761665645861:608031122933011254287863093 +766324254500243329794640648:7157418237482413461109097619:766324254500243329794640648 +907643014117069066747470242:6840653428312104203490441291:907643014117069066747470242 +627608763123551600264639439:3331988507666830008548885347:627608763123551600264639439 +664149519183289054113968148:1:0 +447678896010712511241969912:6:0 +284555432890266958277329794:3:0 +301097901444779786028674766:2:0 +502534833753430565009579343:7:1 +132175465398391015790330714:95:69 +142827563794520327225548984:61:6 +359202699584028469488053133:53:12 +449178119120984877812148876:94:12 +103970429035496117851305288:98:12 +663336654530172719742115174:285:124 +397291049243659898639766273:173:124 +260508125888031518183476895:910:105 +432943734400022131850204346:461:317 +222669027167980911189585709:927:616 +110442636209251497233916969:4767:2508 +804030182921523707669860825:6874:4433 +617622290924699805370460532:3975:3432 +150958803975396058619669013:6196:2045 +350281536994044668013438024:1895:734 +686872544765033843214610542:59535:15477 +357981912193555401107001399:61757:19340 +234981991493017798337273090:42650:590 +483017867636209806221301905:45932:26813 +542009903537805874028880774:15529:1105 +354290713718474753725610072:570184:279104 +471398565069387909472348981:719068:279633 +617990432101284616971590587:703316:190743 +881933315087828041404474301:488413:198654 +637031170391515388315234162:730645:598252 +433286575471539665756482236:1517806:561314 +492878904552676761863395299:9437682:2983053 +170628512101611964501867988:3578627:2937676 +529010064637444989670745481:1449684:650085 +813711755127138217745402235:5604959:2205826 +278330845446842600908523028:62848348:41890280 +880985483938404092009556700:45838866:45350734 +465591431699902949903229176:55334762:42007654 +287999890255415121944354288:81524839:58430455 +154660234621558856251913195:88420397:26154238 +865794284654182010155155991:510330505:37713666 +499051191183533511577884011:111870948:56555387 +977588079334660556309187747:909080606:410621947 +426740524199148703869556764:885159590:386223944 +236389057432901147340544595:847817096:107748131 +132517483776473078910738498:1380409828:916435242 +458793438177976569742418316:2350553812:1682491652 +488589120594458933677622542:6248577105:569639737 +836196542229303666554731477:5339959779:3087200467 +634145572141055886080312726:2100506418:946609052 +131411594046604290058501414:21676327473:13512372145 +378398172576934891423878724:65888249075:15132573949 +900784669389373732128538600:37982450932:35995768528 +820187150231971425925235195:25850051982:12058902503 +259090440093612730975069370:47999353009:30948624007 +356338273961203288295531119:865364723468:757642860663 +921078760744068964870142396:565900894884:46469858924 +671520576801640295422850712:544032651651:27555462219 +817354420179780318094912768:554184548186:273966861440 +174449449461819577484383001:598402158774:501910914359 +615555682694505294182695106:6063788197883:257597858877 +704570263533669134306306941:9600560382034:6227815881393 +319785000233332378383546777:5040050285147:2256917870093 +941946936857190906540241235:2706330846878:567552057303 +146574257504894847957538882:4435954359929:2109874788223 +271343471730772498036411246:35390524416977:18626129340057 +912549755478464932595739288:86719122883110:68955121720158 +637658075067490434555184927:14935587484122:1198766583913 +511458454057778360951806048:86026951111047:61846314280702 +928307919063189580265304529:53756520405898:47578256755065 +801613695035278698204121741:334042431270542:331395152817737 +889592410316504071309834459:440693303826322:280419089787385 +264909865284853917772048202:174452893355271:107299340858006 +813534513836483229860478448:453733767348549:271614507633583 +742784218382017851761575898:644288536802180:176999219595898 +571510890525765187466108314:5886980388883377:3840994959884386 +632151446644191779855283162:2648803685479009:2213746079874371 +163054715415147589801595653:5220467541524526:1327826767981231 +295526867175576668144020661:9120437650606690:4082873449461761 +138175100867821790014467073:5255828182945998:2227751533952359 +282724437197136217892285985:80611922929281968:32218483368909425 +825374318687535860631990402:82257482901970473:23342678227822206 +211307349333155719907999976:60946091065518424:60250095321357184 +411165684301071230003049058:64093245819378705:414348050036008 +902747579782997980323833960:69019916043656683:17801894659684862 +570975345597016329411595991:542357095235187638:491669448433453099 +971760772169034720809057520:265851189017650222:39784046539948830 +907959579135185478110505947:497372539144598017:169076392188362570 +608570086277968725767453942:922623123955586671:51123920599203628 +979133236251705393139863185:273791572656657141:21445959365861924 +350108568133255889185824057:9524272384649562116:1166950845182202949 +364519438618128718421327297:4101098910741308040:42397901255037017 +120170822586011898100513694:7105527578246781890:1418901270495484804 +757662204765103643239290937:5688449959975454893:39396321786821139 +669723421492512162697229702:6331721023421158085:3246862332285207652 +788301537058102990939237487:68703630193338464790:326658466231270517 +948407885466993682414342967:69299797127563218500:37193754178138331467 +483923986997860251588718821:57569508129373660596:55626601292369178249 +674966298847544441726828442:31142190544843950480:21631093926116105802 +451076667233882695753935901:20064575773677571539:3380196885303078307 +316648922667148817394595050:423252197600036433756:409572238360135851258 +836034911689172091658428517:111612243470930941464:53602859746694092597 +873545770281786474691551876:719118698324182612856:646204675590820403012 +986158772609579032336999536:559187385285773508677:504164541446468624124 +938331305676955780819641596:827868032937982011413:13236025891641793593 +746000291765506189137401756:8932771107587172227365:6711028686262085695876 +473312095926745324355590299:4171795406632981042485:1048067200460180454624 +517723265986870149520249939:6061296422646558624632:3693342936991155932291 +572648950207039732829971206:1840778098660267540515:1291494817103651159856 +565687771657014991349701843:2592353461462746860776:2545770844610619188555 +465113589830320957217299364:51927838607782566495906:47867259020291679965228 +225972083489847098424039787:30810926013790895074534:4752104704673947407431 +987267629298877441760883224:75486398954422848488420:56503772935429229326464 +707746773955260723515076127:38585468667314865219049:12107659371465667279369 +777544558992532718915546044:61207957240123303090809:19878171246399752999317 +651323242183650519387346619:730508768762268433286126:439929216469345329408353 +682860962592998174480684396:463585744367703186951033:462746883739083288763820 +947234903146017938762791412:805058091430549070762292:486587623692231546336020 +344640848496596715244387953:586869587398722890796739:148400693546378346702160 +188632572961476962263522228:417109479519248316849210:99088218776723047679308 +858863926340484005792090897:3576269480875088909860232:559250930462667425635217 +342506977769597322625544820:2972929619448302724243810:620071533042509337506670 +181561755365098838902603991:2188417128459007360885296:2111550831460235310009719 +631490887196665027352291144:7768125373098569027608092:2272731975680936116035692 +995532069534731362447346247:4957837706254640233459120:3964528283803315755522247 +963961054635854926742786296:70634465099860104442166225:45713008337673568994625371 +898956177708423152597272120:13082679301311824884941063:9333985219219060421279836 +223673502235487083001705649:95367289353562436839506030:32938923528362209322693589 +238159555421115086251754178:99491593796531387133202595:39176367828052311985348988 +753202634761760842950394507:84901574563468498729429994:73990038254012853114954555 +503189392510927431596451907:799685488566502673862788601:503189392510927431596451907 +383422649373962366666247625:230877247418555903539588873:152545401955406463126658752 +382123740517612587697055481:907930077374892584078883174:382123740517612587697055481 +443928675742807067354967492:805292450859536688859096078:443928675742807067354967492 +512049518223872400344027001:964824012335811172886519946:512049518223872400344027001 +308208585193155996139406539:7166385983738603263147332254:308208585193155996139406539 +805936174130728446314455781:8554095750137094628771277566:805936174130728446314455781 +490719737482104354171372892:7753535384144137097372678539:490719737482104354171372892 +187872014829162056781841516:5202714175069567367206377059:187872014829162056781841516 +291707290549459290853549609:6908333555023747456102811551:291707290549459290853549609 +2488615785285356270364077888:2:0 +3831867817064472236834283244:6:4 +4870058022183311741663076067:7:3 +8575060800956524029411331615:2:1 +1094950768658764678939374119:3:2 +1037151960035414627802295584:48:0 +8485257913158959251267732205:63:23 +4790843087702998450833530748:31:13 +3695908276785755101881463533:83:64 +4802799271702018017662726173:14:7 +4940045577425299265638427441:142:123 +1944498757542560006367338396:815:341 +1258560055097683901741495002:797:54 +4539437495192556657007940829:695:419 +1536690081053314754034455738:121:102 +2000070963430004885192678584:2180:744 +1004953083466872507777616056:6868:408 +2460775899588877520289286353:6090:3423 +6679611905893303781274308135:7795:4490 +6476008368764159877482837299:2231:289 +7327242217019541819724737504:94062:37788 +6948711752157984604996295970:93360:79650 +4934364788857575186799356583:49149:11566 +7236164284409101888744319157:99739:90274 +6275403876499709861786468069:45626:37739 +9461155305686731887728738559:213470:122519 +6679283966865036425479435700:568210:297510 +8280958456959047601996720566:378957:97943 +1848395700816380270619458275:302749:240933 +9358231793234456993613033638:675273:473402 +4274013058387373734068172730:7425039:3997730 +6846900143663663974470437327:8872051:7736220 +5740929536724688651183321115:8658428:2478691 +9593724958838712922607847398:7299673:5241721 +9294992685531645254508473164:3777737:3759611 +2920893664429527412105674446:18386968:9047246 +4835877047428575502902820085:45301949:40576426 +9655560562113006790591156944:85203020:258464 +8073762440173300787415279399:84979990:51101719 +9925371249521951583405040180:31058466:7717402 +1705164635461927059870745292:682377873:630447314 +6402131745195389124619009877:277421905:58844572 +3077096797397532671344966511:637785553:183358227 +1566537980448972456313370964:209730154:73266694 +4903626207623430389798199576:474599103:388931274 +3902160589879190134597565048:9651341128:246277616 +7561955091388411482576367550:3637993178:1435427066 +8611079390304595046432537518:7834263342:2530346500 +1449532553054471390859831406:2273555617:640012590 +9810114502779549746527877177:7979505631:5391502373 +6673942716337847333418440595:45112110389:19266929375 +6116931383425427865220155520:71231028075:53879522920 +4093330504475944276515458785:95260460422:74928062827 +3457278988634431440800329200:94406860288:55898015728 +8515934648490653333999194514:26217851138:6040357622 +2706179378381949040370302519:299381273321:201410208015 +7261050026430254582068039322:563540911917:340631132807 +7655189013820697272237935437:185831681249:21834799877 +7618597060249729250112089742:648784270427:411300690856 +5865270854462027312970179462:433369682391:233425869308 +5576884305867692568715299203:5690258447176:3482587477859 +4544254966271011709090776707:3397802668693:1585012789955 +6203197776885984325895892338:1653713060398:109744838800 +9923843335028571529992244252:8072025937336:5604083393804 +1584335836316041833646575002:6996513991757:6643954946056 +1494870824319063308991314039:70337488750688:63614366458839 +2506365770944418532759656768:24375153585428:20079952825012 +6042720957348370074635809715:97608987810726:81242690542229 +3317241084838236541335521988:29416612091910:11290591000818 +1079980615789121843814214955:62241413292272:53711752420539 +6534027480238807269834580637:467115579198009:295350688599563 +4362744673987180483258961537:567262767852711:252291133412024 +6344663152012361067021881581:923923996572772:404191408932297 +7585784839258873461443228890:453329938095783:331673182485388 +4332998356105882339522494016:603422567827691:538729291622059 +9218990607648086349663265678:8471277318817219:5965765978761115 +2248824082302955521419121653:9505654029697390:188181583354783 +6580637550007422611112162814:6338916301943828:992042076327550 +3834205840378019134729718030:9227851335654391:4484698290120941 +8170731644354338506156431280:2576236285013869:1975756247032993 +1046470319816593451119984271:67781506027425882:25211934229460783 +3723051370689783068684625655:34315478540184908:18817124027150039 +3369010447993730530153439015:41187183981235211:17445507090150491 +6821864122757787013913665902:66184363591968910:22964904079477232 +7043745819178513324973043360:84616210527559113:2240672141177997 +2886955259842220479140826297:712933367629392709:19052940289228 +1028064170975886824020808258:561390010975734669:1946846275101812 +8997731505880039886190501499:749654525156419564:103797129211645611 +7537866434494650498207424999:896977852526727015:182656821615589474 +2487512475480801960332044089:904058270543036012:794220509905671281 +4227595243110158282250419268:9514505404070489141:4971968602716068206 +4403531486599090286380643521:4550433340395414180:4152461601333464161 +4125096998167692180119580238:4252177595267965424:3772793147121071358 +4572043159415766660450560778:5908005027112532033:1443166247502353275 +8120633813888821876477545161:8052861588764223102:2328209351517407525 +2565892576632104030160591206:97954256264403218935:32820289533189177466 +8988407002436326066387840654:18661826190058536690:2021059062820417654 +8370005009400425685174928121:76497145250752082854:19895772603052872419 +5976309135398054399217658336:64355271725027791956:9040675992872120812 +2024897849841033547446464603:91998102252815219714:23660790711899525521 +1591012518176566870116608034:467309161752526786050:63344870361161126784 +7939675854980025647662577521:335767848887041667159:175646150097479036846 +6810322340904615016732143813:989495617370756108604:14876301608532081333 +7420136854717703737495323510:631683662345375771805:283244188005659166900 +9937259107600818667948558824:710920749326381812446:342467661776996621472 +2666376454800572816592444674:5069662333531419580633:2759466723282417260223 +3349604881855720002478611105:6123136902299184012499:4070821974380281158145 +6270360169173606780740620753:1856081976566969726637:1117622873993546556304 +7454594240892862441547094662:1062975497808589771695:223536112802138644412 +3048722492875977371810903767:2947933818947919575807:1764592047373626638244 +2572914349314354124445588893:42583018376537643072712:5795985573192349257141 +4034330099238955436635346764:74495485016874926655846:27108150093783588006634 +5348204856165170652047716509:63884936896101062890628:13478971174071095902861 +7305060672356004627987676121:27334998106502337379672:1108378106981969371497 +7318288727792179198632944459:82750459913344184341921:3553975846223802135061 +5835346501591931297950596755:217275928565899112088170:184164026144743710703235 +5396435236081061018802272211:334025942509911178471132:246134833445930601134751 +5837909259100063399580909665:500922525170077664465629:158150767978297898469299 +4563766248023026461582024143:780424874171905028871885:622008739897757768112548 +4921837563420400048208793994:557848331575378045217867:499582262414933296771320 +6537928583094723901052819882:8638142424131118868977259:7492910451598036106012078 +7848476423434696156093966738:5587396766500586151376742:3771363267873199561020970 +2870512617915452226397043360:9422802224660646467658927:5980741618615700228729552 +9040637008186366570141991311:6454495380706495678357192:4343475197272620441922511 +4957686805714100069983663894:4077702250825244383658049:3278570961428143839134359 +1632320722102647241425284802:11316632625416440241868954:2725624042679846596155426 +6687801723421021851556148991:95488515263971611918758348:3605654943009017243064631 +7484296110231829476762961438:69149836621236540450328015:16113755138283108127535818 +6985764615476659087299827822:52832949338213006457433195:11815302832542234918646082 +6766358243805835512151049847:27276699610113665540069710:1736740497646458213761767 +1349786606813648187590955360:714181841430302879953290396:635604765383345307637664964 +2213267969601503637711338027:923617400118511907601283796:366033169364479822508770435 +2314899328408551687314470338:228099473435207612131801376:33904594056475565996456578 +3275888464927588072344103275:957568592055689420409745578:403182688760519811114866541 +3811228192708951878889034120:623419817304739925244219902:70709288880512327423714708 +9684170445370642102217668381:6754134446656910368846074643:2930035998713731733371593738 +2277889756816452378348706810:3927833200941943101259681871:2277889756816452378348706810 +7805533443653585173109581402:5406217729396856133039399748:2399315714256729040070181654 +6274639659035470486192166939:9379744396188321113872825806:6274639659035470486192166939 +3164053490513274629860007083:2853822412984197006388131563:310231077529077623471875520 +1770766683582951867127362986:85712360847673625125102301738:1770766683582951867127362986 +2214336318566486224189263283:36516132284075828290162205846:2214336318566486224189263283 +3233826322774576855470668895:93064931515848380105691092795:3233826322774576855470668895 +9840493699744772531672862567:41194769109417352987671795250:9840493699744772531672862567 +7509399177828417030014570636:77475159661131298554759703807:7509399177828417030014570636 +3306904445584320206045874427:1:0 +6648550731102747169760023312:2:0 +1923989213512500447141458040:7:5 +2045949056620618337906629984:5:4 +7735567263587557673427894912:3:0 +6551038455982311934206933928:42:34 +7340179998474874559491264244:38:20 +3361429451499193326672236392:84:16 +1992728998412473039758407019:19:3 +5006273534123938535455681403:61:13 +8443954977091387358710516729:413:318 +7029069582494826594279786029:895:189 +1199066636692944574230848187:847:477 +4976291658498210675999445265:729:647 +1131430638735916915926679178:240:218 +4350536607247481430066619271:4230:2171 +8613642088962905416659321410:5589:2675 +5526854081982971218162559453:2838:1973 +9788629118696935858790413448:7903:1426 +1577022310008414756119164479:9719:2763 +4716878811076580692355532808:75536:22440 +4272111933490882818969295260:94047:66684 +8375814457011553723563569737:59314:20043 +2774524706677629102172479573:43525:3598 +2061867478888411483483110422:19940:17222 +6482784016995889244474752867:365928:142051 +2523220303273607702997890912:466380:175052 +9189987367485563696038682008:232848:126280 +1326603185548712083877156202:469816:86610 +5724483435091816740905117133:832168:761957 +5448811910822736819088659368:8148178:4052784 +7593538281074983174536558847:5881388:3312975 +8897625818664806247710764375:4219467:1720771 +8505218630284905854118413382:9498642:2039640 +1584606887878065592356713435:4184953:2739511 +7580745626069012564686050201:53305941:7893984 +8147276481664166465531957802:61358540:52918962 +4803609033675850575050921562:34126918:14913280 +3897867923489686406398718486:29947076:17920878 +2543585444041557786749555123:66330632:40588451 +8386763323354349523678362493:973292058:164070981 +6280349420495198162589161506:783868002:237749272 +9726550537755994687064264197:240862588:172453061 +5633928810582611343132209506:634474664:179150098 +1370065899966788419796145887:928014917:229366964 +4644388625277186213525475335:1723885749:82355949 +2930237535857905970789471184:4163572589:551096285 +1838425332328211815632444062:4149386899:3619323798 +5301040430239791637795922514:9174486044:1977803366 +1278624281241470290783220348:4197143446:2258152102 +5073851447860654552082600399:49603874651:6664409351 +8495679469054082695873847249:52391050993:51613949358 +3439820538088948523720154767:20573138016:7365820847 +7423369464106441977035186011:79481629986:55833606547 +1196788765513026539496196883:35960989167:8457862952 +1338255726943128358286483316:278608853033:263850027951 +7465928086592384168642288402:702118487633:368899480280 +6980877535620950910589712401:630051239087:523101601711 +2339202134980410276980870662:575528966929:490709034248 +4545494685181822641699640133:911053289403:261693432371 +9668195721946972188891805137:4501225013161:4427337716612 +8259551913507393790969368498:9602242246020:7063301404038 +4659701729529566927277577789:9800362210568:7075327539861 +3053819631595032842973808127:6728148418206:2224500684779 +4366683403852961415903511470:6439104185904:2144638179438 +6699362635551732317726995831:28702227373544:10553028301095 +5065688358637539429798042484:71885591137323:35498345554390 +9791225684797618392513109812:30135485445879:9805869140094 +5384083371953697880976649773:75471539816622:32497430233031 +7841594419244110694904047760:56642613028358:51081721840638 +9802088249109929993501456995:895302357865941:747875897277097 +1800583120604430430826052958:666087505461413:388926478722363 +5552709909599407767881082882:778336573387625:451622736559882 +1367430472509781866321031212:329165911650665:26597390539257 +6763317415043958503254499253:328865206064119:95622602959914 +4276328373747732269281348519:2332817737838764:1348986154225403 +9156679165729882486565210129:9567332653619863:9398774642772271 +2779911609337845247055619638:9037744386579035:3469144880787198 +5475945914380879357219459566:7738800114103126:5005267674606658 +6479389287564830252125509510:6741088225817680:2330211365760390 +9373709350579874818760334109:34660877749338892:19536499236764501 +5902448227307544389097185498:76004044340340877:32536243541836513 +9898051593637413706362389954:80217157088487720:39115984545477434 +1801842712186580347932272109:22568373320750168:9195014713968013 +6744465945769708867168239777:76628823447431196:51721396150393593 +5785387033181518354473237660:955699320034252819:192511201243220176 +6582057349299025003478373350:520503609762569497:74166605761741719 +2872605987141246656291026340:958315734421813735:5731866601759295 +7092597574649781468273551225:296973294515771662:149112038190799129 +6113909583769266402175101888:553274744237445202:289963165564528994 +9275882039491949320317370316:6008193616806664911:5736956764288685363 +2581885452253240535893556018:7456690809563826603:3278176350554286101 +8898290676669099599753827520:5127351590999448983:3814807635253601530 +1237020605052631927166700676:9906793591725688964:6175507138813662716 +8291416045618897442798988837:2975977380075942479:6901301807894675 +3016759495740635969835179111:47163936620565576284:24908322322972819283 +3258273191137960459878648263:24917882695441668054:10603035428012004773 +5364492182425697499120348561:75500357843241730335:62254808568065277996 +2676001567834577029059098212:72451309575438279717:59491826767765871605 +3479517166044974759968729035:74695683072731013227:56524618026958035964 +9049150941298885946687971654:147823106726846039451:109705954101664478476 +1194199879158751746465723023:327118551757162312784:285645294306190747231 +5138313263054347082620811685:899991409792217857088:407050325801109007077 +6789488257534002358105790933:987387817410283522663:298803601876168198377 +5006882522755216753822233365:246808801841411355472:206757858436443903861 +1063405291189977644667479766:5685686587952704465827:5642958595375719390129 +4071549974065628089739061517:8967348007358938856193:6317456368132534335604 +3790655723646838553953627209:7909538580698794924321:1449308360387677863638 +7419710266793757363018572492:1087508569473864625698:350118644344936850228 +9405572978864470693957614558:5786910261185916937444:3566974298549025007366 +6079976488220512544021419331:89995522364260108854618:58988335828110021136487 +8773908697491160494454150398:12921753919460891276360:11942669376396023157678 +5659432617955999787778696502:20977242571187933567261:3321917778378600918573 +8150631104853727027357524371:18878265467466900143911:15502336762757824525765 +6437336982212152759231863286:22376386804017904457410:8520885065933306324846 +2841739830049679886957600561:686670107797530476137237:298923983498776701713855 +6720562777211608904056675873:970994043750251148418749:313000416120705850514044 +1976430893777715218849362690:605998632288763850190933:269353884056303376730177 +4312380806917476755683817012:273351487944243414120553:261084597036897932093437 +7573533720208059014392951916:761222726811671835612363:128811158735921885552429 +8802984183833135002644232519:7521993646369986315830386:2251617580251013122680899 +3410299560771403181626208520:7994791371162980055106146:4518436655973678150990324 +2035956865114483341018464217:5879151566622813464094693:1770423062989882441700439 +8623366637258086619290501259:4246370337245129028221103:3234852650474692001662169 +5655555026902700387677726574:4310871062897349435532892:4003063444275277694105162 +8099822358568012754623103717:71352403772601213392756349:37000732264075641241636280 +1301511909302522909412934067:52855644862842549610376692:32976432594301718763893459 +1652307026435949030270738146:29901778656070320822560648:7709200352081385029902506 +6829542492722536227077250737:57232681640587408460670269:18853377492634620257488726 +7108108334032456584154347853:93420369056275745654960073:8160285755499914377382305 +3301316818022780400415132159:287375538492249751751558252:140185894608033131147991387 +9794262563601789579864377819:685300673861282142480134005:200053129543839585142501749 +6229002291947508955590454303:220294283427631091639626176:60762355973838389680921375 +3694427296613086082140290561:410370599364584648577993402:1091902331824244938349943 +3770944255162906895033327841:897562091950870271167571457:180695887359425810363042013 +4875154902311268809720742300:7068951755514427110968374903:4875154902311268809720742300 +6188152662004252651294944067:7884221331009198323894031215:6188152662004252651294944067 +2505972783367567761476558359:5282195412517055198527129802:2505972783367567761476558359 +8025623069469905829068500677:9495200930459862668935969561:8025623069469905829068500677 +2486718646068690609173850182:9026149971037856044268613125:2486718646068690609173850182 +2567432946891046973810408862:90394856514892364274690207935:2567432946891046973810408862 +7745565292537861601571349777:98593448354805901999755632514:7745565292537861601571349777 +8524971172821171150052321705:31041829202529927954082555981:8524971172821171150052321705 +2974337430933378198334428408:82906424745136627033355775114:2974337430933378198334428408 +5771257265655099062531051656:16588890690989541005105770027:5771257265655099062531051656 +2662624019903959611718769557:8:5 +6778732813846831352892897739:6:1 +9033767414619975567419976790:5:0 +4484190805038659408123962343:3:2 +2457868359673936333278786371:2:1 +6704327791878929495574873639:93:30 +3620497091984587663129589035:67:13 +2145752591215876820677431894:66:6 +1539914772455136387378686432:76:20 +6317628913691167322781574904:31:7 +4613891203135454670150502839:763:295 +5946612180453466638006648165:554:69 +1122901616558730437538122623:535:313 +1466825335447207193770398661:208:133 +6972839930777435239301303818:943:803 +1390922300295501547315904736:2646:2184 +9396200534639705243892231214:2173:279 +4473695593035293572454071760:5854:2678 +4474405732813817427246912085:2761:2433 +5318236691127749605905787200:3876:216 +6329754905972740438777277530:50490:19930 +7297731771805760789621517140:63891:56252 +1265235926338218509419582183:53391:50851 +2559576370460706231989603144:60710:57134 +4140763844586290789330669299:87754:39729 +1255452244753822565306595972:281981:67559 +3474189474216771007199004435:554492:350495 +9382345271263328958379631111:694186:391723 +6015586957642527653141313700:471476:318196 +6297925491493582622774972856:916562:118214 +7800440302181574783519524725:5041558:3808063 +9060343405594417126784593837:3635604:2203129 +4965753917810931095327651434:4317859:3217019 +7852474579212624778530600101:7430921:298199 +1212982624606263726774461523:2030167:1395069 +7754898375325876714452310376:63994861:25363133 +7082805757467973233417165691:87572813:7131105 +2348274628476822569729168018:90335421:47835722 +7800673013428276317804787090:26746230:13691890 +6336534759632427768881736461:13487680:6530701 +4793395800103571432162040111:520266123:166018041 +5782314191362996567580851168:395220612:260586220 +5323771672340465875718878231:292593152:105430039 +1569080107906556646391307701:563174820:238177141 +3994562472062786056766856577:244484230:117518287 +5355776398603471016387318468:6968130354:338453576 +5904322652354702331638106014:8705856242:7558814540 +8308762859444065432186661226:9414151717:1774309544 +8018390451902192690825296493:1129557401:910784862 +3157839612381955050091000259:9336235349:6871999655 +9436827856166640145594919308:37201793888:5980108524 +3752619734708045546808525293:31963930451:24215719441 +8229280307100868824699598185:44121381171:8080844697 +1976058084270280377813948652:17322850265:13527970382 +6531060702142322365227427970:55255531700:30712817670 +8280506989740856981628387567:883953161851:143734930070 +3617188585487573878127933440:742182785677:573874229289 +1654656567182590569925539294:534054037283:335595236383 +2853300092740240362109947632:307909505438:208091801442 +3292791047643307399674966950:357050161287:62618757323 +9436830375504339283981972365:3846684809350:1997678933515 +7029555188416874186923488170:4860222348857:974796375840 +3561064823100755051551165965:3262008875549:2275926423711 +9278363799578235386176296293:4843150109730:2714228833043 +3630502106063397212130745085:3102977012806:81325107049 +9745836005381833120754521056:93364141577085:72725063837196 +1143267713120667696893403232:68378603652354:66080174363878 +4382384396798501380960175725:79446161588347:40085668507720 +4193104475256865789546162762:97054032184884:4681435973578 +2296354556130866520077182067:93519306404273:18826117683820 +6869136412910904305542084466:607365830478755:67742035588856 +4751347067734902044110724159:669315297178721:523328664943686 +3206960411561726723449637622:765088927058094:574279171194486 +5599421167969360184350962882:199208976606942:55008560892810 +5785893369589329202993905593:573042501412637:240462853990073 +9254174821454116818228244932:3627213085052775:1575329867098182 +5216053120800610501236017142:4490082000616198:2423334406993924 +3521942813451577870432621945:8082962353010216:341547661661873 +4128235653199240874878654464:2924829269209418:2614274445932540 +4560281299412768444143091206:7398654895453339:242361645871018 +1359610564011545828331598436:16416052117880666:15495187027610436 +8657781185945711748693695011:97087720381195682:39014002948478679 +8263614942330779001493534888:38663753919731842:30730779616634864 +3412044520562698375212126864:99808640615266805:84815952887869954 +6839083195296612795475335762:39074392879743201:19060812520641558 +7353048787532142599002861195:698981053524029960:510607712554480675 +9991106799989030549835941706:638050621365710098:43062104968913160 +9780739016619984480439405836:591120140090195331:7605768505623783 +2434043172475406382240493491:743943923788088020:210526422371941411 +4060365272613597533848990654:318332167916718856:75023622178524198 +4328519049013342811828020501:3138962794186024169:1130347745942953582 +5182978747094215846032752871:4848499972471729435:369552565134500951 +6590792180750746863511658460:4675474717616941397:1648508694537466591 +6989867305718248563402048288:6081102931063281101:4648275024422621073 +3895131523130050223526690037:1727276360966323043:1618818766096419837 +8186262408796937118705199163:27174304405216821627:157449787986497177 +9619360159948542862798856290:44024580999315826381:41644960630243646016 +8369034176349090746963117133:43728904134028555782:29212431551102828607 +1249085351348427669080269692:76682966753050424989:33324459936753998186 +5841395534647980748610683454:14043780822769995328:4244424614810791742 +2207082619424281895855393919:497237280911335422980:473015946467228297719 +9495246971115502857405990938:558502237521274160497:193914427632047320245 +9060508328674424093130952731:653634713725600766034:408382852186574473911 +5785250434356430145993719335:184938331679102239905:110915838243071274180 +6735901179878618837471866018:200038555918000543712:85912003677050078050 +6451259561995087675360673207:1843288592248216474652:176374875771519225879 +2531288971913333484904914979:3628054296724446161229:2745197280847107764137 +6898386129996148481108286243:9079442583477438920352:7243921659938203243683 +6478581447076779436051260250:6510429265467017812568:1201576426274622342906 +3331979992117559285445770647:8550284399792488004100:2563793625050152033447 +6053586360171566002042333898:86143879063265446085617:83690637776574713856074 +1542031225126446021672855873:35362321115740079049821:21850553484134626361347 +6379301937391529498654088169:41949091501407035262040:19694589558832285141289 +1175224289507652230500028888:99540942122581836803215:43926808451065201272598 +9953709341176056684957471291:83285489968094841909912:10578619137843778158435 +8467966711397199773711836497:681157988750488961806733:491753239871489492338574 +2524776416405826090820920269:411465597563520614092426:23509756063602749794333 +6766971662730744480042252666:614211283800230469247982:205949103605400337234972 +1725734902025701089628600447:173580673609491612721800:169425673744967561186647 +9820462904475766135717893488:400541397355921732103578:389465500633029734471662 +6735539568740488917680026445:3666569685865423868532173:51055805705271186424644 +4676688613557493071635965673:7537829696792763659474147:3234201545979602761994533 +6294732872792202380391894246:5046518428085989446780212:1724392968973540256969882 +5049226113396996736778424652:2784217884003891316937013:1439089697941779171620083 +3341733578881801261621305704:3691194968461579976735807:1202132424071382675400369 +6317516236978187412897546072:14177948691673480562179756:8329069183488562727554652 +8476463968435485622539331017:50739681816790772661317825:2937105031426588099254242 +9305593347645823297178832571:45889243354028762967266728:35966190132013177790953515 +4385640237621554716748153923:45364504170893822343431112:30647837215747771778767171 +4834354870042967445117875667:87340049296426574566304563:30652158739505843971124702 +5269088644242892129896180447:725988575960921118174600788:187168612516444302673974931 +8700273851084123929883420043:574443108387996450580390517:83627225264177171177562288 +5838308197166445544522661856:525678607674235726159020069:55843512749852556773441097 +2349116131937107259763961708:525787038625306537331004176:245967977435881110439945004 +8083784227806109754593196858:427762823512363486043216223:384053404583567005815304844 +8247514192152805383867495461:3958169021357635044698779569:331176149437535294469936323 +2695314829301722880382121831:2310543619361143673193111972:384771209940579207189009859 +1922796414813963479632168273:2991179452811051517921636533:1922796414813963479632168273 +4033297958423186496041280823:5445411453411437479536095099:4033297958423186496041280823 +2531006570357884227953414449:6032029882105204829907318471:2531006570357884227953414449 +4875310680957824545154084968:95903852945441118151092882525:4875310680957824545154084968 +8099610235654351695627233904:82067331525886075817060012399:8099610235654351695627233904 +3018911406883958349971187569:74574534244338147714155953629:3018911406883958349971187569 +2474956494316476795212638191:98535308613161147975580668288:2474956494316476795212638191 +6787500249576907330891329056:66987325297570726129507817908:6787500249576907330891329056 +6535238904905140272629435023:3:1 +9877196680869307438071851812:6:4 +4760961676082813851005035691:7:4 +6275961051571162580726760512:1:0 +4778395922693418291837597752:7:5 +8296016822239826407306527570:50:20 +9966171713573466943497270114:74:60 +9771401205905166944623810295:68:23 +3024287733659874442778402850:33:3 +8566115087980577827400097568:22:6 +8007977613061015897235869201:595:331 +1840951279441510605287394667:354:301 +4657558561981025786964239229:836:781 +3235306111025252692500709921:632:281 +3238976127374890128371168932:830:812 +1829880979820020200502524197:7023:5969 +8127122912159566138655844648:8266:1350 +4014286357668173307876071574:1854:1746 +9995148908403024445512502171:2624:91 +9745669122331870061098036402:1876:1110 +5237800009141154447102446267:61595:56227 +6827586667740134692225024964:12724:10236 +4406411348161567525142011209:14902:3053 +6579928783516078934447737752:28510:4462 +5553068186493712247222794744:70184:7624 +5057625364053135955529094326:394553:25633 +7864826567939255426413446039:407301:306537 +6344242744277099133439400037:873455:669592 +9574169504734008966683206800:816311:176605 +9025828689530366588365320726:439144:275398 +6569622573307030634627966592:8509636:6252996 +4020998436883991685904437125:1561002:1328963 +5991783939829402009168409012:2198896:1009828 +2246879208156210248590056170:4241295:1669745 +3780343892703822163710415990:9674089:2664638 +8865863629580384262631310237:10937509:10514831 +9844188150363539087825998528:77409744:76182928 +4391229968066319260534964235:43644032:37492491 +3885454869428113988100608129:89523032:48647729 +6483860122277792753502709317:94419307:68429020 +3336543238979661587311826867:290435433:80125508 +9946826103826612983194620155:432048289:240674915 +1380889348739460320667525512:187109534:74878278 +6883976101327327721357622480:343188002:24953292 +2921978525694058455645886861:885911556:76031965 +7438112065508932256273607716:3591587910:1166653166 +9250434178568946952626141314:3450560106:3078640082 +1603291204996318879475027289:5684728135:1016665654 +5693800082947638102385886468:2318645372:1811822720 +8075701400758005440346123028:6719438484:4098172288 +3678144555671691239370077664:93460537872:42837782784 +3570765254304446968016638894:81714548204:55890096982 +7652405214317655905433742046:88015452999:80177967821 +4332040980246035231805371328:50889125730:15618144348 +4272754805779583653101061434:38449364963:38355909552 +7934778960550524253424718204:892968858464:176871467804 +9154949917769940200362328411:798124746469:408491297748 +9479258539561528740378925334:439906916905:332974063439 +7652336520268091719784684504:354225497258:310048544122 +8297105891605818554720198864:756781038173:32661755352 +3859261839674399976734607409:5037225543532:2538302499269 +3206102065600104520312253339:9023681392641:5221688588723 +7380257111562132560896962033:7717557777083:2915830947619 +3442639861670729127365853926:4935643835686:4829884676624 +7690306901755467037930760182:4025300921968:3799280624454 +7629566668659960332868543972:71268154001780:9322215376992 +7740809712625803514911315887:85172264219821:83733208183759 +4980306456161847278478399020:80353233977495:14650635753140 +8466352755002234322576730109:51951009007024:41795478162797 +1149996886949946521272009951:33385983874763:30643114716487 +3336205766653904625560245622:727953021991661:682196361987973 +9057897687643175668341019611:621225385569742:602136636255403 +2794634465087329453818507742:410579578341458:280260630467014 +4249107307001233320293477266:516111380063011:386898046378533 +6154687951756281147781405019:595185955908043:545748903537042 +2371283449445843324771535728:5784307054445796:854855473530272 +3719258097398688765538021996:3144638916653413:1875936896224455 +3418423716275332009445085456:9598600789637864:4838020780521280 +4128176774483177366974333563:3006378657231234:726953816903937 +9896022218232189970907171522:7198566506351679:6868201511931797 +5241202347470370934241674780:81925710278354317:43973945974398738 +3010112195754484442558153262:25872291525391548:7930933416113238 +8599794979252531844782349331:72297110064616447:70436646019623171 +3086964143067731220231974326:18622733923377790:14638657612481586 +3739300065925878263868145536:44934439722980849:4017127201197243 +2708559246250985727431281272:177298502517633778:33407669856296622 +5356561010667264157682718493:597362276293215069:263602353854901577 +6115076767333095604583976653:778045236125826094:720380041440616001 +5000871790014043238582789092:581453613460644796:360885570444072148 +2873411873020664826069980222:891079170826083565:89535983863356357 +5397428721473861521916536908:8735315096973991071:906607111474443399 +3809791810696211285750742559:9994948495915389095:1247244490786458209 +7677793401010826894393449228:6312800835863613974:1506849268481754894 +7064893461173501398691182182:1769987678568165863:222639119460737648 +1822222864941172693885770066:8699480441793564889:276344750798863909 +6780789988030958668685209783:58308638307735737088:14105845898155306423 +1169064261127893003235417798:43377233172937164519:25406279842693067860 +1151587262616337390096400170:93971737860897626577:76165327004674377046 +4652097269163897433608935666:80900875464893517743:23719564004176318856 +4816006914523989837496254194:62308122625169548254:19975219375802337578 +2096823619180965713671809003:668937118620932800802:84636534593589891883 +8232400578970077491461534472:954592343470080800174:27253474551084159168 +8962679516148690875568965715:181442786930528210915:66907794736258712340 +3886020266739433154632901856:565405888270016857456:297212702313776107712 +9492186603023922348688952815:674733343538075130501:141063043280593576759 +6335959122606600916287383507:1621465800310704750808:434602506567267583107 +2750206070407848624700292071:4057108978688281096664:1435697487452861376399 +5924241012195254561961873986:3765027544710874885043:290813050617345793830 +5504986425141371457694251304:6449195415947910908370:4811651562289596886264 +3396237865546721214858135772:2935156306016602441230:790574276712737756302 +3980310993054459905238559190:62065940765733475034995:22211747972151244329840 +5458448774485217623800326092:92492047005564729390834:30620451815118800257582 +8765308603778409884245064099:22597469728319161723147:21265800146881777020563 +1412297485794234795575057609:24246425046449838974241:15966113671024842442082 +5781964724892802905654551614:98661791866037961014784:87736167380276305164862 +4468773311123407596409398327:279405229516431177250840:245475467123778636714207 +4588106545405580158405878380:351044006421783964737965:312425479285523245413795 +4603143044310843134089654032:907212959011157832353566:851703247239450560013714 +7117114450814886561137122686:694780258420644114144565:480263812228899954343391 +3157812488718693877540323809:925951690624855221290113:317223687937572941038479 +1402248044936995399251700142:3688634388442959156396529:566977328670919821019122 +9158831331968733245136615822:4540672045900673342043975:295815387075114233918247 +6877528352282044734189576049:1901517664667644128761083:1640476843843564589499921 +1852280754265549532982555856:9975543271472356427168883:6805249043163593956312501 +9275895665709030421563690937:2644755705940799833023686:737404974645407149624135 +4885431592537478752624582056:24803142513955383384583980:24015659802223609246121976 +6761122704122458057669939154:40991737148017948923216558:38477811847514434262423642 +5891736048183789012062687296:20382988794967309621405963:1052286438236531476363989 +7988311122323486631330946817:82582966948778228637432051:60346295240776682137469921 +3983551475849308200848853697:93932299676417509301250906:38394889439772810196315645 +4791434922665305555257069694:833715093058224470298002222:622859457374183203767058584 +1531315016536559043699331441:710067752322327241438158056:111179511891904560823015329 +3964911460045030365649679224:944122859580319181418751197:188420021723753639974674436 +6104567966731072659530930744:151866157050052391730190411:29921684728976990323314304 +5102692625741645958118749860:574207630063201835562423694:509031585236031273619360308 +6265410834035918774365268279:3239215706293146196514404374:3026195127742772577850863905 +2829404926039389962493063016:7054123055930996764918428155:2829404926039389962493063016 +1555707832012010618121514270:5645468273003664178804191406:1555707832012010618121514270 +3821251628898176620552617960:2110960130825791009465902735:1710291498072385611086715225 +2911608909600402104172703698:6890709538654123837462855397:2911608909600402104172703698 +8237483857007695919726572261:76259078679990906194122564729:8237483857007695919726572261 +1573237853236188564625176822:88446437319589782643737532875:1573237853236188564625176822 +9645442241952698122183965866:92565698494471808780324402877:9645442241952698122183965866 +4932507530720845273297277379:95977950611549345876818980350:4932507530720845273297277379 +3199713841039096497732517080:79714886294687490630204079038:3199713841039096497732517080 +7269170272138616320502167637:6:5 +1810831066887148349433001575:8:7 +5831697856262431759183381563:8:3 +5109070083718362845260435497:8:1 +9770277054540303358823149143:3:0 +8196480891072678691303682429:48:29 +8311016488589267262991934807:42:5 +3057070624812288725962016146:51:25 +2752551099706494692673560378:12:2 +5025334311098503294749886246:81:22 +5242936265860062331244215025:748:141 +5040030928342466985681772886:185:66 +3878840770329239893029217246:926:252 +2797686614784947496066879583:327:286 +5775682997176172451928189829:408:389 +7134336031392585774712119227:5904:1499 +6067715481476737593580595483:2403:494 +4174825782012794597189222584:5116:4444 +8263772954752578160431019277:7927:1436 +1136341649275230862841972790:1281:930 +1316768871492548235312533927:74574:41777 +4547784483501158387660053776:46175:8551 +2277950340809877091127949926:93957:23504 +2044024242226032186569934045:46364:8297 +8281664506110648965990191104:34663:26601 +5871822130663176332594973425:558343:540697 +9213294141512722619786150766:599946:384582 +7198752391389702885741762641:860814:573413 +8256850432279015006206578781:420518:369247 +9268383371914648474861684132:575592:126724 +1723390048227601161383373702:7448707:380887 +9807620707309084029982812482:3672569:2497397 +7626448639530300985949751930:2728336:1977594 +9008572403012921917977830206:3063065:2405081 +8342645084822339024738538326:6209626:5381064 +2048784590278570752031144246:29782699:27120418 +2395838321424052951768665269:72708652:55284045 +3248491565083742296266548856:63781494:3750456 +2287729081895773913190886466:65975651:35013660 +1995797320541725811572088715:60551808:43592715 +3050916631404743195004389128:502196596:6336012 +9930576166406563985218332299:363033826:145718021 +6522119547786037473887472215:208915858:94758781 +8318454273312354728165592193:144173697:128328964 +7428029641777905940433251237:385966803:73822747 +5996921098576016439548261224:5254304275:3543016949 +1889234199594180439848095512:9171738128:1012703256 +2120181499125649625527792166:4252422979:2593850572 +8779391883424429605042115082:4148253259:2851682124 +5104521256357172462390840985:6839839792:4950768041 +3780408680326244941481223466:66690273119:58307372215 +1675652720709183326667698877:25658251237:11526801629 +6445838435104863392885713388:28302830637:12460533866 +9795005718167650115834214047:29533608608:5485914623 +9155742868536417388075523125:81647096028:11983359781 +9126439935662522849941211227:666348492758:340092492151 +1404058935323174871965831456:493717518241:35729434972 +5996057103095859526802176212:933967193444:262134092880 +7699737923605985413330753003:426332513409:355564681039 +2492041832625219843327726796:900814246887:254895865924 +8722756020556746725068807247:4243414273025:1879211468772 +3496587182759184865206771843:1553436357105:687004028808 +5155106029473494154385387015:6739445722204:3448938465107 +4633223713556370726450842612:6862298267280:99371704292 +1607183229401949503965594596:9118475800508:5417218020456 +2747605464872239236049908408:63231820688202:3302122173714 +9658542230840745809327449747:96356022581086:79261919546905 +8675413879549037652658206682:84896028362170:68135677948922 +5557511187939992243361041733:41053177898428:33543573786917 +4909237589671491571078457560:82754625241391:17832015595786 +9984526918814592704573812391:306060555277659:48975043219877 +3346166881206287253943227785:650407882738153:173937472241318 +6667278210535384908123557145:302197401496944:9657280723353 +5246406735029577543225934399:573833729616875:551673303110649 +6702160628508578738075234679:676242232572473:157024888643533 +2303390132667726546659160910:4216119259360971:1507338733955851 +3158421888075810099523276852:6822356625328464:591945104392084 +1430025840678330767839118084:2323751569396263:1330273317202928 +8103405809994809887809884782:1621055123064277:1585454705638564 +6387469482380230285789028787:6037230114407559:1120312323574791 +7719074676417136090455793374:72266300396645152:57717713097081694 +9659254336461015694701481236:85147033441812180:20584983825338976 +8551050804124664999117283864:43280353375126794:6334301657032110 +1658482133470609970515590906:82372269570654428:26571314287235126 +3607619201496540217407317722:70661317022295036:33176547305098654 +4714646246336782035332155411:374732562466444795:294022299020933206 +1541081002063339688034230386:363319574084660062:341116738371975998 +6696968797461407028079415168:654646291770095289:139787138345724488 +9131530555706621157772494556:661488647324722185:89603465934753391 +9595353871315905970188655049:914172521382591043:220868724948492595 +9319081018408046390478601052:9419629636396617227:3432921758904590269 +9570268889511612232840966872:3348234356885701733:3277596571075468063 +2114939340301418984078431143:5769577736224816157:5422070597161119220 +3852310201343462741232659164:5417389474463752104:862519544990243908 +5132374739446504211061745490:8094323264068957026:7733565400421043428 +9218011408903527530506404772:18111680682792874029:2369077944387314251 +3215557502758395012447396283:55453192805253291527:32302887442826105104 +1935530975037750307210900210:72909109613164837983:10133771436264714202 +9029392971709740113208547984:37583259457937893531:3969415848979959708 +3018423547954702120894211871:88250742552510393982:79821531539992328469 +6564647617141515616400388399:527145563904935998189:62157258358561128166 +2612855245214709539489951772:734429304671262800260:344152812026677358352 +7931664723601930967744997155:741314017241711758791:600800822222760491549 +9932345193551595778246376056:620069136338317818109:259042378678049150431 +4043527971073919056164421772:577428216721480972704:269249240322658756172 +5453513409316846665319911950:6281966579410091828536:18466198926947582558 +7427338114140332265197692370:3007661917322410800996:1223846323819640498258 +4334442473453710946969911198:1720617679838548655199:63818826258685006318 +6103370539852228273963660378:4989800755787563579157:939196309918409771845 +3184574363296633648553096177:5962410901351162969197:3001597766697401224901 +6460966262327077724718360733:51616637415610729247031:8523740251523408996401 +3601473266568179986814187633:42391998364209221653865:18653538421351988432693 +3364928815730559215641991236:43895167824819116238580:13040615575403024925596 +8118882090050989490174140217:21747929251069876965663:10385829336230983726046 +5053071544623250089064948526:31974818467085242815734:27032632834996408873038 +7604950519698118286513713031:357928204430638621246676:49960160339500885588059 +2605526574086674636132845810:173386864874712776491856:42155614365743789725698 +5768542533497265249140858956:501058144961340287836481:361168702315855567289684 +2753462303880248723174817430:936337061012191338761416:631344504406187216254390 +2441861808561689885629763848:842478855028999498933985:358086687649337719075318 +3075489073381054674277336887:5193358825466847791666932:1020648704680781610513143 +2953296173453538367485908940:4484817936393796718284569:2285971306420126854662538 +1837381861505830712039904818:5025848414289405803802772:2947190290197593651893038 +6812302385865216572257891307:9204319610726946025945466:1105873927276513058246467 +8704988982521995681140213667:1881960595873231608361332:921226608299492469053167 +2653456623898604959232882368:56648332891239332514130856:47633310901595663582862992 +1686010322519261803770570830:77040831483087717708323678:68152861374419731895773592 +8835408711133225589189222955:46962184118094498928896986:6518096931459790556589587 +1969981939547217389324434998:73291724522962536987230184:64397101950191427656450214 +1821899778659058369803929136:29998277249345282153627424:22003143698341440586283696 +5464455731113165472595816704:357933931522151636363680512:95446758280890927140609024 +9491684053725822174553736337:529534501585487235110834688:489597526772539177669546641 +8899151539436528107532694218:319398715707596166255661084:275386215331431618629844950 +6400865310414308137909212785:500753246474072309637580635:391826352725440422258245165 +7288461886098673615778186849:679018765561843838242785403:498274230480235233350332819 +6938232853626900836122573509:9330994111952256131658773039:6938232853626900836122573509 +1997384857085315135195302953:4648296197311263532402879425:1997384857085315135195302953 +6931842427563412972763093517:3104249837552818325999319445:723342752457776320764454627 +8771587342177653167674360060:1016324148427783117212800100:640994154755388229971959260 +9739405164091429509896539642:3113295298326912251860064373:399519269110692754316346523 +3338748649480227944760023264:71043039596715387889839164676:3338748649480227944760023264 +8219828979274611687173266570:78713302873647777760781457826:8219828979274611687173266570 +6905385248388816504752854617:76256627356068603315788500397:6905385248388816504752854617 +9304821429002841927540591158:16285414144256733168698841487:9304821429002841927540591158 +5407331284089154559137225399:79493945603120219392221236768:5407331284089154559137225399 +52013751821388826886820006533:8:5 +63811680220781710499716555361:6:5 +97938439802644104467939551306:4:2 +49278862095286879198592477183:4:3 +16353972674151036218362265666:9:5 +17851226935983944247029494069:16:5 +81116926959655050632906141898:38:0 +90412957904446769769446562751:33:7 +83354769787677039644585556902:24:14 +20961962460287888448519954392:92:72 +84953545876267991505708347949:911:757 +84242984476538875391936355655:230:75 +99330517927992763013296026298:149:129 +75120327974161723531200709529:939:626 +58735014487592666152681141260:217:143 +75287198531528871121605303849:7036:5765 +50339710322401993259593945533:1722:639 +22623814585557660563648034591:8736:4575 +79008604551680488005772038231:2157:612 +18640667831775300629151863470:3482:3000 +71495168034673656302468603249:72754:64743 +57953000568552322766057687776:19504:12192 +37233761211946627084786656671:73759:55050 +45358589078212281213488351403:72990:10353 +72182592457984165547889747105:71350:61205 +61598038276295889002043081013:318923:240911 +66320837263345164473247102166:513058:268606 +26377677657962434231336836716:790428:508700 +69425632323632479554617810302:299003:189709 +42047380078690242657014795368:583281:65926 +44571604547762751936529369005:8748838:6063753 +59662053567690769434546366317:4917661:3244632 +83264410026283271051264265141:3357254:1601173 +66129821780415521033356106160:5014773:1398675 +10019885511251644365441630954:2421601:1556892 +20806868280287263703055282661:65124968:60715941 +23160492674709420836324987147:98295610:44464547 +37385491274085139538360913693:97579767:42358518 +55498673121816923919410869274:59772999:43635344 +82935726527621790898738728929:60873644:44875577 +19300125966478384515634403002:839848313:644196867 +96361074420562144385263090912:514055603:504356772 +45334378204555176285278182590:133138101:90701361 +81316362569060236545059869483:971937022:453951069 +21334477851824176546162976314:594079424:158262586 +78604523864746779496460363570:9718846372:6175669482 +74156795947654455483739268966:8017694753:7846312265 +83204182480626953708699039559:4736375906:1296989821 +17340735403105803712711698688:2816095670:207387768 +10368495639039810453988168798:7745580885:3844581883 +24787921892133050131172518518:42086206850:13890128118 +58266626338925353640064384171:72699248943:744337521 +30760291059775320495069845766:45037083930:17757657546 +48254949768630848202771844157:38516707108:12452521305 +12169677923062219752960847388:54216621415:4840496013 +50962477780221636004980518271:591619946236:255720913563 +64483379397134875239441970001:827839009076:459999546521 +23765240206327616197639740505:853287387188:249759719317 +32961720344900763455683833203:238607888522:63378427253 +44212472972344289678312197167:539828601844:508813768155 +88487285458680674347511684357:6526456502931:517233473990 +24925928518027187332931929296:7432099223762:2980864394052 +39247495372646981546768229886:7160564590355:504488371806 +37981166040506627981169267963:2628363649804:1346066682783 +94798427891126338821068164949:9765303135054:5323032542267 +83131307218494771397276595952:34189209807748:16250536422140 +40227837153314538718090622015:34132703386520:30706631331855 +69154270008088149729797921709:59700976297808:35955795714301 +23345253299875610722672130181:61506250197953:52929549805192 +33963420191790889448449054459:63561427814288:22964193768987 +12474883020797686130200289409:371617933479952:35525892830417 +27290825131127201808311443272:433389690087067:39176821281070 +78613317635988764878719509401:671828981728415:70216702510141 +75904198976598508483868140015:611671164879681:108232339590517 +77698672791052205292627269886:778661510329874:174794245809068 +14668809641621100709497017720:8843925869989226:1896631619944182 +59436061646750437077192381530:6100699165306563:4752582767856674 +58831409284023909704865106856:2346258071906655:939725409885221 +78683064378717693837119542818:8550938432530786:3452974657234370 +70477290356632098945597255526:2740650724778473:1507193505000006 +55419614560723362897840700545:87157704361350409:46308673936766998 +40574918290171537950272822400:67240207339658575:56910023267183975 +50179263648647102380237317393:41854802107448195:29721649608700798 +83029598783821851382130246958:40610726924844443:36460098236262105 +31993754610824823721038763838:64235874693469541:54206265766640006 +98010604934604317518856279577:751096918833586416:249337594133465337 +86948354536864981376079348854:846062112644935701:185390319305027234 +97506466117461979045960752241:344599121576669228:263627373306556217 +12860010605856300855151518500:479651926270820491:189587507007222050 +39845117735235924408396524036:920083620751023961:852019392784709987 +65552469745957708295903157826:4413019135669812415:2140572241002669351 +60289388615116708771486547114:7467378578678572708:3887595388297374622 +98254061514083020594300840328:1637505920207903774:184102148641036660 +93569689095009345713480709577:8806391056536437942:6126375693158725971 +91626784876462520012325090829:8877100482535570369:3769708929711941574 +41032388283696479126355722536:94102069546523332003:16450382692052658651 +48592802617271622123931247763:99426862293752030079:2365597846464137520 +48789726321318881462924350814:19852706986139004614:7481938778699507764 +36283358440064385587980444294:38631590987972362778:29352082357343468248 +54123657938025879717171407183:41702223208816192839:15271447057466271755 +41441798575813300243902738198:219714536479131848393:61126694567496488869 +22409488182635676060739663482:836008574180550875712:796879381894388767098 +56977209010624417723355895645:397707995261858096345:207821228786084945175 +23773192159105691746419635846:608925578012579183091:184619627205156272645 +52187561234959021226573738308:497440743563600453712:243088317049087763716 +53658198820034141207269153647:7331876105745225515003:2845783717435004483204 +40760923260714541157360567867:9084344745984539864086:4361821923875058666941 +59724667294457970636036895143:8139175845642249219054:5377323569035310072193 +65993232013843384548226820425:3525981123288473815045:3191548527584019278095 +34861851144356041803842412667:3933212362453830553736:364302825113178294787 +23611741585133642383572113640:10474170142311977269026:8368382313641597644308 +63970457017892014903121213599:78791336846334453579936:7006363611044931915007 +32913129986717929285161214949:57004920935828387377694:27771235885779739897087 +74227756675450522951196069808:78901312869264661377665:5271371015260914300753 +95673049514464006786762331350:65088746117586067193900:12838669892823389435950 +95542191954685546267224231166:838591015657444683884226:678949817215987610478760 +58664656924049424926914385261:629929333836141097632224:597922557276786620628589 +20286093795835578643695163200:732426473177530711901607:77768237510516156354121 +77175068223006708055440875772:762005847445315604443731:640005440034268588687554 +87066307289071638998278198943:315943200030315262871556:259940717510432449154243 +24490272823598068117097940615:2127826357079004185434618:1119279975808946930922053 +30548129502722008361124087301:3187027590668126970994138:470046168011344145274571 +55609644668092375060550210593:6885872282978732246823774:6225983039112167448235543 +49496647261451612095950396373:7883937540001150693114445:1287385324388044577910663 +26354469196188167437661319017:9777074974296470315424057:5252140459179937593485402 +50102703921999845552782131977:19929556743776521539007655:19727824889446925255894962 +79827800551774589835683893673:39712466709746644709247213:5742465183833970096995543 +52572992599018223681513226858:79512789252592230205919727:15038903054759515400287311 +82302529606422867663536925989:93899874235524318763954873:46239776103564426312457241 +94503940660731847948877753197:76310194093825119672619588:31920372576349794174703253 +40887462590816189649590563941:327745521521553820124754042:247017922143515954121062733 +23192635105978914647703550095:867546370551097653045196498:636429471650375668528441147 +63626366323271694592271389294:780936803666113070773234743:370485226316535859639375111 +75587511563351576568024675248:750063424045603285855013703:581169158791247982523304948 +69339186118213419796875907656:906562958576946378990741946:440401266365494993579519760 +15652512500719710982133403363:1235880481695902078031014702:821946720368886045761226939 +29012194618032556188041589188:5444697861680474780581785068:1788705309630182285132663848 +57082761397324915403231532035:4126386973443564305096192658:3439730742558579436981027481 +19102727596633812631178925645:9729782660768448715089436473:9372944935865363916089489172 +54847129716669004444213239644:2983504213600248902636817568:1144053871864524196750523420 +54392934482214960095435437486:95540168873992624921465437567:54392934482214960095435437486 +28032344585206345010755922972:77901580194433089358879791024:28032344585206345010755922972 +66808206918684773004442798884:74728248517025304958052919748:66808206918684773004442798884 +26314504139902589895221456451:37081137296294400378180297377:26314504139902589895221456451 +43718842113047177468756508184:38837803423698662761272619374:4881038689348514707483888810 +70583129865108001777128536834:274053585694709914015556694586:70583129865108001777128536834 +24676642264895096367021986580:888294015703034893360735328129:24676642264895096367021986580 +53902894509040668536712676432:518996253127065218454356526379:53902894509040668536712676432 +68576447878499136252628286820:153029482654076375492874134773:68576447878499136252628286820 +35336560658832072957593788352:322382247336295967759664654937:35336560658832072957593788352 +26442324421450767722519512785:4:1 +70989705743968052568802020057:6:3 +26388551040872546112669518048:9:8 +71076211534021200159430660976:4:0 +65220941112554533604040114933:1:0 +91379886197026840627007156044:78:58 +23743255160010052821092677519:83:56 +98684319178514743745753361643:35:33 +99842846646326455181806455313:44:33 +63280022875983123603695733297:84:69 +63130131402785249673100292578:704:98 +10038808610396070121192022154:193:171 +39229769581612555745157751094:133:93 +44942082986359764336739801596:679:46 +61498898574842155867363260323:661:506 +64863756652478333739229765794:4464:3234 +56241364555782748474078451647:1435:142 +57681266667477772985693329507:9120:7267 +55028077637731195505814743660:7502:2940 +29433414647653661684844145203:6506:3955 +92438897797504187878927605696:59059:23092 +95143478295480285354385544132:84072:74756 +86082986974472116084051920614:99442:11350 +65356823971982290944877816987:87342:32389 +65697892822349296476924653328:74547:6231 +21494414689378941642625233743:551460:514043 +33265296505379520918282882466:208894:82508 +12716863482164909748889705037:323119:201368 +75188849453465799907783243321:947003:435156 +41522789321252028848837655425:302547:63647 +18804566683526391061821034173:4820513:2327026 +18651252303090633645124898573:4430333:237439 +76847758527628638509194638687:1400315:885882 +27879418365323029572516950832:1733812:52384 +99054877934479439073963461646:8913022:1532972 +81469744825661622138346212844:86581659:33980317 +15586648852377926712797565966:18181922:15911044 +63305500933590312383639139222:47026591:16187821 +16786155144737613321765004260:31053006:5510928 +82246953629136279205778151860:21741534:13363190 +70921830289139853301767334657:472857539:316117921 +10547857242656103206823194315:363305305:307703800 +16316458116366786733786639382:915308617:321468922 +37205272473717855988635549459:305050773:51208863 +64239191572055817249376157833:838040944:313301081 +54543072002883685245423880560:6409785536:5828042992 +53512242435369733798352542158:6049523708:461740442 +84850670266028332161893118264:1908698072:1575093912 +27445820893912762735625612339:6754897940:5100700759 +35763181009482777588502343279:6481636271:4712911013 +38066083346587567612485491667:43143970480:10719556947 +69360361923058440519655364725:53682349326:52256398051 +57794039626070021534979672375:43441303319:5434878750 +50708762815939575421165134959:25294468608:9492439151 +56303920992561551524985644555:65402164035:32620255855 +71071753951302063050480773159:772043023769:486959186443 +10358038992382987061408647327:722985316855:629917661317 +27106914627014122481770842470:977555925997:153123203113 +11137812672914941520539029178:458963733565:269397656748 +88408518573927870494090595197:225401416943:123953842470 +80463465962872249105702820323:7060123936240:61268521363 +41160451863124157993650875203:3119772098090:1426997892663 +23535053755436312764545993065:2148691905645:733936188755 +20209085545987482276273150097:9748990217701:1658628430358 +13924879231430427885901219563:4806336367680:1204833834603 +46455587544655022681113550248:35860849930079:20329386811442 +87044258687935651458651571104:17491883559253:9541099354279 +89604356343947373149269878068:30987835826191:28977327158762 +97145641284773046343924436339:22264009734104:1025681323155 +39867359533335234007213837200:46182353601324:3382563727980 +80677404963799430455231775927:829978818396857:743839885501690 +12135468117757839432451397157:668860387225777:178020453013299 +34213274268189554437792132645:574501482793733:381738486844196 +82150771811538675430068438749:936459979692908:291014492533717 +32306317185023494482768155969:732177788673987:718897017307037 +71490976326260961530148373863:1860052158712443:195155649446394 +64905910116396580616095982117:5858065789411218:931093860763109 +31925995882192983497004296677:7180261271024974:3365752290035187 +59988320890383918734227688810:1061444790832570:68605693971570 +20123254697150097677455917772:6937021855661538:1907642968990324 +51944485689108546093401471134:65467256072469098:34606007073817824 +74748307280820413885166533940:54435750339924946:18048864911907558 +93224322468119653663308665910:87033177919599284:39830243784305558 +85717882917359977200584058270:10143398307067807:793910019292105 +52942419104774375524751075727:77674541671208972:65978743350808867 +56466434702433999319251237768:930654595277737870:485421958266024128 +95139267611794261577233954468:227893884802058314:215765918945984958 +99028223162216804432067498106:468628017033608603:285787154191988398 +91450239535130041785040279102:907574569225089812:176611802103538962 +57814238145954301194238360308:476269679227117290:416793466711504758 +44272082674047261445803443198:7397636739684290793:5700117156946632245 +42837505058393454525417285647:2906284999099675718:155012579162042971 +79399562930153130955407439569:6347062851513210434:5885402994683906515 +36625033078691231132243194022:9686195177429894462:1627115201131950392 +39955285993305188346446855155:2960553846006488750:2357475742737251405 +16994116878504808540731034009:22913991746422362900:17420411801578584109 +37465128797123591695639487850:34209485840669861684:13067623440734721922 +27520509865761186552218823853:35436815403467557886:29380609597867987375 +94401131689568144790339495156:57387716973844849891:19304966900325236990 +83054311127152521981114766852:61828093686600380143:5575255293531723104 +60156154763176557671509695155:388017680318203892724:154628673672514333751 +93927499040971508911128848645:760268434294210624701:758580387207163231568 +54360374518256379379880900289:286617603640532846974:13924425370806225813 +91780332535875486869802723285:468254995413491925978:453479116581186683835 +20366345142329539916342076004:928544927182170039699:56402641765389573517 +35002353526912378664865426701:2353717745177365216550:396347224211950454101 +95441010061410059426083289488:5806835655662477869581:4395832964723596713013 +92719288168870850752027464678:1396801190823819179295:861506065237784595033 +66456684727558775716041658362:9749641483835128281675:8488463714107094722362 +39389229136028965512451369192:6573424971831638654044:4607219195022798144744 +59079277783995058473651036367:88374857171352029605374:67140946027218251279749 +42583567019089948623854252786:24956881348830195918491:14726801217781071836851 +42423471142596185780413882630:64789377485159244838375:34659088763852694316380 +50675433978830875036172348824:11562873232386516597580:8876320192168651435984 +71337505634982833244409916841:84995307688676915477879:8943491722637755815472 +40486521442079197428307345725:580135117708671496152668:51847426431054804951341 +14287231431802998071397607259:534591738397493357377811:267223129988095475608284 +15244638832368591340736290301:626839090767628000081343:538983990646006758109884 +99993921456068460709706248159:945510314110227233426671:532677027269411435229883 +79730143851053116969495202771:529310873371982506102219:46995031392075317954801 +66610445105230234346773417970:8460274307631038817446103:2705481251065737020249051 +39372031139645618897378118919:4290504156219695678290889:2365002173691353380921455 +86151344563956766560611367507:2177497690126092499152504:825951808042924141699251 +82431128347753466773648510360:5043354889293874868985399:2536037134375914951149104 +16815670243293265469830735116:4520870970197260860130720:2551105129652331004587436 +83668353311775131240796557448:92703574278909570192969406:49729312198698926738153236 +70091531110913389890865751768:33878232741915234771100436:31345800632684384230050120 +75643922026276844818362343880:73769852171181082286363556:29823550816235474839698980 +90715191535933479398081136897:41917006094465957652732490:6790347509147037568028537 +21732607298072898220512458476:61843116524612325638675277:25673397933971921337436249 +97188671773181787888040313720:467329811440188951470624019:451400805062674933621141787 +40406595665991295319539348130:828262520377383668722811747:649994687876879220844384274 +73719979317676727250573117058:199694100249350662126907761:32856325666332925744153249 +29197866513201373784956876034:649543733161171338173416413:617942254109834905326553862 +43119172106113280256357883363:433294212673267462591389805:223045051459801459810292668 +60332414483269402770039275701:1926018755975798495327338139:625833048019649414891793392 +52363185801436686003126156658:4930332886391993921223842237:3059856937516746790887734288 +42411863553993257904829873755:5969237127864730055471001106:627203658940147516532866013 +31481975229384532429159008879:4762214941015019247470535877:2908685583294416944335793617 +14830113261846766195661442882:6845014133682752102063497062:1140084994481261991534448758 +72460096550885471474812338023:53225336854662797824449526064:19234759696222673650362811959 +24403581294384905175480376188:49066604852142849363515672915:24403581294384905175480376188 +14204087801964329034778109253:13098137348850225883561269146:1105950453114103151216840107 +50363839742216397779851092145:98551407088621087308751723573:50363839742216397779851092145 +24670201159986244329015837091:70589900084110874838845527772:24670201159986244329015837091 +59884098274471267672406021994:595900505065189684676379125674:59884098274471267672406021994 +60513005921638879863816414404:484143004332405738825516735812:60513005921638879863816414404 +53401833783490203716215961543:634574145358440640314341043781:53401833783490203716215961543 +29837940945185938578256967473:953066522879608285481068208994:29837940945185938578256967473 +15555743509361449747898495097:581386143481726183417051441937:15555743509361449747898495097 +38298294681022445827217499708:2:0 +45471835415834045294772105567:3:0 +45011657925219041419019468281:1:0 +30747234620876168028762965570:2:0 +61640220663790850393092622694:2:0 +60981388135963577129375169212:16:12 +86871379145165739101246363834:36:14 +11511472658594348251796355611:17:9 +57286879114332103830094506128:86:76 +88533328198184599577261649177:97:4 +23240936656365838159989549308:789:164 +83103904250440396010681056593:428:421 +41710245558856340606902022749:670:299 +87846958152590170891435239863:492:47 +89525714490637860084911797087:914:125 +19872573389502807013569494122:1165:172 +32143254160098910721249047105:5084:3841 +67965657295772033620583277964:8221:3469 +45453804962657620303545058880:2151:1412 +84913979723248091588010614445:7439:4596 +78600709553921425811814350073:15797:13387 +30082754036001590168612532994:99396:35578 +72754229346105210294579550133:39703:9354 +71627280660547792660870768391:44477:17994 +25481778381134297185946147241:38598:16365 +94085302857385142099554128496:302329:112306 +57195610374273885602361028182:290731:91168 +63197048017873100769946829204:673704:444308 +16701346375585991089410875323:462964:30651 +49616605689352518153376745228:161456:122124 +40604526807122147717104502806:4698276:2051434 +55317313070407313632452691241:9769581:2743775 +36092482343721729553440602352:9164683:3115356 +65840376146336244048198573979:9082723:199350 +49851662260200268652651805839:6189306:1312013 +79128133263837430566559793282:38698430:1507232 +78949697577379796480895519362:64650342:48700328 +89119631160086736518296277672:38818721:15076016 +85634320988015783478476045541:97314474:81557379 +77677800805949005010599768656:68163542:54020190 +78113046015445381008436663918:973864409:415879597 +43118156582244078641148594149:850344102:526948091 +20635590720560084639367251990:376887135:217872455 +43115790098563083728599525877:162858333:11117219 +98602370503057545215834626999:938224230:261966049 +44350707621370204467926114726:3942111484:3874261922 +78222558939284049668609912871:5102044072:2372361535 +22901174280183778701466112731:1040522731:728106936 +74380632411680798763451553605:2394445582:1004346609 +89378811546598021242328599227:1259278597:225840770 +42987754598201819070902771840:61968003994:33277984448 +59010995417211194563060367643:88865940451:2492633844 +50019415643129341511231791290:60319327929:48299572299 +16522750886598821248726233726:10065494675:705090951 +94915596779998408086110861567:63366935388:60295328399 +47742389294023968697898877902:545469249000:86975280902 +51905739579595517107502231433:742825009269:222523037529 +93180864313088709055214470420:986735539227:5301868180 +24180752968534574430492979483:305623483160:175911352163 +53163927270769808886446991262:871880175436:532402152102 +77147409559442279172288157869:9560997755158:6701665552809 +94831554569433731573214205579:1407154456804:336979976043 +20990067560281551227753008172:9801018278252:2483032751676 +78059915380392116456113654298:5847570707297:95711583704 +94045875564505755927159301786:2423790473631:1305757465543 +61052692183630019570358335393:72487362630506:13302858198279 +27624962885944939962126262543:46256254597497:22858726631575 +64866033972197318834949182633:25077070243623:6671192655470 +48835922279964095085742144346:56096736886570:7515945569086 +74160387574825418932873887470:24786825259753:8656248439359 +99394376948361671985451291887:762710069160871:132288252105897 +42724614745847435047084512747:575612428736594:23472464086181 +80299534460637158964820411106:503521785709870:462647021148256 +83399268312091076879264817402:468972122270122:378530503347724 +99122310841847723398571259955:263245502315736:173013481815691 +64897243195990349317234435287:6390072031520886:3216589246022475 +93851721667165820368048120818:2376112165967835:1731624408542988 +55912465099220291774878241426:7537668212196203:204063665111260 +17620249179916269111666911098:6944713071216995:5816311099743113 +10199782886910562357086957106:3842983988252292:100957615570090 +97953243280885639238413587018:92899555036957736:90150291645969938 +96821685036105980715915014799:60942751054910964:35640522958553523 +34288959297458441740698400433:31882886204775203:31603228371204290 +35891490727545955058134665852:18704287690189704:518309604707028 +83232424919181158096250629535:73317655629785238:4700638107856665 +83583411875811409047367809189:396860256581090496:353793470241670821 +82757543457864341493710517015:999976130290619285:529043893176672660 +24962459725760038636771348286:217802360649863077:207530001763225036 +88461586332350652967621839831:913624649129189080:215087365177730431 +77288364747708728924169358574:967165779243415870:790814480982556084 +54641257286647891294733257067:5564148295595267186:506472186663758505 +22415077727790482478741196549:7247121621644779687:25071659758959209 +78562774423346755855310260938:9481069355745153796:4867148411126423894 +11514604523295407394397676652:9179204516373268998:8947672520727580488 +47313885369461247422850646337:2763212952546290412:955372627431161105 +62868962510274144193161753566:22068138007781502671:21303228289538047931 +11908336806599776018526652748:92624871826989732085:60565654656246765303 +96093922365221767366710544842:42131621201975646741:20660968619609831877 +17367376115934219718477974648:71471205192388158093:44101908598471431630 +73117313272725385839275311015:41770785830723893877:26385031720529064445 +26708377478659126227669215408:690309235471529681860:448181974233559932828 +45746758587947205124704486444:595506767901223603301:138587356065954062564 +48800621540291059727960255690:222540169445332588253:85945727297249079052 +27510920767455596569978966572:895117036576287067400:808940932850484777972 +11608162669078767650735227522:614284375481636931510:111383500474144182022 +18866368126035072473687389928:4529251196526699768596:3258714127449288950324 +28634146241519205313328402593:3740585699993839337877:113923365120273346363 +17295321577441864162159483602:3895793151136526760050:2424075369522292149302 +15960410681009084166474758839:5217725566731650269557:3863993840326631703565 +19950873893669807911592729877:6192927706282504635387:4291001461125929292318 +18344788138678986028494422154:40906515518131980822194:15815479590436896589690 +16160111879951494752639043450:71294783814376562431932:8411882016852442744738 +54623822770669896143542062744:49009226310442271230138:1475650737436736993188 +44908499172232186558381545656:72896614034459512528159:29820005162648821496593 +91211474962333131056160084110:85759771410475305032604:40643065321357938480434 +15247463959399936808584031574:474915731753736604097809:294391446223134023873629 +45186996864295920035817576063:980052384909578129792005:701605654910783627393533 +82330195289592487275847310987:128439917547562207489909:79701687564712608152078 +83122226272360678049624644792:458232276811376700426599:265955607378722340865989 +33033338367182358660086168478:442011595448621579850256:43792925073511557136574 +63951200856558195795543879830:9571161457069511882073920:6271161876786911408020310 +63442435804782026739897822164:9069370904666794009661259:2186326637802642317315459 +72217009466713731248936408536:9490748117138030079391629:1907043410460374845503475 +21011291966380077004183254818:9206332689808163190287778:2440768237848603946545422 +45632157034365568219854480897:1437668699205860601711540:552521571552721530201297 +87180065503951756931932468813:81652325333527963524913426:57034373077419850849843271 +85422660333308904011313746983:47497471353922058116985293:22206838957043516974190169 +13997621358326724171328417885:16802477498441540938199176:1157602124920569808504277 +61800639731056375398427278033:58585995250079560972736082:51000737472518133163447605 +47946799866828013538629506430:22806111756711785837269305:8352954219839708689427320 +71038208080740184381159737786:300820227777395715333473584:44634325274795562459971962 +13206558933377360926477007818:387272617558096676155999684:39289936402073937173018562 +57568607338524117066249903838:403402696119934228405371707:285424489493456632687121444 +44704488662610752954440363783:412483105928878427859540453:156313222291882745609994859 +94240848730601812372177230428:882388875148928328932761694:707627964815409505304490864 +27565056207838295561049460796:7970371304955087503144756135:3653942292973033051615192391 +78072352327825183717330540260:4417533418005196871958169032:2974284221736836894041666716 +96881569707090224409908441004:4511647873813311088512290769:2136964357010691551150334855 +40596349319294436086529863650:2845480209912336241029463948:759626380521728712117368378 +51357834490335556523005153087:7407443178692292089673025894:6913175418181803984966997723 +51437481586259390295655655156:40056838899098768264583914903:11380642687160622031071740253 +74153679964409574277844898622:54738543506456546095605348898:19415136457953028182239549724 +89690964577995348762284566892:55890563800829426183573269185:33800400777165922578711297707 +49639082383449148383044685830:27716564184764476586306275961:21922518198684671796738409869 +90033577904619156487287461313:33160871529617273443577933025:23711834845384609600131595263 +39557462379793858928969526970:124424632203991742458353649829:39557462379793858928969526970 +50588115389976104043593901424:723954666547943223201063323406:50588115389976104043593901424 +59803454587109057885004335504:136672602309967342937190455788:59803454587109057885004335504 +54272701557390212169595629435:449763963076147436465765676245:54272701557390212169595629435 +38634168836201195367539146889:143321112867608474317393282137:38634168836201195367539146889 +35147429227965158053924266423:1:0 +31670293563437736950587873693:6:1 +21970248380323333391805581884:4:0 +12211236489864863005925549866:6:4 +64913447155476358621623694081:4:1 +89118963063258870795966973419:82:51 +46741319480664543407004671523:32:3 +94954172300500106987512228093:39:10 +69927820974037547187910265143:32:23 +91346848689358806480929583356:82:18 +40067091178771319361481653903:696:351 +44301160818272578921526264315:898:821 +18383012900439738047184789084:248:244 +96440528983347974234509920572:651:359 +47884443055304266692507697910:375:35 +17231475782144408650672750471:1202:431 +32799612916165824737798506057:5573:501 +50835059323228379952438384393:7099:1216 +48873809938487277150807040666:7501:6681 +49520712089934516311178167121:7871:2613 +38814980700757351590848329377:33487:2010 +26876068448831135692706443414:67919:30634 +13045698550262580571439269005:76423:45546 +52056823150689788180328342350:93111:85724 +92540059055117211910189818916:46639:6329 +81252631965171405459038895425:555387:422690 +80522947656911452517885632543:251557:134412 +96556463109658574913740487694:757728:495502 +49999307303598962804510824031:105209:59802 +75464034293281474375953090865:849541:521020 +15258985017037141699312826939:4600686:280091 +66196858701234243719415641228:1535976:572084 +86798864047675899326127418633:2111334:2101903 +52231410393220476584239762777:8299808:7310809 +37000455962813481800774845017:6449954:6176819 +22135968311509316966709626931:77948127:24099780 +38841133355123623163525226092:67195463:36499159 +91199037426774992326565855930:46002659:1221250 +58041238791890351282811192927:80451518:57475867 +34018818018878486028588607206:58904321:23272362 +57467574578006503227675388421:591351784:270938205 +58827438998340595856353399473:222631519:109420905 +92799093048480495310896460496:246262753:107956850 +52065223126644000062934015457:483723215:439205762 +51681810869295530777887374006:146547459:32304165 +60793864855792414275857100833:3644937235:3379295533 +40109542218158728680698449591:2357207644:300184535 +73688927289906804707536531534:3479552549:1208095684 +50083665258288279120983634059:5429340763:952394425 +74790064425454972828517701399:6909687127:3111585136 +60198712432005551983844523077:65637381073:60450920404 +33208035229922505048603198211:66842581939:65400300310 +55351597878599902925382270317:27377348174:22501031299 +30349913998610828585660325943:19210895909:14999929323 +33004198560384308252913563409:86042494449:47326248870 +15456114617526909017635412715:288008091650:90413846765 +95057492909970132840914245263:187052657172:14534011011 +32604203231679131854454073070:699284560462:585848094358 +19549775621263623032900023011:571794135661:470837269696 +54536889195433185342870895236:971675450463:801248011614 +55201930795200565921868037497:2530097204167:1555530798565 +81930042812192540363296971110:2785357518361:1900397106679 +59089431026770447106613361503:6007561228998:220363767939 +77404456435831023780830023527:8349365189841:764134840560 +77389900428509641334622637778:1707933260812:705504128090 +50369535865156541944628336363:44281197365967:16149569357366 +21590590545682639129497340501:33479782473929:18987347757486 +36052363288119879995928924040:44719070169013:16152422355524 +91754011094705966993915842462:46066957514696:21579089516022 +10764817566880125545160218669:34808830180812:1611710194241 +61565389950724218428970201062:103156393476604:51591662416554 +14000993068881892497613962329:311344102461277:150335320803121 +96147319028602302591636346216:209025395821852:98951881890416 +71607331832935284544492813617:972462262728308:935825014230101 +77557742776861084506671916174:403142027317632:2066389823502 +34296783846342800223503629497:6049537587055827:2667204013771839 +79319557403739009847019015638:7530282843971019:2832002257961743 +16526914510207536379174469173:8536310724184059:4777532453106691 +37601491885534899366419025550:4503462433043798:4201036751503890 +26391187629653288210362615943:1905630189945836:1468034423296155 +64389210606747418862396733517:92378572460355360:73675232883273037 +94621367563857903143812707665:62613907880800933:42809560444338866 +74006660884736157962542288006:51352741451423207:47277217038313979 +51640642883623968016020611703:66514350966938487:11054603153139471 +45938876957297234540976443748:82830224009717975:17590247485538098 +29065358981864639137287344003:909655226997125475:82279038421536203 +75536461725883367555242500699:807678803781554158:509610033317701311 +16511576551380752697895958644:669682225629887990:390826028944451904 +95993098064017107145141209917:361321961009343674:282405403009345345 +20175249901482511478567123841:647548536400315768:17127749323727393 +72506235658594601839755899858:3767060154164396767:2115916888473642592 +88447918331740216683316156841:5568102066912685640:4023585064775420041 +98463902594588613264548054750:4844213197373642361:2089117531887526307 +81906436730735812160293291947:7915400202492203386:7914842454276128207 +95777976378056870723872026406:2531095601228743113:198211091352997756 +74230277475779966788538041873:69215253017184958846:8698170483385906947 +76928323614353216496201397896:93209523656100803701:39958296678077885335 +47892403038358316200444699712:10868453711225743637:2075104738992834093 +87850633977926259487890144461:47086442903007347206:34204717922245224349 +70762146871731177386467624090:87035743201968607519:9194257054500673356 +33667978959228893342106588584:347445661365461967575:305185166997171196934 +13299689097475955178611478081:771165227152640966578:77825399724789810031 +42678540795277625655169738660:554217237284084611387:509810596076244396100 +31785741496627514531409554963:904369412774228803790:879416547027778974513 +92544979861858270115672419751:944812119180112297955:708858539035852837856 +78483866490533532178060142323:1542078395093609416255:921141198949470776768 +38875587418618224047072915054:1704932288261101344734:990583866005068783430 +90650531667654526396587403203:5791584866748904432514:2467380465090486266149 +87674159488187074490717884929:6648835245749084561048:4945488066078506465065 +22759972808105241758840676242:6536818987040699600210:4554018076443133895932 +61836912699784918934777456244:65217039910369944470172:6750929538316550000832 +11615411078526383610333600937:42097804485285145660935:37451773417930442381347 +34526745612476565733499494900:58566213633663935664484:29990381764749409248928 +40313791287574019476702742454:86475735718385994653843:13955962526173006289656 +63612467087808290948183975298:50473628281874326791907:48627879258149075664128 +86789829296626577140490907069:172000470648606402535610:111812046272485047457169 +88983777422265329373013937527:124306477003765175918399:104617413062078411278968 +58007667798199614662331486448:386418499765733045830791:68287366832754396464692 +34391465612637150762830024560:215889836635463153685224:214636607870380773841360 +60800059220735509322712709894:484214729967770601636747:120867062361498796209586 +34687897538706531475221198658:2039034983481132953235762:1873434708978807727651276 +67092093759889710817820000679:3348397120919644332211327:260648022797333301641580 +26589067361474008975960518274:5327714428415037726621859:3772363682970720117441864 +27213929088416987012072026800:2335288017785697676486614:817817160251987973513858 +26748225950137986412724766347:8419178314741984031641770:496444202703144198863057 +56299668426166027460775516812:47548181857472425480837880:2621106918675691463466892 +61610363790254068600458885574:74731282213949683140716836:31787245959529692508212710 +76615391527561988045354142751:35655623675676409588712169:27111872209060248800403739 +22838481779101262570560492958:60165178451776539818551507:35879145877953979329471805 +74741946243467587662490602738:41278839204004538409905726:27247284219373140561238678 +84451882811988044548635855784:694328056008841295460253472:438188034918247797945185672 +49007188128518046365732548826:800336853890060078597222137:186640041224381571301998469 +97358637945196533431101591408:975474047021342414765648474:786707290083634369302392482 +44557341227576619224761278033:143921374216856691568007683:85636594567901530246903986 +50035343508854478962866620921:155061428944141384721557585:105563388840953082525078551 +63000245392365789227330455487:3100465354750879774302068268:990938297348193741289090127 +65360530933790266497012444759:1081797216891901171297160552:452697920276196219182811639 +42151566059536635725118641451:8054489631848252600357758582:1879117900295372723329848541 +21011600462810570397258444480:3537979566440844118427477725:3321702630606349805121055855 +29463309904958827585696811704:7599353938997196394862414851:6665248087967238401109567151 +53544176980585879527081369534:83208172740690682436460089412:53544176980585879527081369534 +98396716039118936767304714744:81175638121668393804781843516:17221077917450542962522871228 +62071795015237417448929560100:84775055682667724872451015369:62071795015237417448929560100 +46412279194470488275822598961:61110908087598260909408754444:46412279194470488275822598961 +99896446374812802993053109958:24055583028097566937794939356:3674114262422535241873352534 +72424547979413983091728163571:428460899250117593894207761501:72424547979413983091728163571 +64492611307022700374328596776:302894563031702435759603731639:64492611307022700374328596776 +56028007428829457192873604468:647387481055467827536563471292:56028007428829457192873604468 +79608644045719860542402789884:606287727234938502192213245098:79608644045719860542402789884 +97837636221191446353547279565:226077776304702999557690864068:97837636221191446353547279565 +41152144693852210560588680597:6:5 +22862718993456167793875608165:9:7 +99033135718396080213481709231:3:2 +86826595154629313099948929619:6:5 +75016566161616242287538579126:9:2 +21137569716371301935200054637:58:43 +35398043780400385730229383238:71:60 +40058757503945409312481368136:77:12 +51854233802031484560733011282:41:18 +28691156218416378401356583997:99:66 +86144576876578982346645685096:566:166 +77620154216130777138982583878:854:564 +19489114491628564095433950144:421:82 +40536533581795691482088058189:917:240 +10623791599970341171418841483:336:171 +46637670628795527660470955922:5194:5042 +40230189142765461317718744982:8113:5385 +46709317279782320062709915243:9029:4041 +39875505469475968482889099377:1667:725 +94048231972323467411911061916:5595:1581 +48952819050011876380792213195:33151:26632 +58365642724427173681670132096:79575:35096 +58909877872518340389107106230:80368:32390 +14628105712894022316208320114:36166:412 +62960936072344762230306784586:84715:49886 +43371255623807465990660100083:280390:135263 +29855607657761834839460441942:926733:414824 +55036205498937315478974096984:430626:173250 +39257911943017904854419267181:634258:393295 +12724194864890359176600294802:614706:606472 +89611214190961441075177807831:4339067:2934160 +90533699368743550785484253903:2496534:1981253 +81572888560192305005496013189:6784665:183709 +47009314101267058709882251958:7801971:1659842 +61895504281101854742900804953:2074346:2064665 +16994678990706687529994492368:42192545:30966623 +72076997418939964879903146752:61444882:26350058 +65651638854251072185619632168:66574639:20578087 +12218566112169168776215986227:15153436:925603 +19099896001965929385187358958:65957065:913478 +67704196489022401108984082114:102044514:17215556 +17756897369813128257644926205:176850406:170041677 +36628592245316002218931257863:992111870:727182893 +45964753336886627087265922741:803554437:684708586 +88502111993389530771136586947:924362962:170968939 +64373137703067284302012701780:9872716538:2401736746 +69616568211434982651980737350:3195630614:1348483310 +27677703229040537545384512563:6493759551:2455321415 +11552052374477064450512126372:4087848133:1006464292 +43743425290628565498309660633:7429515550:2502469183 +74460156151150001348450762972:63615370704:11149724012 +12598157644121814964339786051:54732357167:40964338000 +52420918879457033706773930177:62251237220:56257643477 +70619382447207144987191479075:60654478890:12316826695 +29928926649782971497398921816:30144603085:14393151331 +30068306315129870402694166373:684632076860:33566469953 +81604484465221994725494534739:714363509956:543786680531 +43117132441042208078475370411:267259606599:24989975491 +73231507052277615640116541640:688828439542:30125337302 +92974077520286623327744052733:540813546080:422074205693 +14877758231462658991115151060:9054315094221:2296713607422 +21598493970301116477319303694:1759248206843:125499859728 +40678528520589378952464086973:8407369403426:7768849442745 +81777246133071755922011260385:8434002183348:2808076237013 +68531170150468852268814511414:9204075563017:3664787106994 +43033353536225331766767664935:58614655542051:6123576687009 +20294481150810463034850068087:80123063414186:6333909759387 +50797466820568412892593644131:88404518187967:57564943512200 +12053690832418027594512354287:27148913778459:5674959507344 +52863871965725922751840106143:43686277365213:38182434501844 +32791411660552324665594405950:334183171645137:7228560942329 +13514062983833810998184760585:914949553820705:160605591551230 +75620393424897694527460100460:558660386739107:307954784036372 +66866682824543888408999918366:165145401169649:32054107588779 +74146681059251802850890645087:580773620811791:71227676869833 +12495049083481353999734111142:6941771970639889:3232942923915426 +61681982027771292616672750542:7029215991672883:398507269426901 +26754813029324314567065302687:7704984396517851:388644722991518 +99246804032070450957374458589:2096890526360862:20975007802673 +60200896668438213012950240972:9360661442480701:6688690226283521 +17896432758108229703407355527:87006542965559903:6614366316910581 +49859397387290311088944214230:21454574464561593:2490260041505686 +67947667067292851812423598511:75098395661054086:38172872676663409 +94370566509710013196838857530:64556104110304330:37644253163747630 +71516297408423358663897812386:87118513322976969:69385773062080225 +98485270751040192118684336077:535957696143514523:383035236562907747 +15127272912143263322942706592:747618562360668407:734644807351666021 +89903429247275655637866477664:340481185565374591:79717383736711879 +73790460978191028921446914232:321627337545096315:148542172760633402 +49319080608373141826139178078:969979334320931682:640755023860122214 +42696838212570156952114134407:4819449667139396916:2187046862191920383 +17353093358724554028889851094:3585137977266626703:2109993781468324429 +13776470751124489509730566608:3244960764429715466:1935089750415267984 +46264185447786924908965102244:6956239870499846124:1014693040677679256 +65650968707379265310463386603:8586866174201244334:2639966434985147797 +57132820598193275992319474547:14204157221879665069:12020334544532339771 +43437715795804777569246844036:87586663950133851207:40588283223598861984 +75322258872073302094991535261:15477810815879617913:7578361766409548792 +92109313923225197998803505192:53612199707029144070:16035354212116799772 +35979276075361642499962533448:24950513375928755125:23241045569103193323 +79539957767531334594424548350:401118928094831069734:98300116750138141284 +84746342241070339579141465267:159297163193690477570:51103485868327859807 +55821085597153185886117515012:789274606050494615913:572001525302204678166 +72280987537909069223092750237:690555553082143211559:544580841361793627335 +22336151343217087153039143566:293448847571605402806:35252160599479258790 +82535557993131404214866263712:6383457269083556665345:2503331380871064886367 +80829014105646362902984623390:5137161811843577342299:880458820686062570467 +53298560461915920276738722076:5100045185198332411029:2749256301590376999531 +89210100685158100976955532657:6939427393671177801566:369867740559456153885 +20138088232280374544279179299:7131987545536759158829:1371063960817394008858 +88080379340502406840901434412:92880029323548334958039:18412277755640154057776 +28753457446915003268805444677:71228589593939523164004:42856812684437006637965 +91132153896709553827436255645:23170031483023244606302:17767997358374375292265 +45507679252378709924124525766:11760015417159924462556:6392672036030993885346 +26008468398557100220223345235:27129608170262909603339:18415538475619151932749 +94750855543014369515894888281:502059157798269498248078:243046693756728524615809 +45632637239474852356411236533:871861714194942858307111:266980225738095475353904 +83185436158803118451756170255:289376812391021742270520:20161630444331703408975 +15910409746094547317243531417:149171252958648333564278:102248031033355944768493 +26818227780473010350938739503:808487093929303749281446:710874838004987273175683 +47280099211741181223584910269:2553102678982768335313557:1743802338277190248461743 +55521135332781888581301845415:2510428247518722700323160:504210657817340954838855 +54739365459837093751402283145:8957780994451099754682387:7323583740874250292898575 +64723060449137780248894812768:2095558478492234340458874:1736840905122643822489278 +52771206382849646012180539538:3415885321716476924012287:2609932973510490038729962 +40494500082786253067362299267:44435595471795914384126383:13672607980175063423164354 +63876412861322080614395521059:42364700311041592898200179:32809492582400116807851306 +18909864840185455517096067041:88146377788042144727767283:46539993544436545353868479 +37160889607535564953947385635:47399000656192733706457062:73093080461728085049027 +90171162904185493729872265715:65135337519653899553029067:23855776984496748480036987 +54036056404491908992830872551:760517250822378160338233086:39331596103059608816323445 +84702674178472251512446222256:230160031483222113287114564:3782592646513822788062704 +71177869193733867935425797469:772456152418376097657228633:111903171243266950960763233 +36938589722153178852767816512:392530283863533367056988367:40743038981042349410910014 +67780352471057485430473083137:800915757009309826287147674:503428882275460022352678521 +14246354512735798602829197446:1344852722895236680352141997:797827283783431799307777476 +19125515680048851712379063156:1409558768623621596530044893:801251687941770957488479547 +99567325885778108065003972880:7976936707041928805762986053:3844085401274962395848140244 +97810415037062545528588006591:1927068281339632455292412541:1457000970080922763967379541 +25435517570186958675858626525:1604594966325904489591785947:1366593075298391331981837320 +36076438002557760961240721657:50293430733587362368884810297:36076438002557760961240721657 +35501882621854311729509863779:72917865438578251698400435306:35501882621854311729509863779 +96709312340554997254779019351:77155699991048875021155455148:19553612349506122233623564203 +76616116168585749116210157740:69305656397583976012117175519:7310459771001773104092982221 +84554923052101711049266493036:40127811120720607049528786375:4299300810660496950208920286 +33197978101140697849529151428:936584763039353789732412796767:33197978101140697849529151428 +63867655520333175708261147258:648581394263048940758239155241:63867655520333175708261147258 +80872454204966397533590244046:715874514085275922633380166729:80872454204966397533590244046 +28691255554292398921803034496:118724707815436030143152728608:28691255554292398921803034496 +88144882248362315559144338706:631948919174425114916472796808:88144882248362315559144338706 +521222286648666789549730589497:3:1 +322563827285169925711272293907:4:3 +510167023114106469355407987007:4:3 +301572874640126131099108280868:5:3 +934948033018688875280234703306:9:6 +454795080078295423448856959437:93:10 +460547335823218816678755115260:72:12 +268765955908354041375601382058:59:25 +835903792152043720844542739337:40:17 +796477171644920473825147639970:57:2 +994111365452205020909710812156:367:175 +218633668724412275091185004800:249:74 +937214040321201652459227698204:377:232 +586380814147160247910041960413:250:163 +863226719589703741792777341602:641:577 +370655224643117194546350077295:3687:3645 +996203326600639436133599750080:9355:6885 +455876068100866878908931013298:6316:4438 +309990975126371690209037481947:8299:157 +432637804024192745151016891319:1918:1259 +277126624191349997510055546309:71927:16438 +613350501103446996434332472597:12951:3971 +868434186514503197841385751576:69517:34657 +700628348275893369492098604148:78339:45058 +779667505911597675820187382049:65553:49822 +675901707361982913680796146507:520722:86345 +863624864288452787715627942791:630076:109979 +206538786621811260386009916476:110252:54604 +163427533837575143690054794757:528584:15325 +861946313996915125245022558066:440741:160711 +744268774683551119867719346585:7059500:5011085 +435012618012006953384273472118:3891587:2681125 +779598606842575086720249625095:4921517:4113921 +823863882934027511877848911977:8894829:3485991 +876728837625168703342956917395:7581344:6989491 +237890731924851138924639429940:83625154:67656382 +133558356923391986755888790544:78349558:20725968 +293771333117025503521635218788:86969595:4769473 +344010650775383274276837459710:26895885:18367850 +692834291126331992876933355704:16195676:893684 +187760334365098323452155577588:324131503:269963049 +861172461463426075520772993600:420435737:317880955 +761286038026340343676823271335:492502626:428657033 +666050332579112093576365262570:985470912:891022442 +811338200299094365323774021026:347552246:13481950 +301323871315530852260780303940:9298686394:9140911922 +874729204752739827343146033420:1767017632:1266680652 +814345469689557403752443970189:9075617933:7381889959 +224162857790817757430157625522:5626875074:752400080 +231779019384940441049688766745:1537566459:595780073 +800220167905507769235825281985:10613762485:2811833935 +741189544700966190738232451731:80514187356:32104536271 +488402489798534853320193467087:24829409218:562802085 +319998851664155670238947391288:53490419222:44189256444 +809320511046601849724292386729:66683057320:3754372729 +231947237431312118647171044527:195549543540:104856102047 +495039105438134403822578480726:214545926110:111274298226 +649478819554665008118301674996:701301654003:578723021139 +660128303803103874982747478412:369020337288:203488025436 +576737325747551330973684732034:919221585703:670786910707 +900649042600897300896554057308:1241667778881:257759983573 +290342221970710269731501929499:7116574688563:7060858037158 +162911901466789331246738066745:4232226305656:126844527641 +529173523661729212690629549378:8848395877673:6880291106833 +299936963528963792755665715090:3287910141643:2385436884252 +492414633480686141060371428619:75864966577487:2124098030331 +111130937115561972425969859338:98598714546299:83845484425213 +542277200269422938525605233797:18348248568630:15349456823747 +170286989513269766958993676298:16577167475373:2752800813785 +834013501179395745063551830555:67943705709900:15707524307455 +910554412246996958169431907599:956408301397684:22251820285259 +509134049675524682304912951427:204223869151502:154126065727513 +139601049538794967553138097298:440647496590428:283949118365362 +627354466054526431332065383583:207986743313481:139112919199067 +176222191960359487431968001978:380722835994242:40855000007262 +785754370940015379698971510438:1136702181014693:700626307797978 +238459974011712141936204083750:4975156084850440:1737179022386990 +594699126235881360770196160655:8630128468472823:2805982976037362 +826655978166828098047321181240:2068490615195479:1616052784820930 +980403665239410703866660442075:8295341568284123:2440357536320196 +677776451568147302983900698632:99979323487672708:74042758187743488 +628155110164346350375445003084:58289704390681089:39119005170990299 +528085198225127676215091179293:30056487154385468:7849885263309765 +657885608457404520222772670371:89643316261935470:59144440182717421 +866399376510018736580647229722:34091491910697159:8017372581258283 +623066686362836484116009213107:818330691851430913:681923756157110431 +658877310752211878217786391209:391291117885822692:1797661570371297 +940807227919041174635212642384:769898235815248075:79001440418243084 +751941122281392514313432732638:428530641519864303:162644495577660256 +619144851579634882755422495713:914589398256220348:776413826601772129 +214009675482418467048691000050:3015022375422686036:2803207965443565310 +479498178448616105869374000855:4060894696869515220:69681663695853075 +625088097415326341277156323129:4964617402894365091:2919773397922562 +865766972165511503622945745601:7670333595635761465:2623618818503106091 +909093695688857837448983046361:9416198876785204252:5046866203050055825 +551560088952840725608759552538:23070775922417468472:23014075105008491546 +999708740140880189282921472284:85941341700223633186:19383472439977090164 +966697956738379323879037937826:96233056705592599549:25378994637554280992 +494203444844984428786885338392:33305664587153214745:26077754693021293937 +983839316301254898766738029972:16311765123569602931:159488567999007762 +320618253346816381659617555738:186856637284279879028:18804038615692955946 +173899472534800412563681114177:591017860649341560012:152383495037674027129 +397429141121726521596372400291:376095800564061467803:167420707725655321826 +595509255274452445042241048205:809057092213494971782:203369348852891989907 +432819171746296176217367993422:537770905688407161196:82941707652027483114 +271923413652575240811642204539:4247887904887676077303:869779761035792041563 +874518294664820127911881429182:6219101133406169262229:3852678810073960226389 +241644179705352572188154529993:9055877989114548956400:2157142497147596108793 +136562678245650226696152598234:3655937550867888193536:741798019253689108186 +489486026429547884177732362741:3536926389587079657588:2822956468945332714517 +322521775002818142225412232078:68625936853720883992022:47815764981402802486546 +146132567461512650193294588310:85484916452278637677558:35092499123900842354978 +390608254738973636698149908894:23127677951464573970359:21876640687887649012145 +931600048294843172152775092916:32346248928851722417910:2599843323221908347036 +729880266636604431886439892487:99061953012949294395643:18979294105570777106856 +500244657950938929147702230764:902086507720607824081124:703873045345773931646680 +801986468174399077055854358964:854267161098078563647498:457335522921503583236564 +169844326982474015876379298800:816539911336174105393901:759264904457258026315196 +853876588643421056514429524417:999644733857564735943695:49876966410366044129317 +440072898232517367887450371410:999085728644631570330055:611907773276946319395285 +811090649808864216909185774888:1154235118961792031664397:397833461261922360687812 +855875284144917190329122275785:8761531960457253593231879:5034587650373074266175670 +640216976449598597299716821328:3156641470323207290406556:2736645997310695911166188 +525122661631246080501660090984:1268295454992611820159417:148037015067706495395138 +121396677700519061418928389494:1573886519551600932775885:1236560984529872991603559 +351024325359725946825107870588:67992161730072370270771068:48786509092371487387617572 +869982829495943499966882002102:87972332099578976571708608:24437363207000649255577590 +625855140661162992045958157916:82823291005077858075404217:42353826794696428203894264 +117353617772879953930110257578:55398071834995210931944510:20501626360097176251785398 +884115121173908145421867332312:90228022870984641453180185:60953084000628463607879682 +771777933300875593314995176502:575575947929901660501427354:506163074807368243082522142 +510261346341361299609415563732:767142929518309683191847246:111298211685360286837145142 +917943483601836525359894272080:913554267752499518822730827:734998778327008461872521772 +432185315419547014390877214718:975241127712396029508974269:153495842955573318401613551 +886412261528396175135299509825:111834765352982834911880331:9911340654225623736006319 +645626700156179004277967686091:7026092387067459254101251663:6252292933040212154753784758 +893703823882731156381862752388:1531984020579862979935736210:557139884671039079328541958 +663277653343003823897234713790:4603940049272424936173033635:310286247774633088317870350 +813117472867048573442238596447:1016368694889173749289230714:22516955709574010854025247 +818834688279976899139449387827:4938906024809131824451597753:3915194186470148104935758582 +456860645337837768691635846670:17408299833746400991160489875:4244849660431342921463109920 +581453337179287630738908348981:76575464917176182499411849984:45425082759054353243025399093 +632550900195131155843494376337:51402287271034681493248298509:15723452942714977924514794229 +490822489989098901863957275660:64278616997350805416182334095:40872171007643263950680936995 +425593877926077155999945635549:40658663184127425396935531534:19007246084802902030590320209 +135151720858656221261918302782:858971695386144920272409392956:135151720858656221261918302782 +884034612964348067460318523604:254388039227763108515071361634:120870495281058741915104438702 +126736140822877700927005145994:558571128832059659108888618101:126736140822877700927005145994 +173401062655261473135055812933:952267770667553995811334982359:173401062655261473135055812933 +254023621966817196327660146872:845689700864493128101393285038:254023621966817196327660146872 +735526589524426007695636891298:5725229214179023680457273255960:735526589524426007695636891298 +274969190132336846812528151039:4657792376462952393741335282100:274969190132336846812528151039 +300144930501080053310828327378:9798692759269376995100370795470:300144930501080053310828327378 +578468937513674148262398037021:4117578397356857279429819222687:578468937513674148262398037021 +198150783545073001946651087861:2097623593919160902434120712517:198150783545073001946651087861 +397851301706212399970748411323:7:1 +516952502986186490634357284627:8:3 +580404954471257984504983267610:4:2 +408513050063344320534915716441:5:1 +258338813066357177267410341714:8:2 +764940076846870097062234295159:42:41 +918753675653763358983836733909:65:9 +825184351992427117581317457138:65:43 +263447203353433481119854025354:15:4 +975587437290876825490346361346:24:10 +728330241322985898756505150649:903:299 +327232438016617888013900087637:678:45 +900469807633146889325680455211:191:79 +770676153930595382675337364377:591:219 +244592321952491577169669004341:312:277 +687809356456663740164991876273:8241:6795 +736085068046768611069320188122:2384:1146 +406452525812206248425225267788:6183:1195 +462564118974291461719002241263:6442:1983 +703995527154366300390422667015:4864:3847 +118889871835309810649773936875:62540:42155 +986951911550724608298690755034:70879:12570 +218404118430423479927940271614:41939:16019 +378109261500659618659102313532:71286:42438 +189631722995035657906480245302:30779:6148 +422169251686608527241072484725:244744:27061 +358217900717577033753328651679:180774:88121 +521823623739599010116501898303:623315:285058 +938154037575204754921389314229:259823:21560 +263893216347160129501705270533:967951:644056 +987016149020741540045450863050:7725527:2100651 +146573625078656118143515504098:1915651:1512335 +859392925096747233477745341353:1575544:110001 +845704371453758756767798216034:8682204:792014 +673331924078082796372932539854:6553625:2928729 +757996436139923142511517789097:48028361:2145556 +284339317897502198496971596528:57886543:6475492 +966823593537529528745458694166:54112024:8012846 +270989886568227826400330352567:81717303:10083708 +409666071897825582666074896266:35166152:12206610 +582194219950883217936530627526:115371656:95891158 +591001625748776624997257392402:817707148:242748562 +201074377255219958238661914898:187634240:140593618 +518380735878967500081817833370:383899132:181186818 +594560293274066762260296272638:228238173:211878712 +792538088019989384963958345845:5247839661:5178796733 +118520455617021889608856440872:6351897337:4807543453 +237740290248738548545984537457:5530046366:3444446011 +725902984252185325475964222359:2821120065:1100956034 +738127893874525805530554690862:8230719248:3792799102 +906367204902046030271926564035:89700831725:70232907410 +745577137160037497580818598478:49115523854:22733426846 +916888570120680356701535984049:27726355327:4980927919 +418835215963837704438496466224:25374035188:2744706824 +668515508995327252533881832745:64864228121:32591011973 +544972108901916445340186686226:291165590724:193616511158 +202026708817460168846941296890:566029671253:266552409774 +847658182819182129012622142203:561629591184:379802027371 +873825789348580654144043335087:509850727727:55477834583 +264442928436704005709135179062:219901067427:122171561394 +194806564234141340468869400865:2311017080738:1857225351837 +394986008589958510634392970436:5566045369964:4672916288220 +388433091545109878570796456613:4607694864885:3341731475683 +996607214245784002176017562124:2470606628691:572324157973 +337462791557804840523388904810:7943241024809:973992798924 +754103927686945592197287109697:41331007106201:37864522462919 +579831879888242660862535590438:15475034489897:3741251460808 +671707554369240066386015272178:82501950426500:29368782595178 +582901356312128251746646035303:23849835995601:10741698193638 +258469159157724884117421284427:88626633274232:20059176827579 +919825354833387845557238981381:358246167156511:249687286989568 +507286341452433751291758858126:799290741360640:692844466462606 +393412888078974784673593641395:561487154163293:238540376963216 +102412674928817445073614057925:914867958054980:618357306805465 +243498542637088999241453593275:383330265395666:110277630799015 +319305041894291699242650277608:3219973083367637:53858250516205 +148448754213352068453430848136:5322254617145480:3073883918421176 +326254666932591225261500922775:2978000194788275:2095195386293625 +617715122642852449345597976129:6097044008383253:3608780755940819 +866299595399991390522475977489:9671001666512860:5380388220219169 +255382080362400449088669022886:86453020051446279:4868451036645251 +279550783121895389205492161889:91550238194522847:20644364120944230 +127013750123714108129581339968:80232004466815746:10095725102110434 +737256789517569396767225351614:94059424042897568:77990494132320542 +332222566527434754233420161077:25614632662856977:3783317322212308 +929074013863070979340063051612:987419598228868187:942274003653100019 +597253753215212365103176717680:863545596342405061:50520289534562266 +975979465674698777089297622994:906559285740556430:196781080201479954 +112537137497573750059688459993:839347390661380121:105353204058121227 +298072824673178510524971600818:899528338990895576:382133080777835122 +670904334308773412890875374610:7309422730499565164:6565901204698279394 +199360704916218568511735500073:7940177542388791723:321008396353488696 +282081655177795514583644608420:5244694675092952832:2639054026392028324 +368220199906849561820631545410:8283071247464476953:2418773853118428928 +485642011511524381978806690087:3530748192738058875:3089043618157960587 +586064509700198070114531311271:20209571199993878124:436803763885121535 +975524391022636962474579993846:47987258581824405659:24282336183069436007 +948028873963127768951465770167:33325622502437093532:15001985299655614863 +287377354512444814914000927143:28321736402435458938:15387804056512025549 +513748565649168769700552042425:29325635940635293239:16757758235140866307 +853204714432834678629440814541:741757691956590623404:247242256860010358509 +254123286740094552399286944838:473869949921596159023:21441003707722816939 +870450402421271516815386632014:859442356373551686290:666923798795880620194 +914384959360416903906843258568:921224371648769876367:650001610377239227456 +370951896482293225359651440403:620578635657345784287:510309576069702528297 +286662669506573681288279551857:6194493264804524744420:5579322452818359301137 +300648649264624267049744232139:1334380770747117440234:1010545859114751091947 +778243893114485625431297277198:5224576967206869356225:4067850273287570464923 +911171386280473332288302050451:7687234321104286677545:4508366129948454917476 +266377634851354128590781456170:1335170211286158160544:989926899132291542346 +543176126617489188453995691900:80773055883382045194477:23030448164875837514937 +280222370050530447551517885524:44674640577444279005547:16908902545825039244819 +607030425275156739683351656738:28942315420751401606133:3276454730422434522939 +160016294648897696452121080559:14458687150280109410172:8657920986954648952823 +300436958713583324564886902834:24782125604222379062884:3555141270053886933030 +179637492836579869750214185621:347877490685802031462950:166318754730941344601671 +179046580649484313761546574006:726866189471718710798927:539661673730605290081804 +868466671015747311174410745224:984209404557546226918919:292434168520541156619624 +559306178044486519274744131409:911256677962341069900068:521784828591437899794777 +178839345417227624482950093412:840109533912228099026012:188276128155674688762900 +629807215031310655667339123891:3624804496318236134536962:1058600513445527676513353 +474887167003276893470631027984:1039653078643383912993117:671659023849997113003426 +710785679159955850940665576887:1316769571404905863058931:48363444690590769917742 +666733527393246863588791118381:6795944437609931065083818:3806452649356586612985855 +775704733694405015518600440600:2757118384757987405602988:504616284290901822178752 +736062962724438619067427648684:33119098410101378072306815:24119658345592788480992124 +442703884549054856036654864862:77813415275094242277906943:23365049043711717642266135 +594682617900297232730367722286:58777902839536330298034362:26574872708179105154081932 +428414907991639623154571211720:45202190348317485681606305:33750060634811349988259235 +601254753336430576227404341647:31508736534622389365284559:5042782766142359044386809 +706053761121132427697632060072:591336830316345239709621437:588922553732556724053685731 +926232630305129267414778115726:167853843239612559697415049:15123308947163004441875344 +597581668041047847827234718012:125317873779389418382059289:66045860919100981576028060 +250704834778474198483368332331:626119772099973796569935536:256925938484679855394117931 +577289682141046474660822902127:769712866007416797098612098:5032635483876836863828627 +574129307036918145630360055472:2468437902067935550971687405:1451713757157097804928577512 +390146570524827605582215300120:6421587975574763232130637686:4851291990341811654377038960 +952391780112950564936644145396:3661732369851070236287867324:341363951672303501798641156 +823817233247588268263563466195:5326711856683474062438078856:3503607318333262648099322371 +553880709427090200528125256193:8988213979971933265731723847:5599656648802271318490101526 +840447175703241029824848074896:88235735941053555227772273576:46325552233759032774897612712 +601619399972432153756861405052:37368057488339530678341115639:3730480158999662903403554828 +323863419693123667492620714043:41449267120067905261885974888:33718549852648330659418889827 +517985058497143715199938778836:89831114361602746337591863226:68829486689129983511979462706 +555363450621373971989797517231:24457193654145733515023683912:17305190230167834659276471167 +401257436821490428211006514615:721768077052710709777367573490:401257436821490428211006514615 +521210208343336673966362029616:748583316457995891526591775782:521210208343336673966362029616 +228757805515892530803441280601:425012691762945865016992616980:228757805515892530803441280601 +185199943982820008344377528301:629783735695100035883014567490:185199943982820008344377528301 +162556399546594769196005444809:789167695755492958130851339150:162556399546594769196005444809 +582989179730291632324643409660:9987483164724051583806902580833:582989179730291632324643409660 +393078529887139541974550512009:9575346256254654245887610868282:393078529887139541974550512009 +461291303677014710495226438716:8064075590779969753999868287441:461291303677014710495226438716 +948289927045014065400234178046:8227920271366331731697289686368:948289927045014065400234178046 +640308533337084371529403666078:7098683323602277999499449693913:640308533337084371529403666078 +513786103991420309404564071141:5:1 +931802503188162139579880068483:9:1 +572822633434767441385795113994:1:0 +608603586728435229830274206239:5:4 +223252990893459914363831578092:4:0 +103457662033150678203073807742:44:14 +323670164401104156792978793396:83:5 +299848857108809817704161771502:94:68 +175903258195968688842041246178:50:28 +479603131145717304792152688717:89:26 +837168714463734651288757568778:600:378 +433101766976723448755465041881:467:131 +359568414141448963615649104204:318:28 +358419276266869476754599774908:491:352 +209585251745402762008162367079:153:150 +128668947060230679478373338321:2093:2073 +312317353638441763472012073204:9707:3069 +509062974879994595354932005755:8873:3593 +575637043648043418770923017672:6160:2312 +341514012715268499298505717905:5638:667 +965529966944555846063093536943:99440:33743 +837019230719291606699972729888:83934:34124 +441846183662477634531198461706:59504:55978 +812507300998376935081922010063:65877:19815 +314626976098926086915110455562:66523:19363 +893515544989331776561146988087:593863:118562 +265087716132356042256135085258:120945:96898 +291714676161487730010667520321:909179:51321 +791778600510665648726233161567:696844:167571 +197244836191104582613189908299:450265:23419 +186056548578413734182697253977:2423417:1247953 +717525213460553259804446474321:2644267:1711437 +339976298574398520178688019219:4473461:2392840 +691096931392065104980957508919:1178439:493587 +936915116884749672202032419407:7662719:1133847 +402238506539043813122109284614:35289811:24825415 +516024306292735361488282128510:83378105:26286795 +412077223851131601149929809036:42620492:22787360 +997009376919280887335222133587:29099886:2123087 +309157057419490028891871432391:46289288:13387359 +569250021363624769347394989400:263870536:250029680 +803160496769372190620453388765:334266548:277105949 +132401243539874989731426230718:623635681:308775617 +815983735207130638695640785306:621730572:23180982 +217291595223288690034566751857:637295088:20755281 +985431598170419645555251678994:3728782622:1090259740 +908875347749896004550341729663:3519416300:2765240363 +635373691104530578184179808444:2614072633:1315870464 +772419818080927693522422343341:1350859126:241694597 +785855081178810904860216803847:6802068409:5804990938 +752971522913098732139997894605:19185347537:16520887504 +302670658677120211240047851570:14638076839:11025750363 +265534467914111246670407573232:71557011892:32794648160 +409666634828607237652675081430:53308483061:38557070183 +676620314048484408462675611266:56711855629:40688448700 +591723032754036950690163192624:323019299524:212787172048 +395540275407405921113378465281:356676238946:62430700183 +792209685684007859166771756863:622046967162:411273487613 +127096671574591889982144341194:919225946012:755853167398 +930538061099964388926667107982:170024723976:138733090318 +223731322463147181809345171089:7777949787826:7304061339877 +510568029537015293186766986322:1022175786417:529594873284 +484653877677758890689949166770:1327262338753:1171947501559 +800734561938713556830401276934:4734561729730:3206629160824 +564579770665196466204273519466:3359480779470:1656283162786 +506132433207339644362202032304:58642372235532:25238023953968 +925103182967785712902729481036:21426539965574:12441714106756 +964146650226785125879652016576:79130016583719:26918340026127 +247670702603195609614844227444:77284994031542:60107580989354 +359523660036560429996916684617:71878357145394:71275885345937 +579483867549044663979820291468:840990368299117:822496248038511 +369299210529050454657515616750:813545179561795:498806736555145 +742565138261849269982164523859:180999012366647:168361054373496 +585898822657693360100288221791:588119466111940:514916519381991 +248975850209745057106251860146:962446142153613:580105988819941 +825651946730574550448566703993:6653101993657155:856805570544863 +886040925265181972830025169196:6511181540576971:1921876812112715 +531910566269309517279702388648:9782743934147294:6338282413481804 +118227882441599057992592166555:7581284514089068:4012201892442375 +530643267177159484976918750554:8028146122062275:7710526379591404 +902662894449379930152720173336:52908441005215277:7986652634492454 +894441252234922931513340051104:51966749137794032:1770586528914288 +909375454349238136798834977130:53803099433828833:25222639048736865 +910117773331941916264406065622:50515849913977318:1997033217386686 +956395854510073582917722619517:20026336669185089:2351522946667283 +563578985386017697662138765854:687924455838931936:539377932123846622 +389831225790555384382571863254:968478672326651060:60452642075445534 +337600256094080185243234155120:675954263339653438:358763022127353418 +208677462545414734463931908300:420183561233326141:175102930076753508 +969413598597957044642429728518:893302176813767125:434650994039515643 +431048491682497939994412009411:3684067973083494913:3228742252137756347 +307653846096526434304322981266:5684090831398701916:554905120930525754 +322093893891334412177675282301:2243590659676995404:1207618754957775381 +661807211835422816154121865261:6704208352038075358:5269165494865156411 +522850063164093223657095302175:4916389775916105288:2446912919012304063 +234869495250633758056328683724:13811425835978675240:10426978307192765964 +319949701413440066424194337205:38603816817220260660:37389535829635305445 +311108207762374612195363900412:17376577642161027972:16563881084062155872 +363997556367271697130395470420:51092013719839813232:23053703138971857748 +717058845657081073934343573094:97860786532652524343:3749711496330425921 +527623140240797732840039695151:113244413145704118999:26087757070410149972 +430914196557190557423820145522:648162067368968047197:492216005046661570226 +430527964489574484146266932795:615826893063016728278:196269001193211973463 +490418540143855893003467959228:247642287312873145916:12907249095613959512 +196463198959509898844762405428:502351305595618703545:282588878496883847458 +733621979526760346052794235224:1979019247461594283011:1646193508968895910765 +342940215658126896694002904426:4978545682839409663636:1538596260275640507558 +261508607612832645823925126589:1887989249560638948558:1410496543291027152315 +999577240342236390222477321366:2050235791466749932666:1163138309702669133750 +515904379048655919644900833506:3701007822995620656511:2711127723059605882400 +491677208589353921964172716069:91514866400680713613114:44651469487332103010197 +319637450726269980005751526642:94719269186479221471274:78192037674730105596818 +406797187550025655222401679760:67416628567793650370515:59691559048775635640105 +997579228635736960752788425755:14351390846545439529128:880724691097802129443 +507924216499462869970208374892:44951725687828119122304:13690118720040461607788 +533164814023009174811804582706:157504408727350608402696:105137046632021223212418 +221419193562788396622430369731:635375329024280567318053:422027761983120598670026 +263391836649933545922352387152:860947993894191190140484:294981895846740293836064 +484744237905763232781960893321:587902792283418429378044:160681523951788452895957 +779866152260266570359879511658:458326318615561504650225:88167320660999279862458 +191191996494404799745825692148:2238625266087528941709740:2205644199390479105347448 +729849503185136284373819070631:1111514212988032653134207:371567656355476917265049 +718244930026229852060077967944:6449433080788064779414547:3814984267017900576941289 +256460611282598808254119114736:9944865652310715437549855:2415840810078550583453996 +909095335777132787325969347267:2144109110896646576834216:1649193398225334569100131 +847922622448402693778856206105:60594476976350293913804675:24106118333031042987388830 +324989002226764445678572224661:21224445366760420238880987:294770928890980826551717 +202203861206322940072751576069:65179780808911792393884332:16181137078560066922378205 +675938456372732808443761780434:15329828183350156474944986:342284274358994012512736 +492527667251857469627483312511:20615190901725236919280186:10141418739834388960388785 +934843313021334594204213568570:244267655431350939771184535:30995685554547699890353125 +303269997821316700471631661572:935316454123096604225153168:227466685433400702682035140 +644725843851681898835234483127:694380873226574457878677022:340393497420801923822206711 +648211276252781093682215466147:671595858394543755781233613:121272902046369353325029602 +304017155989558209334363299795:326860016846270049218868552:37340322527063560815546435 +282780218232709650414880302944:9821973367388250672359318623:7764963945838631588819381500 +468131787008156090706267620953:3101030556157618789614854599:2977203584513272264039431103 +639723463577225740391227366110:2853764045864759428228097473:480317303519628468133532158 +707982104505459684584312350760:1395155341745646117048855052:638346240417103240542839396 +189955294463711181758864396664:6684509434962072582114659164:2789030284773149459653940072 +873572442534950328094128861789:88544731381929342062647384856:76669860097586249530302398085 +158836512023441442503961926997:37811395200007111318614138283:7590931223412997229505373865 +730471463183272431916681117779:50927724979780098211239915850:17483313466351056959322295879 +303532681392069316521240901478:45687322917425692039110482667:29408743887515164286578005476 +308633266798316311115801124517:68434567736485718290237849725:34894995852373437954849725617 +168535717607898356747762530974:764741459549709639297319103189:168535717607898356747762530974 +246532717657610665155453719619:260264375007297923420445158545:246532717657610665155453719619 +249954539265936003220122310762:616425567451378668656438139838:249954539265936003220122310762 +805667540447825558359186884425:605595356903064775855425443149:200072183544760782503761441276 +745972566149381052281783554293:251218667320758747059034754943:243535231507863558163714044407 +924242181954124747157747912030:5538028354902302490201881400950:924242181954124747157747912030 +135597674003736134013169381469:7526925606962691165968350511114:135597674003736134013169381469 +320013518589237151456662894495:9630609327326541696746772664243:320013518589237151456662894495 +573720554810773173695686256061:1746843947413696131434732484891:573720554810773173695686256061 +323550545090546403345279722962:1964984432581751108891864041503:323550545090546403345279722962 +539591897002983108166159383966:6:0 +618613254212863118633688756454:1:0 +480823271862049841296456376188:4:0 +756657956414782288904434613052:5:2 +914937845013370285725751211237:7:5 +462086882370187687538426428677:93:78 +298002211112562862354151372148:62:18 +744162729348433244944668726056:40:16 +378300212740156384025191333922:92:82 +849369837263370348525640998778:46:2 +574314124020821804998627496556:899:124 +635973353218570733452349410990:841:591 +937258540785454655877503536087:164:135 +357133653080493272886609828290:779:737 +614372121749532623678923213257:403:298 +687001216059399576973869139739:9168:3995 +910119660093229025390304196226:2504:1290 +218259112253393026773063405233:5640:4433 +343464411302154872083558930887:3839:2922 +522289341140255857520660597654:3729:464 +573697094433953328602524453457:11842:1417 +294605422304566197236085879072:62923:17955 +955704639906946728404426192643:21663:15237 +347220376886092247524562166993:30087:14394 +769168767987414406318994603950:25365:6415 +545486456394390868029037896739:219721:202514 +336189803983462586556645121510:708077:117110 +623414275894624206781036589887:719574:18649 +697896095844665305043549317050:351847:33629 +689895465657278951154571404785:610832:119857 +708891500978971171046566259309:3314641:301831 +322752238436455391459987169813:5811014:2294719 +964139671192347201929392622040:1409353:1335625 +392898949250251890320109304021:3586374:1933741 +632483928599355747646211124034:5670781:2084965 +164953161098100816461585223149:76359515:7468644 +971132950036111799078065903838:74863361:10599816 +430445927712716554625576766215:30722308:28091287 +911502420609170505140584741549:49229525:25314149 +143257339357319926530631447681:32384779:9725012 +471406819026661589344643504099:344086942:74544441 +373119161423289073015740260638:720980739:564752452 +748961276715625933420117181068:402215820:231588208 +904989464381917754208955702198:902843826:607254604 +543587647184684029501285825277:187165995:20863067 +292058077754274432335828510870:9099259675:2549690695 +313802859816378170102662571973:2359574630:1993270863 +384366860705778201111272338020:2687080759:854774366 +736560182428080638085479934835:1388682584:1362822251 +728102411322822220792634251689:7165858142:5555212683 +285218925026656402001134508375:97997324539:71130710483 +537168076630235563598400673130:26207410158:12524487602 +353779036584990895375366267447:51026848782:570246271 +761512902926038809152151952377:10185916529:7926863741 +537112736383246605285276243202:99414683626:57640274614 +799397120203169488956149601688:483482589033:198687092323 +978851868231793715938009806244:676977977039:123083226845 +866207813754873192908773404330:958539726903:12060984450 +810523821924400856894674737693:452948826013:396074460234 +334023203727473476124095120950:524383831467:88613323602 +156344379596291326063582290656:9922348874556:4922950989908 +871703515484439177440756026779:6600764496302:5546194871955 +846944217910245750530298203431:2840254594708:2434737731431 +391320689757968425262407474082:8790012246982:5487050303402 +493009564435653982734464485729:6261205111567:18605894487 +297901692143933216523884082317:62586742300403:44827480877693 +251826205132968042167751034574:82027416076243:61900453345936 +397238512217927792642671365467:33852426134812:20405773672287 +154685635671958603629830868669:41638484409022:3064857268281 +433541919865418187695927020066:72030662091705:5189740625401 +792171339886554596512589873127:420683493766420:64136279767567 +365513147672080660662132670954:155213663846748:47854947937114 +266282632933339661520626205748:503146574964901:446321467085718 +745495611991489153866179437499:786305220482734:137904495366731 +552483445960594520149198998479:743717141737285:45115899890479 +530971880134803007135332419214:5739357466691368:37264072810454 +752203328745258397459329484630:7009910849931637:4027472128350146 +647393777595805475919350607689:5251561594154889:1018928241192311 +740412126087370804717766235099:3479277376353604:2307062825258871 +738049636050663978618977885133:3196508059142848:250685390727117 +625811441762068598693743581358:58005183672264187:35772860387854108 +376168029082847718750627414964:50003026461005026:36511590691187144 +554199769181487036630224372518:19215150223466006:7369616525937760 +327979193047722848345225039725:81885339070108356:59381062932385933 +556486323176151286694814634201:57268768756786337:47314765298406431 +934909040613874911670098463847:269628356324062270:57313592339638057 +201395291444066006773827677901:254706711509346091:51866867909443801 +519521978739119110839329350679:872482830058845723:34969713896062835 +646712967698856358962557297984:905070231954270895:772762811261212739 +441020571729021895897713225133:647868895908038949:239920960476434590 +640828586440261224179725845294:9074107818609298596:7095950879548513194 +386691531729195949672710464249:3594041448311255885:904459847487147644 +449546901310047547100669079533:2915928824106315543:593372019891506405 +569394967473376386022965575540:4067100786245702457:1259991227693507999 +439603620924740245957889678170:3814395515375213810:3568058207691239600 +145561067156246102319815970815:46921762994259520376:29003153961011374095 +120766059133122192858285253925:33199692211920605396:15659275652526746821 +345029063245819170420188647148:34618723513368577294:34439959709465559610 +891911281844943642611295223448:15955520153675525590:9301304051736628428 +785050056716506397110790767178:45817100939669555925:11019435669136047203 +715975183759303019958216466784:239337860986772134648:194898864560206323328 +137677177222198509527445688272:991869858743947989016:64651851819811354280 +309136074006374638310597716890:932831583287249931182:718221131360564702458 +553845693692234324989263013692:381475576407235247437:43093611427724353625 +746566514995097820995113087844:717056304539502740752:607302779299390902020 +519764782971828516749300828516:8077103438020232558219:2433575409676512798449 +963167222985368959269688552112:5189657106529043004683:5163860872069151657750 +419573725536633406550488474877:6439248488712003708430:1792600233177628665587 +866400562657613162705425610859:1947803900977465831188:1405216236132994026771 +853405445410810481769093342561:6481518205873312412204:4445585590522350104073 +652715632845311857167012119339:26168267851173701178842:4468129205189132536499 +720816064017751570821525177869:63070739128997728354980:12300088264752792091709 +299547062007315525782088306007:53132918629981513861816:31710417784935439137335 +599454514650304110555272370220:93491690628969952355361:5074324379485455653092 +568529308921525320792157094544:78505432938279937502158:29071466458595904052764 +296404839736378340704030342772:703095570395980066521412:137028974628080532164520 +709580209038101784837763335046:608889431579918813561891:558826106536833583106049 +372442636290910256712725836052:885064798112704223119552:288726699417990233398036 +315423374508370057422827896288:435365538441531795670384:171176403388396043347520 +904020897016172604351054350155:944672519358557045687359:470183172344010759470002 +300326691260073894541004299187:6298722658009307253519792:3594926190124693180616627 +741146064726822568159211131475:4052791550087241050692962:3968379268622736887784611 +793274048664957844608976629233:1103565195368545692403158:486408576881630199370409 +273785668356741166883557897561:4731213584676364107711956:4531852274005062590139709 +326279453986144044375721959316:6405156203493772283668295:796980171284245659012016 +780494308670581471159492955456:10540431209181416130237052:6998924325150963829966012 +470931520305312610579118058057:58701053219023186105943901:31671382308611637236084235 +507471879945060669358605149606:10887070976045053782408401:3727609648622452984762194 +271531210634205569181620144933:65208310640392738571844287:3805127610205768460533865 +695289933607309355908566353664:54965611271438764374105991:29916634880425340499673505 +721787759014320592752510579358:576920181881752929042720787:60611480247678520066874821 +651342023240210010701253123968:190229522351528646364844830:186368230927454194389270878 +392641477859194167460012848103:178526710202329524039980896:61242124271544096094857799 +705251459625959038523701282032:756992806501810717347304591:491156772773260673360707811 +230440429292278136929303269956:195578484216442115450811157:48974885309324928247727010 +176129833170471278234589635662:9374579765240422755281018695:7387397396143668639531299152 +360670407514093085282116215780:5829496131841896129964522835:5071143471737421354280322845 +892285046716540434718313537823:8634022442099768508420156954:2980735180264278351037371561 +341459805302864582248625856126:4277361560595478744429871402:3548242015821761438666015368 +911064209758811947219993067441:2135232748841754237205343380:1455058752224642170516787561 +861010449065078558070290902053:50336259476542716913173822835:5294037963852370546335913858 +112765283744466886018467186074:21797597426268771028275500612:3777296613123030877089683014 +728332158232752177394639454323:33485124845476062784297229431:25144536477754858924397636272 +364430664928563939474651569105:71898677398588970648695969329:4937277935619086231171722460 +887940995943437209049644235049:56827619145907662036654568111:35526708754822278499825713384 +703867576790276676712078143188:876571231131869929343486715234:703867576790276676712078143188 +366996480672479009441314659304:975190210993045834692087169021:366996480672479009441314659304 +755140636443960181484281867336:210379518790569423415686953799:124002080072251911237221005939 +479225903904308672648735793302:740619697221126586590953106626:479225903904308672648735793302 +133105395906790705565697874391:920252509703423163971858194425:133105395906790705565697874391 +646268439477034234360857238562:2877602480699594201313785367630:646268439477034234360857238562 +771651790943801178164750987090:5673896116835162319902760895865:771651790943801178164750987090 +184516835767428486099364919814:1090140078535092955720226367400:184516835767428486099364919814 +769092575828083557037863527371:5251884348333417332821947081284:769092575828083557037863527371 +391274654348387342226073283735:4211334374787639237775963885465:391274654348387342226073283735 +393124884634437708947592512676:8:4 +861511485484310551648662921207:4:3 +888859767763587972791407967084:1:0 +712623378724905849457139342004:5:4 +758051222300042033946076469695:5:0 +129105437835239086603063260244:12:4 +527840455006419720789238861537:72:1 +255206270616008471749837839202:29:18 +669029672410819249759424725007:30:17 +750099064420355864554985616352:93:4 +861719603395912271362542706849:504:361 +655285898398832123460145016923:435:58 +576034491520931168982596156200:312:280 +787977419300451779022786359669:214:151 +114755727208820020655948580453:985:128 +175896410481687888794543522135:4419:23 +624766044951759772700671863895:1259:1069 +607656888887012503882724250832:7702:1778 +850072793774671294431187805937:4721:2800 +617555575480080202822176810073:9440:3353 +546931449665050845444319927144:44298:43174 +453762376798006900949467310590:25716:7894 +955633311711134379061999656873:30920:14673 +459339587831829433766326819466:70729:23392 +978661518018485217074579191965:51984:26205 +116286358287067441332865451003:184117:119884 +216446053350980727313915510343:278548:209583 +147526247020665377427920495270:707098:193612 +902111764672629047258827951600:600518:71962 +508179794680833393807043784550:653775:120375 +407588851049835066598883219356:3115776:560284 +928691361293127386483004834725:3686948:3245041 +844333458859028432556494530903:8999606:1539065 +735016782350561247578927867589:3729014:927165 +278119794971579486884774007339:9856261:1291123 +931989021912916998357286116785:57661148:5942589 +160254587948712205698643251109:96170966:40828765 +763230518950418054895973283500:84573908:12706892 +648064575749552177036985652272:34706615:34406037 +327731971147533848217908349662:53997685:24084112 +875766655423553192259252160105:726255325:166724955 +819607468080303423921626388077:230832523:109740624 +742096810737160329833193060685:114372444:108079249 +663180628035142125568752485553:503336307:405018933 +259510490917183201876887090007:951398684:79927299 +868480584996364631832954146906:9356548852:6183224842 +824811789099189411331040578683:2742456773:849145589 +213667865722580109867627729741:7497800658:3320356509 +769434139402479042163628368814:1338057818:959062098 +892877521779904441406629490354:4380193590:260429804 +435514970242328292331627237882:72484164321:14675993497 +685697338055176069053398425963:84247125206:74210527435 +732298960199144075883607898665:14249959344:13959010105 +622751643682115972796626502997:44280319289:11269180980 +943613505592062877205017208774:15878233033:1507818937 +819569301516781504577273319334:996207096923:757419494093 +457611895202132729907496495839:183149081406:142002450381 +904214707308169789644127663468:962526547913:369288179241 +953379518616909549856422425971:883453430680:361178304091 +561730394236538471052852063622:946219382873:80588550519 +865135992981820556619227946134:5847149937699:3549063456452 +532791633781603592624048819747:2377947012307:713200176236 +671974998368936888346414165397:9098617198410:8817043446847 +974143349520718155553324225667:9460169745267:9097246071698 +935997843402602555986719645285:3904696022286:1335149292729 +757000111006467541918426877122:36424722126668:18934492188946 +202019188119061222051136147672:96785471811657:48051260602421 +261644894759150793767524760071:24549841096140:21938288201731 +308947004377456030277204936949:53600595409433:38846347978111 +490215631437912423786169153524:27348953389415:20517234878994 +992891170581055001461303208769:456531224081919:132429160779126 +827878046316257612863642856619:915103462149288:778309343565627 +188141971439379764338791192250:299845957676496:222816294421114 +909128937487700724237784822885:350890534099376:261710050427077 +548161740575700960701461554479:351388059878345:2707147301959 +632998694230665905138504205683:5161072802940521:2588347830782501 +989561692601046469598855142942:2232461133506966:800488232300056 +722053711025302072889977536284:2124695213168155:177879206766534 +708237626455796647916490236597:2989633217023029:2776331030111636 +919565831354339875766768525110:4319491685768972:723242898434602 +325278817806092967446414416368:92669652852428483:6354046454480721 +459816556856225120612249776522:86480843071405841:46352919177657032 +539440404994862027098092700017:77829857460058719:76232415542640276 +697167612903549717728747993403:15286421157619982:212197563140615 +446284254429799510431939511411:66563026564862489:33170730867036812 +163835371931001405435062481399:142858955724040480:42016056245340439 +858056310925287122556316700472:785475211157290905:7484294396715957 +973368039062172637570360904090:309489191383966491:255885951881772089 +838603203086870598652949581642:945022841833171234:709675065436787072 +864854054235517666864794850987:894535073959076427:788600125053757507 +908181926596215654078730450422:7480691298078708060:6817313236254561462 +878585448012845939591562038180:9024464082667300510:3200386596806404870 +863285243671620222431180190583:6334804583861219901:1404905943287567524 +532289648478311197982547999476:6514152818886410403:4785654949668722159 +936581630344293971405448111843:3644906914919264384:2012511025417779555 +861268614532541530377947003973:83360254369610672501:47935551361396925840 +913251555004453135126628501593:51916019920885909474:34306359106857301815 +370772657003637413536988017577:23718525199937869298:23011340506486077351 +106380650712081685662103538437:88758404975504716146:58350945108402656485 +412202159454357528824112094318:99771876158978364649:77925527245286863526 +525693533744031087982194236192:929651991880007373453:651491454290177311547 +492896770139865143918926887845:607107080574194970237:92258786098921295690 +850560996955519073671742572564:155204374797661396533:64805602001216556136 +650537628763037728120700672438:261683116209073537369:207056126010611431773 +135007871776845734937116906155:149470779306630991831:18953644674917184194 +123420898749517385682938217691:6892915053083751940246:1268147751661917791579 +898934363863020709522521442917:4433406846739055003876:2306481316135324004505 +879378757066167800152936033840:8585429702570499522346:4928832661749043540398 +534894780765796405153824995392:5292171080963015558055:3970481244847974595027 +118249439981105247505658196107:1044988953297174048601:35034546582469264552 +514638882743390015829141263539:42260502990431699776014:28199588613520992150703 +533772849242066009586852457831:81711181158494925045169:32973335530889263991654 +852649448271116059664215755215:11558324639655263399106:11339267514983389303157 +925238622640185091244112955022:41171420023459496666827:11394443646548466476823 +705359047543020111986074662093:76546405838233178398486:69035333240244668252639 +192862926094082601067554524864:983139152622229345807900:518524179870300418781864 +558112242655536384676132132313:191729197440154429346381:52659093250114577824173 +157786667897919109025169585397:750869103799808919062577:536163634862391197779771 +355950229834035488164012632789:244679971129724930061003:84393299108358328030515 +256559814382822804907183116051:596317269299605239563124:272439360646637544646291 +141165203929235726945465524307:7112263234433476557462943:1003252200084232941031643 +568829542857828576664808467473:7152431953645315287895206:3782016370297133790629499 +459307495911616425082102673594:2821342682323452246985883:1371257405369629541878843 +830628974127930153300702331991:2585022873925650318657958:1669209518415958571293557 +633425881982689184978215783450:3839274700551585185469318:3145512185903153560353220 +672474018829929490938418825081:55321374733528776636985950:42708943887210915854602831 +654212123114222963030509355083:64566129630746967693683386:28097695494686358109288131 +412266659539667669402745530917:56196056311902344165262158:12390435552072606382339829 +473574458752013181427973201748:13798691979164630832062545:3350027083051271586657348 +369483620392312398087935720894:64798995024802675343506453:64549755912345954605432341 +860845108124330254357390604920:445618049180252372394296292:356655157262923264004465068 +893361484768327580404801876688:305997169911274590963503181:155745797317049382336091349 +471803761500813962827351327487:171685879755787424163760757:10963931910121225336767251 +524198073805891909010758250591:755873622027844368963073528:377653740595761319348295687 +123437798661954753824730473275:647551310342858114623388071:403049696811712046286739785 +511648855626624903623657438999:4942236375186776598223330491:2598508982386914006654398426 +802468626571942617779470129787:6177740160848197163161876231:5540145822525183731588095988 +654221655842560446016409557155:8310516044126063420518328319:6001404400727499215979948273 +446105608895309780467306840933:6707603947832565944203539520:3403748338360428149873232613 +890051387528125829503538395450:7851654645850450642530999638:2814412547024906897535436356 +265690770990649433995320560172:96521164892188392001777314173:72648441206272649991765931826 +872665844509237280758871946254:76167477244146070718198351508:34823594823630502858690079666 +246505747602343448837411047959:71921669896971649624826156475:30740737911428499962932578534 +433350079490916815831690868030:39073821517273115171950762495:3538042800912548940232480585 +729454826302110619053479741853:84742904878411756679550978218:51511587274816565617071916109 +630765754003890749602147027763:641195642117925548927555175170:630765754003890749602147027763 +736237624520104902876246198514:208386353866941734323922778446:111078562919279699904477863176 +765742040607488295039699674160:983900869487334611012724091021:765742040607488295039699674160 +423047434489268687849189102681:566585970938578790979628224121:423047434489268687849189102681 +308980252917253495855408503187:672259773721849879124362446861:308980252917253495855408503187 +206950206126239749116047352241:6484198474438162257010045734295:206950206126239749116047352241 +446943082680765739861120826359:9355295435647246746728568985992:446943082680765739861120826359 +672339146657620895716620422300:6552886003247436897021916637927:672339146657620895716620422300 +429546203091033258121346585579:2437873763135424337895305255068:429546203091033258121346585579 +799087100494522910913254814333:8788325478515322259159918974653:799087100494522910913254814333 diff --git a/t/author-lib-arithmetic-binary-_mod.t b/t/author-lib-arithmetic-binary-_mod.t new file mode 100644 index 0000000..b34e230 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_mod.t @@ -0,0 +1,172 @@ +#!perl + +BEGIN { + unless ($ENV{AUTHOR_TESTING}) { + require Test::More; + Test::More::plan(skip_all => + 'these tests are for testing by the author'); + } +} + +use strict; +use warnings; + +use Test::More tests => 51401; + +############################################################################### +# Read and load configuration file and backend library. + +use Config::Tiny (); + +my $config_file = 't/author-lib.ini'; +my $config = Config::Tiny -> read('t/author-lib.ini') + or die Config::Tiny -> errstr(); + +# Read the library to test. + +our $LIB = $config->{_}->{lib}; + +die "No library defined in file '$config_file'" + unless defined $LIB; +die "Invalid library name '$LIB' in file '$config_file'" + unless $LIB =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Read the reference type(s) the library uses. + +our $REF = $config->{_}->{ref}; + +die "No reference type defined in file '$config_file'" + unless defined $REF; +die "Invalid reference type '$REF' in file '$config_file'" + unless $REF =~ /^[A-Za-z]\w*(::\w+)*\z/; + +# Load the library. + +eval "require $LIB"; +die $@ if $@; + +############################################################################### + +my $scalar_util_ok = eval { require Scalar::Util; }; +Scalar::Util -> import('refaddr') if $scalar_util_ok; + +diag "Skipping some tests since Scalar::Util is not installed." + unless $scalar_util_ok; + +can_ok($LIB, '_mod'); + +my @data; + +# Small numbers. + +for (my $x = 0; $x <= 24 ; ++ $x) { + for (my $y = 1; $y <= 24 ; ++ $y) { + push @data, [ $x, $y, $x % $y ]; + } +} + +# Add data in data file. + +(my $datafile = $0) =~ s/\.t/.dat/; +open DATAFILE, $datafile or die "$datafile: can't open file for reading: $!"; +while () { + s/\s+\z//; + next if /^#/ || ! /\S/; + push @data, [ split /:/ ]; +} +close DATAFILE or die "$datafile: can't close file after reading: $!"; + +# List context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($x, $y, @got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\@got = $LIB->_mod(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_mod() in list context: $test", sub { + plan tests => $scalar_util_ok ? 9 : 8; + + cmp_ok(scalar @got, '==', 1, + "'$test' gives one output arg"); + + is(ref($got[0]), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got[0]), 0, + "'$test' output is valid"); + + is($LIB->_str($got[0]), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got[0]), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + ok($LIB->_str($x) eq $out0 || $LIB->_str($x) eq $in0, + "'$test' first input arg has the correct value"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} + +# Scalar context. + +for (my $i = 0 ; $i <= $#data ; ++ $i) { + my ($in0, $in1, $out0) = @{ $data[$i] }; + + my ($x, $y, $got); + + my $test = qq|\$x = $LIB->_new("$in0"); | + . qq|\$y = $LIB->_new("$in1"); | + . qq|\$got = $LIB->_mod(\$x, \$y);|; + + diag("\n$test\n\n") if $ENV{AUTHOR_DEBUGGING}; + + eval $test; + is($@, "", "'$test' gives emtpy \$\@"); + + subtest "_mod() in scalar context: $test", sub { + plan tests => $scalar_util_ok ? 8 : 7; + + is(ref($got), $REF, + "'$test' output arg is a $REF"); + + is($LIB->_check($got), 0, + "'$test' output is valid"); + + is($LIB->_str($got), $out0, + "'$test' output arg has the right value"); + + isnt(refaddr($got), refaddr($y), + "'$test' output arg is not the second input arg") + if $scalar_util_ok; + + is(ref($x), $REF, + "'$test' first input arg is still a $REF"); + + ok($LIB->_str($x) eq $out0 || $LIB->_str($x) eq $in0, + "'$test' first input arg has the correct value"); + + is(ref($y), $REF, + "'$test' second input arg is still a $REF"); + + is($LIB->_str($y), $in1, + "'$test' second input arg is unmodified"); + }; +} diff --git a/t/author-lib-arithmetic-binary-_modinv.dat b/t/author-lib-arithmetic-binary-_modinv.dat new file mode 100644 index 0000000..7c16d43 --- /dev/null +++ b/t/author-lib-arithmetic-binary-_modinv.dat @@ -0,0 +1,7312 @@ +#1:0:undef:undef:undef:undef +1:1:0:+:0:- +1:2:1:+:1:- +1:3:1:+:2:- +1:4:1:+:3:- +1:5:1:+:4:- +1:6:1:+:5:- +1:7:1:+:6:- +1:8:1:+:7:- +1:9:1:+:8:- +1:10:1:+:9:- +1:11:1:+:10:- +1:12:1:+:11:- +1:13:1:+:12:- +1:14:1:+:13:- +1:15:1:+:14:- +1:16:1:+:15:- +1:17:1:+:16:- +1:18:1:+:17:- +1:19:1:+:18:- +1:20:1:+:19:- +1:21:1:+:20:- +1:22:1:+:21:- +1:23:1:+:22:- +1:24:1:+:23:- +1:25:1:+:24:- +1:26:1:+:25:- +1:27:1:+:26:- +1:28:1:+:27:- +1:29:1:+:28:- +1:30:1:+:29:- +1:31:1:+:30:- +1:32:1:+:31:- +1:33:1:+:32:- +1:34:1:+:33:- +1:35:1:+:34:- +1:36:1:+:35:- +1:37:1:+:36:- +1:38:1:+:37:- +1:39:1:+:38:- +1:40:1:+:39:- +1:41:1:+:40:- +1:42:1:+:41:- +1:43:1:+:42:- +1:44:1:+:43:- +1:45:1:+:44:- +1:46:1:+:45:- +1:47:1:+:46:- +1:48:1:+:47:- +1:49:1:+:48:- +1:50:1:+:49:- +#2:0:undef:undef:undef:undef +2:1:0:+:0:- +2:2:undef:undef:undef:undef +2:3:2:+:1:- +2:4:undef:undef:undef:undef +2:5:3:+:2:- +2:6:undef:undef:undef:undef +2:7:4:+:3:- +2:8:undef:undef:undef:undef +2:9:5:+:4:- +2:10:undef:undef:undef:undef +2:11:6:+:5:- +2:12:undef:undef:undef:undef +2:13:7:+:6:- +2:14:undef:undef:undef:undef +2:15:8:+:7:- +2:16:undef:undef:undef:undef +2:17:9:+:8:- +2:18:undef:undef:undef:undef +2:19:10:+:9:- +2:20:undef:undef:undef:undef +2:21:11:+:10:- +2:22:undef:undef:undef:undef +2:23:12:+:11:- +2:24:undef:undef:undef:undef +2:25:13:+:12:- +2:26:undef:undef:undef:undef +2:27:14:+:13:- +2:28:undef:undef:undef:undef +2:29:15:+:14:- +2:30:undef:undef:undef:undef +2:31:16:+:15:- +2:32:undef:undef:undef:undef +2:33:17:+:16:- +2:34:undef:undef:undef:undef +2:35:18:+:17:- +2:36:undef:undef:undef:undef +2:37:19:+:18:- +2:38:undef:undef:undef:undef +2:39:20:+:19:- +2:40:undef:undef:undef:undef +2:41:21:+:20:- +2:42:undef:undef:undef:undef +2:43:22:+:21:- +2:44:undef:undef:undef:undef +2:45:23:+:22:- +2:46:undef:undef:undef:undef +2:47:24:+:23:- +2:48:undef:undef:undef:undef +2:49:25:+:24:- +2:50:undef:undef:undef:undef +#3:0:undef:undef:undef:undef +3:1:0:+:0:- +3:2:1:+:1:- +3:3:undef:undef:undef:undef +3:4:3:+:1:- +3:5:2:+:3:- +3:6:undef:undef:undef:undef +3:7:5:+:2:- +3:8:3:+:5:- +3:9:undef:undef:undef:undef +3:10:7:+:3:- +3:11:4:+:7:- +3:12:undef:undef:undef:undef +3:13:9:+:4:- +3:14:5:+:9:- +3:15:undef:undef:undef:undef +3:16:11:+:5:- +3:17:6:+:11:- +3:18:undef:undef:undef:undef +3:19:13:+:6:- +3:20:7:+:13:- +3:21:undef:undef:undef:undef +3:22:15:+:7:- +3:23:8:+:15:- +3:24:undef:undef:undef:undef +3:25:17:+:8:- +3:26:9:+:17:- +3:27:undef:undef:undef:undef +3:28:19:+:9:- +3:29:10:+:19:- +3:30:undef:undef:undef:undef +3:31:21:+:10:- +3:32:11:+:21:- +3:33:undef:undef:undef:undef +3:34:23:+:11:- +3:35:12:+:23:- +3:36:undef:undef:undef:undef +3:37:25:+:12:- +3:38:13:+:25:- +3:39:undef:undef:undef:undef +3:40:27:+:13:- +3:41:14:+:27:- +3:42:undef:undef:undef:undef +3:43:29:+:14:- +3:44:15:+:29:- +3:45:undef:undef:undef:undef +3:46:31:+:15:- +3:47:16:+:31:- +3:48:undef:undef:undef:undef +3:49:33:+:16:- +3:50:17:+:33:- +#4:0:undef:undef:undef:undef +4:1:0:+:0:- +4:2:undef:undef:undef:undef +4:3:1:+:2:- +4:4:undef:undef:undef:undef +4:5:4:+:1:- +4:6:undef:undef:undef:undef +4:7:2:+:5:- +4:8:undef:undef:undef:undef +4:9:7:+:2:- +4:10:undef:undef:undef:undef +4:11:3:+:8:- +4:12:undef:undef:undef:undef +4:13:10:+:3:- +4:14:undef:undef:undef:undef +4:15:4:+:11:- +4:16:undef:undef:undef:undef +4:17:13:+:4:- +4:18:undef:undef:undef:undef +4:19:5:+:14:- +4:20:undef:undef:undef:undef +4:21:16:+:5:- +4:22:undef:undef:undef:undef +4:23:6:+:17:- +4:24:undef:undef:undef:undef +4:25:19:+:6:- +4:26:undef:undef:undef:undef +4:27:7:+:20:- +4:28:undef:undef:undef:undef +4:29:22:+:7:- +4:30:undef:undef:undef:undef +4:31:8:+:23:- +4:32:undef:undef:undef:undef +4:33:25:+:8:- +4:34:undef:undef:undef:undef +4:35:9:+:26:- +4:36:undef:undef:undef:undef +4:37:28:+:9:- +4:38:undef:undef:undef:undef +4:39:10:+:29:- +4:40:undef:undef:undef:undef +4:41:31:+:10:- +4:42:undef:undef:undef:undef +4:43:11:+:32:- +4:44:undef:undef:undef:undef +4:45:34:+:11:- +4:46:undef:undef:undef:undef +4:47:12:+:35:- +4:48:undef:undef:undef:undef +4:49:37:+:12:- +4:50:undef:undef:undef:undef +#5:0:undef:undef:undef:undef +5:1:0:+:0:- +5:2:1:+:1:- +5:3:2:+:1:- +5:4:1:+:3:- +5:5:undef:undef:undef:undef +5:6:5:+:1:- +5:7:3:+:4:- +5:8:5:+:3:- +5:9:2:+:7:- +5:10:undef:undef:undef:undef +5:11:9:+:2:- +5:12:5:+:7:- +5:13:8:+:5:- +5:14:3:+:11:- +5:15:undef:undef:undef:undef +5:16:13:+:3:- +5:17:7:+:10:- +5:18:11:+:7:- +5:19:4:+:15:- +5:20:undef:undef:undef:undef +5:21:17:+:4:- +5:22:9:+:13:- +5:23:14:+:9:- +5:24:5:+:19:- +5:25:undef:undef:undef:undef +5:26:21:+:5:- +5:27:11:+:16:- +5:28:17:+:11:- +5:29:6:+:23:- +5:30:undef:undef:undef:undef +5:31:25:+:6:- +5:32:13:+:19:- +5:33:20:+:13:- +5:34:7:+:27:- +5:35:undef:undef:undef:undef +5:36:29:+:7:- +5:37:15:+:22:- +5:38:23:+:15:- +5:39:8:+:31:- +5:40:undef:undef:undef:undef +5:41:33:+:8:- +5:42:17:+:25:- +5:43:26:+:17:- +5:44:9:+:35:- +5:45:undef:undef:undef:undef +5:46:37:+:9:- +5:47:19:+:28:- +5:48:29:+:19:- +5:49:10:+:39:- +5:50:undef:undef:undef:undef +#6:0:undef:undef:undef:undef +6:1:0:+:0:- +6:2:undef:undef:undef:undef +6:3:undef:undef:undef:undef +6:4:undef:undef:undef:undef +6:5:1:+:4:- +6:6:undef:undef:undef:undef +6:7:6:+:1:- +6:8:undef:undef:undef:undef +6:9:undef:undef:undef:undef +6:10:undef:undef:undef:undef +6:11:2:+:9:- +6:12:undef:undef:undef:undef +6:13:11:+:2:- +6:14:undef:undef:undef:undef +6:15:undef:undef:undef:undef +6:16:undef:undef:undef:undef +6:17:3:+:14:- +6:18:undef:undef:undef:undef +6:19:16:+:3:- +6:20:undef:undef:undef:undef +6:21:undef:undef:undef:undef +6:22:undef:undef:undef:undef +6:23:4:+:19:- +6:24:undef:undef:undef:undef +6:25:21:+:4:- +6:26:undef:undef:undef:undef +6:27:undef:undef:undef:undef +6:28:undef:undef:undef:undef +6:29:5:+:24:- +6:30:undef:undef:undef:undef +6:31:26:+:5:- +6:32:undef:undef:undef:undef +6:33:undef:undef:undef:undef +6:34:undef:undef:undef:undef +6:35:6:+:29:- +6:36:undef:undef:undef:undef +6:37:31:+:6:- +6:38:undef:undef:undef:undef +6:39:undef:undef:undef:undef +6:40:undef:undef:undef:undef +6:41:7:+:34:- +6:42:undef:undef:undef:undef +6:43:36:+:7:- +6:44:undef:undef:undef:undef +6:45:undef:undef:undef:undef +6:46:undef:undef:undef:undef +6:47:8:+:39:- +6:48:undef:undef:undef:undef +6:49:41:+:8:- +6:50:undef:undef:undef:undef +#7:0:undef:undef:undef:undef +7:1:0:+:0:- +7:2:1:+:1:- +7:3:1:+:2:- +7:4:3:+:1:- +7:5:3:+:2:- +7:6:1:+:5:- +7:7:undef:undef:undef:undef +7:8:7:+:1:- +7:9:4:+:5:- +7:10:3:+:7:- +7:11:8:+:3:- +7:12:7:+:5:- +7:13:2:+:11:- +7:14:undef:undef:undef:undef +7:15:13:+:2:- +7:16:7:+:9:- +7:17:5:+:12:- +7:18:13:+:5:- +7:19:11:+:8:- +7:20:3:+:17:- +7:21:undef:undef:undef:undef +7:22:19:+:3:- +7:23:10:+:13:- +7:24:7:+:17:- +7:25:18:+:7:- +7:26:15:+:11:- +7:27:4:+:23:- +7:28:undef:undef:undef:undef +7:29:25:+:4:- +7:30:13:+:17:- +7:31:9:+:22:- +7:32:23:+:9:- +7:33:19:+:14:- +7:34:5:+:29:- +7:35:undef:undef:undef:undef +7:36:31:+:5:- +7:37:16:+:21:- +7:38:11:+:27:- +7:39:28:+:11:- +7:40:23:+:17:- +7:41:6:+:35:- +7:42:undef:undef:undef:undef +7:43:37:+:6:- +7:44:19:+:25:- +7:45:13:+:32:- +7:46:33:+:13:- +7:47:27:+:20:- +7:48:7:+:41:- +7:49:undef:undef:undef:undef +7:50:43:+:7:- +#8:0:undef:undef:undef:undef +8:1:0:+:0:- +8:2:undef:undef:undef:undef +8:3:2:+:1:- +8:4:undef:undef:undef:undef +8:5:2:+:3:- +8:6:undef:undef:undef:undef +8:7:1:+:6:- +8:8:undef:undef:undef:undef +8:9:8:+:1:- +8:10:undef:undef:undef:undef +8:11:7:+:4:- +8:12:undef:undef:undef:undef +8:13:5:+:8:- +8:14:undef:undef:undef:undef +8:15:2:+:13:- +8:16:undef:undef:undef:undef +8:17:15:+:2:- +8:18:undef:undef:undef:undef +8:19:12:+:7:- +8:20:undef:undef:undef:undef +8:21:8:+:13:- +8:22:undef:undef:undef:undef +8:23:3:+:20:- +8:24:undef:undef:undef:undef +8:25:22:+:3:- +8:26:undef:undef:undef:undef +8:27:17:+:10:- +8:28:undef:undef:undef:undef +8:29:11:+:18:- +8:30:undef:undef:undef:undef +8:31:4:+:27:- +8:32:undef:undef:undef:undef +8:33:29:+:4:- +8:34:undef:undef:undef:undef +8:35:22:+:13:- +8:36:undef:undef:undef:undef +8:37:14:+:23:- +8:38:undef:undef:undef:undef +8:39:5:+:34:- +8:40:undef:undef:undef:undef +8:41:36:+:5:- +8:42:undef:undef:undef:undef +8:43:27:+:16:- +8:44:undef:undef:undef:undef +8:45:17:+:28:- +8:46:undef:undef:undef:undef +8:47:6:+:41:- +8:48:undef:undef:undef:undef +8:49:43:+:6:- +8:50:undef:undef:undef:undef +#9:0:undef:undef:undef:undef +9:1:0:+:0:- +9:2:1:+:1:- +9:3:undef:undef:undef:undef +9:4:1:+:3:- +9:5:4:+:1:- +9:6:undef:undef:undef:undef +9:7:4:+:3:- +9:8:1:+:7:- +9:9:undef:undef:undef:undef +9:10:9:+:1:- +9:11:5:+:6:- +9:12:undef:undef:undef:undef +9:13:3:+:10:- +9:14:11:+:3:- +9:15:undef:undef:undef:undef +9:16:9:+:7:- +9:17:2:+:15:- +9:18:undef:undef:undef:undef +9:19:17:+:2:- +9:20:9:+:11:- +9:21:undef:undef:undef:undef +9:22:5:+:17:- +9:23:18:+:5:- +9:24:undef:undef:undef:undef +9:25:14:+:11:- +9:26:3:+:23:- +9:27:undef:undef:undef:undef +9:28:25:+:3:- +9:29:13:+:16:- +9:30:undef:undef:undef:undef +9:31:7:+:24:- +9:32:25:+:7:- +9:33:undef:undef:undef:undef +9:34:19:+:15:- +9:35:4:+:31:- +9:36:undef:undef:undef:undef +9:37:33:+:4:- +9:38:17:+:21:- +9:39:undef:undef:undef:undef +9:40:9:+:31:- +9:41:32:+:9:- +9:42:undef:undef:undef:undef +9:43:24:+:19:- +9:44:5:+:39:- +9:45:undef:undef:undef:undef +9:46:41:+:5:- +9:47:21:+:26:- +9:48:undef:undef:undef:undef +9:49:11:+:38:- +9:50:39:+:11:- +#10:0:undef:undef:undef:undef +10:1:0:+:0:- +10:2:undef:undef:undef:undef +10:3:1:+:2:- +10:4:undef:undef:undef:undef +10:5:undef:undef:undef:undef +10:6:undef:undef:undef:undef +10:7:5:+:2:- +10:8:undef:undef:undef:undef +10:9:1:+:8:- +10:10:undef:undef:undef:undef +10:11:10:+:1:- +10:12:undef:undef:undef:undef +10:13:4:+:9:- +10:14:undef:undef:undef:undef +10:15:undef:undef:undef:undef +10:16:undef:undef:undef:undef +10:17:12:+:5:- +10:18:undef:undef:undef:undef +10:19:2:+:17:- +10:20:undef:undef:undef:undef +10:21:19:+:2:- +10:22:undef:undef:undef:undef +10:23:7:+:16:- +10:24:undef:undef:undef:undef +10:25:undef:undef:undef:undef +10:26:undef:undef:undef:undef +10:27:19:+:8:- +10:28:undef:undef:undef:undef +10:29:3:+:26:- +10:30:undef:undef:undef:undef +10:31:28:+:3:- +10:32:undef:undef:undef:undef +10:33:10:+:23:- +10:34:undef:undef:undef:undef +10:35:undef:undef:undef:undef +10:36:undef:undef:undef:undef +10:37:26:+:11:- +10:38:undef:undef:undef:undef +10:39:4:+:35:- +10:40:undef:undef:undef:undef +10:41:37:+:4:- +10:42:undef:undef:undef:undef +10:43:13:+:30:- +10:44:undef:undef:undef:undef +10:45:undef:undef:undef:undef +10:46:undef:undef:undef:undef +10:47:33:+:14:- +10:48:undef:undef:undef:undef +10:49:5:+:44:- +10:50:undef:undef:undef:undef +#11:0:undef:undef:undef:undef +11:1:0:+:0:- +11:2:1:+:1:- +11:3:2:+:1:- +11:4:3:+:1:- +11:5:1:+:4:- +11:6:5:+:1:- +11:7:2:+:5:- +11:8:3:+:5:- +11:9:5:+:4:- +11:10:1:+:9:- +11:11:undef:undef:undef:undef +11:12:11:+:1:- +11:13:6:+:7:- +11:14:9:+:5:- +11:15:11:+:4:- +11:16:3:+:13:- +11:17:14:+:3:- +11:18:5:+:13:- +11:19:7:+:12:- +11:20:11:+:9:- +11:21:2:+:19:- +11:22:undef:undef:undef:undef +11:23:21:+:2:- +11:24:11:+:13:- +11:25:16:+:9:- +11:26:19:+:7:- +11:27:5:+:22:- +11:28:23:+:5:- +11:29:8:+:21:- +11:30:11:+:19:- +11:31:17:+:14:- +11:32:3:+:29:- +11:33:undef:undef:undef:undef +11:34:31:+:3:- +11:35:16:+:19:- +11:36:23:+:13:- +11:37:27:+:10:- +11:38:7:+:31:- +11:39:32:+:7:- +11:40:11:+:29:- +11:41:15:+:26:- +11:42:23:+:19:- +11:43:4:+:39:- +11:44:undef:undef:undef:undef +11:45:41:+:4:- +11:46:21:+:25:- +11:47:30:+:17:- +11:48:35:+:13:- +11:49:9:+:40:- +11:50:41:+:9:- +#12:0:undef:undef:undef:undef +12:1:0:+:0:- +12:2:undef:undef:undef:undef +12:3:undef:undef:undef:undef +12:4:undef:undef:undef:undef +12:5:3:+:2:- +12:6:undef:undef:undef:undef +12:7:3:+:4:- +12:8:undef:undef:undef:undef +12:9:undef:undef:undef:undef +12:10:undef:undef:undef:undef +12:11:1:+:10:- +12:12:undef:undef:undef:undef +12:13:12:+:1:- +12:14:undef:undef:undef:undef +12:15:undef:undef:undef:undef +12:16:undef:undef:undef:undef +12:17:10:+:7:- +12:18:undef:undef:undef:undef +12:19:8:+:11:- +12:20:undef:undef:undef:undef +12:21:undef:undef:undef:undef +12:22:undef:undef:undef:undef +12:23:2:+:21:- +12:24:undef:undef:undef:undef +12:25:23:+:2:- +12:26:undef:undef:undef:undef +12:27:undef:undef:undef:undef +12:28:undef:undef:undef:undef +12:29:17:+:12:- +12:30:undef:undef:undef:undef +12:31:13:+:18:- +12:32:undef:undef:undef:undef +12:33:undef:undef:undef:undef +12:34:undef:undef:undef:undef +12:35:3:+:32:- +12:36:undef:undef:undef:undef +12:37:34:+:3:- +12:38:undef:undef:undef:undef +12:39:undef:undef:undef:undef +12:40:undef:undef:undef:undef +12:41:24:+:17:- +12:42:undef:undef:undef:undef +12:43:18:+:25:- +12:44:undef:undef:undef:undef +12:45:undef:undef:undef:undef +12:46:undef:undef:undef:undef +12:47:4:+:43:- +12:48:undef:undef:undef:undef +12:49:45:+:4:- +12:50:undef:undef:undef:undef +#13:0:undef:undef:undef:undef +13:1:0:+:0:- +13:2:1:+:1:- +13:3:1:+:2:- +13:4:1:+:3:- +13:5:2:+:3:- +13:6:1:+:5:- +13:7:6:+:1:- +13:8:5:+:3:- +13:9:7:+:2:- +13:10:7:+:3:- +13:11:6:+:5:- +13:12:1:+:11:- +13:13:undef:undef:undef:undef +13:14:13:+:1:- +13:15:7:+:8:- +13:16:5:+:11:- +13:17:4:+:13:- +13:18:7:+:11:- +13:19:3:+:16:- +13:20:17:+:3:- +13:21:13:+:8:- +13:22:17:+:5:- +13:23:16:+:7:- +13:24:13:+:11:- +13:25:2:+:23:- +13:26:undef:undef:undef:undef +13:27:25:+:2:- +13:28:13:+:15:- +13:29:9:+:20:- +13:30:7:+:23:- +13:31:12:+:19:- +13:32:5:+:27:- +13:33:28:+:5:- +13:34:21:+:13:- +13:35:27:+:8:- +13:36:25:+:11:- +13:37:20:+:17:- +13:38:3:+:35:- +13:39:undef:undef:undef:undef +13:40:37:+:3:- +13:41:19:+:22:- +13:42:13:+:29:- +13:43:10:+:33:- +13:44:17:+:27:- +13:45:7:+:38:- +13:46:39:+:7:- +13:47:29:+:18:- +13:48:37:+:11:- +13:49:34:+:15:- +13:50:27:+:23:- +#14:0:undef:undef:undef:undef +14:1:0:+:0:- +14:2:undef:undef:undef:undef +14:3:2:+:1:- +14:4:undef:undef:undef:undef +14:5:4:+:1:- +14:6:undef:undef:undef:undef +14:7:undef:undef:undef:undef +14:8:undef:undef:undef:undef +14:9:2:+:7:- +14:10:undef:undef:undef:undef +14:11:4:+:7:- +14:12:undef:undef:undef:undef +14:13:1:+:12:- +14:14:undef:undef:undef:undef +14:15:14:+:1:- +14:16:undef:undef:undef:undef +14:17:11:+:6:- +14:18:undef:undef:undef:undef +14:19:15:+:4:- +14:20:undef:undef:undef:undef +14:21:undef:undef:undef:undef +14:22:undef:undef:undef:undef +14:23:5:+:18:- +14:24:undef:undef:undef:undef +14:25:9:+:16:- +14:26:undef:undef:undef:undef +14:27:2:+:25:- +14:28:undef:undef:undef:undef +14:29:27:+:2:- +14:30:undef:undef:undef:undef +14:31:20:+:11:- +14:32:undef:undef:undef:undef +14:33:26:+:7:- +14:34:undef:undef:undef:undef +14:35:undef:undef:undef:undef +14:36:undef:undef:undef:undef +14:37:8:+:29:- +14:38:undef:undef:undef:undef +14:39:14:+:25:- +14:40:undef:undef:undef:undef +14:41:3:+:38:- +14:42:undef:undef:undef:undef +14:43:40:+:3:- +14:44:undef:undef:undef:undef +14:45:29:+:16:- +14:46:undef:undef:undef:undef +14:47:37:+:10:- +14:48:undef:undef:undef:undef +14:49:undef:undef:undef:undef +14:50:undef:undef:undef:undef +#15:0:undef:undef:undef:undef +15:1:0:+:0:- +15:2:1:+:1:- +15:3:undef:undef:undef:undef +15:4:3:+:1:- +15:5:undef:undef:undef:undef +15:6:undef:undef:undef:undef +15:7:1:+:6:- +15:8:7:+:1:- +15:9:undef:undef:undef:undef +15:10:undef:undef:undef:undef +15:11:3:+:8:- +15:12:undef:undef:undef:undef +15:13:7:+:6:- +15:14:1:+:13:- +15:15:undef:undef:undef:undef +15:16:15:+:1:- +15:17:8:+:9:- +15:18:undef:undef:undef:undef +15:19:14:+:5:- +15:20:undef:undef:undef:undef +15:21:undef:undef:undef:undef +15:22:3:+:19:- +15:23:20:+:3:- +15:24:undef:undef:undef:undef +15:25:undef:undef:undef:undef +15:26:7:+:19:- +15:27:undef:undef:undef:undef +15:28:15:+:13:- +15:29:2:+:27:- +15:30:undef:undef:undef:undef +15:31:29:+:2:- +15:32:15:+:17:- +15:33:undef:undef:undef:undef +15:34:25:+:9:- +15:35:undef:undef:undef:undef +15:36:undef:undef:undef:undef +15:37:5:+:32:- +15:38:33:+:5:- +15:39:undef:undef:undef:undef +15:40:undef:undef:undef:undef +15:41:11:+:30:- +15:42:undef:undef:undef:undef +15:43:23:+:20:- +15:44:3:+:41:- +15:45:undef:undef:undef:undef +15:46:43:+:3:- +15:47:22:+:25:- +15:48:undef:undef:undef:undef +15:49:36:+:13:- +15:50:undef:undef:undef:undef +#16:0:undef:undef:undef:undef +16:1:0:+:0:- +16:2:undef:undef:undef:undef +16:3:1:+:2:- +16:4:undef:undef:undef:undef +16:5:1:+:4:- +16:6:undef:undef:undef:undef +16:7:4:+:3:- +16:8:undef:undef:undef:undef +16:9:4:+:5:- +16:10:undef:undef:undef:undef +16:11:9:+:2:- +16:12:undef:undef:undef:undef +16:13:9:+:4:- +16:14:undef:undef:undef:undef +16:15:1:+:14:- +16:16:undef:undef:undef:undef +16:17:16:+:1:- +16:18:undef:undef:undef:undef +16:19:6:+:13:- +16:20:undef:undef:undef:undef +16:21:4:+:17:- +16:22:undef:undef:undef:undef +16:23:13:+:10:- +16:24:undef:undef:undef:undef +16:25:11:+:14:- +16:26:undef:undef:undef:undef +16:27:22:+:5:- +16:28:undef:undef:undef:undef +16:29:20:+:9:- +16:30:undef:undef:undef:undef +16:31:2:+:29:- +16:32:undef:undef:undef:undef +16:33:31:+:2:- +16:34:undef:undef:undef:undef +16:35:11:+:24:- +16:36:undef:undef:undef:undef +16:37:7:+:30:- +16:38:undef:undef:undef:undef +16:39:22:+:17:- +16:40:undef:undef:undef:undef +16:41:18:+:23:- +16:42:undef:undef:undef:undef +16:43:35:+:8:- +16:44:undef:undef:undef:undef +16:45:31:+:14:- +16:46:undef:undef:undef:undef +16:47:3:+:44:- +16:48:undef:undef:undef:undef +16:49:46:+:3:- +16:50:undef:undef:undef:undef +#17:0:undef:undef:undef:undef +17:1:0:+:0:- +17:2:1:+:1:- +17:3:2:+:1:- +17:4:1:+:3:- +17:5:3:+:2:- +17:6:5:+:1:- +17:7:5:+:2:- +17:8:1:+:7:- +17:9:8:+:1:- +17:10:3:+:7:- +17:11:2:+:9:- +17:12:5:+:7:- +17:13:10:+:3:- +17:14:5:+:9:- +17:15:8:+:7:- +17:16:1:+:15:- +17:17:undef:undef:undef:undef +17:18:17:+:1:- +17:19:9:+:10:- +17:20:13:+:7:- +17:21:5:+:16:- +17:22:13:+:9:- +17:23:19:+:4:- +17:24:17:+:7:- +17:25:3:+:22:- +17:26:23:+:3:- +17:27:8:+:19:- +17:28:5:+:23:- +17:29:12:+:17:- +17:30:23:+:7:- +17:31:11:+:20:- +17:32:17:+:15:- +17:33:2:+:31:- +17:34:undef:undef:undef:undef +17:35:33:+:2:- +17:36:17:+:19:- +17:37:24:+:13:- +17:38:9:+:29:- +17:39:23:+:16:- +17:40:33:+:7:- +17:41:29:+:12:- +17:42:5:+:37:- +17:43:38:+:5:- +17:44:13:+:31:- +17:45:8:+:37:- +17:46:19:+:27:- +17:47:36:+:11:- +17:48:17:+:31:- +17:49:26:+:23:- +17:50:3:+:47:- +#18:0:undef:undef:undef:undef +18:1:0:+:0:- +18:2:undef:undef:undef:undef +18:3:undef:undef:undef:undef +18:4:undef:undef:undef:undef +18:5:2:+:3:- +18:6:undef:undef:undef:undef +18:7:2:+:5:- +18:8:undef:undef:undef:undef +18:9:undef:undef:undef:undef +18:10:undef:undef:undef:undef +18:11:8:+:3:- +18:12:undef:undef:undef:undef +18:13:8:+:5:- +18:14:undef:undef:undef:undef +18:15:undef:undef:undef:undef +18:16:undef:undef:undef:undef +18:17:1:+:16:- +18:18:undef:undef:undef:undef +18:19:18:+:1:- +18:20:undef:undef:undef:undef +18:21:undef:undef:undef:undef +18:22:undef:undef:undef:undef +18:23:9:+:14:- +18:24:undef:undef:undef:undef +18:25:7:+:18:- +18:26:undef:undef:undef:undef +18:27:undef:undef:undef:undef +18:28:undef:undef:undef:undef +18:29:21:+:8:- +18:30:undef:undef:undef:undef +18:31:19:+:12:- +18:32:undef:undef:undef:undef +18:33:undef:undef:undef:undef +18:34:undef:undef:undef:undef +18:35:2:+:33:- +18:36:undef:undef:undef:undef +18:37:35:+:2:- +18:38:undef:undef:undef:undef +18:39:undef:undef:undef:undef +18:40:undef:undef:undef:undef +18:41:16:+:25:- +18:42:undef:undef:undef:undef +18:43:12:+:31:- +18:44:undef:undef:undef:undef +18:45:undef:undef:undef:undef +18:46:undef:undef:undef:undef +18:47:34:+:13:- +18:48:undef:undef:undef:undef +18:49:30:+:19:- +18:50:undef:undef:undef:undef +#19:0:undef:undef:undef:undef +19:1:0:+:0:- +19:2:1:+:1:- +19:3:1:+:2:- +19:4:3:+:1:- +19:5:4:+:1:- +19:6:1:+:5:- +19:7:3:+:4:- +19:8:3:+:5:- +19:9:1:+:8:- +19:10:9:+:1:- +19:11:7:+:4:- +19:12:7:+:5:- +19:13:11:+:2:- +19:14:3:+:11:- +19:15:4:+:11:- +19:16:11:+:5:- +19:17:9:+:8:- +19:18:1:+:17:- +19:19:undef:undef:undef:undef +19:20:19:+:1:- +19:21:10:+:11:- +19:22:7:+:15:- +19:23:17:+:6:- +19:24:19:+:5:- +19:25:4:+:21:- +19:26:11:+:15:- +19:27:10:+:17:- +19:28:3:+:25:- +19:29:26:+:3:- +19:30:19:+:11:- +19:31:18:+:13:- +19:32:27:+:5:- +19:33:7:+:26:- +19:34:9:+:25:- +19:35:24:+:11:- +19:36:19:+:17:- +19:37:2:+:35:- +19:38:undef:undef:undef:undef +19:39:37:+:2:- +19:40:19:+:21:- +19:41:13:+:28:- +19:42:31:+:11:- +19:43:34:+:9:- +19:44:7:+:37:- +19:45:19:+:26:- +19:46:17:+:29:- +19:47:5:+:42:- +19:48:43:+:5:- +19:49:31:+:18:- +19:50:29:+:21:- +#20:0:undef:undef:undef:undef +20:1:0:+:0:- +20:2:undef:undef:undef:undef +20:3:2:+:1:- +20:4:undef:undef:undef:undef +20:5:undef:undef:undef:undef +20:6:undef:undef:undef:undef +20:7:6:+:1:- +20:8:undef:undef:undef:undef +20:9:5:+:4:- +20:10:undef:undef:undef:undef +20:11:5:+:6:- +20:12:undef:undef:undef:undef +20:13:2:+:11:- +20:14:undef:undef:undef:undef +20:15:undef:undef:undef:undef +20:16:undef:undef:undef:undef +20:17:6:+:11:- +20:18:undef:undef:undef:undef +20:19:1:+:18:- +20:20:undef:undef:undef:undef +20:21:20:+:1:- +20:22:undef:undef:undef:undef +20:23:15:+:8:- +20:24:undef:undef:undef:undef +20:25:undef:undef:undef:undef +20:26:undef:undef:undef:undef +20:27:23:+:4:- +20:28:undef:undef:undef:undef +20:29:16:+:13:- +20:30:undef:undef:undef:undef +20:31:14:+:17:- +20:32:undef:undef:undef:undef +20:33:5:+:28:- +20:34:undef:undef:undef:undef +20:35:undef:undef:undef:undef +20:36:undef:undef:undef:undef +20:37:13:+:24:- +20:38:undef:undef:undef:undef +20:39:2:+:37:- +20:40:undef:undef:undef:undef +20:41:39:+:2:- +20:42:undef:undef:undef:undef +20:43:28:+:15:- +20:44:undef:undef:undef:undef +20:45:undef:undef:undef:undef +20:46:undef:undef:undef:undef +20:47:40:+:7:- +20:48:undef:undef:undef:undef +20:49:27:+:22:- +20:50:undef:undef:undef:undef +#21:0:undef:undef:undef:undef +21:1:0:+:0:- +21:2:1:+:1:- +21:3:undef:undef:undef:undef +21:4:1:+:3:- +21:5:1:+:4:- +21:6:undef:undef:undef:undef +21:7:undef:undef:undef:undef +21:8:5:+:3:- +21:9:undef:undef:undef:undef +21:10:1:+:9:- +21:11:10:+:1:- +21:12:undef:undef:undef:undef +21:13:5:+:8:- +21:14:undef:undef:undef:undef +21:15:undef:undef:undef:undef +21:16:13:+:3:- +21:17:13:+:4:- +21:18:undef:undef:undef:undef +21:19:10:+:9:- +21:20:1:+:19:- +21:21:undef:undef:undef:undef +21:22:21:+:1:- +21:23:11:+:12:- +21:24:undef:undef:undef:undef +21:25:6:+:19:- +21:26:5:+:21:- +21:27:undef:undef:undef:undef +21:28:undef:undef:undef:undef +21:29:18:+:11:- +21:30:undef:undef:undef:undef +21:31:3:+:28:- +21:32:29:+:3:- +21:33:undef:undef:undef:undef +21:34:13:+:21:- +21:35:undef:undef:undef:undef +21:36:undef:undef:undef:undef +21:37:30:+:7:- +21:38:29:+:9:- +21:39:undef:undef:undef:undef +21:40:21:+:19:- +21:41:2:+:39:- +21:42:undef:undef:undef:undef +21:43:41:+:2:- +21:44:21:+:23:- +21:45:undef:undef:undef:undef +21:46:11:+:35:- +21:47:9:+:38:- +21:48:undef:undef:undef:undef +21:49:undef:undef:undef:undef +21:50:31:+:19:- +#22:0:undef:undef:undef:undef +22:1:0:+:0:- +22:2:undef:undef:undef:undef +22:3:1:+:2:- +22:4:undef:undef:undef:undef +22:5:3:+:2:- +22:6:undef:undef:undef:undef +22:7:1:+:6:- +22:8:undef:undef:undef:undef +22:9:7:+:2:- +22:10:undef:undef:undef:undef +22:11:undef:undef:undef:undef +22:12:undef:undef:undef:undef +22:13:3:+:10:- +22:14:undef:undef:undef:undef +22:15:13:+:2:- +22:16:undef:undef:undef:undef +22:17:7:+:10:- +22:18:undef:undef:undef:undef +22:19:13:+:6:- +22:20:undef:undef:undef:undef +22:21:1:+:20:- +22:22:undef:undef:undef:undef +22:23:22:+:1:- +22:24:undef:undef:undef:undef +22:25:8:+:17:- +22:26:undef:undef:undef:undef +22:27:16:+:11:- +22:28:undef:undef:undef:undef +22:29:4:+:25:- +22:30:undef:undef:undef:undef +22:31:24:+:7:- +22:32:undef:undef:undef:undef +22:33:undef:undef:undef:undef +22:34:undef:undef:undef:undef +22:35:8:+:27:- +22:36:undef:undef:undef:undef +22:37:32:+:5:- +22:38:undef:undef:undef:undef +22:39:16:+:23:- +22:40:undef:undef:undef:undef +22:41:28:+:13:- +22:42:undef:undef:undef:undef +22:43:2:+:41:- +22:44:undef:undef:undef:undef +22:45:43:+:2:- +22:46:undef:undef:undef:undef +22:47:15:+:32:- +22:48:undef:undef:undef:undef +22:49:29:+:20:- +22:50:undef:undef:undef:undef +#23:0:undef:undef:undef:undef +23:1:0:+:0:- +23:2:1:+:1:- +23:3:2:+:1:- +23:4:3:+:1:- +23:5:2:+:3:- +23:6:5:+:1:- +23:7:4:+:3:- +23:8:7:+:1:- +23:9:2:+:7:- +23:10:7:+:3:- +23:11:1:+:10:- +23:12:11:+:1:- +23:13:4:+:9:- +23:14:11:+:3:- +23:15:2:+:13:- +23:16:7:+:9:- +23:17:3:+:14:- +23:18:11:+:7:- +23:19:5:+:14:- +23:20:7:+:13:- +23:21:11:+:10:- +23:22:1:+:21:- +23:23:undef:undef:undef:undef +23:24:23:+:1:- +23:25:12:+:13:- +23:26:17:+:9:- +23:27:20:+:7:- +23:28:11:+:17:- +23:29:24:+:5:- +23:30:17:+:13:- +23:31:27:+:4:- +23:32:7:+:25:- +23:33:23:+:10:- +23:34:3:+:31:- +23:35:32:+:3:- +23:36:11:+:25:- +23:37:29:+:8:- +23:38:5:+:33:- +23:39:17:+:22:- +23:40:7:+:33:- +23:41:25:+:16:- +23:42:11:+:31:- +23:43:15:+:28:- +23:44:23:+:21:- +23:45:2:+:43:- +23:46:undef:undef:undef:undef +23:47:45:+:2:- +23:48:23:+:25:- +23:49:32:+:17:- +23:50:37:+:13:- +#24:0:undef:undef:undef:undef +24:1:0:+:0:- +24:2:undef:undef:undef:undef +24:3:undef:undef:undef:undef +24:4:undef:undef:undef:undef +24:5:4:+:1:- +24:6:undef:undef:undef:undef +24:7:5:+:2:- +24:8:undef:undef:undef:undef +24:9:undef:undef:undef:undef +24:10:undef:undef:undef:undef +24:11:6:+:5:- +24:12:undef:undef:undef:undef +24:13:6:+:7:- +24:14:undef:undef:undef:undef +24:15:undef:undef:undef:undef +24:16:undef:undef:undef:undef +24:17:5:+:12:- +24:18:undef:undef:undef:undef +24:19:4:+:15:- +24:20:undef:undef:undef:undef +24:21:undef:undef:undef:undef +24:22:undef:undef:undef:undef +24:23:1:+:22:- +24:24:undef:undef:undef:undef +24:25:24:+:1:- +24:26:undef:undef:undef:undef +24:27:undef:undef:undef:undef +24:28:undef:undef:undef:undef +24:29:23:+:6:- +24:30:undef:undef:undef:undef +24:31:22:+:9:- +24:32:undef:undef:undef:undef +24:33:undef:undef:undef:undef +24:34:undef:undef:undef:undef +24:35:19:+:16:- +24:36:undef:undef:undef:undef +24:37:17:+:20:- +24:38:undef:undef:undef:undef +24:39:undef:undef:undef:undef +24:40:undef:undef:undef:undef +24:41:12:+:29:- +24:42:undef:undef:undef:undef +24:43:9:+:34:- +24:44:undef:undef:undef:undef +24:45:undef:undef:undef:undef +24:46:undef:undef:undef:undef +24:47:2:+:45:- +24:48:undef:undef:undef:undef +24:49:47:+:2:- +24:50:undef:undef:undef:undef +#25:0:undef:undef:undef:undef +25:1:0:+:0:- +25:2:1:+:1:- +25:3:1:+:2:- +25:4:1:+:3:- +25:5:undef:undef:undef:undef +25:6:1:+:5:- +25:7:2:+:5:- +25:8:1:+:7:- +25:9:4:+:5:- +25:10:undef:undef:undef:undef +25:11:4:+:7:- +25:12:1:+:11:- +25:13:12:+:1:- +25:14:9:+:5:- +25:15:undef:undef:undef:undef +25:16:9:+:7:- +25:17:15:+:2:- +25:18:13:+:5:- +25:19:16:+:3:- +25:20:undef:undef:undef:undef +25:21:16:+:5:- +25:22:15:+:7:- +25:23:12:+:11:- +25:24:1:+:23:- +25:25:undef:undef:undef:undef +25:26:25:+:1:- +25:27:13:+:14:- +25:28:9:+:19:- +25:29:7:+:22:- +25:30:undef:undef:undef:undef +25:31:5:+:26:- +25:32:9:+:23:- +25:33:4:+:29:- +25:34:15:+:19:- +25:35:undef:undef:undef:undef +25:36:13:+:23:- +25:37:3:+:34:- +25:38:35:+:3:- +25:39:25:+:14:- +25:40:undef:undef:undef:undef +25:41:23:+:18:- +25:42:37:+:5:- +25:43:31:+:12:- +25:44:37:+:7:- +25:45:undef:undef:undef:undef +25:46:35:+:11:- +25:47:32:+:15:- +25:48:25:+:23:- +25:49:2:+:47:- +25:50:undef:undef:undef:undef +#26:0:undef:undef:undef:undef +26:1:0:+:0:- +26:2:undef:undef:undef:undef +26:3:2:+:1:- +26:4:undef:undef:undef:undef +26:5:1:+:4:- +26:6:undef:undef:undef:undef +26:7:3:+:4:- +26:8:undef:undef:undef:undef +26:9:8:+:1:- +26:10:undef:undef:undef:undef +26:11:3:+:8:- +26:12:undef:undef:undef:undef +26:13:undef:undef:undef:undef +26:14:undef:undef:undef:undef +26:15:11:+:4:- +26:16:undef:undef:undef:undef +26:17:2:+:15:- +26:18:undef:undef:undef:undef +26:19:11:+:8:- +26:20:undef:undef:undef:undef +26:21:17:+:4:- +26:22:undef:undef:undef:undef +26:23:8:+:15:- +26:24:undef:undef:undef:undef +26:25:1:+:24:- +26:26:undef:undef:undef:undef +26:27:26:+:1:- +26:28:undef:undef:undef:undef +26:29:19:+:10:- +26:30:undef:undef:undef:undef +26:31:6:+:25:- +26:32:undef:undef:undef:undef +26:33:14:+:19:- +26:34:undef:undef:undef:undef +26:35:31:+:4:- +26:36:undef:undef:undef:undef +26:37:10:+:27:- +26:38:undef:undef:undef:undef +26:39:undef:undef:undef:undef +26:40:undef:undef:undef:undef +26:41:30:+:11:- +26:42:undef:undef:undef:undef +26:43:5:+:38:- +26:44:undef:undef:undef:undef +26:45:26:+:19:- +26:46:undef:undef:undef:undef +26:47:38:+:9:- +26:48:undef:undef:undef:undef +26:49:17:+:32:- +26:50:undef:undef:undef:undef +#27:0:undef:undef:undef:undef +27:1:0:+:0:- +27:2:1:+:1:- +27:3:undef:undef:undef:undef +27:4:3:+:1:- +27:5:3:+:2:- +27:6:undef:undef:undef:undef +27:7:6:+:1:- +27:8:3:+:5:- +27:9:undef:undef:undef:undef +27:10:3:+:7:- +27:11:9:+:2:- +27:12:undef:undef:undef:undef +27:13:1:+:12:- +27:14:13:+:1:- +27:15:undef:undef:undef:undef +27:16:3:+:13:- +27:17:12:+:5:- +27:18:undef:undef:undef:undef +27:19:12:+:7:- +27:20:3:+:17:- +27:21:undef:undef:undef:undef +27:22:9:+:13:- +27:23:6:+:17:- +27:24:undef:undef:undef:undef +27:25:13:+:12:- +27:26:1:+:25:- +27:27:undef:undef:undef:undef +27:28:27:+:1:- +27:29:14:+:15:- +27:30:undef:undef:undef:undef +27:31:23:+:8:- +27:32:19:+:13:- +27:33:undef:undef:undef:undef +27:34:29:+:5:- +27:35:13:+:22:- +27:36:undef:undef:undef:undef +27:37:11:+:26:- +27:38:31:+:7:- +27:39:undef:undef:undef:undef +27:40:3:+:37:- +27:41:38:+:3:- +27:42:undef:undef:undef:undef +27:43:8:+:35:- +27:44:31:+:13:- +27:45:undef:undef:undef:undef +27:46:29:+:17:- +27:47:7:+:40:- +27:48:undef:undef:undef:undef +27:49:20:+:29:- +27:50:13:+:37:- +#28:0:undef:undef:undef:undef +28:1:0:+:0:- +28:2:undef:undef:undef:undef +28:3:1:+:2:- +28:4:undef:undef:undef:undef +28:5:2:+:3:- +28:6:undef:undef:undef:undef +28:7:undef:undef:undef:undef +28:8:undef:undef:undef:undef +28:9:1:+:8:- +28:10:undef:undef:undef:undef +28:11:2:+:9:- +28:12:undef:undef:undef:undef +28:13:7:+:6:- +28:14:undef:undef:undef:undef +28:15:7:+:8:- +28:16:undef:undef:undef:undef +28:17:14:+:3:- +28:18:undef:undef:undef:undef +28:19:17:+:2:- +28:20:undef:undef:undef:undef +28:21:undef:undef:undef:undef +28:22:undef:undef:undef:undef +28:23:14:+:9:- +28:24:undef:undef:undef:undef +28:25:17:+:8:- +28:26:undef:undef:undef:undef +28:27:1:+:26:- +28:28:undef:undef:undef:undef +28:29:28:+:1:- +28:30:undef:undef:undef:undef +28:31:10:+:21:- +28:32:undef:undef:undef:undef +28:33:13:+:20:- +28:34:undef:undef:undef:undef +28:35:undef:undef:undef:undef +28:36:undef:undef:undef:undef +28:37:4:+:33:- +28:38:undef:undef:undef:undef +28:39:7:+:32:- +28:40:undef:undef:undef:undef +28:41:22:+:19:- +28:42:undef:undef:undef:undef +28:43:20:+:23:- +28:44:undef:undef:undef:undef +28:45:37:+:8:- +28:46:undef:undef:undef:undef +28:47:42:+:5:- +28:48:undef:undef:undef:undef +28:49:undef:undef:undef:undef +28:50:undef:undef:undef:undef +#29:0:undef:undef:undef:undef +29:1:0:+:0:- +29:2:1:+:1:- +29:3:2:+:1:- +29:4:1:+:3:- +29:5:4:+:1:- +29:6:5:+:1:- +29:7:1:+:6:- +29:8:5:+:3:- +29:9:5:+:4:- +29:10:9:+:1:- +29:11:8:+:3:- +29:12:5:+:7:- +29:13:9:+:4:- +29:14:1:+:13:- +29:15:14:+:1:- +29:16:5:+:11:- +29:17:10:+:7:- +29:18:5:+:13:- +29:19:2:+:17:- +29:20:9:+:11:- +29:21:8:+:13:- +29:22:19:+:3:- +29:23:4:+:19:- +29:24:5:+:19:- +29:25:19:+:6:- +29:26:9:+:17:- +29:27:14:+:13:- +29:28:1:+:27:- +29:29:undef:undef:undef:undef +29:30:29:+:1:- +29:31:15:+:16:- +29:32:21:+:11:- +29:33:8:+:25:- +29:34:27:+:7:- +29:35:29:+:6:- +29:36:5:+:31:- +29:37:23:+:14:- +29:38:21:+:17:- +29:39:35:+:4:- +29:40:29:+:11:- +29:41:17:+:24:- +29:42:29:+:13:- +29:43:3:+:40:- +29:44:41:+:3:- +29:45:14:+:31:- +29:46:27:+:19:- +29:47:13:+:34:- +29:48:5:+:43:- +29:49:22:+:27:- +29:50:19:+:31:- +#30:0:undef:undef:undef:undef +30:1:0:+:0:- +30:2:undef:undef:undef:undef +30:3:undef:undef:undef:undef +30:4:undef:undef:undef:undef +30:5:undef:undef:undef:undef +30:6:undef:undef:undef:undef +30:7:4:+:3:- +30:8:undef:undef:undef:undef +30:9:undef:undef:undef:undef +30:10:undef:undef:undef:undef +30:11:7:+:4:- +30:12:undef:undef:undef:undef +30:13:10:+:3:- +30:14:undef:undef:undef:undef +30:15:undef:undef:undef:undef +30:16:undef:undef:undef:undef +30:17:4:+:13:- +30:18:undef:undef:undef:undef +30:19:7:+:12:- +30:20:undef:undef:undef:undef +30:21:undef:undef:undef:undef +30:22:undef:undef:undef:undef +30:23:10:+:13:- +30:24:undef:undef:undef:undef +30:25:undef:undef:undef:undef +30:26:undef:undef:undef:undef +30:27:undef:undef:undef:undef +30:28:undef:undef:undef:undef +30:29:1:+:28:- +30:30:undef:undef:undef:undef +30:31:30:+:1:- +30:32:undef:undef:undef:undef +30:33:undef:undef:undef:undef +30:34:undef:undef:undef:undef +30:35:undef:undef:undef:undef +30:36:undef:undef:undef:undef +30:37:21:+:16:- +30:38:undef:undef:undef:undef +30:39:undef:undef:undef:undef +30:40:undef:undef:undef:undef +30:41:26:+:15:- +30:42:undef:undef:undef:undef +30:43:33:+:10:- +30:44:undef:undef:undef:undef +30:45:undef:undef:undef:undef +30:46:undef:undef:undef:undef +30:47:11:+:36:- +30:48:undef:undef:undef:undef +30:49:18:+:31:- +30:50:undef:undef:undef:undef +#31:0:undef:undef:undef:undef +31:1:0:+:0:- +31:2:1:+:1:- +31:3:1:+:2:- +31:4:3:+:1:- +31:5:1:+:4:- +31:6:1:+:5:- +31:7:5:+:2:- +31:8:7:+:1:- +31:9:7:+:2:- +31:10:1:+:9:- +31:11:5:+:6:- +31:12:7:+:5:- +31:13:8:+:5:- +31:14:5:+:9:- +31:15:1:+:14:- +31:16:15:+:1:- +31:17:11:+:6:- +31:18:7:+:11:- +31:19:8:+:11:- +31:20:11:+:9:- +31:21:19:+:2:- +31:22:5:+:17:- +31:23:3:+:20:- +31:24:7:+:17:- +31:25:21:+:4:- +31:26:21:+:5:- +31:27:7:+:20:- +31:28:19:+:9:- +31:29:15:+:14:- +31:30:1:+:29:- +31:31:undef:undef:undef:undef +31:32:31:+:1:- +31:33:16:+:17:- +31:34:11:+:23:- +31:35:26:+:9:- +31:36:7:+:29:- +31:37:6:+:31:- +31:38:27:+:11:- +31:39:34:+:5:- +31:40:31:+:9:- +31:41:4:+:37:- +31:42:19:+:23:- +31:43:25:+:18:- +31:44:27:+:17:- +31:45:16:+:29:- +31:46:3:+:43:- +31:47:44:+:3:- +31:48:31:+:17:- +31:49:19:+:30:- +31:50:21:+:29:- +#32:0:undef:undef:undef:undef +32:1:0:+:0:- +32:2:undef:undef:undef:undef +32:3:2:+:1:- +32:4:undef:undef:undef:undef +32:5:3:+:2:- +32:6:undef:undef:undef:undef +32:7:2:+:5:- +32:8:undef:undef:undef:undef +32:9:2:+:7:- +32:10:undef:undef:undef:undef +32:11:10:+:1:- +32:12:undef:undef:undef:undef +32:13:11:+:2:- +32:14:undef:undef:undef:undef +32:15:8:+:7:- +32:16:undef:undef:undef:undef +32:17:8:+:9:- +32:18:undef:undef:undef:undef +32:19:3:+:16:- +32:20:undef:undef:undef:undef +32:21:2:+:19:- +32:22:undef:undef:undef:undef +32:23:18:+:5:- +32:24:undef:undef:undef:undef +32:25:18:+:7:- +32:26:undef:undef:undef:undef +32:27:11:+:16:- +32:28:undef:undef:undef:undef +32:29:10:+:19:- +32:30:undef:undef:undef:undef +32:31:1:+:30:- +32:32:undef:undef:undef:undef +32:33:32:+:1:- +32:34:undef:undef:undef:undef +32:35:23:+:12:- +32:36:undef:undef:undef:undef +32:37:22:+:15:- +32:38:undef:undef:undef:undef +32:39:11:+:28:- +32:40:undef:undef:undef:undef +32:41:9:+:32:- +32:42:undef:undef:undef:undef +32:43:39:+:4:- +32:44:undef:undef:undef:undef +32:45:38:+:7:- +32:46:undef:undef:undef:undef +32:47:25:+:22:- +32:48:undef:undef:undef:undef +32:49:23:+:26:- +32:50:undef:undef:undef:undef +#33:0:undef:undef:undef:undef +33:1:0:+:0:- +33:2:1:+:1:- +33:3:undef:undef:undef:undef +33:4:1:+:3:- +33:5:2:+:3:- +33:6:undef:undef:undef:undef +33:7:3:+:4:- +33:8:1:+:7:- +33:9:undef:undef:undef:undef +33:10:7:+:3:- +33:11:undef:undef:undef:undef +33:12:undef:undef:undef:undef +33:13:2:+:11:- +33:14:3:+:11:- +33:15:undef:undef:undef:undef +33:16:1:+:15:- +33:17:16:+:1:- +33:18:undef:undef:undef:undef +33:19:15:+:4:- +33:20:17:+:3:- +33:21:undef:undef:undef:undef +33:22:undef:undef:undef:undef +33:23:7:+:16:- +33:24:undef:undef:undef:undef +33:25:22:+:3:- +33:26:15:+:11:- +33:27:undef:undef:undef:undef +33:28:17:+:11:- +33:29:22:+:7:- +33:30:undef:undef:undef:undef +33:31:16:+:15:- +33:32:1:+:31:- +33:33:undef:undef:undef:undef +33:34:33:+:1:- +33:35:17:+:18:- +33:36:undef:undef:undef:undef +33:37:9:+:28:- +33:38:15:+:23:- +33:39:undef:undef:undef:undef +33:40:17:+:23:- +33:41:5:+:36:- +33:42:undef:undef:undef:undef +33:43:30:+:13:- +33:44:undef:undef:undef:undef +33:45:undef:undef:undef:undef +33:46:7:+:39:- +33:47:10:+:37:- +33:48:undef:undef:undef:undef +33:49:3:+:46:- +33:50:47:+:3:- +#34:0:undef:undef:undef:undef +34:1:0:+:0:- +34:2:undef:undef:undef:undef +34:3:1:+:2:- +34:4:undef:undef:undef:undef +34:5:4:+:1:- +34:6:undef:undef:undef:undef +34:7:6:+:1:- +34:8:undef:undef:undef:undef +34:9:4:+:5:- +34:10:undef:undef:undef:undef +34:11:1:+:10:- +34:12:undef:undef:undef:undef +34:13:5:+:8:- +34:14:undef:undef:undef:undef +34:15:4:+:11:- +34:16:undef:undef:undef:undef +34:17:undef:undef:undef:undef +34:18:undef:undef:undef:undef +34:19:14:+:5:- +34:20:undef:undef:undef:undef +34:21:13:+:8:- +34:22:undef:undef:undef:undef +34:23:21:+:2:- +34:24:undef:undef:undef:undef +34:25:14:+:11:- +34:26:undef:undef:undef:undef +34:27:4:+:23:- +34:28:undef:undef:undef:undef +34:29:6:+:23:- +34:30:undef:undef:undef:undef +34:31:21:+:10:- +34:32:undef:undef:undef:undef +34:33:1:+:32:- +34:34:undef:undef:undef:undef +34:35:34:+:1:- +34:36:undef:undef:undef:undef +34:37:12:+:25:- +34:38:undef:undef:undef:undef +34:39:31:+:8:- +34:40:undef:undef:undef:undef +34:41:35:+:6:- +34:42:undef:undef:undef:undef +34:43:19:+:24:- +34:44:undef:undef:undef:undef +34:45:4:+:41:- +34:46:undef:undef:undef:undef +34:47:18:+:29:- +34:48:undef:undef:undef:undef +34:49:13:+:36:- +34:50:undef:undef:undef:undef +#35:0:undef:undef:undef:undef +35:1:0:+:0:- +35:2:1:+:1:- +35:3:2:+:1:- +35:4:3:+:1:- +35:5:undef:undef:undef:undef +35:6:5:+:1:- +35:7:undef:undef:undef:undef +35:8:3:+:5:- +35:9:8:+:1:- +35:10:undef:undef:undef:undef +35:11:6:+:5:- +35:12:11:+:1:- +35:13:3:+:10:- +35:14:undef:undef:undef:undef +35:15:undef:undef:undef:undef +35:16:11:+:5:- +35:17:1:+:16:- +35:18:17:+:1:- +35:19:6:+:13:- +35:20:undef:undef:undef:undef +35:21:undef:undef:undef:undef +35:22:17:+:5:- +35:23:2:+:21:- +35:24:11:+:13:- +35:25:undef:undef:undef:undef +35:26:3:+:23:- +35:27:17:+:10:- +35:28:undef:undef:undef:undef +35:29:5:+:24:- +35:30:undef:undef:undef:undef +35:31:8:+:23:- +35:32:11:+:21:- +35:33:17:+:16:- +35:34:1:+:33:- +35:35:undef:undef:undef:undef +35:36:35:+:1:- +35:37:18:+:19:- +35:38:25:+:13:- +35:39:29:+:10:- +35:40:undef:undef:undef:undef +35:41:34:+:7:- +35:42:undef:undef:undef:undef +35:43:16:+:27:- +35:44:39:+:5:- +35:45:undef:undef:undef:undef +35:46:25:+:21:- +35:47:43:+:4:- +35:48:11:+:37:- +35:49:undef:undef:undef:undef +35:50:undef:undef:undef:undef +#36:0:undef:undef:undef:undef +36:1:0:+:0:- +36:2:undef:undef:undef:undef +36:3:undef:undef:undef:undef +36:4:undef:undef:undef:undef +36:5:1:+:4:- +36:6:undef:undef:undef:undef +36:7:1:+:6:- +36:8:undef:undef:undef:undef +36:9:undef:undef:undef:undef +36:10:undef:undef:undef:undef +36:11:4:+:7:- +36:12:undef:undef:undef:undef +36:13:4:+:9:- +36:14:undef:undef:undef:undef +36:15:undef:undef:undef:undef +36:16:undef:undef:undef:undef +36:17:9:+:8:- +36:18:undef:undef:undef:undef +36:19:9:+:10:- +36:20:undef:undef:undef:undef +36:21:undef:undef:undef:undef +36:22:undef:undef:undef:undef +36:23:16:+:7:- +36:24:undef:undef:undef:undef +36:25:16:+:9:- +36:26:undef:undef:undef:undef +36:27:undef:undef:undef:undef +36:28:undef:undef:undef:undef +36:29:25:+:4:- +36:30:undef:undef:undef:undef +36:31:25:+:6:- +36:32:undef:undef:undef:undef +36:33:undef:undef:undef:undef +36:34:undef:undef:undef:undef +36:35:1:+:34:- +36:36:undef:undef:undef:undef +36:37:36:+:1:- +36:38:undef:undef:undef:undef +36:39:undef:undef:undef:undef +36:40:undef:undef:undef:undef +36:41:8:+:33:- +36:42:undef:undef:undef:undef +36:43:6:+:37:- +36:44:undef:undef:undef:undef +36:45:undef:undef:undef:undef +36:46:undef:undef:undef:undef +36:47:17:+:30:- +36:48:undef:undef:undef:undef +36:49:15:+:34:- +36:50:undef:undef:undef:undef +#37:0:undef:undef:undef:undef +37:1:0:+:0:- +37:2:1:+:1:- +37:3:1:+:2:- +37:4:1:+:3:- +37:5:3:+:2:- +37:6:1:+:5:- +37:7:4:+:3:- +37:8:5:+:3:- +37:9:1:+:8:- +37:10:3:+:7:- +37:11:3:+:8:- +37:12:1:+:11:- +37:13:6:+:7:- +37:14:11:+:3:- +37:15:13:+:2:- +37:16:13:+:3:- +37:17:6:+:11:- +37:18:1:+:17:- +37:19:18:+:1:- +37:20:13:+:7:- +37:21:4:+:17:- +37:22:3:+:19:- +37:23:5:+:18:- +37:24:13:+:11:- +37:25:23:+:2:- +37:26:19:+:7:- +37:27:19:+:8:- +37:28:25:+:3:- +37:29:11:+:18:- +37:30:13:+:17:- +37:31:26:+:5:- +37:32:13:+:19:- +37:33:25:+:8:- +37:34:23:+:11:- +37:35:18:+:17:- +37:36:1:+:35:- +37:37:undef:undef:undef:undef +37:38:37:+:1:- +37:39:19:+:20:- +37:40:13:+:27:- +37:41:10:+:31:- +37:42:25:+:17:- +37:43:7:+:36:- +37:44:25:+:19:- +37:45:28:+:17:- +37:46:5:+:41:- +37:47:14:+:33:- +37:48:13:+:35:- +37:49:4:+:45:- +37:50:23:+:27:- +#38:0:undef:undef:undef:undef +38:1:0:+:0:- +38:2:undef:undef:undef:undef +38:3:2:+:1:- +38:4:undef:undef:undef:undef +38:5:2:+:3:- +38:6:undef:undef:undef:undef +38:7:5:+:2:- +38:8:undef:undef:undef:undef +38:9:5:+:4:- +38:10:undef:undef:undef:undef +38:11:9:+:2:- +38:12:undef:undef:undef:undef +38:13:12:+:1:- +38:14:undef:undef:undef:undef +38:15:2:+:13:- +38:16:undef:undef:undef:undef +38:17:13:+:4:- +38:18:undef:undef:undef:undef +38:19:undef:undef:undef:undef +38:20:undef:undef:undef:undef +38:21:5:+:16:- +38:22:undef:undef:undef:undef +38:23:20:+:3:- +38:24:undef:undef:undef:undef +38:25:2:+:23:- +38:26:undef:undef:undef:undef +38:27:5:+:22:- +38:28:undef:undef:undef:undef +38:29:13:+:16:- +38:30:undef:undef:undef:undef +38:31:9:+:22:- +38:32:undef:undef:undef:undef +38:33:20:+:13:- +38:34:undef:undef:undef:undef +38:35:12:+:23:- +38:36:undef:undef:undef:undef +38:37:1:+:36:- +38:38:undef:undef:undef:undef +38:39:38:+:1:- +38:40:undef:undef:undef:undef +38:41:27:+:14:- +38:42:undef:undef:undef:undef +38:43:17:+:26:- +38:44:undef:undef:undef:undef +38:45:32:+:13:- +38:46:undef:undef:undef:undef +38:47:26:+:21:- +38:48:undef:undef:undef:undef +38:49:40:+:9:- +38:50:undef:undef:undef:undef +#39:0:undef:undef:undef:undef +39:1:0:+:0:- +39:2:1:+:1:- +39:3:undef:undef:undef:undef +39:4:3:+:1:- +39:5:4:+:1:- +39:6:undef:undef:undef:undef +39:7:2:+:5:- +39:8:7:+:1:- +39:9:undef:undef:undef:undef +39:10:9:+:1:- +39:11:2:+:9:- +39:12:undef:undef:undef:undef +39:13:undef:undef:undef:undef +39:14:9:+:5:- +39:15:undef:undef:undef:undef +39:16:7:+:9:- +39:17:7:+:10:- +39:18:undef:undef:undef:undef +39:19:1:+:18:- +39:20:19:+:1:- +39:21:undef:undef:undef:undef +39:22:13:+:9:- +39:23:13:+:10:- +39:24:undef:undef:undef:undef +39:25:9:+:16:- +39:26:undef:undef:undef:undef +39:27:undef:undef:undef:undef +39:28:23:+:5:- +39:29:3:+:26:- +39:30:undef:undef:undef:undef +39:31:4:+:27:- +39:32:23:+:9:- +39:33:undef:undef:undef:undef +39:34:7:+:27:- +39:35:9:+:26:- +39:36:undef:undef:undef:undef +39:37:19:+:18:- +39:38:1:+:37:- +39:39:undef:undef:undef:undef +39:40:39:+:1:- +39:41:20:+:21:- +39:42:undef:undef:undef:undef +39:43:32:+:11:- +39:44:35:+:9:- +39:45:undef:undef:undef:undef +39:46:13:+:33:- +39:47:41:+:6:- +39:48:undef:undef:undef:undef +39:49:44:+:5:- +39:50:9:+:41:- +#40:0:undef:undef:undef:undef +40:1:0:+:0:- +40:2:undef:undef:undef:undef +40:3:1:+:2:- +40:4:undef:undef:undef:undef +40:5:undef:undef:undef:undef +40:6:undef:undef:undef:undef +40:7:3:+:4:- +40:8:undef:undef:undef:undef +40:9:7:+:2:- +40:10:undef:undef:undef:undef +40:11:8:+:3:- +40:12:undef:undef:undef:undef +40:13:1:+:12:- +40:14:undef:undef:undef:undef +40:15:undef:undef:undef:undef +40:16:undef:undef:undef:undef +40:17:3:+:14:- +40:18:undef:undef:undef:undef +40:19:10:+:9:- +40:20:undef:undef:undef:undef +40:21:10:+:11:- +40:22:undef:undef:undef:undef +40:23:19:+:4:- +40:24:undef:undef:undef:undef +40:25:undef:undef:undef:undef +40:26:undef:undef:undef:undef +40:27:25:+:2:- +40:28:undef:undef:undef:undef +40:29:8:+:21:- +40:30:undef:undef:undef:undef +40:31:7:+:24:- +40:32:undef:undef:undef:undef +40:33:19:+:14:- +40:34:undef:undef:undef:undef +40:35:undef:undef:undef:undef +40:36:undef:undef:undef:undef +40:37:25:+:12:- +40:38:undef:undef:undef:undef +40:39:1:+:38:- +40:40:undef:undef:undef:undef +40:41:40:+:1:- +40:42:undef:undef:undef:undef +40:43:14:+:29:- +40:44:undef:undef:undef:undef +40:45:undef:undef:undef:undef +40:46:undef:undef:undef:undef +40:47:20:+:27:- +40:48:undef:undef:undef:undef +40:49:38:+:11:- +40:50:undef:undef:undef:undef +#41:0:undef:undef:undef:undef +41:1:0:+:0:- +41:2:1:+:1:- +41:3:2:+:1:- +41:4:1:+:3:- +41:5:1:+:4:- +41:6:5:+:1:- +41:7:6:+:1:- +41:8:1:+:7:- +41:9:2:+:7:- +41:10:1:+:9:- +41:11:7:+:4:- +41:12:5:+:7:- +41:13:7:+:6:- +41:14:13:+:1:- +41:15:11:+:4:- +41:16:9:+:7:- +41:17:5:+:12:- +41:18:11:+:7:- +41:19:13:+:6:- +41:20:1:+:19:- +41:21:20:+:1:- +41:22:7:+:15:- +41:23:9:+:14:- +41:24:17:+:7:- +41:25:11:+:14:- +41:26:7:+:19:- +41:27:2:+:25:- +41:28:13:+:15:- +41:29:17:+:12:- +41:30:11:+:19:- +41:31:28:+:3:- +41:32:25:+:7:- +41:33:29:+:4:- +41:34:5:+:29:- +41:35:6:+:29:- +41:36:29:+:7:- +41:37:28:+:9:- +41:38:13:+:25:- +41:39:20:+:19:- +41:40:1:+:39:- +41:41:undef:undef:undef:undef +41:42:41:+:1:- +41:43:21:+:22:- +41:44:29:+:15:- +41:45:11:+:34:- +41:46:9:+:37:- +41:47:39:+:8:- +41:48:41:+:7:- +41:49:6:+:43:- +41:50:11:+:39:- +#42:0:undef:undef:undef:undef +42:1:0:+:0:- +42:2:undef:undef:undef:undef +42:3:undef:undef:undef:undef +42:4:undef:undef:undef:undef +42:5:3:+:2:- +42:6:undef:undef:undef:undef +42:7:undef:undef:undef:undef +42:8:undef:undef:undef:undef +42:9:undef:undef:undef:undef +42:10:undef:undef:undef:undef +42:11:5:+:6:- +42:12:undef:undef:undef:undef +42:13:9:+:4:- +42:14:undef:undef:undef:undef +42:15:undef:undef:undef:undef +42:16:undef:undef:undef:undef +42:17:15:+:2:- +42:18:undef:undef:undef:undef +42:19:5:+:14:- +42:20:undef:undef:undef:undef +42:21:undef:undef:undef:undef +42:22:undef:undef:undef:undef +42:23:17:+:6:- +42:24:undef:undef:undef:undef +42:25:3:+:22:- +42:26:undef:undef:undef:undef +42:27:undef:undef:undef:undef +42:28:undef:undef:undef:undef +42:29:9:+:20:- +42:30:undef:undef:undef:undef +42:31:17:+:14:- +42:32:undef:undef:undef:undef +42:33:undef:undef:undef:undef +42:34:undef:undef:undef:undef +42:35:undef:undef:undef:undef +42:36:undef:undef:undef:undef +42:37:15:+:22:- +42:38:undef:undef:undef:undef +42:39:undef:undef:undef:undef +42:40:undef:undef:undef:undef +42:41:1:+:40:- +42:42:undef:undef:undef:undef +42:43:42:+:1:- +42:44:undef:undef:undef:undef +42:45:undef:undef:undef:undef +42:46:undef:undef:undef:undef +42:47:28:+:19:- +42:48:undef:undef:undef:undef +42:49:undef:undef:undef:undef +42:50:undef:undef:undef:undef +#43:0:undef:undef:undef:undef +43:1:0:+:0:- +43:2:1:+:1:- +43:3:1:+:2:- +43:4:3:+:1:- +43:5:2:+:3:- +43:6:1:+:5:- +43:7:1:+:6:- +43:8:3:+:5:- +43:9:4:+:5:- +43:10:7:+:3:- +43:11:10:+:1:- +43:12:7:+:5:- +43:13:10:+:3:- +43:14:1:+:13:- +43:15:7:+:8:- +43:16:3:+:13:- +43:17:2:+:15:- +43:18:13:+:5:- +43:19:4:+:15:- +43:20:7:+:13:- +43:21:1:+:20:- +43:22:21:+:1:- +43:23:15:+:8:- +43:24:19:+:5:- +43:25:7:+:18:- +43:26:23:+:3:- +43:27:22:+:5:- +43:28:15:+:13:- +43:29:27:+:2:- +43:30:7:+:23:- +43:31:13:+:18:- +43:32:3:+:29:- +43:33:10:+:23:- +43:34:19:+:15:- +43:35:22:+:13:- +43:36:31:+:5:- +43:37:31:+:6:- +43:38:23:+:15:- +43:39:10:+:29:- +43:40:27:+:13:- +43:41:21:+:20:- +43:42:1:+:41:- +43:43:undef:undef:undef:undef +43:44:43:+:1:- +43:45:22:+:23:- +43:46:15:+:31:- +43:47:35:+:12:- +43:48:19:+:29:- +43:49:8:+:41:- +43:50:7:+:43:- +#44:0:undef:undef:undef:undef +44:1:0:+:0:- +44:2:undef:undef:undef:undef +44:3:2:+:1:- +44:4:undef:undef:undef:undef +44:5:4:+:1:- +44:6:undef:undef:undef:undef +44:7:4:+:3:- +44:8:undef:undef:undef:undef +44:9:8:+:1:- +44:10:undef:undef:undef:undef +44:11:undef:undef:undef:undef +44:12:undef:undef:undef:undef +44:13:8:+:5:- +44:14:undef:undef:undef:undef +44:15:14:+:1:- +44:16:undef:undef:undef:undef +44:17:12:+:5:- +44:18:undef:undef:undef:undef +44:19:16:+:3:- +44:20:undef:undef:undef:undef +44:21:11:+:10:- +44:22:undef:undef:undef:undef +44:23:11:+:12:- +44:24:undef:undef:undef:undef +44:25:4:+:21:- +44:26:undef:undef:undef:undef +44:27:8:+:19:- +44:28:undef:undef:undef:undef +44:29:2:+:27:- +44:30:undef:undef:undef:undef +44:31:12:+:19:- +44:32:undef:undef:undef:undef +44:33:undef:undef:undef:undef +44:34:undef:undef:undef:undef +44:35:4:+:31:- +44:36:undef:undef:undef:undef +44:37:16:+:21:- +44:38:undef:undef:undef:undef +44:39:8:+:31:- +44:40:undef:undef:undef:undef +44:41:14:+:27:- +44:42:undef:undef:undef:undef +44:43:1:+:42:- +44:44:undef:undef:undef:undef +44:45:44:+:1:- +44:46:undef:undef:undef:undef +44:47:31:+:16:- +44:48:undef:undef:undef:undef +44:49:39:+:10:- +44:50:undef:undef:undef:undef +#45:0:undef:undef:undef:undef +45:1:0:+:0:- +45:2:1:+:1:- +45:3:undef:undef:undef:undef +45:4:1:+:3:- +45:5:undef:undef:undef:undef +45:6:undef:undef:undef:undef +45:7:5:+:2:- +45:8:5:+:3:- +45:9:undef:undef:undef:undef +45:10:undef:undef:undef:undef +45:11:1:+:10:- +45:12:undef:undef:undef:undef +45:13:11:+:2:- +45:14:5:+:9:- +45:15:undef:undef:undef:undef +45:16:5:+:11:- +45:17:14:+:3:- +45:18:undef:undef:undef:undef +45:19:11:+:8:- +45:20:undef:undef:undef:undef +45:21:undef:undef:undef:undef +45:22:1:+:21:- +45:23:22:+:1:- +45:24:undef:undef:undef:undef +45:25:undef:undef:undef:undef +45:26:11:+:15:- +45:27:undef:undef:undef:undef +45:28:5:+:23:- +45:29:20:+:9:- +45:30:undef:undef:undef:undef +45:31:20:+:11:- +45:32:5:+:27:- +45:33:undef:undef:undef:undef +45:34:31:+:3:- +45:35:undef:undef:undef:undef +45:36:undef:undef:undef:undef +45:37:14:+:23:- +45:38:11:+:27:- +45:39:undef:undef:undef:undef +45:40:undef:undef:undef:undef +45:41:31:+:10:- +45:42:undef:undef:undef:undef +45:43:22:+:21:- +45:44:1:+:43:- +45:45:undef:undef:undef:undef +45:46:45:+:1:- +45:47:23:+:24:- +45:48:undef:undef:undef:undef +45:49:12:+:37:- +45:50:undef:undef:undef:undef +#46:0:undef:undef:undef:undef +46:1:0:+:0:- +46:2:undef:undef:undef:undef +46:3:1:+:2:- +46:4:undef:undef:undef:undef +46:5:1:+:4:- +46:6:undef:undef:undef:undef +46:7:2:+:5:- +46:8:undef:undef:undef:undef +46:9:1:+:8:- +46:10:undef:undef:undef:undef +46:11:6:+:5:- +46:12:undef:undef:undef:undef +46:13:2:+:11:- +46:14:undef:undef:undef:undef +46:15:1:+:14:- +46:16:undef:undef:undef:undef +46:17:10:+:7:- +46:18:undef:undef:undef:undef +46:19:12:+:7:- +46:20:undef:undef:undef:undef +46:21:16:+:5:- +46:22:undef:undef:undef:undef +46:23:undef:undef:undef:undef +46:24:undef:undef:undef:undef +46:25:6:+:19:- +46:26:undef:undef:undef:undef +46:27:10:+:17:- +46:28:undef:undef:undef:undef +46:29:12:+:17:- +46:30:undef:undef:undef:undef +46:31:29:+:2:- +46:32:undef:undef:undef:undef +46:33:28:+:5:- +46:34:undef:undef:undef:undef +46:35:16:+:19:- +46:36:undef:undef:undef:undef +46:37:33:+:4:- +46:38:undef:undef:undef:undef +46:39:28:+:11:- +46:40:undef:undef:undef:undef +46:41:33:+:8:- +46:42:undef:undef:undef:undef +46:43:29:+:14:- +46:44:undef:undef:undef:undef +46:45:1:+:44:- +46:46:undef:undef:undef:undef +46:47:46:+:1:- +46:48:undef:undef:undef:undef +46:49:16:+:33:- +46:50:undef:undef:undef:undef +#47:0:undef:undef:undef:undef +47:1:0:+:0:- +47:2:1:+:1:- +47:3:2:+:1:- +47:4:3:+:1:- +47:5:3:+:2:- +47:6:5:+:1:- +47:7:3:+:4:- +47:8:7:+:1:- +47:9:5:+:4:- +47:10:3:+:7:- +47:11:4:+:7:- +47:12:11:+:1:- +47:13:5:+:8:- +47:14:3:+:11:- +47:15:8:+:7:- +47:16:15:+:1:- +47:17:4:+:13:- +47:18:5:+:13:- +47:19:17:+:2:- +47:20:3:+:17:- +47:21:17:+:4:- +47:22:15:+:7:- +47:23:1:+:22:- +47:24:23:+:1:- +47:25:8:+:17:- +47:26:5:+:21:- +47:27:23:+:4:- +47:28:3:+:25:- +47:29:21:+:8:- +47:30:23:+:7:- +47:31:2:+:29:- +47:32:15:+:17:- +47:33:26:+:7:- +47:34:21:+:13:- +47:35:3:+:32:- +47:36:23:+:13:- +47:37:26:+:11:- +47:38:17:+:21:- +47:39:5:+:34:- +47:40:23:+:17:- +47:41:7:+:34:- +47:42:17:+:25:- +47:43:11:+:32:- +47:44:15:+:29:- +47:45:23:+:22:- +47:46:1:+:45:- +47:47:undef:undef:undef:undef +47:48:47:+:1:- +47:49:24:+:25:- +47:50:33:+:17:- +#48:0:undef:undef:undef:undef +48:1:0:+:0:- +48:2:undef:undef:undef:undef +48:3:undef:undef:undef:undef +48:4:undef:undef:undef:undef +48:5:2:+:3:- +48:6:undef:undef:undef:undef +48:7:6:+:1:- +48:8:undef:undef:undef:undef +48:9:undef:undef:undef:undef +48:10:undef:undef:undef:undef +48:11:3:+:8:- +48:12:undef:undef:undef:undef +48:13:3:+:10:- +48:14:undef:undef:undef:undef +48:15:undef:undef:undef:undef +48:16:undef:undef:undef:undef +48:17:11:+:6:- +48:18:undef:undef:undef:undef +48:19:2:+:17:- +48:20:undef:undef:undef:undef +48:21:undef:undef:undef:undef +48:22:undef:undef:undef:undef +48:23:12:+:11:- +48:24:undef:undef:undef:undef +48:25:12:+:13:- +48:26:undef:undef:undef:undef +48:27:undef:undef:undef:undef +48:28:undef:undef:undef:undef +48:29:26:+:3:- +48:30:undef:undef:undef:undef +48:31:11:+:20:- +48:32:undef:undef:undef:undef +48:33:undef:undef:undef:undef +48:34:undef:undef:undef:undef +48:35:27:+:8:- +48:36:undef:undef:undef:undef +48:37:27:+:10:- +48:38:undef:undef:undef:undef +48:39:undef:undef:undef:undef +48:40:undef:undef:undef:undef +48:41:6:+:35:- +48:42:undef:undef:undef:undef +48:43:26:+:17:- +48:44:undef:undef:undef:undef +48:45:undef:undef:undef:undef +48:46:undef:undef:undef:undef +48:47:1:+:46:- +48:48:undef:undef:undef:undef +48:49:48:+:1:- +48:50:undef:undef:undef:undef +#49:0:undef:undef:undef:undef +49:1:0:+:0:- +49:2:1:+:1:- +49:3:1:+:2:- +49:4:1:+:3:- +49:5:4:+:1:- +49:6:1:+:5:- +49:7:undef:undef:undef:undef +49:8:1:+:7:- +49:9:7:+:2:- +49:10:9:+:1:- +49:11:9:+:2:- +49:12:1:+:11:- +49:13:4:+:9:- +49:14:undef:undef:undef:undef +49:15:4:+:11:- +49:16:1:+:15:- +49:17:8:+:9:- +49:18:7:+:11:- +49:19:7:+:12:- +49:20:9:+:11:- +49:21:undef:undef:undef:undef +49:22:9:+:13:- +49:23:8:+:15:- +49:24:1:+:23:- +49:25:24:+:1:- +49:26:17:+:9:- +49:27:16:+:11:- +49:28:undef:undef:undef:undef +49:29:16:+:13:- +49:30:19:+:11:- +49:31:19:+:12:- +49:32:17:+:15:- +49:33:31:+:2:- +49:34:25:+:9:- +49:35:undef:undef:undef:undef +49:36:25:+:11:- +49:37:34:+:3:- +49:38:7:+:31:- +49:39:4:+:35:- +49:40:9:+:31:- +49:41:36:+:5:- +49:42:undef:undef:undef:undef +49:43:36:+:7:- +49:44:9:+:35:- +49:45:34:+:11:- +49:46:31:+:15:- +49:47:24:+:23:- +49:48:1:+:47:- +49:49:undef:undef:undef:undef +49:50:49:+:1:- +#50:0:undef:undef:undef:undef +50:1:0:+:0:- +50:2:undef:undef:undef:undef +50:3:2:+:1:- +50:4:undef:undef:undef:undef +50:5:undef:undef:undef:undef +50:6:undef:undef:undef:undef +50:7:1:+:6:- +50:8:undef:undef:undef:undef +50:9:2:+:7:- +50:10:undef:undef:undef:undef +50:11:2:+:9:- +50:12:undef:undef:undef:undef +50:13:6:+:7:- +50:14:undef:undef:undef:undef +50:15:undef:undef:undef:undef +50:16:undef:undef:undef:undef +50:17:16:+:1:- +50:18:undef:undef:undef:undef +50:19:8:+:11:- +50:20:undef:undef:undef:undef +50:21:8:+:13:- +50:22:undef:undef:undef:undef +50:23:6:+:17:- +50:24:undef:undef:undef:undef +50:25:undef:undef:undef:undef +50:26:undef:undef:undef:undef +50:27:20:+:7:- +50:28:undef:undef:undef:undef +50:29:18:+:11:- +50:30:undef:undef:undef:undef +50:31:18:+:13:- +50:32:undef:undef:undef:undef +50:33:2:+:31:- +50:34:undef:undef:undef:undef +50:35:undef:undef:undef:undef +50:36:undef:undef:undef:undef +50:37:20:+:17:- +50:38:undef:undef:undef:undef +50:39:32:+:7:- +50:40:undef:undef:undef:undef +50:41:32:+:9:- +50:42:undef:undef:undef:undef +50:43:37:+:6:- +50:44:undef:undef:undef:undef +50:45:undef:undef:undef:undef +50:46:undef:undef:undef:undef +50:47:16:+:31:- +50:48:undef:undef:undef:undef +50:49:1:+:48:- +50:50:undef:undef:undef:undef + +741:620:41:+:579:- +461:109:48:+:61:- +278:869:422:+:447:- +561:3498:undef:undef:undef:undef +499:7109:5086:+:2023:- +741:9439:2968:+:6471:- +486:56136:undef:undef:undef:undef +200:10526:undef:undef:undef:undef +672:99812:undef:undef:undef:undef +780:424148:undef:undef:undef:undef +310:384332:undef:undef:undef:undef +225:215820:undef:undef:undef:undef +852:2247541:2054970:+:192571:- +113:8887520:7235857:+:1651663:- +844:7780525:175154:+:7605371:- +687:87465920:509263:+:86956657:- +493:71478351:60459376:+:11018975:- +173:99310988:37313377:+:61997611:- +816:792935352:undef:undef:undef:undef +979:616918181:undef:undef:undef:undef +958:737059268:undef:undef:undef:undef +895:5476284944:3218464671:+:2257820273:- +754:5245579447:3095865854:+:2149713593:- +498:5270898300:undef:undef:undef:undef +413:85194219513:35686682750:+:49507536763:- +184:92943057805:9597380969:+:83345676836:- +282:22116244877:21253554474:+:862690403:- +103:813169626911:623693208990:+:189476417921:- +332:204877945268:undef:undef:undef:undef +305:812044920168:567100222937:+:244944697231:- +874:2233888446784:undef:undef:undef:undef +851:9628562470715:1595331737216:+:8033230733499:- +170:9512424802829:7330162642180:+:2182262160649:- +416:35895309054277:20967692548532:+:14927616505745:- +693:87114971000787:undef:undef:undef:undef +263:15549801355396:10405950716919:+:5143850638477:- +598:670464274337475:595345367346487:+:75118906990988:- +416:417977295301500:undef:undef:undef:undef +281:907403927404997:826674040625193:+:80729886779804:- +696:8403134065908435:undef:undef:undef:undef +277:5812153971708647:1279932824094684:+:4532221147613963:- +658:1133283530973375:undef:undef:undef:undef +632:57996916095727080:undef:undef:undef:undef +819:51981115048676576:undef:undef:undef:undef +549:83015466364372240:undef:undef:undef:undef +531:416202594816372687:undef:undef:undef:undef +664:541037245817077417:299037152432029235:+:242000093385048182:- +631:183722828206333148:92298156167048507:+:91424672039284641:- +175:3611383264044105956:undef:undef:undef:undef +743:2992271347936814844:2492888242762972259:+:499383105173842585:- +602:6134448393502267660:undef:undef:undef:undef +959:53075414038512161512:42283228702214068191:+:10792185336298093321:- +815:56860682801097897246:56093238002555471639:+:767444798542425607:- +886:30009839291014751598:undef:undef:undef:undef +609:273888409952105295020:98941625926868907889:+:174946784025236387131:- +340:181380165037918172099:139235950220284243876:+:42144214817633928223:- +827:229247399647470621945:92308807838703406418:+:136938591808767215527:- +952:5562674809482089173316:undef:undef:undef:undef +901:8309818972650860479311:3532364779717291413514:+:4777454192933569065797:- +265:7701488832510420831126:6945871060264115391091:+:755617772246305440035:- +164:75587116320128057813999:44707013921051351268036:+:30880102399076706545963:- +631:40162982059806098053891:6683222054325895872676:+:33479760005480202181215:- +733:10084115533658671195588:4705003427709775646509:+:5379112105948895549079:- +535:151412058327435602200854:141789609760832218135753:+:9622448566603384065101:- +757:423342299553291085429917:166093346059877744217550:+:257248953493413341212367:- +665:686959841032017875475019:434902395600721091090200:+:252057445431296784384819:- +740:6484819730382801901410848:undef:undef:undef:undef +793:2799159372693769837012668:1295449545748566872867149:+:1503709826945202964145519:- +282:3962201441710282457113977:undef:undef:undef:undef +905:460:undef:undef:undef:undef +828:265:257:+:8:- +542:455:68:+:387:- +756:4964:undef:undef:undef:undef +563:1031:738:+:293:- +224:9957:2267:+:7690:- +252:48856:undef:undef:undef:undef +373:74860:68237:+:6623:- +355:28550:undef:undef:undef:undef +982:348479:5323:+:343156:- +774:300613:undef:undef:undef:undef +854:749913:81665:+:668248:- +306:6065146:undef:undef:undef:undef +271:8099488:2480655:+:5618833:- +841:1638213:714892:+:923321:- +648:11588613:undef:undef:undef:undef +874:23241017:undef:undef:undef:undef +933:12110426:4646873:+:7463553:- +197:574608277:297512915:+:277095362:- +450:885355929:undef:undef:undef:undef +619:814593211:327679660:+:486913551:- +650:4156795794:undef:undef:undef:undef +701:2471540985:1815754076:+:655786909:- +813:5143260312:undef:undef:undef:undef +301:97232678386:15182511243:+:82050167143:- +804:76241122652:undef:undef:undef:undef +476:50715793663:33775013847:+:16940779816:- +407:417193419964:129155702495:+:288037717469:- +577:795565949538:42742711327:+:752823238211:- +113:344037305215:225298766247:+:118738538968:- +909:1781264483287:662340368923:+:1118924114364:- +815:7913809756884:4864808206379:+:3049001550505:- +675:7474109839958:1140493797801:+:6333616042157:- +932:13929482409261:941585184317:+:12987897224944:- +924:15097021630041:undef:undef:undef:undef +499:69768376838141:61239577264741:+:8528799573400:- +722:348476274304903:313242523578784:+:35233750726119:- +854:570193568728738:undef:undef:undef:undef +974:631143898362428:undef:undef:undef:undef +754:5981951447667815:2657763574229069:+:3324187873438746:- +175:7994366069894641:5207758468388509:+:2786607601506132:- +955:8179320935952497:7554095356555081:+:625225579397416:- +880:90993972189730180:undef:undef:undef:undef +332:60642153726739477:22466822013219746:+:38175331713519731:- +146:70480374924497094:undef:undef:undef:undef +785:477376881780158621:11554344909328680:+:465822536870829941:- +509:162367878429460773:115475779943938703:+:46892098485522070:- +277:415929677871336479:252260598853373749:+:163669079017962730:- +116:1152802064631144665:109317437163298201:+:1043484627467846464:- +414:3669698500253122270:undef:undef:undef:undef +272:6975835460709376364:undef:undef:undef:undef +584:76202968713931261880:undef:undef:undef:undef +113:65885331225240062100:46644482283355796177:+:19240848941884265923:- +610:93003648713173191624:undef:undef:undef:undef +194:145142945088276683997:117461043189997110245:+:27681901898279573752:- +563:486532793763280035361:366411908624566136755:+:120120885138713898606:- +738:587662254685605130728:undef:undef:undef:undef +708:8269459575943308522945:undef:undef:undef:undef +784:8119601286270879363659:3614465368505786859588:+:4505135917765092504071:- +174:4176304658042170923312:undef:undef:undef:undef +600:50583901482508562794984:undef:undef:undef:undef +484:87546738364851249507102:undef:undef:undef:undef +584:52635317924212427610338:undef:undef:undef:undef +479:702282439563863762476945:313754576339596754008489:+:388527863224267008468456:- +666:482137212775320246977754:undef:undef:undef:undef +642:591902125029057638793071:166875832757413446451006:+:425026292271644192342065:- +250:1013925362727886106592930:undef:undef:undef:undef +182:6031034047937231309336424:undef:undef:undef:undef +449:7224623463853020688795424:1946947525893575731278945:+:5277675937959444957516479:- +329:681:296:+:385:- +160:481:478:+:3:- +924:628:undef:undef:undef:undef +966:4261:3939:+:322:- +602:3792:undef:undef:undef:undef +503:2192:1303:+:889:- +840:18943:16079:+:2864:- +636:46667:11520:+:35147:- +565:92522:35535:+:56987:- +879:538061:42849:+:495212:- +402:504269:497997:+:6272:- +355:506944:379851:+:127093:- +335:2007636:1162631:+:845005:- +790:2462861:2428568:+:34293:- +917:9664847:5775721:+:3889126:- +475:72334904:54213107:+:18121797:- +819:59111784:undef:undef:undef:undef +294:81023337:undef:undef:undef:undef +572:497201929:398978471:+:98223458:- +421:314772904:216826941:+:97945963:- +765:505227632:450412085:+:54815547:- +237:5278294795:3652490913:+:1625803882:- +847:3110199153:2173834591:+:936364562:- +842:9546719867:5748440585:+:3798279282:- +801:14754617256:undef:undef:undef:undef +115:57978141981:7058208589:+:50919933392:- +214:71768884179:43262551678:+:28506332501:- +202:550042438570:undef:undef:undef:undef +461:856614524249:211830923567:+:644783600682:- +895:801644784874:81508017233:+:720136767641:- +963:3683793693096:undef:undef:undef:undef +334:5630552472673:994618550562:+:4635933922111:- +960:8963131336150:undef:undef:undef:undef +317:22868890215137:8079860265285:+:14789029949852:- +845:83064873649555:undef:undef:undef:undef +730:14582563081721:3775485510199:+:10807077571522:- +587:661031387460777:349096644144533:+:311934743316244:- +874:977093718206815:408054012752274:+:569039705454541:- +125:570801727061713:447508554016383:+:123293173045330:- +256:6743588830453320:undef:undef:undef:undef +162:8916030369222247:7870323103696181:+:1045707265526066:- +626:3338443153918406:undef:undef:undef:undef +737:33673341242625817:14712097530699475:+:18961243711926342:- +480:99211735204558346:undef:undef:undef:undef +440:77720969306266697:57760811279884568:+:19960158026382129:- +183:482260407343311656:287248002188092735:+:195012405155218921:- +786:118688797853185388:undef:undef:undef:undef +334:363171309873152983:undef:undef:undef:undef +571:1366803214546890149:428472461302790432:+:938330753244099717:- +117:6884129668418219012:2530064749931482201:+:4354064918486736811:- +385:8434614983431042942:5630379352576046847:+:2804235630854996095:- +542:93375752200055958358:undef:undef:undef:undef +751:68477372401862025252:45681975463825399003:+:22795396938036626249:- +903:89808109291803554851:81652777108051737024:+:8155332183751817827:- +669:737962127669032713396:undef:undef:undef:undef +254:994853266335556274523:646262948603806241324:+:348590317731750033199:- +327:339366039539626505616:undef:undef:undef:undef +145:5078756999763081840786:1716269606816489725507:+:3362487392946592115279:- +575:5593304214000287175400:undef:undef:undef:undef +839:7737339391509936330092:5053709161558337436103:+:2683630229951598893989:- +322:36517404451080131558649:34589466949004472439093:+:1927937502075659119556:- +810:13908484214268344873541:undef:undef:undef:undef +801:21640894049142413495911:21613876703263334328001:+:27017345879079167910:- +915:898597966959467815355730:undef:undef:undef:undef +440:271572327421957489228719:undef:undef:undef:undef +618:786639168038543887861103:31821972817093199347132:+:754817195221450688513971:- +643:1630290425961246373482606:831625598313046361589883:+:798664827648200011892723:- +935:5065034764752521759691908:124594438063431016548571:+:4940440326689090743143337:- +376:9530592457891569296396161:5855231004715299221988067:+:3675361453176270074408094:- +2946:548:undef:undef:undef:undef +9546:582:undef:undef:undef:undef +6294:153:undef:undef:undef:undef +6436:3798:undef:undef:undef:undef +8678:5609:1389:+:4220:- +4332:9737:5599:+:4138:- +6597:54650:29483:+:25167:- +6349:10623:1285:+:9338:- +8892:10489:4302:+:6187:- +3855:989920:undef:undef:undef:undef +9019:913324:1519:+:911805:- +7251:360052:37043:+:323009:- +9964:5492175:4888609:+:603566:- +9417:7462279:undef:undef:undef:undef +1089:1050423:undef:undef:undef:undef +1407:59792572:undef:undef:undef:undef +7163:46140182:33972263:+:12167919:- +8481:30580067:5271555:+:25308512:- +5584:401476541:18046313:+:383430228:- +1165:491274830:undef:undef:undef:undef +6904:560666466:undef:undef:undef:undef +4693:3443998487:847606702:+:2596391785:- +6277:6375048996:3427718713:+:2947330283:- +1715:2942734466:undef:undef:undef:undef +8402:28571614496:undef:undef:undef:undef +7407:66623347625:59157790918:+:7465556707:- +4097:30072612468:undef:undef:undef:undef +2337:355259397238:340513928033:+:14745469205:- +6577:424150081323:416346803257:+:7803278066:- +8560:318232114571:271724126799:+:46507987772:- +3979:1575914452553:1087575040641:+:488339411912:- +4510:3133369785360:undef:undef:undef:undef +8169:9194251869504:undef:undef:undef:undef +1575:99239191800263:32953712578754:+:66285479221509:- +9369:76312182615150:undef:undef:undef:undef +7693:60744018497638:undef:undef:undef:undef +3727:559162992969877:533957899645772:+:25205093324105:- +1260:681065359017028:undef:undef:undef:undef +3976:685441805727949:70854271165540:+:614587534562409:- +2504:9777800420084735:3658865412787299:+:6118935007297436:- +2762:7873030137588740:undef:undef:undef:undef +6635:7120473956972563:5224184961950631:+:1896288995021932:- +6228:92523947758884024:undef:undef:undef:undef +1304:22925758948775355:10355269954623224:+:12570488994152131:- +9088:86212918824513679:68160191654283757:+:18052727170229922:- +2520:185463029536171412:undef:undef:undef:undef +3577:997340379048801521:958584350900134087:+:38756028148667434:- +2514:162930369528348634:undef:undef:undef:undef +6648:9039445301791270496:undef:undef:undef:undef +9344:8136175292609130143:6938910627868381647:+:1197264664740748496:- +4953:9282031734931944828:undef:undef:undef:undef +3404:26167213577484844372:undef:undef:undef:undef +6557:63575943463035229143:31114107453542786384:+:32461836009492442759:- +5223:17950137655576050657:undef:undef:undef:undef +2998:792868168700507108633:593725496575262994957:+:199142672125244113676:- +3279:388960509706685596867:220517715018215469526:+:168442794688470127341:- +5927:732286607095088984945:384119969876603957178:+:348166637218485027767:- +6777:5490119563688280724837:5421260162343511083165:+:68859401344769641672:- +1497:6395281394987040837127:6275663573303916492812:+:119617821683124344315:- +7491:4664361048026575632196:31133100040225441411:+:4633227947986350190785:- +4033:19196592307972606406454:undef:undef:undef:undef +7071:43562844464026628340476:29577883788967874793187:+:13984960675058753547289:- +4100:57686517973164004591283:24664503904135731719151:+:33022014069028272872132:- +1894:487293779128619555993093:313113267792782470772753:+:174180511335837085220340:- +9154:858190558799326056846033:83906549063294387248984:+:774284009736031669597049:- +9225:781770620562905148078069:undef:undef:undef:undef +8061:4216203196128056053943703:undef:undef:undef:undef +5411:4282833094817001580138184:3275247338080346061469563:+:1007585756736655518668621:- +7175:8104779479452384950607078:undef:undef:undef:undef +5951:205:171:+:34:- +6069:424:373:+:51:- +6371:623:190:+:433:- +5082:3488:undef:undef:undef:undef +1678:3946:undef:undef:undef:undef +4793:9662:7755:+:1907:- +5048:92330:undef:undef:undef:undef +8094:69507:undef:undef:undef:undef +4396:99770:undef:undef:undef:undef +1681:501362:133617:+:367745:- +3664:615286:undef:undef:undef:undef +4915:143405:undef:undef:undef:undef +2529:8023778:488597:+:7535181:- +9060:5117142:undef:undef:undef:undef +3287:4585543:4199113:+:386430:- +3059:41109383:undef:undef:undef:undef +6509:68600092:46889201:+:21710891:- +5765:29503680:undef:undef:undef:undef +6410:988541422:undef:undef:undef:undef +5705:492883670:undef:undef:undef:undef +9837:622709937:undef:undef:undef:undef +3655:3592150238:3034900119:+:557250119:- +1952:4255266825:3642700238:+:612566587:- +2461:4785405085:2286727501:+:2498677584:- +5954:78088441558:undef:undef:undef:undef +8762:33007375700:undef:undef:undef:undef +9542:54551528885:6077161518:+:48474367367:- +9293:309538103946:61654474379:+:247883629567:- +2401:520030780193:107428266129:+:412602514064:- +1860:781528831498:undef:undef:undef:undef +7396:3527877963446:undef:undef:undef:undef +7279:8941549468508:211285411263:+:8730264057245:- +9389:6577806996740:1553200352729:+:5024606644011:- +1296:70387974951888:undef:undef:undef:undef +8023:45356649307727:32761034867042:+:12595614440685:- +4902:68896698482573:64525651312422:+:4371047170151:- +7991:275848275979438:248094301021677:+:27753974957761:- +5367:165924172274849:66808670819070:+:99115501455779:- +9289:888834843323870:73296101839389:+:815538741484481:- +4115:6569146182612215:undef:undef:undef:undef +7306:9909468711518116:undef:undef:undef:undef +4152:6781397856986327:6547838152374322:+:233559704612005:- +3568:47113880300487202:undef:undef:undef:undef +5809:87547803467030994:75611521775537011:+:11936281691493983:- +1787:13054054533808260:9832544713209803:+:3221509820598457:- +9514:605665049151906828:undef:undef:undef:undef +4853:713499000242966379:399459465003119648:+:314039535239846731:- +6452:427694734457904864:undef:undef:undef:undef +4239:8304859947096906141:undef:undef:undef:undef +3544:1969023207138603883:1313978522822459984:+:655044684316143899:- +6911:5031564641665892104:4523384621425291223:+:508180020240600881:- +9912:75163604212370372554:undef:undef:undef:undef +7130:11987974730099950013:11118720461451748869:+:869254268648201144:- +4939:23055485714643712760:8827277482565551899:+:14228208232078160861:- +1121:921401851199540927726:169320946785999492517:+:752080904413541435209:- +9040:872620802022659606426:undef:undef:undef:undef +8213:625934818692447812846:529068490364418935441:+:96866328328028877405:- +4433:4991433139403445570483:2540192457138320145953:+:2451240682265125424530:- +9508:6901625217196528232233:3753502734341948621043:+:3148122482854579611190:- +8595:2091945626639426717509:90298060207472636672:+:2001647566431954080837:- +6813:47447476046608773092632:1476422269467350637845:+:45971053777141422454787:- +3152:95873769198955185999171:50278978580543439865682:+:45594790618411746133489:- +2460:65845398973149003429799:13945306042687248287368:+:51900092930461755142431:- +3269:430088193330985030042478:37496217528091383775499:+:392591975802893646266979:- +5070:416813042846919276362941:105970811090666459020085:+:310842231756252817342856:- +5412:756139458478911579084896:undef:undef:undef:undef +2908:5303962871253938770973780:undef:undef:undef:undef +1379:7714259532129843754371131:2791454319458152308507030:+:4922805212671691445864101:- +2517:8085066861806460985962354:undef:undef:undef:undef +1532:417:371:+:46:- +2057:951:362:+:589:- +2802:257:185:+:72:- +8893:1116:829:+:287:- +4051:3111:1486:+:1625:- +1660:5374:undef:undef:undef:undef +7951:83731:73158:+:10573:- +4076:13977:1862:+:12115:- +3504:20428:undef:undef:undef:undef +1463:331516:330383:+:1133:- +7658:131185:43597:+:87588:- +8748:562512:undef:undef:undef:undef +3593:2809956:452033:+:2357923:- +2453:4643104:3638013:+:1005091:- +2136:4937753:349064:+:4588689:- +4575:12331589:4288428:+:8043161:- +2609:58309024:14728113:+:43580911:- +8325:89728602:undef:undef:undef:undef +5146:730730138:undef:undef:undef:undef +3767:641508965:50237628:+:591271337:- +6344:157295950:undef:undef:undef:undef +4106:4244559109:962417080:+:3282142029:- +8341:7745917746:4524410893:+:3221506853:- +3341:2504453707:1836549411:+:667904296:- +4654:23766898879:117455667:+:23649443212:- +4312:83083937372:undef:undef:undef:undef +6336:62487818477:897473403:+:61590345074:- +2767:105927028089:92336823907:+:13590204182:- +1984:976324738344:undef:undef:undef:undef +4735:414765902842:151715848727:+:263050054115:- +9389:3721921612503:2853777152882:+:868144459621:- +6021:1665187728854:1191711330947:+:473476397907:- +1934:8103149503392:undef:undef:undef:undef +1612:25738933245053:20230290584046:+:5508642661007:- +3540:63939152728664:undef:undef:undef:undef +4766:89000380393717:86591431784655:+:2408948609062:- +6562:806718572406385:57166128645073:+:749552443761312:- +5363:647761086861909:576982045858538:+:70779041003371:- +9985:312364388137023:44359809952759:+:268004578184264:- +9865:3083352379674899:2746105829480351:+:337246550194548:- +3486:5262233541080355:undef:undef:undef:undef +9897:2795886360449468:2246992029000209:+:548894331449259:- +1543:71685648832402483:45204236107535720:+:26481412724866763:- +5059:12149284758431196:10636327771316815:+:1512956987114381:- +9027:98514417733518139:9974762136749261:+:88539655596768878:- +1590:599286719846714674:undef:undef:undef:undef +2067:720695304468239807:500337572284433538:+:220357732183806269:- +9965:268446875052372025:undef:undef:undef:undef +7586:4753743199700456611:3858264814204549348:+:895478385495907263:- +9659:8337920883000826883:606849402707276250:+:7731071480293550633:- +4760:7642033057354407992:undef:undef:undef:undef +2094:89134575223756225143:undef:undef:undef:undef +3687:57937973605915838098:50285195426886542423:+:7652778179029295675:- +9497:73534290861324791607:57460037115077527484:+:16074253746247264123:- +5009:265940345835402303529:234350306751340740223:+:31590039084061563306:- +5625:724160736203734346852:622713863291993428573:+:101446872911740918279:- +7897:768215104928952954817:722007408988563863575:+:46207695940389091242:- +4290:2763058195260869468638:undef:undef:undef:undef +8843:5262665301247273597054:2180527610965736792899:+:3082137690281536804155:- +2817:4746510420518800349358:undef:undef:undef:undef +3575:89260603841583214022691:18451352794106292353222:+:70809251047476921669469:- +1990:83046096926822537014298:undef:undef:undef:undef +5184:94679474023243818818404:undef:undef:undef:undef +6657:650530555659617020407876:undef:undef:undef:undef +8387:775792776185367363844787:492836999107623383160251:+:282955777077743980684536:- +1221:574277496439098265859120:28690358134959045223101:+:545587138304139220636019:- +9454:8404675808910978281111357:7889940533539764358458144:+:514735275371213922653213:- +1843:7644754921502272571178185:1385430354737796548439237:+:6259324566764476022738948:- +3570:5516588796955727027671455:undef:undef:undef:undef +98949:410:59:+:351:- +13266:325:11:+:314:- +98861:589:233:+:356:- +48974:7575:4499:+:3076:- +91546:8701:undef:undef:undef:undef +99273:7134:undef:undef:undef:undef +22509:43674:undef:undef:undef:undef +37299:79911:undef:undef:undef:undef +47076:84931:72773:+:12158:- +42659:475702:169109:+:306593:- +77892:898781:259704:+:639077:- +73077:561447:undef:undef:undef:undef +27369:1403052:undef:undef:undef:undef +83396:2539666:undef:undef:undef:undef +85442:8955594:undef:undef:undef:undef +37950:52345351:31447211:+:20898140:- +72300:76337550:undef:undef:undef:undef +44240:64947945:undef:undef:undef:undef +56331:182321412:undef:undef:undef:undef +21225:238197444:undef:undef:undef:undef +91326:886827301:765746233:+:121081068:- +27120:5634335935:undef:undef:undef:undef +54438:1056390251:931361367:+:125028884:- +53176:4885961849:2775504919:+:2110456930:- +81663:84970728505:14283006872:+:70687721633:- +31590:19301069967:undef:undef:undef:undef +77888:82857346995:7290229547:+:75567117448:- +34574:295082156509:257776548072:+:37305608437:- +99202:196413828823:137338412898:+:59075415925:- +45629:890530580343:775986672389:+:114543907954:- +51796:4593971131457:3315276216749:+:1278694914708:- +36264:8469175155749:2952674318722:+:5516500837027:- +41163:2034818270362:939428282923:+:1095389987439:- +87168:21499737076344:undef:undef:undef:undef +67323:83794068985826:81674417462827:+:2119651522999:- +35696:71793903618027:undef:undef:undef:undef +38329:576830177680735:81417497488919:+:495412680191816:- +98430:153932887634885:undef:undef:undef:undef +44287:961212849119997:329252352183493:+:631960496936504:- +80114:2073377669411928:undef:undef:undef:undef +21985:1142628526143325:undef:undef:undef:undef +95702:3519719893062649:2345732111130685:+:1173987781931964:- +36683:36240802656077687:36121261257571965:+:119541398505722:- +57437:63961527822744327:56295543221672336:+:7665984601071991:- +82822:31431824267977187:17745534651980697:+:13686289615996490:- +80688:582438795398887924:undef:undef:undef:undef +42150:505083778882003806:undef:undef:undef:undef +28531:552597772997540668:275049629327330799:+:277548143670209869:- +95246:2285477974569930952:undef:undef:undef:undef +72972:5744301120023747275:389581568861995358:+:5354719551161751917:- +55924:9699425614779400010:undef:undef:undef:undef +38810:71247342879162927174:undef:undef:undef:undef +73531:23761524533664966739:12588298652390403766:+:11173225881274562973:- +87047:64580830908918491764:31801869299468001763:+:32778961609450490001:- +88987:188928485915225434897:177983894627812811515:+:10944591287412623382:- +13937:422277203317703208772:undef:undef:undef:undef +71839:958335971287091697434:636613945374554072091:+:321722025912537625343:- +14192:8193234122196675355090:undef:undef:undef:undef +12907:6092668016938878540380:2807243875163516749023:+:3285424141775361791357:- +40341:1713352207648418574849:undef:undef:undef:undef +74188:29876754952189326524545:19276845706804961621157:+:10599909245384364903388:- +83314:41298418475555864250535:21018998471073232731779:+:20279420004482631518756:- +13233:70540662004411377734367:undef:undef:undef:undef +73726:783349644379794061043009:436406694295245659186983:+:346942950084548401856026:- +44560:574722775454549706194083:458810890737089243681376:+:115911884717460462512707:- +14607:101779793656446637398062:47374602387223980808477:+:54405191269222656589585:- +71137:4450203389539795390387819:undef:undef:undef:undef +80078:6660533485970888552376949:831672548343151859876834:+:5828860937627736692500115:- +13608:9440367365941748799297120:undef:undef:undef:undef +50921:401:334:+:67:- +97877:451:406:+:45:- +19409:830:549:+:281:- +16269:3792:undef:undef:undef:undef +70989:2774:2075:+:699:- +65551:3621:1495:+:2126:- +83741:83707:2462:+:81245:- +31113:54174:undef:undef:undef:undef +66345:51476:4961:+:46515:- +48935:342063:185225:+:156838:- +42414:875110:undef:undef:undef:undef +12980:776423:402747:+:373676:- +60246:4483256:undef:undef:undef:undef +64256:3644966:undef:undef:undef:undef +93314:9976772:undef:undef:undef:undef +51611:45112350:14680241:+:30432109:- +43979:87221209:29022833:+:58198376:- +54687:55376443:20701739:+:34674704:- +70901:189511063:135820583:+:53690480:- +54163:378435914:343997079:+:34438835:- +78792:595879530:undef:undef:undef:undef +10294:7336496613:6104244559:+:1232252054:- +56674:5083165310:undef:undef:undef:undef +34634:9572355226:undef:undef:undef:undef +21086:61069971786:undef:undef:undef:undef +58811:81915555957:31578947555:+:50336608402:- +98975:79653570706:53279969639:+:26373601067:- +73167:689028842678:328773558511:+:360255284167:- +15032:304619675359:57572145935:+:247047529424:- +62170:562667586156:undef:undef:undef:undef +86350:5600213062628:undef:undef:undef:undef +57494:9614681701251:8800442211854:+:814239489397:- +65855:8108371810902:4947393456923:+:3160978353979:- +44721:78314548293886:13305470314549:+:65009077979337:- +14231:37307879463486:13220689771229:+:24087189692257:- +58181:40167230101095:20870307591071:+:19296922510024:- +39497:178283607402271:144917214361848:+:33366393040423:- +89106:613175635644377:116729494169142:+:496446141475235:- +24062:687079804792199:260160589371695:+:426919215420504:- +36662:3412808637818018:undef:undef:undef:undef +38271:4993604904186131:4843813719476934:+:149791184709197:- +61833:3395224137472925:2258485986421472:+:1136738151051453:- +42304:95477492302360853:36984438028526553:+:58493054273834300:- +85694:35600816286320844:undef:undef:undef:undef +56273:35448665629382790:25707259177038407:+:9741406452344383:- +56222:410518276617429503:225382726412262041:+:185135550205167462:- +61680:646852640607786873:undef:undef:undef:undef +56894:101601632777376973:56090373042933057:+:45511259734443916:- +24811:4362474477594006202:2954266098606847455:+:1408208378987158747:- +47260:7683273992890237308:undef:undef:undef:undef +40228:7165125207818969985:573345382419440797:+:6591779825399529188:- +80803:84606033017234785607:45169358295242644658:+:39436674721992140949:- +35633:67853495818823395226:undef:undef:undef:undef +44976:89501753171236978693:23280883367802859608:+:66220869803434119085:- +20341:525528354368398409736:391620805049711572429:+:133907549318686837307:- +17454:448296269669821284323:6498164101436048180:+:441798105568385236143:- +18266:855807357200009516963:484876291452036488068:+:370931065747973028895:- +74379:2064661858057186460708:1503575931425880447851:+:561085926631306012857:- +66166:4921748401007848145616:undef:undef:undef:undef +45793:9514243759286877591576:6189982406054068178233:+:3324261353232809413343:- +18732:94295295764660778831004:undef:undef:undef:undef +82599:83255979511964457472937:67862508415380707130600:+:15393471096583750342337:- +97795:87545737247545873294574:65770978693332408168369:+:21774758554213465126205:- +54745:550261459492542921785157:10976080258760742909661:+:539285379233782178875496:- +42622:681641273645333525479165:337782021976047332167553:+:343859251669286193311612:- +42088:741827036299760514271235:570171136600954021957807:+:171655899698806492313428:- +67498:6550918562528418654558104:undef:undef:undef:undef +56270:8864972916949669226442287:7835741211486150672037676:+:1029231705463518554404611:- +52707:7920325982802298747009841:1379636724687572899165146:+:6540689258114725847844695:- +83286:303:undef:undef:undef:undef +62219:403:326:+:77:- +60122:999:752:+:247:- +79471:5910:1741:+:4169:- +28644:8905:7834:+:1071:- +40773:6832:5085:+:1747:- +57803:67038:21683:+:45355:- +28648:62012:undef:undef:undef:undef +86481:90641:40113:+:50528:- +44257:164383:26:+:164357:- +43288:441496:undef:undef:undef:undef +15300:173438:undef:undef:undef:undef +64389:2402832:undef:undef:undef:undef +49675:1431753:310792:+:1120961:- +27031:2443360:1937351:+:506009:- +15690:68340859:20040554:+:48300305:- +77840:58531451:442896:+:58088555:- +13208:31527760:undef:undef:undef:undef +17562:495099648:undef:undef:undef:undef +93813:548117276:192831085:+:355286191:- +55647:398926417:318807064:+:80119353:- +53915:1711432114:1161513725:+:549918389:- +78834:6272337255:undef:undef:undef:undef +79562:3645096056:undef:undef:undef:undef +95905:23848163250:undef:undef:undef:undef +77158:35981680866:undef:undef:undef:undef +75958:66383765408:undef:undef:undef:undef +22357:539401373296:236948646381:+:302452726915:- +25771:735738107887:438513730051:+:297224377836:- +83354:666169508427:662517140630:+:3652367797:- +69929:5323662781011:1777320300383:+:3546342480628:- +14762:4661504054560:undef:undef:undef:undef +75358:4516377948158:undef:undef:undef:undef +90004:29675392756153:23274695014106:+:6400697742047:- +88499:56864787868687:2552197622735:+:54312590245952:- +11845:42409240189444:38904077999029:+:3505162190415:- +95443:801932046386432:45153471886683:+:756778574499749:- +83076:612586904946862:undef:undef:undef:undef +13643:518127002856406:370622401295585:+:147504601560821:- +75247:2235081278093313:661699544594266:+:1573381733499047:- +43709:2933526052767664:1612301731122597:+:1321224321645067:- +39412:7098306893331081:4543514361059149:+:2554792532271932:- +57928:66909947699599886:undef:undef:undef:undef +91436:24155884090393154:undef:undef:undef:undef +74343:86765416480816093:25222111235313568:+:61543305245502525:- +78742:857311748410562755:211077987178831883:+:646233761231730872:- +32733:746784599719552847:608004447576637747:+:138780152142915100:- +56396:418839627671856927:295503403529248799:+:123336224142608128:- +19339:6708040388345093314:3615730544914900083:+:3092309843430193231:- +52591:7788956835575156606:209271472469960569:+:7579685363105196037:- +39431:6266184931331947233:1341879880301462363:+:4924305051030484870:- +41048:47417513058902087166:undef:undef:undef:undef +21660:51830240670458603260:undef:undef:undef:undef +44649:51877712731989144474:undef:undef:undef:undef +73019:331734891948663182211:76656251548909104116:+:255078640399754078095:- +34440:864789807931877675606:undef:undef:undef:undef +64259:703927794690955719008:168163145649650029451:+:535764649041305689557:- +60359:3488776244569618305291:1284094386079269707423:+:2204681858490348597868:- +52349:3248466374539030291737:1839901965750678105599:+:1408564408788352186138:- +74472:9121556428179600114232:undef:undef:undef:undef +17120:82426360062482705699251:69662792274769992334256:+:12763567787712713364995:- +81472:39443110493482443636332:undef:undef:undef:undef +19672:83904640536249669184777:15520993641287746348282:+:68383646894961922836495:- +68032:119800381755879704745542:undef:undef:undef:undef +14671:954262899852278932582327:402168053287890439653502:+:552094846564388492928825:- +36253:443839688788582885696215:76811579937096765091387:+:367028108851486120604828:- +47442:7740282115972000012107365:6537358545273851618505333:+:1202923570698148393602032:- +57997:8939664203212718558761393:144121006776279667093848:+:8795543196436438891667545:- +17258:7760906177749602734444441:4751969844725927227655256:+:3008936333023675506789185:- +382831:106:31:+:75:- +717117:103:10:+:93:- +419761:407:342:+:65:- +684662:4655:3198:+:1457:- +556811:2962:1843:+:1119:- +626426:7825:7476:+:349:- +112655:18932:16467:+:2465:- +157265:49416:undef:undef:undef:undef +291654:90355:26274:+:64081:- +807757:623431:443710:+:179721:- +442546:568999:43215:+:525784:- +289219:924202:640281:+:283921:- +833993:2659795:1234522:+:1425273:- +999098:6219865:628207:+:5591658:- +505319:2755392:2469143:+:286249:- +764906:12242940:undef:undef:undef:undef +918854:73975799:65188187:+:8787612:- +936006:30713686:undef:undef:undef:undef +389728:795593461:758821597:+:36771864:- +410283:741247715:651515627:+:89732088:- +863639:585548132:571731827:+:13816305:- +125309:6615586655:286091694:+:6329494961:- +480278:4014177658:undef:undef:undef:undef +925749:4780108001:4121162366:+:658945635:- +475705:24893120028:14124512401:+:10768607627:- +473425:87402742205:undef:undef:undef:undef +162850:42138962711:8101496982:+:34037465729:- +369524:695913039381:20096361923:+:675816677458:- +444258:292213659559:20466098567:+:271747560992:- +884807:457111564133:undef:undef:undef:undef +281219:1590542162352:961144031675:+:629398130677:- +804856:2407803162606:undef:undef:undef:undef +822000:3350634512904:undef:undef:undef:undef +598343:67175827791178:58266885156747:+:8908942634431:- +937636:75374900754845:66856561699511:+:8518339055334:- +280101:27516849888005:2272956383086:+:25243893504919:- +765769:444946424695660:378358060297849:+:66588364397811:- +487005:487216452554724:undef:undef:undef:undef +855715:384585362270430:undef:undef:undef:undef +698372:7908658805163105:3462498457802783:+:4446160347360322:- +632229:2511136767015791:609202751199510:+:1901934015816281:- +208970:8888361715251666:undef:undef:undef:undef +401349:36108675628456296:undef:undef:undef:undef +925300:55356712541430465:undef:undef:undef:undef +303003:41761421281752209:40610443802572423:+:1150977479179786:- +635914:981321060783996848:undef:undef:undef:undef +190581:427930897683537197:221145120715371477:+:206785776968165720:- +549281:748948330472277438:663033772526420579:+:85914557945856859:- +354269:5893703143293242918:3442303672061807981:+:2451399471231434937:- +710612:6918684676947796782:undef:undef:undef:undef +853751:7927181203332586141:3677177121636871590:+:4250004081695714551:- +592571:66770693307736120675:undef:undef:undef:undef +745402:59943273086564553698:undef:undef:undef:undef +773173:96349752291182430150:86164883892055274887:+:10184868399127155263:- +530230:287836166439751422245:undef:undef:undef:undef +454814:922181329183811692864:undef:undef:undef:undef +518268:574756602784127806156:undef:undef:undef:undef +247355:7418956658440683711794:921569656110644408759:+:6497387002330039303035:- +823678:2873948921091979292348:undef:undef:undef:undef +283466:1575257888013435070365:216211322165405086616:+:1359046565848029983749:- +408360:21006006664466201784742:undef:undef:undef:undef +213820:41933472515487093544690:undef:undef:undef:undef +273073:25637866891571493627319:25536938909279434889731:+:100927982292058737588:- +805921:583528496246165735568236:236979959866886837238733:+:346548536379278898329503:- +704630:708614124591982597303827:252969299062968432232499:+:455644825529014165071328:- +477264:311205711857391112764521:11178298632143333346161:+:300027413225247779418360:- +349453:6763935493186266387995961:5787300886587669600619369:+:976634606598596787376592:- +643778:4147884835388304212949000:undef:undef:undef:undef +572752:9821905182359163933880667:5602470606793029472376784:+:4219434575566134461503883:- +632767:177:22:+:155:- +742290:747:undef:undef:undef:undef +746580:605:undef:undef:undef:undef +514793:4052:3173:+:879:- +768150:2466:undef:undef:undef:undef +740768:3437:undef:undef:undef:undef +694815:56911:29751:+:27160:- +715166:51131:23805:+:27326:- +808376:62553:19547:+:43006:- +147052:984361:738659:+:245702:- +498692:851983:88690:+:763293:- +494188:397185:350032:+:47153:- +272826:2788180:undef:undef:undef:undef +773723:7532270:564957:+:6967313:- +395098:7545730:undef:undef:undef:undef +699345:89927315:undef:undef:undef:undef +224792:67285618:undef:undef:undef:undef +697669:81520153:71513539:+:10006614:- +324805:481692647:421692582:+:60000065:- +428617:402652709:152198754:+:250453955:- +514180:510342810:undef:undef:undef:undef +395725:3398841176:2718806685:+:680034491:- +806085:5698228763:410003:+:5697818760:- +758866:4322509093:3687865242:+:634643851:- +538156:77259565152:undef:undef:undef:undef +861626:99725953338:undef:undef:undef:undef +941426:32855708545:11253729141:+:21601979404:- +512447:458023172924:315051535387:+:142971637537:- +307841:665601770687:110657232214:+:554944538473:- +941029:327506810106:36185080963:+:291321729143:- +718771:3597435030808:1809635880947:+:1787799149861:- +298877:6228183425854:2054437603389:+:4173745822465:- +657362:8896035441363:3819304751975:+:5076730689388:- +983132:15337674725688:undef:undef:undef:undef +572519:51599947378070:42955598189789:+:8644349188281:- +783869:46509794992104:4158041615693:+:42351753376411:- +168841:686165777373698:598973171587469:+:87192605786229:- +559479:682137073335004:300596599238539:+:381540474096465:- +942932:437113917060902:undef:undef:undef:undef +338412:3686202417377629:2487433949830201:+:1198768467547428:- +306985:8677250419071127:8352671476900683:+:324578942170444:- +322580:5187869531140500:undef:undef:undef:undef +591139:57010140644545818:1961324206807753:+:55048816437738065:- +122341:67475431753406564:53020783553757393:+:14454648199649171:- +273725:19134232963006239:12319796699728496:+:6814436263277743:- +620624:826910793389445439:345313174179453558:+:481597619209991881:- +944479:710937883202665508:505322096958990307:+:205615786243675201:- +451792:937349094102674468:undef:undef:undef:undef +147549:8477810633609011265:6028278458317959694:+:2449532175291051571:- +616918:8411386103591141220:undef:undef:undef:undef +942364:4699569402055856939:3771772934590336405:+:927796467465520534:- +162166:27766221702807353760:undef:undef:undef:undef +637904:37231375489384578801:17213464532214448682:+:20017910957170130119:- +954541:76734375969851776738:7952619752917398747:+:68781756216934377991:- +624837:272605072424432719366:10291017414697783557:+:262314055009734935809:- +121192:122487450191181185805:75788553926712188758:+:46698896264468997047:- +268360:981854519563685868649:56604081354038545513:+:925250438209647323136:- +916836:6637592345059956856520:undef:undef:undef:undef +441129:2647896397994030451970:undef:undef:undef:undef +823605:2802945094980419491281:undef:undef:undef:undef +139047:19381283931542615172863:11766735182585488990505:+:7614548748957126182358:- +120641:50372794116225478202470:31694847156227514687321:+:18677946959997963515149:- +953271:47209627946576472296148:undef:undef:undef:undef +775455:392255910173754346925186:85612860244627669513693:+:306643049929126677411493:- +140559:135415313275231958248312:78792118585183771265719:+:56623194690048186982593:- +215908:497422538654129493080626:undef:undef:undef:undef +577226:4521763030457479977050766:undef:undef:undef:undef +336483:2232566503385192143558853:1124361370699712245359616:+:1108205132685479898199237:- +981167:6843711597542215307891114:4611346410900401562549859:+:2232365186641813745341255:- +384131:622:453:+:169:- +181105:423:319:+:104:- +570259:281:23:+:258:- +329944:7089:5047:+:2042:- +561533:4250:3947:+:303:- +405819:1903:448:+:1455:- +336386:76290:undef:undef:undef:undef +867738:34849:1659:+:33190:- +714000:98618:undef:undef:undef:undef +619328:981451:311307:+:670144:- +786505:117946:undef:undef:undef:undef +435392:830764:undef:undef:undef:undef +651818:8574777:5674496:+:2900281:- +480257:3059661:2685206:+:374455:- +353610:5297044:undef:undef:undef:undef +910137:56231142:undef:undef:undef:undef +355928:58325778:undef:undef:undef:undef +724522:69346199:44096622:+:25249577:- +499739:330788839:172319791:+:158469048:- +327111:939191164:684228431:+:254962733:- +472957:732312861:30862129:+:701450732:- +315354:7945494854:undef:undef:undef:undef +171166:5793356868:undef:undef:undef:undef +673466:5926567000:undef:undef:undef:undef +542169:34068655996:14872302481:+:19196353515:- +488992:55628620336:undef:undef:undef:undef +529192:71983604434:undef:undef:undef:undef +667352:547530454020:undef:undef:undef:undef +538746:688567179180:undef:undef:undef:undef +691318:310492895010:undef:undef:undef:undef +971750:4971972745075:undef:undef:undef:undef +177937:1728934359308:1206222653517:+:522711705791:- +953866:3223373361009:2536471972639:+:686901388370:- +649883:25735972780719:14691272721566:+:11044700059153:- +487790:51361382665588:undef:undef:undef:undef +805205:60948831728458:5404747153715:+:55544084574743:- +825454:803153870451243:680008099016782:+:123145771434461:- +501634:295744879767085:undef:undef:undef:undef +723977:656459776539322:361057093443225:+:295402683096097:- +482314:7295333069242471:1144969516419692:+:6150363552822779:- +540249:4402023467326955:1658366105693214:+:2743657361633741:- +893695:4825358999012802:3596130116908447:+:1229228882104355:- +101240:16095502213089530:undef:undef:undef:undef +609077:17767089769624938:5993257331516477:+:11773832438108461:- +703613:78880725431326108:62187266924516805:+:16693458506809303:- +605705:347210793890707535:undef:undef:undef:undef +238251:240645097627324140:undef:undef:undef:undef +174861:876902513002318198:153630074664024671:+:723272438338293527:- +517381:7043969400121315143:39713980103934772:+:7004255420017380371:- +771785:4487637387894239639:3695517362608124501:+:792120025286115138:- +447938:7834219846849074810:undef:undef:undef:undef +209346:19255366498759217994:undef:undef:undef:undef +317635:58737738345751323480:undef:undef:undef:undef +760038:46133404113582846836:undef:undef:undef:undef +822994:802960977149957178156:undef:undef:undef:undef +241095:362329256848889171494:87752826216485151549:+:274576430632404019945:- +139743:633877051500154062148:206089535489133621431:+:427787516011020440717:- +887511:7138089737316897145151:4236747582041654894125:+:2901342155275242251026:- +282482:1626761793485259811961:978578285630835749064:+:648183507854424062897:- +674434:7454296133153187786883:3122345988973533496578:+:4331950144179654290305:- +512730:35662057354117934011677:undef:undef:undef:undef +909680:42958046596782067778330:undef:undef:undef:undef +215104:21641846102796689784700:undef:undef:undef:undef +858399:385948280960999152058926:132497673940625236188007:+:253450607020373915870919:- +749618:151346969987709476166566:undef:undef:undef:undef +775387:985944457205300862827049:629593437408311280197449:+:356351019796989582629600:- +634377:9780181173730606721674489:4342718216046817939156301:+:5437462957683788782518188:- +396769:4651478410441148680581255:133752176164778662891384:+:4517726234276370017689871:- +580645:2030126568350526726340113:1174794871183466290528789:+:855331697167060435811324:- +5655726:650:undef:undef:undef:undef +3608982:289:52:+:237:- +3994088:988:undef:undef:undef:undef +7408347:5829:undef:undef:undef:undef +6570293:5046:4895:+:151:- +2890506:9077:4893:+:4184:- +6086931:77051:63685:+:13366:- +9725532:81184:undef:undef:undef:undef +3784159:39899:19579:+:20320:- +2339493:174015:undef:undef:undef:undef +6826489:275682:220681:+:55001:- +2169905:760478:194359:+:566119:- +7222334:6672310:undef:undef:undef:undef +8569540:8430670:undef:undef:undef:undef +6237287:1702120:undef:undef:undef:undef +1349592:35915708:undef:undef:undef:undef +6392461:75985359:69538849:+:6446510:- +1446994:73189513:47624214:+:25565299:- +7813298:350360055:33907847:+:316452208:- +9584516:362140747:99892152:+:262248595:- +5570997:148703918:123670023:+:25033895:- +6112527:8040634747:290170592:+:7750464155:- +3461395:8025326446:639087155:+:7386239291:- +4897564:8970391267:1434894011:+:7535497256:- +9607393:32750238212:28034434321:+:4715803891:- +3832850:78792881419:undef:undef:undef:undef +8851804:22858007922:undef:undef:undef:undef +1926904:516326307131:423786215980:+:92540091151:- +3263965:248639556344:137406136765:+:111233419579:- +7603082:530885166191:87600135089:+:443285031102:- +4656704:1435763396658:undef:undef:undef:undef +7148411:6170426462326:5267412128309:+:903014334017:- +3370569:7383771232117:1931141415391:+:5452629816726:- +7335959:18179577148530:undef:undef:undef:undef +4618936:79311665961500:undef:undef:undef:undef +5696694:83331248251003:48001187101587:+:35330061149416:- +2580167:497964663022384:240219396188711:+:257745266833673:- +5051426:589883351073091:313902297734522:+:275981053338569:- +2013014:429904889194083:317067920484407:+:112836968709676:- +4325378:9363324821601336:undef:undef:undef:undef +9951937:9472111213174491:5831893583579347:+:3640217629595144:- +2421719:3874308727618692:2231865566641979:+:1642443160976713:- +3441677:43388202854410561:24971926384476198:+:18416276469934363:- +5341718:48133956794968491:15711141966571814:+:32422814828396677:- +1084162:52310224670223110:undef:undef:undef:undef +8615182:454607533478095087:416897856881371116:+:37709676596723971:- +6803890:848484711729563233:791753912200782239:+:56730799528780994:- +5493160:854968170156028301:558889627922417266:+:296078542233611035:- +2399932:6737630109030661791:3929904292027376668:+:2807725817003285123:- +3278186:5488017662014808795:3320998121828418196:+:2167019540186390599:- +2489290:8830356345749585901:3752975054234879683:+:5077381291514706218:- +4328469:40513947193980502625:36865597299144041004:+:3648349894836461621:- +9173561:98904160883542453015:19208950310268847476:+:79695210573273605539:- +9826877:90940744520365774570:78006721019280311133:+:12934023501085463437:- +3769503:127891799836486803766:55249179630612139173:+:72642620205874664593:- +6521895:240621606922309617823:86451695485634236377:+:154169911436675381446:- +2622185:738592398848526776969:636218095841266628964:+:102374303007260148005:- +9815218:7848804102470473986906:undef:undef:undef:undef +3703032:8465216333795486974630:undef:undef:undef:undef +8496388:5415092488122079939709:3682290399540579299418:+:1732802088581500640291:- +8007665:19690434466885834488861:6482289419367856225613:+:13208145047517978263248:- +7422032:39714283117701951853164:undef:undef:undef:undef +8439818:62331767931472602549127:31523309711269149029452:+:30808458220203453519675:- +9210966:223916956320044777640909:undef:undef:undef:undef +2026494:739643382110251162682367:undef:undef:undef:undef +6855455:307340164166749910577130:undef:undef:undef:undef +8977941:7108747225126491549407356:4383611100263026771996661:+:2725136124863464777410695:- +7889075:3965408073830288016838065:undef:undef:undef:undef +2525554:1897650533385450917294537:1637642278474554210721833:+:260008254910896706572704:- +5584060:299:14:+:285:- +6799080:658:undef:undef:undef:undef +7990684:358:undef:undef:undef:undef +5335427:1930:183:+:1747:- +9523579:4713:4642:+:71:- +6177948:9370:undef:undef:undef:undef +1119747:22709:7601:+:15108:- +7600932:81364:undef:undef:undef:undef +8958647:92225:56283:+:35942:- +8029198:716576:undef:undef:undef:undef +3641727:184417:179614:+:4803:- +3652069:825338:810557:+:14781:- +5128081:2848667:1763517:+:1085150:- +7750798:8077812:undef:undef:undef:undef +4455239:7339175:5178109:+:2161066:- +3093378:96932285:24946657:+:71985628:- +3825375:94728039:undef:undef:undef:undef +5134480:55790850:undef:undef:undef:undef +5843118:950902156:undef:undef:undef:undef +3543179:948720653:792525692:+:156194961:- +8278923:856949252:505624635:+:351324617:- +4948912:8043341398:undef:undef:undef:undef +4717992:7074562270:undef:undef:undef:undef +4439344:5053238197:undef:undef:undef:undef +6478431:33174024118:32766110109:+:407914009:- +8260320:41943574978:undef:undef:undef:undef +4469287:74392333598:30916793407:+:43475540191:- +6277695:934317508471:undef:undef:undef:undef +4749423:896523624157:undef:undef:undef:undef +7669479:775568096961:undef:undef:undef:undef +6421484:6712822863626:undef:undef:undef:undef +3985051:7259653372363:undef:undef:undef:undef +3828425:2858016031505:undef:undef:undef:undef +9566141:48779533187481:42537945834266:+:6241587353215:- +3649295:92721133556283:90728590685468:+:1992542870815:- +3016054:88025249075383:41144908998232:+:46880340077151:- +9766358:617052500212228:undef:undef:undef:undef +5082051:886792609787086:102690844943809:+:784101764843277:- +2498957:347103253520820:52182225902933:+:294921027617887:- +8334307:1284959991449047:945037226306456:+:339922765142591:- +8894360:3906581887521471:3236072401706495:+:670509485814976:- +6870726:4772488827481455:undef:undef:undef:undef +6184958:28454121310901697:19411404559686758:+:9042716751214939:- +3522143:41612053000600739:36317506394217007:+:5294546606383732:- +4304441:70048374385642233:4114415889902438:+:65933958495739795:- +1652881:514683315419730432:117278086647786097:+:397405228771944335:- +9213401:482079779283727026:4241102336677031:+:477838676947049995:- +8691976:894513960165746060:undef:undef:undef:undef +4229372:6011409689055449759:4869306775314314947:+:1142102913741134812:- +4912254:3199406486470045574:undef:undef:undef:undef +8498841:2229300887748970359:undef:undef:undef:undef +8954335:41184289836022375422:815339321994470671:+:40368950514027904751:- +1009461:34001895483077710264:15301006226029382829:+:18700889257048327435:- +8668636:47774777508019969258:undef:undef:undef:undef +3109154:702540636028380576948:undef:undef:undef:undef +7565133:791565463176335885267:132203547745301788704:+:659361915431034096563:- +5564293:200450660661470063226:115111052230699148713:+:85339608430770914513:- +5062883:9745337553843068528744:2388361600719070882011:+:7356975953123997646733:- +5544874:9122407409577669572139:8597591364840157589749:+:524816044737511982390:- +2369312:3743304529754686176140:undef:undef:undef:undef +5655057:58509875238574917147632:23592319989945361249697:+:34917555248629555897935:- +2793401:67557641498214083216043:18386269656782813948450:+:49171371841431269267593:- +8818345:81496249819128302370245:undef:undef:undef:undef +6760979:888850306283185647734787:106482125846531978903816:+:782368180436653668830971:- +1318857:644102268401771887439494:354656547596101115368515:+:289445720805670772070979:- +1469734:736040113380453948588461:266608425089174045948582:+:469431688291279902639879:- +5121285:9601561590963161796090882:undef:undef:undef:undef +6927156:9229182964914688893546290:undef:undef:undef:undef +4640276:7976308977153836912623731:429005357782839459364463:+:7547303619370997453259268:- +7101148:854:undef:undef:undef:undef +6076771:264:139:+:125:- +6612600:848:undef:undef:undef:undef +2678598:9076:undef:undef:undef:undef +2156938:5262:undef:undef:undef:undef +6044361:9080:8321:+:759:- +3755070:59427:undef:undef:undef:undef +7735501:78797:32160:+:46637:- +3448279:39227:24871:+:14356:- +9588069:712170:undef:undef:undef:undef +8113600:452368:undef:undef:undef:undef +6544638:958299:undef:undef:undef:undef +6256630:2225256:undef:undef:undef:undef +5319614:4376179:3700276:+:675903:- +6275684:7465629:4048277:+:3417352:- +5938383:13804321:12046313:+:1758008:- +8892727:55320736:28785159:+:26535577:- +9281954:65094277:18752273:+:46342004:- +1822497:634656245:436628893:+:198027352:- +4517402:190358780:undef:undef:undef:undef +3949561:577176744:28746889:+:548429855:- +1075019:7220797529:undef:undef:undef:undef +9765271:7472577100:5173287231:+:2299289869:- +7565124:6576126932:undef:undef:undef:undef +6195215:87608631649:49129286286:+:38479345363:- +2447144:57536659087:34830154668:+:22706504419:- +3180977:98414048530:37379850253:+:61034198277:- +1104803:627059414840:270402746227:+:356656668613:- +1028368:257664539394:undef:undef:undef:undef +5133914:532298581860:undef:undef:undef:undef +5853706:5308776986855:2036306624481:+:3272470362374:- +6678336:6754726066067:undef:undef:undef:undef +8137003:6288209136044:5914276052907:+:373933083137:- +8436713:31744903237494:7106441987477:+:24638461250017:- +7379836:94035085081621:12551834893859:+:81483250187762:- +3428625:29877201406682:16619274704349:+:13257926702333:- +1437480:790119172411982:undef:undef:undef:undef +1978104:694886646181275:undef:undef:undef:undef +8626883:932583923685966:484268741787419:+:448315181898547:- +1843744:7728826487085202:undef:undef:undef:undef +1689669:7974776447223703:271922352975847:+:7702854094247856:- +5269097:1674442003893203:72130290476655:+:1602311713416548:- +4512971:28048666850403499:12739645886036889:+:15309020964366610:- +6716203:23390901946343390:11884782341961187:+:11506119604382203:- +9534275:45530591224539792:21921635799229163:+:23608955425310629:- +8013020:607750740458714954:undef:undef:undef:undef +5465320:549924104241758990:undef:undef:undef:undef +3828169:244572837794246744:240557944291503305:+:4014893502743439:- +2448215:2989639008883957686:1784429392382961449:+:1205209616500996237:- +4637181:2697623441723276177:2145171492485141412:+:552451949238134765:- +1498569:2252044799094634508:337652908604795485:+:1914391890489839023:- +1380733:27425035229245696125:20551759084815034522:+:6873276144430661603:- +7603533:10700369469374182322:4099510685967669067:+:6600858783406513255:- +3886222:47109075684322880926:undef:undef:undef:undef +6032858:556129359492489860272:undef:undef:undef:undef +5373365:640028922314168705131:45795824408434801950:+:594233097905733903181:- +4150394:633337905137269963366:undef:undef:undef:undef +1284277:2697754260575630665152:2186331303494684794525:+:511422957080945870627:- +9220237:8625984232394676377002:2602723732815164808861:+:6023260499579511568141:- +2645470:3898425419316240609841:1107558831692846248005:+:2790866587623394361836:- +5943212:87514893265709129839109:78741613611104386601400:+:8773279654604743237709:- +6994617:95912407644838149138781:undef:undef:undef:undef +4123100:30621985707378546077387:27976341504075325728784:+:2645644203303220348603:- +1505190:409057326086093205277094:undef:undef:undef:undef +5424393:365190044696996042947277:203545037635732495106077:+:161645007061263547841200:- +7579644:179553099975924754129516:undef:undef:undef:undef +4271192:9144689425720996342066606:undef:undef:undef:undef +5188945:3290122276906155297402712:567929059386448031616777:+:2722193217519707265785935:- +6444628:6249631352793282715425626:undef:undef:undef:undef +56815526:805:556:+:249:- +90755503:770:587:+:183:- +98439727:596:379:+:217:- +22474430:7378:undef:undef:undef:undef +19289674:4871:3857:+:1014:- +24509397:4030:1543:+:2487:- +62030412:23206:undef:undef:undef:undef +39217788:39034:undef:undef:undef:undef +56069302:84818:undef:undef:undef:undef +66324788:522304:undef:undef:undef:undef +18530567:582397:398855:+:183542:- +96798560:876003:530969:+:345034:- +81179764:6155531:123354:+:6032177:- +63326339:5290241:146387:+:5143854:- +29147342:5033996:undef:undef:undef:undef +18752415:10348213:6999909:+:3348304:- +52539894:19551663:undef:undef:undef:undef +27015317:61739495:41344143:+:20395352:- +84708377:919281123:868102370:+:51178753:- +85864590:297826256:undef:undef:undef:undef +35996649:819414809:584307755:+:235107054:- +75229591:2171426792:1109087967:+:1062338825:- +25718182:3110493853:536539944:+:2573953909:- +69461724:2669625813:undef:undef:undef:undef +72299495:90382180578:50819402375:+:39562778203:- +35203700:45524408629:undef:undef:undef:undef +54591713:59746606706:35317455319:+:24429151387:- +43725049:897870100804:688219771993:+:209650328811:- +59904750:347591214047:166475835265:+:181115378782:- +92814462:673437958045:517000080073:+:156437877972:- +67134428:3133662607307:479768789758:+:2653893817549:- +46510172:4008823306740:undef:undef:undef:undef +25893646:8170858852029:4390167435961:+:3780691416068:- +36410306:44715644560484:undef:undef:undef:undef +27419780:76275048350081:67131869367827:+:9143178982254:- +94170424:23254328710960:undef:undef:undef:undef +69450890:670439220834333:531417036196232:+:139022184638101:- +77976966:424569969701461:56050148124895:+:368519821576566:- +62440990:417130014208565:undef:undef:undef:undef +41343049:5637228499975107:3927317711174689:+:1709910788800418:- +95394679:3335484783591393:2850482859880636:+:485001923710757:- +42456309:5000937112814486:2846015824723787:+:2154921288090699:- +36127570:91149105559390967:2657395901697198:+:88491709657693769:- +12708835:36869763976600725:undef:undef:undef:undef +68949250:55721346766041169:40523938526553788:+:15197408239487381:- +23759782:493183027582267096:undef:undef:undef:undef +10985807:697493548323858106:107841850761271717:+:589651697562586389:- +30775812:640402397676048683:572039585948725382:+:68362811727323301:- +87602261:2111576025521252285:293865054674215696:+:1817710970847036589:- +59453561:9177486117054954593:8218160518851317534:+:959325598203637059:- +86666776:8568099406660577220:undef:undef:undef:undef +85488759:73641354847375916419:2582651606311777307:+:71058703241064139112:- +43486359:80562029236780559201:49577781407057245623:+:30984247829723313578:- +68562931:63822926861777136415:56596271446531244161:+:7226655415245892254:- +57516930:109556882616719282073:undef:undef:undef:undef +91054524:571273987348229732390:undef:undef:undef:undef +81528288:913437482584784518797:undef:undef:undef:undef +99911660:4950141751120231252285:undef:undef:undef:undef +13990875:8928299170359766356217:3977166213122118507721:+:4951132957237647848496:- +77450552:9633447200737521109817:7123597353372759571338:+:2509849847364761538479:- +99849234:62351929593531206742747:undef:undef:undef:undef +26192122:35144124563841590669403:9796592434889558819329:+:25347532128952031850074:- +53708361:62566467497821534152201:undef:undef:undef:undef +67777625:232717097222397862001502:31281896235547296178715:+:201435200986850565822787:- +31161293:323231468822941819103669:229611918826305543073306:+:93619549996636276030363:- +91110241:329106458814843970800581:28089579166305214489675:+:301016879648538756310906:- +51474694:3053822587493552051244323:1218446859834630780166504:+:1835375727658921271077819:- +27447303:4971868109554611327522578:3450168475006847962477095:+:1521699634547763365045483:- +76652381:8637884770632064105237081:2085070691702722033835788:+:6552814078929342071401293:- +48521962:694:undef:undef:undef:undef +48596127:856:839:+:17:- +84146878:427:184:+:243:- +62798715:9134:541:+:8593:- +25834783:1043:858:+:185:- +55793751:4869:undef:undef:undef:undef +81639641:29032:841:+:28191:- +59623450:99705:undef:undef:undef:undef +84135497:64036:689:+:63347:- +77151548:419165:141702:+:277463:- +44441096:156109:124268:+:31841:- +58134604:305586:undef:undef:undef:undef +18068112:7937375:2644548:+:5292827:- +49222480:7678482:undef:undef:undef:undef +18825853:7656298:5500627:+:2155671:- +65199433:64629347:38476889:+:26152458:- +15281900:60343996:undef:undef:undef:undef +20666769:18272977:8181257:+:10091720:- +41141537:677379590:447495573:+:229884017:- +18679281:845663650:421949571:+:423714079:- +50105911:621004816:18234343:+:602770473:- +18791786:9798565996:undef:undef:undef:undef +40518921:1877096876:134204697:+:1742892179:- +33212177:1482811828:1044348377:+:438463451:- +36035592:37291748667:undef:undef:undef:undef +84032327:94198644633:28947543821:+:65251100812:- +52509174:65971297521:undef:undef:undef:undef +47385209:322740096521:104496652436:+:218243444085:- +37318176:170793088515:undef:undef:undef:undef +60574438:512852464945:171278522527:+:341573942418:- +36400188:5484916608000:undef:undef:undef:undef +83223321:3664681424027:1458958901295:+:2205722522732:- +44722194:1760869789814:undef:undef:undef:undef +94352998:10900374499523:6185481313898:+:4714893185625:- +68109005:10840226656418:10112021763371:+:728204893047:- +94059901:39993251959655:28615749964046:+:11377501995609:- +27315027:402965754303983:311724543018810:+:91241211285173:- +12864333:778107077930471:375050121352547:+:403056956577924:- +59053655:102905122720754:60686680699083:+:42218442021671:- +51804535:9307919041555425:undef:undef:undef:undef +76195770:5466923835123176:undef:undef:undef:undef +93471761:6345935241859625:2083865459463966:+:4262069782395659:- +33570183:61185607853401404:undef:undef:undef:undef +35499121:75849646070631348:22479829913500069:+:53369816157131279:- +37200756:51814119082729596:undef:undef:undef:undef +93259441:567384336938641594:202917177634233729:+:364467159304407865:- +70802854:193319754475168628:undef:undef:undef:undef +20752886:905606253856984890:undef:undef:undef:undef +11467604:9218626987938898390:undef:undef:undef:undef +88185572:4669885828161683495:2328817213802521173:+:2341068614359162322:- +80790660:6445566315406924693:2833016907261817062:+:3612549408145107631:- +50627714:11088833353032449016:undef:undef:undef:undef +92324997:15664530676890811099:9884176997121608512:+:5780353679769202587:- +54831892:64935749703708330568:undef:undef:undef:undef +68138945:943461738383586835873:609569461046503699945:+:333892277337083135928:- +93166751:697894432631572005262:149812410202525239179:+:548082022429046766083:- +46484870:990801754101308640954:undef:undef:undef:undef +10553539:1171463360891161974574:607894828392506981503:+:563568532498654993071:- +10033196:1088007293491080230421:1024060976396162358788:+:63946317094917871633:- +47228752:7879205525885164834759:2560001167724755786448:+:5319204358160409048311:- +16708238:93659694480091921619067:24815547177835449180566:+:68844147302256472438501:- +37601284:15633449594452509144565:6692113211069073883384:+:8941336383383435261181:- +21481753:90038249629096778504710:88025878736918119975657:+:2012370892178658529053:- +45900111:400941147310599293692930:118358291678862165481571:+:282582855631737128211359:- +68810788:937888432093836684889312:undef:undef:undef:undef +32925170:539819639305432274019558:undef:undef:undef:undef +72237529:6139984266288987531023882:3896023742342755757318091:+:2243960523946231773705791:- +66055160:9322487012180571255660365:undef:undef:undef:undef +82241635:4861039800604203190504430:undef:undef:undef:undef +23739681:563:409:+:154:- +36893166:776:undef:undef:undef:undef +39554904:759:undef:undef:undef:undef +49258679:9607:6468:+:3139:- +99371686:3376:undef:undef:undef:undef +33369757:1684:161:+:1523:- +70264152:42138:undef:undef:undef:undef +33462000:57276:undef:undef:undef:undef +62361299:91188:58235:+:32953:- +85650721:845680:213681:+:631999:- +24277050:699841:644439:+:55402:- +25711842:413055:undef:undef:undef:undef +12447729:9919240:193529:+:9725711:- +96556227:6470183:2254031:+:4216152:- +28835465:4283301:1398572:+:2884729:- +80132637:42185681:29908304:+:12277377:- +35241370:33161806:undef:undef:undef:undef +89140386:64631484:undef:undef:undef:undef +30989165:596273032:309718157:+:286554875:- +12388482:842375810:undef:undef:undef:undef +68707400:161250250:undef:undef:undef:undef +13664862:9339533245:8347657963:+:991875282:- +79612588:5972694959:undef:undef:undef:undef +66729477:7299675050:5159351763:+:2140323287:- +49708234:68920434697:51294094315:+:17626340382:- +45613873:58147238900:35290164137:+:22857074763:- +43782671:74825659679:36217014252:+:38608645427:- +61002269:853269225033:828966503642:+:24302721391:- +26251544:751403385332:undef:undef:undef:undef +27722269:543551590424:71001340461:+:472550249963:- +78851606:2179596451570:undef:undef:undef:undef +25804423:4696530713654:2916148860253:+:1780381853401:- +71387805:7058973347511:undef:undef:undef:undef +64119687:19348771492733:2313296638554:+:17035474854179:- +28098583:71828271534611:18138890128088:+:53689381406523:- +17848938:31866503137897:12681264431078:+:19185238706819:- +63271259:968668422083848:331156433419067:+:637511988664781:- +99865602:671719468975839:undef:undef:undef:undef +89880032:193972817975472:undef:undef:undef:undef +39570681:4002837545604292:1256786106665245:+:2746051438939047:- +66051058:5329069590288729:3491143915437145:+:1837925674851584:- +48195503:3267457073288160:772598110702127:+:2494858962586033:- +27442817:17417928150703441:10140048125476522:+:7277880025226919:- +92153106:43772581597012442:undef:undef:undef:undef +77455337:49755332999608758:47739668468093075:+:2015664531515683:- +56212328:739660843721507256:undef:undef:undef:undef +66664067:186610646714807957:75155845224497067:+:111454801490310890:- +44142123:632473348084377463:330456029987885838:+:302017318096491625:- +41947281:6781341911666311815:undef:undef:undef:undef +77968394:3147167955135818645:2452530167309821539:+:694637787825997106:- +51368235:5383330098873455117:1540477274307520826:+:3842852824565934291:- +70685715:73978236652582036893:undef:undef:undef:undef +14029506:78383232893824454701:53764550254066435351:+:24618682639758019350:- +93017914:70937671158770576199:46305934243943565133:+:24631736914827011066:- +66353995:373480850604532194044:147356150678966755799:+:226124699925565438245:- +92938084:529689654952902920374:undef:undef:undef:undef +13412084:568384516281716860412:undef:undef:undef:undef +10071012:6330063941759886362600:undef:undef:undef:undef +51134181:1467192954784541197545:undef:undef:undef:undef +93121244:1427440391992557419063:916159427193218712485:+:511280964799338706578:- +41309652:67974030334244637655409:18567750682028200174479:+:49406279652216437480930:- +46116880:21275837137442429987308:undef:undef:undef:undef +82356374:12923467939382709352430:undef:undef:undef:undef +55366450:600506763374829419654035:undef:undef:undef:undef +34104424:220304456393449755266475:202200524540913547152799:+:18103931852536208113676:- +88038969:165677913359742976790445:undef:undef:undef:undef +63638993:4416974696703510241845051:1626003509190049054350461:+:2790971187513461187494590:- +88880457:6160127441683330345303948:3698331872350914226543417:+:2461795569332416118760531:- +22224266:3813357357407726021795654:undef:undef:undef:undef +883429905:239:131:+:108:- +843095866:601:235:+:366:- +197243366:182:undef:undef:undef:undef +154911512:5141:2551:+:2590:- +684843161:2221:1874:+:347:- +559491181:6435:3946:+:2489:- +121572434:83486:undef:undef:undef:undef +600400316:13111:12330:+:781:- +282716255:78439:53238:+:25201:- +288197999:101271:48194:+:53077:- +747532114:200228:undef:undef:undef:undef +431794237:930383:401484:+:528899:- +572708906:1842080:undef:undef:undef:undef +668180136:5909173:1403896:+:4505277:- +928079954:2330078:undef:undef:undef:undef +497337562:95933091:70951108:+:24981983:- +867263390:30144015:undef:undef:undef:undef +467930791:81260280:68031631:+:13228649:- +496061871:725410310:8978471:+:716431839:- +742700902:666139481:470001762:+:196137719:- +772610806:708497394:undef:undef:undef:undef +122392073:8252960557:5849450680:+:2403509877:- +748036066:9581456115:4389559126:+:5191896989:- +219508248:4210771028:undef:undef:undef:undef +593716482:21247936917:undef:undef:undef:undef +182449347:72475225103:64456164892:+:8019060211:- +314053899:31780217662:31189936465:+:590281197:- +200687800:521954653261:376627763655:+:145326889606:- +806215853:619611194613:4447405922:+:615163788691:- +625519048:932638846045:543707677862:+:388931168183:- +196373726:9669217505235:7762184472341:+:1907033032894:- +539566454:8865581563953:1085126661689:+:7780454902264:- +417298561:2311840425971:1005455288483:+:1306385137488:- +989243073:49832606587910:19083371313907:+:30749235274003:- +195957819:38364918117450:undef:undef:undef:undef +651199163:37681701261540:27078920707607:+:10602780553933:- +278027839:914043394179692:328502168026287:+:585541226153405:- +133110730:626224446433740:undef:undef:undef:undef +968325625:686344396032962:244300368685131:+:442044027347831:- +621285390:4311519283585095:undef:undef:undef:undef +767336537:9664107805517444:183460288872889:+:9480647516644555:- +588276529:3156955752166072:3154282686556065:+:2673065610007:- +935073468:43435916971067865:undef:undef:undef:undef +837523391:97280820491028275:82436855807677536:+:14843964683350739:- +568799219:51493119182065471:15334878988945222:+:36158240193120249:- +514230474:654095868247719919:2589149033732265:+:651506719213987654:- +188386003:120128586539588092:106977377324885299:+:13151209214702793:- +205028107:525637628572920391:82186297870224597:+:443451330702695794:- +994054000:2954713543860708334:undef:undef:undef:undef +774885303:4313366464358728081:21573498071706015:+:4291792966287022066:- +112043498:1731101813308863889:455029004039469849:+:1276072809269394040:- +208594103:31068771392561577293:28597068752221188318:+:2471702640340388975:- +488372701:66266215069889121202:64842385366783436653:+:1423829703105684549:- +343220148:77369409024585464276:undef:undef:undef:undef +314029158:196307421458445448775:116762791499706896597:+:79544629958738552178:- +441075525:474301702458929835745:undef:undef:undef:undef +109418169:800946160289866122897:undef:undef:undef:undef +236632924:3573718583127829454612:undef:undef:undef:undef +468200740:5411564248590924938866:undef:undef:undef:undef +350222056:6113166483154822185796:undef:undef:undef:undef +132461946:52328655294364796336187:undef:undef:undef:undef +887479370:44059129839001500314381:21422904208429019151527:+:22636225630572481162854:- +678448686:66904770167813977388667:undef:undef:undef:undef +768427425:377674300515566506794817:104210228506052186013696:+:273464072009514320781121:- +922098288:847269837350122098564638:undef:undef:undef:undef +284720405:365794083952128062573197:210438918605672507200620:+:155355165346455555372577:- +827723531:8794759148138489090701004:7161760586670868724155111:+:1632998561467620366545893:- +379286755:6081091408847129199173575:undef:undef:undef:undef +417201678:8698548455087166099684761:1521259314471452587502494:+:7177289140615713512182267:- +397240908:862:undef:undef:undef:undef +818752762:270:undef:undef:undef:undef +616478520:825:undef:undef:undef:undef +512448691:8994:7057:+:1937:- +603784315:3860:undef:undef:undef:undef +892788622:9782:undef:undef:undef:undef +401991616:47678:undef:undef:undef:undef +923404619:90679:58655:+:32024:- +700137231:40836:undef:undef:undef:undef +203888384:359764:undef:undef:undef:undef +751199018:566530:undef:undef:undef:undef +191600433:935701:717710:+:217991:- +567383547:1535201:17819:+:1517382:- +562383132:8474308:undef:undef:undef:undef +862029053:7876601:5631926:+:2244675:- +893044074:32229142:undef:undef:undef:undef +644296137:18925602:undef:undef:undef:undef +475626379:31691232:21285187:+:10406045:- +832425608:392739855:250568597:+:142171258:- +199889416:704265601:504331320:+:199934281:- +978604540:175889777:36296563:+:139593214:- +585503092:9057799712:undef:undef:undef:undef +119547941:3126207405:2618647346:+:507560059:- +447424949:3275147317:2530241497:+:744905820:- +568796741:65694710980:34397263201:+:31297447779:- +551197335:51642549256:1541173463:+:50101375793:- +223879560:78950562873:undef:undef:undef:undef +453508623:931147937349:undef:undef:undef:undef +142990845:919406050212:undef:undef:undef:undef +224065099:387468429387:82364691298:+:305103738089:- +792365981:7219430403941:365505214194:+:6853925189747:- +776748101:2064245743332:141791386961:+:1922454356371:- +688232162:4633958434134:undef:undef:undef:undef +905496526:11817098263685:undef:undef:undef:undef +771720261:57836008919288:42607669787677:+:15228339131611:- +497096496:65107756330432:undef:undef:undef:undef +410626572:410139631372933:19416226973289:+:390723404399644:- +786408518:763792281184323:264967407556100:+:498824873628223:- +421657879:756550457103685:588112140809899:+:168438316293786:- +523604004:2877758465549810:undef:undef:undef:undef +461669517:8226793504589051:6374450896711752:+:1852342607877299:- +300181504:1271686476051532:undef:undef:undef:undef +267974301:78005629279493273:46438072854390167:+:31567556425103106:- +807818917:95314908522294362:88808816494546789:+:6506092027747573:- +243884885:51346056252266544:36834699562686797:+:14511356689579747:- +532188782:405217730483088308:undef:undef:undef:undef +459877643:282147288320933817:57329522679596804:+:224817765641337013:- +933891523:394787651615513793:22070377672822048:+:372717273942691745:- +862611446:1161250948291856543:1047150244829279363:+:114100703462577180:- +484619574:8487857715230530978:undef:undef:undef:undef +788426737:8217278190616588126:7893048959187923123:+:324229231428665003:- +547779268:11630002460638849613:6370733863555851967:+:5259268597082997646:- +251766220:26251400866817952811:7412420530729632086:+:18838980336088320725:- +494752719:48622894393070478957:undef:undef:undef:undef +767049336:791436666159935219053:275809336137758774997:+:515627330022176444056:- +408628141:843545915132174213949:529481510616827615566:+:314064404515346598383:- +469417077:263709255549230772677:141522049232505946297:+:122187206316724826380:- +264889274:2926560323119362796564:undef:undef:undef:undef +221419267:1296410333062937556900:445468159442430327403:+:850942173620507229497:- +833792033:1942668528859952362009:899026270786294210099:+:1043642258073658151910:- +101973304:58568850938011564432796:undef:undef:undef:undef +934999765:59753345065693175459502:55083047173673608414957:+:4670297892019567044545:- +416919865:75043519171027116644197:47078094509079366710526:+:27965424661947749933671:- +791615775:521385005581184676834827:324988247498802464958060:+:196396758082382211876767:- +374008119:627922933681359783670244:330482369196042981914591:+:297440564485316801755653:- +822807197:453606953810968114941347:186748831783759526348418:+:266858122027208588592929:- +746891368:7864903400761016410253577:1356599359297693796570143:+:6508304041463322613683434:- +370047092:1704498463364560756156428:undef:undef:undef:undef +737742518:1901258092485545089338212:undef:undef:undef:undef +506705415:994:993:+:1:- +647593796:796:undef:undef:undef:undef +708815998:578:undef:undef:undef:undef +887052376:7673:5229:+:2444:- +413081226:5919:undef:undef:undef:undef +994599722:3531:2:+:3529:- +844373423:58384:35327:+:23057:- +375626762:21319:10623:+:10696:- +733265627:12164:8663:+:3501:- +499242851:339102:157175:+:181927:- +864779327:705006:544085:+:160921:- +752228722:537523:undef:undef:undef:undef +499232435:8551224:7184171:+:1367053:- +236982396:1458728:undef:undef:undef:undef +922436254:2071793:1884658:+:187135:- +894766270:68651174:undef:undef:undef:undef +366692807:63905637:22375706:+:41529931:- +849438794:13148065:9581384:+:3566681:- +591001640:618251727:15141515:+:603110212:- +397862927:837051460:undef:undef:undef:undef +675795839:532564056:135517367:+:397046689:- +417639477:4398363060:undef:undef:undef:undef +526369373:8135902330:1620141147:+:6515761183:- +183218716:9006603417:7049158309:+:1957445108:- +923980750:94755069959:undef:undef:undef:undef +789387451:88149024058:77991872869:+:10157151189:- +571127906:19710998757:15037240280:+:4673758477:- +698103737:216920098357:49831269842:+:167088828515:- +549591836:854066180146:undef:undef:undef:undef +419115188:325856763873:164933077910:+:160923685963:- +481478216:9086744572620:undef:undef:undef:undef +420189227:5739435696720:5155886189363:+:583549507357:- +517419356:8498426682596:undef:undef:undef:undef +352005764:48729341538714:undef:undef:undef:undef +702795815:37160297152533:20096402711606:+:17063894440927:- +227099978:58256460576380:undef:undef:undef:undef +376171310:258548466583650:undef:undef:undef:undef +690017593:377080886496272:251226246773641:+:125854639722631:- +186948188:495279019989700:undef:undef:undef:undef +283798239:1965974385993344:1568211290271775:+:397763095721569:- +969096348:6261312907103392:undef:undef:undef:undef +244593320:5059802746358925:undef:undef:undef:undef +815483678:80083787497801525:16119100382694517:+:63964687115107008:- +814203759:59760202907132217:undef:undef:undef:undef +514083401:97091120171649058:undef:undef:undef:undef +360819549:407324746421774172:undef:undef:undef:undef +157695487:194647209998605218:8161180096324747:+:186486029902280471:- +602578029:169480079856106820:101728567280015629:+:67751512576091191:- +405802569:2383778357087955189:undef:undef:undef:undef +447687990:4185778187887997142:undef:undef:undef:undef +538054734:5746384560506186737:undef:undef:undef:undef +426428011:27300739414594875836:25196216475851450539:+:2104522938743425297:- +432205094:76077990467750523935:31388757444103673189:+:44689233023646850746:- +573307801:73779071715843531734:41321002245477783309:+:32458069470365748425:- +679318375:580705898398364048906:200463993861723162803:+:380241904536640886103:- +361893779:860225730293714521997:undef:undef:undef:undef +655461048:706633758700058821654:undef:undef:undef:undef +129404401:4096953153424413604662:3124320859969723095787:+:972632293454690508875:- +341535500:7645731931898181634664:undef:undef:undef:undef +383154445:1012521510194606626450:undef:undef:undef:undef +795321088:93567180722814566931139:undef:undef:undef:undef +275485768:89210350122218304999307:60063107723796901221898:+:29147242398421403777409:- +229108471:55226631269097392735299:13501243239809771791200:+:41725388029287620944099:- +709485417:915954855215312179597360:906244704064186120927673:+:9710151151126058669687:- +723607178:687376702919933236090565:275933469823503454396497:+:411443233096429781694068:- +531519039:268884822594147934201480:30542663603937076757759:+:238342158990210857443721:- +972630944:2862969356276619196048571:1021373465545458735386152:+:1841595890731160460662419:- +861332012:6636614088896377972141106:undef:undef:undef:undef +296143212:3225291872114536173673964:undef:undef:undef:undef +5148123445:914:421:+:493:- +2156188712:536:undef:undef:undef:undef +8291499958:895:857:+:38:- +4253844263:4155:1292:+:2863:- +1358421452:7367:1673:+:5694:- +9730117517:9295:3233:+:6062:- +4743334107:21543:undef:undef:undef:undef +1101209189:37171:753:+:36418:- +1511883525:59689:46903:+:12786:- +7831509333:801926:16723:+:785203:- +1901678424:628922:undef:undef:undef:undef +7582083726:553752:undef:undef:undef:undef +2814121196:6720204:undef:undef:undef:undef +9041977165:3574257:1209775:+:2364482:- +4665349605:1741859:undef:undef:undef:undef +9654885508:11320405:5070547:+:6249858:- +8544595875:81826780:undef:undef:undef:undef +4491577979:44839325:37909494:+:6929831:- +5894419727:209676047:undef:undef:undef:undef +3422175244:200901170:undef:undef:undef:undef +9073863612:285704419:undef:undef:undef:undef +3010456331:1575223721:358803466:+:1216420255:- +3675209249:1238920469:348052350:+:890868119:- +3076955755:2044728121:819483755:+:1225244366:- +5532449106:11804864757:undef:undef:undef:undef +2178321516:72446432820:undef:undef:undef:undef +8141624878:24177169161:12669591040:+:11507578121:- +4373829532:361530049790:undef:undef:undef:undef +6510438062:221919090285:118395549053:+:103523541232:- +2923624068:928301613177:undef:undef:undef:undef +6422616650:1821551105905:undef:undef:undef:undef +3920819292:3609657590139:undef:undef:undef:undef +8529302041:8171890540911:6330113830732:+:1841776710179:- +8283075058:99249682083240:undef:undef:undef:undef +7714159938:42279030272060:undef:undef:undef:undef +8830465691:94598224923192:1238025432947:+:93360199490245:- +6503804316:893134882044913:595341231988876:+:297793650056037:- +3020967744:692332434884097:undef:undef:undef:undef +5707972016:416981172056363:319046936750814:+:97934235305549:- +7802276257:5121005781327377:1006470380725860:+:4114535400601517:- +8488092258:5898469708005668:undef:undef:undef:undef +5719273281:6621050033188944:undef:undef:undef:undef +4269820845:97690537236763468:83725800953243273:+:13964736283520195:- +4890136257:67781149490980209:undef:undef:undef:undef +1249614077:13434251636315727:8033650483878155:+:5400601152437572:- +7567169928:209400997888616374:undef:undef:undef:undef +2892092078:809180780834786061:459957472215866399:+:349223308618919662:- +5059477571:225235022670459161:188872579792036573:+:36362442878422588:- +3296846539:3419541167968110901:3375814864108936545:+:43726303859174356:- +3755465778:5985810828658626985:3396977572175897167:+:2588833256482729818:- +8440375029:7500789156286352849:740815062674890403:+:6759974093611462446:- +7200372756:67154895069447055956:undef:undef:undef:undef +1129552307:47029208094293947604:7082422936839559503:+:39946785157454388101:- +2149757725:67859417827284636751:46371390131760805747:+:21488027695523831004:- +9142316269:430441115080170066523:160600796982128766071:+:269840318098041300452:- +3787820619:404407421001507234094:314994134692265924347:+:89413286309241309747:- +1783571232:759228725504543081212:undef:undef:undef:undef +5259924308:8647842759402242582039:2573478635201018217649:+:6074364124201224364390:- +7549596943:9126835586456198292095:5602555267454219862537:+:3524280319001978429558:- +5502628004:1921833832195605113404:undef:undef:undef:undef +2734794642:20341260710298800232522:undef:undef:undef:undef +6649682442:20588599858934853156107:6112141034906005902861:+:14476458824028847253246:- +7945061400:80888029696624048552137:undef:undef:undef:undef +5318739090:371043970435050967481651:undef:undef:undef:undef +7813005156:625486598641910843913099:undef:undef:undef:undef +7596209423:838237546042044839786955:592126700174737059178067:+:246110845867307780608888:- +5542001838:4371473048465980598505528:undef:undef:undef:undef +9215909038:4418497062287071779597132:undef:undef:undef:undef +9088238948:6385259025471575663888098:undef:undef:undef:undef +7141106533:421:64:+:357:- +4608309022:353:267:+:86:- +3215543482:147:79:+:68:- +5960988438:4252:undef:undef:undef:undef +7407872116:9905:4691:+:5214:- +1707352681:5638:1339:+:4299:- +2628785609:94072:46265:+:47807:- +6960760204:83288:undef:undef:undef:undef +1420175176:10837:5726:+:5111:- +4471827497:750478:19619:+:730859:- +1058033319:745141:79035:+:666106:- +4707692720:459142:undef:undef:undef:undef +6872130879:7596812:3927615:+:3669197:- +7337043892:6212023:4023595:+:2188428:- +6562355347:6847846:769323:+:6078523:- +7414460013:35105897:20727442:+:14378455:- +2431585113:94138027:11221501:+:82916526:- +8926085180:67232734:undef:undef:undef:undef +2696422432:384919346:undef:undef:undef:undef +2518225632:701394234:undef:undef:undef:undef +4582392418:484897725:332579557:+:152318168:- +1593126296:8704586019:4313576687:+:4391009332:- +5576970406:5468430807:undef:undef:undef:undef +8122724503:5592354812:407232599:+:5185122213:- +7223414134:97520329077:69882438535:+:27637890542:- +4483962895:50989493417:22740942054:+:28248551363:- +5920178769:92950702035:undef:undef:undef:undef +2000396391:775202780024:474916861247:+:300285918777:- +9068883969:512247505350:undef:undef:undef:undef +8726799433:501767727686:365378905449:+:136388822237:- +4162671941:8271806934045:2346236556626:+:5925570377419:- +9810813468:2254470979839:undef:undef:undef:undef +6945957450:7134739113826:undef:undef:undef:undef +5419725549:77513920051398:undef:undef:undef:undef +3295597344:51067657361328:undef:undef:undef:undef +7797262227:23985104215078:8462208296939:+:15522895918139:- +9200570839:665110102190379:582850578047767:+:82259524142612:- +4054467081:444097977689960:35609249338001:+:408488728351959:- +2328973673:134392175876030:133853800850287:+:538375025743:- +9707764065:9353285118262517:8693519242135388:+:659765876127129:- +5251765881:6585119250077577:undef:undef:undef:undef +4958537228:3685944437151997:2359687219399978:+:1326257217752019:- +4975107553:23849725039900792:21463622386830961:+:2386102653069831:- +8053531898:48866091437980762:undef:undef:undef:undef +1989915545:37444679715007743:27086022928847654:+:10358656786160089:- +2274266940:380230297405974554:undef:undef:undef:undef +7338671999:237032697192956945:114810539536337184:+:122222157656619761:- +2672076311:710161125077350588:321797615692800887:+:388363509384549701:- +8556132773:4273339019207528078:4068075955799074695:+:205263063408453383:- +1323128849:4987603262857552256:261890174330778097:+:4725713088526774159:- +9331227869:7559757703317873620:3503205231111896789:+:4056552472205976831:- +8306683275:56040420057499208079:undef:undef:undef:undef +4923726787:32491667952172724505:undef:undef:undef:undef +6004565244:39053779102790486024:undef:undef:undef:undef +9180567367:292488594180822005393:43500015152127356759:+:248988579028694648634:- +2420974275:787720949136879886353:undef:undef:undef:undef +3831811701:973713277862130004663:798753610573946524675:+:174959667288183479988:- +3116728212:5194005128166435062520:undef:undef:undef:undef +3748674459:8253306548305148592778:6985466021063217658211:+:1267840527241930934567:- +7726337119:1711126095512018755532:1472383168750974544079:+:238742926761044211453:- +9859039295:99630480228978284598204:22064746749929907191903:+:77565733479048377406301:- +1792896124:78644699454890690955397:5831488120861206829374:+:72813211334029484126023:- +9010729274:34056143941643853006739:6606395455177648232830:+:27449748486466204773909:- +8936492080:555179115685053102546996:undef:undef:undef:undef +8938045036:158058717726679139758931:134184101055217884924706:+:23874616671461254834225:- +3500736605:306848482537996666861469:27823706542582270505843:+:279024775995414396355626:- +2570452638:8186554279070548480048270:undef:undef:undef:undef +9208061087:2701158110687268893701976:212687115087574009549807:+:2488470995599694884152169:- +3532767804:9850603484307820118068443:undef:undef:undef:undef +3292630474:213:61:+:152:- +1177035926:343:124:+:219:- +5064628398:613:600:+:13:- +5420258143:2333:715:+:1618:- +2548536092:5414:undef:undef:undef:undef +9049476761:1324:901:+:423:- +7468130895:73550:undef:undef:undef:undef +3069055502:31332:undef:undef:undef:undef +4586171713:73361:33095:+:40266:- +2813493595:433822:182311:+:251511:- +3293589659:537694:159753:+:377941:- +9787848035:981797:213028:+:768769:- +1211767981:8865597:6153958:+:2711639:- +7527077162:7316748:undef:undef:undef:undef +2070631145:7877295:undef:undef:undef:undef +5645876442:89643311:44878003:+:44765308:- +2975863384:95054744:undef:undef:undef:undef +2450125441:59716025:25381411:+:34334614:- +9328387451:347474581:22697295:+:324777286:- +7276736230:578768518:undef:undef:undef:undef +8097844197:917805224:557826189:+:359979035:- +5542614594:6263902233:undef:undef:undef:undef +5588307923:1304223418:957834829:+:346388589:- +2722553554:1785897687:undef:undef:undef:undef +5846164789:30892076600:12826419709:+:18065656891:- +9270685632:43883358098:undef:undef:undef:undef +2907786447:99699869702:58350311387:+:41349558315:- +4116050874:917931378901:551387474688:+:366543904213:- +8014825660:693906835721:293375057978:+:400531777743:- +2663764664:228156532609:81691276315:+:146465256294:- +2216340909:1830341637693:undef:undef:undef:undef +3316192213:9424145394847:6989463246321:+:2434682148526:- +6416738464:3780072063461:2897533443094:+:882538620367:- +6398251523:31846913227394:9077643971549:+:22769269255845:- +6774543830:15485228438096:undef:undef:undef:undef +9139588413:85631225260902:undef:undef:undef:undef +2646660555:520978488306377:481168766170461:+:39809722135916:- +1708166460:687677804741176:undef:undef:undef:undef +8068783734:576077966548200:undef:undef:undef:undef +7391778815:8793490006282730:undef:undef:undef:undef +4425797098:2649756886789703:982517753185920:+:1667239133603783:- +1927668536:4517684294149869:2094599833025534:+:2423084461124335:- +8846194493:89458969050968238:88473476513555807:+:985492537412431:- +1356247734:57708536612380408:undef:undef:undef:undef +9283400862:60164628617545143:undef:undef:undef:undef +7134997642:970590878828337637:11475370761699700:+:959115508066637937:- +2448044081:497521607705096257:169690938174749282:+:327830669530346975:- +6630294043:355118381517905481:296879341228857643:+:58239040289047838:- +9048703865:6775156322220288085:undef:undef:undef:undef +3360043023:1552463462349220474:1359694808020382509:+:192768654328837965:- +6322110489:2929628186953843343:768202880076132022:+:2161425306877711321:- +1952190995:34944557910816697735:undef:undef:undef:undef +1752383842:47799193299118514504:undef:undef:undef:undef +2591178285:20716078546776381544:542167759790812421:+:20173910786985569123:- +8122148705:719406089648357733188:66006084391585545997:+:653400005256772187191:- +9694973346:719872599872040467710:undef:undef:undef:undef +7651220450:199587106552578178892:undef:undef:undef:undef +2042227136:9977487099852483689869:5552448050932507152839:+:4425039048919976537030:- +7678908931:2066109744744204323008:1080949980017941914603:+:985159764726262408405:- +6776427617:5565961119662384144160:3174002324552687900033:+:2391958795109696244127:- +5506956101:91373598288783887124420:52538003723684051988161:+:38835594565099835136259:- +7750135453:82335349859501196087584:19437141841512928708533:+:62898208017988267379051:- +8167436712:29797131824570137765228:undef:undef:undef:undef +9607370311:121631427998360740391950:116991644172432396453041:+:4639783825928343938909:- +8423935365:390669097503232686224283:undef:undef:undef:undef +7679416321:812057216216967914616590:97719265386820648344381:+:714337950830147266272209:- +6616861234:7124598459490387096368946:undef:undef:undef:undef +8037474856:4394869798590543002227680:undef:undef:undef:undef +8489232501:1079711269233988143651568:696154355808976351663373:+:383556913425011791988195:- +19619863951:640:111:+:529:- +85774558372:870:undef:undef:undef:undef +68692077395:768:731:+:37:- +18817191633:1247:undef:undef:undef:undef +41607799272:4043:undef:undef:undef:undef +91664653876:1953:1228:+:725:- +30295176945:65091:undef:undef:undef:undef +68580059047:31143:31099:+:44:- +18531360333:62597:5961:+:56636:- +64931971582:770747:224390:+:546357:- +76273168395:550050:undef:undef:undef:undef +12687319250:219475:undef:undef:undef:undef +59300897639:4792393:3288541:+:1503852:- +18756681129:2651540:260449:+:2391091:- +11621386352:9988923:9327119:+:661804:- +11671142180:50629990:undef:undef:undef:undef +71178649986:68816970:undef:undef:undef:undef +74013301662:71022147:undef:undef:undef:undef +23241107541:263070580:undef:undef:undef:undef +48817631495:693874447:559839348:+:134035099:- +27002573153:991130369:406278786:+:584851583:- +30110051854:5633080520:undef:undef:undef:undef +81689406704:9011232668:undef:undef:undef:undef +79230938200:2105447195:undef:undef:undef:undef +19365367706:75075911763:24226164476:+:50849747287:- +81083049942:58913389052:undef:undef:undef:undef +51257009494:45938599459:23115072005:+:22823527454:- +42158677183:461384086321:266329865164:+:195054221157:- +39442909636:102294989999:3097205854:+:99197784145:- +57275117957:625569596710:26729474233:+:598840122477:- +46504908030:4891760428228:undef:undef:undef:undef +73684339754:1844138927702:undef:undef:undef:undef +74088481666:4699906983901:3721697754973:+:978209228928:- +26129624873:18411432449513:11761232099671:+:6650200349842:- +19345524820:32205951498816:undef:undef:undef:undef +72054302316:43379703428064:undef:undef:undef:undef +15616222576:848488993596498:undef:undef:undef:undef +69547304804:514984536664451:202506076568533:+:312478460095918:- +12293860148:265512282165446:undef:undef:undef:undef +81199025845:5621389577199773:1852579536987082:+:3768810040212691:- +19058227448:4631815971859621:2500260977776959:+:2131554994082662:- +25706178209:2852697247397245:1094513648549039:+:1758183598848206:- +84487466920:92135420088227056:undef:undef:undef:undef +83614464584:41550747062790023:10299015965969792:+:31251731096820231:- +59989677087:48741797004563563:45861780904575978:+:2880016099987585:- +98582067675:315525240004800411:undef:undef:undef:undef +64232583500:425410208124592332:undef:undef:undef:undef +76934972176:727225029234317401:291112039937901025:+:436112989296416376:- +61795142851:5908241486766574299:1531764824706643039:+:4376476662059931260:- +17457170535:3166396673218459506:undef:undef:undef:undef +17204815290:7640687601245950106:undef:undef:undef:undef +13967589922:24620673542453299190:undef:undef:undef:undef +18996604311:10500459771152570191:3463067987556565681:+:7037391783596004510:- +99529301459:57003647317599090016:52933805965895779835:+:4069841351703310181:- +21766161947:523274541742761821127:450482897901685064168:+:72791643841076756959:- +16942826435:591722373918366385353:524166819689054326493:+:67555554229312058860:- +16804448482:991556680669357611557:313610950653156070248:+:677945730016201541309:- +81417123102:8626004426690250806770:undef:undef:undef:undef +57810478745:1158648995310485169745:undef:undef:undef:undef +42914795809:6665983779754125038980:4126687974584465643489:+:2539295805169659395491:- +36093280350:40741055983857332591795:undef:undef:undef:undef +23163546490:56263620282139603069750:undef:undef:undef:undef +52441622976:91907271791271848630774:undef:undef:undef:undef +73971752879:404396346841326960342107:22483415704898398667030:+:381912931136428561675077:- +27383552312:807536823690462158322754:undef:undef:undef:undef +42968002345:415025458708440421452321:172637226598767276175501:+:242388232109673145276820:- +56637065473:5574917704969584786035494:3393062316543458531439975:+:2181855388426126254595519:- +54752779821:1020499444245376121307585:undef:undef:undef:undef +27299076726:6195794248399897805538700:undef:undef:undef:undef +55988303440:634:undef:undef:undef:undef +46289482707:161:20:+:141:- +34475152213:652:401:+:251:- +24163728134:8820:undef:undef:undef:undef +78921381692:8895:5813:+:3082:- +36157304038:1699:1458:+:241:- +12383420501:12298:10209:+:2089:- +54189087986:77426:undef:undef:undef:undef +30993698782:93964:undef:undef:undef:undef +11005868465:704848:445329:+:259519:- +97908567288:287127:undef:undef:undef:undef +96142337868:537820:undef:undef:undef:undef +48033736196:8356003:6621839:+:1734164:- +14258068690:3307074:undef:undef:undef:undef +98242695686:4794491:1781294:+:3013197:- +98332246156:40701738:undef:undef:undef:undef +40762113568:82218554:undef:undef:undef:undef +72222947107:43372717:29069642:+:14303075:- +78858771447:705940446:undef:undef:undef:undef +22845209534:511457632:undef:undef:undef:undef +79202751925:496736846:288940043:+:207796803:- +44015419886:1370027108:undef:undef:undef:undef +14740617678:3671326471:644054363:+:3027272108:- +51283387001:5035534773:82346837:+:4953187936:- +67754140782:44107492775:9159793518:+:34947699257:- +11450645657:38008624524:2221092461:+:35787532063:- +93908675218:35502305764:undef:undef:undef:undef +84530484757:938890630219:731105383278:+:207785246941:- +96222678102:738162054175:465387276063:+:272774778112:- +31749891953:251063841485:101595824997:+:149468016488:- +87542080948:4505635455016:undef:undef:undef:undef +54977683045:2773383989258:2493438831321:+:279945157937:- +40569027555:3615108721226:2518147895043:+:1096960826183:- +96291110886:28425070691517:undef:undef:undef:undef +90612281235:85629366724855:undef:undef:undef:undef +72510178601:17727060776225:12348745682926:+:5378315093299:- +81306457060:235145400944969:180271187967402:+:54874212977567:- +77551956070:152737902472109:115292749343806:+:37445153128303:- +18362092979:592849786460608:477159064023803:+:115690722436805:- +12568366235:9296831581308712:5572180343877843:+:3724651237430869:- +32759208696:6898093370301786:undef:undef:undef:undef +86487216018:1356322070287283:1033263875860896:+:323058194426387:- +43914979501:57851110256120623:26951290016793684:+:30899820239326939:- +69218213150:33753764914433418:undef:undef:undef:undef +21903718070:22400970582554760:undef:undef:undef:undef +76550114186:169590921694397453:5275067267806340:+:164315854426591113:- +70700648633:927920898274164342:809756760862902311:+:118164137411262031:- +50954298786:439015263921052931:312517981376514752:+:126497282544538179:- +14627845587:2683727529903671189:2626648958035451369:+:57078571868219820:- +60001277877:4213480590674859045:undef:undef:undef:undef +52726275559:2418314281060146017:1713693942213228018:+:704620338846917999:- +70956433758:45183728941930903369:6737839567038249981:+:38445889374892653388:- +84333137725:76868163100446856378:43511485431239100287:+:33356677669207756091:- +46154315150:66357754943455880708:undef:undef:undef:undef +27492026281:461493792779773393753:273687143887649719341:+:187806648892123674412:- +23028559122:780782875393389511867:183222780259840839928:+:597560095133548671939:- +20879898887:289240418968940471885:50011166837551006998:+:239229252131389464887:- +33866533095:5430286568999498031613:4587703373107517096426:+:842583195891980935187:- +72490997240:2853832777203682859457:557816804946260305562:+:2296015972257422553895:- +58220508034:6960755318661979297176:undef:undef:undef:undef +16773993745:82309308062191131745025:undef:undef:undef:undef +90780122928:47914764005555535189608:undef:undef:undef:undef +63272632392:14598393722836057045170:undef:undef:undef:undef +67616722802:523323411117586836682950:undef:undef:undef:undef +27385890062:753331857256691046762753:143202707642973498385235:+:610129149613717548377518:- +46682532055:909883549673243508446865:undef:undef:undef:undef +56316904954:4264791344244348532158840:undef:undef:undef:undef +86843264136:6475134836481391542091695:undef:undef:undef:undef +85244758659:1704360995315663471149471:1375716319199516032741418:+:328644676116147438408053:- +24288217979:353:280:+:73:- +66458437156:386:undef:undef:undef:undef +19718646513:263:106:+:157:- +95474310552:3437:1683:+:1754:- +38871356282:4851:undef:undef:undef:undef +75182558334:4501:3035:+:1466:- +74796843655:36032:4343:+:31689:- +36050059224:23891:17103:+:6788:- +19863094194:89750:undef:undef:undef:undef +19905915706:975620:undef:undef:undef:undef +71406378496:659897:96547:+:563350:- +43322859235:411789:410749:+:1040:- +54974583785:3916040:undef:undef:undef:undef +81903616712:2458455:undef:undef:undef:undef +59628024735:5215309:2878549:+:2336760:- +28705160170:49545545:undef:undef:undef:undef +67752993660:52948818:undef:undef:undef:undef +66859909995:35372569:9054285:+:26318284:- +67527342817:655522510:538008753:+:117513757:- +15698643693:766331281:174247520:+:592083761:- +47450816662:410707617:49859089:+:360848528:- +75603025144:4189222864:undef:undef:undef:undef +73542271399:3273988801:501635612:+:2772353189:- +45694664349:8734878798:undef:undef:undef:undef +66595291204:11729868098:undef:undef:undef:undef +69501488320:85284086864:undef:undef:undef:undef +36661815348:89160068445:undef:undef:undef:undef +92705945126:470374778708:undef:undef:undef:undef +69447267027:560775857202:undef:undef:undef:undef +91303815250:359828355259:191892328492:+:167936026767:- +88976813390:5090743771836:undef:undef:undef:undef +94356842579:7970259562466:6140210284291:+:1830049278175:- +14492287394:5950877408494:undef:undef:undef:undef +27377195044:42999393154994:undef:undef:undef:undef +69047709710:28449727256942:undef:undef:undef:undef +10410308560:63997569964861:13451003143715:+:50546566821146:- +15409058311:251828247387937:14973162977052:+:236855084410885:- +10493672545:954153415958701:232340346578521:+:721813069380180:- +45989252217:996320980569464:767378780584985:+:228942199984479:- +96873617454:5297182065317071:3240764072557170:+:2056417992759901:- +57978276673:6703901945872064:5953616472118145:+:750285473753919:- +59366938953:2908760366126304:undef:undef:undef:undef +57388386219:84252041112507045:undef:undef:undef:undef +28368803324:53635056952793524:undef:undef:undef:undef +74853209254:18038062502188903:13709777410524861:+:4328285091664042:- +94418480790:763270562490260143:378221230890785994:+:385049331599474149:- +32960652072:514712124794857785:undef:undef:undef:undef +23965240606:111896153469198055:96865110870983806:+:15031042598214249:- +92890852933:4317209390559678089:3232811696386326621:+:1084397694173351468:- +66083051517:7484014451845132056:undef:undef:undef:undef +95548308792:8571649108925026632:undef:undef:undef:undef +61587506973:75655998703340740251:undef:undef:undef:undef +36492167113:64830970919116544035:34452121223046558792:+:30378849696069985243:- +47414170431:66283011233668339228:19945104413754249579:+:46337906819914089649:- +83952874484:379577007442534770606:undef:undef:undef:undef +13453938845:627742400476848768996:55527279406551179597:+:572215121070297589399:- +57271608113:500351574761368549681:222800521860369745774:+:277551052900998803907:- +75522487555:3299190756552280864693:36819551463387917873:+:3262371205088892946820:- +27300549379:1326735055393879199770:573991737436460673979:+:752743317957418525791:- +54911657319:5008374103159935107694:undef:undef:undef:undef +88672660086:62868971409272686179217:13131443217355368132150:+:49737528191917318047067:- +27721936547:61710975468863072396278:5078284672196140324593:+:56632690796666932071685:- +76420567898:80335752099127143873694:undef:undef:undef:undef +88462594363:373377635745075437414215:293799652323092890492982:+:79577983421982546921233:- +87117815521:446513595128302477101979:136577511334768668327783:+:309936083793533808774196:- +71148729807:125512385439385059891171:undef:undef:undef:undef +51232114548:8590143757101949690560324:undef:undef:undef:undef +81326725359:9593507402105112306658329:undef:undef:undef:undef +22023900520:4971687822738244653894775:undef:undef:undef:undef +801813494781:678:undef:undef:undef:undef +614649489779:680:339:+:341:- +582713490936:534:undef:undef:undef:undef +138606539624:3468:undef:undef:undef:undef +386646887249:9695:undef:undef:undef:undef +992742944667:2311:1570:+:741:- +991566673011:94751:70371:+:24380:- +934470329536:63740:undef:undef:undef:undef +735070146288:48146:undef:undef:undef:undef +499441086171:764408:481699:+:282709:- +736447819242:890416:undef:undef:undef:undef +410744422180:431391:289234:+:142157:- +872858999230:2932636:undef:undef:undef:undef +464130848993:4486986:undef:undef:undef:undef +801198442388:1478327:98963:+:1379364:- +834528120443:22957683:4097378:+:18860305:- +839083962592:88971800:undef:undef:undef:undef +531999704660:91700683:20060210:+:71640473:- +951291519081:903005862:undef:undef:undef:undef +406295209764:191808480:undef:undef:undef:undef +767630672948:285294076:undef:undef:undef:undef +396206089628:2380922308:undef:undef:undef:undef +864084658545:9876586333:7807255949:+:2069330384:- +629351403044:1233285831:904356758:+:328929073:- +917873706628:10214454505:6101416017:+:4113038488:- +450336168952:47050406832:undef:undef:undef:undef +327961264819:46354078350:43277401879:+:3076676471:- +278152160238:754274017268:undef:undef:undef:undef +334541849439:476377132358:5307918097:+:471069214261:- +780640258206:789810965956:undef:undef:undef:undef +212461885210:5797066227880:undef:undef:undef:undef +358408720871:2519755171595:1684455160376:+:835300011219:- +788432904683:4182666982493:4130571200403:+:52095782090:- +549268238393:19442212278951:undef:undef:undef:undef +299139446754:85037920015177:4498991335615:+:80538928679562:- +585454695380:25115210430725:undef:undef:undef:undef +254753561822:408768593967668:undef:undef:undef:undef +966499320594:561141265883477:376004264706584:+:185137001176893:- +680059330643:339509077857030:283334972558237:+:56174105298793:- +239462108548:4528624397365167:715439292109942:+:3813185105255225:- +609935772510:6892067195528656:undef:undef:undef:undef +112362176049:9796890405922436:7452815293824665:+:2344075112097771:- +257709487380:21971416237355067:undef:undef:undef:undef +908934155940:68186412126027786:undef:undef:undef:undef +354247575039:21510025228683664:undef:undef:undef:undef +119319075259:879239967878656841:177736259493621362:+:701503708385035479:- +804254523797:494089498623257412:386906269134652865:+:107183229488604547:- +543221015155:733108339586390616:602413514390930539:+:130694825195460077:- +568086994695:5769435733689987503:973755647218364807:+:4795680086471622696:- +799727942309:8979693967765833002:2415278824207885017:+:6564415143557947985:- +262366830869:9917829171066368767:8908431466306839038:+:1009397704759529729:- +801958327711:75230504966207135247:505610354521913512:+:74724894611685221735:- +782629705679:34606782233158928567:29884919549816155087:+:4721862683342773480:- +652996323722:68540063885331894960:undef:undef:undef:undef +618053685018:736741605628135241112:undef:undef:undef:undef +406188625527:883406927340539746609:314635529675945416790:+:568771397664594329819:- +961813236447:385820578449172054833:undef:undef:undef:undef +519982801173:4684227705145691031760:896467670168264582477:+:3787760034977426449283:- +611688941091:4157999422802404413994:2207749577029259571213:+:1950249845773144842781:- +730284254238:3480969249312179218785:undef:undef:undef:undef +962781074516:38324004299157166567680:undef:undef:undef:undef +466950241209:26172428851429591731402:undef:undef:undef:undef +596945181824:72614887504841250169861:49703032847455033134280:+:22911854657386217035581:- +180618611008:244105423934601423461897:204271227432580695863257:+:39834196502020727598640:- +795860848202:245855528325337206180642:undef:undef:undef:undef +352183699793:582097768277589867216208:530299208567115343858145:+:51798559710474523358063:- +723063138545:1534932171795810802951721:1170330456803857815612608:+:364601714991952987339113:- +325553416597:3379566852740653736562254:364983928274271006821517:+:3014582924466382729740737:- +731090681506:4019669485829341860348651:undef:undef:undef:undef +539838998545:507:7:+:500:- +170374512797:247:161:+:86:- +424990958887:145:98:+:47:- +108807278437:5932:2521:+:3411:- +233178939657:5653:2715:+:2938:- +807027977703:2472:undef:undef:undef:undef +976598436356:98616:undef:undef:undef:undef +988230847568:44612:undef:undef:undef:undef +470364205892:15544:undef:undef:undef:undef +302425071635:563277:319988:+:243289:- +219475754879:216142:161539:+:54603:- +699147054562:562075:172348:+:389727:- +829675206608:8793826:undef:undef:undef:undef +589355140011:9099979:1109186:+:7990793:- +392952480622:8491184:undef:undef:undef:undef +890224064397:88284845:66381333:+:21903512:- +933681679825:22982808:20235145:+:2747663:- +782012973700:51684539:50010492:+:1674047:- +197248910099:873744194:94469581:+:779274613:- +845643881183:710460352:53055455:+:657404897:- +202542417637:738541112:706082709:+:32458403:- +661052617861:4115902967:2324341310:+:1791561657:- +344531027219:9317694786:7166878709:+:2150816077:- +394613663847:5654080162:4999665219:+:654414943:- +484541465210:33438466317:16660420985:+:16778045332:- +125383494408:23161568367:undef:undef:undef:undef +444600126192:99689925705:undef:undef:undef:undef +173574844181:932314550107:579904335202:+:352410214905:- +969975211838:270079957135:27981089787:+:242098867348:- +122749761441:399795628752:undef:undef:undef:undef +242192263334:6476490046110:undef:undef:undef:undef +524444428681:5071522667390:4569120426681:+:502402240709:- +178409154818:4375991059484:undef:undef:undef:undef +614830537503:30539577929795:4585805722412:+:25953772207383:- +735071268099:66368563915236:undef:undef:undef:undef +532875829676:12877186055234:undef:undef:undef:undef +437988491749:737381170127270:645693715044929:+:91687455082341:- +481846189288:359568635873405:270518854521647:+:89049781351758:- +458103515841:515501956010102:160770845332143:+:354731110677959:- +508366057145:9372236974262244:7974731481400649:+:1397505492861595:- +120232323906:4447604417367689:2894149251255209:+:1553455166112480:- +876848598384:1685318971853925:undef:undef:undef:undef +138479501588:32578168424815627:31166212113160317:+:1411956311655310:- +533666642770:89068727957463288:undef:undef:undef:undef +479439297147:15922726166951385:undef:undef:undef:undef +638497067661:972469011671173991:416750023327742201:+:555718988343431790:- +691022108095:930027344334722104:576090462433909527:+:353936881900812577:- +742847282780:283642538218216660:undef:undef:undef:undef +782713557290:5984673682556848052:undef:undef:undef:undef +797082615787:2591352534815129064:1377191795208135163:+:1214160739606993901:- +142147996405:7537086787316841635:undef:undef:undef:undef +991358285792:91466066258249912028:undef:undef:undef:undef +874948329633:14393999125077889850:8683795833169725347:+:5710203291908164503:- +772007967276:49324783064443875324:undef:undef:undef:undef +605080207724:966301645828029386288:undef:undef:undef:undef +112771167321:835668669621252857343:undef:undef:undef:undef +571031238297:231760969553061898185:undef:undef:undef:undef +316861472933:8755918478458246353336:5302141659834143239253:+:3453776818624103114083:- +711694537086:5504077889510662473729:undef:undef:undef:undef +635580457016:3051056699952132842912:undef:undef:undef:undef +939251853436:49421899701983410182541:14799618160338254984383:+:34622281541645155198158:- +888292517231:68887410489854961995824:20504636833150226385823:+:48382773656704735610001:- +964362919556:15768924368455017921710:undef:undef:undef:undef +664102667876:194250347475587692617411:153400360282828944863537:+:40849987192758747753874:- +628159632643:156250197014367830057358:49621189973332877595865:+:106629007041034952461493:- +924459152964:755408685432182186988710:undef:undef:undef:undef +795212888341:4749615418256194201950885:3589927199807610352267411:+:1159688218448583849683474:- +969306949612:3526700003112794244981402:undef:undef:undef:undef +435130827079:2289524153226895212844946:466605775871864438867941:+:1822918377355030773977005:- +592023096465:674:443:+:231:- +858771784505:189:122:+:67:- +483521220209:100:89:+:11:- +512353038734:5427:1358:+:4069:- +460292553468:3641:undef:undef:undef:undef +924385840680:3549:undef:undef:undef:undef +622797518286:11295:undef:undef:undef:undef +728830918974:68279:36546:+:31733:- +179031377630:83507:54019:+:29488:- +714861405363:749881:194966:+:554915:- +126498673205:306460:undef:undef:undef:undef +433396611768:456306:undef:undef:undef:undef +347938737984:6561022:undef:undef:undef:undef +267433286769:2185923:undef:undef:undef:undef +299888302428:9021353:undef:undef:undef:undef +944411807076:60730977:undef:undef:undef:undef +656857562869:52710527:8028730:+:44681797:- +175039832667:53058033:undef:undef:undef:undef +600321209741:876570444:148325921:+:728244523:- +410801666277:284543609:222814218:+:61729391:- +934740036637:787608667:186849586:+:600759081:- +236251494131:1982052282:677355641:+:1304696641:- +404959025398:1835550551:770382556:+:1065167995:- +870672061651:8280586756:7288456715:+:992130041:- +572275112907:54558901682:6459971709:+:48098929973:- +310335763983:31560369965:12580055557:+:18980314408:- +963607527071:66865319675:undef:undef:undef:undef +533277562731:594926647034:214370455925:+:380556191109:- +125436023478:260253445336:undef:undef:undef:undef +733358546590:106351570723:96439581950:+:9911988773:- +840320962822:4147586246170:undef:undef:undef:undef +960532701335:6973956365960:undef:undef:undef:undef +940977431443:1369840828496:undef:undef:undef:undef +184865250154:55595929368115:33676359108719:+:21919570259396:- +557735659133:35419485572251:6061027410573:+:29358458161678:- +379969274283:88031094139616:38462907988099:+:49568186151517:- +156962092805:192152126661625:undef:undef:undef:undef +878028583425:409543286706155:undef:undef:undef:undef +723236876934:466911911788602:undef:undef:undef:undef +838452683171:5034250413598108:3149945721189243:+:1884304692408865:- +539963468802:3504260435362874:undef:undef:undef:undef +822428386557:7975273187941436:75155367835073:+:7900117820106363:- +620025888923:72077595277040803:41727007177332291:+:30350588099708512:- +887089341627:97437220182961738:15191900082606955:+:82245320100354783:- +550152697503:28685896999083677:27775086852710002:+:910810146373675:- +907736859418:495594698307592668:undef:undef:undef:undef +844532449421:226525458486119867:92675357026312623:+:133850101459807244:- +290030108234:888870145425067508:undef:undef:undef:undef +223122478973:4881707225380243751:2311386379376493401:+:2570320846003750350:- +838180527233:4519190109670626723:468414027727324931:+:4050776081943301792:- +503051187421:2986323539257458540:2714589881726022901:+:271733657531435639:- +438195809002:20686076842979970998:undef:undef:undef:undef +928756754537:21351950083797573408:16808974269714514361:+:4542975814083059047:- +778766734206:73769662894814226457:40320347784044131633:+:33449315110770094824:- +404444348596:402652786177066040565:63723374664283980286:+:338929411512782060279:- +405709159924:476722172728050310518:undef:undef:undef:undef +123809934304:467789418272878823578:undef:undef:undef:undef +483364523636:8434115723329816871422:undef:undef:undef:undef +702997471346:6291500282469527412753:4760928087614525369936:+:1530572194855002042817:- +864677216967:4548263631270988546497:undef:undef:undef:undef +332643775867:76365755420873705024515:28669607070400315778498:+:47696148350473389246017:- +113763860947:98151136623085544064307:25867928408202816739980:+:72283208214882727324327:- +765104930615:98441551806993047906760:undef:undef:undef:undef +286058050022:728576305264353758098427:139752879596817105465930:+:588823425667536652632497:- +716047877999:607838965660317020098603:278584770701658770655661:+:329254194958658249442942:- +510369088451:857801163425997715664873:444460478417136686526255:+:413340685008861029138618:- +307360985951:3503288763328136255311097:2510688541034734103910912:+:992600222293402151400185:- +853276639479:8130173718146949584851816:4601270129124500684525999:+:3528903589022448900325817:- +178828950235:7207199066268548234950097:643719687732055328545714:+:6563479378536492906404383:- +1291023501350:388:undef:undef:undef:undef +8914519194391:964:535:+:429:- +3785490447532:442:undef:undef:undef:undef +1032797957148:3713:523:+:3190:- +8646717950722:5093:867:+:4226:- +7822123404306:7646:undef:undef:undef:undef +4626583585009:89356:87537:+:1819:- +9079556803019:46195:38574:+:7621:- +2390480680998:28534:undef:undef:undef:undef +5307875865096:638454:undef:undef:undef:undef +2604054585447:177301:162624:+:14677:- +9572431315314:829208:undef:undef:undef:undef +6524154613882:4271176:undef:undef:undef:undef +9214492721347:7906028:4237191:+:3668837:- +8988524600670:3354387:undef:undef:undef:undef +3128419233235:10999230:undef:undef:undef:undef +8739744811748:38164520:undef:undef:undef:undef +1698185551761:22414225:6134666:+:16279559:- +5166608725100:209812397:189480138:+:20332259:- +9292163213106:262047604:undef:undef:undef:undef +1223198833954:887505231:473355643:+:414149588:- +8070337179394:4970712133:3360508129:+:1610204004:- +8860537314530:3630643209:357969473:+:3272673736:- +3693132479260:6257550507:4061260069:+:2196290438:- +4172184476851:14363746781:1024378027:+:13339368754:- +9244406947072:68288755668:undef:undef:undef:undef +2081206100866:57695940124:undef:undef:undef:undef +8385576125971:787175603543:787169964879:+:5638664:- +2096667056251:328912581229:114625079406:+:214287501823:- +7323424288731:422111613028:undef:undef:undef:undef +1017580745432:9034837121298:undef:undef:undef:undef +7645405808411:4957960004916:4038709268207:+:919250736709:- +6396169306920:5326727362238:undef:undef:undef:undef +4034431934314:12003416056125:2532698405959:+:9470717650166:- +6333772770664:99793158203172:undef:undef:undef:undef +5419535907787:93637078631846:11094563055647:+:82542515576199:- +3403537814936:624399885047144:undef:undef:undef:undef +9442583388055:335098122909596:307031628652663:+:28066494256933:- +1625334867595:375831378054052:111425698331335:+:264405679722717:- +5363358779615:2507135305833967:75469955465205:+:2431665350368762:- +3001290883323:2722405776932955:undef:undef:undef:undef +5995623250285:2273699468043640:undef:undef:undef:undef +5430258233860:14879327902807915:undef:undef:undef:undef +2009480371111:81569778835077261:undef:undef:undef:undef +8060818778656:80340194042593541:undef:undef:undef:undef +1719916888552:100724926236645251:74547915463096332:+:26177010773548919:- +1710393744862:697076608870176893:541373352472864689:+:155703256397312204:- +4976335389286:793446964186858903:407020962169288668:+:386426002017570235:- +9782344892477:3843112971736180016:3233061258089819973:+:610051713646360043:- +6141658962310:5041879609625351659:23875356626025458:+:5018004252999326201:- +8551740568066:9472573456559108878:undef:undef:undef:undef +6333648282514:67511201167143917000:undef:undef:undef:undef +6698692394389:50026755934259056845:24830640442883066374:+:25196115491375990471:- +9555899774433:26907301042095664279:7787227396742833305:+:19120073645352830974:- +1059030629353:838525276893929711862:129056494743262042681:+:709468782150667669181:- +7528923048127:927075578586380555211:209297471402655112759:+:717778107183725442452:- +8063887169054:958171120653854059763:795387894419027240468:+:162783226234826819295:- +3208049129896:7976366831585787172767:3233233486633041748939:+:4743133344952745423828:- +6309040341427:9674362189053499006488:8552983429862063253715:+:1121378759191435752773:- +9749623155818:9719287505851380685775:8115263141371657388732:+:1604024364479723297043:- +4433943870539:89196508447902402325671:35275960523801223402428:+:53920547924101178923243:- +9876556694758:69976866439984982154930:undef:undef:undef:undef +6515639707808:28009617813979201035332:undef:undef:undef:undef +1074197197298:559875578462144208815527:394558243659367487946171:+:165317334802776720869356:- +8640760683747:477993359537634559273174:436327965906789379436615:+:41665393630845179836559:- +2888779880078:803738423244008874013738:undef:undef:undef:undef +1908619457359:8138382794657404423762001:undef:undef:undef:undef +7054234893560:1056608545958678939471428:undef:undef:undef:undef +7106767104199:2917558549771734775363859:203288873615993146732340:+:2714269676155741628631519:- +1030380160791:234:undef:undef:undef:undef +2258390333510:990:undef:undef:undef:undef +7024855777816:932:undef:undef:undef:undef +5493786002265:1409:1124:+:285:- +5928014438306:4399:940:+:3459:- +9896217023290:5514:undef:undef:undef:undef +1910244733179:78949:425:+:78524:- +6828469218904:79823:78501:+:1322:- +6405863332370:47400:undef:undef:undef:undef +9804063740054:374439:130571:+:243868:- +8313560070776:748383:156935:+:591448:- +5061435378822:128685:undef:undef:undef:undef +9883247622927:2333038:1370789:+:962249:- +4979734023742:5031402:undef:undef:undef:undef +5976191364757:6606892:4625289:+:1981603:- +9434394919019:71904598:44074559:+:27830039:- +5744906695193:97046797:76432966:+:20613831:- +1823025036284:23306578:undef:undef:undef:undef +1174132474849:342456025:249863524:+:92592501:- +4435724095908:705167838:undef:undef:undef:undef +5077520244148:563870137:401183334:+:162686803:- +9711203545679:4902171334:2336745527:+:2565425807:- +5878184522319:7498448356:6651061083:+:847387273:- +4744078864603:5023138454:2239998055:+:2783140399:- +5420081302707:26416299072:undef:undef:undef:undef +5971439306304:39672411949:11649453037:+:28022958912:- +5016596778254:16223684920:undef:undef:undef:undef +5712064772630:679792609931:368221620260:+:311570989671:- +8403824194300:220717020448:undef:undef:undef:undef +1977375942491:659702846061:319492565066:+:340210280995:- +3435584516591:1982999650351:1913477914278:+:69521736073:- +5941331658929:2673352465796:2604118111353:+:69234354443:- +8249577104639:1338703943813:756011906196:+:582692037617:- +4581747637252:24729639181141:21747782363449:+:2981856817692:- +2214350672483:42902804752313:32059610779969:+:10843193972344:- +7715587643575:61460743575338:33111498021069:+:28349245554269:- +5009695000489:433000119308412:263235766091857:+:169764353216555:- +2780831705629:185208281993624:69043791644877:+:116164490348747:- +7672825582131:783604471358360:739393030548611:+:44211440809749:- +8156222205180:3109219503077603:2997452198829590:+:111767304248013:- +1611962821695:7753482891122737:4217262153111896:+:3536220738010841:- +1344055558642:5791429807975789:5112620760498172:+:678809047477617:- +4156214896181:87433200209380821:4036022290114826:+:83397177919265995:- +8791183056533:17266888371263604:14832887253985193:+:2434001117278411:- +2839215467930:15333716803930859:341925618428854:+:14991791185502005:- +9031332797533:772530159158786604:402766106248262089:+:369764052910524515:- +2245892394672:284589341468628386:undef:undef:undef:undef +6628793050257:918609146713656399:undef:undef:undef:undef +6888105415513:7118362515738178674:6967784838104010145:+:150577677634168529:- +7206964244227:3639346422097103707:undef:undef:undef:undef +4933299662870:6579052994026192680:undef:undef:undef:undef +4398085936722:66388421222434399522:undef:undef:undef:undef +6175959807798:76779693447599364073:14857859458457959606:+:61921833989141404467:- +6354148141102:66813618696883914548:undef:undef:undef:undef +9044150524871:389568594988388272031:143314042521346984622:+:246254552467041287409:- +4814210746040:433732095415239717640:undef:undef:undef:undef +9332634314099:670452109194680918419:248334238592552688857:+:422117870602128229562:- +5736492543705:3417271280284106866398:undef:undef:undef:undef +8631249657919:4733409781476931748466:undef:undef:undef:undef +6094039989815:3369611319342579140308:undef:undef:undef:undef +2583722297996:81431725479896681304979:80871272679086793096342:+:560452800809888208637:- +5052888472673:98441868147600474128263:65698019907280289160744:+:32743848240320184967519:- +8460071803145:27471057113022476057946:23026358277427942455881:+:4444698835594533602065:- +7132691709237:826698072835415700701165:69199391036873572813993:+:757498681798542127887172:- +2583208598211:141965554366100683592394:undef:undef:undef:undef +2952268207666:929365864320562368929665:515267089928966547880216:+:414098774391595821049449:- +9914834185011:4152022126245706552477635:undef:undef:undef:undef +1095175494003:2854286084007478686356058:undef:undef:undef:undef +4146822388736:4652366122252896909889132:undef:undef:undef:undef +2667542060084:638:undef:undef:undef:undef +2619119100856:489:286:+:203:- +5471150765644:370:undef:undef:undef:undef +5422654770852:7372:undef:undef:undef:undef +6365483515997:1073:1054:+:19:- +1710773704709:4129:3900:+:229:- +6510241656717:32085:undef:undef:undef:undef +6235004204836:27246:undef:undef:undef:undef +1732986290243:93180:69947:+:23233:- +5052128210619:435359:169861:+:265498:- +7399143702223:313670:undef:undef:undef:undef +9220140871626:972167:606304:+:365863:- +6284334576066:5895034:undef:undef:undef:undef +4896160553553:9274979:6807596:+:2467383:- +8779608519310:1592172:undef:undef:undef:undef +3157760648638:66068639:7197898:+:58870741:- +4203379869707:59797957:50656115:+:9141842:- +2971463108306:81421624:undef:undef:undef:undef +5328039225959:852041219:427109386:+:424931833:- +7223208263787:908347961:490453814:+:417894147:- +6927677824560:729677136:undef:undef:undef:undef +3140617177719:7406264281:2914743811:+:4491520470:- +2686879345811:3583132633:3327906441:+:255226192:- +6080468876608:2170360246:undef:undef:undef:undef +9098349290101:71600559760:13452198141:+:58148361619:- +7604498372334:48716148153:undef:undef:undef:undef +8325583873372:37640609809:30787652453:+:6852957356:- +6221232427758:290437631553:undef:undef:undef:undef +8821824668483:702144063403:691600211398:+:10543852005:- +4687867113852:264453784429:127080233520:+:137373550909:- +9644890486005:5477732202644:2493098621109:+:2984633581535:- +8125551631964:5575596507948:undef:undef:undef:undef +5773855716888:1760621459038:undef:undef:undef:undef +2559983729582:69365648684953:60871322159710:+:8494326525243:- +1924351727803:33553112408704:31625736998899:+:1927375409805:- +2644362096267:65724220634548:47791138766439:+:17933081868109:- +8355484245824:824562588638974:undef:undef:undef:undef +7037413211838:812311386088899:undef:undef:undef:undef +1070483870636:435794905825191:181215486509786:+:254579419315405:- +6491531242222:5633823079615786:undef:undef:undef:undef +6668820087505:9628109909302839:7654626150035173:+:1973483759267666:- +2839652215339:8815014773976322:5149003288847161:+:3666011485129161:- +1932220292086:77170485402188702:undef:undef:undef:undef +9997825576413:10618337018321008:10616517158266469:+:1819860054539:- +7106293740130:50737737820648492:undef:undef:undef:undef +3392977621608:655251102893400214:undef:undef:undef:undef +4223389353572:811417685730993197:220842614198112902:+:590575071532880295:- +5652380780383:583349107691936260:509221536673843367:+:74127571018092893:- +5791577032799:8251416945259750553:7794291602965443924:+:457125342294306629:- +1247512998393:2249359443414575445:undef:undef:undef:undef +6971618691212:9207833474645285898:undef:undef:undef:undef +8900153629539:94334836519360477366:85183123065866489989:+:9151713453493987377:- +4311417354546:78262827216046020061:8386019697177381088:+:69876807518868638973:- +3243037981184:45832612841302700965:42601922870979784739:+:3230689970322916226:- +3712620993619:285041594277832457479:158237595076864455834:+:126803999200968001645:- +1270319397242:498708369749383154597:317894219152632299589:+:180814150596750855008:- +6492783513938:964467096458786966285:251995148231274439117:+:712471948227512527168:- +1289041366441:4239769176510963802726:4080966709529097254761:+:158802466981866547965:- +6731947997059:7768652953268121670028:519938904794059922027:+:7248714048474061748001:- +6729581797199:8021542434360932073457:2755387615898763075605:+:5266154818462168997852:- +4299998412201:69471492938697161449273:2763651428718504669975:+:66707841509978656779298:- +4113635691355:68134614028318691720941:13795117835105828764729:+:54339496193212862956212:- +9124584228095:95599165172048776463126:71149298633605346150427:+:24449866538443430312699:- +5850631452640:912906823809690438386863:441622011063435797449167:+:471284812746254640937696:- +6628780837241:391171427042986582844518:207555674057408922921767:+:183615752985577659922751:- +7096926793765:930894536386130236782553:513250363597403962327949:+:417644172788726274454604:- +1055155853749:1924931603880980247666996:1384901126682163985304925:+:540030477198816262362071:- +3752660520486:9280906580842118223224343:undef:undef:undef:undef +9412962478799:3024215647789167411218260:1715638284602927466244319:+:1308577363186239944973941:- +35522923200296:634:undef:undef:undef:undef +57181270785364:924:undef:undef:undef:undef +76194815537582:639:458:+:181:- +57257650734160:1125:undef:undef:undef:undef +98865799357931:6643:3684:+:2959:- +25718494339513:4073:2064:+:2009:- +49753535089119:36834:undef:undef:undef:undef +37945280665304:39827:13107:+:26720:- +53807078108355:40771:9745:+:31026:- +16620349380813:752697:undef:undef:undef:undef +15854681659924:496080:undef:undef:undef:undef +62312826385242:196766:undef:undef:undef:undef +31323145663904:2045813:2010384:+:35429:- +36156678006696:7555621:5504458:+:2051163:- +76415920596621:3553394:2702601:+:850793:- +83602933541468:52389986:undef:undef:undef:undef +47453343443465:34489920:undef:undef:undef:undef +77665007544214:30973837:5162437:+:25811400:- +60564969964988:859177652:undef:undef:undef:undef +45395992446778:327338644:undef:undef:undef:undef +99031887544217:307576697:305015535:+:2561162:- +57295457423213:2486969440:2396147237:+:90822203:- +98649419506113:4506438861:undef:undef:undef:undef +61132782749273:7844700626:7010480255:+:834220371:- +33969051339731:38805798647:26908457725:+:11897340922:- +32618134075507:34593650870:30599815763:+:3993835107:- +72421520865615:90742668228:undef:undef:undef:undef +96783030974133:104550552917:62241397572:+:42309155345:- +77999419290164:135426628833:117198185558:+:18228443275:- +47711493019423:485606779719:54673548769:+:430933230950:- +14938571358248:1780359622360:undef:undef:undef:undef +62467611171369:2764235263583:750922106125:+:2013313157458:- +68728690999516:7456448281341:4108753780990:+:3347694500351:- +94480261537162:13098773973314:undef:undef:undef:undef +62873473876449:85609346453306:19685023095043:+:65924323358263:- +26103183795343:93952702106289:30739840730893:+:63212861375396:- +97983301053655:266833113684459:245564128428442:+:21268985256017:- +89251925892490:721161704476919:565332285977250:+:155829418499669:- +86847836348596:840288898954459:589599776643864:+:250689122310595:- +58241943230420:5504902549178745:undef:undef:undef:undef +50902392027610:8641986133070199:5995234828175812:+:2646751304894387:- +91175131571309:4884072656666332:2138825994995657:+:2745246661670675:- +75706177722760:41408791837793839:941029647325324:+:40467762190468515:- +82706784759336:50049258979149354:undef:undef:undef:undef +95384977735233:31297080808196148:undef:undef:undef:undef +84076015185718:756239335951243682:undef:undef:undef:undef +13285524212026:663940549353818532:undef:undef:undef:undef +33712258527320:840503203547687032:undef:undef:undef:undef +51891629158085:4370330596001964501:2180700326615269670:+:2189630269386694831:- +58932044552732:1761724527436715359:1307433128356703706:+:454291399080011653:- +82491579726244:3648839307908675837:1655976001686484090:+:1992863306222191747:- +11221487332062:93961837036880203288:undef:undef:undef:undef +15464856220914:85283438058602475019:73460515785035729101:+:11822922273566745918:- +80414717590454:54422406546783016738:undef:undef:undef:undef +75390041825046:618735112504432132321:1669799685651933460:+:617065312818780198861:- +81298287836368:922512690650405753225:133292741494556687407:+:789219949155849065818:- +30462189008225:129860946115201329643:107650202575816188306:+:22210743539385141337:- +28053152938183:6968699673997304528683:4807205285550532186073:+:2161494388446772342610:- +62645469470883:3485795550924374448267:undef:undef:undef:undef +36290345952627:2138411031242920520721:undef:undef:undef:undef +74017734891718:40545327342300947909872:undef:undef:undef:undef +49645250489728:18644884920602335124413:7529551137874837234352:+:11115333782727497890061:- +32074696561708:71779094711734976333290:undef:undef:undef:undef +75924008296972:448662231159554055843685:64762263832345101252333:+:383899967327208954591352:- +62913244261984:593448552354897276206101:154500242057264055861278:+:438948310297633220344823:- +96188784659388:818759232259998368516563:65412096483544929731036:+:753347135776453438785527:- +27368960718596:3412858882021757767890963:undef:undef:undef:undef +37415765084909:2386539707005775650785383:2248794086512464352265461:+:137745620493311298519922:- +10183062115420:5081386526381887802183289:4350480488116397730436354:+:730906038265490071746935:- +15478786464823:121:undef:undef:undef:undef +69202720470006:890:undef:undef:undef:undef +10076631913576:613:11:+:602:- +84467299324713:9960:undef:undef:undef:undef +26777117410898:2778:undef:undef:undef:undef +16293134047963:1431:70:+:1361:- +79997372098343:64456:undef:undef:undef:undef +55274002702722:82872:undef:undef:undef:undef +39204575417309:10137:undef:undef:undef:undef +46262550860337:662232:undef:undef:undef:undef +49622887012954:712204:undef:undef:undef:undef +62495623205097:764266:666811:+:97455:- +45600410054637:4704823:2793824:+:1910999:- +78485464217166:1407140:undef:undef:undef:undef +37901952633099:5559379:1876249:+:3683130:- +89628527454331:75726584:17647363:+:58079221:- +49284217709259:43584686:26429033:+:17155653:- +79252304262143:27000409:2147127:+:24853282:- +78679736100653:860466736:233681989:+:626784747:- +69938203931346:763747995:undef:undef:undef:undef +59053772922835:851644177:406222145:+:445422032:- +25262621201509:9296982356:9164624697:+:132357659:- +38892359871000:2005094152:undef:undef:undef:undef +35968793342881:9553127583:2635314922:+:6917812661:- +53503037458531:21245707669:15903255320:+:5342452349:- +75039198250851:92214128066:16875246345:+:75338881721:- +93356499049629:61738594247:undef:undef:undef:undef +73152497007636:810778180972:undef:undef:undef:undef +19888336877773:290420286146:162449503279:+:127970782867:- +51380179088400:359070650016:undef:undef:undef:undef +13882131384395:4335262478819:113048699900:+:4222213778919:- +48141505872497:6045088167525:876096864833:+:5168991302692:- +94483053473371:3051995424067:1883219118933:+:1168776305134:- +75385622497079:73663124732334:34092563581913:+:39570561150421:- +96110129825183:97306846551413:5561886685972:+:91744959865441:- +55861927240666:31084766799463:8999171473735:+:22085595325728:- +23805795533287:570574994774361:279309427250035:+:291265567524326:- +70544666574231:200438009622566:121452680322985:+:78985329299581:- +98002873595613:643891331744488:529287010314549:+:114604321429939:- +82024307286205:3154950660790085:undef:undef:undef:undef +30156458638523:3954237661640143:218476896058202:+:3735760765581941:- +89154615402438:9373998638475323:7833220469452852:+:1540778169022471:- +51677124964654:81828106705748927:71983096814493461:+:9845009891255466:- +70373931226237:95577751560012759:7598618561661202:+:87979132998351557:- +25853195971451:65661000088735369:8755222804092063:+:56905777284643306:- +74401344682269:499939076031484377:undef:undef:undef:undef +45755932107022:708219472599773786:undef:undef:undef:undef +92740092264260:752301923628377165:undef:undef:undef:undef +16712726948182:7739389375423089033:2483047104668307367:+:5256342270754781666:- +43445532135970:9881057663450000596:undef:undef:undef:undef +29185876416348:4558945063955143416:undef:undef:undef:undef +25742934549156:63115445089321475348:undef:undef:undef:undef +74265457520547:22432569711930017104:10561278554179141067:+:11871291157750876037:- +89954227929484:65835987116620817046:undef:undef:undef:undef +36842296827474:160339718277210969776:undef:undef:undef:undef +11158763341091:657674011792350918256:337809588750180521579:+:319864423042170396677:- +82534997560542:351216201673829805012:undef:undef:undef:undef +44588024637775:6543928690426153292118:4788206348026011488803:+:1755722342400141803315:- +43368203998572:6702826515429349604423:4870302567904153372278:+:1832523947525196232145:- +83844596013205:2110617338012926982867:538050524574304865895:+:1572566813438622116972:- +76517645663653:87048326902813598728276:8802008007711028789509:+:78246318895102569938767:- +48253056282531:14379620566404380515792:7001061341764986492843:+:7378559224639394022949:- +35287846873702:71066164085887300909249:32864407347397594925174:+:38201756738489705984075:- +44013785910309:287676955041574608229925:243543647669102542710664:+:44133307372472065519261:- +13311054472398:993326004301248447933156:undef:undef:undef:undef +52012500961213:246616861226633860548023:111661413119811442889609:+:134955448106822417658414:- +84952659316024:2903823002995793605530535:1677137118898306857690389:+:1226685884097486747840146:- +41377984223283:9816325603455103199788018:1640445767889877784027285:+:8175879835565225415760733:- +71305632950429:3746272423411191331790060:1187896005842721883233049:+:2558376417568469448557011:- +12144440849326:694:undef:undef:undef:undef +63224563667168:706:undef:undef:undef:undef +24660746795804:528:undef:undef:undef:undef +72271763373199:5445:5344:+:101:- +32794764412772:8213:7772:+:441:- +62099092734896:9331:undef:undef:undef:undef +52651721479808:74274:undef:undef:undef:undef +14581506804904:17592:undef:undef:undef:undef +51600239269306:31817:541:+:31276:- +86943330130438:934959:170518:+:764441:- +46700657000396:328978:undef:undef:undef:undef +24799002341989:779689:177382:+:602307:- +63825906516702:2095626:undef:undef:undef:undef +27823593285985:7314358:6658063:+:656295:- +57693736785324:8154066:undef:undef:undef:undef +38359515045221:77221858:49871569:+:27350289:- +69200745303265:14113655:undef:undef:undef:undef +40924348891630:42764546:undef:undef:undef:undef +19776709873877:765952147:405977045:+:359975102:- +26756608309567:458794160:310011023:+:148783137:- +13671318203145:418146403:302620867:+:115525536:- +98729740497908:3490559723:2218516640:+:1272043083:- +78935686496777:5693467235:1905288438:+:3788178797:- +29892280324571:5358168457:3546413190:+:1811755267:- +72113122274020:98464011846:undef:undef:undef:undef +13810533889434:47743368423:undef:undef:undef:undef +17001604103084:22525430362:undef:undef:undef:undef +46203005217917:788036447607:64269889838:+:723766557769:- +96096266258815:135042354904:33205856455:+:101836498449:- +45067379118683:982044126422:306909434363:+:675134692059:- +95598050428116:8630619044485:8055656402216:+:574962642269:- +93840260317516:3817032862846:undef:undef:undef:undef +23642234946698:4264111985069:2770400979324:+:1493711005745:- +41590295481973:48109020285470:42442789016117:+:5666231269353:- +75596253364904:77847224731850:undef:undef:undef:undef +73291951484542:73456311925517:45371300315810:+:28085011609707:- +47844443558790:654992051455722:undef:undef:undef:undef +19822382386128:700726841128307:undef:undef:undef:undef +83140469194618:443285708887785:362208934498087:+:81076774389698:- +41986141058217:1309503449525957:87377812597529:+:1222125636928428:- +68086073022664:9438221220738143:3364254420680274:+:6073966800057869:- +68860587219274:2799565853421436:undef:undef:undef:undef +14112751551213:97700637856663653:undef:undef:undef:undef +53215249099174:75869584615332213:71616742920601924:+:4252841694730289:- +18942243091954:79906960076612625:17417111870851519:+:62489848205761106:- +12937685838708:213686491127509264:undef:undef:undef:undef +94182247860110:327530032088390401:76440536440212626:+:251089495648177775:- +17515210008222:226697714661821283:undef:undef:undef:undef +47248923796198:3406249671011508599:431548213597605730:+:2974701457413902869:- +23728195750197:8354575163725872138:undef:undef:undef:undef +28252506367128:3123655340235727687:489811028863659851:+:2633844311372067836:- +77653981760712:43991897778268523136:undef:undef:undef:undef +62307307596337:23442770455100318240:6827114837377337073:+:16615655617722981167:- +76809170128864:81693945209882598091:18774983500429406701:+:62918961709453191390:- +74323251803879:133043135358710188075:112128269782191698219:+:20914865576518489856:- +39496821921800:215308441099663738264:undef:undef:undef:undef +75573123679526:970321956738426006273:262260002784602944181:+:708061953953823062092:- +64093396075742:1365145810073714971279:805497561843790363488:+:559648248229924607791:- +85129728895176:5850060330326795500815:undef:undef:undef:undef +35086336179273:7710824089175799143499:undef:undef:undef:undef +93991134779567:21910482078489229886991:14068711299867429042908:+:7841770778621800844083:- +22130693305836:33594622107208782150353:2821416032919768547346:+:30773206074289013603007:- +94186900049380:96267224445464823607976:undef:undef:undef:undef +59947414409568:160897712459335661945221:16183766426439062840578:+:144713946032896599104643:- +98161517078501:803561610903872263163737:608137181322884490803533:+:195424429580987772360204:- +87444547802757:594531976734977402236119:undef:undef:undef:undef +82252341906866:8613650423884889815427258:undef:undef:undef:undef +38518751231172:4704718701508252893230437:1066402185034851361727231:+:3638316516473401531503206:- +13808805428541:3856291955818964279110506:undef:undef:undef:undef +728558154702269:800:629:+:171:- +464126645687857:852:505:+:347:- +828854899023291:603:undef:undef:undef:undef +451826920243478:8054:undef:undef:undef:undef +400396011204960:3821:1021:+:2800:- +952450704249276:1319:672:+:647:- +439231300155720:69505:undef:undef:undef:undef +915305722830579:85907:78073:+:7834:- +162854590664408:49073:36243:+:12830:- +698863581755521:127475:123031:+:4444:- +642338998656189:956766:undef:undef:undef:undef +168778341895385:795281:274560:+:520721:- +574895215447259:1375717:undef:undef:undef:undef +512674070748493:8571273:2349844:+:6221429:- +878899446069318:9324712:undef:undef:undef:undef +791083719725767:22094285:19813748:+:2280537:- +570756210425841:46381368:undef:undef:undef:undef +898958442946843:75532446:73343251:+:2189195:- +497436694227405:715732297:276875204:+:438857093:- +176320278021766:954529903:265774473:+:688755430:- +651156419179418:398850990:undef:undef:undef:undef +662525530661225:1872470885:undef:undef:undef:undef +150375630839847:8367667643:445582338:+:7922085305:- +485276826894726:3161393037:undef:undef:undef:undef +639746323359247:33476357254:20058950403:+:13417406851:- +898461573421918:14651432363:7946527006:+:6704905357:- +758059448910712:31720372410:undef:undef:undef:undef +148600376943573:355805151168:undef:undef:undef:undef +523765514002023:745726111068:undef:undef:undef:undef +889123837797237:686267994099:undef:undef:undef:undef +778353850567149:8758800120077:4810219581550:+:3948580538527:- +994676759240856:6073282694990:undef:undef:undef:undef +167077198294565:8436015139306:2634527274591:+:5801487864715:- +122942443916326:51867756638506:undef:undef:undef:undef +503648283021282:75341352806966:undef:undef:undef:undef +357042275147092:13854855417377:4119720892229:+:9735134525148:- +387428611281261:978461194785577:70380344239530:+:908080850546047:- +590637516453151:517988597383851:29123128536475:+:488865468847376:- +363957878598332:551009901339132:undef:undef:undef:undef +876925159115759:7728142602922191:4725588992540147:+:3002553610382044:- +372041367672818:8649545762904626:undef:undef:undef:undef +130876807071190:4126047455634965:undef:undef:undef:undef +827754262395037:66423460111476884:2442002818599613:+:63981457292877271:- +215104066403004:71126165636485512:undef:undef:undef:undef +139217178178097:17346395103766437:7031634868342013:+:10314760235424424:- +692121964657925:821180962822219363:688475176928695354:+:132705785893524009:- +743933453191688:209297748571284886:undef:undef:undef:undef +920668259954788:105668935327519891:87129027262339903:+:18539908065179988:- +922608205845945:6381152885416389547:6100863487063038969:+:280289398353350578:- +598127451365057:5210051178482495530:1838263852770669933:+:3371787325711825597:- +973059395746071:2391326952815458926:undef:undef:undef:undef +497437518925867:33763405035422198600:9871450367394101803:+:23891954668028096797:- +837384153487360:88845487132310477084:undef:undef:undef:undef +753204798523917:12255085936084066306:600794244795188349:+:11654291691288877957:- +859752729764405:341385704218391874826:97665052096579287355:+:243720652121812587471:- +708381549066076:871632851879985471526:undef:undef:undef:undef +258845104926756:355238975171811067393:116908861803386810426:+:238330113368424256967:- +244738239777262:1880933364665171731293:1604652583038687012967:+:276280781626484718326:- +242338695153972:5435020953653204364897:undef:undef:undef:undef +162988507230936:7974386155679607949418:undef:undef:undef:undef +399269657134096:68875130562375605561821:undef:undef:undef:undef +128296916274203:46901748031625432160348:45996912318870318468071:+:904835712755113692277:- +981575687027652:34353291424459284018378:undef:undef:undef:undef +554103357629250:445294027509035399641464:undef:undef:undef:undef +160435825129644:823828482782605416128899:245958859306361599986982:+:577869623476243816141917:- +444177994509049:568708736268692931683715:517927728060377863545229:+:50781008208315068138486:- +444937587409290:4908956687382877797141677:4823180930450345201886187:+:85775756932532595255490:- +913793666016334:5450644045501142443741177:5013731754224549302771058:+:436912291276593140970119:- +579802512972038:2085058098904137287038830:undef:undef:undef:undef +715911434981904:187:129:+:58:- +332736424184517:894:undef:undef:undef:undef +981574328739004:969:undef:undef:undef:undef +880697100457990:5976:undef:undef:undef:undef +486624229079888:9768:undef:undef:undef:undef +469187261898117:1586:965:+:621:- +983467908051667:68987:2434:+:66553:- +757970591261065:59118:34855:+:24263:- +948158568176614:88043:18296:+:69747:- +422670273116456:320058:undef:undef:undef:undef +931018826865212:121689:88433:+:33256:- +818294658294244:387049:381512:+:5537:- +903560862243716:4144922:undef:undef:undef:undef +428970194413039:6218606:3397747:+:2820859:- +723257278504514:9247641:undef:undef:undef:undef +205397214361397:38166234:15398477:+:22767757:- +842300760053495:22670897:13779898:+:8890999:- +965681766127293:34236330:undef:undef:undef:undef +592720380098190:202701236:undef:undef:undef:undef +718847304283852:418109440:undef:undef:undef:undef +817672608493880:927123966:undef:undef:undef:undef +719591658582369:2028016095:undef:undef:undef:undef +215874954109024:4157287849:1570213756:+:2587074093:- +819138328010671:3485070453:1045319641:+:2439750812:- +151920083837769:59467974618:undef:undef:undef:undef +603224040433396:50439368172:undef:undef:undef:undef +549692484550264:81386440341:6249633904:+:75136806437:- +134070785664296:365581284525:283802609531:+:81778674994:- +460438814476451:866179741904:597218689659:+:268961052245:- +792458135509027:782035187480:428336130763:+:353699056717:- +385901173964821:3780311463428:1421276769769:+:2359034693659:- +347939279865051:8758092615194:2058526876923:+:6699565738271:- +857918347348662:3974305146414:undef:undef:undef:undef +921847342945342:32554291867765:14903637464063:+:17650654403702:- +565444013144174:30586732591123:8468488097634:+:22118244493489:- +153031033393395:80125937028483:undef:undef:undef:undef +711618124841181:831566900079115:691188416580386:+:140378483498729:- +185743949720747:284469960212964:166602940494707:+:117867019718257:- +624806234522595:667778408413465:undef:undef:undef:undef +396350849418865:5229741379867891:3691173607831774:+:1538567772036117:- +536609586389447:6933344567517833:6115121525232572:+:818223042285261:- +640365357334723:3309146204415845:2706148829787972:+:602997374627873:- +769367720700040:40233546164517412:undef:undef:undef:undef +326761876649725:83887642608393153:49006631462026837:+:34881011146366316:- +148158890027982:92503371428660592:undef:undef:undef:undef +764105966947642:916714062142845646:undef:undef:undef:undef +324411392601170:822844408365620350:undef:undef:undef:undef +427017250104314:269173258905422307:166809313859067443:+:102363945046354864:- +132974813548680:9229205610959882644:undef:undef:undef:undef +934096205871812:9118680270515409406:undef:undef:undef:undef +985630651877363:9143354659111431661:2377475095296831814:+:6765879563814599847:- +989845308705999:92030848977492782807:51457680329979932029:+:40573168647512850778:- +430064650133347:15355343148660519499:13416021071649725094:+:1939322077010794405:- +619557857254736:77545737319476500074:undef:undef:undef:undef +218945363906535:676713962769435763274:346918529941699251683:+:329795432827736511591:- +282130808835865:790620812865593519104:732120673458091814185:+:58500139407501704919:- +149805682361961:969147018920702335581:undef:undef:undef:undef +354317847225915:7314426746402852687593:163083638291320521322:+:7151343108111532166271:- +389725010387360:1941712073448008324395:undef:undef:undef:undef +950524184574372:5730085870463179120596:undef:undef:undef:undef +642356121518562:66986769556535658760400:undef:undef:undef:undef +404056517578608:48761566533789456022980:undef:undef:undef:undef +157708137861456:76771721727489630223374:undef:undef:undef:undef +146627476330735:964616757317813692905317:921602805273860892026693:+:43013952043952800878624:- +255143799489242:895923090101259738008181:739189755690376890893765:+:156733334410882847114416:- +881102836724883:183566843564327650574472:undef:undef:undef:undef +934000689096342:7363029663629414997603260:undef:undef:undef:undef +351320917059615:7728531259260561630240891:undef:undef:undef:undef +451167462642105:9141347212428985458916014:undef:undef:undef:undef +241214003377902:841:162:+:679:- +427079406739933:453:196:+:257:- +841900355547148:294:undef:undef:undef:undef +163146089159841:5330:1201:+:4129:- +963041775217155:9777:undef:undef:undef:undef +661865536781762:2306:undef:undef:undef:undef +608749614195670:85957:66475:+:19482:- +787355359758778:96064:undef:undef:undef:undef +963689771922466:74185:undef:undef:undef:undef +614717016286331:872171:188397:+:683774:- +521063024189600:586592:undef:undef:undef:undef +807924026323012:573662:undef:undef:undef:undef +397360318799844:6712777:1155783:+:5556994:- +499880900313875:8662194:868271:+:7793923:- +216450114480327:1498733:1302693:+:196040:- +852611438938913:70060304:16670929:+:53389375:- +189823641207200:13191458:undef:undef:undef:undef +254481947407399:78125347:52493008:+:25632339:- +534682821367598:112069120:undef:undef:undef:undef +818475334073039:368877254:84827487:+:284049767:- +352007947510866:605982493:296118753:+:309863740:- +661549466684476:4041233872:undef:undef:undef:undef +749556657504038:8099417582:undef:undef:undef:undef +934047687493198:6400700322:undef:undef:undef:undef +869132340045482:33495198313:20165334044:+:13329864269:- +901625380674965:25995346949:5202076067:+:20793270882:- +451272130822722:47055246763:43208138777:+:3847107986:- +206554877479417:240244417406:68703374267:+:171541043139:- +267200655705298:937800002840:undef:undef:undef:undef +425863686876990:774212142077:84123297752:+:690088844325:- +725729932518632:5203835733772:undef:undef:undef:undef +263926451543558:9193184075151:5185979756057:+:4007204319094:- +254447932163603:3036974297897:932235242973:+:2104739054924:- +842211852400734:30719555272008:undef:undef:undef:undef +276164810898707:96110227539335:56753597346538:+:39356630192797:- +162715711213793:88751979337820:58035344000837:+:30716635336983:- +554581292527349:468349414859331:215127040567859:+:253222374291472:- +612791909857160:135020014513187:56585290882146:+:78434723631041:- +289199213896943:924305534896479:157842916806773:+:766462618089706:- +503869881485078:4800010919333887:3140185984823498:+:1659824934510389:- +659680353075218:2097024323473941:20602134879752:+:2076422188594189:- +470784801980157:2476052524555393:undef:undef:undef:undef +894922164807617:60407445781263412:undef:undef:undef:undef +653410693030439:44777476635867404:29701641839615783:+:15075834796251621:- +588636543349631:46135952075961245:12667424830166556:+:33468527245794689:- +154719537347498:199086978372671745:100135796120568362:+:98951182252103383:- +417015921098265:711616325104127328:undef:undef:undef:undef +391231816921489:183270715416106255:172739572636566099:+:10531142779540156:- +956671474096354:8295046921461418170:undef:undef:undef:undef +616583070423927:9586228385320636171:5184584451123408737:+:4401643934197227434:- +313155285471313:8546200735889453539:5244509552992436149:+:3301691182897017390:- +608289805916728:30380994068504548938:undef:undef:undef:undef +987550572927545:54043735960667076091:52700703858091094555:+:1343032102575981536:- +798625597564455:18902638090583917869:undef:undef:undef:undef +355287564736527:597169124005858900121:270356251715215075618:+:326812872290643824503:- +289265282559714:756347326025791628412:undef:undef:undef:undef +856754322007345:272853476611015715005:undef:undef:undef:undef +849739954855848:9097970213053493174975:6453634815733827946962:+:2644335397319665228013:- +103330312951346:5969872342459466427239:undef:undef:undef:undef +237161257529439:3040738115300583471479:1732267520191015033519:+:1308470595109568437960:- +747025873355636:64871520523658055568359:20583893666269089829250:+:44287626857388965739109:- +662026139719676:41436790906600971440603:11712120460003299559599:+:29724670446597671881004:- +108078521265698:40382412037231818681053:25499384608130553402996:+:14883027429101265278057:- +873836509482432:572596344320415113555830:undef:undef:undef:undef +125090228626031:781069136077556352291021:468704975588583405932048:+:312364160488972946358973:- +253266233816303:511817951361180120499987:357320460229348718117195:+:154497491131831402382792:- +424218954387871:6953182487296273053267924:4487279150880027164222503:+:2465903336416245889045421:- +996317219483882:4127334798153728372804394:undef:undef:undef:undef +374405555416380:8090627742427721530205458:undef:undef:undef:undef +2296100806546680:482:undef:undef:undef:undef +8990668541567382:179:14:+:165:- +5369330375253586:678:undef:undef:undef:undef +1387424364200409:2287:11:+:2276:- +9539300859734009:5142:2261:+:2881:- +6502309117825082:9940:undef:undef:undef:undef +5141171473510589:41562:10601:+:30961:- +5934801348466359:76254:undef:undef:undef:undef +8800672002350256:52637:24356:+:28281:- +7114439731398992:790994:undef:undef:undef:undef +7135836022821261:831523:undef:undef:undef:undef +6680671401216078:921102:undef:undef:undef:undef +3248703399031394:8117938:undef:undef:undef:undef +6377739796473143:5893992:4767167:+:1126825:- +4828893941429366:2950897:1756182:+:1194715:- +5818354736846205:81982339:3035299:+:78947040:- +4366419423202610:96942126:undef:undef:undef:undef +5330308258626952:69473030:undef:undef:undef:undef +3082450128488293:963764090:913758847:+:50005243:- +2295392651181664:950310540:undef:undef:undef:undef +1065742832284893:475717780:95199837:+:380517943:- +4976794163983255:5641938370:undef:undef:undef:undef +3955413616942016:2366101734:undef:undef:undef:undef +5919605937875613:6051466481:3333751546:+:2717714935:- +4731608691402900:98641022322:undef:undef:undef:undef +4237495572454343:72726048114:40709739179:+:32016308935:- +1519861672373688:12767354767:6446909511:+:6320445256:- +1349036664930107:487330589634:329287204973:+:158043384661:- +1842501412723930:938497614268:undef:undef:undef:undef +2546060418383441:606459256656:472037543729:+:134421712927:- +8736212324777843:9538131510559:3935089324317:+:5603042186242:- +1649988281047475:2121808819461:1301744592224:+:820064227237:- +3973415545901119:6948601071998:6039678765841:+:908922306157:- +8524391936585790:44206527396290:undef:undef:undef:undef +7563164769588885:97928554162493:16210956057842:+:81717598104651:- +7171634508132405:26259389961855:undef:undef:undef:undef +7453570996643310:295105698618570:undef:undef:undef:undef +3570131435763195:450557402111635:undef:undef:undef:undef +6696042263628457:396558386049185:140198438218823:+:256359947830362:- +5270879993601338:8444838168545319:2266979145398090:+:6177859023147229:- +1211454394312078:3080860357892989:undef:undef:undef:undef +3834772719664095:4215592934273504:2521819004808095:+:1693773929465409:- +1403486848403189:74680649374182208:44822756274939421:+:29857893099242787:- +2968277358196048:35608432869668028:undef:undef:undef:undef +6322017324503710:22026771251580386:undef:undef:undef:undef +2481168182967910:927846725122061651:734573589836815650:+:193273135285246001:- +9957373657060941:779792952792779814:undef:undef:undef:undef +1605162297576641:823241499841774776:276975755139852929:+:546265744701921847:- +7974553150568464:1735510718049430472:undef:undef:undef:undef +8874979501320214:9041249077872672307:8338498465617729306:+:702750612254943001:- +8583197108993201:5975127255501002620:5315703533685977401:+:659423721815025219:- +9856850544334706:17433626303890314648:undef:undef:undef:undef +6959391254749324:33602975982510249138:undef:undef:undef:undef +9785423193903433:36985105942242854090:20775945342498576787:+:16209160599744277303:- +3694690974295843:263485535295909942016:98133919574328704395:+:165351615721581237621:- +8006969377987831:474204533872797068679:141345134014628282437:+:332859399858168786242:- +9736206842405079:299629567956354200420:119971381510323446239:+:179658186446030754181:- +6136393788182856:4718050169797768460290:undef:undef:undef:undef +2095849202085294:5937478645524533313660:undef:undef:undef:undef +9850431017173080:5322798488018258941986:undef:undef:undef:undef +6817146566058406:97727103830740484537545:65106630151047140926946:+:32620473679693343610599:- +5911041853532198:41773629251629380463493:22590767187395589445390:+:19182862064233791018103:- +6249032151315502:43926039570209325153490:undef:undef:undef:undef +7468428261650680:305649431589140241616132:undef:undef:undef:undef +5089583892821482:473652824251288859352559:204541253053982878897775:+:269111571197305980454784:- +8361210624654015:924937241207478801535706:340538030354554535421091:+:584399210852924266114615:- +2238808446683188:5541231369181077700600015:4570022510913942981377462:+:971208858267134719222553:- +6131847748931781:4577283379657311368838244:1240321299518111321938849:+:3336962080139200046899395:- +5571401864223170:8995232292746528277772637:5040571643708551462640031:+:3954660649037976815132606:- +5488728064061426:774:undef:undef:undef:undef +8718720402635804:819:176:+:643:- +9376608867284021:137:54:+:83:- +8015720109507858:1200:undef:undef:undef:undef +9496173251938585:7348:6241:+:1107:- +2002481152019333:8088:5765:+:2323:- +2395082373480034:18209:6466:+:11743:- +6255018896569153:79813:70605:+:9208:- +4871280884607389:44470:23239:+:21231:- +9540373576019272:391839:undef:undef:undef:undef +9006188315065533:265131:undef:undef:undef:undef +8954758129680836:203389:65767:+:137622:- +5701432136512144:4459584:undef:undef:undef:undef +1275302325247675:9289453:4201078:+:5088375:- +4119440556543504:5793912:undef:undef:undef:undef +1345249960261091:38339028:10133891:+:28205137:- +5210565711407721:92833603:51903318:+:40930285:- +9156553227188736:10930657:7490062:+:3440595:- +7605750152773616:166050708:undef:undef:undef:undef +5112120248906878:347690512:undef:undef:undef:undef +8325756032907520:897414928:undef:undef:undef:undef +4297166330140605:8451124687:1879043015:+:6572081672:- +4052795866210958:6719393806:undef:undef:undef:undef +5599942494884300:5254913589:3675016142:+:1579897447:- +4294165001010270:65299208227:41060667946:+:24238540281:- +3521876006123819:51505483973:27929516537:+:23575967436:- +2975686350001438:68975719872:undef:undef:undef:undef +9987578698637948:933580676654:undef:undef:undef:undef +4478813995882420:899559579484:undef:undef:undef:undef +5165858021681371:944871700984:681251258947:+:263620442037:- +6631110211690658:5509199572787:4542974354898:+:966225217889:- +3200516254001157:4170270691953:undef:undef:undef:undef +4725488680646020:7454286358510:undef:undef:undef:undef +7995124056621538:44736024134162:undef:undef:undef:undef +6504162480158739:76831874868831:undef:undef:undef:undef +5542455301035590:24098329599047:16785730155033:+:7312599444014:- +6920823137206661:407442625236757:63252097226088:+:344190528010669:- +8037980967696072:851234068131819:undef:undef:undef:undef +9219091854501731:974598538761173:214133199093150:+:760465339668023:- +5898645543617277:1702267099774624:345956751806965:+:1356310347967659:- +5427394238177464:1617335287837212:undef:undef:undef:undef +7858414408880449:1370997827861660:494231516045669:+:876766311815991:- +4307965389980085:45999514731450247:33865094732954127:+:12134419998496120:- +3506104261251482:43601776461059844:undef:undef:undef:undef +1190203419512405:25126719871266670:undef:undef:undef:undef +4557460955130067:101730316098224713:44158272895555038:+:57572043202669675:- +2489098116741103:541191016580188961:undef:undef:undef:undef +2348212366514288:942563318071885939:313053493374155951:+:629509824697729988:- +2830409913735330:7114495355770228431:undef:undef:undef:undef +1035772148392020:3452915168200802716:undef:undef:undef:undef +3460827696752293:4050339818955672472:2049422512624877061:+:2000917306330795411:- +8963229771220449:22270265754077222943:undef:undef:undef:undef +8313155627789908:64065344162590490500:undef:undef:undef:undef +3363443326421517:73970563228805828520:undef:undef:undef:undef +8923845510217141:385542532463723478331:15517894406759966535:+:370024638056963511796:- +6397366318806880:574475474744016411405:undef:undef:undef:undef +8675397679844558:562564176023446123792:undef:undef:undef:undef +2910301871886134:3955964756594770607877:2631050206050423008834:+:1324914550544347599043:- +1584670627015036:6273088882766402366721:3622531239479413500850:+:2650557643286988865871:- +5363220656008849:2586623903413614439911:782911984926818975497:+:1803711918486795464414:- +6917209535561867:40256744895225904319995:36867327456178728083643:+:3389417439047176236352:- +1269024503328432:25294841853669594580214:undef:undef:undef:undef +7432100573870595:54567896453627810319112:23203612842302240123459:+:31364283611325570195653:- +1608747248547618:275565079805161504581379:34887313788098803213992:+:240677766017062701367387:- +3404549828233218:825396479228178239259671:66024141064239540183677:+:759372338163938699075994:- +3774208778004648:138650287251389136814825:26999089498391943065487:+:111651197752997193749338:- +4238577793752036:9699877545727099583035941:undef:undef:undef:undef +1929923068567981:5918633631450380694017363:5890956102390179715255422:+:27677529060200978761941:- +1680477580056962:7214912248517969194342092:undef:undef:undef:undef +1841496083602801:730:551:+:179:- +8434627776439561:601:302:+:299:- +2792920109380107:107:81:+:26:- +3732100459735904:8358:undef:undef:undef:undef +8168579180718854:5142:undef:undef:undef:undef +8391127774917141:6694:4409:+:2285:- +5582017437205135:52680:undef:undef:undef:undef +8474984865860137:15181:14622:+:559:- +8002292586438596:68277:27491:+:40786:- +9108699884108801:872777:199191:+:673586:- +2594412923170703:834457:248085:+:586372:- +4382993700983297:886259:746683:+:139576:- +4689917420119983:8773750:6780147:+:1993603:- +8843943989430193:6007841:undef:undef:undef:undef +4033114285249838:5188322:undef:undef:undef:undef +8878559192189492:37892910:undef:undef:undef:undef +2171021458249957:55548527:18532842:+:37015685:- +9374733837743972:73016043:10924895:+:62091148:- +6085111030150088:739954615:215570147:+:524384468:- +9836471563372734:624803391:undef:undef:undef:undef +4334547062456505:477326192:273113609:+:204212583:- +5641861306250880:8832758427:undef:undef:undef:undef +9282577429917227:8706626761:7153121728:+:1553505033:- +8782255279233126:4479378289:122614048:+:4356764241:- +4565103207928964:16631468392:undef:undef:undef:undef +9321957127607023:20100023226:12040783975:+:8059239251:- +3625564843880550:41923217660:undef:undef:undef:undef +7900401309225411:161107386415:125105233316:+:36002153099:- +4427656535510813:487927814719:404683134565:+:83244680154:- +7812718803048309:602566056314:308458485965:+:294107570349:- +7571221341805542:6030702615909:undef:undef:undef:undef +2948534915241316:5252720022991:4758572766630:+:494147256361:- +5845669995935470:4629995023092:undef:undef:undef:undef +3579525232544162:39313951359940:undef:undef:undef:undef +6208071235675697:17256859470592:9001694712785:+:8255164757807:- +8493489755607416:38581143900936:undef:undef:undef:undef +8104547175255898:566187098341508:undef:undef:undef:undef +8498106976520476:649272916882489:537412539637276:+:111860377245213:- +6056449049580070:987620164921142:undef:undef:undef:undef +9200405987416644:1630468931967993:undef:undef:undef:undef +1854670925859374:9513627892986071:5360708176851304:+:4152919716134767:- +8660834948899312:5061850505225302:undef:undef:undef:undef +1932762741080270:64945331340406576:undef:undef:undef:undef +7639232039301626:92678803159372555:67941230624187431:+:24737572535185124:- +8308435541995600:81464543657213580:undef:undef:undef:undef +6416383750046724:692978472836400494:undef:undef:undef:undef +4333088713722114:736729240226843093:625765443124600165:+:110963797102242928:- +4069245031083072:989837201369577923:200648032759061798:+:789189168610516125:- +5464948308777659:3773246659761710346:484043589062912105:+:3289203070698798241:- +9052755996308153:5935018747613414191:3253842088745672734:+:2681176658867741457:- +4767195926080263:2387490215566551629:987310242747406583:+:1400179972819145046:- +3637936503902920:38490091045627145932:undef:undef:undef:undef +2765129188212842:73182047176467825082:undef:undef:undef:undef +6657932056404472:42189316897298808093:29263584725413709680:+:12925732171885098413:- +6139779049542261:762726188214699430665:undef:undef:undef:undef +3792903888814328:489339261115434009811:220070108379020419069:+:269269152736413590742:- +3211142574336455:858751535436865059100:undef:undef:undef:undef +3450677913282617:5403793078611106749350:5391783316670651866803:+:12009761940454882547:- +6771447806101866:6085905690697813072939:4774799916319955714716:+:1311105774377857358223:- +6822331428246822:8359862518235964521832:undef:undef:undef:undef +6317960530647740:68474265611971391082695:undef:undef:undef:undef +3318554932316905:80985070024981863847822:66850108520564448472131:+:14134961504417415375691:- +8729037402547222:84561621551432649225705:52418781236523067498273:+:32142840314909581727432:- +8118655713195858:515319522134590484525849:331192994432869448052106:+:184126527701721036473743:- +2421322609601039:326679188338412179275138:116479631956383766942685:+:210199556382028412332453:- +3286634122049957:838886646676329892591495:714196563700843058381753:+:124690082975486834209742:- +6803870184899314:9739554545089514248279854:undef:undef:undef:undef +8987447912806144:8608890406656831323180183:4626658738937045520188853:+:3982231667719785802991330:- +1772711180643221:9902314582961863026124704:7468954682706445423572029:+:2433359900255417602552675:- +18777857878295360:790:undef:undef:undef:undef +75809979679217995:986:889:+:97:- +22866702148073916:490:undef:undef:undef:undef +73483902338991005:3586:2819:+:767:- +38687357866460274:4227:undef:undef:undef:undef +90142743294164177:2535:1883:+:652:- +87704257155547192:10969:8917:+:2052:- +11903610773811161:86735:33566:+:53169:- +28543095733854604:37908:undef:undef:undef:undef +71749918282618630:164346:undef:undef:undef:undef +76418739681053999:637604:282331:+:355273:- +11129705518878901:121644:46081:+:75563:- +20938080520482539:6383818:1513541:+:4870277:- +12247604817875019:4813387:4337813:+:475574:- +63266108551418800:4329325:undef:undef:undef:undef +41749736061008654:64644113:26583203:+:38060910:- +86995843522210495:28427580:undef:undef:undef:undef +13713199587315799:82855577:61085180:+:21770397:- +78214750687323511:989749048:48537759:+:941211289:- +86774105870039829:237940128:undef:undef:undef:undef +34792635512106973:484742319:448157953:+:36584366:- +46681416697256434:7231958622:undef:undef:undef:undef +59828077309201612:3826217637:372734563:+:3453483074:- +51754287857029799:7930068950:7660819649:+:269249301:- +31885903829433215:29175165805:undef:undef:undef:undef +10969315709785573:90850620535:63749809002:+:27100811533:- +66299953094060171:71343248352:47297687459:+:24045560893:- +82840724271832395:898974512616:undef:undef:undef:undef +56497251668256360:563757295049:undef:undef:undef:undef +45662002402811719:453066329892:234727412767:+:218338917125:- +88181393350160099:6874242621875:5723406976774:+:1150835645101:- +44200929083488529:2580710783209:249745227798:+:2330965555411:- +41911412061920578:9843998117854:undef:undef:undef:undef +72089859535700392:31728830349092:undef:undef:undef:undef +67073616480032418:19358252185659:undef:undef:undef:undef +25282244918188492:80954568589902:undef:undef:undef:undef +69144384761784052:698148087605375:635940041908613:+:62208045696762:- +33028935026922694:662899485291916:undef:undef:undef:undef +75948842502745139:524597987228022:173554320236693:+:351043666991329:- +85678624148787208:4349995716057139:2531559180051487:+:1818436536005652:- +71044090148500051:7531275038393232:4686035531424811:+:2845239506968421:- +68329207483625307:5059503112707484:3690126846012331:+:1369376266695153:- +85881840717946907:77579074192953116:24957019494399099:+:52622054698554017:- +56637960107128459:43484382926479372:39973370574620979:+:3511012351858393:- +12255016666047012:51046491176991341:37825247893004932:+:13221243283986409:- +80237919448700297:444882530036463174:436653873114780869:+:8228656921682305:- +20214002634696644:317311849929769996:undef:undef:undef:undef +75139735869521946:547956235353110173:255528464812415228:+:292427770540694945:- +96217068708656452:8294875925040936662:undef:undef:undef:undef +88992764620505470:4745194956805966064:undef:undef:undef:undef +76681052104470570:4667476501948157920:undef:undef:undef:undef +63428953609896758:86816220069575834171:18124155556302065384:+:68692064513273768787:- +53958167650448494:49842513027450179446:undef:undef:undef:undef +80805749044540444:96560693615440661618:undef:undef:undef:undef +99885150542851309:461313333329818830769:20947175510113906213:+:440366157819704924556:- +49540759584744708:208932018246435390606:undef:undef:undef:undef +55304493965245217:651391776487117112825:undef:undef:undef:undef +58260781049175593:9190941834165116577345:1339420552484048939222:+:7851521281681067638123:- +99399663376107221:1302994212129995067117:905852763300789383981:+:397141448829205683136:- +51599644923328960:5569963733400718975396:undef:undef:undef:undef +47319956365139740:84608481430016788558747:4371117020818448105223:+:80237364409198340453524:- +82393401545267769:72126010140224372341807:1640917274925737984283:+:70485092865298634357524:- +36300969153089991:38561723767761932802970:31789799375515886901271:+:6771924392246045901699:- +38573357102206622:964784204136472709553052:undef:undef:undef:undef +11756151567175068:972615649806262488701593:142546357347680838302455:+:830069292458581650399138:- +26126361201409438:210132523018916975469125:170574254286856108724877:+:39558268732060866744248:- +19280435812491806:9160872983744441808454832:undef:undef:undef:undef +30476572854480239:3010773395760369439421178:1120729230046912514768309:+:1890044165713456924652869:- +16489348319896622:1960616646574107167388815:1614843307003134955986738:+:345773339570972211402077:- +56796852737757856:324:undef:undef:undef:undef +14224883309563304:320:undef:undef:undef:undef +49614531212136907:621:37:+:584:- +72027941762888670:3457:781:+:2676:- +31909303812382508:7567:5272:+:2295:- +43605089878314626:2166:undef:undef:undef:undef +25955086048492185:16242:undef:undef:undef:undef +41753708575470861:44361:undef:undef:undef:undef +26632877646544846:71627:9472:+:62155:- +12715461500422472:566189:296100:+:270089:- +33449055928920850:793335:undef:undef:undef:undef +40164270998180646:859691:242295:+:617396:- +29446347330124339:5033393:3531313:+:1502080:- +40061495291417857:8680501:8596333:+:84168:- +44274952327461512:7556750:undef:undef:undef:undef +96948602606349469:91315196:67529537:+:23785659:- +33176426245472427:32431159:30803912:+:1627247:- +43430641679126806:51532151:32282919:+:19249232:- +33301494630792380:171270740:undef:undef:undef:undef +90570682784220861:924188063:679831166:+:244356897:- +79430639328556982:512662150:undef:undef:undef:undef +57470169462146327:1470589749:687908813:+:782680936:- +68483406845364308:9466550523:4027821677:+:5438728846:- +70010934239091688:4341140166:undef:undef:undef:undef +49819436279160535:85904509902:79882082971:+:6022426931:- +93939925474315091:54581759721:39754230431:+:14827529290:- +24918572925189973:52105238375:27182117787:+:24923120588:- +39130177022959274:790758679262:undef:undef:undef:undef +51488393012386966:186208945027:17629775407:+:168579169620:- +72347642047909278:371269622185:279395670457:+:91873951728:- +61743127891697265:9191136040714:7147317599809:+:2043818440905:- +94530977048044534:6094678504209:5593753359589:+:500925144620:- +96854619031136879:6295728848074:1461398441715:+:4834330406359:- +68333595487310252:25375601707162:undef:undef:undef:undef +38442808642087038:77260027424346:undef:undef:undef:undef +41229185348028335:87463519154924:21667283325847:+:65796235829077:- +88413445336742945:679619497367754:604690101318311:+:74929396049443:- +77766978202972850:532019189388375:undef:undef:undef:undef +98496978178709531:776203931382008:15332536063739:+:760871395318269:- +12135128519994193:4455847532999167:1996975354881579:+:2458872178117588:- +70050719911666950:6737065618201523:5420064790711085:+:1317000827490438:- +99816374601370079:8074615437393557:3874990223148846:+:4199625214244711:- +80053567320567819:33266399295159331:2437650441594990:+:30828748853564341:- +29279386548565787:71796696258651927:16338945935201333:+:55457750323450594:- +15326228583724151:98553224075843632:28034415758903719:+:70518808316939913:- +89875622639855292:795874069109127227:211788693953700046:+:584085375155427181:- +32932645784696979:265173237301416015:undef:undef:undef:undef +23468588393511838:388700173410724183:43606211513805393:+:345093961896918790:- +17030761113179844:3522642303698597018:undef:undef:undef:undef +25443256387461272:4263945185892889838:undef:undef:undef:undef +54666575539893269:7153721776751992625:3928884116985042204:+:3224837659766950421:- +74986511551012014:89202256674285665390:undef:undef:undef:undef +66006984685142039:98345273285790752900:undef:undef:undef:undef +60227434648331826:80447948867125964627:64805254089895456604:+:15642694777230508023:- +83197999838331470:206439239170170931186:undef:undef:undef:undef +33095050621963840:479700065997411479690:undef:undef:undef:undef +94992065168886975:623038807404702315030:undef:undef:undef:undef +92232428828688029:8693752964100314956043:3383560292666666143290:+:5310192671433648812753:- +88811946643767688:7182545366144332727506:undef:undef:undef:undef +52846113871395631:5946343277588065327048:1997347915674367576591:+:3948995361913697750457:- +36472330863434829:29832888877450801264149:undef:undef:undef:undef +96006517877528028:22882643548120125836573:14983780620872265870535:+:7898862927247859966038:- +34816311294894820:65235726487604145294478:undef:undef:undef:undef +85238927115324946:497428028366600978783321:210338557119241795225303:+:287089471247359183558018:- +42232182027548668:584846812665652023573192:undef:undef:undef:undef +19774138567763467:978868828272500398176932:404217494869292525731887:+:574651333403207872445045:- +10834206747351019:1297741647746812329275159:134217273110843180903028:+:1163524374635969148372131:- +79991570797862058:4098378704356382612531249:2897909065962736070033105:+:1200469638393646542498144:- +20160765916820901:9688953547468938268099867:4894015327897760918003740:+:4794938219571177350096127:- +99345310811005534:522:undef:undef:undef:undef +24449021684080449:376:313:+:63:- +27217112835537620:998:undef:undef:undef:undef +97266343556972814:2659:295:+:2364:- +78416890282886204:1454:undef:undef:undef:undef +53173514583689642:8157:647:+:7510:- +57630912489621447:37888:15863:+:22025:- +81145454762535477:53895:undef:undef:undef:undef +15553323637705201:17102:2899:+:14203:- +90462265847168301:519864:undef:undef:undef:undef +32784389531362850:354724:undef:undef:undef:undef +61814294669743836:130494:undef:undef:undef:undef +14952225604902141:4552749:undef:undef:undef:undef +66472449232349347:8123031:7843594:+:279437:- +70964495787965198:6859465:6343177:+:516288:- +92239078565249821:22113845:16215346:+:5898499:- +32249467834212541:38978711:5664011:+:33314700:- +58782909107539147:46231972:42798131:+:3433841:- +20948767694083693:317341273:280940801:+:36400472:- +98088779243778558:812664342:undef:undef:undef:undef +17955727324816081:546925088:85189617:+:461735471:- +13916230920273454:5430982456:undef:undef:undef:undef +57085192554647291:6331757284:2850368415:+:3481388869:- +73644026390874905:5198544666:undef:undef:undef:undef +75754675227551541:50984810352:undef:undef:undef:undef +49227526928437872:14437584861:undef:undef:undef:undef +41633344583414913:94364328454:73401686181:+:20962642273:- +23304947805992190:264077616045:undef:undef:undef:undef +84404676686237561:731416658233:135112311368:+:596304346865:- +58424978869604137:284169430556:210441825417:+:73727605139:- +85282171878110428:7079991708223:3326310725558:+:3753680982665:- +33273670046160765:6471656773786:5655031918089:+:816624855697:- +48432794051350399:5520561444669:2635417198198:+:2885144246471:- +70248691197431409:58766651880244:28749872541449:+:30016779338795:- +16182915488102705:25353442103060:undef:undef:undef:undef +11459182784692556:32862757434317:25337085262452:+:7525672171865:- +52475419230856735:290741912888882:197418482050273:+:93323430838609:- +36232260761342188:562683970264838:undef:undef:undef:undef +47746526812211988:227532097988679:undef:undef:undef:undef +12988437213394599:2317426182778187:552294338258473:+:1765131844519714:- +73906096263761408:4459047733371868:undef:undef:undef:undef +61516014387199789:4346955324090562:4308724219827691:+:38231104262871:- +25476538467650465:40268304727221926:28241984461230661:+:12026320265991265:- +32945929373304579:28101680114954157:undef:undef:undef:undef +50702148816902914:31061406078158976:undef:undef:undef:undef +44339949843554039:535985615359619194:27119109581542179:+:508866505778077015:- +26876110452581283:362923925759693879:136882351792173550:+:226041573967520329:- +72762877934098067:501865071020908804:58650312943382271:+:443214758077526533:- +29949957083929573:9550336519238088976:9479389239358049309:+:70947279880039667:- +20546840597400853:8880476186490221101:5034762524290054635:+:3845713662200166466:- +97362418054391373:9437709569383448836:4154069307426224253:+:5283640261957224583:- +20347662375082835:29164011715132253926:15426087777382241245:+:13737923937750012681:- +60082481508459472:46452247849437497581:9699944804131926489:+:36752303045305571092:- +46285048364241342:27750201480751298416:undef:undef:undef:undef +49885308189279803:965742941017439487231:879257486593763460761:+:86485454423676026470:- +45947044455251118:200533374427872344590:undef:undef:undef:undef +77040110939061271:952699824074496863977:701129178619309401078:+:251570645455187462899:- +12628364659709876:7747580791379386393485:undef:undef:undef:undef +42048102653710734:8754132400302543755518:undef:undef:undef:undef +16931849022276291:2019447833554034747657:657894404027592104454:+:1361553429526442643203:- +21371712853616022:65228568521673389873709:undef:undef:undef:undef +52799363362779200:68781782093587525271926:undef:undef:undef:undef +11750725372935264:43166802878916533044335:undef:undef:undef:undef +81914829780139643:973371029532900522325220:600317512899566983461187:+:373053516633333538864033:- +30765282927580498:256467839165483949215717:25007602924652017154434:+:231460236240831932061283:- +77604538819261036:955126528879719986642845:127263043096979276099311:+:827863485782740710543534:- +54342840099349701:4207206876558598048853326:1878047670533526928050519:+:2329159206025071120802807:- +39810143463392715:2015449810352967156851317:528654547790948124880307:+:1486795262562019031971010:- +68616251362946099:3368537671378563823558444:1958114403431963337122839:+:1410423267946600486435605:- +739944222209625484:205:39:+:166:- +312146567644044979:871:534:+:337:- +234995735919927648:852:undef:undef:undef:undef +881263226289251457:6810:undef:undef:undef:undef +671005619467629815:4721:1281:+:3440:- +163036409710514668:3303:2920:+:383:- +285780624801101379:27576:undef:undef:undef:undef +896090930958559824:42740:undef:undef:undef:undef +796712777144708071:51620:16891:+:34729:- +908228407756368610:354237:77929:+:276308:- +372770406414583885:114473:8911:+:105562:- +666604792063950635:780404:708391:+:72013:- +828469453953096645:7368623:6984403:+:384220:- +750429865401289746:4106755:3408661:+:698094:- +242743961663778672:6691039:5467072:+:1223967:- +833148929164023225:59659076:43404625:+:16254451:- +202481921150250925:16681346:6835463:+:9845883:- +906071778290951527:46253994:29208679:+:17045315:- +901537238852563081:608953684:586427557:+:22526127:- +664522182923427217:120340172:79717233:+:40622939:- +311780644074700991:557325991:159256188:+:398069803:- +562157116867638256:8808712614:undef:undef:undef:undef +827027313006382025:7617649399:855597065:+:6762052334:- +724765870787062032:4129441951:1691471417:+:2437970534:- +105336833433113634:36131529918:undef:undef:undef:undef +834962892482436839:14998237399:8997276447:+:6000960952:- +996997075327497658:74951986703:49403107751:+:25548878952:- +829857708777346295:277636091705:undef:undef:undef:undef +797219364501072188:707978536108:undef:undef:undef:undef +877139979032848018:119112975165:28481990677:+:90630984488:- +841028034609677137:2247069051237:1676672153338:+:570396897899:- +733175820093125946:4116968796869:3995611623895:+:121357172974:- +506257543138215883:2419221598350:421374220447:+:1997847377903:- +678435520652452835:21710927384035:undef:undef:undef:undef +751013114453216196:36101413264893:undef:undef:undef:undef +113935549303883901:86443507710429:undef:undef:undef:undef +205886532494178305:146795182999040:undef:undef:undef:undef +546381004536017022:863110789314293:457137213828287:+:405973575486006:- +344688333778363286:475024385790495:71687016663251:+:403337369127244:- +187225701806494142:9330595506627888:undef:undef:undef:undef +985627526044453786:3476940225646923:undef:undef:undef:undef +125063969759197129:1016025397327886:282306028375647:+:733719368952239:- +614276562355001110:86173070944037787:10915320915553978:+:75257750028483809:- +435319051869297529:63518065647358657:24665703564912947:+:38852362082445710:- +773110844108090999:16325920136436508:12311461352358555:+:4014458784077953:- +806251846239181595:937484240885930727:undef:undef:undef:undef +508800826806954868:915873656971571794:undef:undef:undef:undef +704457075023099246:304998104112998959:209859717777732123:+:95138386335266836:- +623450091203253565:8334627439350300264:1033517460058994245:+:7301109979291306019:- +198202865519155748:8301375918345092606:undef:undef:undef:undef +950569878122459278:6034426742841068379:802248276552555118:+:5232178466288513261:- +439288797376507004:11850021366498989698:undef:undef:undef:undef +611857385566830500:50683866719365423530:undef:undef:undef:undef +453818827428727132:27375762610446687060:undef:undef:undef:undef +806668777608681027:190692192811013315445:undef:undef:undef:undef +764528714166777851:498893044164425465619:243872188860218207678:+:255020855304207257941:- +347976294384733771:222068335639062180905:11023291776468980576:+:211045043862593200329:- +838880478747206996:7042454656162207372364:undef:undef:undef:undef +519647266407412226:4042951395655889924327:1011531208527057271429:+:3031420187128832652898:- +429463306387728577:2904919838953885426448:1265294687955296659681:+:1639625150998588766767:- +454739260236677400:43435723260864921208620:undef:undef:undef:undef +235055100449954428:70371026613122378003611:26636398490735166000447:+:43734628122387212003164:- +357907530028599162:24884942866930377270334:undef:undef:undef:undef +601819786309569269:481586911497552481526182:114490489137964602805827:+:367096422359587878720355:- +187307474587651239:647953927486869640668748:268953788893571607167967:+:379000138593298033500781:- +967433485832737001:855829779915639694093261:619444618765346526822032:+:236385161150293167271229:- +602385516947039571:8687594336791008251491315:905831341305032267415096:+:7781762995485975984076219:- +797797541031493478:3214522432583205161683305:1506836251244780383860047:+:1707686181338424777823258:- +116746909123726496:3835311690391940719271108:undef:undef:undef:undef +681967180982108189:821:611:+:210:- +107708843072655783:164:95:+:69:- +766842904621101824:436:undef:undef:undef:undef +203539646202080784:1049:158:+:891:- +140781008874299874:5198:undef:undef:undef:undef +277082549150592603:6761:4674:+:2087:- +974530190267616268:23621:undef:undef:undef:undef +257651217367991702:31708:undef:undef:undef:undef +773577518971720767:91090:43333:+:47757:- +492531976782122034:162901:8440:+:154461:- +670962596278515952:620130:undef:undef:undef:undef +840568880311046680:604775:undef:undef:undef:undef +649351362475117207:9694565:3205168:+:6489397:- +357938805759032260:8042113:4693011:+:3349102:- +913722984348387908:8971139:1045654:+:7925485:- +933649370374162764:46218886:undef:undef:undef:undef +349410753181637707:98529556:1380271:+:97149285:- +706053457495316397:51382718:28180947:+:23201771:- +405201683720718793:977977364:489251489:+:488725875:- +664598253138890656:967862390:undef:undef:undef:undef +285292835017340308:347819476:undef:undef:undef:undef +872960570171611437:6979466832:undef:undef:undef:undef +542659342768117580:3110573897:322682024:+:2787891873:- +924391825063557497:2217960093:1570985099:+:646974994:- +992370052861293406:57201833091:undef:undef:undef:undef +108901810098555137:70441428908:28156960021:+:42284468887:- +702803944438852101:26812164169:19755973306:+:7056190863:- +273678061334705784:432982040733:undef:undef:undef:undef +807261622685427355:641090349479:569863472112:+:71226877367:- +113016841865081910:314323641274:undef:undef:undef:undef +174152365943648881:3588495242914:3345820006915:+:242675235999:- +435583662090633735:6380155943484:undef:undef:undef:undef +486859494777425717:7928718633119:822566729725:+:7106151903394:- +176963388197987622:55068405765753:undef:undef:undef:undef +325811567662029162:40058509885462:undef:undef:undef:undef +955218985760083130:62518232745635:undef:undef:undef:undef +443394278944930332:560762322993187:253844818353906:+:306917504639281:- +396430035471051157:289019885467962:149311996773481:+:139707888694481:- +167903502160975244:968908013604743:710639578903369:+:258268434701374:- +774406386680166576:9013385182875468:undef:undef:undef:undef +237662527672279155:1067553702374636:102195736886563:+:965357965488073:- +598317780188527430:6048355888957008:undef:undef:undef:undef +104201624575868217:73162203170505428:33472178232043165:+:39690024938462263:- +249800345918568560:24994938428560314:undef:undef:undef:undef +696656966910637972:25434496018832672:undef:undef:undef:undef +955673121757712411:145050266275280522:85614369228848305:+:59435897046432217:- +438970498459641004:624631386113542505:547290084930384659:+:77341301183157846:- +909709124056023317:614703065809376721:398478752261875130:+:216224313547501591:- +100155560151327465:7725277750251013137:undef:undef:undef:undef +206948033775177015:5757364081707158095:undef:undef:undef:undef +924103301676368290:4965215709746283461:4206883590964444248:+:758332118781839213:- +413249971255617621:53186082903358573681:37536987354766582631:+:15649095548591991050:- +349742873878469555:47010285173518596928:35377126292235048059:+:11633158881283548869:- +572830987853789903:17723955576530834788:2970324334779977787:+:14753631241750857001:- +373768487580965325:673733890110850740007:537313447996159520532:+:136420442114691219475:- +416360599486706613:213562464926973212977:145572025736250100053:+:67990439190723112924:- +255307733534768887:384491114741614726983:130140816678638446828:+:254350298062976280155:- +243721910486372067:2806740610389779702552:2570038985185034779307:+:236701625204744923245:- +182047561156981598:5901886460385054914320:undef:undef:undef:undef +879512730478938210:6776533573818022764915:undef:undef:undef:undef +334553986324389684:12517524758678396786266:undef:undef:undef:undef +222461442037222140:81066691159855854800883:undef:undef:undef:undef +581029766120709406:38912538998426697192431:7658465458579874902537:+:31254073539846822289894:- +818243846439592136:885970918883970733985059:2159774719225611754611:+:883811144164745122230448:- +282348932273257360:873329456614643181381202:undef:undef:undef:undef +983316489831539150:924557337165720132867116:undef:undef:undef:undef +809733838473777658:9547866968610146713102477:2103383893146127986438468:+:7444483075464018726664009:- +396887650469626882:7845327974301986160954536:undef:undef:undef:undef +452170280517345885:3958421076582645546044178:undef:undef:undef:undef +781570723018926424:573:274:+:299:- +401460158878978629:281:181:+:100:- +814035689715571067:945:68:+:877:- +615182183410788580:8509:3126:+:5383:- +450845433131669747:4703:4623:+:80:- +520181838750492251:3924:3887:+:37:- +603769251917303493:94838:66131:+:28707:- +524068448833342303:73325:66567:+:6758:- +713183549787548521:71889:65626:+:6263:- +538945463990590912:282376:undef:undef:undef:undef +217847128784696569:264652:47833:+:216819:- +304998980781206559:621589:84973:+:536616:- +295808426943965107:5849600:4018043:+:1831557:- +302407358774745669:3870624:undef:undef:undef:undef +637390987317561085:2868477:1447483:+:1420994:- +277457178799143027:28997888:3910587:+:25087301:- +965362079672929927:50215844:29758271:+:20457573:- +408923169530392581:62881687:49533335:+:13348352:- +297018840451809570:951778007:194894641:+:756883366:- +687051036050103995:609840170:undef:undef:undef:undef +975142143309314227:785715963:333198112:+:452517851:- +595844632862035773:5572417854:undef:undef:undef:undef +138891110547373115:5257258377:3150032390:+:2107225987:- +129272977679931354:5770902820:undef:undef:undef:undef +348788865116431918:36403464432:undef:undef:undef:undef +156759481853855521:71405067820:28926835741:+:42478232079:- +391580558298948898:14260350331:8358043865:+:5902306466:- +530357894657488407:432523414763:324599665371:+:107923749392:- +249041103039299643:661116835748:496697677755:+:164419157993:- +169454863252672806:955769873770:undef:undef:undef:undef +677740582607616370:4148582049178:undef:undef:undef:undef +194650133663085218:1087812926910:undef:undef:undef:undef +426959158065157441:1557729832601:531111368478:+:1026618464123:- +190672481619374176:16096133890936:undef:undef:undef:undef +278274975276226306:20769753482723:undef:undef:undef:undef +208631368712440107:40338347057249:13869691113085:+:26468655944164:- +759149066424119080:758448226173320:undef:undef:undef:undef +576796718957654618:713615321673676:undef:undef:undef:undef +359107963616755855:110804624649059:65768022066249:+:45036602582810:- +817707147713057474:6705651369913227:4763638317195305:+:1942013052717922:- +217164771621955380:2119786950821631:undef:undef:undef:undef +876211027396924498:7853424764924686:undef:undef:undef:undef +126024995196609433:71949677735730773:27391852143934070:+:44557825591796703:- +568489518079846089:40014513832833130:31300447427736299:+:8714066405096831:- +378749987539961063:49011317327263342:31588616004329097:+:17422701322934245:- +988405027394582532:878496535058181987:undef:undef:undef:undef +487986828231244840:449692011945969628:undef:undef:undef:undef +741797012196571282:354477086056442934:undef:undef:undef:undef +377939215180915447:4624077780967689522:903350705581036663:+:3720727075386652859:- +8