diff --git a/.gitignore b/.gitignore index e5536901d..2e01080fb 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ Release *.b /picoquic/qlogger.c /picohttp_t/h3-m-www +/enc_temp_folder/b4cf614ae2082c1d235e80918228e6 diff --git a/CMakeLists.txt b/CMakeLists.txt index 48fa09fdc..eec2ef20b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,7 @@ else() endif() project(picoquic - VERSION 1.1.19.0 + VERSION 1.1.19.1 DESCRIPTION "picoquic library" LANGUAGES C CXX) diff --git a/UnitTest1/unittest1.cpp b/UnitTest1/unittest1.cpp index 2f27c97f0..194c40f8d 100644 --- a/UnitTest1/unittest1.cpp +++ b/UnitTest1/unittest1.cpp @@ -2248,6 +2248,12 @@ namespace UnitTest1 Assert::AreEqual(ret, 0); } + TEST_METHOD(mediatest_wifi) { + int ret = mediatest_wifi_test(); + + Assert::AreEqual(ret, 0); + } + TEST_METHOD(mediatest_worst) { int ret = mediatest_worst_test(); diff --git a/loglib/csv.c b/loglib/csv.c index 245e3869a..7ba4f0636 100644 --- a/loglib/csv.c +++ b/loglib/csv.c @@ -81,6 +81,7 @@ int picoquic_cc_bin_to_csv(FILE * f_binlog, FILE * f_csvlog) ret |= fprintf(f_csvlog, "cwin blkd, ") <= 0; ret |= fprintf(f_csvlog, "flow blkd, ") <= 0; ret |= fprintf(f_csvlog, "stream blkd, ") <= 0; + ret |= fprintf(f_csvlog, "app limited, ") <= 0; ret |= fprintf(f_csvlog, "cc_state, ") <= 0; ret |= fprintf(f_csvlog, "cc_param, ") <= 0; ret |= fprintf(f_csvlog, "bw_max, ") <= 0; @@ -126,7 +127,6 @@ int csv_cb(bytestream * s, void * ptr) time -= data->starttime; if (ret == 0 && id == picoquic_log_event_cc_update) { - uint64_t sequence = 0; uint64_t packet_rcvd = 0; uint64_t highest_ack = UINT64_MAX; @@ -150,6 +150,7 @@ int csv_cb(bytestream * s, void * ptr) uint64_t cc_param = 0; uint64_t bw_max = 0; uint64_t bytes_in_transit = 0; + uint64_t app_limited = 0; ret |= byteread_vint(s, &sequence); ret |= byteread_vint(s, &packet_rcvd); @@ -177,11 +178,12 @@ int csv_cb(bytestream * s, void * ptr) (void)byteread_vint(s, &cc_param); (void)byteread_vint(s, &bw_max); (void)byteread_vint(s, &bytes_in_transit); + (void)byteread_vint(s, &app_limited); - if (ret != 0 || fprintf(f_csvlog, "%" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRId64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ",", + if (ret != 0 || fprintf(f_csvlog, "%" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRId64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ",", time, path_id, sequence, (int64_t)highest_ack, high_ack_time, last_time_ack, cwin, one_way_delay, rtt_sample, SRTT, RTT_min, bandwidth_estimate, receive_rate_estimate, Send_MTU, pacing_packet_time, - nb_retrans, nb_spurious, cwin_blkd, flow_blkd, stream_blkd, cc_state, cc_param, bw_max, bytes_in_transit) <= 0) { + nb_retrans, nb_spurious, cwin_blkd, flow_blkd, stream_blkd, app_limited, cc_state, cc_param, bw_max, bytes_in_transit) <= 0) { ret = -1; } if (ret != 0 || fprintf(f_csvlog, "\n") <= 0) { diff --git a/loglib/qlog.c b/loglib/qlog.c index b1ecbb3d2..5814e95b8 100644 --- a/loglib/qlog.c +++ b/loglib/qlog.c @@ -58,6 +58,7 @@ typedef struct qlog_context_st { unsigned int key_phase_received : 1; unsigned int spin_bit_sent_last : 1; unsigned int spin_bit_sent : 1; + unsigned int app_limited : 1; int state; } qlog_context_t; @@ -1312,6 +1313,7 @@ int qlog_cc_update(uint64_t time, uint64_t path_id, bytestream* s, void* ptr) uint64_t cc_param = 0; uint64_t bw_max = 0; uint64_t bytes_in_transit = 0; + uint64_t app_limited = 0; qlog_context_t* ctx = (qlog_context_t*)ptr; FILE* f = ctx->f_txtlog; @@ -1341,6 +1343,8 @@ int qlog_cc_update(uint64_t time, uint64_t path_id, bytestream* s, void* ptr) ret |= byteread_vint(s, &cc_param); ret |= byteread_vint(s, &bw_max); ret |= byteread_vint(s, &bytes_in_transit); + /* Not checking the app limited return, because it is not present in old bin logs */ + (void) byteread_vint(s, &app_limited); if (ret == 0 && (cwin != ctx->cwin || rtt_sample != ctx->rtt_sample || SRTT != ctx->SRTT || @@ -1393,6 +1397,12 @@ int qlog_cc_update(uint64_t time, uint64_t path_id, bytestream* s, void* ptr) if (rtt_sample != ctx->rtt_sample) { fprintf(f, "%s\"latest_rtt\": %" PRIu64, comma, rtt_sample); ctx->rtt_sample = rtt_sample; + comma = ","; + } + + if (app_limited != ctx->app_limited) { + fprintf(f, "%s\"app_limited\": %" PRIu64, comma, app_limited); + ctx->app_limited = (app_limited != 0); /* comma = ","; (not useful since last block of function) */ } diff --git a/picoquic/bbr.c b/picoquic/bbr.c index b655fd073..3618cb866 100644 --- a/picoquic/bbr.c +++ b/picoquic/bbr.c @@ -25,6 +25,10 @@ #include "cc_common.h" #include "picoquic_utils.h" +#define RTTJitterBuffer On +#define RTTJitterBufferStartup On +#define RTTJitterBufferProbe On + /* Implementation of the BBR3 algorithm, tuned for Picoquic. Based on https://datatracker.ietf.org/doc/html/draft-cardwell-iccrg-bbr-congestion-control-02, @@ -103,6 +107,7 @@ typedef enum { #define BBRExtraAckedFilterLen 10 /* to compute the extra acked parameter */ #define BBRMinRTTFilterLen 10000000 /* Length of min rtt filter -- 10 seconds. */ +#define BBRRTTJitterBufferLen 7 /* Number of RTT amples retained to filter out jitter */ #define BBRProbeRTTCwndGain 0.5 #define BBRProbeRTTDuration 200000 /* 200msec, 200000 microsecs */ #define BBRProbeRTTInterval 5000000 /* 5 seconds */ @@ -154,8 +159,17 @@ typedef struct st_picoquic_bbr_state_t { uint64_t bw_lo; /* short term maximum -- new in BBRv3 */ uint64_t bw; /* max bw for current cycle, min(max_bw, bw_hi, bw_lo) -- new in BBRv3 */ - /* Data volume parameters:*/ + /* RTT parameters */ uint64_t min_rtt; /* minimum RTT measured over last 10sec */ +#ifdef RTTJitterBuffer + uint64_t rtt_jitter_buffer[BBRRTTJitterBufferLen]; + uint64_t rtt_jitter_cycle; + uint64_t rtt_short_term_min; + uint64_t rtt_short_term_max; + uint64_t last_rtt_sample_stamp; + int nb_rtt_excess; +#endif + /* Data volume parameters:*/ uint64_t bdp; /* estimate of path BDP, bw* min_rtt -- new part of state in BBRv3 */ uint64_t extra_acked; /* estimate of ack aggregation on path -- new in BBRv3 */ uint64_t offload_budget; /* data necessary for using TSO / GSO(or LRO, GRO) -- new in BBRv3 */ @@ -202,7 +216,10 @@ typedef struct st_picoquic_bbr_state_t { uint32_t bw_probe_samples; uint64_t bw_probe_up_acks; picoquic_bbr_ack_phase_t ack_phase; - +#ifdef RTTJitterBuffer + /* Management of RTT checks */ + unsigned int rtt_too_high_in_round : 1; +#endif /* Management of packet losses and recovery */ unsigned int loss_in_round : 1; unsigned int loss_round_start : 1; @@ -280,6 +297,7 @@ typedef struct st_bbr_per_ack_state_t { /* Forward definition of key functions */ static int IsInAProbeBWState(picoquic_bbr_state_t* bbr_state); +static int BBRIsProbingBW(picoquic_bbr_state_t* bbr_state); static void BBREnterDrain(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x, uint64_t current_time); #if 0 static void BBRHandleRestartFromIdle(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x, uint64_t current_time); @@ -309,7 +327,11 @@ static uint64_t BBRBDPMultiple(picoquic_bbr_state_t* bbr_state, picoquic_path_t* static void BBRAdaptUpperBounds(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x, bbr_per_ack_state_t* rs, uint64_t current_time); static int InLossRecovery(picoquic_bbr_state_t* bbr_state); static int BBRHasElapsedInPhase(picoquic_bbr_state_t* bbr_state, uint64_t interval, uint64_t current_time); - +#ifdef RTTJitterBuffer +static void BBRUpdateRTTJitterBuffer(picoquic_bbr_state_t* bbr_state, bbr_per_ack_state_t* rs, uint64_t current_time); +static void BBRResetRTTJitterBuffer(picoquic_bbr_state_t* bbr_state, uint64_t rtt_init_value, uint64_t current_time); +static int IsRTTTooHigh(picoquic_bbr_state_t* bbr_state); +#endif /* Init processes for BBRv3 */ /* Windowed max filter. @@ -320,13 +342,9 @@ static int BBRHasElapsedInPhase(picoquic_bbr_state_t* bbr_state, uint64_t interv uint64_t update_windowed_max_filter(uint64_t* filter, uint64_t v, unsigned int cycle, unsigned int filterLen) { -#if 1 if (filter[cycle % filterLen] < v) { filter[cycle % filterLen] = v; } -#else - filter[cycle % filterLen] = v; -#endif for (unsigned int i = 0; i < filterLen; i++) { if (filter[i] > v) { v = filter[i]; @@ -398,7 +416,9 @@ static void BBROnInit(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x, else { bbr_state->min_rtt = path_x->smoothed_rtt; } - +#ifdef RTTJitterBuffer + BBRResetRTTJitterBuffer(bbr_state, bbr_state->min_rtt, current_time); +#endif bbr_state->probe_rtt_min_stamp = current_time; bbr_state->probe_rtt_min_delay = bbr_state->min_rtt; bbr_state->min_rtt_stamp = current_time; @@ -618,6 +638,10 @@ static void BBROnExitRecovery(picoquic_bbr_state_t* bbr_state, picoquic_path_t* bbr_state->packet_conservation = 0; if (bbr_state->is_pto_recovery) { + /* TODO: + * we should try to enter startup with a high enough BW. However, + * simple attempts to restore the BW parameters have proven ineffective. + */ BBRReEnterStartup(bbr_state, path_x, current_time); } else if(bbr_state->state == picoquic_bbr_alg_probe_bw_up) { @@ -723,12 +747,6 @@ static void BBRUpdateMaxInflight(picoquic_bbr_state_t* bbr_state, picoquic_path_ inflight = (uint64_t)(((double)inflight) * ((double)bbr_state->wifi_shadow_rtt) / ((double)bbr_state->min_rtt)); } bbr_state->max_inflight = BBRQuantizationBudget(bbr_state, path_x, inflight); -#if 0 - if (bbr_state->state == picoquic_bbr_alg_startup && - bbr_state->bdp_seed > bbr_state->max_inflight) { - bbr_state->max_inflight = bbr_state->bdp_seed; - } -#endif } /* Pacing rate functions */ @@ -816,6 +834,9 @@ static void BBRAdvanceLatestDeliverySignals(picoquic_bbr_state_t* bbr_state, bbr static void BBRResetCongestionSignals(picoquic_bbr_state_t* bbr_state) { bbr_state->loss_in_round = 0; +#ifdef RTTJitterBuffer + bbr_state->rtt_too_high_in_round = 0; +#endif bbr_state->bw_latest = 0; bbr_state->inflight_latest = 0; } @@ -849,9 +870,14 @@ static void BBRLossLowerBounds(picoquic_bbr_state_t* bbr_state) /* Once per round-trip respond to congestion */ static void BBRAdaptLowerBoundsFromCongestion(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x) { - if (IsInAProbeBWState(bbr_state)) + if (BBRIsProbingBW(bbr_state)) { return; + } +#ifdef RTTJitterBufferAdapt + if (bbr_state->loss_in_round || bbr_state->rtt_too_high_in_round) { +#else if (bbr_state->loss_in_round) { +#endif BBRInitLowerBounds(bbr_state, path_x); BBRLossLowerBounds(bbr_state); } @@ -864,11 +890,19 @@ static void BBRUpdateCongestionSignals(picoquic_bbr_state_t* bbr_state, picoqui if (rs->newly_lost > 0) { bbr_state->loss_in_round = 1; } +#ifdef RTTJitterBuffer + if (IsRTTTooHigh(bbr_state)) { + bbr_state->rtt_too_high_in_round = 1; + } +#endif if (!bbr_state->loss_round_start) { return; /* wait until end of round trip */ } BBRAdaptLowerBoundsFromCongestion(bbr_state, path_x); bbr_state->loss_in_round = 0; +#ifdef RTTJitterBuffer + bbr_state->rtt_too_high_in_round = 0; +#endif } static void BBRResetLowerBounds(picoquic_bbr_state_t* bbr_state) @@ -1082,13 +1116,104 @@ static void BBRAdaptMinRttMargin(picoquic_bbr_state_t* bbr_state, picoquic_path_ bbr_state->min_rtt_margin = margin; } +#ifdef RTTJitterBuffer +static void BBRUpdateRTTJitterBuffer(picoquic_bbr_state_t* bbr_state, bbr_per_ack_state_t * rs, uint64_t current_time) +{ + if (current_time > bbr_state->last_rtt_sample_stamp + 1000) { + bbr_state->rtt_jitter_buffer[bbr_state->rtt_jitter_cycle % BBRRTTJitterBufferLen] = rs->rtt_sample; + bbr_state->rtt_jitter_cycle++; + bbr_state->last_rtt_sample_stamp = current_time; + bbr_state->rtt_short_term_min = UINT64_MAX; + bbr_state->rtt_short_term_max = 0; + for (unsigned int i = 0; i < BBRRTTJitterBufferLen; i++) { + if (i >= bbr_state->rtt_jitter_cycle) { + break; + } + if (bbr_state->rtt_jitter_buffer[i] > bbr_state->rtt_short_term_max) { + bbr_state->rtt_short_term_max = bbr_state->rtt_jitter_buffer[i]; + } + if (bbr_state->rtt_jitter_buffer[i] < bbr_state->rtt_short_term_min) { + bbr_state->rtt_short_term_min = bbr_state->rtt_jitter_buffer[i]; + } + } + } +} + +static void BBRResetRTTJitterBuffer(picoquic_bbr_state_t* bbr_state, uint64_t rtt_init_value, uint64_t current_time) +{ + bbr_state->rtt_jitter_cycle = 0; + bbr_state->last_rtt_sample_stamp = current_time; + bbr_state->rtt_short_term_min = rtt_init_value; + bbr_state->rtt_short_term_max = rtt_init_value; + bbr_state->probe_rtt_min_delay = rtt_init_value; + bbr_state->nb_rtt_excess = 0; +} + +static void BBRUpdateMinRTT(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x, bbr_per_ack_state_t * rs, uint64_t current_time) +{ + BBRAdaptMinRttMargin(bbr_state, path_x); + /* maintain filter of last BBRRTTJitterBufferLen samples, to handle jitter */ + BBRUpdateRTTJitterBuffer(bbr_state, rs, current_time); + /* Compute the BBR expired limit */ + if (bbr_state->min_rtt < UINT64_MAX) { + if (bbr_state->min_rtt <= BBRLongRttThreshold) { + bbr_state->probe_rtt_expired = + current_time > bbr_state->probe_rtt_min_stamp + BBRProbeRTTInterval; + } + else { + bbr_state->probe_rtt_expired = + current_time > bbr_state->probe_rtt_min_stamp + bbr_state->min_rtt * 100; + } + } + /* Update min rtt */ + if (bbr_state->rtt_short_term_max < bbr_state->probe_rtt_min_delay || + bbr_state->probe_rtt_expired || + bbr_state->rtt_jitter_cycle < BBRRTTJitterBufferLen) { + bbr_state->probe_rtt_min_delay = bbr_state->rtt_short_term_max; + bbr_state->probe_rtt_min_stamp = current_time; + } + else { + /* Deviation from BBRv3: test whether the new measurment does not differ from min_rtt + * by more than a "margin of error, and in that case delay the need to reevaluate min_rtt */ + if (bbr_state->rtt_short_term_min < (bbr_state->min_rtt + bbr_state->min_rtt_margin)) { + bbr_state->probe_rtt_min_stamp = current_time; + bbr_state->min_rtt_stamp = current_time; + } + } + int min_rtt_expired = + current_time > bbr_state->min_rtt_stamp + BBRMinRTTFilterLen; + if (bbr_state->probe_rtt_min_delay < bbr_state->min_rtt || + min_rtt_expired || + bbr_state->rtt_jitter_cycle < BBRRTTJitterBufferLen) { + bbr_state->min_rtt = bbr_state->probe_rtt_min_delay; + bbr_state->min_rtt_stamp = bbr_state->probe_rtt_min_stamp; + } + + if (bbr_state->rtt_short_term_min > bbr_state->min_rtt) + { + uint64_t delta_max = bbr_state->min_rtt / 4; + if (bbr_state->rtt_short_term_min > bbr_state->min_rtt + delta_max) { + bbr_state->nb_rtt_excess++; + } + } + else + { + bbr_state->nb_rtt_excess = 0; + } + +} + +static int IsRTTTooHigh(picoquic_bbr_state_t* bbr_state) +{ + return (bbr_state->nb_rtt_excess > BBRRTTJitterBufferLen); +} +#else static void BBRUpdateMinRTT(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x, bbr_per_ack_state_t * rs, uint64_t current_time) { BBRAdaptMinRttMargin(bbr_state, path_x); - /* TODO: replace constants by state variables, computed as function of - * min RTT */ + /* Compute the BBR expired limit */ if (bbr_state->min_rtt < UINT64_MAX) { - if (bbr_state->min_rtt <= PICOQUIC_TARGET_RENO_RTT) { + if (bbr_state->min_rtt <= BBRLongRttThreshold) { bbr_state->probe_rtt_expired = current_time > bbr_state->probe_rtt_min_stamp + BBRProbeRTTInterval; } @@ -1097,16 +1222,18 @@ static void BBRUpdateMinRTT(picoquic_bbr_state_t* bbr_state, picoquic_path_t* pa current_time > bbr_state->probe_rtt_min_stamp + bbr_state->min_rtt * 100; } } - if (rs->rtt_sample >= 0 && - (rs->rtt_sample < bbr_state->probe_rtt_min_delay || + + if (rs->rtt_sample >= 0 && + ( rs->rtt_sample < bbr_state->probe_rtt_min_delay || bbr_state->probe_rtt_expired)) { + /* Update min rtt */ bbr_state->probe_rtt_min_delay = rs->rtt_sample; bbr_state->probe_rtt_min_stamp = current_time; } else { /* Deviation from BBRv3: test whether the new measurment does not differ from min_rtt - * by more than a "margin of error, and in that case delay the need to reevaluate min_rtt */ - if (rs->rtt_sample >= 0 && rs->rtt_sample < (bbr_state->min_rtt + bbr_state->min_rtt_margin)) { + * by more than a "margin of error, and in that case delay the need to reevaluate min_rtt */ + if (rs->rtt_sample < (bbr_state->min_rtt + bbr_state->min_rtt_margin)) { bbr_state->probe_rtt_min_stamp = current_time; bbr_state->min_rtt_stamp = current_time; } @@ -1119,6 +1246,7 @@ static void BBRUpdateMinRTT(picoquic_bbr_state_t* bbr_state, picoquic_path_t* pa bbr_state->min_rtt_stamp = bbr_state->probe_rtt_min_stamp; } } +#endif static void BBRExitProbeRTT(picoquic_bbr_state_t* bbr_state, picoquic_path_t * path_x, uint64_t current_time) { @@ -1203,7 +1331,7 @@ static void BBRCheckProbeRTT(picoquic_bbr_state_t* bbr_state, picoquic_path_t * } /* ProbeBW specific processes for BBRv3 -* There are actually for states, DOWN, CRUISE, REFILL, and UP. +* There are actually four states, DOWN, CRUISE, REFILL, and UP. * TODO: Transition strategy between states is highly dependent on hypotheses, * such as a BDP of about 63 packets. Investigate what to do if the * BDP is much higher. @@ -1219,6 +1347,16 @@ static int IsInAProbeBWState(picoquic_bbr_state_t* bbr_state) state == picoquic_bbr_alg_probe_bw_up); } +static int BBRIsProbingBW(picoquic_bbr_state_t* bbr_state) +{ + picoquic_bbr_alg_state_t state = bbr_state->state; + + return (state == picoquic_bbr_alg_probe_bw_down || + state == picoquic_bbr_alg_probe_bw_cruise || + state == picoquic_bbr_alg_drain || + state == picoquic_bbr_alg_probe_rtt) ? 0 : 1; +} + /* * Return a volume of data that tries to leave free * headroom in the bottleneck buffer or link for @@ -1373,6 +1511,32 @@ static uint64_t BBRTargetInflight(picoquic_bbr_state_t* bbr_state, picoquic_path return (bbr_state->bdp < path_x->cwin) ? bbr_state->bdp : path_x->cwin; } +#ifdef RTTJitterBufferProbe +static int BBRCheckPathSaturated(picoquic_bbr_state_t* bbr_state, picoquic_path_t* path_x, bbr_per_ack_state_t * rs, uint64_t current_time) +{ + if (!rs->is_app_limited && + bbr_state->state != picoquic_bbr_alg_drain && + bbr_state->rounds_since_bw_probe >= 1 && + bbr_state->pacing_rate > 3 * rs->delivery_rate && + rs->rtt_sample > 2*bbr_state->min_rtt && + bbr_state->wifi_shadow_rtt == 0) { + bbr_state->prior_cwnd = rs->delivered; + bbr_state->probe_rtt_done_stamp = 0; + bbr_state->ack_phase = picoquic_bbr_acks_probe_stopping; + bbr_state->MaxBwFilter[0] = rs->delivery_rate; + bbr_state->MaxBwFilter[1] = rs->delivery_rate; + bbr_state->max_bw = rs->delivery_rate; + bbr_state->full_bw = rs->delivery_rate; + BBREnterDrain(bbr_state, path_x, current_time); + BBRStartRound(bbr_state, path_x); + return 1; + } + else { + return 0; + } +} +#endif + static int BBRIsRenoCoexistenceProbeTime(picoquic_bbr_state_t* bbr_state, picoquic_path_t * path_x) { uint64_t reno_rounds = (BBRTargetInflight(bbr_state, path_x)/path_x->send_mtu); @@ -1458,6 +1622,11 @@ static void BBRUpdateProbeBWCyclePhase(picoquic_bbr_state_t* bbr_state, picoquic case picoquic_bbr_alg_probe_bw_down: if (BBRCheckTimeToProbeBW(bbr_state, path_x, current_time)) return; /* already decided state transition */ +#ifdef RTTJitterBufferProbe + if (BBRCheckPathSaturated(bbr_state, path_x, rs, current_time)) { + return; + } +#endif if (BBRCheckTimeToCruise(bbr_state, path_x)) { if (15 * bbr_state->max_bw >= 16 * bbr_state->full_bw && rs->ecn_alpha <= BBRExcessiveEcnCE) { @@ -1479,6 +1648,11 @@ static void BBRUpdateProbeBWCyclePhase(picoquic_bbr_state_t* bbr_state, picoquic break; case picoquic_bbr_alg_probe_bw_cruise: +#ifdef RTTJitterBufferProbe + if (BBRCheckPathSaturated(bbr_state, path_x, rs, current_time)) { + return; + } +#endif if (BBRCheckTimeToProbeBW(bbr_state, path_x, current_time)) return; /* already decided state transition */ break; @@ -1624,12 +1798,14 @@ static void BBRCheckStartupDone(picoquic_bbr_state_t* bbr_state, if (bbr_state->state == picoquic_bbr_alg_startup) { BBRCheckStartupFullBandwidth(bbr_state, rs); BBRCheckStartupHighLoss(bbr_state, path_x, rs); - +#ifdef RTTJitterBufferStartup + if (IsRTTTooHigh(bbr_state)) { + bbr_state->filled_pipe = 1; + } +#endif if (bbr_state->filled_pipe) { - if (bbr_state->full_bw_count > 0) { - bbr_state->probe_probe_bw_quickly = 1; - bbr_state->full_bw_count = 0; - } + bbr_state->probe_probe_bw_quickly = 1; + bbr_state->full_bw_count = 0; BBREnterDrain(bbr_state, path_x, current_time); } } @@ -1647,9 +1823,6 @@ static void BBRReEnterStartup(picoquic_bbr_state_t* bbr_state, picoquic_path_t* bbr_state->full_bw = 0; bbr_state->filled_pipe = 0; bbr_state->full_bw_count = 0; - bbr_state->min_rtt = path_x->rtt_sample; - bbr_state->min_rtt_stamp = current_time; - bbr_state->probe_rtt_min_stamp = current_time; bbr_state->probe_probe_bw_quickly = 1; BBREnterStartup(bbr_state); } @@ -1694,6 +1867,9 @@ static void BBRExitStartupLongRtt(picoquic_bbr_state_t* bbr_state, picoquic_path bbr_state->min_rtt = bbr_state->rtt_filter.sample_max; bbr_state->min_rtt_stamp = current_time; } +#ifdef RTTJitterBuffer_maybe + BBRResetRTTJitterBuffer(bbr_state, bbr_state->min_rtt, current_time); +#endif /* Enter drain */ BBREnterDrain(bbr_state, path_x, current_time); /* If there were just few bytes in transit, enter probe */ @@ -1860,11 +2036,6 @@ static void BBRComputeEcnFrac(picoquic_bbr_state_t* bbr_state, picoquic_path_t* else { delta_ect1 = pkt_ctx->ecn_ect1_total_remote - bbr_state->ecn_ect1_last_round; delta_ce = pkt_ctx->ecn_ce_total_remote - bbr_state->ecn_ce_last_round; -#if 1 - if (delta_ect1 == 0) { - DBG_PRINTF("%s", "bug"); - } -#endif } if (delta_ect1 + delta_ce > 0) { rs->ecn_ce = delta_ce; diff --git a/picoquic/frames.c b/picoquic/frames.c index cca384516..e253d4600 100644 --- a/picoquic/frames.c +++ b/picoquic/frames.c @@ -2494,8 +2494,8 @@ void picoquic_estimate_path_bandwidth(picoquic_cnx_t * cnx, picoquic_path_t* pat bw_estimate = delivered * 1000000; bw_estimate /= receive_interval; + path_x->bandwidth_estimate = bw_estimate; if (!rs_is_path_limited || bw_estimate > path_x->bandwidth_estimate) { - path_x->bandwidth_estimate = bw_estimate; if (path_x == cnx->path[0]){ if (cnx->is_ack_frequency_negotiated) { /* Compute the desired value of the ack frequency*/ diff --git a/picoquic/logwriter.c b/picoquic/logwriter.c index fd5571ff1..1f342bdb1 100644 --- a/picoquic/logwriter.c +++ b/picoquic/logwriter.c @@ -1166,6 +1166,7 @@ void binlog_cc_dump(picoquic_cnx_t* cnx, uint64_t current_time) bytewrite_vint(ps_msg, path->peak_bandwidth_estimate); bytewrite_vint(ps_msg, path->bytes_in_transit); + bytewrite_vint(ps_msg, path->last_bw_estimate_path_limited); bytestream_buf stream_head; bytestream* ps_head = bytestream_buf_init(&stream_head, BYTESTREAM_MAX_BUFFER_SIZE); diff --git a/picoquic/picoquic.h b/picoquic/picoquic.h index ace461aa0..b599056f9 100644 --- a/picoquic/picoquic.h +++ b/picoquic/picoquic.h @@ -40,7 +40,7 @@ extern "C" { #endif -#define PICOQUIC_VERSION "1.1.19.0" +#define PICOQUIC_VERSION "1.1.19.1" #define PICOQUIC_ERROR_CLASS 0x400 #define PICOQUIC_ERROR_DUPLICATE (PICOQUIC_ERROR_CLASS + 1) #define PICOQUIC_ERROR_AEAD_CHECK (PICOQUIC_ERROR_CLASS + 3) diff --git a/picoquic_t/picoquic_t.c b/picoquic_t/picoquic_t.c index 5f42aa3e5..3ac8cd03e 100644 --- a/picoquic_t/picoquic_t.c +++ b/picoquic_t/picoquic_t.c @@ -393,6 +393,7 @@ static const picoquic_test_def_t test_table[] = { { "mediatest_video_audio", mediatest_video_audio_test }, { "mediatest_video_data_audio", mediatest_video_data_audio_test }, { "mediatest_video2_down", mediatest_video2_down_test }, + { "mediatest_wifi", mediatest_wifi_test }, { "mediatest_worst", mediatest_worst_test }, { "warptest_video", warptest_video_test }, { "warptest_video_audio", warptest_video_audio_test }, diff --git a/picoquictest/l4s_test.c b/picoquictest/l4s_test.c index 0820df418..e43ff71aa 100644 --- a/picoquictest/l4s_test.c +++ b/picoquictest/l4s_test.c @@ -139,7 +139,7 @@ int l4s_bbr_test() { picoquic_congestion_algorithm_t* ccalgo = picoquic_bbr_algorithm; - int ret = l4s_congestion_test(ccalgo, 1, 3500000, 3, 1000, 0, NULL); + int ret = l4s_congestion_test(ccalgo, 1, 3500000, 5, 1000, 0, NULL); return ret; } @@ -163,9 +163,13 @@ int l4s_prague_updown_test() int l4s_bbr_updown_test() { +#if defined(_WINDOWS) && !defined(_WINDOWS64) + return 0; +#else picoquic_congestion_algorithm_t* ccalgo = picoquic_bbr_algorithm; - int ret = l4s_congestion_test(ccalgo, 1, 6500000, 95, 6000, nb_l4s_link_updown, l4s_link_updown); + int ret = l4s_congestion_test(ccalgo, 1, 6850000, 50, 6000, nb_l4s_link_updown, l4s_link_updown); return ret; +#endif } \ No newline at end of file diff --git a/picoquictest/mediatest.c b/picoquictest/mediatest.c index 033d0f632..d4ce43cc8 100644 --- a/picoquictest/mediatest.c +++ b/picoquictest/mediatest.c @@ -26,7 +26,7 @@ #include "picoquic.h" #include "picoquic_utils.h" #include "picoquictest_internal.h" -#include "autoqlog.h" +#include "picoquic_binlog.h" /* Media tests: simulate media transmission, include cases in which * the media bandwidth is much lower than the available bandwidth on @@ -61,6 +61,14 @@ #define MEDIATEST_VIDEO2_PERIOD 16666 #define MEDIATEST_DATA_FRAME_SIZE 0x4000 +typedef enum { + mediatest_video = 1, + mediatest_video_audio = 2, + mediatest_video_data_audio = 3, + mediatest_worst = 4, + mediatest_video2_down = 5, + mediatest_wifi = 6 +} mediatest_id_enum; typedef enum { media_test_data = 0, @@ -160,6 +168,9 @@ typedef struct st_mediatest_spec_t { size_t data_size; size_t datagram_data_size; double bandwidth; + uint64_t latency_average; + uint64_t latency_max; + int do_not_check_video2; } mediatest_spec_t; int mediatest_callback(picoquic_cnx_t* cnx, @@ -316,7 +327,7 @@ void mediatest_record_stats(mediatest_ctx_t* mt_ctx, mediatest_stream_ctx_t* str } } -int mediatest_check_stats(mediatest_ctx_t* mt_ctx, media_test_type_enum media_type) +int mediatest_check_stats(mediatest_ctx_t* mt_ctx, mediatest_spec_t * spec, media_test_type_enum media_type) { int ret = 0; @@ -333,8 +344,19 @@ int mediatest_check_stats(mediatest_ctx_t* mt_ctx, media_test_type_enum media_ty uint64_t variance = (stats->sum_square_delays / stats->nb_frames) - (average * average); uint64_t sigma = picoquic_sqrt_for_tests(variance); - if (average > 25000 || sigma > 12500 || stats->max_delay > 100000) { - ret = -1; + if (spec->latency_average == 0) + { + if (average > 25000 || sigma > 12500 || stats->max_delay > 100000) { + ret = -1; + } + } + else { + if (average > spec->latency_average) { + ret = -1; + } + else if (spec->latency_max > 0 && stats->max_delay > spec->latency_max) { + ret = -1; + } } } } @@ -1023,7 +1045,7 @@ mediatest_ctx_t * mediatest_configure(int media_test_id, mediatest_spec_t * spe if (spec->ccalgo != NULL) { for (int i = 0; i < 2 && ret == 0; i++) { picoquic_set_default_congestion_algorithm(mt_ctx->quic[i], spec->ccalgo); - ret = picoquic_set_qlog(mt_ctx->quic[i], "."); + ret = picoquic_set_binlog(mt_ctx->quic[i], "."); } } } @@ -1122,7 +1144,7 @@ int mediatest_loop(mediatest_ctx_t* mt_ctx, uint64_t simulated_time_max, int is_ } /* One test */ -int mediatest_one(int media_test_id, mediatest_spec_t * spec) +int mediatest_one(mediatest_id_enum media_test_id, mediatest_spec_t * spec) { int ret = 0; int is_finished = 0; @@ -1132,10 +1154,10 @@ int mediatest_one(int media_test_id, mediatest_spec_t * spec) if (mt_ctx == NULL) { ret = -1; } - /* If running a worst case test, start the test first for a short time, - * then apply packet losses for another short time. + /* Three special cases in which we manipualte the configuration + * to simulate various downgrade or suspension patterns. */ - if (media_test_id == 4) { + if (media_test_id == mediatest_worst) { /* Only collect statistics after expected end of disruption. */ mt_ctx->disruption_clear = 2500000; /* Run the simulation for 1 second. */ @@ -1145,7 +1167,8 @@ int mediatest_one(int media_test_id, mediatest_spec_t * spec) ret = mediatest_loop(mt_ctx, 2000000, 1, &is_finished); } } - if (media_test_id == 5) { + + if (media_test_id == mediatest_video2_down) { uint64_t picosec_per_byte_ref[2]; uint64_t latency_ref[2]; @@ -1156,7 +1179,6 @@ int mediatest_one(int media_test_id, mediatest_spec_t * spec) picosec_per_byte_ref[i] = mt_ctx->link[i]->picosec_per_byte; mt_ctx->link[i]->picosec_per_byte = 8000000; /* 8 us per byte, i.e., 1Mbps*/ latency_ref[i] = mt_ctx->link[i]->microsec_latency; - mt_ctx->link[i]->microsec_latency += 80000; } if (ret == 0) { ret = mediatest_loop(mt_ctx, 6000000, 0, &is_finished); @@ -1167,6 +1189,56 @@ int mediatest_one(int media_test_id, mediatest_spec_t * spec) mt_ctx->link[i]->microsec_latency = latency_ref[i]; } } + + if (media_test_id == mediatest_wifi) { + /* For 10 seconds, run a test loop in which the simulated Wi-Fi + * link alternates between 100Mbps, low delay and just blocked, + * 0 bandwidth. The duration of the block unblock phase varies. + * For the first 5 seconds and the last 5 seconds, unblock + * last 900ms, block last 100ms. For the middle + * 10 seconds, unblock lasts 20 to 200ms, block lasts 100ms. + */ + uint64_t sim_time = 0; + uint64_t blocked_sequence = 4; + uint64_t unblocked_sequence = 1; + for (int i=0; i<2; i++){ + mt_ctx->link[i]->picosec_per_byte = 160000; /* 160 nanosec per byte, i.e., 50Mbps*/ + mt_ctx->link[i]->microsec_latency = 2000; /* 2ms */ + } + while (sim_time < 20000000 && !is_finished) { + uint64_t time_unblocked = 900000; + uint64_t time_blocked = 100000; + + if (sim_time >= 5000000 && sim_time <= 15000000) { + time_unblocked = unblocked_sequence * 10000; + unblocked_sequence *= 2; + if (unblocked_sequence > 10) { + unblocked_sequence = 1; + } + } + sim_time += time_unblocked; + ret = mediatest_loop(mt_ctx, sim_time, 0, &is_finished); + if (sim_time >= 5000000 && sim_time <= 15000000) { + time_blocked = blocked_sequence * 20000; + if (blocked_sequence < 8) { + blocked_sequence *= 2; + } + else if (blocked_sequence < 12) { + blocked_sequence++; + } + else { + blocked_sequence = 1; + } + } + sim_time += time_blocked; + for (int i = 0; i < 2; i++) { + picoquic_test_simlink_suspend(mt_ctx->link[i], sim_time, 0); + } + + ret = mediatest_loop(mt_ctx, sim_time, 0, &is_finished); + } + } + /* Run the simulation until done */ if (ret == 0) { ret = mediatest_loop(mt_ctx, 30000000, 0, &is_finished); @@ -1179,13 +1251,13 @@ int mediatest_one(int media_test_id, mediatest_spec_t * spec) } /* Check that the results are as expected. */ if (ret == 0 && spec->do_audio) { - ret = mediatest_check_stats(mt_ctx, media_test_audio); + ret = mediatest_check_stats(mt_ctx, spec, media_test_audio); } if (ret == 0 && spec->do_video) { - ret = mediatest_check_stats(mt_ctx, media_test_video); + ret = mediatest_check_stats(mt_ctx, spec, media_test_video); } - if (ret == 0 && spec->do_video2 && media_test_id != 5) { - ret = mediatest_check_stats(mt_ctx, media_test_video2); + if (ret == 0 && spec->do_video2 && !spec->do_not_check_video2) { + ret = mediatest_check_stats(mt_ctx, spec, media_test_video2); } } if (mt_ctx != NULL) { @@ -1202,7 +1274,7 @@ int mediatest_video_test() spec.ccalgo = picoquic_bbr_algorithm; spec.bandwidth = 0.01; spec.do_video = 1; - ret = mediatest_one(1, &spec); + ret = mediatest_one(mediatest_video, &spec); return ret; } @@ -1215,7 +1287,7 @@ int mediatest_video_audio_test() spec.bandwidth = 0.01; spec.do_video = 1; spec.do_audio = 1; - ret = mediatest_one(2, &spec); + ret = mediatest_one(mediatest_video_audio, &spec); return ret; } @@ -1229,7 +1301,7 @@ int mediatest_video_data_audio_test() spec.do_video = 1; spec.do_audio = 1; spec.data_size = 10000000; - ret = mediatest_one(3, &spec); + ret = mediatest_one(mediatest_video_data_audio, &spec); return ret; } @@ -1244,12 +1316,10 @@ int mediatest_video2_down_test() spec.do_video2 = 1; spec.do_audio = 1; spec.data_size = 0; - ret = mediatest_one(5, &spec); - -#if 1 - /* TODO: remove this once BBR is debugged. */ - ret = 0; -#endif + spec.latency_average = 100000; + spec.latency_max = 500000; + spec.do_not_check_video2 = 1; + ret = mediatest_one(mediatest_video2_down, &spec); return ret; } @@ -1263,7 +1333,25 @@ int mediatest_worst_test() spec.do_video = 1; spec.do_audio = 1; spec.data_size = 10000000; - ret = mediatest_one(4, &spec); + ret = mediatest_one(mediatest_worst, &spec); + + return ret; +} + +int mediatest_wifi_test() +{ + int ret; + mediatest_spec_t spec = { 0 }; + spec.ccalgo = picoquic_bbr_algorithm; + spec.bandwidth = 0.1; + spec.do_video = 1; + spec.do_video2 = 1; + spec.do_audio = 1; + spec.data_size = 0; + spec.latency_average = 45000; + spec.latency_max = 240000; + spec.do_not_check_video2 = 1; + ret = mediatest_one(mediatest_wifi, &spec); return ret; -} \ No newline at end of file +} diff --git a/picoquictest/multipath_qlog_ref.txt b/picoquictest/multipath_qlog_ref.txt index 3d9e1a0a8..61143344b 100644 --- a/picoquictest/multipath_qlog_ref.txt +++ b/picoquictest/multipath_qlog_ref.txt @@ -93,7 +93,7 @@ "frame_type": "new_connection_id", "sequence_number": 5, "retire_before": 0, "connection_id": "0e08070605040302", "reset_token": "7127e92d271885fd9593f52f98c1a1ad"}, { "frame_type": "new_connection_id", "sequence_number": 6, "retire_before": 0, "connection_id": "0f08070605040302", "reset_token": "ac294d76d656f0439236df22560a7304"}, { "frame_type": "new_connection_id", "sequence_number": 7, "retire_before": 0, "connection_id": "1008070605040302", "reset_token": "995ca0346f5695c0bef97bb0dcdbd925"}]}], -[21668, 0, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21118,"latest_rtt": 21668}], +[21668, 0, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21118,"latest_rtt": 21668,"app_limited": 1}], [21668, 0, "transport", "spin_bit_updated", { "state": true }], [21668, 0, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 39, "packet_number": 3, "dcid": "0908070605040302" }, "frames": [{ "frame_type": "handshake_done"}, { @@ -144,11 +144,11 @@ "frame_type": "path_challenge", "path_challenge": "0000b681a4ba001f"}, { "frame_type": "path_response", "path_response": "000091208c6813a8"}, { "frame_type": "padding"}]}], -[42712, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1252,"min_rtt": 0,"latest_rtt": 0}], +[42712, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1252,"min_rtt": 0,"latest_rtt": 0,"app_limited": 0}], [42712, 0, "transport", "datagram_sent", { "byte_length": 1252}], [44107, 0, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1424, "packet_number": 8, "dcid": "0908070605040302" }, "frames": [{ "frame_type": "stream", "id": 4, "offset": 4232, "length": 1410, "fin": false , "has_length": false, "begins_with": "88898a8b8c8d8e8f"}]}], -[44107, 0, "recovery", "metrics_updated", {"pacing_rate": 7141971,"bytes_in_flight": 5815,"smoothed_rtt": 21504,"min_rtt": 20288,"latest_rtt": 20288}], +[44107, 0, "recovery", "metrics_updated", {"pacing_rate": 7141971,"bytes_in_flight": 5815,"smoothed_rtt": 21504,"min_rtt": 20288,"latest_rtt": 20288,"app_limited": 1}], [44107, 0, "transport", "datagram_sent", { "byte_length": 1440, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":1234}}], [44299, 0, "transport", "datagram_received", { "byte_length": 55}], [44299, 0, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 4, "dcid": "0a09080706050403" }, "frames": [{ @@ -192,7 +192,7 @@ "frame_type": "ack_mp", "path_id": 0, "ack_delay": 0, "acked_ranges": [[2, 5]]}, { "frame_type": "ack_mp", "path_id": 1, "ack_delay": 0, "acked_ranges": [[0, 0]]}, { "frame_type": "padding"}]}], -[64714, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 0,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002}], +[64714, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 0,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002,"app_limited": 0}], [64714, 1, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 39, "packet_number": 1, "dcid": "0a08070605040302" }, "frames": [{ "frame_type": "time_stamp", "time_stamp": 8089}, { "frame_type": "ack_mp", "path_id": 0, "ack_delay": 0, "acked_ranges": [[3, 5]]}, { @@ -206,7 +206,7 @@ "frame_type": "ack_mp", "path_id": 0, "ack_delay": 0, "acked_ranges": [[2, 7]]}, { "frame_type": "ack_mp", "path_id": 1, "ack_delay": 0, "acked_ranges": [[0, 0]]}, { "frame_type": "padding"}]}], -[65452, 0, "recovery", "metrics_updated", {"pacing_rate": 7106724,"bytes_in_flight": 5997,"smoothed_rtt": 21601,"min_rtt": 20288,"latest_rtt": 22958}], +[65452, 0, "recovery", "metrics_updated", {"pacing_rate": 7106724,"bytes_in_flight": 5997,"smoothed_rtt": 21601,"min_rtt": 20288,"latest_rtt": 22958,"app_limited": 1}], [65452, 0, "transport", "datagram_received", { "byte_length": 55, "addr_from" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [65452, 1, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 2, "dcid": "0b09080706050403" }, "frames": [{ "frame_type": "time_stamp", "time_stamp": 8301}, { @@ -249,15 +249,15 @@ "frame_type": "ack_mp", "path_id": 0, "ack_delay": 0, "acked_ranges": [[3, 9]]}, { "frame_type": "ack_mp", "path_id": 1, "ack_delay": 0, "acked_ranges": [[1, 3]]}, { "frame_type": "stream", "id": 8, "offset": 1390, "length": 1200, "fin": false , "has_length": false, "begins_with": "6e6f707172737475"}]}], -[70932, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1307,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002}], +[70932, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1307,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002,"app_limited": 0}], [70932, 0, "transport", "datagram_sent", { "byte_length": 1252, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [70932, 0, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1424, "packet_number": 15, "dcid": "0908070605040302" }, "frames": [{ "frame_type": "stream", "id": 8, "offset": 2590, "length": 1410, "fin": false , "has_length": false, "begins_with": "1e1f202122232425"}]}], -[70932, 0, "recovery", "metrics_updated", {"pacing_rate": 7111111,"bytes_in_flight": 3117,"smoothed_rtt": 21587,"min_rtt": 20288,"latest_rtt": 21194}], +[70932, 0, "recovery", "metrics_updated", {"pacing_rate": 7111111,"bytes_in_flight": 3117,"smoothed_rtt": 21587,"min_rtt": 20288,"latest_rtt": 21194,"app_limited": 1}], [70932, 0, "transport", "datagram_sent", { "byte_length": 1440, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":1234}}], [70932, 1, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1236, "packet_number": 3, "dcid": "0a08070605040302" }, "frames": [{ "frame_type": "stream", "id": 8, "offset": 4000, "length": 1222, "fin": false , "has_length": false, "begins_with": "a0a1a2a3a4a5a6a7"}]}], -[70932, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 2559,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002}], +[70932, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 2559,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002,"app_limited": 0}], [70932, 0, "transport", "datagram_sent", { "byte_length": 1252, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [70932, 1, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1236, "packet_number": 4, "dcid": "0a08070605040302" }, "frames": [{ "frame_type": "stream", "id": 8, "offset": 5222, "length": 1222, "fin": false , "has_length": false, "begins_with": "666768696a6b6c6d"}]}], @@ -290,13 +290,13 @@ "frame_type": "ack_mp", "path_id": 0, "ack_delay": 0, "acked_ranges": [[2, 12]]}, { "frame_type": "ack_mp", "path_id": 1, "ack_delay": 0, "acked_ranges": [[0, 0]]}, { "frame_type": "padding"}]}], -[71290, 0, "recovery", "metrics_updated", {"pacing_rate": 7150837,"bytes_in_flight": 2935,"smoothed_rtt": 21480,"min_rtt": 20288,"latest_rtt": 20732}], +[71290, 0, "recovery", "metrics_updated", {"pacing_rate": 7150837,"bytes_in_flight": 2935,"smoothed_rtt": 21480,"min_rtt": 20288,"latest_rtt": 20732,"app_limited": 1}], [71290, 1, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 39, "packet_number": 9, "dcid": "0a08070605040302" }, "frames": [{ "frame_type": "time_stamp", "time_stamp": 8911}, { "frame_type": "ack_mp", "path_id": 0, "ack_delay": 0, "acked_ranges": [[3, 9]]}, { "frame_type": "ack_mp", "path_id": 1, "ack_delay": 0, "acked_ranges": [[1, 5]]}, { "frame_type": "padding"}]}], -[71290, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 8954,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002}], +[71290, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 8954,"smoothed_rtt": 22002,"min_rtt": 22002,"latest_rtt": 22002,"app_limited": 0}], [71290, 0, "transport", "datagram_sent", { "byte_length": 55}], [76006, 0, "transport", "datagram_received", { "byte_length": 55, "addr_from" : {"ip_v4": "10.0.0.2", "port_v4":1234}}], [76006, 0, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 10, "dcid": "0a09080706050403" }, "frames": [{ @@ -309,7 +309,7 @@ "frame_type": "ack_mp", "path_id": 0, "ack_delay": 0, "acked_ranges": [[3, 10]]}, { "frame_type": "ack_mp", "path_id": 1, "ack_delay": 0, "acked_ranges": [[1, 5]]}, { "frame_type": "padding"}]}], -[76006, 0, "recovery", "metrics_updated", {"pacing_rate": 7150837,"bytes_in_flight": 2990,"smoothed_rtt": 21480,"min_rtt": 20288,"latest_rtt": 20732}], +[76006, 0, "recovery", "metrics_updated", {"pacing_rate": 7150837,"bytes_in_flight": 2990,"smoothed_rtt": 21480,"min_rtt": 20288,"latest_rtt": 20732,"app_limited": 1}], [76006, 0, "transport", "datagram_sent", { "byte_length": 55}], [88308, 0, "transport", "datagram_received", { "byte_length": 55}], [88308, 0, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 11, "dcid": "0a09080706050403" }, "frames": [{ diff --git a/picoquictest/multipath_test.c b/picoquictest/multipath_test.c index 9f197538c..2b01b10ff 100644 --- a/picoquictest/multipath_test.c +++ b/picoquictest/multipath_test.c @@ -1088,7 +1088,7 @@ int multipath_back1_test() /* Test that a typical wifi+lte scenario provides good performance */ int multipath_perf_test() { - uint64_t max_completion_microsec = 1500000; + uint64_t max_completion_microsec = 1550000; return multipath_test_one(max_completion_microsec, multipath_test_perf, 0); } diff --git a/picoquictest/packet_trace_ref.txt b/picoquictest/packet_trace_ref.txt index dc7138cc5..8deb17a74 100644 --- a/picoquictest/packet_trace_ref.txt +++ b/picoquictest/packet_trace_ref.txt @@ -1,956 +1,956 @@ -time, path, sequence, highest ack, high ack time, last time ack, cwin, one-way-delay, rtt-sample, SRTT, RTT min, Bandwidth (B/s), Receive rate (B/s), Send MTU, pacing packet time(us), nb retrans, nb spurious, cwin blkd, flow blkd, stream blkd, cc_state, cc_param, bw_max, transit, -0, 0, 1, -1, 0, 0, 15360, 0, 0, 250000, 0, 0, 0, 1252, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1762, -0, 0, 2, -1, 0, 0, 15360, 0, 0, 250000, 0, 0, 0, 1252, 1, 0, 0, 0, 0, 0, 0, 0, 0, 3202, -21040, 0, 3, -1, 0, 0, 15360, 0, 21040, 21040, 21040, 0, 0, 1252, 1372, 0, 0, 0, 0, 0, 0, 0, 0, 2005, -21656, 0, 3, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 0, 0, 0, 1717, -21656, 0, 4, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 0, 0, 0, 1772, -21885, 0, 5, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 0, 0, 0, 3024, -21885, 0, 6, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 0, 0, 0, 4276, -21885, 0, 7, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 0, 0, 0, 5528, -23170, 0, 8, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 0, 0, 0, 6780, -24201, 0, 8, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 5118, -24768, 0, 9, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 6558, -26366, 0, 10, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 7998, -27963, 0, 11, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 9438, -29561, 0, 12, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 10878, -31159, 0, 13, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 12318, -32756, 0, 14, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 13758, -34354, 0, 15, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 15198, -35952, 0, 16, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 0, 0, 652957, 16638, -41742, 0, 16, 3, 41742, 21656, 15360, 0, 20086, 21303, 20086, 88688, 0, 1440, 1598, 0, 0, 1, 0, 0, 0, 0, 652957, 16528, -42929, 0, 16, 3, 41742, 21656, 15360, 0, 20086, 21303, 20086, 88688, 0, 1440, 1598, 0, 0, 1, 0, 0, 0, 0, 652957, 16528, -42929, 0, 17, 3, 41742, 21656, 15360, 0, 20086, 21303, 20086, 88688, 0, 1440, 1598, 0, 0, 1, 0, 0, 0, 0, 652957, 16583, -43930, 0, 17, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 1, 0, 0, 0, 0, 1129798, 14079, -43930, 0, 18, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 0, 0, 0, 0, 0, 1129798, 15519, -43930, 0, 19, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 0, 0, 0, 0, 0, 1129798, 16959, -43930, 0, 20, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 0, 0, 0, 0, 0, 1129798, 18399, -45932, 0, 20, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 1, 0, 0, 0, 0, 1234765, 15895, -45932, 0, 21, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 0, 0, 0, 0, 0, 1234765, 17335, -46216, 0, 22, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 0, 0, 0, 0, 0, 1234765, 18775, -47425, 0, 23, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 0, 0, 0, 0, 0, 1234765, 20215, -48234, 0, 23, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 0, 0, 1234765, 17335, -48487, 0, 24, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 0, 0, 1234765, 18775, -49549, 0, 25, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 0, 0, 1234765, 20215, -50612, 0, 26, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 0, 0, 1234765, 21655, -50755, 0, 26, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 0, 0, 1234765, 18775, -51557, 0, 27, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 0, 0, 1234765, 20215, -52502, 0, 28, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 0, 0, 1234765, 21655, -53447, 0, 29, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 0, 0, 1234765, 23095, -53950, 0, 29, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 0, 0, 1234765, 20215, -54298, 0, 30, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 0, 0, 1234765, 21655, -55149, 0, 31, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 0, 0, 1234765, 23095, -56000, 0, 32, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 0, 0, 1234765, 24535, -56852, 0, 33, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 0, 0, 1234765, 25975, -57146, 0, 33, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 0, 0, 1234765, 23095, -57626, 0, 34, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 0, 0, 1234765, 24535, -58400, 0, 35, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 0, 0, 1234765, 25975, -59174, 0, 36, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 0, 0, 1234765, 27415, -59948, 0, 37, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 0, 0, 1234765, 28855, -60722, 0, 38, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 0, 0, 1234765, 30295, -61496, 0, 39, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 0, 0, 1234765, 31735, -65124, 0, 39, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 1, 0, 0, 0, 0, 1234765, 30240, -65124, 0, 40, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 0, 0, 0, 0, 0, 1234765, 31680, -65124, 0, 41, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 0, 0, 0, 0, 0, 1234765, 33120, -65124, 0, 42, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 0, 0, 0, 0, 0, 1234765, 34560, -67426, 0, 42, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 1, 0, 0, 0, 0, 1237185, 31680, -67426, 0, 43, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 0, 0, 1237185, 33120, -67426, 0, 44, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 0, 0, 1237185, 34560, -67426, 0, 45, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 0, 0, 1237185, 36000, -67426, 0, 46, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 0, 0, 1237185, 37440, -69728, 0, 46, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 1, 0, 0, 0, 0, 1237185, 34560, -69728, 0, 47, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 0, 0, 0, 0, 0, 1237185, 36000, -69728, 0, 48, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 0, 0, 0, 0, 0, 1237185, 37440, -69728, 0, 49, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 0, 0, 0, 0, 0, 1237185, 38880, -72030, 0, 49, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 1, 0, 0, 0, 0, 1237185, 36000, -72030, 0, 50, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 1237185, 37440, -72030, 0, 51, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 1237185, 38880, -72030, 0, 52, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 1237185, 40320, -72030, 0, 53, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 1237185, 41760, -74332, 0, 53, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 1, 0, 0, 0, 0, 1237185, 38880, -74332, 0, 54, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 1237185, 40320, -74332, 0, 55, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 1237185, 41760, -74332, 0, 56, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 1237185, 43200, -74332, 0, 57, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 1237185, 44640, -76634, 0, 57, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 1, 0, 0, 0, 0, 1237185, 41760, -76634, 0, 58, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 1237185, 43200, -76634, 0, 59, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 1237185, 44640, -76634, 0, 60, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 1237185, 46080, -76634, 0, 61, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 1237185, 47520, -78936, 0, 61, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 1, 0, 0, 0, 0, 1237185, 44640, -78936, 0, 62, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 1237185, 46080, -78936, 0, 63, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 1237185, 47520, -78936, 0, 64, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 1237185, 48960, -78936, 0, 65, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 1237185, 50400, -81238, 0, 65, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 1, 0, 0, 0, 0, 1237185, 47520, -81238, 0, 66, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 1237185, 48960, -81238, 0, 67, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 1237185, 50400, -81238, 0, 68, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 1237185, 51840, -81238, 0, 69, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 1237185, 53280, -83540, 0, 69, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 1, 0, 0, 0, 0, 1237185, 50400, -83540, 0, 70, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 1237185, 51840, -83540, 0, 71, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 1237185, 53280, -83540, 0, 72, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 1237185, 54720, -83540, 0, 73, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 1237185, 56160, -85842, 0, 73, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 1, 0, 0, 0, 0, 1237185, 53280, -85842, 0, 74, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 1237185, 54720, -85842, 0, 75, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 1237185, 56160, -85842, 0, 76, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 1237185, 57600, -85842, 0, 77, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 1237185, 59040, -88144, 0, 77, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 1, 0, 0, 0, 0, 1237185, 56160, -88144, 0, 78, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 1237185, 57600, -88144, 0, 79, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 1237185, 59040, -88144, 0, 80, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 1237185, 60480, -88144, 0, 81, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 1237185, 61920, -90446, 0, 81, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 1, 0, 0, 0, 0, 1237185, 59040, -90446, 0, 82, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 1237185, 60480, -90446, 0, 83, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 1237185, 61920, -90446, 0, 84, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 1237185, 63360, -90446, 0, 85, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 1237185, 64800, -92748, 0, 85, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 1, 0, 0, 0, 0, 1237185, 61920, -92748, 0, 86, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 1237185, 63360, -92748, 0, 87, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 1237185, 64800, -92748, 0, 88, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 1237185, 66240, -92748, 0, 89, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 1237185, 67680, -93899, 0, 89, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 1, 0, 0, 0, 0, 1237185, 67680, -93899, 0, 90, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 1, 0, 0, 0, 0, 1237185, 67735, -95050, 0, 90, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 1, 0, 0, 0, 0, 1237185, 64855, -95050, 0, 91, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 1237185, 66295, -95050, 0, 92, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 1237185, 67735, -95050, 0, 93, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 1237185, 69175, -95050, 0, 94, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 1237185, 70615, -97352, 0, 94, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 1, 0, 0, 0, 0, 1237185, 67735, -97352, 0, 95, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 1237185, 69175, -97352, 0, 96, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 1237185, 70615, -97352, 0, 97, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 1237185, 72055, -97352, 0, 98, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 1237185, 73495, -99654, 0, 98, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 1, 0, 0, 0, 0, 1237185, 70615, -99654, 0, 99, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 1237185, 72055, -99654, 0, 100, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 1237185, 73495, -99654, 0, 101, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 1237185, 74935, -99654, 0, 102, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 1237185, 76375, -101956, 0, 102, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 1, 0, 0, 0, 0, 1237185, 73495, -101956, 0, 103, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 1237185, 74935, -101956, 0, 104, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 1237185, 76375, -101956, 0, 105, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 1237185, 77815, -101956, 0, 106, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 1237185, 79255, -104258, 0, 106, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 1, 0, 0, 0, 0, 1237185, 76375, -104258, 0, 107, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 1237185, 77815, -104258, 0, 108, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 1237185, 79255, -104258, 0, 109, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 1237185, 80695, -104258, 0, 110, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 1237185, 82135, -106560, 0, 110, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 1, 0, 0, 0, 0, 1237185, 79255, -106560, 0, 111, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 80695, -106560, 0, 112, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 82135, -106560, 0, 113, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 83575, -106560, 0, 114, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 85015, -108862, 0, 114, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 1, 0, 0, 0, 0, 1237185, 82135, -108862, 0, 115, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 83575, -108862, 0, 116, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 85015, -108862, 0, 117, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 86455, -108862, 0, 118, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 1237185, 87895, -111164, 0, 118, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 1237185, 85015, -111164, 0, 119, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 86455, -111164, 0, 120, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 87895, -111164, 0, 121, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 89335, -111164, 0, 122, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 90775, -113466, 0, 122, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 1237185, 87895, -113466, 0, 123, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 89335, -113466, 0, 124, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 90775, -113466, 0, 125, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 92215, -113466, 0, 126, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 93655, -115768, 0, 126, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 1, 0, 0, 0, 0, 1237185, 90775, -115768, 0, 127, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 1237185, 92215, -115768, 0, 128, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 1237185, 93655, -115768, 0, 129, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 1237185, 95095, -115768, 0, 130, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 1237185, 96535, -118070, 0, 130, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 1237185, 93655, -118070, 0, 131, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 95095, -118070, 0, 132, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 96535, -118070, 0, 133, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 97975, -118070, 0, 134, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 99415, -120372, 0, 134, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 1237185, 96535, -120372, 0, 135, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 97975, -120372, 0, 136, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 99415, -120372, 0, 137, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 100855, -120372, 0, 138, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 1237185, 102295, -122674, 0, 138, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 1, 0, 0, 0, 0, 1237185, 99415, -122674, 0, 139, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 1237185, 100855, -122674, 0, 140, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 1237185, 102295, -122674, 0, 141, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 1237185, 103735, -122674, 0, 142, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 1237185, 105175, -124976, 0, 142, 73, 124976, 85842, 52257, 0, 39134, 34350, 20086, 1237185, 23892, 1440, 947, 2, 0, 1, 0, 0, 1, 52179, 1237185, 99415, -127278, 0, 142, 77, 127278, 88144, 52336, 0, 39134, 34948, 20086, 1237185, 23892, 1440, 962, 4, 0, 1, 0, 0, 1, 52179, 1237185, 93655, -129580, 0, 142, 81, 129580, 90446, 52414, 0, 39134, 35471, 20086, 1237185, 25385, 1440, 975, 6, 0, 1, 0, 0, 1, 52179, 1237185, 87895, -131882, 0, 142, 85, 131882, 92748, 52492, 0, 39134, 35928, 20086, 1237185, 25385, 1440, 986, 8, 0, 1, 0, 0, 1, 52179, 1237185, 82135, -133076, 0, 142, 89, 133076, 93899, 52532, 0, 39177, 36334, 20086, 1236832, 25385, 1440, 996, 10, 0, 1, 0, 0, 1, 52179, 1237185, 77760, -135378, 0, 142, 91, 135378, 95050, 52610, 0, 40328, 36833, 20086, 1236832, 25385, 1440, 1009, 12, 0, 1, 0, 0, 1, 52179, 1237185, 72000, -136529, 0, 142, 94, 136529, 97352, 52649, 0, 39177, 37126, 20086, 1236822, 25385, 1440, 1016, 12, 0, 1, 0, 0, 1, 52179, 1237185, 70560, -138831, 0, 142, 98, 138831, 99654, 52727, 0, 39177, 37382, 20086, 1236822, 25385, 1440, 1021, 14, 0, 1, 0, 0, 1, 52179, 1237185, 64800, -138831, 0, 143, 98, 138831, 99654, 52727, 0, 39177, 37382, 20086, 1236822, 25385, 1440, 1021, 14, 0, 1, 0, 0, 1, 52179, 1237185, 64855, -141133, 0, 143, 102, 141133, 101956, 52805, 0, 39177, 37606, 20086, 1236822, 25385, 1440, 1026, 16, 0, 1, 0, 0, 1, 52179, 1237185, 59095, -143435, 0, 143, 106, 143435, 104258, 52883, 0, 39177, 37802, 20086, 1236822, 25385, 1440, 1030, 18, 0, 1, 0, 0, 1, 52179, 1237185, 53335, -145737, 0, 143, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 1, 0, 0, 1, 52179, 1237185, 47575, -145737, 0, 144, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 1, 52179, 1237185, 49015, -145737, 0, 145, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 1, 52179, 1237185, 50455, -145737, 0, 146, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 1, 52179, 1237185, 51895, -145737, 0, 147, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 1, 52179, 1237185, 53335, -148039, 0, 147, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 1, 0, 0, 1, 52179, 1237185, 47575, -148039, 0, 148, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 1, 52179, 1237185, 49015, -148039, 0, 149, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 1, 52179, 1237185, 50455, -148039, 0, 150, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 1, 52179, 1237185, 51895, -148039, 0, 151, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 1, 52179, 1237185, 53335, -150341, 0, 151, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 1, 0, 0, 1, 52179, 1237185, 47575, -150341, 0, 152, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 1, 52179, 1237185, 49015, -150341, 0, 153, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 1, 52179, 1237185, 50455, -150341, 0, 154, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 1, 52179, 1237185, 51895, -150341, 0, 155, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 1, 52179, 1237185, 53335, -152643, 0, 155, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 1, 0, 0, 1, 52179, 1237185, 47575, -152643, 0, 156, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 1, 52179, 1237185, 49015, -152643, 0, 157, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 1, 52179, 1237185, 50455, -152643, 0, 158, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 1, 52179, 1237185, 51895, -152818, 0, 159, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 1, 52179, 1237185, 53335, -154945, 0, 159, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 1, 0, 0, 1, 52179, 1237185, 47575, -154945, 0, 160, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 1, 52179, 1237185, 49015, -154945, 0, 161, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 1, 52179, 1237185, 50455, -155938, 0, 162, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 1, 52179, 1237185, 51895, -156977, 0, 163, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 1, 52179, 1237185, 53335, -157247, 0, 163, 130, 157247, 118070, 53346, 0, 39177, 38558, 20086, 1236822, 25385, 1440, 1041, 30, 0, 0, 0, 0, 1, 52179, 1237185, 47575, -158018, 0, 164, 130, 157247, 118070, 53346, 0, 39177, 38558, 20086, 1236822, 25385, 1440, 1041, 30, 0, 0, 0, 0, 1, 52179, 1237185, 49015, -159059, 0, 165, 130, 157247, 118070, 53346, 0, 39177, 38558, 20086, 1236822, 25385, 1440, 1041, 30, 0, 0, 0, 0, 1, 52179, 1237185, 50455, -159549, 0, 165, 134, 159549, 120372, 53423, 0, 39177, 38635, 20086, 1236822, 25385, 1440, 1042, 32, 0, 0, 0, 0, 1, 52179, 1237185, 44695, -160101, 0, 166, 134, 159549, 120372, 53423, 0, 39177, 38635, 20086, 1236822, 25385, 1440, 1042, 32, 0, 0, 0, 0, 1, 52179, 1237185, 46135, -161142, 0, 167, 134, 159549, 120372, 53423, 0, 39177, 38635, 20086, 1236822, 25385, 1440, 1042, 32, 0, 0, 0, 0, 1, 52179, 1237185, 47575, -161851, 0, 167, 138, 161851, 122674, 53500, 0, 39177, 38702, 20086, 1236822, 25385, 1440, 1042, 34, 0, 0, 0, 0, 1, 52179, 1237185, 41815, -162184, 0, 168, 138, 161851, 122674, 53500, 0, 39177, 38702, 20086, 1236822, 25385, 1440, 1042, 34, 0, 0, 0, 0, 1, 52179, 1237185, 43255, -163045, 0, 168, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 1, 52179, 1237185, 36000, -163176, 0, 169, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 1, 52179, 1237185, 37440, -164168, 0, 170, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 1, 52179, 1237185, 38880, -165160, 0, 171, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 1, 52179, 1237185, 40320, -166153, 0, 172, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 1, 52179, 1237185, 41760, -167145, 0, 173, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 1, 52179, 1237185, 43200, -168082, 0, 173, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 1, 52179, 1237185, 40320, -168087, 0, 174, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 1, 52179, 1237185, 41760, -169029, 0, 175, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 1, 52179, 1237185, 43200, -169971, 0, 176, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 1, 52179, 1237185, 44640, -170384, 0, 176, 146, 170384, 145737, 53692, 0, 24647, 33768, 20086, 691604, 24284, 1440, 906, 38, 0, 0, 0, 0, 1, 52179, 1237185, 41760, -170876, 0, 177, 146, 170384, 145737, 53692, 0, 24647, 33768, 20086, 691604, 24284, 1440, 906, 38, 0, 0, 0, 0, 1, 52179, 1237185, 43200, -171782, 0, 178, 146, 170384, 145737, 53692, 0, 24647, 33768, 20086, 691604, 24284, 1440, 906, 38, 0, 0, 0, 0, 1, 52179, 1237185, 44640, -172686, 0, 178, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 1, 52179, 1237185, 41760, -172686, 0, 179, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 1, 52179, 1237185, 43200, -173529, 0, 180, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 1, 52179, 1237185, 44640, -174403, 0, 181, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 1, 52179, 1237185, 46080, -174988, 0, 181, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 1, 52179, 1237185, 43200, -175257, 0, 182, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 1, 52179, 1237185, 44640, -176110, 0, 183, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 1, 52179, 1237185, 46080, -176964, 0, 184, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 1, 52179, 1237185, 47520, -177290, 0, 184, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 1, 52179, 1237185, 44640, -177800, 0, 185, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 1, 52179, 1237185, 46080, -178636, 0, 186, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 1, 52179, 1237185, 47520, -179471, 0, 187, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -179592, 0, 187, 154, 179592, 150341, 53997, 0, 29251, 31040, 20086, 836996, 24284, 1440, 828, 38, 0, 0, 0, 0, 1, 52179, 1237185, 46080, -180299, 0, 188, 154, 179592, 150341, 53997, 0, 29251, 31040, 20086, 836996, 24284, 1440, 828, 38, 0, 0, 0, 0, 1, 52179, 1237185, 47520, -181127, 0, 189, 154, 179592, 150341, 53997, 0, 29251, 31040, 20086, 836996, 24284, 1440, 828, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -181894, 0, 189, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 1, 52179, 1237185, 46080, -181948, 0, 190, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 1, 52179, 1237185, 47520, -182768, 0, 191, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -183589, 0, 192, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -184196, 0, 192, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 1, 52179, 1237185, 47520, -184410, 0, 193, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -185232, 0, 194, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -186053, 0, 195, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -186498, 0, 195, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -186875, 0, 196, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -187698, 0, 197, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -188520, 0, 198, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -189343, 0, 199, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -192670, 0, 199, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 1, 0, 0, 1, 52179, 1237185, 47520, -192670, 0, 200, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -192670, 0, 201, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -192670, 0, 202, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -192670, 0, 203, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -193460, 0, 204, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -198425, 0, 204, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 1, 0, 0, 1, 52179, 1237185, 47520, -198425, 0, 205, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -198425, 0, 206, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -198425, 0, 207, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -198425, 0, 208, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -198425, 0, 209, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -204180, 0, 209, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 1, 0, 0, 1, 52179, 1237185, 47520, -204180, 0, 210, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 1, 52179, 1237185, 48960, -204180, 0, 211, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -204180, 0, 212, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -204180, 0, 213, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -204180, 0, 214, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -204180, 0, 215, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 1, 52179, 1237185, 56160, -209935, 0, 215, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 1, 0, 0, 1, 52179, 1237185, 48960, -209935, 0, 216, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -209935, 0, 217, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -209935, 0, 218, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -209935, 0, 219, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -209935, 0, 220, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 1, 52179, 1237185, 56160, -215690, 0, 220, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 1, 0, 0, 1, 52179, 1237185, 48960, -215690, 0, 221, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -215690, 0, 222, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -215690, 0, 223, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -215690, 0, 224, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -215690, 0, 225, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 1, 52179, 1237185, 56160, -221445, 0, 225, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 1, 0, 0, 1, 52179, 1237185, 48960, -221445, 0, 226, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -221445, 0, 227, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -221445, 0, 228, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -221445, 0, 229, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -221445, 0, 230, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 1, 52179, 1237185, 56160, -227200, 0, 230, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 1, 0, 0, 1, 52179, 1237185, 48960, -227200, 0, 231, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -227200, 0, 232, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -227200, 0, 233, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -227200, 0, 234, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -227200, 0, 235, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 1, 52179, 1237185, 56160, -232955, 0, 235, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 1, 0, 0, 1, 52179, 1237185, 48960, -232955, 0, 236, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 1, 52179, 1237185, 50400, -232955, 0, 237, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 1, 52179, 1237185, 51840, -232955, 0, 238, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 1, 52179, 1237185, 53280, -232955, 0, 239, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 1, 52179, 1237185, 54720, -232955, 0, 240, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 1, 52179, 1237185, 56160, -238710, 0, 240, 207, 238710, 198425, 28227, 0, 39869, 35501, 20086, 1237185, 16759, 1440, 1812, 40, 0, 1, 0, 0, 1, 27859, 1237185, 46080, -244465, 0, 240, 212, 244465, 204180, 28590, 0, 39869, 36047, 20086, 1237185, 9556, 1440, 1816, 40, 0, 1, 0, 0, 1, 27859, 1237185, 38880, -250220, 0, 240, 218, 250220, 209935, 28948, 0, 39869, 36524, 20086, 1237185, 9556, 1440, 1817, 41, 0, 1, 0, 0, 1, 27859, 1237185, 30240, -255975, 0, 240, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 1, 0, 0, 1, 27859, 1237185, 23040, -255975, 0, 241, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -255975, 0, 242, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -255975, 0, 243, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -255975, 0, 244, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -255975, 0, 245, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -261730, 0, 245, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 1, 0, 0, 1, 27859, 1237185, 23040, -261730, 0, 246, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -261730, 0, 247, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -261730, 0, 248, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -263065, 0, 249, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -264877, 0, 250, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -267485, 0, 250, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 1, 0, 0, 1, 27859, 1237185, 23040, -267485, 0, 251, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -268489, 0, 252, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -270295, 0, 253, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -272102, 0, 254, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -273240, 0, 254, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -273901, 0, 255, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -275700, 0, 256, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -277499, 0, 257, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -278995, 0, 257, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -279286, 0, 258, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -281073, 0, 259, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -282861, 0, 260, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -284492, 0, 260, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -284628, 0, 261, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -286396, 0, 262, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -288164, 0, 263, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -289932, 0, 264, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -290247, 0, 264, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 1, 27859, 1237185, 17280, -291681, 0, 265, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -293430, 0, 266, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -295179, 0, 267, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -296510, 0, 267, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 1, 27859, 1237185, 17280, -296824, 0, 268, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -298470, 0, 269, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -300116, 0, 270, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -301761, 0, 271, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -301915, 0, 271, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -303397, 0, 272, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -305032, 0, 273, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -306668, 0, 274, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -307288, 0, 274, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -308293, 0, 275, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -309919, 0, 276, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -311544, 0, 277, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -312611, 0, 277, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -313160, 0, 278, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -314776, 0, 279, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -316391, 0, 280, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -317896, 0, 280, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -317997, 0, 281, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -319603, 0, 282, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -321209, 0, 283, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -322815, 0, 284, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -323039, 0, 284, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -324327, 0, 285, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -325839, 0, 286, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -327351, 0, 287, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -328863, 0, 288, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -329612, 0, 288, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -330363, 0, 289, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -331863, 0, 290, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -333363, 0, 291, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -334863, 0, 292, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -336134, 0, 292, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 1, 27859, 1237185, 18720, -336352, 0, 293, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -337840, 0, 294, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -339329, 0, 295, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -340818, 0, 296, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -342307, 0, 297, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -342606, 0, 297, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -343784, 0, 298, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -345262, 0, 299, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -346739, 0, 300, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -348217, 0, 301, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -349030, 0, 301, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -349614, 0, 302, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -351011, 0, 303, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -352409, 0, 304, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -353806, 0, 305, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -355078, 0, 305, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 1, 27859, 1237185, 20160, -355193, 0, 306, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -356580, 0, 307, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -357968, 0, 308, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -359355, 0, 309, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -360742, 0, 310, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -361078, 0, 310, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -362119, 0, 311, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -363496, 0, 312, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -364874, 0, 313, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -366251, 0, 314, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -367033, 0, 314, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -367618, 0, 315, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -368986, 0, 316, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -370353, 0, 317, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -371721, 0, 318, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -372954, 0, 318, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 1, 27859, 1237185, 21600, -373020, 0, 319, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -374319, 0, 320, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -375618, 0, 321, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -376917, 0, 322, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -378216, 0, 323, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -378624, 0, 323, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -379506, 0, 324, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -380796, 0, 325, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -382086, 0, 326, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -383376, 0, 327, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -384183, 0, 327, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -384658, 0, 328, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -385939, 0, 329, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -387221, 0, 330, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -388502, 0, 331, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -389711, 0, 331, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 1, 27859, 1237185, 23040, -389775, 0, 332, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -391048, 0, 333, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -392320, 0, 334, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -393593, 0, 335, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -394866, 0, 336, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -395201, 0, 336, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -396080, 0, 337, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -397294, 0, 338, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -398509, 0, 339, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -399723, 0, 340, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -400534, 0, 340, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -400929, 0, 341, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -402135, 0, 342, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -403342, 0, 343, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -404548, 0, 344, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -405721, 0, 344, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -405747, 0, 345, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -406945, 0, 346, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -408144, 0, 347, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -409342, 0, 348, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -410541, 0, 349, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -410873, 0, 349, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -411732, 0, 350, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -412923, 0, 351, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -414114, 0, 352, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -415305, 0, 353, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -415990, 0, 353, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -416488, 0, 354, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -417671, 0, 355, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -418855, 0, 356, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -420038, 0, 357, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -421081, 0, 357, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 1, 27859, 1237185, 24480, -421170, 0, 358, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -422302, 0, 359, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -423434, 0, 360, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -424566, 0, 361, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -425698, 0, 362, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -426830, 0, 363, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -427144, 0, 363, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -427953, 0, 364, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -429076, 0, 365, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -430199, 0, 366, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -431323, 0, 367, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -432446, 0, 368, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -433160, 0, 368, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 1, 27859, 1237185, 25920, -433561, 0, 369, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -434676, 0, 370, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -435790, 0, 371, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -436905, 0, 372, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -438020, 0, 373, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -439135, 0, 374, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -439138, 0, 374, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -440242, 0, 375, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -441348, 0, 376, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -442455, 0, 377, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -443561, 0, 378, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -444668, 0, 379, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -445070, 0, 379, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -445731, 0, 380, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -446793, 0, 381, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -447856, 0, 382, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -448918, 0, 383, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -449981, 0, 384, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -450857, 0, 384, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 1, 27859, 1237185, 27360, -451036, 0, 385, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -452091, 0, 386, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -453146, 0, 387, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -454201, 0, 388, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -455256, 0, 389, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -456311, 0, 390, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -456612, 0, 390, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -457358, 0, 391, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -458405, 0, 392, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -459453, 0, 393, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -460500, 0, 394, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -461548, 0, 395, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -462367, 0, 395, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 1, 27859, 1237185, 28800, -462588, 0, 396, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -463628, 0, 397, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -464668, 0, 398, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -465709, 0, 399, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -466749, 0, 400, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -467789, 0, 401, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -468122, 0, 401, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 1, 27859, 1237185, 30240, -468793, 0, 402, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -469798, 0, 403, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -470802, 0, 404, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -471807, 0, 405, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -472811, 0, 406, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -473816, 0, 407, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -473877, 0, 407, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -474813, 0, 408, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -475811, 0, 409, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -476808, 0, 410, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -477806, 0, 411, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -478804, 0, 412, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -479632, 0, 412, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 1, 27859, 1237185, 31680, -479795, 0, 413, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -480786, 0, 414, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -481777, 0, 415, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -482767, 0, 416, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -483758, 0, 417, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -484749, 0, 418, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40320, -485387, 0, 418, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 1, 27859, 1237185, 33120, -485734, 0, 419, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -486718, 0, 420, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -487703, 0, 421, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -488687, 0, 422, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -489671, 0, 423, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40320, -491142, 0, 423, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 1, 0, 0, 1, 27859, 1237185, 33120, -491142, 0, 424, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -491627, 0, 425, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -492605, 0, 426, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -493583, 0, 427, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -494561, 0, 428, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40320, -496897, 0, 428, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 1, 0, 0, 1, 27859, 1237185, 33120, -496897, 0, 429, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -496897, 0, 430, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -497429, 0, 431, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -498384, 0, 432, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -499340, 0, 433, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40320, -502652, 0, 433, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 1, 0, 0, 1, 27859, 1237185, 33120, -502652, 0, 434, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -502652, 0, 435, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -502652, 0, 436, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -503118, 0, 437, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -504063, 0, 438, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40320, -508407, 0, 438, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 1, 0, 0, 1, 27859, 1237185, 33120, -508407, 0, 439, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 34560, -508407, 0, 440, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -508407, 0, 441, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -508407, 0, 442, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -508751, 0, 443, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40320, -509689, 0, 444, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 41760, -514162, 0, 444, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 1, 27859, 1237185, 34560, -514162, 0, 445, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36000, -514162, 0, 446, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37440, -514162, 0, 447, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38880, -514162, 0, 448, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40320, -514361, 0, 449, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 41760, -516047, 0, 449, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 1, 27859, 1237185, 41760, -516047, 0, 450, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 1, 27859, 1237185, 41815, -519917, 0, 450, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 1, 27859, 1237185, 34615, -519917, 0, 451, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36055, -519917, 0, 452, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37495, -519917, 0, 453, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38935, -519917, 0, 454, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40375, -519917, 0, 455, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1237185, 41815, -525672, 0, 455, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 1, 0, 0, 1, 27859, 1237185, 34615, -525672, 0, 456, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36055, -525672, 0, 457, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37495, -525672, 0, 458, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38935, -525672, 0, 459, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40375, -525672, 0, 460, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 41815, -531427, 0, 460, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 1, 0, 0, 1, 27859, 1237185, 34615, -531427, 0, 461, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36055, -531427, 0, 462, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37495, -531427, 0, 463, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38935, -531427, 0, 464, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40375, -531427, 0, 465, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 41815, -537182, 0, 465, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 1, 0, 0, 1, 27859, 1237185, 34615, -537182, 0, 466, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36055, -537182, 0, 467, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37495, -537182, 0, 468, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38935, -537182, 0, 469, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40375, -537182, 0, 470, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 1, 27859, 1237185, 41815, -542937, 0, 470, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 1, 0, 0, 1, 27859, 1237185, 34615, -542937, 0, 471, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 36055, -542937, 0, 472, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 37495, -542937, 0, 473, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 38935, -542937, 0, 474, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 40375, -542937, 0, 475, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 41815, -542937, 0, 476, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 1, 27859, 1237185, 43255, -548692, 0, 476, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 1, 0, 0, 1, 27859, 1243961, 36000, -548692, 0, 477, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 1, 27859, 1243961, 37440, -548692, 0, 478, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -548692, 0, 479, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -548692, 0, 480, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -548692, 0, 481, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -554490, 0, 481, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 1, 0, 0, 1, 27859, 1243961, 36000, -554490, 0, 482, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1243961, 37440, -554490, 0, 483, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -554490, 0, 484, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -554490, 0, 485, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -554490, 0, 486, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -560245, 0, 486, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 1, 0, 0, 1, 27859, 1243961, 36000, -560245, 0, 487, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 1, 27859, 1243961, 37440, -560245, 0, 488, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -560245, 0, 489, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -560245, 0, 490, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -560245, 0, 491, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -566000, 0, 491, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 1, 0, 0, 1, 27859, 1243961, 36000, -566000, 0, 492, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 1, 27859, 1243961, 37440, -566000, 0, 493, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -566000, 0, 494, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -566000, 0, 495, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -566000, 0, 496, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -571755, 0, 496, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 1, 0, 0, 1, 27859, 1243961, 36000, -571755, 0, 497, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 1, 27859, 1243961, 37440, -571755, 0, 498, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -571755, 0, 499, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -571755, 0, 500, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -571755, 0, 501, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -571755, 0, 502, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -577510, 0, 502, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 1, 0, 0, 1, 27859, 1243961, 37440, -577510, 0, 503, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -577510, 0, 504, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -577510, 0, 505, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -577510, 0, 506, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -577510, 0, 507, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -583265, 0, 507, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 1, 0, 0, 1, 27859, 1243961, 37440, -583265, 0, 508, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -583265, 0, 509, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -583265, 0, 510, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -583265, 0, 511, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -583265, 0, 512, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -589020, 0, 512, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 1, 0, 0, 1, 27859, 1243961, 37440, -589020, 0, 513, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -589020, 0, 514, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -589020, 0, 515, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -589020, 0, 516, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -589020, 0, 517, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -594775, 0, 517, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 1, 0, 0, 1, 27859, 1243961, 37440, -594775, 0, 518, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -594775, 0, 519, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -594775, 0, 520, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -594775, 0, 521, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -594775, 0, 522, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -600530, 0, 522, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 1, 0, 0, 1, 27859, 1243961, 37440, -600530, 0, 523, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -600530, 0, 524, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -600530, 0, 525, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -600530, 0, 526, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -600530, 0, 527, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -606285, 0, 527, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 1, 0, 0, 1, 27859, 1243961, 37440, -606285, 0, 528, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 38880, -606285, 0, 529, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -606285, 0, 530, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -606285, 0, 531, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -606285, 0, 532, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -606285, 0, 533, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -612040, 0, 533, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 1, 0, 0, 1, 27859, 1243961, 38880, -612040, 0, 534, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -612040, 0, 535, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -612040, 0, 536, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -612040, 0, 537, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -612040, 0, 538, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -617795, 0, 538, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 1, 0, 0, 1, 27859, 1243961, 38880, -617795, 0, 539, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -617795, 0, 540, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -617795, 0, 541, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -617795, 0, 542, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -617795, 0, 543, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -623550, 0, 543, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 1, 0, 0, 1, 27859, 1243961, 38880, -623550, 0, 544, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -623550, 0, 545, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -623550, 0, 546, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -623550, 0, 547, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -623550, 0, 548, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -629305, 0, 548, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 1, 0, 0, 1, 27859, 1243961, 38880, -629305, 0, 549, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -629305, 0, 550, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -629305, 0, 551, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -629305, 0, 552, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -629305, 0, 553, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -635060, 0, 553, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 1, 0, 0, 1, 27859, 1243961, 38880, -635060, 0, 554, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -635060, 0, 555, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -635060, 0, 556, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -635060, 0, 557, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -635060, 0, 558, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -640815, 0, 558, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 1, 0, 0, 1, 27859, 1243961, 38880, -640815, 0, 559, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -640815, 0, 560, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -640815, 0, 561, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -640815, 0, 562, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -640815, 0, 563, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -646570, 0, 563, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 1, 0, 0, 1, 27859, 1243961, 38880, -646570, 0, 564, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 40320, -646570, 0, 565, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -646570, 0, 566, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -646570, 0, 567, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -646570, 0, 568, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -646570, 0, 569, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -652325, 0, 569, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 1, 0, 0, 1, 27859, 1243961, 40320, -652325, 0, 570, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -652325, 0, 571, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -652325, 0, 572, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -652325, 0, 573, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -652325, 0, 574, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -658080, 0, 574, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 1, 0, 0, 1, 27859, 1243961, 40320, -658080, 0, 575, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -658080, 0, 576, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -658080, 0, 577, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -658080, 0, 578, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -658080, 0, 579, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -663835, 0, 579, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 1, 0, 0, 1, 27859, 1243961, 40320, -663835, 0, 580, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -663835, 0, 581, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -663835, 0, 582, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -663835, 0, 583, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -663835, 0, 584, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -669590, 0, 584, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 1, 0, 0, 1, 27859, 1243961, 40320, -669590, 0, 585, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -669590, 0, 586, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -669590, 0, 587, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -669590, 0, 588, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -669590, 0, 589, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -675345, 0, 589, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 1, 0, 0, 1, 27859, 1243961, 40320, -675345, 0, 590, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -675345, 0, 591, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -675345, 0, 592, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -675345, 0, 593, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -675345, 0, 594, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -681100, 0, 594, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 1, 0, 0, 1, 27859, 1243961, 40320, -681100, 0, 595, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 41760, -681100, 0, 596, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -681100, 0, 597, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -681100, 0, 598, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -681100, 0, 599, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -681100, 0, 600, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -686855, 0, 600, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 1, 0, 0, 1, 27859, 1243961, 41760, -686855, 0, 601, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -686855, 0, 602, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -686855, 0, 603, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -686855, 0, 604, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -686855, 0, 605, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -692610, 0, 605, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 1, 0, 0, 1, 27859, 1243961, 41760, -692610, 0, 606, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -692610, 0, 607, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -692610, 0, 608, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -692610, 0, 609, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -692610, 0, 610, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -698365, 0, 610, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 1, 0, 0, 1, 27859, 1243961, 41760, -698365, 0, 611, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -698365, 0, 612, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -698365, 0, 613, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -698365, 0, 614, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -698365, 0, 615, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -704120, 0, 615, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 1, 0, 0, 1, 27859, 1243961, 41760, -704120, 0, 616, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -704120, 0, 617, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -704120, 0, 618, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -704120, 0, 619, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -704120, 0, 620, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -709875, 0, 620, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 1, 0, 0, 1, 27859, 1243961, 41760, -709875, 0, 621, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -709875, 0, 622, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -709875, 0, 623, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -709875, 0, 624, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -709875, 0, 625, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -715630, 0, 625, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 1, 0, 0, 1, 27859, 1243961, 41760, -715630, 0, 626, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -715630, 0, 627, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -715630, 0, 628, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -715630, 0, 629, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -715630, 0, 630, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -721385, 0, 630, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 1, 0, 0, 1, 27859, 1243961, 41760, -721385, 0, 631, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 1, 27859, 1243961, 43200, -721385, 0, 632, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -721385, 0, 633, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -721385, 0, 634, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -721385, 0, 635, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -721385, 0, 636, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -727140, 0, 636, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 1, 0, 0, 1, 27859, 1243961, 43200, -727140, 0, 637, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -727140, 0, 638, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -727140, 0, 639, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -727140, 0, 640, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -727140, 0, 641, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -732895, 0, 641, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 1, 0, 0, 1, 27859, 1243961, 43200, -732895, 0, 642, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -732895, 0, 643, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -732895, 0, 644, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -732895, 0, 645, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -732895, 0, 646, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -738650, 0, 646, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 1, 0, 0, 1, 27859, 1243961, 43200, -738650, 0, 647, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -738650, 0, 648, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -738650, 0, 649, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -738650, 0, 650, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -738650, 0, 651, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -744405, 0, 651, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 1, 0, 0, 1, 27859, 1243961, 43200, -744405, 0, 652, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -744405, 0, 653, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -744405, 0, 654, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -744405, 0, 655, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -744405, 0, 656, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -750160, 0, 656, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 1, 0, 0, 1, 27859, 1243961, 43200, -750160, 0, 657, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -750160, 0, 658, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -750160, 0, 659, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -750160, 0, 660, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -750160, 0, 661, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -755915, 0, 661, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 1, 0, 0, 1, 27859, 1243961, 43200, -755915, 0, 662, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -755915, 0, 663, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -755915, 0, 664, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -755915, 0, 665, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -755915, 0, 666, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -761670, 0, 666, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 1, 0, 0, 1, 27859, 1243961, 43200, -761670, 0, 667, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 1, 27859, 1243961, 44640, -761670, 0, 668, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -761670, 0, 669, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -761670, 0, 670, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -761670, 0, 671, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -761670, 0, 672, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -767425, 0, 672, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 1, 0, 0, 1, 27859, 1243961, 44640, -767425, 0, 673, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -767425, 0, 674, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -767425, 0, 675, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -767425, 0, 676, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -767425, 0, 677, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -773180, 0, 677, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 1, 0, 0, 1, 27859, 1243961, 44640, -773180, 0, 678, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -773180, 0, 679, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -773180, 0, 680, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -773180, 0, 681, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -773180, 0, 682, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -778935, 0, 682, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 1, 0, 0, 1, 27859, 1243961, 44640, -778935, 0, 683, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -778935, 0, 684, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -778935, 0, 685, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -778935, 0, 686, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -778935, 0, 687, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -784690, 0, 687, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 1, 0, 0, 1, 27859, 1243961, 44640, -784690, 0, 688, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -784690, 0, 689, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -784690, 0, 690, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -784690, 0, 691, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -784690, 0, 692, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -790445, 0, 692, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 1, 0, 0, 1, 27859, 1243961, 44640, -790445, 0, 693, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -790445, 0, 694, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -790445, 0, 695, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -790445, 0, 696, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -790445, 0, 697, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -796200, 0, 697, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 1, 0, 0, 1, 27859, 1243961, 44640, -796200, 0, 698, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -796200, 0, 699, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -796200, 0, 700, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -796200, 0, 701, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -796200, 0, 702, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -801955, 0, 702, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 1, 0, 0, 1, 27859, 1243961, 44640, -801955, 0, 703, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 1, 27859, 1243961, 46080, -801955, 0, 704, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -801955, 0, 705, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -801955, 0, 706, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -801955, 0, 707, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -801955, 0, 708, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -807710, 0, 708, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 1, 0, 0, 1, 27859, 1243961, 46080, -807710, 0, 709, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -807710, 0, 710, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -807710, 0, 711, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -807710, 0, 712, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -807710, 0, 713, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -813465, 0, 713, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 1, 0, 0, 1, 27859, 1243961, 46080, -813465, 0, 714, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -813465, 0, 715, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -813465, 0, 716, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -813465, 0, 717, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -813465, 0, 718, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -819220, 0, 718, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 1, 0, 0, 1, 27859, 1243961, 46080, -819220, 0, 719, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -819220, 0, 720, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -819220, 0, 721, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -819220, 0, 722, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -819220, 0, 723, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -824975, 0, 723, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 1, 0, 0, 1, 27859, 1243961, 46080, -824975, 0, 724, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -824975, 0, 725, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -824975, 0, 726, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -824975, 0, 727, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -824975, 0, 728, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -830730, 0, 728, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 1, 0, 0, 1, 27859, 1243961, 46080, -830730, 0, 729, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -830730, 0, 730, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -830730, 0, 731, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -830730, 0, 732, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -830730, 0, 733, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -836485, 0, 733, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 1, 0, 0, 1, 27859, 1243961, 46080, -836485, 0, 734, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -836485, 0, 735, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -836485, 0, 736, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -836485, 0, 737, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -836485, 0, 738, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -842240, 0, 738, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 1, 0, 0, 1, 27859, 1243961, 46080, -842240, 0, 739, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 47520, -842240, 0, 740, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 48960, -842240, 0, 741, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 50400, -842240, 0, 742, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 51840, -842240, 0, 743, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 1, 27859, 1243961, 53280, -847995, 0, 743, 711, 847995, 807710, 27016, 0, 39869, 39176, 20086, 1237185, 9556, 1440, 2089, 42, 0, 1, 0, 0, 1, 26632, 1243961, 44640, -853750, 0, 743, 716, 853750, 813465, 27396, 0, 39869, 39262, 20086, 1237185, 9556, 1440, 2064, 42, 0, 1, 0, 0, 1, 26632, 1243961, 37440, -859505, 0, 743, 721, 859505, 819220, 27770, 0, 39869, 39337, 20086, 1237185, 9556, 1440, 2040, 42, 0, 1, 0, 0, 1, 26632, 1243961, 30240, -865260, 0, 743, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 1, 0, 0, 1, 26632, 1243961, 23040, -865260, 0, 744, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 1, 26632, 1243961, 24480, -865260, 0, 745, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 1, 26632, 1243961, 25920, -865260, 0, 746, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 1, 26632, 1243961, 27360, -865260, 0, 747, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 1, 26632, 1243961, 28800, -871015, 0, 747, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 1, 0, 0, 1, 26632, 1243961, 21600, -871015, 0, 748, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 1, 26632, 1243961, 23040, -871015, 0, 749, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 1, 26632, 1243961, 24480, -871015, 0, 750, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 1, 26632, 1243961, 25920, -871451, 0, 751, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 1, 26632, 1243961, 27360, -873444, 0, 752, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 1, 26632, 1243961, 28800, -876770, 0, 752, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 1, 0, 0, 1, 26632, 1243961, 21600, -876770, 0, 753, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 1, 26632, 1243961, 23040, -877387, 0, 754, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 1, 26632, 1243961, 24480, -879358, 0, 755, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 1, 26632, 1243961, 25920, -881329, 0, 756, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 1, 26632, 1243961, 27360, -882525, 0, 756, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 1, 26632, 1243961, 20160, -883279, 0, 757, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 1, 26632, 1243961, 21600, -885228, 0, 758, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 1, 26632, 1243961, 23040, -887178, 0, 759, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 1, 26632, 1243961, 24480, -888280, 0, 759, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 1, 26632, 1243961, 20160, -889113, 0, 760, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 1, 26632, 1243961, 21600, -891049, 0, 761, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 1, 26632, 1243961, 23040, -892984, 0, 762, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 1, 26632, 1243961, 23767, -893777, 0, 762, 748, 893777, 871015, 29708, 0, 22346, 39556, 20086, 600918, 9556, 1440, 1918, 42, 0, 0, 0, 0, 1, 26632, 1243961, 18007, -899532, 0, 762, 753, 899532, 877387, 29708, 0, 21729, 39556, 20086, 591853, 9556, 1440, 1918, 42, 0, 0, 0, 0, 1, 26632, 1243961, 10807, -905573, 0, 762, 756, 905573, 883279, 29708, 0, 21198, 37349, 20086, 520480, 9550, 1440, 1811, 42, 0, 0, 0, 0, 1, 26632, 1243961, 6487, -911443, 0, 762, 759, 911443, 889113, 29708, 0, 21194, 37349, 20086, 895484, 9550, 1440, 1811, 42, 0, 0, 0, 0, 1, 26632, 1243961, 2167, -917264, 0, 762, 761, 917264, 892984, 29708, 0, 20624, 37349, 20086, 810619, 9550, 1440, 1811, 42, 0, 0, 0, 0, 1, 26632, 1243961, 0, +time, path, sequence, highest ack, high ack time, last time ack, cwin, one-way-delay, rtt-sample, SRTT, RTT min, Bandwidth (B/s), Receive rate (B/s), Send MTU, pacing packet time(us), nb retrans, nb spurious, cwin blkd, flow blkd, stream blkd, app limited, cc_state, cc_param, bw_max, transit, +0, 0, 1, -1, 0, 0, 15360, 0, 0, 250000, 0, 0, 0, 1252, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1762, +0, 0, 2, -1, 0, 0, 15360, 0, 0, 250000, 0, 0, 0, 1252, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3202, +21040, 0, 3, -1, 0, 0, 15360, 0, 21040, 21040, 21040, 0, 0, 1252, 1372, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2005, +21656, 0, 3, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1717, +21656, 0, 4, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1772, +21885, 0, 5, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 1, 0, 0, 0, 3024, +21885, 0, 6, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 1, 0, 0, 0, 4276, +21885, 0, 7, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 1, 0, 0, 0, 5528, +23170, 0, 8, -1, 0, 0, 15360, 0, 21656, 21117, 21040, 45686, 0, 1252, 1378, 0, 0, 0, 0, 0, 1, 0, 0, 0, 6780, +24201, 0, 8, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 5118, +24768, 0, 9, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 6558, +26366, 0, 10, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 7998, +27963, 0, 11, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 9438, +29561, 0, 12, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 10878, +31159, 0, 13, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 12318, +32756, 0, 14, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 13758, +34354, 0, 15, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 15198, +35952, 0, 16, 1, 24201, 0, 15360, 0, 22609, 21303, 21040, 88688, 0, 1440, 1598, 0, 0, 0, 0, 0, 1, 0, 0, 652957, 16638, +41742, 0, 16, 3, 41742, 21656, 15360, 0, 20086, 21303, 20086, 78869, 0, 1440, 1598, 0, 0, 1, 0, 0, 1, 0, 0, 652957, 16528, +42929, 0, 16, 3, 41742, 21656, 15360, 0, 20086, 21303, 20086, 78869, 0, 1440, 1598, 0, 0, 1, 0, 0, 1, 0, 0, 652957, 16528, +42929, 0, 17, 3, 41742, 21656, 15360, 0, 20086, 21303, 20086, 78869, 0, 1440, 1598, 0, 0, 1, 0, 0, 1, 0, 0, 652957, 16583, +43930, 0, 17, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 1, 0, 0, 1, 0, 0, 1129798, 14079, +43930, 0, 18, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 0, 0, 0, 1, 0, 0, 1129798, 15519, +43930, 0, 19, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 0, 0, 0, 1, 0, 0, 1129798, 16959, +43930, 0, 20, 5, 43930, 21885, 17832, 0, 22045, 21303, 20086, 187662, 87411, 1440, 1377, 0, 0, 0, 0, 0, 1, 0, 0, 1129798, 18399, +45932, 0, 20, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 1, 0, 0, 1, 0, 0, 1234765, 15895, +45932, 0, 21, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 17335, +46216, 0, 22, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 18775, +47425, 0, 23, 7, 45932, 23170, 20304, 0, 22762, 21303, 20086, 274015, 87411, 1440, 1209, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 20215, +48234, 0, 23, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 17335, +48487, 0, 24, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 18775, +49549, 0, 25, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 20215, +50612, 0, 26, 9, 48234, 26366, 23152, 0, 21868, 21351, 20086, 298490, 87411, 1440, 1063, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 21655, +50755, 0, 26, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 18775, +51557, 0, 27, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 20215, +52502, 0, 28, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 21655, +53447, 0, 29, 11, 50755, 29561, 26000, 0, 21194, 21331, 20086, 362572, 87411, 1440, 946, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 23095, +53950, 0, 29, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 20215, +54298, 0, 30, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 21655, +55149, 0, 31, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 23095, +56000, 0, 32, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 24535, +56852, 0, 33, 13, 53950, 32756, 28848, 0, 21194, 21313, 20086, 414153, 87411, 1440, 852, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 25975, +57146, 0, 33, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 23095, +57626, 0, 34, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 24535, +58400, 0, 35, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 25975, +59174, 0, 36, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 27415, +59948, 0, 37, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 28855, +60722, 0, 38, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 30295, +61496, 0, 39, 15, 57146, 35952, 31696, 0, 21194, 21298, 20086, 456553, 87411, 1440, 775, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 31735, +65124, 0, 39, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 1, 0, 0, 1, 0, 0, 1234765, 30240, +65124, 0, 40, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 31680, +65124, 0, 41, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 33120, +65124, 0, 42, 17, 65124, 43930, 33159, 0, 21194, 21298, 20086, 695259, 87411, 1440, 740, 0, 0, 0, 0, 0, 1, 0, 0, 1234765, 34560, +67426, 0, 42, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 1, 0, 0, 1, 0, 0, 1237185, 31680, +67426, 0, 43, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 1, 0, 0, 1237185, 33120, +67426, 0, 44, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 1, 0, 0, 1237185, 34560, +67426, 0, 45, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 1, 0, 0, 1237185, 36000, +67426, 0, 46, 19, 67426, 43930, 36007, 0, 23496, 21298, 20086, 773535, 16385, 1440, 682, 0, 0, 0, 0, 0, 1, 0, 0, 1237185, 37440, +69728, 0, 46, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 1, 0, 0, 1, 0, 0, 1237185, 34560, +69728, 0, 47, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 0, 0, 0, 1, 0, 0, 1237185, 36000, +69728, 0, 48, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 0, 0, 0, 1, 0, 0, 1237185, 37440, +69728, 0, 49, 21, 69728, 46216, 38855, 0, 23512, 21298, 20086, 779584, 16385, 1440, 632, 0, 0, 0, 0, 0, 1, 0, 0, 1237185, 38880, +72030, 0, 49, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 36000, +72030, 0, 50, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 37440, +72030, 0, 51, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 38880, +72030, 0, 52, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 40320, +72030, 0, 53, 23, 72030, 48487, 41703, 0, 23543, 21298, 20086, 779584, 16385, 1440, 589, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 41760, +74332, 0, 53, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 38880, +74332, 0, 54, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 40320, +74332, 0, 55, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 41760, +74332, 0, 56, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 43200, +74332, 0, 57, 25, 74332, 50612, 44551, 0, 23720, 21298, 20086, 819947, 16385, 1440, 551, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 44640, +76634, 0, 57, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 41760, +76634, 0, 58, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 43200, +76634, 0, 59, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 44640, +76634, 0, 60, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 46080, +76634, 0, 61, 27, 76634, 52502, 47399, 0, 24132, 21298, 20086, 826886, 16385, 1440, 518, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 47520, +78936, 0, 61, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 44640, +78936, 0, 62, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 46080, +78936, 0, 63, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 47520, +78936, 0, 64, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 48960, +78936, 0, 65, 29, 78936, 54298, 50247, 0, 24638, 21298, 20086, 856439, 16385, 1440, 489, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 50400, +81238, 0, 65, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 47520, +81238, 0, 66, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 48960, +81238, 0, 67, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 50400, +81238, 0, 68, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 51840, +81238, 0, 69, 31, 81238, 56000, 53095, 0, 25238, 21298, 20086, 888559, 16385, 1440, 463, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 53280, +83540, 0, 69, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 50400, +83540, 0, 70, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 51840, +83540, 0, 71, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 53280, +83540, 0, 72, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 54720, +83540, 0, 73, 33, 83540, 57626, 55943, 0, 25914, 21627, 20086, 918655, 16385, 1440, 446, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 56160, +85842, 0, 73, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 53280, +85842, 0, 74, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 54720, +85842, 0, 75, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 56160, +85842, 0, 76, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 57600, +85842, 0, 77, 35, 85842, 59174, 58791, 0, 26668, 22257, 20086, 944208, 16385, 1440, 437, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 59040, +88144, 0, 77, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 56160, +88144, 0, 78, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 57600, +88144, 0, 79, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 59040, +88144, 0, 80, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 60480, +88144, 0, 81, 37, 88144, 60722, 61639, 0, 27422, 22902, 20086, 965965, 16385, 1440, 429, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 61920, +90446, 0, 81, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 59040, +90446, 0, 82, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 60480, +90446, 0, 83, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 61920, +90446, 0, 84, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 63360, +90446, 0, 85, 39, 90446, 65124, 64487, 0, 25322, 23204, 20086, 1237185, 16385, 1440, 415, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 64800, +92748, 0, 85, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 61920, +92748, 0, 86, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 63360, +92748, 0, 87, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 64800, +92748, 0, 88, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 66240, +92748, 0, 89, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 67680, +93899, 0, 89, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 67680, +93899, 0, 90, 41, 92748, 65124, 67335, 0, 27624, 23756, 20086, 1237185, 23892, 1440, 407, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 67735, +95050, 0, 90, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 64855, +95050, 0, 91, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 66295, +95050, 0, 92, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 67735, +95050, 0, 93, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 69175, +95050, 0, 94, 43, 95050, 67426, 70183, 0, 27624, 24239, 20086, 1237185, 23892, 1440, 398, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 70615, +97352, 0, 94, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 67735, +97352, 0, 95, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 69175, +97352, 0, 96, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 70615, +97352, 0, 97, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 72055, +97352, 0, 98, 45, 97352, 67426, 73031, 0, 29926, 24949, 20086, 1237185, 23892, 1440, 394, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 73495, +99654, 0, 98, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 70615, +99654, 0, 99, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 72055, +99654, 0, 100, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 73495, +99654, 0, 101, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 74935, +99654, 0, 102, 47, 99654, 69728, 75879, 0, 29926, 25571, 20086, 1237185, 23892, 1440, 389, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 76375, +101956, 0, 102, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 73495, +101956, 0, 103, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 74935, +101956, 0, 104, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 76375, +101956, 0, 105, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 77815, +101956, 0, 106, 49, 101956, 72030, 78727, 0, 29926, 26115, 20086, 1237185, 23892, 1440, 383, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 79255, +104258, 0, 106, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 76375, +104258, 0, 107, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 77815, +104258, 0, 108, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 79255, +104258, 0, 109, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 80695, +104258, 0, 110, 51, 104258, 72030, 81575, 0, 32228, 26879, 20086, 1237185, 23892, 1440, 380, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 82135, +106560, 0, 110, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 79255, +106560, 0, 111, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 80695, +106560, 0, 112, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 82135, +106560, 0, 113, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 83575, +106560, 0, 114, 53, 106560, 74332, 84423, 0, 32228, 27547, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 85015, +108862, 0, 114, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 82135, +108862, 0, 115, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 83575, +108862, 0, 116, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 85015, +108862, 0, 117, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 86455, +108862, 0, 118, 55, 108862, 74332, 87271, 0, 34530, 28419, 20086, 1237185, 23892, 1440, 376, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 87895, +111164, 0, 118, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 85015, +111164, 0, 119, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 86455, +111164, 0, 120, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 87895, +111164, 0, 121, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 89335, +111164, 0, 122, 57, 111164, 76634, 90119, 0, 34530, 29182, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 90775, +113466, 0, 122, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 87895, +113466, 0, 123, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 89335, +113466, 0, 124, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 90775, +113466, 0, 125, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 92215, +113466, 0, 126, 59, 113466, 76634, 92967, 0, 36832, 30138, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 93655, +115768, 0, 126, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 90775, +115768, 0, 127, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 92215, +115768, 0, 128, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 93655, +115768, 0, 129, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 95095, +115768, 0, 130, 61, 115768, 78936, 95815, 0, 36832, 30974, 20086, 1237185, 23892, 1440, 373, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 96535, +118070, 0, 130, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 93655, +118070, 0, 131, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 95095, +118070, 0, 132, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 96535, +118070, 0, 133, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 97975, +118070, 0, 134, 63, 118070, 78936, 98663, 0, 39134, 31994, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 99415, +120372, 0, 134, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 96535, +120372, 0, 135, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 97975, +120372, 0, 136, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 99415, +120372, 0, 137, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 100855, +120372, 0, 138, 65, 120372, 81238, 101511, 0, 39134, 32886, 20086, 1237185, 23892, 1440, 374, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 102295, +122674, 0, 138, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 1, 0, 0, 0, 0, 0, 1237185, 99415, +122674, 0, 139, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 100855, +122674, 0, 140, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 102295, +122674, 0, 141, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 103735, +122674, 0, 142, 69, 122674, 83540, 104359, 0, 39134, 33667, 20086, 1237185, 23892, 1440, 372, 0, 0, 0, 0, 0, 0, 0, 0, 1237185, 105175, +124976, 0, 142, 73, 124976, 85842, 52257, 0, 39134, 34350, 20086, 1237185, 23892, 1440, 947, 2, 0, 1, 0, 0, 0, 1, 52179, 1237185, 99415, +127278, 0, 142, 77, 127278, 88144, 52336, 0, 39134, 34948, 20086, 1237185, 23892, 1440, 962, 4, 0, 1, 0, 0, 0, 1, 52179, 1237185, 93655, +129580, 0, 142, 81, 129580, 90446, 52414, 0, 39134, 35471, 20086, 1237185, 25385, 1440, 975, 6, 0, 1, 0, 0, 0, 1, 52179, 1237185, 87895, +131882, 0, 142, 85, 131882, 92748, 52492, 0, 39134, 35928, 20086, 1237185, 25385, 1440, 986, 8, 0, 1, 0, 0, 0, 1, 52179, 1237185, 82135, +133076, 0, 142, 89, 133076, 93899, 52532, 0, 39177, 36334, 20086, 1236832, 25385, 1440, 996, 10, 0, 1, 0, 0, 0, 1, 52179, 1237185, 77760, +135378, 0, 142, 91, 135378, 95050, 52610, 0, 40328, 36833, 20086, 1236832, 25385, 1440, 1009, 12, 0, 1, 0, 0, 0, 1, 52179, 1237185, 72000, +136529, 0, 142, 94, 136529, 97352, 52649, 0, 39177, 37126, 20086, 1236822, 25385, 1440, 1016, 12, 0, 1, 0, 0, 0, 1, 52179, 1237185, 70560, +138831, 0, 142, 98, 138831, 99654, 52727, 0, 39177, 37382, 20086, 1236822, 25385, 1440, 1021, 14, 0, 1, 0, 0, 0, 1, 52179, 1237185, 64800, +138831, 0, 143, 98, 138831, 99654, 52727, 0, 39177, 37382, 20086, 1236822, 25385, 1440, 1021, 14, 0, 1, 0, 0, 0, 1, 52179, 1237185, 64855, +141133, 0, 143, 102, 141133, 101956, 52805, 0, 39177, 37606, 20086, 1236822, 25385, 1440, 1026, 16, 0, 1, 0, 0, 0, 1, 52179, 1237185, 59095, +143435, 0, 143, 106, 143435, 104258, 52883, 0, 39177, 37802, 20086, 1236822, 25385, 1440, 1030, 18, 0, 1, 0, 0, 0, 1, 52179, 1237185, 53335, +145737, 0, 143, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47575, +145737, 0, 144, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 0, 1, 52179, 1237185, 49015, +145737, 0, 145, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50455, +145737, 0, 146, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51895, +145737, 0, 147, 110, 145737, 106560, 52960, 0, 39177, 37973, 20086, 1236822, 25385, 1440, 1033, 20, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53335, +148039, 0, 147, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47575, +148039, 0, 148, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 0, 1, 52179, 1237185, 49015, +148039, 0, 149, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50455, +148039, 0, 150, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51895, +148039, 0, 151, 114, 148039, 108862, 53038, 0, 39177, 38123, 20086, 1236822, 25385, 1440, 1036, 22, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53335, +150341, 0, 151, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47575, +150341, 0, 152, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 0, 1, 52179, 1237185, 49015, +150341, 0, 153, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50455, +150341, 0, 154, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51895, +150341, 0, 155, 118, 150341, 111164, 53115, 0, 39177, 38254, 20086, 1236822, 25385, 1440, 1038, 24, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53335, +152643, 0, 155, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47575, +152643, 0, 156, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 0, 1, 52179, 1237185, 49015, +152643, 0, 157, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50455, +152643, 0, 158, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51895, +152818, 0, 159, 122, 152643, 113466, 53192, 0, 39177, 38369, 20086, 1236822, 25385, 1440, 1039, 26, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53335, +154945, 0, 159, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47575, +154945, 0, 160, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 0, 1, 52179, 1237185, 49015, +154945, 0, 161, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50455, +155938, 0, 162, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51895, +156977, 0, 163, 126, 154945, 115768, 53269, 0, 39177, 38470, 20086, 1236822, 25385, 1440, 1040, 28, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53335, +157247, 0, 163, 130, 157247, 118070, 53346, 0, 39177, 38558, 20086, 1236822, 25385, 1440, 1041, 30, 0, 0, 0, 0, 0, 1, 52179, 1237185, 47575, +158018, 0, 164, 130, 157247, 118070, 53346, 0, 39177, 38558, 20086, 1236822, 25385, 1440, 1041, 30, 0, 0, 0, 0, 0, 1, 52179, 1237185, 49015, +159059, 0, 165, 130, 157247, 118070, 53346, 0, 39177, 38558, 20086, 1236822, 25385, 1440, 1041, 30, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50455, +159549, 0, 165, 134, 159549, 120372, 53423, 0, 39177, 38635, 20086, 1236822, 25385, 1440, 1042, 32, 0, 0, 0, 0, 0, 1, 52179, 1237185, 44695, +160101, 0, 166, 134, 159549, 120372, 53423, 0, 39177, 38635, 20086, 1236822, 25385, 1440, 1042, 32, 0, 0, 0, 0, 0, 1, 52179, 1237185, 46135, +161142, 0, 167, 134, 159549, 120372, 53423, 0, 39177, 38635, 20086, 1236822, 25385, 1440, 1042, 32, 0, 0, 0, 0, 0, 1, 52179, 1237185, 47575, +161851, 0, 167, 138, 161851, 122674, 53500, 0, 39177, 38702, 20086, 1236822, 25385, 1440, 1042, 34, 0, 0, 0, 0, 0, 1, 52179, 1237185, 41815, +162184, 0, 168, 138, 161851, 122674, 53500, 0, 39177, 38702, 20086, 1236822, 25385, 1440, 1042, 34, 0, 0, 0, 0, 0, 1, 52179, 1237185, 43255, +163045, 0, 168, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 36000, +163176, 0, 169, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 37440, +164168, 0, 170, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 38880, +165160, 0, 171, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 40320, +166153, 0, 172, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 41760, +167145, 0, 173, 142, 163045, 138831, 53539, 0, 24214, 36891, 20086, 764300, 25385, 1440, 993, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 43200, +168082, 0, 173, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 40320, +168087, 0, 174, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 41760, +169029, 0, 175, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 43200, +169971, 0, 176, 144, 168082, 145737, 53616, 0, 22345, 35072, 20086, 618909, 24284, 1440, 942, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 44640, +170384, 0, 176, 146, 170384, 145737, 53692, 0, 24647, 33768, 20086, 691604, 24284, 1440, 906, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 41760, +170876, 0, 177, 146, 170384, 145737, 53692, 0, 24647, 33768, 20086, 691604, 24284, 1440, 906, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 43200, +171782, 0, 178, 146, 170384, 145737, 53692, 0, 24647, 33768, 20086, 691604, 24284, 1440, 906, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 44640, +172686, 0, 178, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 41760, +172686, 0, 179, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 43200, +173529, 0, 180, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 44640, +174403, 0, 181, 148, 172686, 148039, 53769, 0, 24647, 32627, 20086, 691604, 24284, 1440, 874, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 46080, +174988, 0, 181, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 43200, +175257, 0, 182, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 44640, +176110, 0, 183, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 46080, +176964, 0, 184, 150, 174988, 148039, 53845, 0, 26949, 31917, 20086, 764300, 24284, 1440, 854, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 47520, +177290, 0, 184, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 44640, +177800, 0, 185, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 46080, +178636, 0, 186, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 47520, +179471, 0, 187, 152, 177290, 150341, 53921, 0, 26949, 31296, 20086, 764300, 24284, 1440, 836, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +179592, 0, 187, 154, 179592, 150341, 53997, 0, 29251, 31040, 20086, 836996, 24284, 1440, 828, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 46080, +180299, 0, 188, 154, 179592, 150341, 53997, 0, 29251, 31040, 20086, 836996, 24284, 1440, 828, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 47520, +181127, 0, 189, 154, 179592, 150341, 53997, 0, 29251, 31040, 20086, 836996, 24284, 1440, 828, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +181894, 0, 189, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 46080, +181948, 0, 190, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 47520, +182768, 0, 191, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +183589, 0, 192, 156, 181894, 152643, 54073, 0, 29251, 30816, 20086, 836996, 24284, 1440, 821, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +184196, 0, 192, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 47520, +184410, 0, 193, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +185232, 0, 194, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +186053, 0, 195, 158, 184196, 152818, 54149, 0, 31378, 30886, 20086, 905646, 24284, 1440, 822, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +186498, 0, 195, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +186875, 0, 196, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +187698, 0, 197, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +188520, 0, 198, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +189343, 0, 199, 160, 186498, 154945, 54225, 0, 31553, 30969, 20086, 909691, 24284, 1440, 823, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +192670, 0, 199, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47520, +192670, 0, 200, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +192670, 0, 201, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +192670, 0, 202, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +192670, 0, 203, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +193460, 0, 204, 165, 192670, 160101, 54414, 0, 32153, 31117, 20086, 932895, 24284, 1440, 824, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +198425, 0, 204, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47520, +198425, 0, 205, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +198425, 0, 206, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +198425, 0, 207, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +198425, 0, 208, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +198425, 0, 209, 170, 198425, 165160, 54602, 0, 32849, 31333, 20086, 1126964, 24284, 1440, 827, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +204180, 0, 209, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 47520, +204180, 0, 210, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 48960, +204180, 0, 211, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +204180, 0, 212, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +204180, 0, 213, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +204180, 0, 214, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +204180, 0, 215, 175, 204180, 169971, 54790, 0, 33793, 31640, 20086, 1222893, 16759, 1440, 832, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 56160, +209935, 0, 215, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 48960, +209935, 0, 216, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +209935, 0, 217, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +209935, 0, 218, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +209935, 0, 219, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +209935, 0, 220, 180, 209935, 174403, 54977, 0, 35116, 32074, 20086, 1223334, 16759, 1440, 841, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 56160, +215690, 0, 220, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 48960, +215690, 0, 221, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +215690, 0, 222, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +215690, 0, 223, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +215690, 0, 224, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +215690, 0, 225, 185, 215690, 178636, 55164, 0, 36638, 32644, 20086, 1223750, 16759, 1440, 853, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 56160, +221445, 0, 225, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 48960, +221445, 0, 226, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +221445, 0, 227, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +221445, 0, 228, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +221445, 0, 229, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +221445, 0, 230, 190, 221445, 182768, 55350, 0, 38261, 33346, 20086, 1224140, 16759, 1440, 868, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 56160, +227200, 0, 230, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 48960, +227200, 0, 231, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +227200, 0, 232, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +227200, 0, 233, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +227200, 0, 234, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +227200, 0, 235, 195, 227200, 186875, 55535, 0, 39909, 34166, 20086, 1224509, 16759, 1440, 886, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 56160, +232955, 0, 235, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 1, 0, 0, 0, 1, 52179, 1237185, 48960, +232955, 0, 236, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 50400, +232955, 0, 237, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 51840, +232955, 0, 238, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 53280, +232955, 0, 239, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 54720, +232955, 0, 240, 200, 232955, 192670, 55719, 0, 39869, 34878, 20086, 1237185, 16759, 1440, 902, 38, 0, 0, 0, 0, 0, 1, 52179, 1237185, 56160, +238710, 0, 240, 207, 238710, 198425, 28227, 0, 39869, 35501, 20086, 1237185, 16759, 1440, 1812, 40, 0, 1, 0, 0, 0, 1, 27859, 1237185, 46080, +244465, 0, 240, 212, 244465, 204180, 28590, 0, 39869, 36047, 20086, 1237185, 9556, 1440, 1816, 40, 0, 1, 0, 0, 0, 1, 27859, 1237185, 38880, +250220, 0, 240, 218, 250220, 209935, 28948, 0, 39869, 36524, 20086, 1237185, 9556, 1440, 1817, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 30240, +255975, 0, 240, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 23040, +255975, 0, 241, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +255975, 0, 242, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +255975, 0, 243, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +255975, 0, 244, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +255975, 0, 245, 223, 255975, 215690, 29303, 0, 39869, 36942, 20086, 1237185, 9556, 1440, 1816, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +261730, 0, 245, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 23040, +261730, 0, 246, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +261730, 0, 247, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +261730, 0, 248, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +263065, 0, 249, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +264877, 0, 250, 228, 261730, 221445, 29652, 0, 39869, 37307, 20086, 1237185, 9556, 1440, 1812, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +267485, 0, 250, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 23040, +267485, 0, 251, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +268489, 0, 252, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +270295, 0, 253, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +272102, 0, 254, 233, 267485, 227200, 29998, 0, 39869, 37627, 20086, 1235957, 9556, 1440, 1807, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +273240, 0, 254, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +273901, 0, 255, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +275700, 0, 256, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +277499, 0, 257, 238, 273240, 232955, 30340, 0, 39869, 37907, 20086, 1237185, 9556, 1440, 1800, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +278995, 0, 257, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +279286, 0, 258, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +281073, 0, 259, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +282861, 0, 260, 241, 278995, 255975, 30543, 0, 22348, 37907, 20086, 636266, 9556, 1440, 1788, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +284492, 0, 260, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +284628, 0, 261, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +286396, 0, 262, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +288164, 0, 263, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +289932, 0, 264, 246, 284492, 261730, 30878, 0, 22346, 37907, 20086, 636266, 9618, 1440, 1768, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +290247, 0, 264, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 17280, +291681, 0, 265, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +293430, 0, 266, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +295179, 0, 267, 251, 290247, 268489, 31210, 0, 21342, 37907, 20086, 620794, 9618, 1440, 1749, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +296510, 0, 267, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 17280, +296824, 0, 268, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +298470, 0, 269, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +300116, 0, 270, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +301761, 0, 271, 254, 296510, 273901, 31408, 0, 21201, 35894, 20086, 556440, 9618, 1440, 1646, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +301915, 0, 271, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +303397, 0, 272, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +305032, 0, 273, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +306668, 0, 274, 257, 301915, 279286, 31603, 0, 21197, 35894, 20086, 977392, 9618, 1440, 1636, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +307288, 0, 274, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +308293, 0, 275, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +309919, 0, 276, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +311544, 0, 277, 260, 307288, 284628, 31798, 0, 21196, 35894, 20086, 870643, 9618, 1440, 1626, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +312611, 0, 277, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +313160, 0, 278, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +314776, 0, 279, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +316391, 0, 280, 263, 312611, 289932, 31991, 0, 21199, 35894, 20086, 858378, 9618, 1440, 1616, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +317896, 0, 280, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +317997, 0, 281, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +319603, 0, 282, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +321209, 0, 283, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +322815, 0, 284, 266, 317896, 295179, 32184, 0, 21197, 35894, 20086, 772541, 9618, 1440, 1606, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +323039, 0, 284, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +324327, 0, 285, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +325839, 0, 286, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +327351, 0, 287, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +328863, 0, 288, 270, 323039, 301761, 32439, 0, 21198, 34056, 20086, 817803, 9987, 1440, 1512, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +329612, 0, 288, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +330363, 0, 289, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +331863, 0, 290, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +333363, 0, 291, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +334863, 0, 292, 274, 329612, 308293, 32691, 0, 21199, 34056, 20086, 842425, 9987, 1440, 1501, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +336134, 0, 292, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 18720, +336352, 0, 293, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +337840, 0, 294, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +339329, 0, 295, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +340818, 0, 296, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +342307, 0, 297, 278, 336134, 314776, 32942, 0, 21198, 34056, 20086, 859764, 9987, 1440, 1489, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +342606, 0, 297, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +343784, 0, 298, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +345262, 0, 299, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +346739, 0, 300, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +348217, 0, 301, 282, 342606, 321209, 33191, 0, 21197, 34056, 20086, 875297, 9987, 1440, 1478, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +349030, 0, 301, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +349614, 0, 302, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +351011, 0, 303, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +352409, 0, 304, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +353806, 0, 305, 286, 349030, 327351, 33438, 0, 21199, 32448, 20086, 876611, 9987, 1440, 1398, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +355078, 0, 305, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 20160, +355193, 0, 306, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +356580, 0, 307, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +357968, 0, 308, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +359355, 0, 309, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +360742, 0, 310, 290, 355078, 333363, 33684, 0, 21195, 32448, 20086, 894683, 9987, 1440, 1388, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +361078, 0, 310, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +362119, 0, 311, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +363496, 0, 312, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +364874, 0, 313, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +366251, 0, 314, 294, 361078, 339329, 33927, 0, 21197, 32448, 20086, 913406, 8675, 1440, 1378, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +367033, 0, 314, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +367618, 0, 315, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +368986, 0, 316, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +370353, 0, 317, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +371721, 0, 318, 298, 367033, 345262, 34169, 0, 21195, 32448, 20086, 932738, 8675, 1440, 1368, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +372954, 0, 318, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 21600, +373020, 0, 319, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +374319, 0, 320, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +375618, 0, 321, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +376917, 0, 322, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +378216, 0, 323, 302, 372954, 351011, 34409, 0, 21199, 31041, 20086, 952349, 8675, 1440, 1300, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +378624, 0, 323, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +379506, 0, 324, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +380796, 0, 325, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +382086, 0, 326, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +383376, 0, 327, 306, 378624, 356580, 34647, 0, 21196, 31041, 20086, 967637, 8675, 1440, 1291, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +384183, 0, 327, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +384658, 0, 328, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +385939, 0, 329, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +387221, 0, 330, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +388502, 0, 331, 310, 384183, 362119, 34884, 0, 21200, 31041, 20086, 986106, 8675, 1440, 1282, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +389711, 0, 331, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 23040, +389775, 0, 332, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +391048, 0, 333, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +392320, 0, 334, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +393593, 0, 335, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +394866, 0, 336, 314, 389711, 367618, 35119, 0, 21197, 31041, 20086, 1004674, 8675, 1440, 1273, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +395201, 0, 336, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +396080, 0, 337, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +397294, 0, 338, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +398509, 0, 339, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +399723, 0, 340, 318, 395201, 373020, 35353, 0, 21197, 29810, 20086, 1024138, 9670, 1440, 1215, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +400534, 0, 340, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +400929, 0, 341, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +402135, 0, 342, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +403342, 0, 343, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +404548, 0, 344, 322, 400534, 378216, 35585, 0, 21198, 29810, 20086, 1032632, 9670, 1440, 1207, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +405721, 0, 344, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +405747, 0, 345, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +406945, 0, 346, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +408144, 0, 347, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +409342, 0, 348, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +410541, 0, 349, 326, 405721, 383376, 35815, 0, 21201, 29810, 20086, 1051038, 9670, 1440, 1199, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +410873, 0, 349, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +411732, 0, 350, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +412923, 0, 351, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +414114, 0, 352, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +415305, 0, 353, 330, 410873, 388502, 36044, 0, 21195, 29810, 20086, 1067066, 9670, 1440, 1191, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +415990, 0, 353, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +416488, 0, 354, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +417671, 0, 355, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +418855, 0, 356, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +420038, 0, 357, 334, 415990, 393593, 36272, 0, 21197, 29810, 20086, 1083755, 9670, 1440, 1184, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +421081, 0, 357, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 24480, +421170, 0, 358, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +422302, 0, 359, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +423434, 0, 360, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +424566, 0, 361, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +425698, 0, 362, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +426830, 0, 363, 339, 421081, 399723, 36555, 0, 21198, 28733, 20086, 1119874, 9670, 1440, 1132, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +427144, 0, 363, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +427953, 0, 364, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +429076, 0, 365, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +430199, 0, 366, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +431323, 0, 367, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +432446, 0, 368, 344, 427144, 405747, 36835, 0, 21197, 28733, 20086, 1145769, 10330, 1440, 1124, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +433160, 0, 368, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 25920, +433561, 0, 369, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +434676, 0, 370, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +435790, 0, 371, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +436905, 0, 372, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +438020, 0, 373, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +439135, 0, 374, 349, 433160, 411732, 37113, 0, 21196, 28733, 20086, 1164700, 10330, 1440, 1115, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +439138, 0, 374, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +440242, 0, 375, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +441348, 0, 376, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +442455, 0, 377, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +443561, 0, 378, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +444668, 0, 379, 354, 439138, 417671, 37390, 0, 21195, 28733, 20086, 1182822, 10330, 1440, 1107, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +445070, 0, 379, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +445731, 0, 380, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +446793, 0, 381, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +447856, 0, 382, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +448918, 0, 383, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +449981, 0, 384, 359, 445070, 423434, 37664, 0, 21252, 27792, 20086, 1187210, 10330, 1440, 1063, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +450857, 0, 384, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 27360, +451036, 0, 385, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +452091, 0, 386, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +453146, 0, 387, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +454201, 0, 388, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +455256, 0, 389, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +456311, 0, 390, 364, 450857, 429076, 37936, 0, 21365, 27792, 20086, 1201028, 10330, 1440, 1055, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +456612, 0, 390, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +457358, 0, 391, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +458405, 0, 392, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +459453, 0, 393, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +460500, 0, 394, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +461548, 0, 395, 369, 456612, 434676, 38206, 0, 21520, 27792, 20086, 1214395, 9332, 1440, 1048, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +462367, 0, 395, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 28800, +462588, 0, 396, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +463628, 0, 397, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +464668, 0, 398, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +465709, 0, 399, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +466749, 0, 400, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +467789, 0, 401, 374, 462367, 440242, 38475, 0, 21709, 27792, 20086, 1226053, 9332, 1440, 1041, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +468122, 0, 401, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 30240, +468793, 0, 402, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +469798, 0, 403, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +470802, 0, 404, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +471807, 0, 405, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +472811, 0, 406, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +473816, 0, 407, 379, 468122, 445731, 38741, 0, 21975, 27023, 20086, 1235467, 9332, 1440, 1005, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +473877, 0, 407, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +474813, 0, 408, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +475811, 0, 409, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +476808, 0, 410, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +477806, 0, 411, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +478804, 0, 412, 384, 473877, 451036, 39006, 0, 22425, 27023, 20086, 1237185, 9332, 1440, 998, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +479632, 0, 412, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 31680, +479795, 0, 413, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +480786, 0, 414, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +481777, 0, 415, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +482767, 0, 416, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +483758, 0, 417, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +484749, 0, 418, 389, 479632, 456311, 39269, 0, 22905, 27023, 20086, 1237185, 9332, 1440, 991, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40320, +485387, 0, 418, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 33120, +485734, 0, 419, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +486718, 0, 420, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +487703, 0, 421, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +488687, 0, 422, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +489671, 0, 423, 394, 485387, 461548, 39530, 0, 23423, 27023, 20086, 1237185, 9556, 1440, 985, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40320, +491142, 0, 423, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 33120, +491142, 0, 424, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +491627, 0, 425, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +492605, 0, 426, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +493583, 0, 427, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +494561, 0, 428, 399, 491142, 466749, 39789, 0, 23977, 27023, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40320, +496897, 0, 428, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 33120, +496897, 0, 429, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +496897, 0, 430, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +497429, 0, 431, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +498384, 0, 432, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +499340, 0, 433, 404, 496897, 471807, 40047, 0, 24674, 26580, 20086, 1237185, 9556, 1440, 956, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40320, +502652, 0, 433, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 33120, +502652, 0, 434, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +502652, 0, 435, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +502652, 0, 436, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +503118, 0, 437, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +504063, 0, 438, 409, 502652, 476808, 40303, 0, 25428, 26436, 20086, 1237185, 9556, 1440, 945, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40320, +508407, 0, 438, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 33120, +508407, 0, 439, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 34560, +508407, 0, 440, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +508407, 0, 441, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +508407, 0, 442, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +508751, 0, 443, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40320, +509689, 0, 444, 414, 508407, 481777, 40557, 0, 26214, 26408, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 41760, +514162, 0, 444, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 34560, +514162, 0, 445, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36000, +514162, 0, 446, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37440, +514162, 0, 447, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38880, +514162, 0, 448, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40320, +514361, 0, 449, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 41760, +516047, 0, 449, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 41760, +516047, 0, 450, 419, 514162, 486718, 40810, 0, 27028, 26485, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 41815, +519917, 0, 450, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 34615, +519917, 0, 451, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36055, +519917, 0, 452, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37495, +519917, 0, 453, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38935, +519917, 0, 454, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40375, +519917, 0, 455, 424, 519917, 491627, 41061, 0, 27874, 26658, 20086, 1237185, 9556, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 41815, +525672, 0, 455, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 34615, +525672, 0, 456, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36055, +525672, 0, 457, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37495, +525672, 0, 458, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38935, +525672, 0, 459, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40375, +525672, 0, 460, 429, 525672, 496897, 41311, 0, 28359, 26870, 20086, 1237185, 9556, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 41815, +531427, 0, 460, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 34615, +531427, 0, 461, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36055, +531427, 0, 462, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37495, +531427, 0, 463, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38935, +531427, 0, 464, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40375, +531427, 0, 465, 434, 531427, 502652, 41559, 0, 28359, 27056, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 41815, +537182, 0, 465, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 34615, +537182, 0, 466, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36055, +537182, 0, 467, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37495, +537182, 0, 468, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38935, +537182, 0, 469, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40375, +537182, 0, 470, 439, 537182, 508407, 41806, 0, 28359, 27218, 20086, 1237185, 9556, 1440, 938, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 41815, +542937, 0, 470, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 1, 0, 0, 0, 1, 27859, 1237185, 34615, +542937, 0, 471, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 36055, +542937, 0, 472, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 37495, +542937, 0, 473, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 38935, +542937, 0, 474, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 40375, +542937, 0, 475, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 41815, +542937, 0, 476, 444, 542937, 514162, 42051, 0, 28359, 27360, 20086, 1237185, 11468, 1440, 937, 41, 0, 0, 0, 0, 0, 1, 27859, 1237185, 43255, +548692, 0, 476, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 36000, +548692, 0, 477, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 37440, +548692, 0, 478, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +548692, 0, 479, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +548692, 0, 480, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +548692, 0, 481, 450, 548692, 519917, 42296, 0, 28407, 27490, 20086, 1238540, 11468, 1440, 936, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +554490, 0, 481, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 36000, +554490, 0, 482, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 37440, +554490, 0, 483, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +554490, 0, 484, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +554490, 0, 485, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +554490, 0, 486, 455, 554490, 525672, 42539, 0, 28402, 27604, 20086, 1236692, 11468, 1440, 935, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +560245, 0, 486, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 36000, +560245, 0, 487, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 37440, +560245, 0, 488, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +560245, 0, 489, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +560245, 0, 490, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +560245, 0, 491, 460, 560245, 531427, 42780, 0, 28402, 27703, 20086, 1236692, 11468, 1440, 933, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +566000, 0, 491, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 36000, +566000, 0, 492, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 37440, +566000, 0, 493, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +566000, 0, 494, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +566000, 0, 495, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +566000, 0, 496, 465, 566000, 537182, 43019, 0, 28402, 27790, 20086, 1236692, 11468, 1440, 931, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +571755, 0, 496, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 36000, +571755, 0, 497, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 37440, +571755, 0, 498, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +571755, 0, 499, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +571755, 0, 500, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +571755, 0, 501, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +571755, 0, 502, 470, 571755, 542937, 43258, 0, 28402, 27866, 20086, 1236692, 9542, 1440, 928, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +577510, 0, 502, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 37440, +577510, 0, 503, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +577510, 0, 504, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +577510, 0, 505, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +577510, 0, 506, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +577510, 0, 507, 475, 577510, 542937, 43495, 0, 34157, 28652, 20086, 1236774, 9542, 1440, 949, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +583265, 0, 507, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 37440, +583265, 0, 508, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +583265, 0, 509, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +583265, 0, 510, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +583265, 0, 511, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +583265, 0, 512, 480, 583265, 548692, 43730, 0, 34157, 29340, 20086, 1235646, 9542, 1440, 967, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +589020, 0, 512, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 37440, +589020, 0, 513, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +589020, 0, 514, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +589020, 0, 515, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +589020, 0, 516, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +589020, 0, 517, 485, 589020, 554490, 43965, 0, 34114, 29936, 20086, 1237185, 9542, 1440, 981, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +594775, 0, 517, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 37440, +594775, 0, 518, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +594775, 0, 519, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +594775, 0, 520, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +594775, 0, 521, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +594775, 0, 522, 490, 594775, 560245, 44198, 0, 34114, 30458, 20086, 1237185, 9542, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +600530, 0, 522, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 37440, +600530, 0, 523, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +600530, 0, 524, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +600530, 0, 525, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +600530, 0, 526, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +600530, 0, 527, 495, 600530, 566000, 44430, 0, 34114, 30915, 20086, 1237185, 9542, 1440, 1002, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +606285, 0, 527, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 37440, +606285, 0, 528, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 38880, +606285, 0, 529, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +606285, 0, 530, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +606285, 0, 531, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +606285, 0, 532, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +606285, 0, 533, 500, 606285, 571755, 44661, 0, 34114, 31314, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +612040, 0, 533, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 38880, +612040, 0, 534, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +612040, 0, 535, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +612040, 0, 536, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +612040, 0, 537, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +612040, 0, 538, 505, 612040, 577510, 44890, 0, 34114, 31664, 20086, 1235646, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +617795, 0, 538, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 38880, +617795, 0, 539, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +617795, 0, 540, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +617795, 0, 541, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +617795, 0, 542, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +617795, 0, 543, 510, 617795, 583265, 45119, 0, 34114, 31970, 20086, 1235646, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +623550, 0, 543, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 38880, +623550, 0, 544, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +623550, 0, 545, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +623550, 0, 546, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +623550, 0, 547, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +623550, 0, 548, 515, 623550, 589020, 45346, 0, 34114, 32238, 20086, 1237185, 9556, 1440, 1024, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +629305, 0, 548, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 38880, +629305, 0, 549, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +629305, 0, 550, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +629305, 0, 551, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +629305, 0, 552, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +629305, 0, 553, 520, 629305, 594775, 45572, 0, 34114, 32472, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +635060, 0, 553, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 38880, +635060, 0, 554, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +635060, 0, 555, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +635060, 0, 556, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +635060, 0, 557, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +635060, 0, 558, 525, 635060, 600530, 45797, 0, 34114, 32677, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +640815, 0, 558, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 38880, +640815, 0, 559, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +640815, 0, 560, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +640815, 0, 561, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +640815, 0, 562, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +640815, 0, 563, 530, 640815, 606285, 46021, 0, 34114, 32856, 20086, 1237185, 9556, 1440, 1029, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +646570, 0, 563, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 38880, +646570, 0, 564, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 40320, +646570, 0, 565, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +646570, 0, 566, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +646570, 0, 567, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +646570, 0, 568, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +646570, 0, 569, 535, 646570, 612040, 46244, 0, 34114, 33013, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +652325, 0, 569, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 40320, +652325, 0, 570, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +652325, 0, 571, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +652325, 0, 572, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +652325, 0, 573, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +652325, 0, 574, 540, 652325, 617795, 46465, 0, 34114, 33150, 20086, 1237185, 9556, 1440, 1028, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +658080, 0, 574, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 40320, +658080, 0, 575, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +658080, 0, 576, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +658080, 0, 577, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +658080, 0, 578, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +658080, 0, 579, 545, 658080, 623550, 46686, 0, 34114, 33270, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +663835, 0, 579, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 40320, +663835, 0, 580, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +663835, 0, 581, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +663835, 0, 582, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +663835, 0, 583, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +663835, 0, 584, 550, 663835, 629305, 46906, 0, 34114, 33375, 20086, 1237185, 9556, 1440, 1025, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +669590, 0, 584, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 40320, +669590, 0, 585, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +669590, 0, 586, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +669590, 0, 587, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +669590, 0, 588, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +669590, 0, 589, 555, 669590, 635060, 47124, 0, 34114, 33467, 20086, 1237185, 9556, 1440, 1023, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +675345, 0, 589, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 40320, +675345, 0, 590, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +675345, 0, 591, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +675345, 0, 592, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +675345, 0, 593, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +675345, 0, 594, 560, 675345, 640815, 47342, 0, 34114, 33547, 20086, 1237185, 9556, 1440, 1021, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +681100, 0, 594, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 40320, +681100, 0, 595, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 41760, +681100, 0, 596, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +681100, 0, 597, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +681100, 0, 598, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +681100, 0, 599, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +681100, 0, 600, 565, 681100, 646570, 47558, 0, 34114, 33617, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +686855, 0, 600, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 41760, +686855, 0, 601, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +686855, 0, 602, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +686855, 0, 603, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +686855, 0, 604, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +686855, 0, 605, 570, 686855, 652325, 47774, 0, 34114, 33679, 20086, 1237185, 9556, 1440, 1016, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +692610, 0, 605, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 41760, +692610, 0, 606, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +692610, 0, 607, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +692610, 0, 608, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +692610, 0, 609, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +692610, 0, 610, 575, 692610, 658080, 47989, 0, 34114, 33733, 20086, 1237185, 9556, 1440, 1013, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +698365, 0, 610, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 41760, +698365, 0, 611, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +698365, 0, 612, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +698365, 0, 613, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +698365, 0, 614, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +698365, 0, 615, 580, 698365, 663835, 48202, 0, 34114, 33780, 20086, 1237185, 9556, 1440, 1010, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +704120, 0, 615, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 41760, +704120, 0, 616, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +704120, 0, 617, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +704120, 0, 618, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +704120, 0, 619, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +704120, 0, 620, 585, 704120, 669590, 48415, 0, 34114, 33821, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +709875, 0, 620, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 41760, +709875, 0, 621, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +709875, 0, 622, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +709875, 0, 623, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +709875, 0, 624, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +709875, 0, 625, 590, 709875, 675345, 48627, 0, 34114, 33857, 20086, 1237185, 9556, 1440, 1003, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +715630, 0, 625, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 41760, +715630, 0, 626, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +715630, 0, 627, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +715630, 0, 628, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +715630, 0, 629, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +715630, 0, 630, 595, 715630, 681100, 48838, 0, 34114, 33889, 20086, 1237185, 9556, 1440, 1000, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +721385, 0, 630, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 41760, +721385, 0, 631, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 43200, +721385, 0, 632, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +721385, 0, 633, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +721385, 0, 634, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +721385, 0, 635, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +721385, 0, 636, 600, 721385, 686855, 49047, 0, 34114, 33917, 20086, 1237185, 9556, 1440, 996, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +727140, 0, 636, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 43200, +727140, 0, 637, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +727140, 0, 638, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +727140, 0, 639, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +727140, 0, 640, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +727140, 0, 641, 605, 727140, 692610, 49256, 0, 34114, 33941, 20086, 1237185, 9556, 1440, 993, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +732895, 0, 641, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 43200, +732895, 0, 642, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +732895, 0, 643, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +732895, 0, 644, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +732895, 0, 645, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +732895, 0, 646, 610, 732895, 698365, 49465, 0, 34114, 33962, 20086, 1237185, 9556, 1440, 989, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +738650, 0, 646, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 43200, +738650, 0, 647, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +738650, 0, 648, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +738650, 0, 649, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +738650, 0, 650, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +738650, 0, 651, 615, 738650, 704120, 49672, 0, 34114, 33981, 20086, 1237185, 9556, 1440, 986, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +744405, 0, 651, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 43200, +744405, 0, 652, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +744405, 0, 653, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +744405, 0, 654, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +744405, 0, 655, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +744405, 0, 656, 620, 744405, 709875, 49878, 0, 34114, 33997, 20086, 1237185, 9556, 1440, 982, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +750160, 0, 656, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 43200, +750160, 0, 657, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +750160, 0, 658, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +750160, 0, 659, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +750160, 0, 660, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +750160, 0, 661, 625, 750160, 715630, 50084, 0, 34114, 34011, 20086, 1237185, 9556, 1440, 978, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +755915, 0, 661, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 43200, +755915, 0, 662, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +755915, 0, 663, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +755915, 0, 664, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +755915, 0, 665, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +755915, 0, 666, 630, 755915, 721385, 50289, 0, 34114, 34023, 20086, 1237185, 9556, 1440, 975, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +761670, 0, 666, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 43200, +761670, 0, 667, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 44640, +761670, 0, 668, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +761670, 0, 669, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +761670, 0, 670, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +761670, 0, 671, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +761670, 0, 672, 635, 761670, 721385, 50492, 0, 39869, 34753, 20086, 1237185, 9556, 1440, 992, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +767425, 0, 672, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 44640, +767425, 0, 673, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +767425, 0, 674, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +767425, 0, 675, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +767425, 0, 676, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +767425, 0, 677, 640, 767425, 727140, 50696, 0, 39869, 35392, 20086, 1237185, 9556, 1440, 1006, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +773180, 0, 677, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 44640, +773180, 0, 678, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +773180, 0, 679, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +773180, 0, 680, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +773180, 0, 681, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +773180, 0, 682, 645, 773180, 732895, 50898, 0, 39869, 35951, 20086, 1237185, 9556, 1440, 1018, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +778935, 0, 682, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 44640, +778935, 0, 683, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +778935, 0, 684, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +778935, 0, 685, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +778935, 0, 686, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +778935, 0, 687, 650, 778935, 738650, 51099, 0, 39869, 36440, 20086, 1237185, 9556, 1440, 1027, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +784690, 0, 687, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 44640, +784690, 0, 688, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +784690, 0, 689, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +784690, 0, 690, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +784690, 0, 691, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +784690, 0, 692, 655, 784690, 744405, 51300, 0, 39869, 36868, 20086, 1237185, 9556, 1440, 1035, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +790445, 0, 692, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 44640, +790445, 0, 693, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +790445, 0, 694, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +790445, 0, 695, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +790445, 0, 696, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +790445, 0, 697, 660, 790445, 750160, 51500, 0, 39869, 37243, 20086, 1237185, 9556, 1440, 1042, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +796200, 0, 697, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 44640, +796200, 0, 698, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +796200, 0, 699, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +796200, 0, 700, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +796200, 0, 701, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +796200, 0, 702, 665, 796200, 755915, 51699, 0, 39869, 37571, 20086, 1237185, 9556, 1440, 1047, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +801955, 0, 702, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 44640, +801955, 0, 703, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 46080, +801955, 0, 704, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +801955, 0, 705, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +801955, 0, 706, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +801955, 0, 707, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +801955, 0, 708, 670, 801955, 761670, 51897, 0, 39869, 37858, 20086, 1237185, 9556, 1440, 1051, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +807710, 0, 708, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 46080, +807710, 0, 709, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +807710, 0, 710, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +807710, 0, 711, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +807710, 0, 712, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +807710, 0, 713, 675, 807710, 767425, 52095, 0, 39869, 38109, 20086, 1237185, 9556, 1440, 1054, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +813465, 0, 713, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 46080, +813465, 0, 714, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +813465, 0, 715, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +813465, 0, 716, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +813465, 0, 717, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +813465, 0, 718, 680, 813465, 773180, 52291, 0, 39869, 38329, 20086, 1237185, 9556, 1440, 1056, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +819220, 0, 718, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 46080, +819220, 0, 719, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +819220, 0, 720, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +819220, 0, 721, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +819220, 0, 722, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +819220, 0, 723, 685, 819220, 778935, 52488, 0, 39869, 38521, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +824975, 0, 723, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 46080, +824975, 0, 724, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +824975, 0, 725, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +824975, 0, 726, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +824975, 0, 727, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +824975, 0, 728, 690, 824975, 784690, 52683, 0, 39869, 38689, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +830730, 0, 728, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 46080, +830730, 0, 729, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +830730, 0, 730, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +830730, 0, 731, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +830730, 0, 732, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +830730, 0, 733, 695, 830730, 790445, 52877, 0, 39869, 38836, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +836485, 0, 733, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 46080, +836485, 0, 734, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +836485, 0, 735, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +836485, 0, 736, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +836485, 0, 737, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +836485, 0, 738, 700, 836485, 796200, 53071, 0, 39869, 38965, 20086, 1237185, 9556, 1440, 1058, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +842240, 0, 738, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 1, 0, 0, 0, 1, 27859, 1243961, 46080, +842240, 0, 739, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 47520, +842240, 0, 740, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 48960, +842240, 0, 741, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 50400, +842240, 0, 742, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 51840, +842240, 0, 743, 705, 842240, 801955, 53265, 0, 39869, 39078, 20086, 1237185, 9556, 1440, 1057, 41, 0, 0, 0, 0, 0, 1, 27859, 1243961, 53280, +847995, 0, 743, 711, 847995, 807710, 27016, 0, 39869, 39176, 20086, 1237185, 9556, 1440, 2089, 42, 0, 1, 0, 0, 0, 1, 26632, 1243961, 44640, +853750, 0, 743, 716, 853750, 813465, 27396, 0, 39869, 39262, 20086, 1237185, 9556, 1440, 2064, 42, 0, 1, 0, 0, 0, 1, 26632, 1243961, 37440, +859505, 0, 743, 721, 859505, 819220, 27770, 0, 39869, 39337, 20086, 1237185, 9556, 1440, 2040, 42, 0, 1, 0, 0, 0, 1, 26632, 1243961, 30240, +865260, 0, 743, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 1, 0, 0, 0, 1, 26632, 1243961, 23040, +865260, 0, 744, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 24480, +865260, 0, 745, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 25920, +865260, 0, 746, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 27360, +865260, 0, 747, 726, 865260, 824975, 28139, 0, 39869, 39403, 20086, 1237185, 9556, 1440, 2017, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 28800, +871015, 0, 747, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 1, 0, 0, 0, 1, 26632, 1243961, 21600, +871015, 0, 748, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 23040, +871015, 0, 749, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 24480, +871015, 0, 750, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 25920, +871451, 0, 751, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 27360, +873444, 0, 752, 731, 871015, 830730, 28504, 0, 39869, 39461, 20086, 1237185, 9556, 1440, 1994, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 28800, +876770, 0, 752, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 1, 0, 0, 0, 1, 26632, 1243961, 21600, +876770, 0, 753, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 23040, +877387, 0, 754, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 24480, +879358, 0, 755, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 25920, +881329, 0, 756, 736, 876770, 836485, 28863, 0, 39869, 39512, 20086, 1237185, 9556, 1440, 1972, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 27360, +882525, 0, 756, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 20160, +883279, 0, 757, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 21600, +885228, 0, 758, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 23040, +887178, 0, 759, 741, 882525, 842240, 29219, 0, 39869, 39556, 20086, 1237185, 9556, 1440, 1950, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 24480, +888280, 0, 759, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 20160, +889113, 0, 760, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 21600, +891049, 0, 761, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 23040, +892984, 0, 762, 744, 888280, 865260, 29429, 0, 22348, 39556, 20086, 636266, 9556, 1440, 1936, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 23767, +893777, 0, 762, 748, 893777, 871015, 29708, 0, 22346, 39556, 20086, 600918, 9556, 1440, 1918, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 18007, +899532, 0, 762, 753, 899532, 877387, 29708, 0, 21729, 39556, 20086, 591853, 9556, 1440, 1918, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 10807, +905573, 0, 762, 756, 905573, 883279, 29708, 0, 21198, 37349, 20086, 520480, 9550, 1440, 1811, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 6487, +911443, 0, 762, 759, 911443, 889113, 29708, 0, 21194, 37349, 20086, 895484, 9550, 1440, 1811, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 2167, +917264, 0, 762, 761, 917264, 892984, 29708, 0, 20624, 37349, 20086, 810619, 9550, 1440, 1811, 42, 0, 0, 0, 0, 0, 1, 26632, 1243961, 0, diff --git a/picoquictest/perf_trace_client_ref.txt b/picoquictest/perf_trace_client_ref.txt index d96d34f34..458a12de4 100644 --- a/picoquictest/perf_trace_client_ref.txt +++ b/picoquictest/perf_trace_client_ref.txt @@ -1,2 +1,2 @@ Log_v, PQ_v, Duration, Sent, Received, Mpbs_S, Mbps_R, QUIC_v, ALPN, CNX_ID, T64, is_client, pkt_recv, trains_s, t_short, tb_cwin, tb_pacing, tb_others, pkt_sent, retrans., spurious, delayed_ack_option, min_ack_delay_remote, max_ack_delay_remote, max_ack_gap_remote, min_ack_delay_local, max_ack_delay_local, max_ack_gap_local, max_mtu_sent, max_mtu_received, zero_rtt, srtt, minrtt, cwin, ccalgo, bwe_max, p_quantum, p_rate -1, $V, 1.439876, 2056, 8000000, 0.011423, 44.448272, 0x50435130, picoquic-test, 0x9e8f088a8ce00000, 0, 1, 5769, 338, 336, 0, 0, 2, 339, 0, 0, 1, 1000, 10000, 64, 10000, 25000, 3, 1440, 1440, 0, 74336, 70008, 31464, 1, 61772, 32768, 529084 +1, $V, 1.443056, 2056, 8000000, 0.011398, 44.350323, 0x50435130, picoquic-test, 0x9e8f088a8ce00000, 0, 1, 5783, 343, 341, 0, 0, 2, 344, 0, 0, 1, 1000, 10000, 64, 10000, 25000, 3, 1440, 1440, 0, 73657, 70008, 32470, 1, 60540, 32768, 551033 diff --git a/picoquictest/perf_trace_server_ref.txt b/picoquictest/perf_trace_server_ref.txt index bbbb5dfeb..5bd0639fe 100644 --- a/picoquictest/perf_trace_server_ref.txt +++ b/picoquictest/perf_trace_server_ref.txt @@ -1,2 +1,2 @@ Log_v, PQ_v, Duration, Sent, Received, Mpbs_S, Mbps_R, QUIC_v, ALPN, CNX_ID, T64, is_client, pkt_recv, trains_s, t_short, tb_cwin, tb_pacing, tb_others, pkt_sent, retrans., spurious, delayed_ack_option, min_ack_delay_remote, max_ack_delay_remote, max_ack_gap_remote, min_ack_delay_local, max_ack_delay_local, max_ack_gap_local, max_mtu_sent, max_mtu_received, zero_rtt, srtt, minrtt, cwin, ccalgo, bwe_max, p_quantum, p_rate -1, $V, 1.404781, 8000000, 2056, 45.558703, 0.011709, 0x50435130, picoquic-test, 0x9e8f088a8ce00000, 35095, 0, 340, 5719, 40, 84, 5594, 1, 6318, 550, 0, 1, 1000, 10000, 3, 10000, 25000, 64, 1440, 1440, 0, 70108, 70008, 1920323, 5, 12789581, 35826, 35826010 +1, $V, 1.407961, 8000000, 2056, 45.455805, 0.011682, 0x50435130, picoquic-test, 0x9e8f088a8ce00000, 35095, 0, 345, 5750, 40, 84, 5625, 1, 6373, 591, 0, 1, 1000, 10000, 3, 10000, 25000, 64, 1440, 1440, 0, 70109, 70008, 1914833, 5, 12782582, 35826, 35826010 diff --git a/picoquictest/picoquictest.h b/picoquictest/picoquictest.h index 1e0fe0a99..bb2a5061a 100644 --- a/picoquictest/picoquictest.h +++ b/picoquictest/picoquictest.h @@ -385,6 +385,7 @@ int mediatest_video_test(); int mediatest_video_audio_test(); int mediatest_video_data_audio_test(); int mediatest_video2_down_test(); +int mediatest_wifi_test(); int mediatest_worst_test(); int warptest_video_test(); int warptest_video_audio_test(); diff --git a/picoquictest/qlog_trace_ecn_ref.txt b/picoquictest/qlog_trace_ecn_ref.txt index e3804b751..1c20db1aa 100644 --- a/picoquictest/qlog_trace_ecn_ref.txt +++ b/picoquictest/qlog_trace_ecn_ref.txt @@ -89,7 +89,7 @@ "frame_type": "new_connection_id", "sequence_number": 5, "retire_before": 0, "connection_id": "0703040506070809", "reset_token": "cbf38915760d994ae0bdda3fd5000b90"}, { "frame_type": "new_connection_id", "sequence_number": 6, "retire_before": 0, "connection_id": "0803040506070809", "reset_token": "067b59f6cd452cc9b3d45e1349c3d427"}, { "frame_type": "new_connection_id", "sequence_number": 7, "retire_before": 0, "connection_id": "0903040506070809", "reset_token": "cdb10de67904bc850f26f43cede090d0"}]}], -[21662, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21120,"latest_rtt": 21662}], +[21662, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21120,"latest_rtt": 21662,"app_limited": 1}], [21662, "transport", "spin_bit_updated", { "state": true }], [21662, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 39, "packet_number": 3, "dcid": "0203040506070809" }, "frames": [{ "frame_type": "handshake_done"}, { diff --git a/picoquictest/qlog_trace_ref.txt b/picoquictest/qlog_trace_ref.txt index 9678e60a7..0415e64cd 100644 --- a/picoquictest/qlog_trace_ref.txt +++ b/picoquictest/qlog_trace_ref.txt @@ -89,7 +89,7 @@ "frame_type": "new_connection_id", "sequence_number": 5, "retire_before": 0, "connection_id": "0703040506070809", "reset_token": "cbf38915760d994ae0bdda3fd5000b90"}, { "frame_type": "new_connection_id", "sequence_number": 6, "retire_before": 0, "connection_id": "0803040506070809", "reset_token": "067b59f6cd452cc9b3d45e1349c3d427"}, { "frame_type": "new_connection_id", "sequence_number": 7, "retire_before": 0, "connection_id": "0903040506070809", "reset_token": "cdb10de67904bc850f26f43cede090d0"}]}], -[21656, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21117,"latest_rtt": 21656}], +[21656, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21117,"latest_rtt": 21656,"app_limited": 1}], [21656, "transport", "spin_bit_updated", { "state": true }], [21656, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 39, "packet_number": 3, "dcid": "0203040506070809" }, "frames": [{ "frame_type": "handshake_done"}, { diff --git a/picoquictest/satellite_test.c b/picoquictest/satellite_test.c index dac929381..927588b3a 100644 --- a/picoquictest/satellite_test.c +++ b/picoquictest/satellite_test.c @@ -212,11 +212,7 @@ int satellite_basic_test() int satellite_seeded_test() { /* Simulate remembering RTT and BW from previous connection */ -#if 1 return satellite_test_one(picoquic_bbr_algorithm, 100000000, 4850000, 250, 3, 0, 0, 0, 1, 0, 0); -#else - return satellite_test_one(picoquic_bbr_algorithm, 100000000, 4800000, 250, 3, 0, 0, 0, 1, 0, 0); -#endif } int satellite_loss_test() diff --git a/picoquictest/simple_multipath_qlog_ref.txt b/picoquictest/simple_multipath_qlog_ref.txt index c11cfa048..50cf9778d 100644 --- a/picoquictest/simple_multipath_qlog_ref.txt +++ b/picoquictest/simple_multipath_qlog_ref.txt @@ -93,7 +93,7 @@ "frame_type": "new_connection_id", "sequence_number": 5, "retire_before": 0, "connection_id": "0e08070605040302", "reset_token": "7127e92d271885fd9593f52f98c1a1ad"}, { "frame_type": "new_connection_id", "sequence_number": 6, "retire_before": 0, "connection_id": "0f08070605040302", "reset_token": "ac294d76d656f0439236df22560a7304"}, { "frame_type": "new_connection_id", "sequence_number": 7, "retire_before": 0, "connection_id": "1008070605040302", "reset_token": "995ca0346f5695c0bef97bb0dcdbd925"}]}], -[21666, 0, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21118,"latest_rtt": 21666}], +[21666, 0, "recovery", "metrics_updated", {"pacing_rate": 7268505,"bytes_in_flight": 1717,"smoothed_rtt": 21118,"latest_rtt": 21666,"app_limited": 1}], [21666, 0, "transport", "spin_bit_updated", { "state": true }], [21666, 0, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 39, "packet_number": 3, "dcid": "0908070605040302" }, "frames": [{ "frame_type": "handshake_done"}, { @@ -146,11 +146,11 @@ "frame_type": "path_challenge", "path_challenge": "0000b67fe75e8241"}, { "frame_type": "path_response", "path_response": "0000911ecf0c95ca"}, { "frame_type": "padding"}]}], -[42710, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1252,"min_rtt": 0,"latest_rtt": 0}], +[42710, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1252,"min_rtt": 0,"latest_rtt": 0,"app_limited": 0}], [42710, 0, "transport", "datagram_sent", { "byte_length": 1252}], [44082, 0, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1424, "packet_number": 9, "dcid": "0908070605040302" }, "frames": [{ "frame_type": "stream", "id": 4, "offset": 4221, "length": 1410, "fin": false , "has_length": false, "begins_with": "7d7e7f8081828384"}]}], -[44082, 0, "recovery", "metrics_updated", {"pacing_rate": 7209011,"bytes_in_flight": 5815,"smoothed_rtt": 21305,"min_rtt": 20285,"latest_rtt": 20285}], +[44082, 0, "recovery", "metrics_updated", {"pacing_rate": 7209011,"bytes_in_flight": 5815,"smoothed_rtt": 21305,"min_rtt": 20285,"latest_rtt": 20285,"app_limited": 1}], [44082, 0, "transport", "datagram_sent", { "byte_length": 1440, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":1234}}], [44297, 0, "transport", "datagram_received", { "byte_length": 55}], [44297, 0, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 5, "dcid": "0a09080706050403" }, "frames": [{ @@ -203,7 +203,7 @@ "frame_type": "time_stamp", "time_stamp": 8089}, { "frame_type": "ack", "ack_delay": 52, "acked_ranges": [[3, 8]]}, { "frame_type": "padding"}]}], -[64712, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 55,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050}], +[64712, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 55,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050,"app_limited": 0}], [64712, 0, "transport", "datagram_sent", { "byte_length": 55}], [65863, 0, "transport", "datagram_received", { "byte_length": 1440}], [65863, 1, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 1440, "packet_number": 9, "dcid": "0b09080706050403" }, "frames": [{ @@ -213,19 +213,19 @@ "frame_type": "time_stamp", "time_stamp": 8232}, { "frame_type": "ack", "ack_delay": 0, "acked_ranges": [[3, 9]]}, { "frame_type": "padding"}]}], -[65863, 0, "recovery", "metrics_updated", {"pacing_rate": 7209011,"bytes_in_flight": 7491,"smoothed_rtt": 21305,"min_rtt": 20285,"latest_rtt": 21809}], +[65863, 0, "recovery", "metrics_updated", {"pacing_rate": 7209011,"bytes_in_flight": 7491,"smoothed_rtt": 21305,"min_rtt": 20285,"latest_rtt": 21809,"app_limited": 1}], [65863, 0, "transport", "datagram_sent", { "byte_length": 55, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":1234}}], [65863, 1, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1424, "packet_number": 17, "dcid": "0a08070605040302" }, "frames": [{ "frame_type": "ping"}, { "frame_type": "padding"}]}], -[65863, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1495,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050}], +[65863, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 1495,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050,"app_limited": 0}], [65863, 0, "transport", "datagram_sent", { "byte_length": 1440, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [67749, 0, "transport", "datagram_received", { "byte_length": 55, "addr_from" : {"ip_v4": "10.0.0.2", "port_v4":1234}}], [67749, 0, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 10, "dcid": "0a09080706050403" }, "frames": [{ "frame_type": "time_stamp", "time_stamp": 8588}, { "frame_type": "ack", "ack_delay": 0, "acked_ranges": [[2, 10]]}, { "frame_type": "padding"}]}], -[67749, 0, "recovery", "metrics_updated", {"pacing_rate": 7177570,"bytes_in_flight": 3171,"smoothed_rtt": 21400,"min_rtt": 20285,"latest_rtt": 22069}], +[67749, 0, "recovery", "metrics_updated", {"pacing_rate": 7177570,"bytes_in_flight": 3171,"smoothed_rtt": 21400,"min_rtt": 20285,"latest_rtt": 22069,"app_limited": 1}], [67749, 0, "transport", "datagram_received", { "byte_length": 55, "addr_from" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [67749, 1, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 11, "dcid": "0b09080706050403" }, "frames": [{ "frame_type": "time_stamp", "time_stamp": 8588}, { @@ -255,15 +255,15 @@ "frame_type": "time_stamp", "time_stamp": 8855}, { "frame_type": "ack", "ack_delay": 0, "acked_ranges": [[3, 14]]}, { "frame_type": "stream", "id": 8, "offset": 1402, "length": 1212, "fin": false , "has_length": false, "begins_with": "7a7b7c7d7e7f8081"}]}], -[70847, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 2747,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050}], +[70847, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 2747,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050,"app_limited": 0}], [70847, 0, "transport", "datagram_sent", { "byte_length": 1252, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [70847, 0, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1424, "packet_number": 20, "dcid": "0908070605040302" }, "frames": [{ "frame_type": "stream", "id": 8, "offset": 2614, "length": 1409, "fin": false , "has_length": false, "begins_with": "363738393a3b3c3d"}]}], -[70847, 0, "recovery", "metrics_updated", {"pacing_rate": 7182044,"bytes_in_flight": 3171,"smoothed_rtt": 21374,"min_rtt": 20285,"latest_rtt": 21194}], +[70847, 0, "recovery", "metrics_updated", {"pacing_rate": 7182044,"bytes_in_flight": 3171,"smoothed_rtt": 21374,"min_rtt": 20285,"latest_rtt": 21194,"app_limited": 1}], [70847, 0, "transport", "datagram_sent", { "byte_length": 1440, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":1234}}], [70847, 1, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1236, "packet_number": 21, "dcid": "0a08070605040302" }, "frames": [{ "frame_type": "stream", "id": 8, "offset": 4023, "length": 1221, "fin": false , "has_length": false, "begins_with": "b7b8b9babbbcbdbe"}]}], -[70847, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 3999,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050}], +[70847, 1, "recovery", "metrics_updated", {"pacing_rate": 10016000000,"bytes_in_flight": 3999,"smoothed_rtt": 21050,"min_rtt": 21050,"latest_rtt": 21050,"app_limited": 0}], [70847, 0, "transport", "datagram_sent", { "byte_length": 1252, "addr_to" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [70847, 1, "transport", "packet_sent", { "packet_type": "1RTT", "header": { "packet_size": 1236, "packet_number": 22, "dcid": "0a08070605040302" }, "frames": [{ "frame_type": "stream", "id": 8, "offset": 5244, "length": 1221, "fin": false , "has_length": false, "begins_with": "7c7d7e7f80818283"}]}], @@ -286,7 +286,7 @@ "frame_type": "time_stamp", "time_stamp": 9609}, { "frame_type": "ack", "ack_delay": 657, "acked_ranges": [[2, 13]]}, { "frame_type": "padding"}]}], -[75921, 0, "recovery", "metrics_updated", {"pacing_rate": 7015834,"bytes_in_flight": 2990,"smoothed_rtt": 21883,"min_rtt": 20285,"latest_rtt": 25447}], +[75921, 0, "recovery", "metrics_updated", {"pacing_rate": 7015834,"bytes_in_flight": 2990,"smoothed_rtt": 21883,"min_rtt": 20285,"latest_rtt": 25447,"app_limited": 1}], [75921, 0, "transport", "datagram_received", { "byte_length": 55, "addr_from" : {"ip_v4": "10.0.0.2", "port_v4":5586}}], [75921, 1, "transport", "packet_received", { "packet_type": "1RTT", "header": { "packet_size": 55, "packet_number": 16, "dcid": "0b09080706050403" }, "frames": [{ "frame_type": "time_stamp", "time_stamp": 9609}, { diff --git a/picoquictest/tls_api_test.c b/picoquictest/tls_api_test.c index 9a8444e29..3a1e8ca75 100644 --- a/picoquictest/tls_api_test.c +++ b/picoquictest/tls_api_test.c @@ -9034,7 +9034,7 @@ int bbr_test() int bbr_jitter_test() { - return congestion_control_test(picoquic_bbr_algorithm, 3550000, 5000, 5); + return congestion_control_test(picoquic_bbr_algorithm, 3600000, 5000, 5); } int bbr_long_test() @@ -10709,7 +10709,7 @@ int app_limit_cc_test_one( int nb_comma = 0; int c_index = 0; - while (nb_comma < 23 && c_index < 512 && buffer[c_index] != 0) { + while (nb_comma < 24 && c_index < 512 && buffer[c_index] != 0) { if (buffer[c_index] == ',') { nb_comma++; } @@ -10852,7 +10852,7 @@ int cwin_max_test_one( int nb_comma = 0; int c_index = 0; - while (nb_comma < 23 && c_index < 512 && buffer[c_index] != 0) { + while (nb_comma < 24 && c_index < 512 && buffer[c_index] != 0) { if (buffer[c_index] == ',') { nb_comma++; } @@ -11552,19 +11552,13 @@ static int pacing_cc_algotest(picoquic_congestion_algorithm_t* cc_algo, uint64_t int pacing_bbr_test() { - /* TODO: With BBRv3, the 1MB transfer in this test takes more than 1sec, - * approximately an 80% path utilisation. This compares to less than - * 900ms for the same test using Cubic. On the other hand, there are - * way fewer retransmission than when using Cubic, less than 50 versus - * more than 200. The 80% path utilisation is because BBRv3 tests the - * bandwidth during startup, exits as soon as excessive packet - * losses are detected, and waits 2 to 3 seconds before pushing again. - * TODO: consider a post startup "push" similare to the second phase of - * Hystart++. - * Correction: after limiting the cwin on 2nd RTO, the time gets lower, - * but the nuber of losses increases markedly. + /* BBRv3 includes a short term loop that detects losses and tune the + * sending rate accordingly. The packet losses cause startup to + * give up too soon, but this is fixed by probing up "quickly" + * after exiting startup. The packet losses occur during startup + * and during the probing periods. */ - int ret = pacing_cc_algotest(picoquic_bbr_algorithm, 900000, 390); + int ret = pacing_cc_algotest(picoquic_bbr_algorithm, 900000, 150); return ret; } @@ -11711,7 +11705,7 @@ int heavy_loss_test_one(int scenario_id, uint64_t completion_target) int heavy_loss_test() { - return heavy_loss_test_one(0, 23100000); + return heavy_loss_test_one(0, 23500000); } int heavy_loss_inter_test() @@ -12622,7 +12616,7 @@ int bdp_option_test_one(bdp_test_option_enum bdp_test_option) max_completion_time = 5800000; break; case bdp_test_option_rtt: - max_completion_time = 4600000; + max_completion_time = 4610000; test_ctx->c_to_s_link->microsec_latency = 50000ull; test_ctx->s_to_c_link->microsec_latency = 50000ull; buffer_size = 2 * test_ctx->c_to_s_link->microsec_latency; diff --git a/picoquictest/wifitest.c b/picoquictest/wifitest.c index 0154e15c9..5d3500b4e 100644 --- a/picoquictest/wifitest.c +++ b/picoquictest/wifitest.c @@ -261,7 +261,7 @@ int wifi_bbr_hard_test() 3000, suspension_hard, picoquic_bbr_algorithm, - 4050000, + 4060000, 0 }; int ret = wifi_test_one(wifi_test_bbr_hard, &spec); @@ -303,7 +303,7 @@ int wifi_bbr_long_test() 50000, suspension_basic, picoquic_bbr_algorithm, - 3250000, + 3400000, 1 }; int ret = wifi_test_one(wifi_test_bbr_long, &spec);