diff --git a/src/rsz/include/rsz/Resizer.hh b/src/rsz/include/rsz/Resizer.hh index 84d46aa814e..829ccde58c8 100644 --- a/src/rsz/include/rsz/Resizer.hh +++ b/src/rsz/include/rsz/Resizer.hh @@ -215,6 +215,9 @@ class Resizer : public sta::dbStaState, public sta::dbNetworkObserver sta::VertexSeq orderedLoadPinVertices(); void setDontUse(sta::LibertyCell* cell, bool dont_use); + void setInverterPairEnabled(bool enable); + bool isInverterPairEnabled() const { return inverter_pair_enabled_; } + const sta::LibertyCellSeq& inverterCells() const { return inverter_cells_; } void resetDontUse(); bool dontUse(const sta::LibertyCell* cell); bool isLinkCell(sta::LibertyCell* cell) const; @@ -592,6 +595,7 @@ class Resizer : public sta::dbStaState, public sta::dbNetworkObserver void findBuffers(); void findBuffersNoPruning(); void findFastBuffers(); + void findInverters(); static MoveType moveTypeFromString(const std::string& str); sta::LibertyCell* selectBufferCell(sta::LibertyCell* buffer_cell = nullptr); void findTargetLoads(); @@ -933,6 +937,8 @@ class Resizer : public sta::dbStaState, public sta::dbNetworkObserver sta::LibertyCellSeq buffer_cells_; sta::LibertyCell* buffer_lowest_drive_ = nullptr; std::unordered_set buffer_fast_sizes_; + sta::LibertyCellSeq inverter_cells_; + bool inverter_pair_enabled_ = false; // Buffer list created by CTS kept here so that we use the // exact same buffers when reparing clock nets. sta::LibertyCellSeq clk_buffers_; diff --git a/src/rsz/src/BufferedNet.cc b/src/rsz/src/BufferedNet.cc index 22dddeca7a0..e29a81e3e48 100644 --- a/src/rsz/src/BufferedNet.cc +++ b/src/rsz/src/BufferedNet.cc @@ -153,6 +153,8 @@ BufferedNet::BufferedNet(const BufferedNetType type, max_load_slew_ = min(ref->maxLoadSlew(), ref2->maxLoadSlew()); area_ = ref->area() + ref2->area(); + + parity_ = ref->parity(); } // wire @@ -181,6 +183,8 @@ BufferedNet::BufferedNet(const BufferedNetType type, max_load_slew_ = ref->maxLoadSlew(); area_ = ref->area(); + + parity_ = ref->parity(); } // via @@ -208,6 +212,8 @@ BufferedNet::BufferedNet(const BufferedNetType type, max_load_slew_ = ref->maxLoadSlew(); area_ = ref->area(); + + parity_ = ref->parity(); } // buffer @@ -237,6 +243,8 @@ BufferedNet::BufferedNet(const BufferedNetType type, max_load_slew_ = resizer->maxInputSlew(input, corner); area_ = ref->area() + buffer_cell_->area(); + + parity_ = buffer_cell->isInverter() ? (ref->parity() ^ 1) : ref->parity(); } void BufferedNet::reportTree(const Resizer* resizer) const @@ -1178,7 +1186,8 @@ bool BufferedNet::fitsEnvelope(Metrics target) return maxLoadWireLength() <= target.max_load_wl && slack() >= target.slack && sta::fuzzyLessEqual(cap(), target.cap) && sta::fuzzyGreaterEqual(maxLoadSlew(), target.max_load_slew) - && sta::fuzzyLessEqual(fanout(), target.fanout); + && sta::fuzzyLessEqual(fanout(), target.fanout) + && parity() == target.parity; } } // namespace rsz diff --git a/src/rsz/src/BufferedNet.hh b/src/rsz/src/BufferedNet.hh index 566a773f3b5..ced471abd1d 100644 --- a/src/rsz/src/BufferedNet.hh +++ b/src/rsz/src/BufferedNet.hh @@ -187,6 +187,9 @@ class BufferedNet // repairNet int maxLoadWireLength() const; + // Inverter count to loads, mod 2 (0 = polarity preserved). + int parity() const { return parity_; } + // Rebuffer const sta::RiseFallBoth* slackTransition() const { @@ -222,6 +225,7 @@ class BufferedNet float cap; float max_load_slew; float fanout; + int parity = 0; Metrics withMaxLoadWl(int max_load_wl) { @@ -251,7 +255,8 @@ class BufferedNet .slack = slack(), .cap = cap(), .max_load_slew = maxLoadSlew(), - .fanout = fanout()}; + .fanout = fanout(), + .parity = parity()}; } bool fitsEnvelope(Metrics target); @@ -295,6 +300,8 @@ class BufferedNet // Delay from driver pin to here FixedDelay arrival_delay_ = FixedDelay::ZERO; + int8_t parity_ = 0; + const sta::Scene* corner_ = nullptr; }; diff --git a/src/rsz/src/Rebuffer.cc b/src/rsz/src/Rebuffer.cc index 11cb4b2b861..8a08d2d1fc2 100644 --- a/src/rsz/src/Rebuffer.cc +++ b/src/rsz/src/Rebuffer.cc @@ -4,10 +4,12 @@ #include "Rebuffer.hh" #include +#include #include #include #include #include +#include #include #include #include @@ -341,6 +343,18 @@ static const sta::RiseFallBoth* combinedTransition(const sta::RiseFallBoth* a, return sta::RiseFallBoth::riseFall(); } +// Inverter flips the upstream slackTransition: rise<->fall +static const sta::RiseFallBoth* flipRiseFallBoth(const sta::RiseFallBoth* rf) +{ + if (rf == sta::RiseFallBoth::rise()) { + return sta::RiseFallBoth::fall(); + } + if (rf == sta::RiseFallBoth::fall()) { + return sta::RiseFallBoth::rise(); + } + return rf; +} + static BufferedNetPtr createBnetJunction(Resizer* resizer, const BufferedNetPtr& p, const BufferedNetPtr& q, @@ -663,12 +677,14 @@ BnetPtr Rebuffer::bufferForTiming(const BnetPtr& tree, // This is a long wire, allow for insertion of buffers at the // farther end insertBufferOptions(opts, level, std::min(full_wl, layer_step)); + insertInverterOptions(opts, level); } else { BnetSeq opts1 = opts; for (BnetPtr& opt : opts1) { opt = addWire(opt, node->location(), layer, level); } insertBufferOptions(opts1, level, 0); + insertInverterOptions(opts1, level); if (opts1.empty()) { // if generated options empty, start again but allow for // insertion of buffers at the farther end @@ -678,6 +694,7 @@ BnetPtr Rebuffer::bufferForTiming(const BnetPtr& tree, opt = addWire(opt, node->location(), layer, level); } insertBufferOptions(opts1, level, 0); + insertInverterOptions(opts1, level); } if (opts1.empty()) { // if generated options still empty, this is an internal error @@ -733,6 +750,7 @@ BnetPtr Rebuffer::bufferForTiming(const BnetPtr& tree, opt = addWire(opt, location, layer, level); } insertBufferOptions(opts, level, std::min(remaining_wl, step)); + insertInverterOptions(opts, level); if (opts.empty()) { logger_->warn( @@ -751,76 +769,112 @@ BnetPtr Rebuffer::bufferForTiming(const BnetPtr& tree, } case BnetType::junction: { - const BnetSeq& opts_left = recurse(node->ref()); - const BnetSeq& opts_right = recurse(node->ref2()); - - BnetSeq opts; - opts.reserve(std::max(opts_left.size(), opts_right.size())); - float best_cap = sta::INF; - - auto li = opts_left.rbegin(), lend = opts_left.rend(); - auto ri = opts_right.rbegin(), rend = opts_right.rend(); - - while (li != lend && ri != rend) { - while (li + 1 != lend && (*(li + 1))->slack() >= (*ri)->slack()) { - li++; - } - while (ri + 1 != rend && (*(ri + 1))->slack() >= (*li)->slack()) { - ri++; + const BnetSeq& opts_left_all = recurse(node->ref()); + const BnetSeq& opts_right_all = recurse(node->ref2()); + + // Junction merge requires equal parity on both sides; with + // mixed-parity opts split into 2 buckets and merge per bucket. + auto merge_one_bucket = [&](const BnetSeq& opts_left, + const BnetSeq& opts_right) -> BnetSeq { + BnetSeq opts; + if (opts_left.empty() || opts_right.empty()) { + return opts; } + opts.reserve(std::max(opts_left.size(), opts_right.size())); + float best_cap = sta::INF; - bool rewrote = false; - BnetPtr junc; + auto li = opts_left.rbegin(), lend = opts_left.rend(); + auto ri = opts_right.rbegin(), rend = opts_right.rend(); - if (allow_topology_rewrite) { - junc = attemptTopologyRewrite(node, *li, *ri, best_cap); - if (junc) { - rewrote = true; + while (li != lend && ri != rend) { + while (li + 1 != lend + && (*(li + 1))->slack() >= (*ri)->slack()) { + li++; + } + while (ri + 1 != rend + && (*(ri + 1))->slack() >= (*li)->slack()) { + ri++; } - } - if (!rewrote) { - junc = createBnetJunction(resizer_, *li, *ri, node->location()); - } + bool rewrote = false; + BnetPtr junc; + + // Rewrite is parity-unaware: only on pure-buf subtrees. + const bool rewrite_safe + = allow_topology_rewrite && !invPairActive(); + if (rewrite_safe) { + junc = attemptTopologyRewrite(node, *li, *ri, best_cap); + if (junc) { + rewrote = true; + } + } - if (junc->fanout() <= fanout_limit_) { - debugPrint(logger_, - RSZ, - "rebuffer", - 3, - "{:{}s}{}{}", - "", - level, - rewrote ? "(rewritten) " : "", - junc->to_string(resizer_)); - - best_cap = junc->cap(); - opts.push_back(std::move(junc)); - } + if (!rewrote) { + junc = createBnetJunction( + resizer_, *li, *ri, node->location()); + } - while (true) { - // increment either li or ri, whichever leads to smaller slack - // decrease - FixedDelay next_li_slack = (li + 1 != lend) - ? (*(li + 1))->slack() - : -FixedDelay::INF; - FixedDelay next_ri_slack = (ri + 1 != rend) - ? (*(ri + 1))->slack() - : -FixedDelay::INF; - - if (next_li_slack > next_ri_slack) { - li++; - } else { - ri++; + if (junc->fanout() <= fanout_limit_) { + debugPrint(logger_, + RSZ, + "rebuffer", + 3, + "{:{}s}{}{}", + "", + level, + rewrote ? "(rewritten) " : "", + junc->to_string(resizer_)); + + best_cap = junc->cap(); + opts.push_back(std::move(junc)); } - if (li == lend || ri == rend - || (*li)->cap() + (*ri)->cap() < best_cap) { - break; + while (true) { + // increment either li or ri, whichever leads to smaller slack + // decrease + FixedDelay next_li_slack = (li + 1 != lend) + ? (*(li + 1))->slack() + : -FixedDelay::INF; + FixedDelay next_ri_slack = (ri + 1 != rend) + ? (*(ri + 1))->slack() + : -FixedDelay::INF; + + if (next_li_slack > next_ri_slack) { + li++; + } else { + ri++; + } + + if (li == lend || ri == rend + || (*li)->cap() + (*ri)->cap() < best_cap) { + break; + } } } + std::ranges::reverse(opts); + return opts; + }; + + BnetSeq opts; + if (invPairActive()) { + // Merge same-parity pairs only + BnetSeq left_p0, left_p1, right_p0, right_p1; + for (const BnetPtr& o : opts_left_all) { + (o->parity() == 0 ? left_p0 : left_p1).push_back(o); + } + for (const BnetPtr& o : opts_right_all) { + (o->parity() == 0 ? right_p0 : right_p1).push_back(o); + } + BnetSeq m0 = merge_one_bucket(left_p0, right_p0); + BnetSeq m1 = merge_one_bucket(left_p1, right_p1); + auto cap_less = [](const BnetPtr& a, const BnetPtr& b) { + return a->cap() < b->cap(); + }; + opts.reserve(m0.size() + m1.size()); + std::ranges::merge(m0, m1, std::back_inserter(opts), cap_less); + } else { + opts = merge_one_bucket(opts_left_all, opts_right_all); } - std::ranges::reverse(opts); return opts; } @@ -857,9 +911,11 @@ BnetPtr Rebuffer::bufferForTiming(const BnetPtr& tree, int i = 1; debugPrint(logger_, RSZ, "rebuffer", 2, "timing-optimized options"); for (const BufferedNetPtr& p : top_opts) { - // Find slack for drvr_pin into option. + // Only parity-0 (polarity-preserving) options are valid at the root. + if (!isRootParityAccepted(p)) { + continue; + } std::optional slack = evaluateOption(p, i); - if (!slack) { // ignore this option as it doesn't pass ERC continue; @@ -874,6 +930,7 @@ BnetPtr Rebuffer::bufferForTiming(const BnetPtr& tree, } i++; } + if (best_option) { debugPrint(logger_, RSZ, "rebuffer", 2, "best option {}", best_index); } else { @@ -936,6 +993,145 @@ void Rebuffer::insertAssuredOption(BnetSeq& opts, opts.insert(it, std::move(assured_opt)); } +bool Rebuffer::invPairActive() const +{ + return resizer_->isInverterPairEnabled(); +} + +bool Rebuffer::isRootParityAccepted(const BufferedNetPtr& opt) const +{ + return !resizer_->isInverterPairEnabled() || opt->parity() == 0; +} + +void Rebuffer::insertInverterOptions(BufferedNetSeq& opts, int level) +{ + if (!invPairActive()) { + return; + } + insertInverterCandidates(opts, level); + prunePerParityFrontier(opts); +} + +void Rebuffer::insertInverterCandidates(BnetSeq& opts, int level) +{ + if (opts.empty() || inverter_sizes_.empty()) { + return; + } + BnetSeq inv_opts; + inv_opts.reserve(opts.size() * inverter_sizes_.size()); + + // bufferDelay on an inverter reads arrival_paths_[flipped_rf] + bool arrival_path_available[sta::RiseFall::index_count] = {false, false}; + for (int rf_idx : sta::RiseFall::rangeIndex()) { + arrival_path_available[rf_idx] = (arrival_paths_[rf_idx] != nullptr); + } + + for (const BnetPtr& opt : opts) { + const sta::RiseFallBoth* flipped_rf + = flipRiseFallBoth(opt->slackTransition()); + if (flipped_rf) { + bool flipped_safe = true; + for (auto rf1 : flipped_rf->range()) { + if (!arrival_path_available[rf1->index()]) { + flipped_safe = false; + break; + } + } + if (!flipped_safe) { + continue; + } + } + for (const BufferSize& inv_size : inverter_sizes_) { + // Skip inverters that cannot legally drive the downstream load, + // mirroring the buffer path in insertBufferOptions. + if (!bufferSizeCanDriveLoad(inv_size, opt)) { + continue; + } + sta::LibertyCell* inv_cell = inv_size.cell; + sta::LibertyPort* out = inv_size.out; + const float load_cap = opt->cap() + out->capacitance(); + const FixedDelay inv_delay + = bufferDelay(inv_cell, opt->slackTransition(), load_cap); + const FixedDelay slack = opt->slack() - inv_delay; + + BnetPtr z = make_shared(BnetType::buffer, + opt->location(), + inv_cell, + opt, + corner_, + resizer_, + estimate_parasitics_); + z->setSlack(slack); + // Inverter flips the transition; upstream sees flipped_rf. + z->setSlackTransition(flipped_rf); + z->setDelay(inv_delay); + + debugPrint(logger_, + RSZ, + "rebuffer", + 3, + "{:{}s}inv {} on parity {}: {}", + "", + level, + inv_cell->name(), + opt->parity(), + z->to_string(resizer_)); + inv_opts.push_back(std::move(z)); + } + } + opts.insert(opts.end(), + std::make_move_iterator(inv_opts.begin()), + std::make_move_iterator(inv_opts.end())); +} + +void Rebuffer::prunePerParityFrontier(BnetSeq& opts) +{ + if (opts.empty()) { + return; + } + if (std::ranges::none_of(opts, + [](const BnetPtr& o) { return o->parity() != 0; })) { + return; + } + + BnetSeq p0, p1; + p0.reserve(opts.size()); + p1.reserve(opts.size()); + for (BnetPtr& o : opts) { + (o->parity() == 0 ? p0 : p1).push_back(std::move(o)); + } + + auto prune_bucket = [](BnetSeq& bucket) { + if (bucket.empty()) { + return; + } + std::ranges::sort(bucket, [](const BnetPtr& a, const BnetPtr& b) { + if (a->cap() != b->cap()) { + return a->cap() < b->cap(); + } + return a->slack() > b->slack(); + }); + BnetSeq kept; + kept.reserve(bucket.size()); + FixedDelay best_slack = -FixedDelay::INF; + for (BnetPtr& o : bucket) { + if (o->slack() > best_slack) { + best_slack = o->slack(); + kept.push_back(std::move(o)); + } + } + bucket.swap(kept); + }; + prune_bucket(p0); + prune_bucket(p1); + + opts.clear(); + opts.reserve(p0.size() + p1.size()); + auto cap_less + = [](const BnetPtr& a, const BnetPtr& b) { return a->cap() < b->cap(); }; + std::ranges::merge(p0, p1, std::back_inserter(opts), cap_less); +} + // Recover area on a rebuffering choice without regressing timing BufferedNetPtr Rebuffer::recoverArea(const BufferedNetPtr& root, FixedDelay slack_target, @@ -1017,6 +1213,10 @@ BufferedNetPtr Rebuffer::recoverArea(const BufferedNetPtr& root, opts.reserve(left_opts.size() * right_opts.size()); for (const BnetPtr& left : left_opts) { for (const BnetPtr& right : right_opts) { + // Skip cross-parity pairs + if (invPairActive() && left->parity() != right->parity()) { + continue; + } BnetPtr junc = createBnetJunction( resizer_, left, right, node->location()); if (!assured_fallback && junc->fitsEnvelope(assured_envelope)) { @@ -1029,7 +1229,28 @@ BufferedNetPtr Rebuffer::recoverArea(const BufferedNetPtr& root, } } - pruneCapVsAreaOptions(sta_, opts); + // pruneCapVsAreaOptions is parity-blind; prune each bucket + // separately. + if (invPairActive()) { + std::array bucketed; // by parity (polarity) + for (BnetPtr& o : opts) { + bucketed[o->parity()].push_back(std::move(o)); + } + pruneCapVsAreaOptions(sta_, bucketed[0]); + pruneCapVsAreaOptions(sta_, bucketed[1]); + // Each bucket is cap-ascending after pruning; merge (not + // concatenate) so opts stays globally cap-sorted, as both + // insertBufferOptions and the timing-DP merge path assume. + opts.clear(); + opts.reserve(bucketed[0].size() + bucketed[1].size()); + auto cap_less = [](const BnetPtr& a, const BnetPtr& b) { + return a->cap() < b->cap(); + }; + std::ranges::merge( + bucketed[0], bucketed[1], std::back_inserter(opts), cap_less); + } else { + pruneCapVsAreaOptions(sta_, opts); + } debugPrint(logger_, RSZ, "rebuffer", @@ -1057,7 +1278,10 @@ BufferedNetPtr Rebuffer::recoverArea(const BufferedNetPtr& root, } } - if (!assured_found) { + // Defensive: inv-pair's exact-parity fitsEnvelope can leave no + // junction fitting the envelope, so assured_fallback may be null; + // skip rather than pass null to insertAssuredOption. + if (!assured_found && assured_fallback) { insertAssuredOption(opts, assured_fallback, level); } return opts; @@ -1087,6 +1311,9 @@ BufferedNetPtr Rebuffer::recoverArea(const BufferedNetPtr& root, int i = 1; debugPrint(logger_, RSZ, "rebuffer", 2, "area-optimized options"); for (const BufferedNetPtr& p : top_opts) { + if (!isRootParityAccepted(p)) { + continue; + } // Find slack for drvr_pin into option. std::optional slack = evaluateOption(p, i); @@ -1287,8 +1514,12 @@ void Rebuffer::insertBufferOptions( : BnetMetrics{}; bool assured_satisfied = !area_oriented; - float best_area = sta::INF; - FixedDelay best_slack = -FixedDelay::INF; + static constexpr int kNumBuckets = 2; + auto bucket_of = [](const BnetPtr& o) { return o->parity(); }; + float best_area[kNumBuckets]; + FixedDelay best_slack[kNumBuckets]; + std::fill_n(best_area, kNumBuckets, sta::INF); + std::fill_n(best_slack, kNumBuckets, -FixedDelay::INF); // both `opts` and `buffer_sizes_` are ordered by ascending input // capacitance @@ -1301,10 +1532,11 @@ void Rebuffer::insertBufferOptions( for (; opts_iter != opts.end() && (*opts_iter)->cap() <= threshold_cap; opts_iter++) { BnetPtr& opt = *opts_iter; + const int b = bucket_of(opt); - bool keep = area_oriented ? (sta::fuzzyLess(opt->area(), best_area) + bool keep = area_oriented ? (sta::fuzzyLess(opt->area(), best_area[b]) && opt->slack() >= slack_threshold) - : (opt->slack() > best_slack); + : (opt->slack() > best_slack[b]); if (!bufferSizeCanDriveLoad(strong_driver, opt, next_segment_wl)) { keep = false; @@ -1325,32 +1557,35 @@ void Rebuffer::insertBufferOptions( if (!assured_satisfied && opt->fitsEnvelope(assured_envelope)) { assured_satisfied = true; } - best_slack = opt->slack(); - best_area = opt->area(); + best_slack[b] = opt->slack(); + best_area[b] = opt->area(); } } }; for (BufferSize buffer_size : buffer_sizes_) { sta::LibertyCell* buffer_cell = buffer_size.cell; - sta::LibertyPort *in, *out; - buffer_cell->bufferPorts(in, out); + sta::LibertyPort* in = buffer_size.in; + sta::LibertyPort* out = buffer_size.out; pass_through(in->capacitance()); - BnetPtr load_opt; - FixedDelay load_opt_buffer_delay = FixedDelay::ZERO; + // Per-bucket best load_opt. + BnetPtr load_opt[kNumBuckets]; + FixedDelay load_opt_buffer_delay[kNumBuckets]; + std::fill_n(load_opt_buffer_delay, kNumBuckets, FixedDelay::ZERO); auto it = (new_opts.empty() && opts_iter == opts.end() && opts_iter > opts.begin()) ? (opts_iter - 1) : opts_iter; for (; it != opts.end(); it++) { BnetPtr& opt = *it; + const int b = bucket_of(opt); if ((area_oriented ? (opt->slack() - buffer_size.intrinsic_delay >= slack_threshold && sta::fuzzyLess(opt->area() + buffer_cell->area(), - best_area)) - : (opt->slack() - buffer_size.intrinsic_delay) > best_slack) + best_area[b])) + : (opt->slack() - buffer_size.intrinsic_delay) > best_slack[b]) && bufferSizeCanDriveLoad(buffer_size, opt)) { // this is a candidate, make the detailed delay calculation const FixedDelay buffer_delay @@ -1359,26 +1594,29 @@ void Rebuffer::insertBufferOptions( opt->cap() + out->capacitance()); const FixedDelay slack = opt->slack() - buffer_delay; - if (area_oriented ? slack >= slack_threshold : slack > best_slack) { - load_opt = opt; - load_opt_buffer_delay = buffer_delay; - best_slack = slack; - best_area = load_opt->area() + buffer_cell->area(); + if (area_oriented ? slack >= slack_threshold : slack > best_slack[b]) { + load_opt[b] = opt; + load_opt_buffer_delay[b] = buffer_delay; + best_slack[b] = slack; + best_area[b] = opt->area() + buffer_cell->area(); } } } - if (load_opt) { + for (int b = 0; b < kNumBuckets; b++) { + if (!load_opt[b]) { + continue; + } BnetPtr z = make_shared(BnetType::buffer, - load_opt->location(), + load_opt[b]->location(), buffer_cell, - load_opt, + load_opt[b], corner_, resizer_, estimate_parasitics_); - z->setSlack(best_slack); - z->setSlackTransition(load_opt->slackTransition()); - z->setDelay(load_opt_buffer_delay); + z->setSlack(best_slack[b]); + z->setSlackTransition(load_opt[b]->slackTransition()); + z->setDelay(load_opt_buffer_delay[b]); if (!assured_satisfied && z->fitsEnvelope(assured_envelope)) { assured_satisfied = true; @@ -1392,21 +1630,31 @@ void Rebuffer::insertBufferOptions( "", level, buffer_cell->name(), - units_->capacitanceUnit()->asString(load_opt->cap()), - delayAsString(load_opt_buffer_delay.toSeconds(), this), + units_->capacitanceUnit()->asString(load_opt[b]->cap()), + delayAsString(load_opt_buffer_delay[b].toSeconds(), this), z->to_string(resizer_)); new_opts.push_back(std::move(z)); } } + pass_through(sta::INF); if (!assured_satisfied) { assert(exemplar != nullptr); if (exemplar && exemplar->type() == BnetType::buffer) { - sta::LibertyCell* buffer_cell = exemplar->bufferCell(); + sta::LibertyCell* exemplar_cell = exemplar->bufferCell(); + const bool exemplar_is_inv = exemplar_cell->isInverter(); sta::LibertyPort *in, *out; - buffer_cell->bufferPorts(in, out); + exemplar_cell->bufferPorts(in, out); + + // An inverter exemplar flips the upstream transition (below); the next + // DP level reads arrival_paths_ for that flipped transition, so guard + // against it being null -- mirrors insertInverterCandidates. + bool arrival_path_available[sta::RiseFall::index_count] = {false, false}; + for (int rf_idx : sta::RiseFall::rangeIndex()) { + arrival_path_available[rf_idx] = (arrival_paths_[rf_idx] != nullptr); + } float best_area = sta::INF; BnetPtr best_option; @@ -1414,24 +1662,45 @@ void Rebuffer::insertBufferOptions( if (load_opt->area() >= best_area) { continue; } + if (exemplar_is_inv) { + const sta::RiseFallBoth* flipped_rf + = flipRiseFallBoth(load_opt->slackTransition()); + bool flipped_safe = true; + if (flipped_rf) { + for (auto rf1 : flipped_rf->range()) { + if (!arrival_path_available[rf1->index()]) { + flipped_safe = false; + break; + } + } + } + if (!flipped_safe) { + continue; + } + } - const FixedDelay buffer_delay - = bufferDelay(buffer_cell, + const FixedDelay cell_delay + = bufferDelay(exemplar_cell, load_opt->slackTransition(), load_opt->cap() + out->capacitance()); - if (bufferSizeCanDriveLoad(*buffer_sizes_index_.at(buffer_cell), + + if (bufferSizeCanDriveLoad(*buffer_sizes_index_.at(exemplar_cell), load_opt) - && load_opt->slack() - buffer_delay >= slack_threshold) { + && load_opt->slack() - cell_delay >= slack_threshold) { BnetPtr z = make_shared(BnetType::buffer, load_opt->location(), - buffer_cell, + exemplar_cell, load_opt, corner_, resizer_, estimate_parasitics_); - z->setSlack(load_opt->slack() - buffer_delay); - z->setSlackTransition(load_opt->slackTransition()); - z->setDelay(buffer_delay); + z->setSlack(load_opt->slack() - cell_delay); + // Inverter exemplar: flip upstream transition to match ctor parity + // flip. + z->setSlackTransition( + exemplar_is_inv ? flipRiseFallBoth(load_opt->slackTransition()) + : load_opt->slackTransition()); + z->setDelay(cell_delay); if (z->fitsEnvelope(assured_envelope)) { best_area = load_opt->area(); best_option = z; @@ -1486,6 +1755,9 @@ void Rebuffer::init() sta_->checkFanoutPreamble(); resizer_->findFastBuffers(); + if (resizer_->isInverterPairEnabled()) { + resizer_->findInverters(); + } buffer_sizes_.clear(); for (auto cell : resizer_->buffer_fast_sizes_) { @@ -1493,6 +1765,8 @@ void Rebuffer::init() cell->bufferPorts(in, out); buffer_sizes_.push_back(BufferSize{ .cell = cell, + .in = in, + .out = out, .intrinsic_delay = FixedDelay(out->intrinsicDelay(sta_), resizer_), .margined_max_cap = 0.0f, .driver_resistance = out->driveResistance(), @@ -1503,10 +1777,32 @@ void Rebuffer::init() return bufferCin(a.cell) < bufferCin(b.cell); }); + inverter_sizes_.clear(); + if (resizer_->isInverterPairEnabled()) { + for (sta::LibertyCell* inv : resizer_->inverterCells()) { + sta::LibertyPort *in, *out; + inv->bufferPorts(in, out); + if (in == nullptr || out == nullptr) { + continue; + } + inverter_sizes_.push_back(BufferSize{ + .cell = inv, + .in = in, + .out = out, + .intrinsic_delay = FixedDelay(out->intrinsicDelay(sta_), resizer_), + .margined_max_cap = 0.0f, + .driver_resistance = out->driveResistance(), + }); + } + } + buffer_sizes_index_.clear(); for (auto& size : buffer_sizes_) { buffer_sizes_index_[size.cell] = &size; } + for (auto& size : inverter_sizes_) { + buffer_sizes_index_[size.cell] = &size; + } } void Rebuffer::initOnCorner(sta::Scene* corner) @@ -1589,18 +1885,22 @@ float Rebuffer::findBufferLoadLimitImpliedByDriverSlew(sta::LibertyCell* cell) // Needs to be called when the margins (slew_margin_, cap_margin_) change void Rebuffer::characterizeBufferLimits() { - for (auto& size : buffer_sizes_) { - sta::LibertyPort *in, *out; - size.cell->bufferPorts(in, out); + auto characterize = [&](std::vector& sizes) { + for (auto& size : sizes) { + sta::LibertyPort *in, *out; + size.cell->bufferPorts(in, out); - bool cap_limit_exists; - float cap_limit; - out->capacitanceLimit(max_, cap_limit, cap_limit_exists); + bool cap_limit_exists; + float cap_limit; + out->capacitanceLimit(max_, cap_limit, cap_limit_exists); - size.margined_max_cap - = std::min(cap_limit_exists ? maxCapMargined(cap_limit) : sta::INF, - findBufferLoadLimitImpliedByDriverSlew(size.cell)); - } + size.margined_max_cap + = std::min(cap_limit_exists ? maxCapMargined(cap_limit) : sta::INF, + findBufferLoadLimitImpliedByDriverSlew(size.cell)); + } + }; + characterize(buffer_sizes_); + characterize(inverter_sizes_); } static bool isPortBuffer(sta::dbNetwork* network, sta::Instance* inst) diff --git a/src/rsz/src/Rebuffer.hh b/src/rsz/src/Rebuffer.hh index 7acfe1ad130..cf4f494e4d6 100644 --- a/src/rsz/src/Rebuffer.hh +++ b/src/rsz/src/Rebuffer.hh @@ -98,6 +98,13 @@ class Rebuffer : public sta::dbStaState BufferedNetPtr assured_opt, int level); + // Inverter pair + void insertInverterCandidates(BufferedNetSeq& opts, int level); + void prunePerParityFrontier(BufferedNetSeq& opts); + void insertInverterOptions(BufferedNetSeq& opts, int level); + bool invPairActive() const; + bool isRootParityAccepted(const BufferedNetPtr& opt) const; + std::vector collectImportedTreeBufferInstances( sta::Pin* drvr_pin, const BufferedNetPtr& imported_tree); @@ -125,6 +132,8 @@ class Rebuffer : public sta::dbStaState struct BufferSize { sta::LibertyCell* cell; + sta::LibertyPort* in; + sta::LibertyPort* out; FixedDelay intrinsic_delay; float margined_max_cap; float driver_resistance; @@ -144,6 +153,9 @@ class Rebuffer : public sta::dbStaState std::vector buffer_sizes_; std::map buffer_sizes_index_; + // Inverters characterized like buffers (only when inv-pair is enabled) so the + // area-recovery exemplar path uses one drive check for both. + std::vector inverter_sizes_; sta::Pin* pin_ = nullptr; float fanout_limit_ = 0.0f; diff --git a/src/rsz/src/Resizer.cc b/src/rsz/src/Resizer.cc index f1226ca0505..d44e44db5bd 100644 --- a/src/rsz/src/Resizer.cc +++ b/src/rsz/src/Resizer.cc @@ -2095,6 +2095,46 @@ void Resizer::getBufferList(sta::LibertyCellSeq& buffer_list) } } +// Collect all link-cell inverters. Curation/pruning of the candidate set +// is deferred (see PR Future-work); for now every usable inverter is offered. +void Resizer::findInverters() +{ + if (!inverter_cells_.empty()) { + return; + } + sta::LibertyLibraryIterator* lib_iter = network_->libertyLibraryIterator(); + while (lib_iter->hasNext()) { + sta::LibertyLibrary* lib = lib_iter->next(); + sta::LibertyCellIterator cell_iter(lib); + while (cell_iter.hasNext()) { + sta::LibertyCell* cell = cell_iter.next(); + if (!cell->isInverter()) { + continue; + } + if (dontUse(cell) || cell->alwaysOn() || cell->isIsolationCell() + || cell->isLevelShifter() || !isLinkCell(cell)) { + continue; + } + if (!db_network_->staToDb(cell)) { + continue; + } + inverter_cells_.emplace_back(cell); + } + } + delete lib_iter; + debugPrint(logger_, + RSZ, + "rebuffer", + 1, + "Found {} inverter cells for inverter-pair insertion.", + inverter_cells_.size()); +} + +void Resizer::setInverterPairEnabled(bool enable) +{ + inverter_pair_enabled_ = enable; +} + // Filter equivalent cells based on the following liberty attributes: // - Footprint (Optional - Honored if enforced by user): Cells with the // same footprint have the same layout boundary. @@ -3328,6 +3368,7 @@ void Resizer::setDontUse(sta::LibertyCell* cell, bool dont_use) buffer_fast_sizes_.clear(); buffer_lowest_drive_ = nullptr; swappable_cells_cache_.clear(); + inverter_cells_.clear(); } void Resizer::resetDontUse() @@ -3339,6 +3380,7 @@ void Resizer::resetDontUse() buffer_fast_sizes_.clear(); buffer_lowest_drive_ = nullptr; swappable_cells_cache_.clear(); + inverter_cells_.clear(); // recopy in liberty cell dont uses copyDontUseFromLiberty(); diff --git a/src/rsz/src/Resizer.i b/src/rsz/src/Resizer.i index eee43d2f8fc..c43f36c531e 100644 --- a/src/rsz/src/Resizer.i +++ b/src/rsz/src/Resizer.i @@ -187,6 +187,14 @@ reset_dont_use() resizer->resetDontUse(); } +void +set_enable_inverter_pair(bool enable) +{ + ensureLinked(); + Resizer *resizer = getResizer(); + resizer->setInverterPairEnabled(enable); +} + void set_dont_touch_instance(Instance *inst, bool dont_touch) diff --git a/src/rsz/src/Resizer.tcl b/src/rsz/src/Resizer.tcl index c530393dbf8..661a02bddec 100644 --- a/src/rsz/src/Resizer.tcl +++ b/src/rsz/src/Resizer.tcl @@ -44,6 +44,19 @@ proc reset_dont_use { args } { rsz::reset_dont_use } +sta::define_cmd_args "enable_inverter_pair" {[-disable]} ;# checker off + +proc enable_inverter_pair { args } { + sta::parse_key_args "enable_inverter_pair" args \ + keys {} flags {-disable} ;# checker off + sta::check_argc_eq0 "enable_inverter_pair" $args + set enable 1 + if { [info exists flags(-disable)] } { + set enable 0 + } + rsz::set_enable_inverter_pair $enable +} + proc set_dont_use_cmd { cmd cmd_args dont_use } { sta::check_argc_eq1 $cmd $cmd_args foreach lib_cell [sta::get_lib_cells_arg $cmd [lindex $cmd_args 0] sta::sta_warn] { diff --git a/src/rsz/test/BUILD b/src/rsz/test/BUILD index 14bf1dfc021..ea6ed2f4767 100644 --- a/src/rsz/test/BUILD +++ b/src/rsz/test/BUILD @@ -45,6 +45,7 @@ TESTS = [ "pinswap_hier", "swap_pins_dont_touch", "pin_swap1", + "inv_pair1", "rebuffer1", "rebuffer1_hier", "recover_power_verbose", diff --git a/src/rsz/test/CMakeLists.txt b/src/rsz/test/CMakeLists.txt index ad40b691b57..24ad064da80 100644 --- a/src/rsz/test/CMakeLists.txt +++ b/src/rsz/test/CMakeLists.txt @@ -36,6 +36,7 @@ or_integration_tests( pinswap_flat pinswap_hier swap_pins_dont_touch + inv_pair1 rebuffer1 rebuffer1_hier recover_power_verbose diff --git a/src/rsz/test/inv_pair1.def b/src/rsz/test/inv_pair1.def new file mode 100644 index 00000000000..1c69fad8e4c --- /dev/null +++ b/src/rsz/test/inv_pair1.def @@ -0,0 +1,2197 @@ +VERSION 5.8 ; +DIVIDERCHAR "/" ; +BUSBITCHARS "[]" ; +DESIGN inv_pair1 ; +UNITS DISTANCE MICRONS 1000 ; +DIEAREA ( 0 0 ) ( 480000 480000 ) ; +ROW ROW_0 asap7sc7p5t 2052 2160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1 asap7sc7p5t 2052 2430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_2 asap7sc7p5t 2052 2700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_3 asap7sc7p5t 2052 2970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_4 asap7sc7p5t 2052 3240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_5 asap7sc7p5t 2052 3510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_6 asap7sc7p5t 2052 3780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_7 asap7sc7p5t 2052 4050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_8 asap7sc7p5t 2052 4320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_9 asap7sc7p5t 2052 4590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_10 asap7sc7p5t 2052 4860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_11 asap7sc7p5t 2052 5130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_12 asap7sc7p5t 2052 5400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_13 asap7sc7p5t 2052 5670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_14 asap7sc7p5t 2052 5940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_15 asap7sc7p5t 2052 6210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_16 asap7sc7p5t 2052 6480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_17 asap7sc7p5t 2052 6750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_18 asap7sc7p5t 2052 7020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_19 asap7sc7p5t 2052 7290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_20 asap7sc7p5t 2052 7560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_21 asap7sc7p5t 2052 7830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_22 asap7sc7p5t 2052 8100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_23 asap7sc7p5t 2052 8370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_24 asap7sc7p5t 2052 8640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_25 asap7sc7p5t 2052 8910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_26 asap7sc7p5t 2052 9180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_27 asap7sc7p5t 2052 9450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_28 asap7sc7p5t 2052 9720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_29 asap7sc7p5t 2052 9990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_30 asap7sc7p5t 2052 10260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_31 asap7sc7p5t 2052 10530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_32 asap7sc7p5t 2052 10800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_33 asap7sc7p5t 2052 11070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_34 asap7sc7p5t 2052 11340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_35 asap7sc7p5t 2052 11610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_36 asap7sc7p5t 2052 11880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_37 asap7sc7p5t 2052 12150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_38 asap7sc7p5t 2052 12420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_39 asap7sc7p5t 2052 12690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_40 asap7sc7p5t 2052 12960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_41 asap7sc7p5t 2052 13230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_42 asap7sc7p5t 2052 13500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_43 asap7sc7p5t 2052 13770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_44 asap7sc7p5t 2052 14040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_45 asap7sc7p5t 2052 14310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_46 asap7sc7p5t 2052 14580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_47 asap7sc7p5t 2052 14850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_48 asap7sc7p5t 2052 15120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_49 asap7sc7p5t 2052 15390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_50 asap7sc7p5t 2052 15660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_51 asap7sc7p5t 2052 15930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_52 asap7sc7p5t 2052 16200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_53 asap7sc7p5t 2052 16470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_54 asap7sc7p5t 2052 16740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_55 asap7sc7p5t 2052 17010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_56 asap7sc7p5t 2052 17280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_57 asap7sc7p5t 2052 17550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_58 asap7sc7p5t 2052 17820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_59 asap7sc7p5t 2052 18090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_60 asap7sc7p5t 2052 18360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_61 asap7sc7p5t 2052 18630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_62 asap7sc7p5t 2052 18900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_63 asap7sc7p5t 2052 19170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_64 asap7sc7p5t 2052 19440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_65 asap7sc7p5t 2052 19710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_66 asap7sc7p5t 2052 19980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_67 asap7sc7p5t 2052 20250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_68 asap7sc7p5t 2052 20520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_69 asap7sc7p5t 2052 20790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_70 asap7sc7p5t 2052 21060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_71 asap7sc7p5t 2052 21330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_72 asap7sc7p5t 2052 21600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_73 asap7sc7p5t 2052 21870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_74 asap7sc7p5t 2052 22140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_75 asap7sc7p5t 2052 22410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_76 asap7sc7p5t 2052 22680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_77 asap7sc7p5t 2052 22950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_78 asap7sc7p5t 2052 23220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_79 asap7sc7p5t 2052 23490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_80 asap7sc7p5t 2052 23760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_81 asap7sc7p5t 2052 24030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_82 asap7sc7p5t 2052 24300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_83 asap7sc7p5t 2052 24570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_84 asap7sc7p5t 2052 24840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_85 asap7sc7p5t 2052 25110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_86 asap7sc7p5t 2052 25380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_87 asap7sc7p5t 2052 25650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_88 asap7sc7p5t 2052 25920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_89 asap7sc7p5t 2052 26190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_90 asap7sc7p5t 2052 26460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_91 asap7sc7p5t 2052 26730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_92 asap7sc7p5t 2052 27000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_93 asap7sc7p5t 2052 27270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_94 asap7sc7p5t 2052 27540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_95 asap7sc7p5t 2052 27810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_96 asap7sc7p5t 2052 28080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_97 asap7sc7p5t 2052 28350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_98 asap7sc7p5t 2052 28620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_99 asap7sc7p5t 2052 28890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_100 asap7sc7p5t 2052 29160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_101 asap7sc7p5t 2052 29430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_102 asap7sc7p5t 2052 29700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_103 asap7sc7p5t 2052 29970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_104 asap7sc7p5t 2052 30240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_105 asap7sc7p5t 2052 30510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_106 asap7sc7p5t 2052 30780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_107 asap7sc7p5t 2052 31050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_108 asap7sc7p5t 2052 31320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_109 asap7sc7p5t 2052 31590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_110 asap7sc7p5t 2052 31860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_111 asap7sc7p5t 2052 32130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_112 asap7sc7p5t 2052 32400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_113 asap7sc7p5t 2052 32670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_114 asap7sc7p5t 2052 32940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_115 asap7sc7p5t 2052 33210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_116 asap7sc7p5t 2052 33480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_117 asap7sc7p5t 2052 33750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_118 asap7sc7p5t 2052 34020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_119 asap7sc7p5t 2052 34290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_120 asap7sc7p5t 2052 34560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_121 asap7sc7p5t 2052 34830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_122 asap7sc7p5t 2052 35100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_123 asap7sc7p5t 2052 35370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_124 asap7sc7p5t 2052 35640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_125 asap7sc7p5t 2052 35910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_126 asap7sc7p5t 2052 36180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_127 asap7sc7p5t 2052 36450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_128 asap7sc7p5t 2052 36720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_129 asap7sc7p5t 2052 36990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_130 asap7sc7p5t 2052 37260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_131 asap7sc7p5t 2052 37530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_132 asap7sc7p5t 2052 37800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_133 asap7sc7p5t 2052 38070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_134 asap7sc7p5t 2052 38340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_135 asap7sc7p5t 2052 38610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_136 asap7sc7p5t 2052 38880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_137 asap7sc7p5t 2052 39150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_138 asap7sc7p5t 2052 39420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_139 asap7sc7p5t 2052 39690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_140 asap7sc7p5t 2052 39960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_141 asap7sc7p5t 2052 40230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_142 asap7sc7p5t 2052 40500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_143 asap7sc7p5t 2052 40770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_144 asap7sc7p5t 2052 41040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_145 asap7sc7p5t 2052 41310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_146 asap7sc7p5t 2052 41580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_147 asap7sc7p5t 2052 41850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_148 asap7sc7p5t 2052 42120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_149 asap7sc7p5t 2052 42390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_150 asap7sc7p5t 2052 42660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_151 asap7sc7p5t 2052 42930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_152 asap7sc7p5t 2052 43200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_153 asap7sc7p5t 2052 43470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_154 asap7sc7p5t 2052 43740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_155 asap7sc7p5t 2052 44010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_156 asap7sc7p5t 2052 44280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_157 asap7sc7p5t 2052 44550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_158 asap7sc7p5t 2052 44820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_159 asap7sc7p5t 2052 45090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_160 asap7sc7p5t 2052 45360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_161 asap7sc7p5t 2052 45630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_162 asap7sc7p5t 2052 45900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_163 asap7sc7p5t 2052 46170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_164 asap7sc7p5t 2052 46440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_165 asap7sc7p5t 2052 46710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_166 asap7sc7p5t 2052 46980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_167 asap7sc7p5t 2052 47250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_168 asap7sc7p5t 2052 47520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_169 asap7sc7p5t 2052 47790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_170 asap7sc7p5t 2052 48060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_171 asap7sc7p5t 2052 48330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_172 asap7sc7p5t 2052 48600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_173 asap7sc7p5t 2052 48870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_174 asap7sc7p5t 2052 49140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_175 asap7sc7p5t 2052 49410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_176 asap7sc7p5t 2052 49680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_177 asap7sc7p5t 2052 49950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_178 asap7sc7p5t 2052 50220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_179 asap7sc7p5t 2052 50490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_180 asap7sc7p5t 2052 50760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_181 asap7sc7p5t 2052 51030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_182 asap7sc7p5t 2052 51300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_183 asap7sc7p5t 2052 51570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_184 asap7sc7p5t 2052 51840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_185 asap7sc7p5t 2052 52110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_186 asap7sc7p5t 2052 52380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_187 asap7sc7p5t 2052 52650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_188 asap7sc7p5t 2052 52920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_189 asap7sc7p5t 2052 53190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_190 asap7sc7p5t 2052 53460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_191 asap7sc7p5t 2052 53730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_192 asap7sc7p5t 2052 54000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_193 asap7sc7p5t 2052 54270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_194 asap7sc7p5t 2052 54540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_195 asap7sc7p5t 2052 54810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_196 asap7sc7p5t 2052 55080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_197 asap7sc7p5t 2052 55350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_198 asap7sc7p5t 2052 55620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_199 asap7sc7p5t 2052 55890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_200 asap7sc7p5t 2052 56160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_201 asap7sc7p5t 2052 56430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_202 asap7sc7p5t 2052 56700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_203 asap7sc7p5t 2052 56970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_204 asap7sc7p5t 2052 57240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_205 asap7sc7p5t 2052 57510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_206 asap7sc7p5t 2052 57780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_207 asap7sc7p5t 2052 58050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_208 asap7sc7p5t 2052 58320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_209 asap7sc7p5t 2052 58590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_210 asap7sc7p5t 2052 58860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_211 asap7sc7p5t 2052 59130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_212 asap7sc7p5t 2052 59400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_213 asap7sc7p5t 2052 59670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_214 asap7sc7p5t 2052 59940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_215 asap7sc7p5t 2052 60210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_216 asap7sc7p5t 2052 60480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_217 asap7sc7p5t 2052 60750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_218 asap7sc7p5t 2052 61020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_219 asap7sc7p5t 2052 61290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_220 asap7sc7p5t 2052 61560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_221 asap7sc7p5t 2052 61830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_222 asap7sc7p5t 2052 62100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_223 asap7sc7p5t 2052 62370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_224 asap7sc7p5t 2052 62640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_225 asap7sc7p5t 2052 62910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_226 asap7sc7p5t 2052 63180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_227 asap7sc7p5t 2052 63450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_228 asap7sc7p5t 2052 63720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_229 asap7sc7p5t 2052 63990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_230 asap7sc7p5t 2052 64260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_231 asap7sc7p5t 2052 64530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_232 asap7sc7p5t 2052 64800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_233 asap7sc7p5t 2052 65070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_234 asap7sc7p5t 2052 65340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_235 asap7sc7p5t 2052 65610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_236 asap7sc7p5t 2052 65880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_237 asap7sc7p5t 2052 66150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_238 asap7sc7p5t 2052 66420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_239 asap7sc7p5t 2052 66690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_240 asap7sc7p5t 2052 66960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_241 asap7sc7p5t 2052 67230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_242 asap7sc7p5t 2052 67500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_243 asap7sc7p5t 2052 67770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_244 asap7sc7p5t 2052 68040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_245 asap7sc7p5t 2052 68310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_246 asap7sc7p5t 2052 68580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_247 asap7sc7p5t 2052 68850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_248 asap7sc7p5t 2052 69120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_249 asap7sc7p5t 2052 69390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_250 asap7sc7p5t 2052 69660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_251 asap7sc7p5t 2052 69930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_252 asap7sc7p5t 2052 70200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_253 asap7sc7p5t 2052 70470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_254 asap7sc7p5t 2052 70740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_255 asap7sc7p5t 2052 71010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_256 asap7sc7p5t 2052 71280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_257 asap7sc7p5t 2052 71550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_258 asap7sc7p5t 2052 71820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_259 asap7sc7p5t 2052 72090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_260 asap7sc7p5t 2052 72360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_261 asap7sc7p5t 2052 72630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_262 asap7sc7p5t 2052 72900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_263 asap7sc7p5t 2052 73170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_264 asap7sc7p5t 2052 73440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_265 asap7sc7p5t 2052 73710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_266 asap7sc7p5t 2052 73980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_267 asap7sc7p5t 2052 74250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_268 asap7sc7p5t 2052 74520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_269 asap7sc7p5t 2052 74790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_270 asap7sc7p5t 2052 75060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_271 asap7sc7p5t 2052 75330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_272 asap7sc7p5t 2052 75600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_273 asap7sc7p5t 2052 75870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_274 asap7sc7p5t 2052 76140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_275 asap7sc7p5t 2052 76410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_276 asap7sc7p5t 2052 76680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_277 asap7sc7p5t 2052 76950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_278 asap7sc7p5t 2052 77220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_279 asap7sc7p5t 2052 77490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_280 asap7sc7p5t 2052 77760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_281 asap7sc7p5t 2052 78030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_282 asap7sc7p5t 2052 78300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_283 asap7sc7p5t 2052 78570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_284 asap7sc7p5t 2052 78840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_285 asap7sc7p5t 2052 79110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_286 asap7sc7p5t 2052 79380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_287 asap7sc7p5t 2052 79650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_288 asap7sc7p5t 2052 79920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_289 asap7sc7p5t 2052 80190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_290 asap7sc7p5t 2052 80460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_291 asap7sc7p5t 2052 80730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_292 asap7sc7p5t 2052 81000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_293 asap7sc7p5t 2052 81270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_294 asap7sc7p5t 2052 81540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_295 asap7sc7p5t 2052 81810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_296 asap7sc7p5t 2052 82080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_297 asap7sc7p5t 2052 82350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_298 asap7sc7p5t 2052 82620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_299 asap7sc7p5t 2052 82890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_300 asap7sc7p5t 2052 83160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_301 asap7sc7p5t 2052 83430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_302 asap7sc7p5t 2052 83700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_303 asap7sc7p5t 2052 83970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_304 asap7sc7p5t 2052 84240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_305 asap7sc7p5t 2052 84510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_306 asap7sc7p5t 2052 84780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_307 asap7sc7p5t 2052 85050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_308 asap7sc7p5t 2052 85320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_309 asap7sc7p5t 2052 85590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_310 asap7sc7p5t 2052 85860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_311 asap7sc7p5t 2052 86130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_312 asap7sc7p5t 2052 86400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_313 asap7sc7p5t 2052 86670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_314 asap7sc7p5t 2052 86940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_315 asap7sc7p5t 2052 87210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_316 asap7sc7p5t 2052 87480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_317 asap7sc7p5t 2052 87750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_318 asap7sc7p5t 2052 88020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_319 asap7sc7p5t 2052 88290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_320 asap7sc7p5t 2052 88560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_321 asap7sc7p5t 2052 88830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_322 asap7sc7p5t 2052 89100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_323 asap7sc7p5t 2052 89370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_324 asap7sc7p5t 2052 89640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_325 asap7sc7p5t 2052 89910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_326 asap7sc7p5t 2052 90180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_327 asap7sc7p5t 2052 90450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_328 asap7sc7p5t 2052 90720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_329 asap7sc7p5t 2052 90990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_330 asap7sc7p5t 2052 91260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_331 asap7sc7p5t 2052 91530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_332 asap7sc7p5t 2052 91800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_333 asap7sc7p5t 2052 92070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_334 asap7sc7p5t 2052 92340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_335 asap7sc7p5t 2052 92610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_336 asap7sc7p5t 2052 92880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_337 asap7sc7p5t 2052 93150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_338 asap7sc7p5t 2052 93420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_339 asap7sc7p5t 2052 93690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_340 asap7sc7p5t 2052 93960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_341 asap7sc7p5t 2052 94230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_342 asap7sc7p5t 2052 94500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_343 asap7sc7p5t 2052 94770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_344 asap7sc7p5t 2052 95040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_345 asap7sc7p5t 2052 95310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_346 asap7sc7p5t 2052 95580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_347 asap7sc7p5t 2052 95850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_348 asap7sc7p5t 2052 96120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_349 asap7sc7p5t 2052 96390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_350 asap7sc7p5t 2052 96660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_351 asap7sc7p5t 2052 96930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_352 asap7sc7p5t 2052 97200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_353 asap7sc7p5t 2052 97470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_354 asap7sc7p5t 2052 97740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_355 asap7sc7p5t 2052 98010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_356 asap7sc7p5t 2052 98280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_357 asap7sc7p5t 2052 98550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_358 asap7sc7p5t 2052 98820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_359 asap7sc7p5t 2052 99090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_360 asap7sc7p5t 2052 99360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_361 asap7sc7p5t 2052 99630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_362 asap7sc7p5t 2052 99900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_363 asap7sc7p5t 2052 100170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_364 asap7sc7p5t 2052 100440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_365 asap7sc7p5t 2052 100710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_366 asap7sc7p5t 2052 100980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_367 asap7sc7p5t 2052 101250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_368 asap7sc7p5t 2052 101520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_369 asap7sc7p5t 2052 101790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_370 asap7sc7p5t 2052 102060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_371 asap7sc7p5t 2052 102330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_372 asap7sc7p5t 2052 102600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_373 asap7sc7p5t 2052 102870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_374 asap7sc7p5t 2052 103140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_375 asap7sc7p5t 2052 103410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_376 asap7sc7p5t 2052 103680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_377 asap7sc7p5t 2052 103950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_378 asap7sc7p5t 2052 104220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_379 asap7sc7p5t 2052 104490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_380 asap7sc7p5t 2052 104760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_381 asap7sc7p5t 2052 105030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_382 asap7sc7p5t 2052 105300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_383 asap7sc7p5t 2052 105570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_384 asap7sc7p5t 2052 105840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_385 asap7sc7p5t 2052 106110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_386 asap7sc7p5t 2052 106380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_387 asap7sc7p5t 2052 106650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_388 asap7sc7p5t 2052 106920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_389 asap7sc7p5t 2052 107190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_390 asap7sc7p5t 2052 107460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_391 asap7sc7p5t 2052 107730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_392 asap7sc7p5t 2052 108000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_393 asap7sc7p5t 2052 108270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_394 asap7sc7p5t 2052 108540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_395 asap7sc7p5t 2052 108810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_396 asap7sc7p5t 2052 109080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_397 asap7sc7p5t 2052 109350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_398 asap7sc7p5t 2052 109620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_399 asap7sc7p5t 2052 109890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_400 asap7sc7p5t 2052 110160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_401 asap7sc7p5t 2052 110430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_402 asap7sc7p5t 2052 110700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_403 asap7sc7p5t 2052 110970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_404 asap7sc7p5t 2052 111240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_405 asap7sc7p5t 2052 111510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_406 asap7sc7p5t 2052 111780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_407 asap7sc7p5t 2052 112050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_408 asap7sc7p5t 2052 112320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_409 asap7sc7p5t 2052 112590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_410 asap7sc7p5t 2052 112860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_411 asap7sc7p5t 2052 113130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_412 asap7sc7p5t 2052 113400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_413 asap7sc7p5t 2052 113670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_414 asap7sc7p5t 2052 113940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_415 asap7sc7p5t 2052 114210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_416 asap7sc7p5t 2052 114480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_417 asap7sc7p5t 2052 114750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_418 asap7sc7p5t 2052 115020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_419 asap7sc7p5t 2052 115290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_420 asap7sc7p5t 2052 115560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_421 asap7sc7p5t 2052 115830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_422 asap7sc7p5t 2052 116100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_423 asap7sc7p5t 2052 116370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_424 asap7sc7p5t 2052 116640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_425 asap7sc7p5t 2052 116910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_426 asap7sc7p5t 2052 117180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_427 asap7sc7p5t 2052 117450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_428 asap7sc7p5t 2052 117720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_429 asap7sc7p5t 2052 117990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_430 asap7sc7p5t 2052 118260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_431 asap7sc7p5t 2052 118530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_432 asap7sc7p5t 2052 118800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_433 asap7sc7p5t 2052 119070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_434 asap7sc7p5t 2052 119340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_435 asap7sc7p5t 2052 119610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_436 asap7sc7p5t 2052 119880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_437 asap7sc7p5t 2052 120150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_438 asap7sc7p5t 2052 120420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_439 asap7sc7p5t 2052 120690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_440 asap7sc7p5t 2052 120960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_441 asap7sc7p5t 2052 121230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_442 asap7sc7p5t 2052 121500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_443 asap7sc7p5t 2052 121770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_444 asap7sc7p5t 2052 122040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_445 asap7sc7p5t 2052 122310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_446 asap7sc7p5t 2052 122580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_447 asap7sc7p5t 2052 122850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_448 asap7sc7p5t 2052 123120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_449 asap7sc7p5t 2052 123390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_450 asap7sc7p5t 2052 123660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_451 asap7sc7p5t 2052 123930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_452 asap7sc7p5t 2052 124200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_453 asap7sc7p5t 2052 124470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_454 asap7sc7p5t 2052 124740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_455 asap7sc7p5t 2052 125010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_456 asap7sc7p5t 2052 125280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_457 asap7sc7p5t 2052 125550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_458 asap7sc7p5t 2052 125820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_459 asap7sc7p5t 2052 126090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_460 asap7sc7p5t 2052 126360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_461 asap7sc7p5t 2052 126630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_462 asap7sc7p5t 2052 126900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_463 asap7sc7p5t 2052 127170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_464 asap7sc7p5t 2052 127440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_465 asap7sc7p5t 2052 127710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_466 asap7sc7p5t 2052 127980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_467 asap7sc7p5t 2052 128250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_468 asap7sc7p5t 2052 128520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_469 asap7sc7p5t 2052 128790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_470 asap7sc7p5t 2052 129060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_471 asap7sc7p5t 2052 129330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_472 asap7sc7p5t 2052 129600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_473 asap7sc7p5t 2052 129870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_474 asap7sc7p5t 2052 130140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_475 asap7sc7p5t 2052 130410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_476 asap7sc7p5t 2052 130680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_477 asap7sc7p5t 2052 130950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_478 asap7sc7p5t 2052 131220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_479 asap7sc7p5t 2052 131490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_480 asap7sc7p5t 2052 131760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_481 asap7sc7p5t 2052 132030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_482 asap7sc7p5t 2052 132300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_483 asap7sc7p5t 2052 132570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_484 asap7sc7p5t 2052 132840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_485 asap7sc7p5t 2052 133110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_486 asap7sc7p5t 2052 133380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_487 asap7sc7p5t 2052 133650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_488 asap7sc7p5t 2052 133920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_489 asap7sc7p5t 2052 134190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_490 asap7sc7p5t 2052 134460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_491 asap7sc7p5t 2052 134730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_492 asap7sc7p5t 2052 135000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_493 asap7sc7p5t 2052 135270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_494 asap7sc7p5t 2052 135540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_495 asap7sc7p5t 2052 135810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_496 asap7sc7p5t 2052 136080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_497 asap7sc7p5t 2052 136350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_498 asap7sc7p5t 2052 136620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_499 asap7sc7p5t 2052 136890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_500 asap7sc7p5t 2052 137160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_501 asap7sc7p5t 2052 137430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_502 asap7sc7p5t 2052 137700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_503 asap7sc7p5t 2052 137970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_504 asap7sc7p5t 2052 138240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_505 asap7sc7p5t 2052 138510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_506 asap7sc7p5t 2052 138780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_507 asap7sc7p5t 2052 139050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_508 asap7sc7p5t 2052 139320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_509 asap7sc7p5t 2052 139590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_510 asap7sc7p5t 2052 139860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_511 asap7sc7p5t 2052 140130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_512 asap7sc7p5t 2052 140400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_513 asap7sc7p5t 2052 140670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_514 asap7sc7p5t 2052 140940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_515 asap7sc7p5t 2052 141210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_516 asap7sc7p5t 2052 141480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_517 asap7sc7p5t 2052 141750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_518 asap7sc7p5t 2052 142020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_519 asap7sc7p5t 2052 142290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_520 asap7sc7p5t 2052 142560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_521 asap7sc7p5t 2052 142830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_522 asap7sc7p5t 2052 143100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_523 asap7sc7p5t 2052 143370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_524 asap7sc7p5t 2052 143640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_525 asap7sc7p5t 2052 143910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_526 asap7sc7p5t 2052 144180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_527 asap7sc7p5t 2052 144450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_528 asap7sc7p5t 2052 144720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_529 asap7sc7p5t 2052 144990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_530 asap7sc7p5t 2052 145260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_531 asap7sc7p5t 2052 145530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_532 asap7sc7p5t 2052 145800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_533 asap7sc7p5t 2052 146070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_534 asap7sc7p5t 2052 146340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_535 asap7sc7p5t 2052 146610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_536 asap7sc7p5t 2052 146880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_537 asap7sc7p5t 2052 147150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_538 asap7sc7p5t 2052 147420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_539 asap7sc7p5t 2052 147690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_540 asap7sc7p5t 2052 147960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_541 asap7sc7p5t 2052 148230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_542 asap7sc7p5t 2052 148500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_543 asap7sc7p5t 2052 148770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_544 asap7sc7p5t 2052 149040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_545 asap7sc7p5t 2052 149310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_546 asap7sc7p5t 2052 149580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_547 asap7sc7p5t 2052 149850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_548 asap7sc7p5t 2052 150120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_549 asap7sc7p5t 2052 150390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_550 asap7sc7p5t 2052 150660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_551 asap7sc7p5t 2052 150930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_552 asap7sc7p5t 2052 151200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_553 asap7sc7p5t 2052 151470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_554 asap7sc7p5t 2052 151740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_555 asap7sc7p5t 2052 152010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_556 asap7sc7p5t 2052 152280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_557 asap7sc7p5t 2052 152550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_558 asap7sc7p5t 2052 152820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_559 asap7sc7p5t 2052 153090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_560 asap7sc7p5t 2052 153360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_561 asap7sc7p5t 2052 153630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_562 asap7sc7p5t 2052 153900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_563 asap7sc7p5t 2052 154170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_564 asap7sc7p5t 2052 154440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_565 asap7sc7p5t 2052 154710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_566 asap7sc7p5t 2052 154980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_567 asap7sc7p5t 2052 155250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_568 asap7sc7p5t 2052 155520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_569 asap7sc7p5t 2052 155790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_570 asap7sc7p5t 2052 156060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_571 asap7sc7p5t 2052 156330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_572 asap7sc7p5t 2052 156600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_573 asap7sc7p5t 2052 156870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_574 asap7sc7p5t 2052 157140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_575 asap7sc7p5t 2052 157410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_576 asap7sc7p5t 2052 157680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_577 asap7sc7p5t 2052 157950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_578 asap7sc7p5t 2052 158220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_579 asap7sc7p5t 2052 158490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_580 asap7sc7p5t 2052 158760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_581 asap7sc7p5t 2052 159030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_582 asap7sc7p5t 2052 159300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_583 asap7sc7p5t 2052 159570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_584 asap7sc7p5t 2052 159840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_585 asap7sc7p5t 2052 160110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_586 asap7sc7p5t 2052 160380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_587 asap7sc7p5t 2052 160650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_588 asap7sc7p5t 2052 160920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_589 asap7sc7p5t 2052 161190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_590 asap7sc7p5t 2052 161460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_591 asap7sc7p5t 2052 161730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_592 asap7sc7p5t 2052 162000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_593 asap7sc7p5t 2052 162270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_594 asap7sc7p5t 2052 162540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_595 asap7sc7p5t 2052 162810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_596 asap7sc7p5t 2052 163080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_597 asap7sc7p5t 2052 163350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_598 asap7sc7p5t 2052 163620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_599 asap7sc7p5t 2052 163890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_600 asap7sc7p5t 2052 164160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_601 asap7sc7p5t 2052 164430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_602 asap7sc7p5t 2052 164700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_603 asap7sc7p5t 2052 164970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_604 asap7sc7p5t 2052 165240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_605 asap7sc7p5t 2052 165510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_606 asap7sc7p5t 2052 165780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_607 asap7sc7p5t 2052 166050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_608 asap7sc7p5t 2052 166320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_609 asap7sc7p5t 2052 166590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_610 asap7sc7p5t 2052 166860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_611 asap7sc7p5t 2052 167130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_612 asap7sc7p5t 2052 167400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_613 asap7sc7p5t 2052 167670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_614 asap7sc7p5t 2052 167940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_615 asap7sc7p5t 2052 168210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_616 asap7sc7p5t 2052 168480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_617 asap7sc7p5t 2052 168750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_618 asap7sc7p5t 2052 169020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_619 asap7sc7p5t 2052 169290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_620 asap7sc7p5t 2052 169560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_621 asap7sc7p5t 2052 169830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_622 asap7sc7p5t 2052 170100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_623 asap7sc7p5t 2052 170370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_624 asap7sc7p5t 2052 170640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_625 asap7sc7p5t 2052 170910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_626 asap7sc7p5t 2052 171180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_627 asap7sc7p5t 2052 171450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_628 asap7sc7p5t 2052 171720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_629 asap7sc7p5t 2052 171990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_630 asap7sc7p5t 2052 172260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_631 asap7sc7p5t 2052 172530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_632 asap7sc7p5t 2052 172800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_633 asap7sc7p5t 2052 173070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_634 asap7sc7p5t 2052 173340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_635 asap7sc7p5t 2052 173610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_636 asap7sc7p5t 2052 173880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_637 asap7sc7p5t 2052 174150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_638 asap7sc7p5t 2052 174420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_639 asap7sc7p5t 2052 174690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_640 asap7sc7p5t 2052 174960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_641 asap7sc7p5t 2052 175230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_642 asap7sc7p5t 2052 175500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_643 asap7sc7p5t 2052 175770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_644 asap7sc7p5t 2052 176040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_645 asap7sc7p5t 2052 176310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_646 asap7sc7p5t 2052 176580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_647 asap7sc7p5t 2052 176850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_648 asap7sc7p5t 2052 177120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_649 asap7sc7p5t 2052 177390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_650 asap7sc7p5t 2052 177660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_651 asap7sc7p5t 2052 177930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_652 asap7sc7p5t 2052 178200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_653 asap7sc7p5t 2052 178470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_654 asap7sc7p5t 2052 178740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_655 asap7sc7p5t 2052 179010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_656 asap7sc7p5t 2052 179280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_657 asap7sc7p5t 2052 179550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_658 asap7sc7p5t 2052 179820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_659 asap7sc7p5t 2052 180090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_660 asap7sc7p5t 2052 180360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_661 asap7sc7p5t 2052 180630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_662 asap7sc7p5t 2052 180900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_663 asap7sc7p5t 2052 181170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_664 asap7sc7p5t 2052 181440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_665 asap7sc7p5t 2052 181710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_666 asap7sc7p5t 2052 181980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_667 asap7sc7p5t 2052 182250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_668 asap7sc7p5t 2052 182520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_669 asap7sc7p5t 2052 182790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_670 asap7sc7p5t 2052 183060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_671 asap7sc7p5t 2052 183330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_672 asap7sc7p5t 2052 183600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_673 asap7sc7p5t 2052 183870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_674 asap7sc7p5t 2052 184140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_675 asap7sc7p5t 2052 184410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_676 asap7sc7p5t 2052 184680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_677 asap7sc7p5t 2052 184950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_678 asap7sc7p5t 2052 185220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_679 asap7sc7p5t 2052 185490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_680 asap7sc7p5t 2052 185760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_681 asap7sc7p5t 2052 186030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_682 asap7sc7p5t 2052 186300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_683 asap7sc7p5t 2052 186570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_684 asap7sc7p5t 2052 186840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_685 asap7sc7p5t 2052 187110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_686 asap7sc7p5t 2052 187380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_687 asap7sc7p5t 2052 187650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_688 asap7sc7p5t 2052 187920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_689 asap7sc7p5t 2052 188190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_690 asap7sc7p5t 2052 188460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_691 asap7sc7p5t 2052 188730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_692 asap7sc7p5t 2052 189000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_693 asap7sc7p5t 2052 189270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_694 asap7sc7p5t 2052 189540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_695 asap7sc7p5t 2052 189810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_696 asap7sc7p5t 2052 190080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_697 asap7sc7p5t 2052 190350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_698 asap7sc7p5t 2052 190620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_699 asap7sc7p5t 2052 190890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_700 asap7sc7p5t 2052 191160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_701 asap7sc7p5t 2052 191430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_702 asap7sc7p5t 2052 191700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_703 asap7sc7p5t 2052 191970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_704 asap7sc7p5t 2052 192240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_705 asap7sc7p5t 2052 192510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_706 asap7sc7p5t 2052 192780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_707 asap7sc7p5t 2052 193050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_708 asap7sc7p5t 2052 193320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_709 asap7sc7p5t 2052 193590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_710 asap7sc7p5t 2052 193860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_711 asap7sc7p5t 2052 194130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_712 asap7sc7p5t 2052 194400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_713 asap7sc7p5t 2052 194670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_714 asap7sc7p5t 2052 194940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_715 asap7sc7p5t 2052 195210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_716 asap7sc7p5t 2052 195480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_717 asap7sc7p5t 2052 195750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_718 asap7sc7p5t 2052 196020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_719 asap7sc7p5t 2052 196290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_720 asap7sc7p5t 2052 196560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_721 asap7sc7p5t 2052 196830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_722 asap7sc7p5t 2052 197100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_723 asap7sc7p5t 2052 197370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_724 asap7sc7p5t 2052 197640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_725 asap7sc7p5t 2052 197910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_726 asap7sc7p5t 2052 198180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_727 asap7sc7p5t 2052 198450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_728 asap7sc7p5t 2052 198720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_729 asap7sc7p5t 2052 198990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_730 asap7sc7p5t 2052 199260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_731 asap7sc7p5t 2052 199530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_732 asap7sc7p5t 2052 199800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_733 asap7sc7p5t 2052 200070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_734 asap7sc7p5t 2052 200340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_735 asap7sc7p5t 2052 200610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_736 asap7sc7p5t 2052 200880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_737 asap7sc7p5t 2052 201150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_738 asap7sc7p5t 2052 201420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_739 asap7sc7p5t 2052 201690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_740 asap7sc7p5t 2052 201960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_741 asap7sc7p5t 2052 202230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_742 asap7sc7p5t 2052 202500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_743 asap7sc7p5t 2052 202770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_744 asap7sc7p5t 2052 203040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_745 asap7sc7p5t 2052 203310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_746 asap7sc7p5t 2052 203580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_747 asap7sc7p5t 2052 203850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_748 asap7sc7p5t 2052 204120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_749 asap7sc7p5t 2052 204390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_750 asap7sc7p5t 2052 204660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_751 asap7sc7p5t 2052 204930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_752 asap7sc7p5t 2052 205200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_753 asap7sc7p5t 2052 205470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_754 asap7sc7p5t 2052 205740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_755 asap7sc7p5t 2052 206010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_756 asap7sc7p5t 2052 206280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_757 asap7sc7p5t 2052 206550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_758 asap7sc7p5t 2052 206820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_759 asap7sc7p5t 2052 207090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_760 asap7sc7p5t 2052 207360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_761 asap7sc7p5t 2052 207630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_762 asap7sc7p5t 2052 207900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_763 asap7sc7p5t 2052 208170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_764 asap7sc7p5t 2052 208440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_765 asap7sc7p5t 2052 208710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_766 asap7sc7p5t 2052 208980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_767 asap7sc7p5t 2052 209250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_768 asap7sc7p5t 2052 209520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_769 asap7sc7p5t 2052 209790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_770 asap7sc7p5t 2052 210060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_771 asap7sc7p5t 2052 210330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_772 asap7sc7p5t 2052 210600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_773 asap7sc7p5t 2052 210870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_774 asap7sc7p5t 2052 211140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_775 asap7sc7p5t 2052 211410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_776 asap7sc7p5t 2052 211680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_777 asap7sc7p5t 2052 211950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_778 asap7sc7p5t 2052 212220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_779 asap7sc7p5t 2052 212490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_780 asap7sc7p5t 2052 212760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_781 asap7sc7p5t 2052 213030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_782 asap7sc7p5t 2052 213300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_783 asap7sc7p5t 2052 213570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_784 asap7sc7p5t 2052 213840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_785 asap7sc7p5t 2052 214110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_786 asap7sc7p5t 2052 214380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_787 asap7sc7p5t 2052 214650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_788 asap7sc7p5t 2052 214920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_789 asap7sc7p5t 2052 215190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_790 asap7sc7p5t 2052 215460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_791 asap7sc7p5t 2052 215730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_792 asap7sc7p5t 2052 216000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_793 asap7sc7p5t 2052 216270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_794 asap7sc7p5t 2052 216540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_795 asap7sc7p5t 2052 216810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_796 asap7sc7p5t 2052 217080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_797 asap7sc7p5t 2052 217350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_798 asap7sc7p5t 2052 217620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_799 asap7sc7p5t 2052 217890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_800 asap7sc7p5t 2052 218160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_801 asap7sc7p5t 2052 218430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_802 asap7sc7p5t 2052 218700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_803 asap7sc7p5t 2052 218970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_804 asap7sc7p5t 2052 219240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_805 asap7sc7p5t 2052 219510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_806 asap7sc7p5t 2052 219780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_807 asap7sc7p5t 2052 220050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_808 asap7sc7p5t 2052 220320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_809 asap7sc7p5t 2052 220590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_810 asap7sc7p5t 2052 220860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_811 asap7sc7p5t 2052 221130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_812 asap7sc7p5t 2052 221400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_813 asap7sc7p5t 2052 221670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_814 asap7sc7p5t 2052 221940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_815 asap7sc7p5t 2052 222210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_816 asap7sc7p5t 2052 222480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_817 asap7sc7p5t 2052 222750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_818 asap7sc7p5t 2052 223020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_819 asap7sc7p5t 2052 223290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_820 asap7sc7p5t 2052 223560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_821 asap7sc7p5t 2052 223830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_822 asap7sc7p5t 2052 224100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_823 asap7sc7p5t 2052 224370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_824 asap7sc7p5t 2052 224640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_825 asap7sc7p5t 2052 224910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_826 asap7sc7p5t 2052 225180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_827 asap7sc7p5t 2052 225450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_828 asap7sc7p5t 2052 225720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_829 asap7sc7p5t 2052 225990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_830 asap7sc7p5t 2052 226260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_831 asap7sc7p5t 2052 226530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_832 asap7sc7p5t 2052 226800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_833 asap7sc7p5t 2052 227070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_834 asap7sc7p5t 2052 227340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_835 asap7sc7p5t 2052 227610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_836 asap7sc7p5t 2052 227880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_837 asap7sc7p5t 2052 228150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_838 asap7sc7p5t 2052 228420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_839 asap7sc7p5t 2052 228690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_840 asap7sc7p5t 2052 228960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_841 asap7sc7p5t 2052 229230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_842 asap7sc7p5t 2052 229500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_843 asap7sc7p5t 2052 229770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_844 asap7sc7p5t 2052 230040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_845 asap7sc7p5t 2052 230310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_846 asap7sc7p5t 2052 230580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_847 asap7sc7p5t 2052 230850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_848 asap7sc7p5t 2052 231120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_849 asap7sc7p5t 2052 231390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_850 asap7sc7p5t 2052 231660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_851 asap7sc7p5t 2052 231930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_852 asap7sc7p5t 2052 232200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_853 asap7sc7p5t 2052 232470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_854 asap7sc7p5t 2052 232740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_855 asap7sc7p5t 2052 233010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_856 asap7sc7p5t 2052 233280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_857 asap7sc7p5t 2052 233550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_858 asap7sc7p5t 2052 233820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_859 asap7sc7p5t 2052 234090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_860 asap7sc7p5t 2052 234360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_861 asap7sc7p5t 2052 234630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_862 asap7sc7p5t 2052 234900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_863 asap7sc7p5t 2052 235170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_864 asap7sc7p5t 2052 235440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_865 asap7sc7p5t 2052 235710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_866 asap7sc7p5t 2052 235980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_867 asap7sc7p5t 2052 236250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_868 asap7sc7p5t 2052 236520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_869 asap7sc7p5t 2052 236790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_870 asap7sc7p5t 2052 237060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_871 asap7sc7p5t 2052 237330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_872 asap7sc7p5t 2052 237600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_873 asap7sc7p5t 2052 237870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_874 asap7sc7p5t 2052 238140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_875 asap7sc7p5t 2052 238410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_876 asap7sc7p5t 2052 238680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_877 asap7sc7p5t 2052 238950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_878 asap7sc7p5t 2052 239220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_879 asap7sc7p5t 2052 239490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_880 asap7sc7p5t 2052 239760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_881 asap7sc7p5t 2052 240030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_882 asap7sc7p5t 2052 240300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_883 asap7sc7p5t 2052 240570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_884 asap7sc7p5t 2052 240840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_885 asap7sc7p5t 2052 241110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_886 asap7sc7p5t 2052 241380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_887 asap7sc7p5t 2052 241650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_888 asap7sc7p5t 2052 241920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_889 asap7sc7p5t 2052 242190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_890 asap7sc7p5t 2052 242460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_891 asap7sc7p5t 2052 242730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_892 asap7sc7p5t 2052 243000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_893 asap7sc7p5t 2052 243270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_894 asap7sc7p5t 2052 243540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_895 asap7sc7p5t 2052 243810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_896 asap7sc7p5t 2052 244080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_897 asap7sc7p5t 2052 244350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_898 asap7sc7p5t 2052 244620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_899 asap7sc7p5t 2052 244890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_900 asap7sc7p5t 2052 245160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_901 asap7sc7p5t 2052 245430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_902 asap7sc7p5t 2052 245700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_903 asap7sc7p5t 2052 245970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_904 asap7sc7p5t 2052 246240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_905 asap7sc7p5t 2052 246510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_906 asap7sc7p5t 2052 246780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_907 asap7sc7p5t 2052 247050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_908 asap7sc7p5t 2052 247320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_909 asap7sc7p5t 2052 247590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_910 asap7sc7p5t 2052 247860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_911 asap7sc7p5t 2052 248130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_912 asap7sc7p5t 2052 248400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_913 asap7sc7p5t 2052 248670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_914 asap7sc7p5t 2052 248940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_915 asap7sc7p5t 2052 249210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_916 asap7sc7p5t 2052 249480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_917 asap7sc7p5t 2052 249750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_918 asap7sc7p5t 2052 250020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_919 asap7sc7p5t 2052 250290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_920 asap7sc7p5t 2052 250560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_921 asap7sc7p5t 2052 250830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_922 asap7sc7p5t 2052 251100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_923 asap7sc7p5t 2052 251370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_924 asap7sc7p5t 2052 251640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_925 asap7sc7p5t 2052 251910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_926 asap7sc7p5t 2052 252180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_927 asap7sc7p5t 2052 252450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_928 asap7sc7p5t 2052 252720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_929 asap7sc7p5t 2052 252990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_930 asap7sc7p5t 2052 253260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_931 asap7sc7p5t 2052 253530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_932 asap7sc7p5t 2052 253800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_933 asap7sc7p5t 2052 254070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_934 asap7sc7p5t 2052 254340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_935 asap7sc7p5t 2052 254610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_936 asap7sc7p5t 2052 254880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_937 asap7sc7p5t 2052 255150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_938 asap7sc7p5t 2052 255420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_939 asap7sc7p5t 2052 255690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_940 asap7sc7p5t 2052 255960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_941 asap7sc7p5t 2052 256230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_942 asap7sc7p5t 2052 256500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_943 asap7sc7p5t 2052 256770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_944 asap7sc7p5t 2052 257040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_945 asap7sc7p5t 2052 257310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_946 asap7sc7p5t 2052 257580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_947 asap7sc7p5t 2052 257850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_948 asap7sc7p5t 2052 258120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_949 asap7sc7p5t 2052 258390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_950 asap7sc7p5t 2052 258660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_951 asap7sc7p5t 2052 258930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_952 asap7sc7p5t 2052 259200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_953 asap7sc7p5t 2052 259470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_954 asap7sc7p5t 2052 259740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_955 asap7sc7p5t 2052 260010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_956 asap7sc7p5t 2052 260280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_957 asap7sc7p5t 2052 260550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_958 asap7sc7p5t 2052 260820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_959 asap7sc7p5t 2052 261090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_960 asap7sc7p5t 2052 261360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_961 asap7sc7p5t 2052 261630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_962 asap7sc7p5t 2052 261900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_963 asap7sc7p5t 2052 262170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_964 asap7sc7p5t 2052 262440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_965 asap7sc7p5t 2052 262710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_966 asap7sc7p5t 2052 262980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_967 asap7sc7p5t 2052 263250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_968 asap7sc7p5t 2052 263520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_969 asap7sc7p5t 2052 263790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_970 asap7sc7p5t 2052 264060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_971 asap7sc7p5t 2052 264330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_972 asap7sc7p5t 2052 264600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_973 asap7sc7p5t 2052 264870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_974 asap7sc7p5t 2052 265140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_975 asap7sc7p5t 2052 265410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_976 asap7sc7p5t 2052 265680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_977 asap7sc7p5t 2052 265950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_978 asap7sc7p5t 2052 266220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_979 asap7sc7p5t 2052 266490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_980 asap7sc7p5t 2052 266760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_981 asap7sc7p5t 2052 267030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_982 asap7sc7p5t 2052 267300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_983 asap7sc7p5t 2052 267570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_984 asap7sc7p5t 2052 267840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_985 asap7sc7p5t 2052 268110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_986 asap7sc7p5t 2052 268380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_987 asap7sc7p5t 2052 268650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_988 asap7sc7p5t 2052 268920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_989 asap7sc7p5t 2052 269190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_990 asap7sc7p5t 2052 269460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_991 asap7sc7p5t 2052 269730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_992 asap7sc7p5t 2052 270000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_993 asap7sc7p5t 2052 270270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_994 asap7sc7p5t 2052 270540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_995 asap7sc7p5t 2052 270810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_996 asap7sc7p5t 2052 271080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_997 asap7sc7p5t 2052 271350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_998 asap7sc7p5t 2052 271620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_999 asap7sc7p5t 2052 271890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1000 asap7sc7p5t 2052 272160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1001 asap7sc7p5t 2052 272430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1002 asap7sc7p5t 2052 272700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1003 asap7sc7p5t 2052 272970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1004 asap7sc7p5t 2052 273240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1005 asap7sc7p5t 2052 273510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1006 asap7sc7p5t 2052 273780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1007 asap7sc7p5t 2052 274050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1008 asap7sc7p5t 2052 274320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1009 asap7sc7p5t 2052 274590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1010 asap7sc7p5t 2052 274860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1011 asap7sc7p5t 2052 275130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1012 asap7sc7p5t 2052 275400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1013 asap7sc7p5t 2052 275670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1014 asap7sc7p5t 2052 275940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1015 asap7sc7p5t 2052 276210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1016 asap7sc7p5t 2052 276480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1017 asap7sc7p5t 2052 276750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1018 asap7sc7p5t 2052 277020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1019 asap7sc7p5t 2052 277290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1020 asap7sc7p5t 2052 277560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1021 asap7sc7p5t 2052 277830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1022 asap7sc7p5t 2052 278100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1023 asap7sc7p5t 2052 278370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1024 asap7sc7p5t 2052 278640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1025 asap7sc7p5t 2052 278910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1026 asap7sc7p5t 2052 279180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1027 asap7sc7p5t 2052 279450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1028 asap7sc7p5t 2052 279720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1029 asap7sc7p5t 2052 279990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1030 asap7sc7p5t 2052 280260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1031 asap7sc7p5t 2052 280530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1032 asap7sc7p5t 2052 280800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1033 asap7sc7p5t 2052 281070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1034 asap7sc7p5t 2052 281340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1035 asap7sc7p5t 2052 281610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1036 asap7sc7p5t 2052 281880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1037 asap7sc7p5t 2052 282150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1038 asap7sc7p5t 2052 282420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1039 asap7sc7p5t 2052 282690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1040 asap7sc7p5t 2052 282960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1041 asap7sc7p5t 2052 283230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1042 asap7sc7p5t 2052 283500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1043 asap7sc7p5t 2052 283770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1044 asap7sc7p5t 2052 284040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1045 asap7sc7p5t 2052 284310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1046 asap7sc7p5t 2052 284580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1047 asap7sc7p5t 2052 284850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1048 asap7sc7p5t 2052 285120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1049 asap7sc7p5t 2052 285390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1050 asap7sc7p5t 2052 285660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1051 asap7sc7p5t 2052 285930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1052 asap7sc7p5t 2052 286200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1053 asap7sc7p5t 2052 286470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1054 asap7sc7p5t 2052 286740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1055 asap7sc7p5t 2052 287010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1056 asap7sc7p5t 2052 287280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1057 asap7sc7p5t 2052 287550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1058 asap7sc7p5t 2052 287820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1059 asap7sc7p5t 2052 288090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1060 asap7sc7p5t 2052 288360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1061 asap7sc7p5t 2052 288630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1062 asap7sc7p5t 2052 288900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1063 asap7sc7p5t 2052 289170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1064 asap7sc7p5t 2052 289440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1065 asap7sc7p5t 2052 289710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1066 asap7sc7p5t 2052 289980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1067 asap7sc7p5t 2052 290250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1068 asap7sc7p5t 2052 290520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1069 asap7sc7p5t 2052 290790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1070 asap7sc7p5t 2052 291060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1071 asap7sc7p5t 2052 291330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1072 asap7sc7p5t 2052 291600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1073 asap7sc7p5t 2052 291870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1074 asap7sc7p5t 2052 292140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1075 asap7sc7p5t 2052 292410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1076 asap7sc7p5t 2052 292680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1077 asap7sc7p5t 2052 292950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1078 asap7sc7p5t 2052 293220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1079 asap7sc7p5t 2052 293490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1080 asap7sc7p5t 2052 293760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1081 asap7sc7p5t 2052 294030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1082 asap7sc7p5t 2052 294300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1083 asap7sc7p5t 2052 294570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1084 asap7sc7p5t 2052 294840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1085 asap7sc7p5t 2052 295110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1086 asap7sc7p5t 2052 295380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1087 asap7sc7p5t 2052 295650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1088 asap7sc7p5t 2052 295920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1089 asap7sc7p5t 2052 296190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1090 asap7sc7p5t 2052 296460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1091 asap7sc7p5t 2052 296730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1092 asap7sc7p5t 2052 297000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1093 asap7sc7p5t 2052 297270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1094 asap7sc7p5t 2052 297540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1095 asap7sc7p5t 2052 297810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1096 asap7sc7p5t 2052 298080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1097 asap7sc7p5t 2052 298350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1098 asap7sc7p5t 2052 298620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1099 asap7sc7p5t 2052 298890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1100 asap7sc7p5t 2052 299160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1101 asap7sc7p5t 2052 299430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1102 asap7sc7p5t 2052 299700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1103 asap7sc7p5t 2052 299970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1104 asap7sc7p5t 2052 300240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1105 asap7sc7p5t 2052 300510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1106 asap7sc7p5t 2052 300780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1107 asap7sc7p5t 2052 301050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1108 asap7sc7p5t 2052 301320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1109 asap7sc7p5t 2052 301590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1110 asap7sc7p5t 2052 301860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1111 asap7sc7p5t 2052 302130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1112 asap7sc7p5t 2052 302400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1113 asap7sc7p5t 2052 302670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1114 asap7sc7p5t 2052 302940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1115 asap7sc7p5t 2052 303210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1116 asap7sc7p5t 2052 303480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1117 asap7sc7p5t 2052 303750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1118 asap7sc7p5t 2052 304020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1119 asap7sc7p5t 2052 304290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1120 asap7sc7p5t 2052 304560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1121 asap7sc7p5t 2052 304830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1122 asap7sc7p5t 2052 305100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1123 asap7sc7p5t 2052 305370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1124 asap7sc7p5t 2052 305640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1125 asap7sc7p5t 2052 305910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1126 asap7sc7p5t 2052 306180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1127 asap7sc7p5t 2052 306450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1128 asap7sc7p5t 2052 306720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1129 asap7sc7p5t 2052 306990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1130 asap7sc7p5t 2052 307260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1131 asap7sc7p5t 2052 307530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1132 asap7sc7p5t 2052 307800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1133 asap7sc7p5t 2052 308070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1134 asap7sc7p5t 2052 308340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1135 asap7sc7p5t 2052 308610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1136 asap7sc7p5t 2052 308880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1137 asap7sc7p5t 2052 309150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1138 asap7sc7p5t 2052 309420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1139 asap7sc7p5t 2052 309690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1140 asap7sc7p5t 2052 309960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1141 asap7sc7p5t 2052 310230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1142 asap7sc7p5t 2052 310500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1143 asap7sc7p5t 2052 310770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1144 asap7sc7p5t 2052 311040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1145 asap7sc7p5t 2052 311310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1146 asap7sc7p5t 2052 311580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1147 asap7sc7p5t 2052 311850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1148 asap7sc7p5t 2052 312120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1149 asap7sc7p5t 2052 312390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1150 asap7sc7p5t 2052 312660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1151 asap7sc7p5t 2052 312930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1152 asap7sc7p5t 2052 313200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1153 asap7sc7p5t 2052 313470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1154 asap7sc7p5t 2052 313740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1155 asap7sc7p5t 2052 314010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1156 asap7sc7p5t 2052 314280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1157 asap7sc7p5t 2052 314550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1158 asap7sc7p5t 2052 314820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1159 asap7sc7p5t 2052 315090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1160 asap7sc7p5t 2052 315360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1161 asap7sc7p5t 2052 315630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1162 asap7sc7p5t 2052 315900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1163 asap7sc7p5t 2052 316170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1164 asap7sc7p5t 2052 316440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1165 asap7sc7p5t 2052 316710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1166 asap7sc7p5t 2052 316980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1167 asap7sc7p5t 2052 317250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1168 asap7sc7p5t 2052 317520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1169 asap7sc7p5t 2052 317790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1170 asap7sc7p5t 2052 318060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1171 asap7sc7p5t 2052 318330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1172 asap7sc7p5t 2052 318600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1173 asap7sc7p5t 2052 318870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1174 asap7sc7p5t 2052 319140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1175 asap7sc7p5t 2052 319410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1176 asap7sc7p5t 2052 319680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1177 asap7sc7p5t 2052 319950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1178 asap7sc7p5t 2052 320220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1179 asap7sc7p5t 2052 320490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1180 asap7sc7p5t 2052 320760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1181 asap7sc7p5t 2052 321030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1182 asap7sc7p5t 2052 321300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1183 asap7sc7p5t 2052 321570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1184 asap7sc7p5t 2052 321840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1185 asap7sc7p5t 2052 322110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1186 asap7sc7p5t 2052 322380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1187 asap7sc7p5t 2052 322650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1188 asap7sc7p5t 2052 322920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1189 asap7sc7p5t 2052 323190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1190 asap7sc7p5t 2052 323460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1191 asap7sc7p5t 2052 323730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1192 asap7sc7p5t 2052 324000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1193 asap7sc7p5t 2052 324270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1194 asap7sc7p5t 2052 324540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1195 asap7sc7p5t 2052 324810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1196 asap7sc7p5t 2052 325080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1197 asap7sc7p5t 2052 325350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1198 asap7sc7p5t 2052 325620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1199 asap7sc7p5t 2052 325890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1200 asap7sc7p5t 2052 326160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1201 asap7sc7p5t 2052 326430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1202 asap7sc7p5t 2052 326700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1203 asap7sc7p5t 2052 326970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1204 asap7sc7p5t 2052 327240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1205 asap7sc7p5t 2052 327510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1206 asap7sc7p5t 2052 327780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1207 asap7sc7p5t 2052 328050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1208 asap7sc7p5t 2052 328320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1209 asap7sc7p5t 2052 328590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1210 asap7sc7p5t 2052 328860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1211 asap7sc7p5t 2052 329130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1212 asap7sc7p5t 2052 329400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1213 asap7sc7p5t 2052 329670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1214 asap7sc7p5t 2052 329940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1215 asap7sc7p5t 2052 330210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1216 asap7sc7p5t 2052 330480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1217 asap7sc7p5t 2052 330750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1218 asap7sc7p5t 2052 331020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1219 asap7sc7p5t 2052 331290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1220 asap7sc7p5t 2052 331560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1221 asap7sc7p5t 2052 331830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1222 asap7sc7p5t 2052 332100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1223 asap7sc7p5t 2052 332370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1224 asap7sc7p5t 2052 332640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1225 asap7sc7p5t 2052 332910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1226 asap7sc7p5t 2052 333180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1227 asap7sc7p5t 2052 333450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1228 asap7sc7p5t 2052 333720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1229 asap7sc7p5t 2052 333990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1230 asap7sc7p5t 2052 334260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1231 asap7sc7p5t 2052 334530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1232 asap7sc7p5t 2052 334800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1233 asap7sc7p5t 2052 335070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1234 asap7sc7p5t 2052 335340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1235 asap7sc7p5t 2052 335610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1236 asap7sc7p5t 2052 335880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1237 asap7sc7p5t 2052 336150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1238 asap7sc7p5t 2052 336420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1239 asap7sc7p5t 2052 336690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1240 asap7sc7p5t 2052 336960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1241 asap7sc7p5t 2052 337230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1242 asap7sc7p5t 2052 337500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1243 asap7sc7p5t 2052 337770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1244 asap7sc7p5t 2052 338040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1245 asap7sc7p5t 2052 338310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1246 asap7sc7p5t 2052 338580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1247 asap7sc7p5t 2052 338850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1248 asap7sc7p5t 2052 339120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1249 asap7sc7p5t 2052 339390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1250 asap7sc7p5t 2052 339660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1251 asap7sc7p5t 2052 339930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1252 asap7sc7p5t 2052 340200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1253 asap7sc7p5t 2052 340470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1254 asap7sc7p5t 2052 340740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1255 asap7sc7p5t 2052 341010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1256 asap7sc7p5t 2052 341280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1257 asap7sc7p5t 2052 341550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1258 asap7sc7p5t 2052 341820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1259 asap7sc7p5t 2052 342090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1260 asap7sc7p5t 2052 342360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1261 asap7sc7p5t 2052 342630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1262 asap7sc7p5t 2052 342900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1263 asap7sc7p5t 2052 343170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1264 asap7sc7p5t 2052 343440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1265 asap7sc7p5t 2052 343710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1266 asap7sc7p5t 2052 343980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1267 asap7sc7p5t 2052 344250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1268 asap7sc7p5t 2052 344520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1269 asap7sc7p5t 2052 344790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1270 asap7sc7p5t 2052 345060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1271 asap7sc7p5t 2052 345330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1272 asap7sc7p5t 2052 345600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1273 asap7sc7p5t 2052 345870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1274 asap7sc7p5t 2052 346140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1275 asap7sc7p5t 2052 346410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1276 asap7sc7p5t 2052 346680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1277 asap7sc7p5t 2052 346950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1278 asap7sc7p5t 2052 347220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1279 asap7sc7p5t 2052 347490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1280 asap7sc7p5t 2052 347760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1281 asap7sc7p5t 2052 348030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1282 asap7sc7p5t 2052 348300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1283 asap7sc7p5t 2052 348570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1284 asap7sc7p5t 2052 348840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1285 asap7sc7p5t 2052 349110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1286 asap7sc7p5t 2052 349380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1287 asap7sc7p5t 2052 349650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1288 asap7sc7p5t 2052 349920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1289 asap7sc7p5t 2052 350190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1290 asap7sc7p5t 2052 350460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1291 asap7sc7p5t 2052 350730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1292 asap7sc7p5t 2052 351000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1293 asap7sc7p5t 2052 351270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1294 asap7sc7p5t 2052 351540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1295 asap7sc7p5t 2052 351810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1296 asap7sc7p5t 2052 352080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1297 asap7sc7p5t 2052 352350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1298 asap7sc7p5t 2052 352620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1299 asap7sc7p5t 2052 352890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1300 asap7sc7p5t 2052 353160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1301 asap7sc7p5t 2052 353430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1302 asap7sc7p5t 2052 353700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1303 asap7sc7p5t 2052 353970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1304 asap7sc7p5t 2052 354240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1305 asap7sc7p5t 2052 354510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1306 asap7sc7p5t 2052 354780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1307 asap7sc7p5t 2052 355050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1308 asap7sc7p5t 2052 355320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1309 asap7sc7p5t 2052 355590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1310 asap7sc7p5t 2052 355860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1311 asap7sc7p5t 2052 356130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1312 asap7sc7p5t 2052 356400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1313 asap7sc7p5t 2052 356670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1314 asap7sc7p5t 2052 356940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1315 asap7sc7p5t 2052 357210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1316 asap7sc7p5t 2052 357480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1317 asap7sc7p5t 2052 357750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1318 asap7sc7p5t 2052 358020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1319 asap7sc7p5t 2052 358290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1320 asap7sc7p5t 2052 358560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1321 asap7sc7p5t 2052 358830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1322 asap7sc7p5t 2052 359100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1323 asap7sc7p5t 2052 359370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1324 asap7sc7p5t 2052 359640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1325 asap7sc7p5t 2052 359910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1326 asap7sc7p5t 2052 360180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1327 asap7sc7p5t 2052 360450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1328 asap7sc7p5t 2052 360720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1329 asap7sc7p5t 2052 360990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1330 asap7sc7p5t 2052 361260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1331 asap7sc7p5t 2052 361530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1332 asap7sc7p5t 2052 361800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1333 asap7sc7p5t 2052 362070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1334 asap7sc7p5t 2052 362340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1335 asap7sc7p5t 2052 362610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1336 asap7sc7p5t 2052 362880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1337 asap7sc7p5t 2052 363150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1338 asap7sc7p5t 2052 363420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1339 asap7sc7p5t 2052 363690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1340 asap7sc7p5t 2052 363960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1341 asap7sc7p5t 2052 364230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1342 asap7sc7p5t 2052 364500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1343 asap7sc7p5t 2052 364770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1344 asap7sc7p5t 2052 365040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1345 asap7sc7p5t 2052 365310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1346 asap7sc7p5t 2052 365580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1347 asap7sc7p5t 2052 365850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1348 asap7sc7p5t 2052 366120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1349 asap7sc7p5t 2052 366390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1350 asap7sc7p5t 2052 366660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1351 asap7sc7p5t 2052 366930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1352 asap7sc7p5t 2052 367200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1353 asap7sc7p5t 2052 367470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1354 asap7sc7p5t 2052 367740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1355 asap7sc7p5t 2052 368010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1356 asap7sc7p5t 2052 368280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1357 asap7sc7p5t 2052 368550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1358 asap7sc7p5t 2052 368820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1359 asap7sc7p5t 2052 369090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1360 asap7sc7p5t 2052 369360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1361 asap7sc7p5t 2052 369630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1362 asap7sc7p5t 2052 369900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1363 asap7sc7p5t 2052 370170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1364 asap7sc7p5t 2052 370440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1365 asap7sc7p5t 2052 370710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1366 asap7sc7p5t 2052 370980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1367 asap7sc7p5t 2052 371250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1368 asap7sc7p5t 2052 371520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1369 asap7sc7p5t 2052 371790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1370 asap7sc7p5t 2052 372060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1371 asap7sc7p5t 2052 372330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1372 asap7sc7p5t 2052 372600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1373 asap7sc7p5t 2052 372870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1374 asap7sc7p5t 2052 373140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1375 asap7sc7p5t 2052 373410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1376 asap7sc7p5t 2052 373680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1377 asap7sc7p5t 2052 373950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1378 asap7sc7p5t 2052 374220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1379 asap7sc7p5t 2052 374490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1380 asap7sc7p5t 2052 374760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1381 asap7sc7p5t 2052 375030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1382 asap7sc7p5t 2052 375300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1383 asap7sc7p5t 2052 375570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1384 asap7sc7p5t 2052 375840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1385 asap7sc7p5t 2052 376110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1386 asap7sc7p5t 2052 376380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1387 asap7sc7p5t 2052 376650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1388 asap7sc7p5t 2052 376920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1389 asap7sc7p5t 2052 377190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1390 asap7sc7p5t 2052 377460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1391 asap7sc7p5t 2052 377730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1392 asap7sc7p5t 2052 378000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1393 asap7sc7p5t 2052 378270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1394 asap7sc7p5t 2052 378540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1395 asap7sc7p5t 2052 378810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1396 asap7sc7p5t 2052 379080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1397 asap7sc7p5t 2052 379350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1398 asap7sc7p5t 2052 379620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1399 asap7sc7p5t 2052 379890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1400 asap7sc7p5t 2052 380160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1401 asap7sc7p5t 2052 380430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1402 asap7sc7p5t 2052 380700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1403 asap7sc7p5t 2052 380970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1404 asap7sc7p5t 2052 381240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1405 asap7sc7p5t 2052 381510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1406 asap7sc7p5t 2052 381780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1407 asap7sc7p5t 2052 382050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1408 asap7sc7p5t 2052 382320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1409 asap7sc7p5t 2052 382590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1410 asap7sc7p5t 2052 382860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1411 asap7sc7p5t 2052 383130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1412 asap7sc7p5t 2052 383400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1413 asap7sc7p5t 2052 383670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1414 asap7sc7p5t 2052 383940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1415 asap7sc7p5t 2052 384210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1416 asap7sc7p5t 2052 384480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1417 asap7sc7p5t 2052 384750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1418 asap7sc7p5t 2052 385020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1419 asap7sc7p5t 2052 385290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1420 asap7sc7p5t 2052 385560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1421 asap7sc7p5t 2052 385830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1422 asap7sc7p5t 2052 386100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1423 asap7sc7p5t 2052 386370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1424 asap7sc7p5t 2052 386640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1425 asap7sc7p5t 2052 386910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1426 asap7sc7p5t 2052 387180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1427 asap7sc7p5t 2052 387450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1428 asap7sc7p5t 2052 387720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1429 asap7sc7p5t 2052 387990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1430 asap7sc7p5t 2052 388260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1431 asap7sc7p5t 2052 388530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1432 asap7sc7p5t 2052 388800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1433 asap7sc7p5t 2052 389070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1434 asap7sc7p5t 2052 389340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1435 asap7sc7p5t 2052 389610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1436 asap7sc7p5t 2052 389880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1437 asap7sc7p5t 2052 390150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1438 asap7sc7p5t 2052 390420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1439 asap7sc7p5t 2052 390690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1440 asap7sc7p5t 2052 390960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1441 asap7sc7p5t 2052 391230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1442 asap7sc7p5t 2052 391500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1443 asap7sc7p5t 2052 391770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1444 asap7sc7p5t 2052 392040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1445 asap7sc7p5t 2052 392310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1446 asap7sc7p5t 2052 392580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1447 asap7sc7p5t 2052 392850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1448 asap7sc7p5t 2052 393120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1449 asap7sc7p5t 2052 393390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1450 asap7sc7p5t 2052 393660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1451 asap7sc7p5t 2052 393930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1452 asap7sc7p5t 2052 394200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1453 asap7sc7p5t 2052 394470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1454 asap7sc7p5t 2052 394740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1455 asap7sc7p5t 2052 395010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1456 asap7sc7p5t 2052 395280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1457 asap7sc7p5t 2052 395550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1458 asap7sc7p5t 2052 395820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1459 asap7sc7p5t 2052 396090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1460 asap7sc7p5t 2052 396360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1461 asap7sc7p5t 2052 396630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1462 asap7sc7p5t 2052 396900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1463 asap7sc7p5t 2052 397170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1464 asap7sc7p5t 2052 397440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1465 asap7sc7p5t 2052 397710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1466 asap7sc7p5t 2052 397980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1467 asap7sc7p5t 2052 398250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1468 asap7sc7p5t 2052 398520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1469 asap7sc7p5t 2052 398790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1470 asap7sc7p5t 2052 399060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1471 asap7sc7p5t 2052 399330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1472 asap7sc7p5t 2052 399600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1473 asap7sc7p5t 2052 399870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1474 asap7sc7p5t 2052 400140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1475 asap7sc7p5t 2052 400410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1476 asap7sc7p5t 2052 400680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1477 asap7sc7p5t 2052 400950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1478 asap7sc7p5t 2052 401220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1479 asap7sc7p5t 2052 401490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1480 asap7sc7p5t 2052 401760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1481 asap7sc7p5t 2052 402030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1482 asap7sc7p5t 2052 402300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1483 asap7sc7p5t 2052 402570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1484 asap7sc7p5t 2052 402840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1485 asap7sc7p5t 2052 403110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1486 asap7sc7p5t 2052 403380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1487 asap7sc7p5t 2052 403650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1488 asap7sc7p5t 2052 403920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1489 asap7sc7p5t 2052 404190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1490 asap7sc7p5t 2052 404460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1491 asap7sc7p5t 2052 404730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1492 asap7sc7p5t 2052 405000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1493 asap7sc7p5t 2052 405270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1494 asap7sc7p5t 2052 405540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1495 asap7sc7p5t 2052 405810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1496 asap7sc7p5t 2052 406080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1497 asap7sc7p5t 2052 406350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1498 asap7sc7p5t 2052 406620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1499 asap7sc7p5t 2052 406890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1500 asap7sc7p5t 2052 407160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1501 asap7sc7p5t 2052 407430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1502 asap7sc7p5t 2052 407700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1503 asap7sc7p5t 2052 407970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1504 asap7sc7p5t 2052 408240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1505 asap7sc7p5t 2052 408510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1506 asap7sc7p5t 2052 408780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1507 asap7sc7p5t 2052 409050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1508 asap7sc7p5t 2052 409320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1509 asap7sc7p5t 2052 409590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1510 asap7sc7p5t 2052 409860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1511 asap7sc7p5t 2052 410130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1512 asap7sc7p5t 2052 410400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1513 asap7sc7p5t 2052 410670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1514 asap7sc7p5t 2052 410940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1515 asap7sc7p5t 2052 411210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1516 asap7sc7p5t 2052 411480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1517 asap7sc7p5t 2052 411750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1518 asap7sc7p5t 2052 412020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1519 asap7sc7p5t 2052 412290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1520 asap7sc7p5t 2052 412560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1521 asap7sc7p5t 2052 412830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1522 asap7sc7p5t 2052 413100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1523 asap7sc7p5t 2052 413370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1524 asap7sc7p5t 2052 413640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1525 asap7sc7p5t 2052 413910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1526 asap7sc7p5t 2052 414180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1527 asap7sc7p5t 2052 414450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1528 asap7sc7p5t 2052 414720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1529 asap7sc7p5t 2052 414990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1530 asap7sc7p5t 2052 415260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1531 asap7sc7p5t 2052 415530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1532 asap7sc7p5t 2052 415800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1533 asap7sc7p5t 2052 416070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1534 asap7sc7p5t 2052 416340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1535 asap7sc7p5t 2052 416610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1536 asap7sc7p5t 2052 416880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1537 asap7sc7p5t 2052 417150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1538 asap7sc7p5t 2052 417420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1539 asap7sc7p5t 2052 417690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1540 asap7sc7p5t 2052 417960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1541 asap7sc7p5t 2052 418230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1542 asap7sc7p5t 2052 418500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1543 asap7sc7p5t 2052 418770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1544 asap7sc7p5t 2052 419040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1545 asap7sc7p5t 2052 419310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1546 asap7sc7p5t 2052 419580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1547 asap7sc7p5t 2052 419850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1548 asap7sc7p5t 2052 420120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1549 asap7sc7p5t 2052 420390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1550 asap7sc7p5t 2052 420660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1551 asap7sc7p5t 2052 420930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1552 asap7sc7p5t 2052 421200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1553 asap7sc7p5t 2052 421470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1554 asap7sc7p5t 2052 421740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1555 asap7sc7p5t 2052 422010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1556 asap7sc7p5t 2052 422280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1557 asap7sc7p5t 2052 422550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1558 asap7sc7p5t 2052 422820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1559 asap7sc7p5t 2052 423090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1560 asap7sc7p5t 2052 423360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1561 asap7sc7p5t 2052 423630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1562 asap7sc7p5t 2052 423900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1563 asap7sc7p5t 2052 424170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1564 asap7sc7p5t 2052 424440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1565 asap7sc7p5t 2052 424710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1566 asap7sc7p5t 2052 424980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1567 asap7sc7p5t 2052 425250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1568 asap7sc7p5t 2052 425520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1569 asap7sc7p5t 2052 425790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1570 asap7sc7p5t 2052 426060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1571 asap7sc7p5t 2052 426330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1572 asap7sc7p5t 2052 426600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1573 asap7sc7p5t 2052 426870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1574 asap7sc7p5t 2052 427140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1575 asap7sc7p5t 2052 427410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1576 asap7sc7p5t 2052 427680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1577 asap7sc7p5t 2052 427950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1578 asap7sc7p5t 2052 428220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1579 asap7sc7p5t 2052 428490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1580 asap7sc7p5t 2052 428760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1581 asap7sc7p5t 2052 429030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1582 asap7sc7p5t 2052 429300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1583 asap7sc7p5t 2052 429570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1584 asap7sc7p5t 2052 429840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1585 asap7sc7p5t 2052 430110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1586 asap7sc7p5t 2052 430380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1587 asap7sc7p5t 2052 430650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1588 asap7sc7p5t 2052 430920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1589 asap7sc7p5t 2052 431190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1590 asap7sc7p5t 2052 431460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1591 asap7sc7p5t 2052 431730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1592 asap7sc7p5t 2052 432000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1593 asap7sc7p5t 2052 432270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1594 asap7sc7p5t 2052 432540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1595 asap7sc7p5t 2052 432810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1596 asap7sc7p5t 2052 433080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1597 asap7sc7p5t 2052 433350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1598 asap7sc7p5t 2052 433620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1599 asap7sc7p5t 2052 433890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1600 asap7sc7p5t 2052 434160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1601 asap7sc7p5t 2052 434430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1602 asap7sc7p5t 2052 434700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1603 asap7sc7p5t 2052 434970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1604 asap7sc7p5t 2052 435240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1605 asap7sc7p5t 2052 435510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1606 asap7sc7p5t 2052 435780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1607 asap7sc7p5t 2052 436050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1608 asap7sc7p5t 2052 436320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1609 asap7sc7p5t 2052 436590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1610 asap7sc7p5t 2052 436860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1611 asap7sc7p5t 2052 437130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1612 asap7sc7p5t 2052 437400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1613 asap7sc7p5t 2052 437670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1614 asap7sc7p5t 2052 437940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1615 asap7sc7p5t 2052 438210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1616 asap7sc7p5t 2052 438480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1617 asap7sc7p5t 2052 438750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1618 asap7sc7p5t 2052 439020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1619 asap7sc7p5t 2052 439290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1620 asap7sc7p5t 2052 439560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1621 asap7sc7p5t 2052 439830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1622 asap7sc7p5t 2052 440100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1623 asap7sc7p5t 2052 440370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1624 asap7sc7p5t 2052 440640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1625 asap7sc7p5t 2052 440910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1626 asap7sc7p5t 2052 441180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1627 asap7sc7p5t 2052 441450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1628 asap7sc7p5t 2052 441720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1629 asap7sc7p5t 2052 441990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1630 asap7sc7p5t 2052 442260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1631 asap7sc7p5t 2052 442530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1632 asap7sc7p5t 2052 442800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1633 asap7sc7p5t 2052 443070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1634 asap7sc7p5t 2052 443340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1635 asap7sc7p5t 2052 443610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1636 asap7sc7p5t 2052 443880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1637 asap7sc7p5t 2052 444150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1638 asap7sc7p5t 2052 444420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1639 asap7sc7p5t 2052 444690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1640 asap7sc7p5t 2052 444960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1641 asap7sc7p5t 2052 445230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1642 asap7sc7p5t 2052 445500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1643 asap7sc7p5t 2052 445770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1644 asap7sc7p5t 2052 446040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1645 asap7sc7p5t 2052 446310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1646 asap7sc7p5t 2052 446580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1647 asap7sc7p5t 2052 446850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1648 asap7sc7p5t 2052 447120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1649 asap7sc7p5t 2052 447390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1650 asap7sc7p5t 2052 447660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1651 asap7sc7p5t 2052 447930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1652 asap7sc7p5t 2052 448200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1653 asap7sc7p5t 2052 448470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1654 asap7sc7p5t 2052 448740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1655 asap7sc7p5t 2052 449010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1656 asap7sc7p5t 2052 449280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1657 asap7sc7p5t 2052 449550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1658 asap7sc7p5t 2052 449820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1659 asap7sc7p5t 2052 450090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1660 asap7sc7p5t 2052 450360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1661 asap7sc7p5t 2052 450630 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1662 asap7sc7p5t 2052 450900 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1663 asap7sc7p5t 2052 451170 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1664 asap7sc7p5t 2052 451440 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1665 asap7sc7p5t 2052 451710 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1666 asap7sc7p5t 2052 451980 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1667 asap7sc7p5t 2052 452250 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1668 asap7sc7p5t 2052 452520 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1669 asap7sc7p5t 2052 452790 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1670 asap7sc7p5t 2052 453060 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1671 asap7sc7p5t 2052 453330 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1672 asap7sc7p5t 2052 453600 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1673 asap7sc7p5t 2052 453870 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1674 asap7sc7p5t 2052 454140 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1675 asap7sc7p5t 2052 454410 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1676 asap7sc7p5t 2052 454680 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1677 asap7sc7p5t 2052 454950 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1678 asap7sc7p5t 2052 455220 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1679 asap7sc7p5t 2052 455490 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1680 asap7sc7p5t 2052 455760 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1681 asap7sc7p5t 2052 456030 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1682 asap7sc7p5t 2052 456300 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1683 asap7sc7p5t 2052 456570 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1684 asap7sc7p5t 2052 456840 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1685 asap7sc7p5t 2052 457110 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1686 asap7sc7p5t 2052 457380 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1687 asap7sc7p5t 2052 457650 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1688 asap7sc7p5t 2052 457920 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1689 asap7sc7p5t 2052 458190 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1690 asap7sc7p5t 2052 458460 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1691 asap7sc7p5t 2052 458730 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1692 asap7sc7p5t 2052 459000 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1693 asap7sc7p5t 2052 459270 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1694 asap7sc7p5t 2052 459540 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1695 asap7sc7p5t 2052 459810 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1696 asap7sc7p5t 2052 460080 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1697 asap7sc7p5t 2052 460350 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1698 asap7sc7p5t 2052 460620 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1699 asap7sc7p5t 2052 460890 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1700 asap7sc7p5t 2052 461160 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1701 asap7sc7p5t 2052 461430 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1702 asap7sc7p5t 2052 461700 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1703 asap7sc7p5t 2052 461970 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1704 asap7sc7p5t 2052 462240 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1705 asap7sc7p5t 2052 462510 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1706 asap7sc7p5t 2052 462780 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1707 asap7sc7p5t 2052 463050 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1708 asap7sc7p5t 2052 463320 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1709 asap7sc7p5t 2052 463590 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1710 asap7sc7p5t 2052 463860 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1711 asap7sc7p5t 2052 464130 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1712 asap7sc7p5t 2052 464400 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1713 asap7sc7p5t 2052 464670 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1714 asap7sc7p5t 2052 464940 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1715 asap7sc7p5t 2052 465210 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1716 asap7sc7p5t 2052 465480 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1717 asap7sc7p5t 2052 465750 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1718 asap7sc7p5t 2052 466020 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1719 asap7sc7p5t 2052 466290 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1720 asap7sc7p5t 2052 466560 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1721 asap7sc7p5t 2052 466830 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1722 asap7sc7p5t 2052 467100 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1723 asap7sc7p5t 2052 467370 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1724 asap7sc7p5t 2052 467640 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1725 asap7sc7p5t 2052 467910 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1726 asap7sc7p5t 2052 468180 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1727 asap7sc7p5t 2052 468450 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1728 asap7sc7p5t 2052 468720 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1729 asap7sc7p5t 2052 468990 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1730 asap7sc7p5t 2052 469260 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1731 asap7sc7p5t 2052 469530 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1732 asap7sc7p5t 2052 469800 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1733 asap7sc7p5t 2052 470070 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1734 asap7sc7p5t 2052 470340 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1735 asap7sc7p5t 2052 470610 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1736 asap7sc7p5t 2052 470880 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1737 asap7sc7p5t 2052 471150 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1738 asap7sc7p5t 2052 471420 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1739 asap7sc7p5t 2052 471690 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1740 asap7sc7p5t 2052 471960 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1741 asap7sc7p5t 2052 472230 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1742 asap7sc7p5t 2052 472500 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1743 asap7sc7p5t 2052 472770 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1744 asap7sc7p5t 2052 473040 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1745 asap7sc7p5t 2052 473310 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1746 asap7sc7p5t 2052 473580 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1747 asap7sc7p5t 2052 473850 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1748 asap7sc7p5t 2052 474120 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1749 asap7sc7p5t 2052 474390 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1750 asap7sc7p5t 2052 474660 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1751 asap7sc7p5t 2052 474930 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1752 asap7sc7p5t 2052 475200 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1753 asap7sc7p5t 2052 475470 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1754 asap7sc7p5t 2052 475740 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1755 asap7sc7p5t 2052 476010 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1756 asap7sc7p5t 2052 476280 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1757 asap7sc7p5t 2052 476550 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1758 asap7sc7p5t 2052 476820 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1759 asap7sc7p5t 2052 477090 FS DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1760 asap7sc7p5t 2052 477360 N DO 8813 BY 1 STEP 54 0 ; +ROW ROW_1761 asap7sc7p5t 2052 477630 FS DO 8813 BY 1 STEP 54 0 ; +COMPONENTS 129 ; + - sink_0 DFFHQNx1_ASAP7_75t_R + PLACED ( 158960 79390 ) N ; + - sink_1 DFFHQNx1_ASAP7_75t_R + PLACED ( 309430 43320 ) N ; + - sink_10 DFFHQNx1_ASAP7_75t_R + PLACED ( 459080 31430 ) N ; + - sink_100 DFFHQNx1_ASAP7_75t_R + PLACED ( 49000 313870 ) N ; + - sink_101 DFFHQNx1_ASAP7_75t_R + PLACED ( 428500 369860 ) N ; + - sink_102 DFFHQNx1_ASAP7_75t_R + PLACED ( 355060 229900 ) N ; + - sink_103 DFFHQNx1_ASAP7_75t_R + PLACED ( 92120 373000 ) N ; + - sink_104 DFFHQNx1_ASAP7_75t_R + PLACED ( 162960 378380 ) N ; + - sink_105 DFFHQNx1_ASAP7_75t_R + PLACED ( 456960 192090 ) N ; + - sink_106 DFFHQNx1_ASAP7_75t_R + PLACED ( 194640 445530 ) N ; + - sink_107 DFFHQNx1_ASAP7_75t_R + PLACED ( 343410 88200 ) N ; + - sink_108 DFFHQNx1_ASAP7_75t_R + PLACED ( 68440 79530 ) N ; + - sink_109 DFFHQNx1_ASAP7_75t_R + PLACED ( 426230 380990 ) N ; + - sink_11 DFFHQNx1_ASAP7_75t_R + PLACED ( 404900 143220 ) N ; + - sink_110 DFFHQNx1_ASAP7_75t_R + PLACED ( 77240 390190 ) N ; + - sink_111 DFFHQNx1_ASAP7_75t_R + PLACED ( 460940 312340 ) N ; + - sink_112 DFFHQNx1_ASAP7_75t_R + PLACED ( 171190 262380 ) N ; + - sink_113 DFFHQNx1_ASAP7_75t_R + PLACED ( 70250 16550 ) N ; + - sink_114 DFFHQNx1_ASAP7_75t_R + PLACED ( 456610 308850 ) N ; + - sink_115 DFFHQNx1_ASAP7_75t_R + PLACED ( 252230 439470 ) N ; + - sink_116 DFFHQNx1_ASAP7_75t_R + PLACED ( 209550 411000 ) N ; + - sink_117 DFFHQNx1_ASAP7_75t_R + PLACED ( 390030 107080 ) N ; + - sink_118 DFFHQNx1_ASAP7_75t_R + PLACED ( 125840 144760 ) N ; + - sink_119 DFFHQNx1_ASAP7_75t_R + PLACED ( 120650 279760 ) N ; + - sink_12 DFFHQNx1_ASAP7_75t_R + PLACED ( 76360 64180 ) N ; + - sink_120 DFFHQNx1_ASAP7_75t_R + PLACED ( 129310 202750 ) N ; + - sink_121 DFFHQNx1_ASAP7_75t_R + PLACED ( 70290 428610 ) N ; + - sink_122 DFFHQNx1_ASAP7_75t_R + PLACED ( 172740 220750 ) N ; + - sink_123 DFFHQNx1_ASAP7_75t_R + PLACED ( 278340 425980 ) N ; + - sink_124 DFFHQNx1_ASAP7_75t_R + PLACED ( 203490 432150 ) N ; + - sink_125 DFFHQNx1_ASAP7_75t_R + PLACED ( 240760 254640 ) N ; + - sink_126 DFFHQNx1_ASAP7_75t_R + PLACED ( 250810 18600 ) N ; + - sink_127 DFFHQNx1_ASAP7_75t_R + PLACED ( 212460 94230 ) N ; + - sink_13 DFFHQNx1_ASAP7_75t_R + PLACED ( 151900 385420 ) N ; + - sink_14 DFFHQNx1_ASAP7_75t_R + PLACED ( 93130 277540 ) N ; + - sink_15 DFFHQNx1_ASAP7_75t_R + PLACED ( 303900 181300 ) N ; + - sink_16 DFFHQNx1_ASAP7_75t_R + PLACED ( 261959 38880 ) N ; + - sink_17 DFFHQNx1_ASAP7_75t_R + PLACED ( 37420 104740 ) N ; + - sink_18 DFFHQNx1_ASAP7_75t_R + PLACED ( 322980 206690 ) N ; + - sink_19 DFFHQNx1_ASAP7_75t_R + PLACED ( 154510 279360 ) N ; + - sink_2 DFFHQNx1_ASAP7_75t_R + PLACED ( 256510 178220 ) N ; + - sink_20 DFFHQNx1_ASAP7_75t_R + PLACED ( 218460 147890 ) N ; + - sink_21 DFFHQNx1_ASAP7_75t_R + PLACED ( 375410 331540 ) N ; + - sink_22 DFFHQNx1_ASAP7_75t_R + PLACED ( 122280 274230 ) N ; + - sink_23 DFFHQNx1_ASAP7_75t_R + PLACED ( 251590 412560 ) N ; + - sink_24 DFFHQNx1_ASAP7_75t_R + PLACED ( 345540 142450 ) N ; + - sink_25 DFFHQNx1_ASAP7_75t_R + PLACED ( 460880 64310 ) N ; + - sink_26 DFFHQNx1_ASAP7_75t_R + PLACED ( 202340 358280 ) N ; + - sink_27 DFFHQNx1_ASAP7_75t_R + PLACED ( 79910 234920 ) N ; + - sink_28 DFFHQNx1_ASAP7_75t_R + PLACED ( 28040 317380 ) N ; + - sink_29 DFFHQNx1_ASAP7_75t_R + PLACED ( 361700 273590 ) N ; + - sink_3 DFFHQNx1_ASAP7_75t_R + PLACED ( 36680 243420 ) N ; + - sink_30 DFFHQNx1_ASAP7_75t_R + PLACED ( 412720 154320 ) N ; + - sink_31 DFFHQNx1_ASAP7_75t_R + PLACED ( 329840 283410 ) N ; + - sink_32 DFFHQNx1_ASAP7_75t_R + PLACED ( 276750 219850 ) N ; + - sink_33 DFFHQNx1_ASAP7_75t_R + PLACED ( 396390 444550 ) N ; + - sink_34 DFFHQNx1_ASAP7_75t_R + PLACED ( 228090 315510 ) N ; + - sink_35 DFFHQNx1_ASAP7_75t_R + PLACED ( 37910 332690 ) N ; + - sink_36 DFFHQNx1_ASAP7_75t_R + PLACED ( 307680 466820 ) N ; + - sink_37 DFFHQNx1_ASAP7_75t_R + PLACED ( 388090 140910 ) N ; + - sink_38 DFFHQNx1_ASAP7_75t_R + PLACED ( 187460 317580 ) N ; + - sink_39 DFFHQNx1_ASAP7_75t_R + PLACED ( 20380 222380 ) N ; + - sink_4 DFFHQNx1_ASAP7_75t_R + PLACED ( 27250 209480 ) N ; + - sink_40 DFFHQNx1_ASAP7_75t_R + PLACED ( 87300 63860 ) N ; + - sink_41 DFFHQNx1_ASAP7_75t_R + PLACED ( 37120 363390 ) N ; + - sink_42 DFFHQNx1_ASAP7_75t_R + PLACED ( 69500 123900 ) N ; + - sink_43 DFFHQNx1_ASAP7_75t_R + PLACED ( 189840 410850 ) N ; + - sink_44 DFFHQNx1_ASAP7_75t_R + PLACED ( 47070 216630 ) N ; + - sink_45 DFFHQNx1_ASAP7_75t_R + PLACED ( 262740 416360 ) N ; + - sink_46 DFFHQNx1_ASAP7_75t_R + PLACED ( 386870 407430 ) N ; + - sink_47 DFFHQNx1_ASAP7_75t_R + PLACED ( 138070 201040 ) N ; + - sink_48 DFFHQNx1_ASAP7_75t_R + PLACED ( 175030 416730 ) N ; + - sink_49 DFFHQNx1_ASAP7_75t_R + PLACED ( 450560 79420 ) N ; + - sink_5 DFFHQNx1_ASAP7_75t_R + PLACED ( 42130 51730 ) N ; + - sink_50 DFFHQNx1_ASAP7_75t_R + PLACED ( 91060 116700 ) N ; + - sink_51 DFFHQNx1_ASAP7_75t_R + PLACED ( 117330 233080 ) N ; + - sink_52 DFFHQNx1_ASAP7_75t_R + PLACED ( 281000 130860 ) N ; + - sink_53 DFFHQNx1_ASAP7_75t_R + PLACED ( 11880 202720 ) N ; + - sink_54 DFFHQNx1_ASAP7_75t_R + PLACED ( 179860 270520 ) N ; + - sink_55 DFFHQNx1_ASAP7_75t_R + PLACED ( 448430 327630 ) N ; + - sink_56 DFFHQNx1_ASAP7_75t_R + PLACED ( 247130 294090 ) N ; + - sink_57 DFFHQNx1_ASAP7_75t_R + PLACED ( 321050 34840 ) N ; + - sink_58 DFFHQNx1_ASAP7_75t_R + PLACED ( 423790 368790 ) N ; + - sink_59 DFFHQNx1_ASAP7_75t_R + PLACED ( 412280 377020 ) N ; + - sink_6 DFFHQNx1_ASAP7_75t_R + PLACED ( 205280 390350 ) N ; + - sink_60 DFFHQNx1_ASAP7_75t_R + PLACED ( 190490 193530 ) N ; + - sink_61 DFFHQNx1_ASAP7_75t_R + PLACED ( 57630 301770 ) N ; + - sink_62 DFFHQNx1_ASAP7_75t_R + PLACED ( 38630 40980 ) N ; + - sink_63 DFFHQNx1_ASAP7_75t_R + PLACED ( 106030 84660 ) N ; + - sink_64 DFFHQNx1_ASAP7_75t_R + PLACED ( 166420 34180 ) N ; + - sink_65 DFFHQNx1_ASAP7_75t_R + PLACED ( 10110 79580 ) N ; + - sink_66 DFFHQNx1_ASAP7_75t_R + PLACED ( 56670 177260 ) N ; + - sink_67 DFFHQNx1_ASAP7_75t_R + PLACED ( 21730 412190 ) N ; + - sink_68 DFFHQNx1_ASAP7_75t_R + PLACED ( 292470 78330 ) N ; + - sink_69 DFFHQNx1_ASAP7_75t_R + PLACED ( 126040 169800 ) N ; + - sink_7 DFFHQNx1_ASAP7_75t_R + PLACED ( 66950 112690 ) N ; + - sink_70 DFFHQNx1_ASAP7_75t_R + PLACED ( 177520 66510 ) N ; + - sink_71 DFFHQNx1_ASAP7_75t_R + PLACED ( 400510 466830 ) N ; + - sink_72 DFFHQNx1_ASAP7_75t_R + PLACED ( 224360 232560 ) N ; + - sink_73 DFFHQNx1_ASAP7_75t_R + PLACED ( 49510 57010 ) N ; + - sink_74 DFFHQNx1_ASAP7_75t_R + PLACED ( 167610 131790 ) N ; + - sink_75 DFFHQNx1_ASAP7_75t_R + PLACED ( 391270 84260 ) N ; + - sink_76 DFFHQNx1_ASAP7_75t_R + PLACED ( 20620 447450 ) N ; + - sink_77 DFFHQNx1_ASAP7_75t_R + PLACED ( 253000 77440 ) N ; + - sink_78 DFFHQNx1_ASAP7_75t_R + PLACED ( 259860 22440 ) N ; + - sink_79 DFFHQNx1_ASAP7_75t_R + PLACED ( 252930 460110 ) N ; + - sink_8 DFFHQNx1_ASAP7_75t_R + PLACED ( 298620 445950 ) N ; + - sink_80 DFFHQNx1_ASAP7_75t_R + PLACED ( 407130 330250 ) N ; + - sink_81 DFFHQNx1_ASAP7_75t_R + PLACED ( 130110 178680 ) N ; + - sink_82 DFFHQNx1_ASAP7_75t_R + PLACED ( 86840 365090 ) N ; + - sink_83 DFFHQNx1_ASAP7_75t_R + PLACED ( 254990 368370 ) N ; + - sink_84 DFFHQNx1_ASAP7_75t_R + PLACED ( 161650 112600 ) N ; + - sink_85 DFFHQNx1_ASAP7_75t_R + PLACED ( 383300 463070 ) N ; + - sink_86 DFFHQNx1_ASAP7_75t_R + PLACED ( 402210 380800 ) N ; + - sink_87 DFFHQNx1_ASAP7_75t_R + PLACED ( 386430 350340 ) N ; + - sink_88 DFFHQNx1_ASAP7_75t_R + PLACED ( 114300 248110 ) N ; + - sink_89 DFFHQNx1_ASAP7_75t_R + PLACED ( 173560 23330 ) N ; + - sink_9 DFFHQNx1_ASAP7_75t_R + PLACED ( 275470 192470 ) N ; + - sink_90 DFFHQNx1_ASAP7_75t_R + PLACED ( 22850 138530 ) N ; + - sink_91 DFFHQNx1_ASAP7_75t_R + PLACED ( 129220 328560 ) N ; + - sink_92 DFFHQNx1_ASAP7_75t_R + PLACED ( 450000 215720 ) N ; + - sink_93 DFFHQNx1_ASAP7_75t_R + PLACED ( 441030 464500 ) N ; + - sink_94 DFFHQNx1_ASAP7_75t_R + PLACED ( 449300 177730 ) N ; + - sink_95 DFFHQNx1_ASAP7_75t_R + PLACED ( 111410 114350 ) N ; + - sink_96 DFFHQNx1_ASAP7_75t_R + PLACED ( 100480 104010 ) N ; + - sink_97 DFFHQNx1_ASAP7_75t_R + PLACED ( 297070 424140 ) N ; + - sink_98 DFFHQNx1_ASAP7_75t_R + PLACED ( 396600 230560 ) N ; + - sink_99 DFFHQNx1_ASAP7_75t_R + PLACED ( 310370 377840 ) N ; + - src_0 DFFHQNx1_ASAP7_75t_R + PLACED ( 240000 240000 ) N ; +END COMPONENTS +PINS 130 ; + - clk + NET clk + DIRECTION INPUT + USE SIGNAL ; + - din + NET din + DIRECTION INPUT + USE SIGNAL ; + - qout[0] + NET qout[0] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[100] + NET qout[100] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[101] + NET qout[101] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[102] + NET qout[102] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[103] + NET qout[103] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[104] + NET qout[104] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[105] + NET qout[105] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[106] + NET qout[106] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[107] + NET qout[107] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[108] + NET qout[108] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[109] + NET qout[109] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[10] + NET qout[10] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[110] + NET qout[110] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[111] + NET qout[111] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[112] + NET qout[112] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[113] + NET qout[113] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[114] + NET qout[114] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[115] + NET qout[115] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[116] + NET qout[116] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[117] + NET qout[117] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[118] + NET qout[118] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[119] + NET qout[119] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[11] + NET qout[11] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[120] + NET qout[120] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[121] + NET qout[121] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[122] + NET qout[122] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[123] + NET qout[123] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[124] + NET qout[124] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[125] + NET qout[125] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[126] + NET qout[126] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[127] + NET qout[127] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[12] + NET qout[12] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[13] + NET qout[13] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[14] + NET qout[14] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[15] + NET qout[15] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[16] + NET qout[16] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[17] + NET qout[17] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[18] + NET qout[18] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[19] + NET qout[19] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[1] + NET qout[1] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[20] + NET qout[20] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[21] + NET qout[21] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[22] + NET qout[22] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[23] + NET qout[23] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[24] + NET qout[24] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[25] + NET qout[25] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[26] + NET qout[26] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[27] + NET qout[27] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[28] + NET qout[28] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[29] + NET qout[29] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[2] + NET qout[2] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[30] + NET qout[30] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[31] + NET qout[31] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[32] + NET qout[32] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[33] + NET qout[33] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[34] + NET qout[34] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[35] + NET qout[35] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[36] + NET qout[36] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[37] + NET qout[37] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[38] + NET qout[38] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[39] + NET qout[39] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[3] + NET qout[3] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[40] + NET qout[40] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[41] + NET qout[41] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[42] + NET qout[42] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[43] + NET qout[43] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[44] + NET qout[44] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[45] + NET qout[45] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[46] + NET qout[46] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[47] + NET qout[47] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[48] + NET qout[48] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[49] + NET qout[49] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[4] + NET qout[4] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[50] + NET qout[50] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[51] + NET qout[51] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[52] + NET qout[52] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[53] + NET qout[53] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[54] + NET qout[54] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[55] + NET qout[55] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[56] + NET qout[56] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[57] + NET qout[57] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[58] + NET qout[58] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[59] + NET qout[59] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[5] + NET qout[5] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[60] + NET qout[60] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[61] + NET qout[61] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[62] + NET qout[62] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[63] + NET qout[63] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[64] + NET qout[64] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[65] + NET qout[65] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[66] + NET qout[66] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[67] + NET qout[67] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[68] + NET qout[68] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[69] + NET qout[69] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[6] + NET qout[6] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[70] + NET qout[70] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[71] + NET qout[71] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[72] + NET qout[72] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[73] + NET qout[73] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[74] + NET qout[74] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[75] + NET qout[75] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[76] + NET qout[76] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[77] + NET qout[77] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[78] + NET qout[78] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[79] + NET qout[79] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[7] + NET qout[7] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[80] + NET qout[80] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[81] + NET qout[81] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[82] + NET qout[82] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[83] + NET qout[83] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[84] + NET qout[84] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[85] + NET qout[85] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[86] + NET qout[86] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[87] + NET qout[87] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[88] + NET qout[88] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[89] + NET qout[89] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[8] + NET qout[8] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[90] + NET qout[90] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[91] + NET qout[91] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[92] + NET qout[92] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[93] + NET qout[93] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[94] + NET qout[94] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[95] + NET qout[95] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[96] + NET qout[96] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[97] + NET qout[97] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[98] + NET qout[98] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[99] + NET qout[99] + DIRECTION OUTPUT + USE SIGNAL ; + - qout[9] + NET qout[9] + DIRECTION OUTPUT + USE SIGNAL ; +END PINS +NETS 131 ; + - clk ( PIN clk ) ( src_0 CLK ) ( sink_99 CLK ) ( sink_98 CLK ) ( sink_97 CLK ) ( sink_96 CLK ) ( sink_95 CLK ) + ( sink_94 CLK ) ( sink_93 CLK ) ( sink_92 CLK ) ( sink_91 CLK ) ( sink_90 CLK ) ( sink_9 CLK ) ( sink_89 CLK ) ( sink_88 CLK ) + ( sink_87 CLK ) ( sink_86 CLK ) ( sink_85 CLK ) ( sink_84 CLK ) ( sink_83 CLK ) ( sink_82 CLK ) ( sink_81 CLK ) ( sink_80 CLK ) + ( sink_8 CLK ) ( sink_79 CLK ) ( sink_78 CLK ) ( sink_77 CLK ) ( sink_76 CLK ) ( sink_75 CLK ) ( sink_74 CLK ) ( sink_73 CLK ) + ( sink_72 CLK ) ( sink_71 CLK ) ( sink_70 CLK ) ( sink_7 CLK ) ( sink_69 CLK ) ( sink_68 CLK ) ( sink_67 CLK ) ( sink_66 CLK ) + ( sink_65 CLK ) ( sink_64 CLK ) ( sink_63 CLK ) ( sink_62 CLK ) ( sink_61 CLK ) ( sink_60 CLK ) ( sink_6 CLK ) ( sink_59 CLK ) + ( sink_58 CLK ) ( sink_57 CLK ) ( sink_56 CLK ) ( sink_55 CLK ) ( sink_54 CLK ) ( sink_53 CLK ) ( sink_52 CLK ) ( sink_51 CLK ) + ( sink_50 CLK ) ( sink_5 CLK ) ( sink_49 CLK ) ( sink_48 CLK ) ( sink_47 CLK ) ( sink_46 CLK ) ( sink_45 CLK ) ( sink_44 CLK ) + ( sink_43 CLK ) ( sink_42 CLK ) ( sink_41 CLK ) ( sink_40 CLK ) ( sink_4 CLK ) ( sink_39 CLK ) ( sink_38 CLK ) ( sink_37 CLK ) + ( sink_36 CLK ) ( sink_35 CLK ) ( sink_34 CLK ) ( sink_33 CLK ) ( sink_32 CLK ) ( sink_31 CLK ) ( sink_30 CLK ) ( sink_3 CLK ) + ( sink_29 CLK ) ( sink_28 CLK ) ( sink_27 CLK ) ( sink_26 CLK ) ( sink_25 CLK ) ( sink_24 CLK ) ( sink_23 CLK ) ( sink_22 CLK ) + ( sink_21 CLK ) ( sink_20 CLK ) ( sink_2 CLK ) ( sink_19 CLK ) ( sink_18 CLK ) ( sink_17 CLK ) ( sink_16 CLK ) ( sink_15 CLK ) + ( sink_14 CLK ) ( sink_13 CLK ) ( sink_127 CLK ) ( sink_126 CLK ) ( sink_125 CLK ) ( sink_124 CLK ) ( sink_123 CLK ) ( sink_122 CLK ) + ( sink_121 CLK ) ( sink_120 CLK ) ( sink_12 CLK ) ( sink_119 CLK ) ( sink_118 CLK ) ( sink_117 CLK ) ( sink_116 CLK ) ( sink_115 CLK ) + ( sink_114 CLK ) ( sink_113 CLK ) ( sink_112 CLK ) ( sink_111 CLK ) ( sink_110 CLK ) ( sink_11 CLK ) ( sink_109 CLK ) ( sink_108 CLK ) + ( sink_107 CLK ) ( sink_106 CLK ) ( sink_105 CLK ) ( sink_104 CLK ) ( sink_103 CLK ) ( sink_102 CLK ) ( sink_101 CLK ) ( sink_100 CLK ) + ( sink_10 CLK ) ( sink_1 CLK ) ( sink_0 CLK ) + USE SIGNAL ; + - din ( PIN din ) ( src_0 D ) + USE SIGNAL ; + - qout[0] ( PIN qout[0] ) ( sink_0 QN ) + USE SIGNAL ; + - qout[100] ( PIN qout[100] ) ( sink_100 QN ) + USE SIGNAL ; + - qout[101] ( PIN qout[101] ) ( sink_101 QN ) + USE SIGNAL ; + - qout[102] ( PIN qout[102] ) ( sink_102 QN ) + USE SIGNAL ; + - qout[103] ( PIN qout[103] ) ( sink_103 QN ) + USE SIGNAL ; + - qout[104] ( PIN qout[104] ) ( sink_104 QN ) + USE SIGNAL ; + - qout[105] ( PIN qout[105] ) ( sink_105 QN ) + USE SIGNAL ; + - qout[106] ( PIN qout[106] ) ( sink_106 QN ) + USE SIGNAL ; + - qout[107] ( PIN qout[107] ) ( sink_107 QN ) + USE SIGNAL ; + - qout[108] ( PIN qout[108] ) ( sink_108 QN ) + USE SIGNAL ; + - qout[109] ( PIN qout[109] ) ( sink_109 QN ) + USE SIGNAL ; + - qout[10] ( PIN qout[10] ) ( sink_10 QN ) + USE SIGNAL ; + - qout[110] ( PIN qout[110] ) ( sink_110 QN ) + USE SIGNAL ; + - qout[111] ( PIN qout[111] ) ( sink_111 QN ) + USE SIGNAL ; + - qout[112] ( PIN qout[112] ) ( sink_112 QN ) + USE SIGNAL ; + - qout[113] ( PIN qout[113] ) ( sink_113 QN ) + USE SIGNAL ; + - qout[114] ( PIN qout[114] ) ( sink_114 QN ) + USE SIGNAL ; + - qout[115] ( PIN qout[115] ) ( sink_115 QN ) + USE SIGNAL ; + - qout[116] ( PIN qout[116] ) ( sink_116 QN ) + USE SIGNAL ; + - qout[117] ( PIN qout[117] ) ( sink_117 QN ) + USE SIGNAL ; + - qout[118] ( PIN qout[118] ) ( sink_118 QN ) + USE SIGNAL ; + - qout[119] ( PIN qout[119] ) ( sink_119 QN ) + USE SIGNAL ; + - qout[11] ( PIN qout[11] ) ( sink_11 QN ) + USE SIGNAL ; + - qout[120] ( PIN qout[120] ) ( sink_120 QN ) + USE SIGNAL ; + - qout[121] ( PIN qout[121] ) ( sink_121 QN ) + USE SIGNAL ; + - qout[122] ( PIN qout[122] ) ( sink_122 QN ) + USE SIGNAL ; + - qout[123] ( PIN qout[123] ) ( sink_123 QN ) + USE SIGNAL ; + - qout[124] ( PIN qout[124] ) ( sink_124 QN ) + USE SIGNAL ; + - qout[125] ( PIN qout[125] ) ( sink_125 QN ) + USE SIGNAL ; + - qout[126] ( PIN qout[126] ) ( sink_126 QN ) + USE SIGNAL ; + - qout[127] ( PIN qout[127] ) ( sink_127 QN ) + USE SIGNAL ; + - qout[12] ( PIN qout[12] ) ( sink_12 QN ) + USE SIGNAL ; + - qout[13] ( PIN qout[13] ) ( sink_13 QN ) + USE SIGNAL ; + - qout[14] ( PIN qout[14] ) ( sink_14 QN ) + USE SIGNAL ; + - qout[15] ( PIN qout[15] ) ( sink_15 QN ) + USE SIGNAL ; + - qout[16] ( PIN qout[16] ) ( sink_16 QN ) + USE SIGNAL ; + - qout[17] ( PIN qout[17] ) ( sink_17 QN ) + USE SIGNAL ; + - qout[18] ( PIN qout[18] ) ( sink_18 QN ) + USE SIGNAL ; + - qout[19] ( PIN qout[19] ) ( sink_19 QN ) + USE SIGNAL ; + - qout[1] ( PIN qout[1] ) ( sink_1 QN ) + USE SIGNAL ; + - qout[20] ( PIN qout[20] ) ( sink_20 QN ) + USE SIGNAL ; + - qout[21] ( PIN qout[21] ) ( sink_21 QN ) + USE SIGNAL ; + - qout[22] ( PIN qout[22] ) ( sink_22 QN ) + USE SIGNAL ; + - qout[23] ( PIN qout[23] ) ( sink_23 QN ) + USE SIGNAL ; + - qout[24] ( PIN qout[24] ) ( sink_24 QN ) + USE SIGNAL ; + - qout[25] ( PIN qout[25] ) ( sink_25 QN ) + USE SIGNAL ; + - qout[26] ( PIN qout[26] ) ( sink_26 QN ) + USE SIGNAL ; + - qout[27] ( PIN qout[27] ) ( sink_27 QN ) + USE SIGNAL ; + - qout[28] ( PIN qout[28] ) ( sink_28 QN ) + USE SIGNAL ; + - qout[29] ( PIN qout[29] ) ( sink_29 QN ) + USE SIGNAL ; + - qout[2] ( PIN qout[2] ) ( sink_2 QN ) + USE SIGNAL ; + - qout[30] ( PIN qout[30] ) ( sink_30 QN ) + USE SIGNAL ; + - qout[31] ( PIN qout[31] ) ( sink_31 QN ) + USE SIGNAL ; + - qout[32] ( PIN qout[32] ) ( sink_32 QN ) + USE SIGNAL ; + - qout[33] ( PIN qout[33] ) ( sink_33 QN ) + USE SIGNAL ; + - qout[34] ( PIN qout[34] ) ( sink_34 QN ) + USE SIGNAL ; + - qout[35] ( PIN qout[35] ) ( sink_35 QN ) + USE SIGNAL ; + - qout[36] ( PIN qout[36] ) ( sink_36 QN ) + USE SIGNAL ; + - qout[37] ( PIN qout[37] ) ( sink_37 QN ) + USE SIGNAL ; + - qout[38] ( PIN qout[38] ) ( sink_38 QN ) + USE SIGNAL ; + - qout[39] ( PIN qout[39] ) ( sink_39 QN ) + USE SIGNAL ; + - qout[3] ( PIN qout[3] ) ( sink_3 QN ) + USE SIGNAL ; + - qout[40] ( PIN qout[40] ) ( sink_40 QN ) + USE SIGNAL ; + - qout[41] ( PIN qout[41] ) ( sink_41 QN ) + USE SIGNAL ; + - qout[42] ( PIN qout[42] ) ( sink_42 QN ) + USE SIGNAL ; + - qout[43] ( PIN qout[43] ) ( sink_43 QN ) + USE SIGNAL ; + - qout[44] ( PIN qout[44] ) ( sink_44 QN ) + USE SIGNAL ; + - qout[45] ( PIN qout[45] ) ( sink_45 QN ) + USE SIGNAL ; + - qout[46] ( PIN qout[46] ) ( sink_46 QN ) + USE SIGNAL ; + - qout[47] ( PIN qout[47] ) ( sink_47 QN ) + USE SIGNAL ; + - qout[48] ( PIN qout[48] ) ( sink_48 QN ) + USE SIGNAL ; + - qout[49] ( PIN qout[49] ) ( sink_49 QN ) + USE SIGNAL ; + - qout[4] ( PIN qout[4] ) ( sink_4 QN ) + USE SIGNAL ; + - qout[50] ( PIN qout[50] ) ( sink_50 QN ) + USE SIGNAL ; + - qout[51] ( PIN qout[51] ) ( sink_51 QN ) + USE SIGNAL ; + - qout[52] ( PIN qout[52] ) ( sink_52 QN ) + USE SIGNAL ; + - qout[53] ( PIN qout[53] ) ( sink_53 QN ) + USE SIGNAL ; + - qout[54] ( PIN qout[54] ) ( sink_54 QN ) + USE SIGNAL ; + - qout[55] ( PIN qout[55] ) ( sink_55 QN ) + USE SIGNAL ; + - qout[56] ( PIN qout[56] ) ( sink_56 QN ) + USE SIGNAL ; + - qout[57] ( PIN qout[57] ) ( sink_57 QN ) + USE SIGNAL ; + - qout[58] ( PIN qout[58] ) ( sink_58 QN ) + USE SIGNAL ; + - qout[59] ( PIN qout[59] ) ( sink_59 QN ) + USE SIGNAL ; + - qout[5] ( PIN qout[5] ) ( sink_5 QN ) + USE SIGNAL ; + - qout[60] ( PIN qout[60] ) ( sink_60 QN ) + USE SIGNAL ; + - qout[61] ( PIN qout[61] ) ( sink_61 QN ) + USE SIGNAL ; + - qout[62] ( PIN qout[62] ) ( sink_62 QN ) + USE SIGNAL ; + - qout[63] ( PIN qout[63] ) ( sink_63 QN ) + USE SIGNAL ; + - qout[64] ( PIN qout[64] ) ( sink_64 QN ) + USE SIGNAL ; + - qout[65] ( PIN qout[65] ) ( sink_65 QN ) + USE SIGNAL ; + - qout[66] ( PIN qout[66] ) ( sink_66 QN ) + USE SIGNAL ; + - qout[67] ( PIN qout[67] ) ( sink_67 QN ) + USE SIGNAL ; + - qout[68] ( PIN qout[68] ) ( sink_68 QN ) + USE SIGNAL ; + - qout[69] ( PIN qout[69] ) ( sink_69 QN ) + USE SIGNAL ; + - qout[6] ( PIN qout[6] ) ( sink_6 QN ) + USE SIGNAL ; + - qout[70] ( PIN qout[70] ) ( sink_70 QN ) + USE SIGNAL ; + - qout[71] ( PIN qout[71] ) ( sink_71 QN ) + USE SIGNAL ; + - qout[72] ( PIN qout[72] ) ( sink_72 QN ) + USE SIGNAL ; + - qout[73] ( PIN qout[73] ) ( sink_73 QN ) + USE SIGNAL ; + - qout[74] ( PIN qout[74] ) ( sink_74 QN ) + USE SIGNAL ; + - qout[75] ( PIN qout[75] ) ( sink_75 QN ) + USE SIGNAL ; + - qout[76] ( PIN qout[76] ) ( sink_76 QN ) + USE SIGNAL ; + - qout[77] ( PIN qout[77] ) ( sink_77 QN ) + USE SIGNAL ; + - qout[78] ( PIN qout[78] ) ( sink_78 QN ) + USE SIGNAL ; + - qout[79] ( PIN qout[79] ) ( sink_79 QN ) + USE SIGNAL ; + - qout[7] ( PIN qout[7] ) ( sink_7 QN ) + USE SIGNAL ; + - qout[80] ( PIN qout[80] ) ( sink_80 QN ) + USE SIGNAL ; + - qout[81] ( PIN qout[81] ) ( sink_81 QN ) + USE SIGNAL ; + - qout[82] ( PIN qout[82] ) ( sink_82 QN ) + USE SIGNAL ; + - qout[83] ( PIN qout[83] ) ( sink_83 QN ) + USE SIGNAL ; + - qout[84] ( PIN qout[84] ) ( sink_84 QN ) + USE SIGNAL ; + - qout[85] ( PIN qout[85] ) ( sink_85 QN ) + USE SIGNAL ; + - qout[86] ( PIN qout[86] ) ( sink_86 QN ) + USE SIGNAL ; + - qout[87] ( PIN qout[87] ) ( sink_87 QN ) + USE SIGNAL ; + - qout[88] ( PIN qout[88] ) ( sink_88 QN ) + USE SIGNAL ; + - qout[89] ( PIN qout[89] ) ( sink_89 QN ) + USE SIGNAL ; + - qout[8] ( PIN qout[8] ) ( sink_8 QN ) + USE SIGNAL ; + - qout[90] ( PIN qout[90] ) ( sink_90 QN ) + USE SIGNAL ; + - qout[91] ( PIN qout[91] ) ( sink_91 QN ) + USE SIGNAL ; + - qout[92] ( PIN qout[92] ) ( sink_92 QN ) + USE SIGNAL ; + - qout[93] ( PIN qout[93] ) ( sink_93 QN ) + USE SIGNAL ; + - qout[94] ( PIN qout[94] ) ( sink_94 QN ) + USE SIGNAL ; + - qout[95] ( PIN qout[95] ) ( sink_95 QN ) + USE SIGNAL ; + - qout[96] ( PIN qout[96] ) ( sink_96 QN ) + USE SIGNAL ; + - qout[97] ( PIN qout[97] ) ( sink_97 QN ) + USE SIGNAL ; + - qout[98] ( PIN qout[98] ) ( sink_98 QN ) + USE SIGNAL ; + - qout[99] ( PIN qout[99] ) ( sink_99 QN ) + USE SIGNAL ; + - qout[9] ( PIN qout[9] ) ( sink_9 QN ) + USE SIGNAL ; + - src_y ( src_0 QN ) ( sink_99 D ) ( sink_98 D ) ( sink_97 D ) ( sink_96 D ) ( sink_95 D ) ( sink_94 D ) + ( sink_93 D ) ( sink_92 D ) ( sink_91 D ) ( sink_90 D ) ( sink_9 D ) ( sink_89 D ) ( sink_88 D ) ( sink_87 D ) + ( sink_86 D ) ( sink_85 D ) ( sink_84 D ) ( sink_83 D ) ( sink_82 D ) ( sink_81 D ) ( sink_80 D ) ( sink_8 D ) + ( sink_79 D ) ( sink_78 D ) ( sink_77 D ) ( sink_76 D ) ( sink_75 D ) ( sink_74 D ) ( sink_73 D ) ( sink_72 D ) + ( sink_71 D ) ( sink_70 D ) ( sink_7 D ) ( sink_69 D ) ( sink_68 D ) ( sink_67 D ) ( sink_66 D ) ( sink_65 D ) + ( sink_64 D ) ( sink_63 D ) ( sink_62 D ) ( sink_61 D ) ( sink_60 D ) ( sink_6 D ) ( sink_59 D ) ( sink_58 D ) + ( sink_57 D ) ( sink_56 D ) ( sink_55 D ) ( sink_54 D ) ( sink_53 D ) ( sink_52 D ) ( sink_51 D ) ( sink_50 D ) + ( sink_5 D ) ( sink_49 D ) ( sink_48 D ) ( sink_47 D ) ( sink_46 D ) ( sink_45 D ) ( sink_44 D ) ( sink_43 D ) + ( sink_42 D ) ( sink_41 D ) ( sink_40 D ) ( sink_4 D ) ( sink_39 D ) ( sink_38 D ) ( sink_37 D ) ( sink_36 D ) + ( sink_35 D ) ( sink_34 D ) ( sink_33 D ) ( sink_32 D ) ( sink_31 D ) ( sink_30 D ) ( sink_3 D ) ( sink_29 D ) + ( sink_28 D ) ( sink_27 D ) ( sink_26 D ) ( sink_25 D ) ( sink_24 D ) ( sink_23 D ) ( sink_22 D ) ( sink_21 D ) + ( sink_20 D ) ( sink_2 D ) ( sink_19 D ) ( sink_18 D ) ( sink_17 D ) ( sink_16 D ) ( sink_15 D ) ( sink_14 D ) + ( sink_13 D ) ( sink_127 D ) ( sink_126 D ) ( sink_125 D ) ( sink_124 D ) ( sink_123 D ) ( sink_122 D ) ( sink_121 D ) + ( sink_120 D ) ( sink_12 D ) ( sink_119 D ) ( sink_118 D ) ( sink_117 D ) ( sink_116 D ) ( sink_115 D ) ( sink_114 D ) + ( sink_113 D ) ( sink_112 D ) ( sink_111 D ) ( sink_110 D ) ( sink_11 D ) ( sink_109 D ) ( sink_108 D ) ( sink_107 D ) + ( sink_106 D ) ( sink_105 D ) ( sink_104 D ) ( sink_103 D ) ( sink_102 D ) ( sink_101 D ) ( sink_100 D ) ( sink_10 D ) + ( sink_1 D ) ( sink_0 D ) + USE SIGNAL ; +END NETS +END DESIGN diff --git a/src/rsz/test/inv_pair1.ok b/src/rsz/test/inv_pair1.ok new file mode 100644 index 00000000000..cb7ce26038d --- /dev/null +++ b/src/rsz/test/inv_pair1.ok @@ -0,0 +1,48 @@ +[INFO ODB-0227] LEF file: asap7/asap7_tech_1x_201209.lef, created 30 layers, 9 vias +[INFO ODB-0227] LEF file: asap7/asap7sc7p5t_28_R_1x_220121a.lef, created 212 library cells +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 13178, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 13211, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 13244, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 13277, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 13310, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 13343, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 13376, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 14772, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 14805, timing group from output port. +[WARNING STA-1212] asap7/asap7sc7p5t_SIMPLE_RVT_FF_nldm_211120.lib.gz line 14838, timing group from output port. +[INFO ODB-0128] Design: inv_pair1 +[INFO ODB-0252] Updated 130 pins. +[INFO ODB-0253] Updated 129 components. +[INFO ODB-0254] Updated 131 nets and 387 connections. +Iteration | Area | Resized | Buffers | Nets repaired | Remaining +--------------------------------------------------------------------- + 0 | +0.0% | 0 | 0 | 0 | 131 + final | +9.8% | 1 | 24 | 1 | 0 +--------------------------------------------------------------------- +[INFO RSZ-0034] Found 1 slew violations. +[INFO RSZ-0036] Found 1 capacitance violations. +[INFO RSZ-0039] Resized 1 instances. +[INFO RSZ-0038] Inserted 24 buffers in 1 nets. +[INFO RSZ-0100] Repair move sequence: UnbufferMove SizeUpMove SwapPinsMove BufferMove CloneMove SplitLoadMove +[INFO RSZ-0094] Found 128 endpoints with setup violations. +[INFO RSZ-0099] Repairing 128 out of 128 (100.00%) violating endpoints... + Iter | Removed | Resized | Inserted | Cloned | Pin | Area | WNS | StTNS | EnTNS | Viol | Worst + | Buffers | Gates | Buffers | Gates | Swaps | | | | | Endpts | St/EnPt +------------------------------------------------------------------------------------------------------------------------------ + 0* | 0 | 0 | 0 | 0 | 0 | +0.0% | -458.923 | -458.9 | -38593.2 | 128 | sink_93/D + 1460* | 3 | 56 | 40 | 0 | 0 | +17.9% | -351.845 | -351.8 | -34345.8 | 128 | sink_93/D + 1460+ | 3 | 56 | 40 | 0 | 0 | +17.9% | -351.845 | -351.8 | -34345.8 | 128 | sink_93/D + final | 3 | 57 | 40 | 0 | 0 | +18.0% | -351.845 | -351.8 | -34340.1 | 128 | sink_93/D +------------------------------------------------------------------------------------------------------------------------------ +[INFO RSZ-0059] Removed 3 buffers. +[INFO RSZ-0040] Inserted 40 buffers. +[INFO RSZ-0051] Resized 57 instances: 57 up, 0 up match, 0 down, 0 VT +[WARNING RSZ-0062] Unable to repair all setup violations. + Iter | Area | Removed | Inserted | Pins + | | Buffers | Buffers | Remaining +------------------------------------------------------- + 0 | +0.0% | 0 | 0 | 1 + final | -10.5% | 53 | 43 | 0 +------------------------------------------------------- +rsz path (repair_timing) inserted inverters: yes +gpl path (fully_rebuffer) ran without error: yes diff --git a/src/rsz/test/inv_pair1.tcl b/src/rsz/test/inv_pair1.tcl new file mode 100644 index 00000000000..07892b13592 --- /dev/null +++ b/src/rsz/test/inv_pair1.tcl @@ -0,0 +1,57 @@ +# Inverter-pair insertion in the Rebuffer DP (enable_inverter_pair on). +# +# - repair_timing -setup (rebufferPin / "rsz" path) genuinely inserts inverter +# pairs on this fanout net -- verified by a positive inverter-count delta. +# - rsz::fully_rebuffer (placement / "gpl" path) shares the same DP; it is +# exercised here to confirm it runs cleanly with the inverter machinery +# active. It does not commit inverters on a single net (inverter pairs are +# slack-neutral against buffers, so the DP only prefers them across larger +# designs with many unconstrained nets -- that QoR coverage lives in flow +# CI, see PR Future-work). +# +# rebuffer1 separately checks the flag-off path stays byte-identical to baseline. +source "helpers.tcl" +read_lef asap7/asap7_tech_1x_201209.lef +read_lef asap7/asap7sc7p5t_28_R_1x_220121a.lef +foreach lf {AO INVBUF OA SIMPLE} { + foreach f [glob asap7/asap7sc7p5t_${lf}_RVT_FF_nldm_*.lib.gz] { read_liberty $f } +} +read_liberty asap7/asap7sc7p5t_SEQ_RVT_FF_nldm_220123.lib +read_verilog inv_pair1.v +link_design inv_pair1 +read_def -floorplan_initialize inv_pair1.def +create_clock -name clk -period 0.08 [get_ports clk] +source asap7/setRC.tcl +set_wire_rc -signal -layer M3 +estimate_parasitics -placement + +proc inv_count { } { + set n 0 + set blk [[[ord::get_db] getChip] getBlock] + foreach inst [$blk getInsts] { + if { [string match {INVx*} [[$inst getMaster] getName]] } { incr n } + } + return $n +} + +# Exercise the public command, including the -disable flag round-trip. +enable_inverter_pair -disable +enable_inverter_pair + +# rsz repair path: genuinely inserts inverter pairs (delta from zero). +repair_design +repair_timing -setup -repair_tns 100 +set rsz_inv [inv_count] + +# gpl placement path: exercise the shared DP via fully_rebuffer and confirm it +# runs cleanly with the inverter machinery active (no crash / no error). +set gpl_errors 0 +foreach p [get_pins -of_objects [get_cells src_*] -filter {direction == output}] { + if { [catch { rsz::fully_rebuffer $p } msg] } { + incr gpl_errors + puts "fully_rebuffer error: $msg" + } +} + +puts "rsz path (repair_timing) inserted inverters: [expr { $rsz_inv > 0 ? {yes} : {no} }]" +puts "gpl path (fully_rebuffer) ran without error: [expr { $gpl_errors == 0 ? {yes} : {no} }]" diff --git a/src/rsz/test/inv_pair1.v b/src/rsz/test/inv_pair1.v new file mode 100644 index 00000000000..d3e0445c661 --- /dev/null +++ b/src/rsz/test/inv_pair1.v @@ -0,0 +1,134 @@ +module inv_pair1 (input clk, + input din, + output [127:0] qout); + wire src_y; + DFFHQNx1_ASAP7_75t_R src_0 (.CLK(clk), .D(din), .QN(src_y)); + DFFHQNx1_ASAP7_75t_R sink_0 (.CLK(clk), .D(src_y), .QN(qout[0])); + DFFHQNx1_ASAP7_75t_R sink_1 (.CLK(clk), .D(src_y), .QN(qout[1])); + DFFHQNx1_ASAP7_75t_R sink_2 (.CLK(clk), .D(src_y), .QN(qout[2])); + DFFHQNx1_ASAP7_75t_R sink_3 (.CLK(clk), .D(src_y), .QN(qout[3])); + DFFHQNx1_ASAP7_75t_R sink_4 (.CLK(clk), .D(src_y), .QN(qout[4])); + DFFHQNx1_ASAP7_75t_R sink_5 (.CLK(clk), .D(src_y), .QN(qout[5])); + DFFHQNx1_ASAP7_75t_R sink_6 (.CLK(clk), .D(src_y), .QN(qout[6])); + DFFHQNx1_ASAP7_75t_R sink_7 (.CLK(clk), .D(src_y), .QN(qout[7])); + DFFHQNx1_ASAP7_75t_R sink_8 (.CLK(clk), .D(src_y), .QN(qout[8])); + DFFHQNx1_ASAP7_75t_R sink_9 (.CLK(clk), .D(src_y), .QN(qout[9])); + DFFHQNx1_ASAP7_75t_R sink_10 (.CLK(clk), .D(src_y), .QN(qout[10])); + DFFHQNx1_ASAP7_75t_R sink_11 (.CLK(clk), .D(src_y), .QN(qout[11])); + DFFHQNx1_ASAP7_75t_R sink_12 (.CLK(clk), .D(src_y), .QN(qout[12])); + DFFHQNx1_ASAP7_75t_R sink_13 (.CLK(clk), .D(src_y), .QN(qout[13])); + DFFHQNx1_ASAP7_75t_R sink_14 (.CLK(clk), .D(src_y), .QN(qout[14])); + DFFHQNx1_ASAP7_75t_R sink_15 (.CLK(clk), .D(src_y), .QN(qout[15])); + DFFHQNx1_ASAP7_75t_R sink_16 (.CLK(clk), .D(src_y), .QN(qout[16])); + DFFHQNx1_ASAP7_75t_R sink_17 (.CLK(clk), .D(src_y), .QN(qout[17])); + DFFHQNx1_ASAP7_75t_R sink_18 (.CLK(clk), .D(src_y), .QN(qout[18])); + DFFHQNx1_ASAP7_75t_R sink_19 (.CLK(clk), .D(src_y), .QN(qout[19])); + DFFHQNx1_ASAP7_75t_R sink_20 (.CLK(clk), .D(src_y), .QN(qout[20])); + DFFHQNx1_ASAP7_75t_R sink_21 (.CLK(clk), .D(src_y), .QN(qout[21])); + DFFHQNx1_ASAP7_75t_R sink_22 (.CLK(clk), .D(src_y), .QN(qout[22])); + DFFHQNx1_ASAP7_75t_R sink_23 (.CLK(clk), .D(src_y), .QN(qout[23])); + DFFHQNx1_ASAP7_75t_R sink_24 (.CLK(clk), .D(src_y), .QN(qout[24])); + DFFHQNx1_ASAP7_75t_R sink_25 (.CLK(clk), .D(src_y), .QN(qout[25])); + DFFHQNx1_ASAP7_75t_R sink_26 (.CLK(clk), .D(src_y), .QN(qout[26])); + DFFHQNx1_ASAP7_75t_R sink_27 (.CLK(clk), .D(src_y), .QN(qout[27])); + DFFHQNx1_ASAP7_75t_R sink_28 (.CLK(clk), .D(src_y), .QN(qout[28])); + DFFHQNx1_ASAP7_75t_R sink_29 (.CLK(clk), .D(src_y), .QN(qout[29])); + DFFHQNx1_ASAP7_75t_R sink_30 (.CLK(clk), .D(src_y), .QN(qout[30])); + DFFHQNx1_ASAP7_75t_R sink_31 (.CLK(clk), .D(src_y), .QN(qout[31])); + DFFHQNx1_ASAP7_75t_R sink_32 (.CLK(clk), .D(src_y), .QN(qout[32])); + DFFHQNx1_ASAP7_75t_R sink_33 (.CLK(clk), .D(src_y), .QN(qout[33])); + DFFHQNx1_ASAP7_75t_R sink_34 (.CLK(clk), .D(src_y), .QN(qout[34])); + DFFHQNx1_ASAP7_75t_R sink_35 (.CLK(clk), .D(src_y), .QN(qout[35])); + DFFHQNx1_ASAP7_75t_R sink_36 (.CLK(clk), .D(src_y), .QN(qout[36])); + DFFHQNx1_ASAP7_75t_R sink_37 (.CLK(clk), .D(src_y), .QN(qout[37])); + DFFHQNx1_ASAP7_75t_R sink_38 (.CLK(clk), .D(src_y), .QN(qout[38])); + DFFHQNx1_ASAP7_75t_R sink_39 (.CLK(clk), .D(src_y), .QN(qout[39])); + DFFHQNx1_ASAP7_75t_R sink_40 (.CLK(clk), .D(src_y), .QN(qout[40])); + DFFHQNx1_ASAP7_75t_R sink_41 (.CLK(clk), .D(src_y), .QN(qout[41])); + DFFHQNx1_ASAP7_75t_R sink_42 (.CLK(clk), .D(src_y), .QN(qout[42])); + DFFHQNx1_ASAP7_75t_R sink_43 (.CLK(clk), .D(src_y), .QN(qout[43])); + DFFHQNx1_ASAP7_75t_R sink_44 (.CLK(clk), .D(src_y), .QN(qout[44])); + DFFHQNx1_ASAP7_75t_R sink_45 (.CLK(clk), .D(src_y), .QN(qout[45])); + DFFHQNx1_ASAP7_75t_R sink_46 (.CLK(clk), .D(src_y), .QN(qout[46])); + DFFHQNx1_ASAP7_75t_R sink_47 (.CLK(clk), .D(src_y), .QN(qout[47])); + DFFHQNx1_ASAP7_75t_R sink_48 (.CLK(clk), .D(src_y), .QN(qout[48])); + DFFHQNx1_ASAP7_75t_R sink_49 (.CLK(clk), .D(src_y), .QN(qout[49])); + DFFHQNx1_ASAP7_75t_R sink_50 (.CLK(clk), .D(src_y), .QN(qout[50])); + DFFHQNx1_ASAP7_75t_R sink_51 (.CLK(clk), .D(src_y), .QN(qout[51])); + DFFHQNx1_ASAP7_75t_R sink_52 (.CLK(clk), .D(src_y), .QN(qout[52])); + DFFHQNx1_ASAP7_75t_R sink_53 (.CLK(clk), .D(src_y), .QN(qout[53])); + DFFHQNx1_ASAP7_75t_R sink_54 (.CLK(clk), .D(src_y), .QN(qout[54])); + DFFHQNx1_ASAP7_75t_R sink_55 (.CLK(clk), .D(src_y), .QN(qout[55])); + DFFHQNx1_ASAP7_75t_R sink_56 (.CLK(clk), .D(src_y), .QN(qout[56])); + DFFHQNx1_ASAP7_75t_R sink_57 (.CLK(clk), .D(src_y), .QN(qout[57])); + DFFHQNx1_ASAP7_75t_R sink_58 (.CLK(clk), .D(src_y), .QN(qout[58])); + DFFHQNx1_ASAP7_75t_R sink_59 (.CLK(clk), .D(src_y), .QN(qout[59])); + DFFHQNx1_ASAP7_75t_R sink_60 (.CLK(clk), .D(src_y), .QN(qout[60])); + DFFHQNx1_ASAP7_75t_R sink_61 (.CLK(clk), .D(src_y), .QN(qout[61])); + DFFHQNx1_ASAP7_75t_R sink_62 (.CLK(clk), .D(src_y), .QN(qout[62])); + DFFHQNx1_ASAP7_75t_R sink_63 (.CLK(clk), .D(src_y), .QN(qout[63])); + DFFHQNx1_ASAP7_75t_R sink_64 (.CLK(clk), .D(src_y), .QN(qout[64])); + DFFHQNx1_ASAP7_75t_R sink_65 (.CLK(clk), .D(src_y), .QN(qout[65])); + DFFHQNx1_ASAP7_75t_R sink_66 (.CLK(clk), .D(src_y), .QN(qout[66])); + DFFHQNx1_ASAP7_75t_R sink_67 (.CLK(clk), .D(src_y), .QN(qout[67])); + DFFHQNx1_ASAP7_75t_R sink_68 (.CLK(clk), .D(src_y), .QN(qout[68])); + DFFHQNx1_ASAP7_75t_R sink_69 (.CLK(clk), .D(src_y), .QN(qout[69])); + DFFHQNx1_ASAP7_75t_R sink_70 (.CLK(clk), .D(src_y), .QN(qout[70])); + DFFHQNx1_ASAP7_75t_R sink_71 (.CLK(clk), .D(src_y), .QN(qout[71])); + DFFHQNx1_ASAP7_75t_R sink_72 (.CLK(clk), .D(src_y), .QN(qout[72])); + DFFHQNx1_ASAP7_75t_R sink_73 (.CLK(clk), .D(src_y), .QN(qout[73])); + DFFHQNx1_ASAP7_75t_R sink_74 (.CLK(clk), .D(src_y), .QN(qout[74])); + DFFHQNx1_ASAP7_75t_R sink_75 (.CLK(clk), .D(src_y), .QN(qout[75])); + DFFHQNx1_ASAP7_75t_R sink_76 (.CLK(clk), .D(src_y), .QN(qout[76])); + DFFHQNx1_ASAP7_75t_R sink_77 (.CLK(clk), .D(src_y), .QN(qout[77])); + DFFHQNx1_ASAP7_75t_R sink_78 (.CLK(clk), .D(src_y), .QN(qout[78])); + DFFHQNx1_ASAP7_75t_R sink_79 (.CLK(clk), .D(src_y), .QN(qout[79])); + DFFHQNx1_ASAP7_75t_R sink_80 (.CLK(clk), .D(src_y), .QN(qout[80])); + DFFHQNx1_ASAP7_75t_R sink_81 (.CLK(clk), .D(src_y), .QN(qout[81])); + DFFHQNx1_ASAP7_75t_R sink_82 (.CLK(clk), .D(src_y), .QN(qout[82])); + DFFHQNx1_ASAP7_75t_R sink_83 (.CLK(clk), .D(src_y), .QN(qout[83])); + DFFHQNx1_ASAP7_75t_R sink_84 (.CLK(clk), .D(src_y), .QN(qout[84])); + DFFHQNx1_ASAP7_75t_R sink_85 (.CLK(clk), .D(src_y), .QN(qout[85])); + DFFHQNx1_ASAP7_75t_R sink_86 (.CLK(clk), .D(src_y), .QN(qout[86])); + DFFHQNx1_ASAP7_75t_R sink_87 (.CLK(clk), .D(src_y), .QN(qout[87])); + DFFHQNx1_ASAP7_75t_R sink_88 (.CLK(clk), .D(src_y), .QN(qout[88])); + DFFHQNx1_ASAP7_75t_R sink_89 (.CLK(clk), .D(src_y), .QN(qout[89])); + DFFHQNx1_ASAP7_75t_R sink_90 (.CLK(clk), .D(src_y), .QN(qout[90])); + DFFHQNx1_ASAP7_75t_R sink_91 (.CLK(clk), .D(src_y), .QN(qout[91])); + DFFHQNx1_ASAP7_75t_R sink_92 (.CLK(clk), .D(src_y), .QN(qout[92])); + DFFHQNx1_ASAP7_75t_R sink_93 (.CLK(clk), .D(src_y), .QN(qout[93])); + DFFHQNx1_ASAP7_75t_R sink_94 (.CLK(clk), .D(src_y), .QN(qout[94])); + DFFHQNx1_ASAP7_75t_R sink_95 (.CLK(clk), .D(src_y), .QN(qout[95])); + DFFHQNx1_ASAP7_75t_R sink_96 (.CLK(clk), .D(src_y), .QN(qout[96])); + DFFHQNx1_ASAP7_75t_R sink_97 (.CLK(clk), .D(src_y), .QN(qout[97])); + DFFHQNx1_ASAP7_75t_R sink_98 (.CLK(clk), .D(src_y), .QN(qout[98])); + DFFHQNx1_ASAP7_75t_R sink_99 (.CLK(clk), .D(src_y), .QN(qout[99])); + DFFHQNx1_ASAP7_75t_R sink_100 (.CLK(clk), .D(src_y), .QN(qout[100])); + DFFHQNx1_ASAP7_75t_R sink_101 (.CLK(clk), .D(src_y), .QN(qout[101])); + DFFHQNx1_ASAP7_75t_R sink_102 (.CLK(clk), .D(src_y), .QN(qout[102])); + DFFHQNx1_ASAP7_75t_R sink_103 (.CLK(clk), .D(src_y), .QN(qout[103])); + DFFHQNx1_ASAP7_75t_R sink_104 (.CLK(clk), .D(src_y), .QN(qout[104])); + DFFHQNx1_ASAP7_75t_R sink_105 (.CLK(clk), .D(src_y), .QN(qout[105])); + DFFHQNx1_ASAP7_75t_R sink_106 (.CLK(clk), .D(src_y), .QN(qout[106])); + DFFHQNx1_ASAP7_75t_R sink_107 (.CLK(clk), .D(src_y), .QN(qout[107])); + DFFHQNx1_ASAP7_75t_R sink_108 (.CLK(clk), .D(src_y), .QN(qout[108])); + DFFHQNx1_ASAP7_75t_R sink_109 (.CLK(clk), .D(src_y), .QN(qout[109])); + DFFHQNx1_ASAP7_75t_R sink_110 (.CLK(clk), .D(src_y), .QN(qout[110])); + DFFHQNx1_ASAP7_75t_R sink_111 (.CLK(clk), .D(src_y), .QN(qout[111])); + DFFHQNx1_ASAP7_75t_R sink_112 (.CLK(clk), .D(src_y), .QN(qout[112])); + DFFHQNx1_ASAP7_75t_R sink_113 (.CLK(clk), .D(src_y), .QN(qout[113])); + DFFHQNx1_ASAP7_75t_R sink_114 (.CLK(clk), .D(src_y), .QN(qout[114])); + DFFHQNx1_ASAP7_75t_R sink_115 (.CLK(clk), .D(src_y), .QN(qout[115])); + DFFHQNx1_ASAP7_75t_R sink_116 (.CLK(clk), .D(src_y), .QN(qout[116])); + DFFHQNx1_ASAP7_75t_R sink_117 (.CLK(clk), .D(src_y), .QN(qout[117])); + DFFHQNx1_ASAP7_75t_R sink_118 (.CLK(clk), .D(src_y), .QN(qout[118])); + DFFHQNx1_ASAP7_75t_R sink_119 (.CLK(clk), .D(src_y), .QN(qout[119])); + DFFHQNx1_ASAP7_75t_R sink_120 (.CLK(clk), .D(src_y), .QN(qout[120])); + DFFHQNx1_ASAP7_75t_R sink_121 (.CLK(clk), .D(src_y), .QN(qout[121])); + DFFHQNx1_ASAP7_75t_R sink_122 (.CLK(clk), .D(src_y), .QN(qout[122])); + DFFHQNx1_ASAP7_75t_R sink_123 (.CLK(clk), .D(src_y), .QN(qout[123])); + DFFHQNx1_ASAP7_75t_R sink_124 (.CLK(clk), .D(src_y), .QN(qout[124])); + DFFHQNx1_ASAP7_75t_R sink_125 (.CLK(clk), .D(src_y), .QN(qout[125])); + DFFHQNx1_ASAP7_75t_R sink_126 (.CLK(clk), .D(src_y), .QN(qout[126])); + DFFHQNx1_ASAP7_75t_R sink_127 (.CLK(clk), .D(src_y), .QN(qout[127])); +endmodule