offcode 0.0.0-stage → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -2
- package/data/index.json +1 -0
- package/data/problems/01-matrix.json +1 -0
- package/data/problems/1-bit-and-2-bit-characters.json +1 -0
- package/data/problems/132-pattern.json +1 -0
- package/data/problems/2-keys-keyboard.json +1 -0
- package/data/problems/24-game.json +1 -0
- package/data/problems/3sum-closest.json +1 -0
- package/data/problems/3sum-smaller.json +1 -0
- package/data/problems/3sum-with-multiplicity.json +1 -0
- package/data/problems/3sum.json +1 -0
- package/data/problems/4-keys-keyboard.json +1 -0
- package/data/problems/4sum-ii.json +1 -0
- package/data/problems/4sum.json +1 -0
- package/data/problems/accounts-merge.json +1 -0
- package/data/problems/add-binary.json +1 -0
- package/data/problems/add-bold-tag-in-string.json +1 -0
- package/data/problems/add-digits.json +1 -0
- package/data/problems/add-one-row-to-tree.json +1 -0
- package/data/problems/add-strings.json +1 -0
- package/data/problems/add-to-array-form-of-integer.json +1 -0
- package/data/problems/add-two-numbers-ii.json +1 -0
- package/data/problems/add-two-numbers.json +1 -0
- package/data/problems/additive-number.json +1 -0
- package/data/problems/advantage-shuffle.json +1 -0
- package/data/problems/alien-dictionary.json +1 -0
- package/data/problems/all-nodes-distance-k-in-binary-tree.json +1 -0
- package/data/problems/all-oone-data-structure.json +1 -0
- package/data/problems/all-paths-from-source-to-target.json +1 -0
- package/data/problems/all-possible-full-binary-trees.json +1 -0
- package/data/problems/ambiguous-coordinates.json +1 -0
- package/data/problems/android-unlock-patterns.json +1 -0
- package/data/problems/arithmetic-slices-ii-subsequence.json +1 -0
- package/data/problems/arithmetic-slices.json +1 -0
- package/data/problems/arranging-coins.json +1 -0
- package/data/problems/array-nesting.json +1 -0
- package/data/problems/array-of-doubled-pairs.json +1 -0
- package/data/problems/array-partition.json +1 -0
- package/data/problems/assign-cookies.json +1 -0
- package/data/problems/asteroid-collision.json +1 -0
- package/data/problems/available-captures-for-rook.json +1 -0
- package/data/problems/average-of-levels-in-binary-tree.json +1 -0
- package/data/problems/backspace-string-compare.json +1 -0
- package/data/problems/bag-of-tokens.json +1 -0
- package/data/problems/balanced-binary-tree.json +1 -0
- package/data/problems/base-7.json +1 -0
- package/data/problems/baseball-game.json +1 -0
- package/data/problems/basic-absolute-value.json +1 -0
- package/data/problems/basic-array-max.json +1 -0
- package/data/problems/basic-array-min.json +1 -0
- package/data/problems/basic-array-sum-rec.json +1 -0
- package/data/problems/basic-array-sum.json +1 -0
- package/data/problems/basic-average-floor.json +1 -0
- package/data/problems/basic-bubble-sort.json +1 -0
- package/data/problems/basic-calculator-ii.json +1 -0
- package/data/problems/basic-calculator-iii.json +1 -0
- package/data/problems/basic-calculator-iv.json +1 -0
- package/data/problems/basic-calculator.json +1 -0
- package/data/problems/basic-collatz-steps.json +1 -0
- package/data/problems/basic-contains-value.json +1 -0
- package/data/problems/basic-count-above.json +1 -0
- package/data/problems/basic-count-char.json +1 -0
- package/data/problems/basic-count-digits.json +1 -0
- package/data/problems/basic-count-evens.json +1 -0
- package/data/problems/basic-count-pairs.json +1 -0
- package/data/problems/basic-count-vowels.json +1 -0
- package/data/problems/basic-count-words.json +1 -0
- package/data/problems/basic-countdown.json +1 -0
- package/data/problems/basic-double-array.json +1 -0
- package/data/problems/basic-factorial-rec.json +1 -0
- package/data/problems/basic-factorial.json +1 -0
- package/data/problems/basic-fibonacci.json +1 -0
- package/data/problems/basic-find-index.json +1 -0
- package/data/problems/basic-gcd.json +1 -0
- package/data/problems/basic-grade-letter.json +1 -0
- package/data/problems/basic-has-duplicate.json +1 -0
- package/data/problems/basic-is-even.json +1 -0
- package/data/problems/basic-is-leap-year.json +1 -0
- package/data/problems/basic-is-sorted.json +1 -0
- package/data/problems/basic-max-frequency.json +1 -0
- package/data/problems/basic-max-of-three.json +1 -0
- package/data/problems/basic-max-of-two.json +1 -0
- package/data/problems/basic-palindrome-text.json +1 -0
- package/data/problems/basic-power-rec.json +1 -0
- package/data/problems/basic-power.json +1 -0
- package/data/problems/basic-repeat-string.json +1 -0
- package/data/problems/basic-reverse-array.json +1 -0
- package/data/problems/basic-reverse-number.json +1 -0
- package/data/problems/basic-reverse-text-rec.json +1 -0
- package/data/problems/basic-reverse-text.json +1 -0
- package/data/problems/basic-second-largest.json +1 -0
- package/data/problems/basic-sort-two.json +1 -0
- package/data/problems/basic-staircase.json +1 -0
- package/data/problems/basic-string-length.json +1 -0
- package/data/problems/basic-sum-1-to-n.json +1 -0
- package/data/problems/basic-sum-digits-rec.json +1 -0
- package/data/problems/basic-sum-multiples.json +1 -0
- package/data/problems/basic-sum-of-digits.json +1 -0
- package/data/problems/basic-temperature-advice.json +1 -0
- package/data/problems/basic-to-upper.json +1 -0
- package/data/problems/basic-triangle-sum.json +1 -0
- package/data/problems/battleships-in-a-board.json +1 -0
- package/data/problems/beautiful-arrangement-ii.json +1 -0
- package/data/problems/beautiful-arrangement.json +1 -0
- package/data/problems/beautiful-array.json +1 -0
- package/data/problems/best-meeting-point.json +1 -0
- package/data/problems/best-time-to-buy-and-sell-stock-ii.json +1 -0
- package/data/problems/best-time-to-buy-and-sell-stock-iii.json +1 -0
- package/data/problems/best-time-to-buy-and-sell-stock-iv.json +1 -0
- package/data/problems/best-time-to-buy-and-sell-stock-with-cooldown.json +1 -0
- package/data/problems/best-time-to-buy-and-sell-stock-with-transaction-fee.json +1 -0
- package/data/problems/best-time-to-buy-and-sell-stock.json +1 -0
- package/data/problems/binary-gap.json +1 -0
- package/data/problems/binary-number-with-alternating-bits.json +1 -0
- package/data/problems/binary-search-tree-iterator.json +1 -0
- package/data/problems/binary-search.json +1 -0
- package/data/problems/binary-subarrays-with-sum.json +1 -0
- package/data/problems/binary-tree-cameras.json +1 -0
- package/data/problems/binary-tree-inorder-traversal.json +1 -0
- package/data/problems/binary-tree-level-order-traversal-ii.json +1 -0
- package/data/problems/binary-tree-level-order-traversal.json +1 -0
- package/data/problems/binary-tree-longest-consecutive-sequence-ii.json +1 -0
- package/data/problems/binary-tree-longest-consecutive-sequence.json +1 -0
- package/data/problems/binary-tree-maximum-path-sum.json +1 -0
- package/data/problems/binary-tree-paths.json +1 -0
- package/data/problems/binary-tree-postorder-traversal.json +1 -0
- package/data/problems/binary-tree-preorder-traversal.json +1 -0
- package/data/problems/binary-tree-pruning.json +1 -0
- package/data/problems/binary-tree-right-side-view.json +1 -0
- package/data/problems/binary-tree-tilt.json +1 -0
- package/data/problems/binary-tree-upside-down.json +1 -0
- package/data/problems/binary-tree-vertical-order-traversal.json +1 -0
- package/data/problems/binary-tree-zigzag-level-order-traversal.json +1 -0
- package/data/problems/binary-trees-with-factors.json +1 -0
- package/data/problems/binary-watch.json +1 -0
- package/data/problems/bitwise-and-of-numbers-range.json +1 -0
- package/data/problems/bitwise-ors-of-subarrays.json +1 -0
- package/data/problems/boats-to-save-people.json +1 -0
- package/data/problems/bold-words-in-string.json +1 -0
- package/data/problems/bomb-enemy.json +1 -0
- package/data/problems/boundary-of-binary-tree.json +1 -0
- package/data/problems/brick-wall.json +1 -0
- package/data/problems/bricks-falling-when-hit.json +1 -0
- package/data/problems/broken-calculator.json +1 -0
- package/data/problems/buddy-strings.json +1 -0
- package/data/problems/build-a-matrix-with-conditions.json +1 -0
- package/data/problems/bulb-switcher-ii.json +1 -0
- package/data/problems/bulb-switcher.json +1 -0
- package/data/problems/bulls-and-cows.json +1 -0
- package/data/problems/burst-balloons.json +1 -0
- package/data/problems/bus-routes.json +1 -0
- package/data/problems/can-i-win.json +1 -0
- package/data/problems/can-place-flowers.json +1 -0
- package/data/problems/candy-crush.json +1 -0
- package/data/problems/candy.json +1 -0
- package/data/problems/capacity-to-ship-packages-within-d-days.json +1 -0
- package/data/problems/car-fleet.json +1 -0
- package/data/problems/car-pooling.json +1 -0
- package/data/problems/card-flipping-game.json +1 -0
- package/data/problems/cat-and-mouse.json +1 -0
- package/data/problems/chalkboard-xor-game.json +1 -0
- package/data/problems/champagne-tower.json +1 -0
- package/data/problems/cheapest-flights-within-k-stops.json +1 -0
- package/data/problems/check-completeness-of-a-binary-tree.json +1 -0
- package/data/problems/cherry-pickup.json +1 -0
- package/data/problems/circular-array-loop.json +1 -0
- package/data/problems/climbing-stairs.json +1 -0
- package/data/problems/clone-graph.json +1 -0
- package/data/problems/closest-binary-search-tree-value-ii.json +1 -0
- package/data/problems/closest-binary-search-tree-value.json +1 -0
- package/data/problems/closest-leaf-in-a-binary-tree.json +1 -0
- package/data/problems/coin-change-ii.json +1 -0
- package/data/problems/coin-change.json +1 -0
- package/data/problems/coin-path.json +1 -0
- package/data/problems/combination-sum-ii.json +1 -0
- package/data/problems/combination-sum-iii.json +1 -0
- package/data/problems/combination-sum-iv.json +1 -0
- package/data/problems/combination-sum.json +1 -0
- package/data/problems/combinations.json +1 -0
- package/data/problems/compare-version-numbers.json +1 -0
- package/data/problems/complete-binary-tree-inserter.json +1 -0
- package/data/problems/complex-number-multiplication.json +1 -0
- package/data/problems/concatenated-words.json +1 -0
- package/data/problems/concatenation-of-array.json +1 -0
- package/data/problems/consecutive-numbers-sum.json +1 -0
- package/data/problems/construct-binary-tree-from-inorder-and-postorder-traversal.json +1 -0
- package/data/problems/construct-binary-tree-from-preorder-and-inorder-traversal.json +1 -0
- package/data/problems/construct-binary-tree-from-preorder-and-postorder-traversal.json +1 -0
- package/data/problems/construct-binary-tree-from-string.json +1 -0
- package/data/problems/construct-quad-tree.json +1 -0
- package/data/problems/construct-string-from-binary-tree.json +1 -0
- package/data/problems/construct-the-rectangle.json +1 -0
- package/data/problems/contain-virus.json +1 -0
- package/data/problems/container-with-most-water.json +1 -0
- package/data/problems/contains-duplicate-ii.json +1 -0
- package/data/problems/contains-duplicate-iii.json +1 -0
- package/data/problems/contains-duplicate.json +1 -0
- package/data/problems/contiguous-array.json +1 -0
- package/data/problems/continuous-subarray-sum.json +1 -0
- package/data/problems/convert-a-number-to-hexadecimal.json +1 -0
- package/data/problems/convert-binary-search-tree-to-sorted-doubly-linked-list.json +1 -0
- package/data/problems/convert-bst-to-greater-tree.json +1 -0
- package/data/problems/convert-sorted-array-to-binary-search-tree.json +1 -0
- package/data/problems/convert-sorted-list-to-binary-search-tree.json +1 -0
- package/data/problems/convex-polygon.json +1 -0
- package/data/problems/copy-list-with-random-pointer.json +1 -0
- package/data/problems/count-and-say.json +1 -0
- package/data/problems/count-binary-substrings.json +1 -0
- package/data/problems/count-complete-tree-nodes.json +1 -0
- package/data/problems/count-different-palindromic-subsequences.json +1 -0
- package/data/problems/count-good-nodes-in-binary-tree.json +1 -0
- package/data/problems/count-numbers-with-unique-digits.json +1 -0
- package/data/problems/count-of-range-sum.json +1 -0
- package/data/problems/count-of-smaller-numbers-after-self.json +1 -0
- package/data/problems/count-primes.json +1 -0
- package/data/problems/count-the-repetitions.json +1 -0
- package/data/problems/count-unique-characters-of-all-substrings-of-a-given-string.json +1 -0
- package/data/problems/count-univalue-subtrees.json +1 -0
- package/data/problems/counting-bits.json +1 -0
- package/data/problems/couples-holding-hands.json +1 -0
- package/data/problems/course-schedule-ii.json +1 -0
- package/data/problems/course-schedule-iii.json +1 -0
- package/data/problems/course-schedule-iv.json +1 -0
- package/data/problems/course-schedule.json +1 -0
- package/data/problems/cousins-in-binary-tree.json +1 -0
- package/data/problems/cracking-the-safe.json +1 -0
- package/data/problems/create-maximum-number.json +1 -0
- package/data/problems/custom-sort-string.json +1 -0
- package/data/problems/cut-off-trees-for-golf-event.json +1 -0
- package/data/problems/daily-temperatures.json +1 -0
- package/data/problems/data-stream-as-disjoint-intervals.json +1 -0
- package/data/problems/decode-string.json +1 -0
- package/data/problems/decode-ways-ii.json +1 -0
- package/data/problems/decode-ways.json +1 -0
- package/data/problems/decoded-string-at-index.json +1 -0
- package/data/problems/degree-of-an-array.json +1 -0
- package/data/problems/delete-and-earn.json +1 -0
- package/data/problems/delete-columns-to-make-sorted-ii.json +1 -0
- package/data/problems/delete-columns-to-make-sorted-iii.json +1 -0
- package/data/problems/delete-columns-to-make-sorted.json +1 -0
- package/data/problems/delete-leaves-with-a-given-value.json +1 -0
- package/data/problems/delete-node-in-a-bst.json +1 -0
- package/data/problems/delete-node-in-a-linked-list.json +1 -0
- package/data/problems/delete-operation-for-two-strings.json +1 -0
- package/data/problems/design-add-and-search-words-data-structure.json +1 -0
- package/data/problems/design-circular-deque.json +1 -0
- package/data/problems/design-circular-queue.json +1 -0
- package/data/problems/design-compressed-string-iterator.json +1 -0
- package/data/problems/design-excel-sum-formula.json +1 -0
- package/data/problems/design-hashmap.json +1 -0
- package/data/problems/design-hashset.json +1 -0
- package/data/problems/design-hit-counter.json +1 -0
- package/data/problems/design-in-memory-file-system.json +1 -0
- package/data/problems/design-linked-list.json +1 -0
- package/data/problems/design-log-storage-system.json +1 -0
- package/data/problems/design-phone-directory.json +1 -0
- package/data/problems/design-search-autocomplete-system.json +1 -0
- package/data/problems/design-snake-game.json +1 -0
- package/data/problems/design-tic-tac-toe.json +1 -0
- package/data/problems/design-twitter.json +1 -0
- package/data/problems/detect-capital.json +1 -0
- package/data/problems/detect-squares.json +1 -0
- package/data/problems/di-string-match.json +1 -0
- package/data/problems/diagonal-traverse.json +1 -0
- package/data/problems/diameter-of-binary-tree.json +1 -0
- package/data/problems/different-ways-to-add-parentheses.json +1 -0
- package/data/problems/distinct-subsequences-ii.json +1 -0
- package/data/problems/distinct-subsequences.json +1 -0
- package/data/problems/distribute-candies.json +1 -0
- package/data/problems/distribute-coins-in-binary-tree.json +1 -0
- package/data/problems/divide-two-integers.json +1 -0
- package/data/problems/domino-and-tromino-tiling.json +1 -0
- package/data/problems/dota2-senate.json +1 -0
- package/data/problems/dungeon-game.json +1 -0
- package/data/problems/edit-distance.json +1 -0
- package/data/problems/elimination-game.json +1 -0
- package/data/problems/employee-free-time.json +1 -0
- package/data/problems/employee-importance.json +1 -0
- package/data/problems/encode-and-decode-strings.json +1 -0
- package/data/problems/encode-and-decode-tinyurl.json +1 -0
- package/data/problems/encode-n-ary-tree-to-binary-tree.json +1 -0
- package/data/problems/encode-string-with-shortest-length.json +1 -0
- package/data/problems/equal-rational-numbers.json +1 -0
- package/data/problems/equal-tree-partition.json +1 -0
- package/data/problems/erect-the-fence.json +1 -0
- package/data/problems/escape-the-ghosts.json +1 -0
- package/data/problems/evaluate-division.json +1 -0
- package/data/problems/evaluate-reverse-polish-notation.json +1 -0
- package/data/problems/exam-room.json +1 -0
- package/data/problems/excel-sheet-column-number.json +1 -0
- package/data/problems/excel-sheet-column-title.json +1 -0
- package/data/problems/exclusive-time-of-functions.json +1 -0
- package/data/problems/expression-add-operators.json +1 -0
- package/data/problems/expressive-words.json +1 -0
- package/data/problems/extra-characters-in-a-string.json +1 -0
- package/data/problems/factor-combinations.json +1 -0
- package/data/problems/factorial-trailing-zeroes.json +1 -0
- package/data/problems/fair-candy-swap.json +1 -0
- package/data/problems/falling-squares.json +1 -0
- package/data/problems/fibonacci-number.json +1 -0
- package/data/problems/find-all-anagrams-in-a-string.json +1 -0
- package/data/problems/find-all-duplicates-in-an-array.json +1 -0
- package/data/problems/find-all-numbers-disappeared-in-an-array.json +1 -0
- package/data/problems/find-anagram-mappings.json +1 -0
- package/data/problems/find-and-replace-in-string.json +1 -0
- package/data/problems/find-and-replace-pattern.json +1 -0
- package/data/problems/find-bottom-left-tree-value.json +1 -0
- package/data/problems/find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree.json +1 -0
- package/data/problems/find-duplicate-file-in-system.json +1 -0
- package/data/problems/find-duplicate-subtrees.json +1 -0
- package/data/problems/find-eventual-safe-states.json +1 -0
- package/data/problems/find-first-and-last-position-of-element-in-sorted-array.json +1 -0
- package/data/problems/find-in-mountain-array.json +1 -0
- package/data/problems/find-k-closest-elements.json +1 -0
- package/data/problems/find-k-pairs-with-smallest-sums.json +1 -0
- package/data/problems/find-k-th-smallest-pair-distance.json +1 -0
- package/data/problems/find-largest-value-in-each-tree-row.json +1 -0
- package/data/problems/find-leaves-of-binary-tree.json +1 -0
- package/data/problems/find-median-from-data-stream.json +1 -0
- package/data/problems/find-minimum-in-rotated-sorted-array-ii.json +1 -0
- package/data/problems/find-minimum-in-rotated-sorted-array.json +1 -0
- package/data/problems/find-mode-in-binary-search-tree.json +1 -0
- package/data/problems/find-peak-element.json +1 -0
- package/data/problems/find-permutation.json +1 -0
- package/data/problems/find-pivot-index.json +1 -0
- package/data/problems/find-right-interval.json +1 -0
- package/data/problems/find-smallest-letter-greater-than-target.json +1 -0
- package/data/problems/find-the-celebrity.json +1 -0
- package/data/problems/find-the-closest-palindrome.json +1 -0
- package/data/problems/find-the-derangement-of-an-array.json +1 -0
- package/data/problems/find-the-difference.json +1 -0
- package/data/problems/find-the-duplicate-number.json +1 -0
- package/data/problems/find-the-index-of-the-first-occurrence-in-a-string.json +1 -0
- package/data/problems/find-the-shortest-superstring.json +1 -0
- package/data/problems/find-the-town-judge.json +1 -0
- package/data/problems/first-bad-version.json +1 -0
- package/data/problems/first-missing-positive.json +1 -0
- package/data/problems/first-unique-character-in-a-string.json +1 -0
- package/data/problems/fizz-buzz.json +1 -0
- package/data/problems/flatten-2d-vector.json +1 -0
- package/data/problems/flatten-a-multilevel-doubly-linked-list.json +1 -0
- package/data/problems/flatten-binary-tree-to-linked-list.json +1 -0
- package/data/problems/flatten-nested-list-iterator.json +1 -0
- package/data/problems/flip-binary-tree-to-match-preorder-traversal.json +1 -0
- package/data/problems/flip-equivalent-binary-trees.json +1 -0
- package/data/problems/flip-game-ii.json +1 -0
- package/data/problems/flip-game.json +1 -0
- package/data/problems/flip-string-to-monotone-increasing.json +1 -0
- package/data/problems/flipping-an-image.json +1 -0
- package/data/problems/flood-fill.json +1 -0
- package/data/problems/fraction-addition-and-subtraction.json +1 -0
- package/data/problems/fraction-to-recurring-decimal.json +1 -0
- package/data/problems/freedom-trail.json +1 -0
- package/data/problems/friends-of-appropriate-ages.json +1 -0
- package/data/problems/frog-jump.json +1 -0
- package/data/problems/fruit-into-baskets.json +1 -0
- package/data/problems/game-of-life.json +1 -0
- package/data/problems/gas-station.json +1 -0
- package/data/problems/generalized-abbreviation.json +1 -0
- package/data/problems/generate-parentheses.json +1 -0
- package/data/problems/generate-random-point-in-a-circle.json +1 -0
- package/data/problems/global-and-local-inversions.json +1 -0
- package/data/problems/goat-latin.json +1 -0
- package/data/problems/graph-valid-tree.json +1 -0
- package/data/problems/gray-code.json +1 -0
- package/data/problems/greatest-common-divisor-of-strings.json +1 -0
- package/data/problems/greatest-common-divisor-traversal.json +1 -0
- package/data/problems/group-anagrams.json +1 -0
- package/data/problems/group-shifted-strings.json +1 -0
- package/data/problems/groups-of-special-equivalent-strings.json +1 -0
- package/data/problems/guess-number-higher-or-lower-ii.json +1 -0
- package/data/problems/guess-number-higher-or-lower.json +1 -0
- package/data/problems/guess-the-word.json +1 -0
- package/data/problems/h-index-ii.json +1 -0
- package/data/problems/h-index.json +1 -0
- package/data/problems/hamming-distance.json +1 -0
- package/data/problems/hand-of-straights.json +1 -0
- package/data/problems/happy-number.json +1 -0
- package/data/problems/heaters.json +1 -0
- package/data/problems/house-robber-ii.json +1 -0
- package/data/problems/house-robber-iii.json +1 -0
- package/data/problems/house-robber.json +1 -0
- package/data/problems/image-overlap.json +1 -0
- package/data/problems/image-smoother.json +1 -0
- package/data/problems/implement-magic-dictionary.json +1 -0
- package/data/problems/implement-queue-using-stacks.json +1 -0
- package/data/problems/implement-rand10-using-rand7.json +1 -0
- package/data/problems/implement-stack-using-queues.json +1 -0
- package/data/problems/implement-trie-prefix-tree.json +1 -0
- package/data/problems/increasing-order-search-tree.json +1 -0
- package/data/problems/increasing-triplet-subsequence.json +1 -0
- package/data/problems/inorder-successor-in-bst-ii.json +1 -0
- package/data/problems/inorder-successor-in-bst.json +1 -0
- package/data/problems/insert-delete-getrandom-o1-duplicates-allowed.json +1 -0
- package/data/problems/insert-delete-getrandom-o1.json +1 -0
- package/data/problems/insert-greatest-common-divisors-in-linked-list.json +1 -0
- package/data/problems/insert-interval.json +1 -0
- package/data/problems/insert-into-a-binary-search-tree.json +1 -0
- package/data/problems/insert-into-a-sorted-circular-linked-list.json +1 -0
- package/data/problems/insertion-sort-list.json +1 -0
- package/data/problems/integer-break.json +1 -0
- package/data/problems/integer-replacement.json +1 -0
- package/data/problems/integer-to-english-words.json +1 -0
- package/data/problems/integer-to-roman.json +1 -0
- package/data/problems/interleaving-string.json +1 -0
- package/data/problems/intersection-of-two-arrays-ii.json +1 -0
- package/data/problems/intersection-of-two-arrays.json +1 -0
- package/data/problems/intersection-of-two-linked-lists.json +1 -0
- package/data/problems/interval-list-intersections.json +1 -0
- package/data/problems/invert-binary-tree.json +1 -0
- package/data/problems/ip-to-cidr.json +1 -0
- package/data/problems/ipo.json +1 -0
- package/data/problems/is-graph-bipartite.json +1 -0
- package/data/problems/is-subsequence.json +1 -0
- package/data/problems/island-perimeter.json +1 -0
- package/data/problems/isomorphic-strings.json +1 -0
- package/data/problems/jewels-and-stones.json +1 -0
- package/data/problems/jump-game-ii.json +1 -0
- package/data/problems/jump-game-vii.json +1 -0
- package/data/problems/jump-game.json +1 -0
- package/data/problems/k-closest-points-to-origin.json +1 -0
- package/data/problems/k-diff-pairs-in-an-array.json +1 -0
- package/data/problems/k-empty-slots.json +1 -0
- package/data/problems/k-inverse-pairs-array.json +1 -0
- package/data/problems/k-similar-strings.json +1 -0
- package/data/problems/k-th-smallest-in-lexicographical-order.json +1 -0
- package/data/problems/k-th-smallest-prime-fraction.json +1 -0
- package/data/problems/k-th-symbol-in-grammar.json +1 -0
- package/data/problems/keyboard-row.json +1 -0
- package/data/problems/keys-and-rooms.json +1 -0
- package/data/problems/kill-process.json +1 -0
- package/data/problems/knight-dialer.json +1 -0
- package/data/problems/knight-probability-in-chessboard.json +1 -0
- package/data/problems/koko-eating-bananas.json +1 -0
- package/data/problems/kth-largest-element-in-a-stream.json +1 -0
- package/data/problems/kth-largest-element-in-an-array.json +1 -0
- package/data/problems/kth-smallest-element-in-a-bst.json +1 -0
- package/data/problems/kth-smallest-element-in-a-sorted-matrix.json +1 -0
- package/data/problems/kth-smallest-number-in-multiplication-table.json +1 -0
- package/data/problems/largest-bst-subtree.json +1 -0
- package/data/problems/largest-component-size-by-common-factor.json +1 -0
- package/data/problems/largest-divisible-subset.json +1 -0
- package/data/problems/largest-number-at-least-twice-of-others.json +1 -0
- package/data/problems/largest-number.json +1 -0
- package/data/problems/largest-palindrome-product.json +1 -0
- package/data/problems/largest-perimeter-triangle.json +1 -0
- package/data/problems/largest-plus-sign.json +1 -0
- package/data/problems/largest-rectangle-in-histogram.json +1 -0
- package/data/problems/largest-sum-of-averages.json +1 -0
- package/data/problems/largest-time-for-given-digits.json +1 -0
- package/data/problems/largest-triangle-area.json +1 -0
- package/data/problems/last-stone-weight-ii.json +1 -0
- package/data/problems/last-stone-weight.json +1 -0
- package/data/problems/leaf-similar-trees.json +1 -0
- package/data/problems/least-operators-to-express-number.json +1 -0
- package/data/problems/lemonade-change.json +1 -0
- package/data/problems/length-of-last-word.json +1 -0
- package/data/problems/length-of-longest-fibonacci-subsequence.json +1 -0
- package/data/problems/letter-case-permutation.json +1 -0
- package/data/problems/letter-combinations-of-a-phone-number.json +1 -0
- package/data/problems/lexicographical-numbers.json +1 -0
- package/data/problems/lfu-cache.json +1 -0
- package/data/problems/license-key-formatting.json +1 -0
- package/data/problems/line-reflection.json +1 -0
- package/data/problems/linked-list-components.json +1 -0
- package/data/problems/linked-list-cycle-ii.json +1 -0
- package/data/problems/linked-list-cycle.json +1 -0
- package/data/problems/linked-list-random-node.json +1 -0
- package/data/problems/logger-rate-limiter.json +1 -0
- package/data/problems/logical-or-of-two-binary-grids-represented-as-quad-trees.json +1 -0
- package/data/problems/lonely-pixel-i.json +1 -0
- package/data/problems/lonely-pixel-ii.json +1 -0
- package/data/problems/long-pressed-name.json +1 -0
- package/data/problems/longest-absolute-file-path.json +1 -0
- package/data/problems/longest-common-prefix.json +1 -0
- package/data/problems/longest-common-subsequence.json +1 -0
- package/data/problems/longest-consecutive-sequence.json +1 -0
- package/data/problems/longest-continuous-increasing-subsequence.json +1 -0
- package/data/problems/longest-happy-string.json +1 -0
- package/data/problems/longest-harmonious-subsequence.json +1 -0
- package/data/problems/longest-increasing-path-in-a-matrix.json +1 -0
- package/data/problems/longest-increasing-subsequence.json +1 -0
- package/data/problems/longest-line-of-consecutive-one-in-matrix.json +1 -0
- package/data/problems/longest-mountain-in-array.json +1 -0
- package/data/problems/longest-palindrome.json +1 -0
- package/data/problems/longest-palindromic-subsequence.json +1 -0
- package/data/problems/longest-palindromic-substring.json +1 -0
- package/data/problems/longest-repeating-character-replacement.json +1 -0
- package/data/problems/longest-substring-with-at-least-k-repeating-characters.json +1 -0
- package/data/problems/longest-substring-with-at-most-k-distinct-characters.json +1 -0
- package/data/problems/longest-substring-with-at-most-two-distinct-characters.json +1 -0
- package/data/problems/longest-substring-without-repeating-characters.json +1 -0
- package/data/problems/longest-turbulent-subarray.json +1 -0
- package/data/problems/longest-uncommon-subsequence-i.json +1 -0
- package/data/problems/longest-uncommon-subsequence-ii.json +1 -0
- package/data/problems/longest-univalue-path.json +1 -0
- package/data/problems/longest-valid-parentheses.json +1 -0
- package/data/problems/longest-word-in-dictionary-through-deleting.json +1 -0
- package/data/problems/longest-word-in-dictionary.json +1 -0
- package/data/problems/loud-and-rich.json +1 -0
- package/data/problems/lowest-common-ancestor-of-a-binary-search-tree.json +1 -0
- package/data/problems/lowest-common-ancestor-of-a-binary-tree.json +1 -0
- package/data/problems/lru-cache.json +1 -0
- package/data/problems/magic-squares-in-grid.json +1 -0
- package/data/problems/magical-string.json +1 -0
- package/data/problems/majority-element-ii.json +1 -0
- package/data/problems/majority-element.json +1 -0
- package/data/problems/making-a-large-island.json +1 -0
- package/data/problems/map-sum-pairs.json +1 -0
- package/data/problems/masking-personal-information.json +1 -0
- package/data/problems/matchsticks-to-square.json +1 -0
- package/data/problems/max-area-of-island.json +1 -0
- package/data/problems/max-chunks-to-make-sorted-ii.json +1 -0
- package/data/problems/max-chunks-to-make-sorted.json +1 -0
- package/data/problems/max-consecutive-ones-ii.json +1 -0
- package/data/problems/max-consecutive-ones.json +1 -0
- package/data/problems/max-increase-to-keep-city-skyline.json +1 -0
- package/data/problems/max-points-on-a-line.json +1 -0
- package/data/problems/max-stack.json +1 -0
- package/data/problems/max-sum-of-rectangle-no-larger-than-k.json +1 -0
- package/data/problems/maximal-rectangle.json +1 -0
- package/data/problems/maximal-square.json +1 -0
- package/data/problems/maximize-distance-to-closest-person.json +1 -0
- package/data/problems/maximum-average-subarray-i.json +1 -0
- package/data/problems/maximum-average-subarray-ii.json +1 -0
- package/data/problems/maximum-binary-tree-ii.json +1 -0
- package/data/problems/maximum-binary-tree.json +1 -0
- package/data/problems/maximum-depth-of-binary-tree.json +1 -0
- package/data/problems/maximum-depth-of-n-ary-tree.json +1 -0
- package/data/problems/maximum-distance-in-arrays.json +1 -0
- package/data/problems/maximum-frequency-stack.json +1 -0
- package/data/problems/maximum-gap.json +1 -0
- package/data/problems/maximum-length-of-pair-chain.json +1 -0
- package/data/problems/maximum-length-of-repeated-subarray.json +1 -0
- package/data/problems/maximum-product-of-three-numbers.json +1 -0
- package/data/problems/maximum-product-of-word-lengths.json +1 -0
- package/data/problems/maximum-product-subarray.json +1 -0
- package/data/problems/maximum-size-subarray-sum-equals-k.json +1 -0
- package/data/problems/maximum-subarray.json +1 -0
- package/data/problems/maximum-sum-circular-subarray.json +1 -0
- package/data/problems/maximum-sum-of-3-non-overlapping-subarrays.json +1 -0
- package/data/problems/maximum-swap.json +1 -0
- package/data/problems/maximum-vacation-days.json +1 -0
- package/data/problems/maximum-width-of-binary-tree.json +1 -0
- package/data/problems/maximum-width-ramp.json +1 -0
- package/data/problems/maximum-xor-of-two-numbers-in-an-array.json +1 -0
- package/data/problems/median-of-two-sorted-arrays.json +1 -0
- package/data/problems/meeting-rooms-ii.json +1 -0
- package/data/problems/meeting-rooms-iii.json +1 -0
- package/data/problems/meeting-rooms.json +1 -0
- package/data/problems/merge-intervals.json +1 -0
- package/data/problems/merge-k-sorted-lists.json +1 -0
- package/data/problems/merge-sorted-array.json +1 -0
- package/data/problems/merge-strings-alternately.json +1 -0
- package/data/problems/merge-triplets-to-form-target-triplet.json +1 -0
- package/data/problems/merge-two-binary-trees.json +1 -0
- package/data/problems/merge-two-sorted-lists.json +1 -0
- package/data/problems/middle-of-the-linked-list.json +1 -0
- package/data/problems/min-cost-climbing-stairs.json +1 -0
- package/data/problems/min-cost-to-connect-all-points.json +1 -0
- package/data/problems/min-stack.json +1 -0
- package/data/problems/minesweeper.json +1 -0
- package/data/problems/mini-parser.json +1 -0
- package/data/problems/minimize-malware-spread-ii.json +1 -0
- package/data/problems/minimize-malware-spread.json +1 -0
- package/data/problems/minimize-max-distance-to-gas-station.json +1 -0
- package/data/problems/minimum-absolute-difference-in-bst.json +1 -0
- package/data/problems/minimum-add-to-make-parentheses-valid.json +1 -0
- package/data/problems/minimum-area-rectangle-ii.json +1 -0
- package/data/problems/minimum-area-rectangle.json +1 -0
- package/data/problems/minimum-array-end.json +1 -0
- package/data/problems/minimum-ascii-delete-sum-for-two-strings.json +1 -0
- package/data/problems/minimum-cost-for-tickets.json +1 -0
- package/data/problems/minimum-cost-to-hire-k-workers.json +1 -0
- package/data/problems/minimum-cost-to-merge-stones.json +1 -0
- package/data/problems/minimum-depth-of-binary-tree.json +1 -0
- package/data/problems/minimum-distance-between-bst-nodes.json +1 -0
- package/data/problems/minimum-factorization.json +1 -0
- package/data/problems/minimum-falling-path-sum.json +1 -0
- package/data/problems/minimum-genetic-mutation.json +1 -0
- package/data/problems/minimum-height-trees.json +1 -0
- package/data/problems/minimum-increment-to-make-array-unique.json +1 -0
- package/data/problems/minimum-index-sum-of-two-lists.json +1 -0
- package/data/problems/minimum-interval-to-include-each-query.json +1 -0
- package/data/problems/minimum-moves-to-equal-array-elements-ii.json +1 -0
- package/data/problems/minimum-moves-to-equal-array-elements.json +1 -0
- package/data/problems/minimum-number-of-arrows-to-burst-balloons.json +1 -0
- package/data/problems/minimum-number-of-k-consecutive-bit-flips.json +1 -0
- package/data/problems/minimum-number-of-refueling-stops.json +1 -0
- package/data/problems/minimum-path-sum.json +1 -0
- package/data/problems/minimum-size-subarray-sum.json +1 -0
- package/data/problems/minimum-swaps-to-make-sequences-increasing.json +1 -0
- package/data/problems/minimum-time-difference.json +1 -0
- package/data/problems/minimum-unique-word-abbreviation.json +1 -0
- package/data/problems/minimum-window-subsequence.json +1 -0
- package/data/problems/minimum-window-substring.json +1 -0
- package/data/problems/mirror-reflection.json +1 -0
- package/data/problems/missing-number.json +1 -0
- package/data/problems/missing-ranges.json +1 -0
- package/data/problems/monotone-increasing-digits.json +1 -0
- package/data/problems/monotonic-array.json +1 -0
- package/data/problems/most-common-word.json +1 -0
- package/data/problems/most-frequent-subtree-sum.json +1 -0
- package/data/problems/most-profit-assigning-work.json +1 -0
- package/data/problems/most-stones-removed-with-same-row-or-column.json +1 -0
- package/data/problems/move-zeroes.json +1 -0
- package/data/problems/moving-average-from-data-stream.json +1 -0
- package/data/problems/multiply-strings.json +1 -0
- package/data/problems/my-calendar-i.json +1 -0
- package/data/problems/my-calendar-ii.json +1 -0
- package/data/problems/my-calendar-iii.json +1 -0
- package/data/problems/n-ary-tree-level-order-traversal.json +1 -0
- package/data/problems/n-ary-tree-postorder-traversal.json +1 -0
- package/data/problems/n-ary-tree-preorder-traversal.json +1 -0
- package/data/problems/n-queens-ii.json +1 -0
- package/data/problems/n-queens.json +1 -0
- package/data/problems/n-repeated-element-in-size-2n-array.json +1 -0
- package/data/problems/n-th-tribonacci-number.json +1 -0
- package/data/problems/nested-list-weight-sum-ii.json +1 -0
- package/data/problems/nested-list-weight-sum.json +1 -0
- package/data/problems/network-delay-time.json +1 -0
- package/data/problems/new-21-game.json +1 -0
- package/data/problems/next-closest-time.json +1 -0
- package/data/problems/next-greater-element-i.json +1 -0
- package/data/problems/next-greater-element-ii.json +1 -0
- package/data/problems/next-greater-element-iii.json +1 -0
- package/data/problems/next-permutation.json +1 -0
- package/data/problems/nim-game.json +1 -0
- package/data/problems/non-decreasing-array.json +1 -0
- package/data/problems/non-decreasing-subsequences.json +1 -0
- package/data/problems/non-negative-integers-without-consecutive-ones.json +1 -0
- package/data/problems/non-overlapping-intervals.json +1 -0
- package/data/problems/nth-digit.json +1 -0
- package/data/problems/nth-magical-number.json +1 -0
- package/data/problems/number-complement.json +1 -0
- package/data/problems/number-of-1-bits.json +1 -0
- package/data/problems/number-of-atoms.json +1 -0
- package/data/problems/number-of-boomerangs.json +1 -0
- package/data/problems/number-of-connected-components-in-an-undirected-graph.json +1 -0
- package/data/problems/number-of-corner-rectangles.json +1 -0
- package/data/problems/number-of-digit-one.json +1 -0
- package/data/problems/number-of-distinct-islands-ii.json +1 -0
- package/data/problems/number-of-distinct-islands.json +1 -0
- package/data/problems/number-of-islands-ii.json +1 -0
- package/data/problems/number-of-islands.json +1 -0
- package/data/problems/number-of-lines-to-write-string.json +1 -0
- package/data/problems/number-of-longest-increasing-subsequence.json +1 -0
- package/data/problems/number-of-matching-subsequences.json +1 -0
- package/data/problems/number-of-music-playlists.json +1 -0
- package/data/problems/number-of-provinces.json +1 -0
- package/data/problems/number-of-recent-calls.json +1 -0
- package/data/problems/number-of-segments-in-a-string.json +1 -0
- package/data/problems/number-of-squareful-arrays.json +1 -0
- package/data/problems/number-of-subarrays-with-bounded-maximum.json +1 -0
- package/data/problems/numbers-at-most-n-given-digit-set.json +1 -0
- package/data/problems/numbers-with-same-consecutive-differences.json +1 -0
- package/data/problems/odd-even-jump.json +1 -0
- package/data/problems/odd-even-linked-list.json +1 -0
- package/data/problems/one-edit-distance.json +1 -0
- package/data/problems/ones-and-zeroes.json +1 -0
- package/data/problems/online-election.json +1 -0
- package/data/problems/online-stock-span.json +1 -0
- package/data/problems/open-the-lock.json +1 -0
- package/data/problems/optimal-account-balancing.json +1 -0
- package/data/problems/optimal-division.json +1 -0
- package/data/problems/orderly-queue.json +1 -0
- package/data/problems/out-of-boundary-paths.json +1 -0
- package/data/problems/output-contest-matches.json +1 -0
- package/data/problems/pacific-atlantic-water-flow.json +1 -0
- package/data/problems/paint-fence.json +1 -0
- package/data/problems/paint-house-ii.json +1 -0
- package/data/problems/paint-house.json +1 -0
- package/data/problems/palindrome-linked-list.json +1 -0
- package/data/problems/palindrome-number.json +1 -0
- package/data/problems/palindrome-pairs.json +1 -0
- package/data/problems/palindrome-partitioning-ii.json +1 -0
- package/data/problems/palindrome-partitioning.json +1 -0
- package/data/problems/palindrome-permutation-ii.json +1 -0
- package/data/problems/palindrome-permutation.json +1 -0
- package/data/problems/palindromic-substrings.json +1 -0
- package/data/problems/pancake-sorting.json +1 -0
- package/data/problems/parse-lisp-expression.json +1 -0
- package/data/problems/partition-array-into-disjoint-intervals.json +1 -0
- package/data/problems/partition-equal-subset-sum.json +1 -0
- package/data/problems/partition-labels.json +1 -0
- package/data/problems/partition-list.json +1 -0
- package/data/problems/partition-to-k-equal-sum-subsets.json +1 -0
- package/data/problems/pascals-triangle-ii.json +1 -0
- package/data/problems/pascals-triangle.json +1 -0
- package/data/problems/patching-array.json +1 -0
- package/data/problems/path-sum-ii.json +1 -0
- package/data/problems/path-sum-iii.json +1 -0
- package/data/problems/path-sum-iv.json +1 -0
- package/data/problems/path-sum.json +1 -0
- package/data/problems/path-with-minimum-effort.json +1 -0
- package/data/problems/peak-index-in-a-mountain-array.json +1 -0
- package/data/problems/peeking-iterator.json +1 -0
- package/data/problems/perfect-number.json +1 -0
- package/data/problems/perfect-rectangle.json +1 -0
- package/data/problems/perfect-squares.json +1 -0
- package/data/problems/permutation-in-string.json +1 -0
- package/data/problems/permutation-sequence.json +1 -0
- package/data/problems/permutations-ii.json +1 -0
- package/data/problems/permutations.json +1 -0
- package/data/problems/plus-one-linked-list.json +1 -0
- package/data/problems/plus-one.json +1 -0
- package/data/problems/poor-pigs.json +1 -0
- package/data/problems/populating-next-right-pointers-in-each-node-ii.json +1 -0
- package/data/problems/populating-next-right-pointers-in-each-node.json +1 -0
- package/data/problems/positions-of-large-groups.json +1 -0
- package/data/problems/possible-bipartition.json +1 -0
- package/data/problems/pour-water.json +1 -0
- package/data/problems/power-of-four.json +1 -0
- package/data/problems/power-of-three.json +1 -0
- package/data/problems/power-of-two.json +1 -0
- package/data/problems/powerful-integers.json +1 -0
- package/data/problems/powx-n.json +1 -0
- package/data/problems/predict-the-winner.json +1 -0
- package/data/problems/prefix-and-suffix-search.json +1 -0
- package/data/problems/preimage-size-of-factorial-zeroes-function.json +1 -0
- package/data/problems/prime-number-of-set-bits-in-binary-representation.json +1 -0
- package/data/problems/prime-palindrome.json +1 -0
- package/data/problems/print-binary-tree.json +1 -0
- package/data/problems/prison-cells-after-n-days.json +1 -0
- package/data/problems/product-of-array-except-self.json +1 -0
- package/data/problems/profitable-schemes.json +1 -0
- package/data/problems/projection-area-of-3d-shapes.json +1 -0
- package/data/problems/push-dominoes.json +1 -0
- package/data/problems/pyramid-transition-matrix.json +1 -0
- package/data/problems/queue-reconstruction-by-height.json +1 -0
- package/data/problems/rabbits-in-forest.json +1 -0
- package/data/problems/race-car.json +1 -0
- package/data/problems/random-flip-matrix.json +1 -0
- package/data/problems/random-pick-index.json +1 -0
- package/data/problems/random-pick-with-blacklist.json +1 -0
- package/data/problems/random-pick-with-weight.json +1 -0
- package/data/problems/random-point-in-non-overlapping-rectangles.json +1 -0
- package/data/problems/range-addition-ii.json +1 -0
- package/data/problems/range-addition.json +1 -0
- package/data/problems/range-module.json +1 -0
- package/data/problems/range-sum-of-bst.json +1 -0
- package/data/problems/range-sum-query-2d-immutable.json +1 -0
- package/data/problems/range-sum-query-2d-mutable.json +1 -0
- package/data/problems/range-sum-query-immutable.json +1 -0
- package/data/problems/range-sum-query-mutable.json +1 -0
- package/data/problems/ransom-note.json +1 -0
- package/data/problems/reach-a-number.json +1 -0
- package/data/problems/reachable-nodes-in-subdivided-graph.json +1 -0
- package/data/problems/reaching-points.json +1 -0
- package/data/problems/read-n-characters-given-read4-ii-call-multiple-times.json +1 -0
- package/data/problems/read-n-characters-given-read4.json +1 -0
- package/data/problems/rearrange-string-k-distance-apart.json +1 -0
- package/data/problems/reconstruct-itinerary.json +1 -0
- package/data/problems/reconstruct-original-digits-from-english.json +1 -0
- package/data/problems/recover-binary-search-tree.json +1 -0
- package/data/problems/rectangle-area-ii.json +1 -0
- package/data/problems/rectangle-area.json +1 -0
- package/data/problems/rectangle-overlap.json +1 -0
- package/data/problems/redundant-connection-ii.json +1 -0
- package/data/problems/redundant-connection.json +1 -0
- package/data/problems/regions-cut-by-slashes.json +1 -0
- package/data/problems/regular-expression-matching.json +1 -0
- package/data/problems/relative-ranks.json +1 -0
- package/data/problems/remove-9.json +1 -0
- package/data/problems/remove-boxes.json +1 -0
- package/data/problems/remove-comments.json +1 -0
- package/data/problems/remove-duplicate-letters.json +1 -0
- package/data/problems/remove-duplicates-from-sorted-array-ii.json +1 -0
- package/data/problems/remove-duplicates-from-sorted-array.json +1 -0
- package/data/problems/remove-duplicates-from-sorted-list-ii.json +1 -0
- package/data/problems/remove-duplicates-from-sorted-list.json +1 -0
- package/data/problems/remove-element.json +1 -0
- package/data/problems/remove-invalid-parentheses.json +1 -0
- package/data/problems/remove-k-digits.json +1 -0
- package/data/problems/remove-linked-list-elements.json +1 -0
- package/data/problems/remove-nth-node-from-end-of-list.json +1 -0
- package/data/problems/reorder-data-in-log-files.json +1 -0
- package/data/problems/reorder-list.json +1 -0
- package/data/problems/reordered-power-of-2.json +1 -0
- package/data/problems/reorganize-string.json +1 -0
- package/data/problems/repeated-dna-sequences.json +1 -0
- package/data/problems/repeated-string-match.json +1 -0
- package/data/problems/repeated-substring-pattern.json +1 -0
- package/data/problems/replace-words.json +1 -0
- package/data/problems/reshape-the-matrix.json +1 -0
- package/data/problems/restore-ip-addresses.json +1 -0
- package/data/problems/reveal-cards-in-increasing-order.json +1 -0
- package/data/problems/reverse-bits.json +1 -0
- package/data/problems/reverse-integer.json +1 -0
- package/data/problems/reverse-linked-list-ii.json +1 -0
- package/data/problems/reverse-linked-list.json +1 -0
- package/data/problems/reverse-nodes-in-k-group.json +1 -0
- package/data/problems/reverse-only-letters.json +1 -0
- package/data/problems/reverse-pairs.json +1 -0
- package/data/problems/reverse-string-ii.json +1 -0
- package/data/problems/reverse-string.json +1 -0
- package/data/problems/reverse-vowels-of-a-string.json +1 -0
- package/data/problems/reverse-words-in-a-string-ii.json +1 -0
- package/data/problems/reverse-words-in-a-string-iii.json +1 -0
- package/data/problems/reverse-words-in-a-string.json +1 -0
- package/data/problems/rle-iterator.json +1 -0
- package/data/problems/robot-return-to-origin.json +1 -0
- package/data/problems/robot-room-cleaner.json +1 -0
- package/data/problems/roman-to-integer.json +1 -0
- package/data/problems/rotate-array.json +1 -0
- package/data/problems/rotate-function.json +1 -0
- package/data/problems/rotate-image.json +1 -0
- package/data/problems/rotate-list.json +1 -0
- package/data/problems/rotate-string.json +1 -0
- package/data/problems/rotated-digits.json +1 -0
- package/data/problems/rotting-oranges.json +1 -0
- package/data/problems/russian-doll-envelopes.json +1 -0
- package/data/problems/same-tree.json +1 -0
- package/data/problems/satisfiability-of-equality-equations.json +1 -0
- package/data/problems/score-after-flipping-matrix.json +1 -0
- package/data/problems/score-of-parentheses.json +1 -0
- package/data/problems/scramble-string.json +1 -0
- package/data/problems/search-a-2d-matrix-ii.json +1 -0
- package/data/problems/search-a-2d-matrix.json +1 -0
- package/data/problems/search-in-a-binary-search-tree.json +1 -0
- package/data/problems/search-in-a-sorted-array-of-unknown-size.json +1 -0
- package/data/problems/search-in-rotated-sorted-array-ii.json +1 -0
- package/data/problems/search-in-rotated-sorted-array.json +1 -0
- package/data/problems/search-insert-position.json +1 -0
- package/data/problems/second-minimum-node-in-a-binary-tree.json +1 -0
- package/data/problems/self-crossing.json +1 -0
- package/data/problems/self-dividing-numbers.json +1 -0
- package/data/problems/sentence-screen-fitting.json +1 -0
- package/data/problems/sentence-similarity-ii.json +1 -0
- package/data/problems/sentence-similarity.json +1 -0
- package/data/problems/sequence-reconstruction.json +1 -0
- package/data/problems/serialize-and-deserialize-binary-tree.json +1 -0
- package/data/problems/serialize-and-deserialize-bst.json +1 -0
- package/data/problems/serialize-and-deserialize-n-ary-tree.json +1 -0
- package/data/problems/set-intersection-size-at-least-two.json +1 -0
- package/data/problems/set-matrix-zeroes.json +1 -0
- package/data/problems/set-mismatch.json +1 -0
- package/data/problems/shifting-letters.json +1 -0
- package/data/problems/shopping-offers.json +1 -0
- package/data/problems/short-encoding-of-words.json +1 -0
- package/data/problems/shortest-bridge.json +1 -0
- package/data/problems/shortest-completing-word.json +1 -0
- package/data/problems/shortest-distance-from-all-buildings.json +1 -0
- package/data/problems/shortest-distance-to-a-character.json +1 -0
- package/data/problems/shortest-palindrome.json +1 -0
- package/data/problems/shortest-path-to-get-all-keys.json +1 -0
- package/data/problems/shortest-path-visiting-all-nodes.json +1 -0
- package/data/problems/shortest-subarray-with-sum-at-least-k.json +1 -0
- package/data/problems/shortest-unsorted-continuous-subarray.json +1 -0
- package/data/problems/shortest-word-distance-ii.json +1 -0
- package/data/problems/shortest-word-distance-iii.json +1 -0
- package/data/problems/shortest-word-distance.json +1 -0
- package/data/problems/shuffle-an-array.json +1 -0
- package/data/problems/similar-rgb-color.json +1 -0
- package/data/problems/similar-string-groups.json +1 -0
- package/data/problems/simplify-path.json +1 -0
- package/data/problems/single-element-in-a-sorted-array.json +1 -0
- package/data/problems/single-number-ii.json +1 -0
- package/data/problems/single-number-iii.json +1 -0
- package/data/problems/single-number.json +1 -0
- package/data/problems/single-threaded-cpu.json +1 -0
- package/data/problems/sliding-puzzle.json +1 -0
- package/data/problems/sliding-window-maximum.json +1 -0
- package/data/problems/sliding-window-median.json +1 -0
- package/data/problems/smallest-good-base.json +1 -0
- package/data/problems/smallest-range-covering-elements-from-k-lists.json +1 -0
- package/data/problems/smallest-range-i.json +1 -0
- package/data/problems/smallest-range-ii.json +1 -0
- package/data/problems/smallest-rectangle-enclosing-black-pixels.json +1 -0
- package/data/problems/smallest-rotation-with-highest-score.json +1 -0
- package/data/problems/smallest-string-starting-from-leaf.json +1 -0
- package/data/problems/smallest-subtree-with-all-the-deepest-nodes.json +1 -0
- package/data/problems/snakes-and-ladders.json +1 -0
- package/data/problems/solve-the-equation.json +1 -0
- package/data/problems/sort-an-array.json +1 -0
- package/data/problems/sort-array-by-parity-ii.json +1 -0
- package/data/problems/sort-array-by-parity.json +1 -0
- package/data/problems/sort-characters-by-frequency.json +1 -0
- package/data/problems/sort-colors.json +1 -0
- package/data/problems/sort-list.json +1 -0
- package/data/problems/sort-transformed-array.json +1 -0
- package/data/problems/soup-servings.json +1 -0
- package/data/problems/sparse-matrix-multiplication.json +1 -0
- package/data/problems/special-binary-string.json +1 -0
- package/data/problems/spiral-matrix-ii.json +1 -0
- package/data/problems/spiral-matrix-iii.json +1 -0
- package/data/problems/spiral-matrix.json +1 -0
- package/data/problems/split-array-into-consecutive-subsequences.json +1 -0
- package/data/problems/split-array-into-fibonacci-sequence.json +1 -0
- package/data/problems/split-array-largest-sum.json +1 -0
- package/data/problems/split-array-with-equal-sum.json +1 -0
- package/data/problems/split-array-with-same-average.json +1 -0
- package/data/problems/split-bst.json +1 -0
- package/data/problems/split-concatenated-strings.json +1 -0
- package/data/problems/split-linked-list-in-parts.json +1 -0
- package/data/problems/sqrtx.json +1 -0
- package/data/problems/squares-of-a-sorted-array.json +1 -0
- package/data/problems/squirrel-simulation.json +1 -0
- package/data/problems/stamping-the-sequence.json +1 -0
- package/data/problems/stickers-to-spell-word.json +1 -0
- package/data/problems/stone-game-ii.json +1 -0
- package/data/problems/stone-game-iii.json +1 -0
- package/data/problems/stone-game.json +1 -0
- package/data/problems/strange-printer.json +1 -0
- package/data/problems/string-compression.json +1 -0
- package/data/problems/string-to-integer-atoi.json +1 -0
- package/data/problems/string-without-aaa-or-bbb.json +1 -0
- package/data/problems/strobogrammatic-number-ii.json +1 -0
- package/data/problems/strobogrammatic-number-iii.json +1 -0
- package/data/problems/strobogrammatic-number.json +1 -0
- package/data/problems/strong-password-checker.json +1 -0
- package/data/problems/student-attendance-record-i.json +1 -0
- package/data/problems/student-attendance-record-ii.json +1 -0
- package/data/problems/subarray-product-less-than-k.json +1 -0
- package/data/problems/subarray-sum-equals-k.json +1 -0
- package/data/problems/subarray-sums-divisible-by-k.json +1 -0
- package/data/problems/subarrays-with-k-different-integers.json +1 -0
- package/data/problems/subdomain-visit-count.json +1 -0
- package/data/problems/subsets-ii.json +1 -0
- package/data/problems/subsets.json +1 -0
- package/data/problems/substring-with-concatenation-of-all-words.json +1 -0
- package/data/problems/subtree-of-another-tree.json +1 -0
- package/data/problems/sudoku-solver.json +1 -0
- package/data/problems/sum-of-all-subset-xor-totals.json +1 -0
- package/data/problems/sum-of-distances-in-tree.json +1 -0
- package/data/problems/sum-of-even-numbers-after-queries.json +1 -0
- package/data/problems/sum-of-left-leaves.json +1 -0
- package/data/problems/sum-of-square-numbers.json +1 -0
- package/data/problems/sum-of-subarray-minimums.json +1 -0
- package/data/problems/sum-of-subsequence-widths.json +1 -0
- package/data/problems/sum-of-two-integers.json +1 -0
- package/data/problems/sum-root-to-leaf-numbers.json +1 -0
- package/data/problems/summary-ranges.json +1 -0
- package/data/problems/super-egg-drop.json +1 -0
- package/data/problems/super-palindromes.json +1 -0
- package/data/problems/super-pow.json +1 -0
- package/data/problems/super-ugly-number.json +1 -0
- package/data/problems/super-washing-machines.json +1 -0
- package/data/problems/surface-area-of-3d-shapes.json +1 -0
- package/data/problems/surrounded-regions.json +1 -0
- package/data/problems/swap-adjacent-in-lr-string.json +1 -0
- package/data/problems/swap-nodes-in-pairs.json +1 -0
- package/data/problems/swim-in-rising-water.json +1 -0
- package/data/problems/symmetric-tree.json +1 -0
- package/data/problems/tag-validator.json +1 -0
- package/data/problems/tallest-billboard.json +1 -0
- package/data/problems/target-sum.json +1 -0
- package/data/problems/task-scheduler.json +1 -0
- package/data/problems/teemo-attacking.json +1 -0
- package/data/problems/ternary-expression-parser.json +1 -0
- package/data/problems/text-justification.json +1 -0
- package/data/problems/the-maze-ii.json +1 -0
- package/data/problems/the-maze-iii.json +1 -0
- package/data/problems/the-maze.json +1 -0
- package/data/problems/the-skyline-problem.json +1 -0
- package/data/problems/third-maximum-number.json +1 -0
- package/data/problems/three-equal-parts.json +1 -0
- package/data/problems/time-based-key-value-store.json +1 -0
- package/data/problems/to-lower-case.json +1 -0
- package/data/problems/toeplitz-matrix.json +1 -0
- package/data/problems/top-k-frequent-elements.json +1 -0
- package/data/problems/top-k-frequent-words.json +1 -0
- package/data/problems/total-hamming-distance.json +1 -0
- package/data/problems/transform-to-chessboard.json +1 -0
- package/data/problems/transpose-matrix.json +1 -0
- package/data/problems/trapping-rain-water-ii.json +1 -0
- package/data/problems/trapping-rain-water.json +1 -0
- package/data/problems/triangle.json +1 -0
- package/data/problems/trim-a-binary-search-tree.json +1 -0
- package/data/problems/triples-with-bitwise-and-equal-to-zero.json +1 -0
- package/data/problems/two-sum-ii-input-array-is-sorted.json +1 -0
- package/data/problems/two-sum-iii-data-structure-design.json +1 -0
- package/data/problems/two-sum-iv-input-is-a-bst.json +1 -0
- package/data/problems/two-sum.json +1 -0
- package/data/problems/ugly-number-ii.json +1 -0
- package/data/problems/ugly-number.json +1 -0
- package/data/problems/uncommon-words-from-two-sentences.json +1 -0
- package/data/problems/unique-binary-search-trees-ii.json +1 -0
- package/data/problems/unique-binary-search-trees.json +1 -0
- package/data/problems/unique-email-addresses.json +1 -0
- package/data/problems/unique-morse-code-words.json +1 -0
- package/data/problems/unique-paths-ii.json +1 -0
- package/data/problems/unique-paths-iii.json +1 -0
- package/data/problems/unique-paths.json +1 -0
- package/data/problems/unique-substrings-in-wraparound-string.json +1 -0
- package/data/problems/unique-word-abbreviation.json +1 -0
- package/data/problems/univalued-binary-tree.json +1 -0
- package/data/problems/utf-8-validation.json +1 -0
- package/data/problems/valid-anagram.json +1 -0
- package/data/problems/valid-mountain-array.json +1 -0
- package/data/problems/valid-number.json +1 -0
- package/data/problems/valid-palindrome-ii.json +1 -0
- package/data/problems/valid-palindrome.json +1 -0
- package/data/problems/valid-parentheses.json +1 -0
- package/data/problems/valid-parenthesis-string.json +1 -0
- package/data/problems/valid-perfect-square.json +1 -0
- package/data/problems/valid-permutations-for-di-sequence.json +1 -0
- package/data/problems/valid-square.json +1 -0
- package/data/problems/valid-sudoku.json +1 -0
- package/data/problems/valid-tic-tac-toe-state.json +1 -0
- package/data/problems/valid-triangle-number.json +1 -0
- package/data/problems/valid-word-abbreviation.json +1 -0
- package/data/problems/valid-word-square.json +1 -0
- package/data/problems/validate-binary-search-tree.json +1 -0
- package/data/problems/validate-ip-address.json +1 -0
- package/data/problems/validate-stack-sequences.json +1 -0
- package/data/problems/verify-preorder-sequence-in-binary-search-tree.json +1 -0
- package/data/problems/verify-preorder-serialization-of-a-binary-tree.json +1 -0
- package/data/problems/verifying-an-alien-dictionary.json +1 -0
- package/data/problems/vertical-order-traversal-of-a-binary-tree.json +1 -0
- package/data/problems/vowel-spellchecker.json +1 -0
- package/data/problems/walking-robot-simulation.json +1 -0
- package/data/problems/walls-and-gates.json +1 -0
- package/data/problems/water-and-jug-problem.json +1 -0
- package/data/problems/wiggle-sort-ii.json +1 -0
- package/data/problems/wiggle-sort.json +1 -0
- package/data/problems/wiggle-subsequence.json +1 -0
- package/data/problems/wildcard-matching.json +1 -0
- package/data/problems/word-abbreviation.json +1 -0
- package/data/problems/word-break-ii.json +1 -0
- package/data/problems/word-break.json +1 -0
- package/data/problems/word-ladder-ii.json +1 -0
- package/data/problems/word-ladder.json +1 -0
- package/data/problems/word-pattern-ii.json +1 -0
- package/data/problems/word-pattern.json +1 -0
- package/data/problems/word-search-ii.json +1 -0
- package/data/problems/word-search.json +1 -0
- package/data/problems/word-squares.json +1 -0
- package/data/problems/word-subsets.json +1 -0
- package/data/problems/x-of-a-kind-in-a-deck-of-cards.json +1 -0
- package/data/problems/zigzag-conversion.json +1 -0
- package/data/problems/zigzag-iterator.json +1 -0
- package/data/problems/zuma-game.json +1 -0
- package/dist/cli.js +793 -0
- package/dist/web/assets/index-DCYvZg7a.js +150 -0
- package/dist/web/assets/index-gSBueMfH.css +1 -0
- package/dist/web/index.html +13 -0
- package/package.json +44 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "981", "slug": "minimum-cost-to-merge-stones", "id": 981, "title": "Minimum Cost to Merge Stones", "difficulty": "Hard", "category": "dp", "link": "https://leetcode.com/problems/minimum-cost-to-merge-stones/", "examples": [{"input": "stones = [3,2,4,1], k = 2", "output": "20", "explanation": "Merge pairwise from the left: costs accumulate to 20."}, {"input": "stones = [3,2,4,1], k = 3", "output": "-1", "explanation": "Four piles cannot shrink to one by removing two piles per move."}, {"input": "stones = [3,5,1,2,6], k = 3", "output": "25", "explanation": "First merge [5,1,2] at cost 8, then merge everything at cost 17."}], "hints": ["Merging to one pile is possible exactly when (n - 1) is divisible by (k - 1); otherwise return -1.", "Use interval DP: dp[i][j] is the cheapest cost to shrink piles i..j, trying every split spaced k-1 apart.", "Add the interval sum on top only when the interval can collapse fully, i.e. (length - 1) is divisible by (k - 1)."], "statement": "You are given a row of stone piles `stones`, where `stones[i]` counts the stones\nin pile `i`, and an integer `k`. One move merges exactly `k` consecutive piles\ninto a single pile, and the cost of that move equals the total number of\nstones in those `k` piles. The merged pile keeps the summed count and takes\npart in later moves.\n\nRepeat moves until a single pile remains. Return the smallest achievable total\ncost. When the piles can never collapse into one, return `-1`.\n\n**Constraints:**\n- `1 <= stones.length <= 30`\n- `1 <= stones[i] <= 100`\n- `2 <= k <= 30`\n", "solution": "## Approach\n\nEach move removes exactly `k - 1` piles, so collapsing `n` piles into one is\npossible only when `(n - 1)` is divisible by `(k - 1)`; otherwise the answer\nis `-1`. For feasible inputs, fill an interval DP table: `dp[i][j]` is the\ncheapest cost to shrink piles `i..j` as far as the rules allow. Split the\ninterval at every position reachable in steps of `k - 1` and keep the cheapest\npair of halves. When the interval length itself allows a full collapse, add\nthe interval's stone sum (read from a prefix array) for the final merging\nmove.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n^3 / (k - 1)), with n at most 30. Each of the O(n^2) intervals tries O(n / (k-1)) splits.\n- **Space Complexity:** O(n^2) for the DP table plus O(n) for prefix sums.\n\n## Implementation\n\n```python\nfrom typing import List\nclass Solution:\n def mergeStones(self, stones: List[int], k: int) -> int:\n n = len(stones)\n if (n - 1) % (k - 1) != 0:\n return -1\n prefix = [0] * (n + 1)\n for i, s in enumerate(stones):\n prefix[i + 1] = prefix[i] + s\n dp = [[0] * n for _ in range(n)]\n for length in range(k, n + 1):\n for i in range(n - length + 1):\n j = i + length - 1\n best = float('inf')\n m = i\n while m < j:\n best = min(best, dp[i][m] + dp[m + 1][j])\n m += k - 1\n if (length - 1) % (k - 1) == 0:\n best += prefix[j + 1] - prefix[i]\n dp[i][j] = best\n return dp[0][n - 1]\n```\n", "starter": {"go": "package main\n\nfunc MergeStones(stones []int, k int) int {\n return 0\n}", "python": "from typing import List\nclass Solution:\n def mergeStones(self, stones: List[int], k: int) -> int:\n return 0", "cpp": "#include <vector>\nusing namespace std;\nclass Solution {\npublic:\n int mergeStones(vector<int>& stones, int k) {\n return 0;\n }\n};"}, "fn": "mergeStones", "params": [{"name": "stones", "type": "int_array"}, {"name": "k", "type": "int"}], "outputType": "int", "tests": [["[3,2,4,1]", "2"], ["[3,2,4,1]", "3"], ["[3,5,1,2,6]", "3"], ["[1]", "2"], ["[1,2]", "2"], ["[1,2,3]", "2"], ["[1,2,3]", "3"], ["[1,2,3,4]", "3"], ["[2,2,2,2]", "2"], ["[4,1,2,3]", "2"], ["[1,1,1,1,1]", "3"], ["[2,3,4,5,6]", "2"], ["[1,2,3,4,5]", "2"], ["[6,4,4,6]", "2"], ["[1,2,3,4,5,6,7]", "3"], ["[1,1,1,1]", "4"], ["[1,1,1,1]", "2"], ["[5,5,5]", "3"], ["[5,5,5]", "2"], ["[3,1,2]", "3"], ["[7,6,5,4,3,2,1]", "3"], ["[1,2,3,4,5,6]", "4"], ["[1,2,3,4]", "4"], ["[2,4,1,5,3]", "3"], ["[1,2,3,4,5,6,7,8,9]", "3"], ["[10,1,10,1,10]", "2"], ["[1,100,1]", "2"], ["[4,2,1,3,5]", "3"]], "expected": [20, -1, 25, 0, 3, 9, 6, -1, 16, 19, 8, 45, 33, 40, 49, 4, 8, 15, 25, 6, 49, -1, 10, 22, 87, 75, 203, 21], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "289", "slug": "minimum-depth-of-binary-tree", "id": 289, "title": "Minimum Depth of Binary Tree", "difficulty": "Easy", "category": "tree", "link": "https://leetcode.com/problems/minimum-depth-of-binary-tree/", "examples": [{"input": "root = [3,9,20,null,null,15,7]", "output": "2", "explanation": "The shortest root-to-leaf route is 3 -> 9 with 2 nodes."}, {"input": "root = [2,null,3,null,4,null,5,null,6]", "output": "5", "explanation": "Only one chain exists, so its length 5 is the minimum."}, {"input": "root = []", "output": "0", "explanation": "An empty tree has depth 0."}], "hints": ["Depth counts nodes, not edges, and only leaf endpoints (no children) qualify.", "When one child is missing, do not take min with zero \u2014 continue down the present side.", "Breadth-first search can stop at the first leaf found for an early answer."], "statement": "Find how short the shortest root-to-leaf chain in a binary tree can be.\n\nA leaf is a node with neither a left nor a right child. Count nodes along the path, so a lone root has depth 1 and an empty tree has depth 0. Where a node has only one child, the path must continue through that child \u2014 a missing side does not count as depth 0.\n\n**Constraints:**\n- `0 <= number of nodes <= 10^5`\n- `-1000 <= Node.val <= 1000`\n", "solution": "## Approach\n\nRecurse on depth: an empty tree contributes 0 and a leaf contributes 1. If exactly one child exists, the answer is one plus the depth of that child (ignoring the missing side). With both children present, take one plus the smaller of the two depths. This avoids the classic mistake of treating a missing child as depth 0.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n), each node visited once.\n- **Space Complexity:** O(h) recursion depth.\n\n## Implementation\n\n```python\nclass Solution:\n def minDepth(self, root) -> int:\n if not root:\n return 0\n if not root.left and not root.right:\n return 1\n if not root.left:\n return 1 + self.minDepth(root.right)\n if not root.right:\n return 1 + self.minDepth(root.left)\n return 1 + min(self.minDepth(root.left), self.minDepth(root.right))\n```\n", "starter": {"go": "// Definition for a binary tree node.\n// type TreeNode struct {\n// Val int\n// Left *TreeNode\n// Right *TreeNode\n// }\npackage main\n\nfunc MinDepth(root *TreeNode) int {\n \n}", "python": "# Definition for a binary tree node.\n# class TreeNode:\n# def __init__(self, val=0, left=None, right=None):\n# self.val = val\n# self.left = left\n# self.right = right\n\nclass Solution:\n def minDepth(self, root) -> int:\n pass\n", "cpp": "/*\nDefinition for a binary tree node.\nstruct TreeNode {\n int val;\n TreeNode *left;\n TreeNode *right;\n TreeNode(): val(0), left(nullptr), right(nullptr) {}\n TreeNode(int x): val(x), left(nullptr), right(nullptr) {}\n TreeNode(int x, TreeNode* left, TreeNode* right): val(x), left(left), right(right) {}\n};\n*/\nclass Solution {\npublic:\n int minDepth(TreeNode* root) {\n \n }\n};"}, "fn": "minDepth", "params": [{"name": "root", "type": "tree_node", "visualizeType": "tree_node"}], "outputType": "int", "tests": [["[3,9,20,null,null,15,7]"], ["[2,null,3,null,4,null,5,null,6]"], ["[]"], ["[1]"], ["[1,2,3,4,5]"], ["[1,2]"], ["[1,null,2]"], ["[1,2,3,4,null,null,5]"], ["[1,2,3,4,5,6,7]"], ["[5,4,6,3,null,null,7]"], ["[1,null,2,null,3]"], ["[1,2,null,3,null,4,null,5]"], ["[0]"], ["[1,2,3,null,null,4,5]"], ["[10,5,15,2,7,12,20]"], ["[-5,-10,0]"], ["[1,2,3,4,5,6,7,8]"], ["[3,9,20,15,7]"], ["[2,1,3]"], ["[4,2,6,1,3,5,7]"], ["[1,null,2,3,4]"], ["[7,3,10,2,5,null,12]"], ["[6,3,9,1,4,8,10]"], ["[5,null,4,null,3,null,2,null,1]"], ["[1,2,null,3,null,4]"], ["[100,50,150,25,75,125,175]"]], "expected": [2, 5, 0, 1, 2, 2, 2, 3, 3, 3, 3, 5, 1, 2, 3, 2, 3, 2, 2, 3, 3, 3, 3, 5, 4, 3], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "782", "slug": "minimum-distance-between-bst-nodes", "id": 782, "title": "Minimum Distance Between BST Nodes", "difficulty": "Easy", "category": "tree", "link": "https://leetcode.com/problems/minimum-distance-between-bst-nodes/", "examples": [{"input": "root = [4,2,6,1,3]", "output": "1", "explanation": "In-order values 1,2,3,4,6 give a smallest neighbor gap of 1."}, {"input": "root = [1,0,48,null,null,12,49]", "output": "1", "explanation": "Ordered values 0,1,12,48,49 have minimum gap 1 between 48 and 49."}, {"input": "root = [1,null,2]", "output": "1", "explanation": "Two nodes differing by 1."}], "hints": ["An in-order walk visits search-tree values from smallest to largest.", "Only neighboring values in that order can realize the minimum gap.", "Keep the previously visited value and update the best gap seen so far."], "statement": "You are handed the root of a binary search tree, where every left descendant\nis smaller than its parent and every right descendant is larger. Look at all\npairs of distinct nodes and measure the absolute gap between their values.\nReturn the smallest gap you can find.\n\nBecause the values arrive in sorted order during an in-order walk, the\nclosest pair in value must sit next to each other in that order, so a single\npass is enough.\n\n**Constraints:**\n- The tree holds between 2 and 100 nodes.\n- `0 <= Node.val <= 10^5`\n- The input is guaranteed to satisfy search-tree ordering.\n", "solution": "## Approach\n\nWalk the search tree in order so values appear sorted from small to large.\nRemember the previously visited value and compare it with the current one;\ntheir gap is a candidate for the answer. The smallest candidate across the\nwhole walk is the result, because any closest pair in value must be adjacent\nin sorted order.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n), where n is the node count. Each node is visited once.\n- **Space Complexity:** O(h) for the recursion stack, where h is the tree height.\n\n## Implementation\n\n```python\nclass Solution:\n def minDiffInBST(self, root) -> int:\n self.best = float(\"inf\")\n self.prev = None\n\n def inorder(node):\n if not node:\n return\n inorder(node.left)\n if self.prev is not None:\n self.best = min(self.best, node.val - self.prev)\n self.prev = node.val\n inorder(node.right)\n\n inorder(root)\n return int(self.best)\n```\n", "starter": {"go": "package main\n\nfunc MinDiffInBST(root *TreeNode) int {\n return 0\n}", "python": "# Definition for a binary tree node.\n# class TreeNode:\n# def __init__(self, val=0, left=None, right=None):\n# self.val = val\n# self.left = left\n# self.right = right\n\nclass Solution:\n def minDiffInBST(self, root) -> int:\n pass\n", "cpp": "/*\nstruct TreeNode {\n int val;\n TreeNode *left;\n TreeNode *right;\n TreeNode(): val(0), left(nullptr), right(nullptr) {}\n TreeNode(int x): val(x), left(nullptr), right(nullptr) {}\n};\n*/\nclass Solution {\npublic:\n int minDiffInBST(TreeNode* root) {\n return 0;\n }\n};"}, "fn": "minDiffInBST", "params": [{"name": "root", "type": "tree_node"}], "outputType": "int", "tests": [["[4,2,6,1,3]"], ["[1,0,48,null,null,12,49]"], ["[1,null,2]"], ["[2,1,3]"], ["[10,5,15,2,7,12,20]"], ["[1,0,2]"], ["[5,3,7,2,4,6,8]"], ["[100,50,150,25,75,125,175]"], ["[1,null,3,null,5]"], ["[5,null,10,null,15]"], ["[20,10,30,5,15,25,35]"], ["[3,1,5,0,2,4,6]"], ["[50,30,70,20,40,60,80]"], ["[2,null,5,null,9]"], ["[7,3,11,1,5,9,13]"], ["[99999,0,100000]"], ["[42,20,60,10,30,50,70]"], ["[8,3,10,1,6,null,14,null,null,4,7,13]"], ["[15,10,20,8,12,18,25]"], ["[90,50,110,30,70,100,120]"], ["[1,0,null]"], ["[6,2,8,0,4,7,9,null,null,3,5]"], ["[27,14,35,10,19,31,42]"], ["[100,10,200,5,50,150,300]"], ["[4,2,6,null,3,null,null]"], ["[12,8,16,4,10,14,18]"], ["[30,20,40,10,25,35,50]"], ["[60,40,80,30,50,70,90]"]], "expected": [1, 1, 1, 1, 2, 1, 1, 25, 2, 5, 5, 1, 10, 3, 2, 1, 8, 1, 2, 10, 1, 1, 4, 5, 1, 2, 5, 10], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "649", "slug": "minimum-factorization", "id": 649, "title": "Minimum Factorization", "difficulty": "Medium", "category": "math", "link": "https://leetcode.com/problems/minimum-factorization/", "examples": [{"input": "a = 48", "output": "68", "explanation": "48 splits as 6 x 8; arranging the digits increasingly gives 68, the smallest layout."}, {"input": "a = 15", "output": "35", "explanation": "15 splits as 3 x 5, ordered as 35."}, {"input": "a = 13", "output": "0", "explanation": "13 is prime above 9, so no digit layout exists."}], "hints": ["Single-digit inputs answer themselves; 1 answers 1.", "Pull factors greedily from 9 down to 2 so the digit multiset stays small and sortable.", "If a remainder above 1 survives, the task is impossible (answer 0); otherwise sort digits increasingly and reject overflows past 2^31-1."], "statement": "You are given a positive integer `a`. Write it as a product of integers each between 2 and 9 inclusive, then concatenate those factors as decimal digits to form a new integer. Among all such splittings, return the smallest achievable integer.\n\nHandle the edges directly: values below 10 are already answers. When no splitting into allowed digits exists, return 0. Answers exceeding the 32-bit signed ceiling also yield 0.\n\n**Constraints:**\n- `1 <= a <= 2^31 - 1`\n", "solution": "## Approach\n\nGrab the largest permissible digit factor first (9 down to 2), dividing it out as often as possible; this leaves the fewest digits. A leftover above 1 means a prime factor bigger than 9 survived, so answer 0. Otherwise sort the collected digits increasingly to build the numerically smallest concatenation, guarding against overflow beyond 32-bit signed range.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(log a) divisions plus sorting at most ~30 digits.\n- **Space Complexity:** O(log a) for the digit list.\n\n## Implementation\n\n```python\nclass Solution:\n def smallestFactorization(self, a: int) -> int:\n if a < 10:\n return a\n ds = []\n for d in range(9, 1, -1):\n while a % d == 0:\n ds.append(d)\n a //= d\n if a != 1:\n return 0\n ds.sort()\n res = 0\n for d in ds:\n res = res * 10 + d\n return res if res <= 2 ** 31 - 1 else 0\n```\n", "starter": {"go": "package main\n\nfunc SmallestFactorization(a int) int {\n \n}", "python": "class Solution:\n def smallestFactorization(self, a: int) -> int:\n pass", "cpp": "class Solution {\npublic:\n int smallestFactorization(int a) {\n return 0;\n }\n};"}, "fn": "smallestFactorization", "params": [{"name": "a", "type": "int"}], "outputType": "int", "tests": [["48"], ["15"], ["13"], ["1"], ["2"], ["9"], ["10"], ["11"], ["12"], ["25"], ["36"], ["49"], ["100"], ["128"], ["243"], ["1000000"], ["7"], ["8"], ["27"], ["32"], ["64"], ["72"], ["81"], ["99"], ["17"], ["19"], ["26"], ["1800000000"]], "expected": [68, 35, 0, 1, 2, 9, 25, 0, 26, 55, 49, 77, 455, 288, 399, 55555588, 7, 8, 39, 48, 88, 89, 99, 0, 0, 0, 0, 0], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "918", "slug": "minimum-falling-path-sum", "id": 918, "title": "Minimum Falling Path Sum", "difficulty": "Medium", "category": "dp", "link": "https://leetcode.com/problems/minimum-falling-path-sum/", "examples": [{"input": "matrix = [[2,1,3],[6,5,4],[7,8,9]]", "output": "13", "explanation": "The path 1 -> 4 -> 8 is minimal."}, {"input": "matrix = [[-19,57],[-40,-5]]", "output": "-59", "explanation": "-19 plus -40 is cheapest."}, {"input": "matrix = [[-48]]", "output": "-48"}], "hints": ["The cheapest way to reach a cell depends only on the three cells above it.", "Roll one row of best costs forward instead of storing the whole table.", "Borders have fewer predecessors; handle the first and last columns carefully."], "statement": "You are given a square integer matrix. A falling path starts at any cell in the top row and moves down one row at a time, each step shifting to the column directly below, diagonally left-below, or diagonally right-below when those columns exist.\n\nReturn the smallest possible sum of a falling path from the top row to the bottom row.\n\n**Constraints:**\n- `1 <= matrix.length <= 100`\n- The matrix is square with values between `-100` and `100`.\n", "solution": "## Approach\n\nProcess rows top-down keeping only the cheapest cost to reach each column. The cost to reach a cell is its own value plus the minimum of the three reachable costs from the row above (fewer at the borders). After the last row, the answer is the minimum entry.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n^2) for an n by n matrix. Each cell checks up to three predecessors.\n- **Space Complexity:** O(n) for one rolling row of costs.\n\n## Implementation\n\n```python\nfrom typing import List\nclass Solution:\n def minFallingPathSum(self, matrix: List[List[int]]) -> int:\n prev = list(matrix[0])\n n = len(matrix)\n for r in range(1, n):\n cur = [0] * n\n for c in range(n):\n best = prev[c]\n if c > 0:\n best = min(best, prev[c - 1])\n if c + 1 < n:\n best = min(best, prev[c + 1])\n cur[c] = matrix[r][c] + best\n prev = cur\n return min(prev)\n```\n", "starter": {"go": "package main\n\nfunc MinFallingPathSum(matrix [][]int) int {\n return 0\n}", "python": "from typing import List\nclass Solution:\n def minFallingPathSum(self, matrix: List[List[int]]) -> int:\n pass", "cpp": "#include <vector>\nusing namespace std;\n\nclass Solution {\npublic:\n int minFallingPathSum(vector<vector<int>>& matrix) {\n return 0;\n }\n};"}, "fn": "minFallingPathSum", "params": [{"name": "matrix", "type": "int_array_2d"}], "outputType": "int", "tests": [["[[2,1,3],[6,5,4],[7,8,9]]"], ["[[-19,57],[-40,-5]]"], ["[[-48]]"], ["[[1]]"], ["[[1,2],[3,4]]"], ["[[5,5,5],[5,5,5],[5,5,5]]"], ["[[0,0,0],[0,0,0],[0,0,0]]"], ["[[-1,-2,-3],[-4,-5,-6],[-7,-8,-9]]"], ["[[100,100,100],[100,100,100],[100,100,100]]"], ["[[-100,100],[-100,100]]"], ["[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]"], ["[[2,1],[6,5]]"], ["[[7,8,1],[1,2,3],[3,4,5]]"], ["[[1,0,0],[0,1,0],[0,0,1]]"], ["[[3,2,1],[6,5,4],[9,8,7]]"], ["[[10,-10,10],[-10,10,-10],[10,-10,10]]"], ["[[1,2,3],[4,5,6],[7,8,9]]"], ["[[5]]"], ["[[-5,-1],[-3,-2]]"], ["[[0,1],[1,0]]"], ["[[1,1,1,1,1],[2,2,2,2,2],[3,3,3,3,3],[4,4,4,4,4],[5,5,5,5,5]]"], ["[[9,8,7],[6,5,4],[3,2,1]]"], ["[[1,2],[2,1]]"], ["[[0,-1,0],[-1,0,-1],[0,-1,0]]"], ["[[50,10,50],[10,50,10],[50,10,50]]"], ["[[1,2,3,4,5],[5,4,3,2,1],[1,1,1,1,1],[2,2,2,2,2],[3,3,3,3,3]]"], ["[[5,4,3,2,1],[1,2,3,4,5],[5,5,5,5,5],[0,0,0,0,0],[9,9,9,9,9]]"], ["[[-73,61,43,-48,-36],[3,30,27,57,10],[96,-76,84,59,-15],[5,-49,76,31,-7],[97,91,61,-46,67]]"]], "expected": [13, -59, -48, 1, 4, 15, 0, -18, 300, -200, 28, 6, 6, 0, 12, -30, 12, 5, -8, 0, 15, 12, 2, -3, 30, 11, 19, -134], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "502", "slug": "minimum-genetic-mutation", "id": 502, "title": "Minimum Genetic Mutation", "difficulty": "Medium", "category": "string", "link": "https://leetcode.com/problems/minimum-genetic-mutation/", "examples": [{"input": "startGene = \"AACCGGTT\", endGene = \"AACCGGTA\", bank = [\"AACCGGTA\"]", "output": "1", "explanation": "One change at the last position reaches the target."}, {"input": "startGene = \"AACCGGTT\", endGene = \"AAACGGTA\", bank = [\"AACCGGTA\",\"AACCGCTA\",\"AAACGGTA\"]", "output": "2", "explanation": "Two single-letter steps via AACCGGTA."}], "hints": ["Model valid genes as graph nodes joined when they differ by one letter.", "Breadth-first search from the start yields the fewest steps.", "Stop early when the target is dequeued; unvisited bank entries are unreachable."], "statement": "A gene is an 8-letter string over the alphabet `A, C, G, T`. One mutation swaps a single position to a different letter. You are given a starting gene `startGene`, a target gene `endGene`, and a bank of approved intermediate genes. Every step of your mutation path (including the destination) must appear in the bank, except the start which is assumed valid even when absent from the bank.\n\nReturn the smallest number of mutations leading from start to target. Return `-1` when no such chain exists.\n\n**Constraints:**\n- `0 <= bank.length <= 10`\n- Each of `startGene`, `endGene` and every bank entry has length 8 and uses only `A, C, G, T`.\n", "solution": "## Approach\n\nTreat each bank gene plus the start as a node, linking nodes that differ in exactly one position. Breadth-first search from the start expands in increasing mutation count, so the first visit to the target is optimal. Missing targets or exhausted queues mean `-1`.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(b^2 * L), where b is the bank size and L is 8. Each dequeued gene is compared against the bank.\n- **Space Complexity:** O(b) for the queue and visited set.\n\n## Implementation\n\n```python\nfrom collections import deque\nclass Solution:\n def minMutation(self, startGene: str, endGene: str, bank) -> int:\n bank_set = set(bank)\n if endGene not in bank_set:\n return -1\n def one(a, b):\n return sum(1 for x, y in zip(a, b) if x != y) == 1\n q = deque([startGene])\n seen = {startGene}\n steps = 0\n while q:\n for _ in range(len(q)):\n cur = q.popleft()\n if cur == endGene:\n return steps\n for nb in bank:\n if nb not in seen and one(cur, nb):\n seen.add(nb)\n q.append(nb)\n steps += 1\n return -1\n```\n", "starter": {"go": "package main\n\nfunc MinMutation(startGene string, endGene string, bank []string) int {\n \n}", "python": "from typing import List\nclass Solution:\n def minMutation(self, startGene: str, endGene: str, bank: List[str]) -> int:\n pass", "cpp": "#include <vector>\n#include <string>\nusing namespace std;\nclass Solution {\npublic:\n int minMutation(string startGene, string endGene, vector<string>& bank) {\n return -1;\n }\n};"}, "fn": "minMutation", "params": [{"name": "startGene", "type": "string"}, {"name": "endGene", "type": "string"}, {"name": "bank", "type": "string_array"}], "outputType": "int", "tests": [["AACCGGTT", "AACCGGTA", "[\"AACCGGTA\"]"], ["AACCGGTT", "AAACGGTA", "[\"AACCGGTA\",\"AACCGCTA\",\"AAACGGTA\"]"], ["AAAAACCC", "AACCCCCC", "[\"AAAACCCC\",\"AAACCCCC\",\"AACCCCCC\"]"], ["AACCGGTT", "AACCGGTT", "[]"], ["AACCGGTT", "AAACGGTA", "[]"], ["AAAAAAAA", "CCCCCCCC", "[\"AAAAAAAA\",\"AAAAAAAC\",\"AAAAAACC\",\"AAAAACCC\",\"AAAACCCC\",\"AAACCCCC\",\"AACCCCCC\",\"ACCCCCCC\",\"CCCCCCCC\"]"], ["AACCGGTT", "AACCGGTA", "[]"], ["AAAACCCC", "CCCCCCCC", "[\"AAAACCCA\",\"AAACCCAA\",\"AACCCCCA\",\"AACCCCCC\",\"ACCCCCCC\",\"CCCCCCCC\",\"AAACCCCC\",\"AAAACCCC\"]"], ["AAAAAAAA", "AAAAAAAA", "[\"AAAAAAAA\"]"], ["AACCGGTT", "TTCCGGAA", "[\"AACCGGTA\",\"AACCGCTA\",\"AAACGGTA\"]"], ["AAAAACCC", "AAAACCCC", "[\"AAAACCCC\"]"], ["AACCGGTT", "AACCGGTA", "[\"AACCGGTA\",\"AACCGGTT\"]"], ["AACCGGTT", "AACCGCTA", "[\"AACCGGTA\",\"AACCGCTA\"]"], ["AAAAAAAA", "AAACAAAA", "[\"AAACAAAA\"]"], ["CCCCCCCC", "CCCCCCCA", "[\"CCCCCCCA\"]"], ["AACCGGTT", "AACCGGTT", "[\"AACCGGTT\"]"], ["AAAAAAAA", "TTTTTTTT", "[\"AAAAAAAT\",\"AAAAAATT\",\"AAAATTTT\",\"AAATTTTT\",\"AATTTTTT\",\"ATTTTTTT\",\"TTTTTTTT\"]"], ["GGGGGGGG", "GGGGGGTT", "[\"GGGGGGGT\",\"GGGGGGTT\"]"], ["ACGTACGT", "ACGTACGA", "[\"ACGTACGA\"]"], ["ACGTACGT", "TGCAACGT", "[\"ACGTACGT\",\"TGCAACGT\"]"], ["AAAAAAAA", "CCCCCCCC", "[\"CCCCCCCC\"]"], ["TTTTTTTT", "TTTTTTTT", "[]"], ["AACCGGTT", "AACCGGTA", "[\"AACCGGTA\",\"AACCGCTA\",\"AAACGGTA\",\"AACCGGTT\"]"], ["GATTACAA", "GATTACAT", "[\"GATTACAT\"]"], ["AAAAAAAC", "AAAAAAAG", "[\"AAAAAAAG\"]"], ["CCCGGGTT", "CCCGGGTA", "[\"CCCGGGTA\"]"], ["ATATATAT", "ATATATAA", "[\"ATATATAA\"]"], ["GGGGGGGG", "AAAAAAAA", "[\"GGGGGGGA\",\"GGGGGGAA\",\"GGGGGAAA\",\"GGGGAAAA\",\"GGGAAAAA\",\"GGAAAAAA\",\"GAAAAAAA\",\"AAAAAAAA\"]"]], "expected": [1, 2, 3, -1, -1, 8, -1, 4, 0, -1, 1, 1, 2, 1, 1, 0, -1, 2, 1, -1, -1, -1, 1, 1, 1, 1, 1, 8], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "222", "slug": "minimum-height-trees", "id": 222, "title": "Minimum Height Trees", "difficulty": "Medium", "category": "graph", "link": "https://leetcode.com/problems/minimum-height-trees/", "examples": [{"input": "n = 4, edges = [[1,0],[1,2],[1,3]]", "output": "[1]"}, {"input": "n = 6, edges = [[3,0],[3,1],[3,2],[3,4],[5,4]]", "output": "[3,4]"}], "hints": ["Peel leaves layer by layer until 1 or 2 nodes remain \u2014 those are the MHT roots."], "statement": "Consider an undirected connected graph with no cycles \u2014 that structure is a tree, so every pair of vertices is joined by a single unique path.\n\nYou are given `n` labeled `0` through `n - 1`, together with `n - 1` connections `edges` where `edges[i] = [ai, bi]` joins vertices `ai` and `bi`. Any vertex may be designated as the root, which turns the tree into a rooted tree of some height `h`. The trees whose height is as small as possible over all root choices are the minimum height trees (MHTs).\n\nList the labels of every root that achieves that smallest height. The order of the returned list does not matter.\n\nFor a rooted tree, height means the count of edges along the longest path that starts at the root and goes down to a leaf.\n\n**Constraints:**\n- `1 <= n <= 2 * 10^4`\n- `edges.length == n - 1`\n- `0 <= ai, bi < n`\n- `ai != bi`\n- All the pairs `(ai, bi)` are unique\n- The given input is guaranteed to be a tree and there will be no repeated edges\n", "solution": "## Approach\n\nRepeatedly peel leaves until one or two nodes remain. Those centroids are the MHT roots.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n)\n- **Space Complexity:** O(n)\n\n## Implementation\n\n```python\nfrom typing import List\nclass Solution:\n def findMinHeightTrees(self, n: int, edges: List[List[int]]) -> List[int]:\n if n == 1:\n return [0]\n g = [set() for _ in range(n)]\n for a, b in edges:\n g[a].add(b)\n g[b].add(a)\n leaves = [i for i in range(n) if len(g[i]) == 1]\n remain = n\n while remain > 2:\n remain -= len(leaves)\n nxt = []\n for leaf in leaves:\n nb = g[leaf].pop()\n g[nb].remove(leaf)\n if len(g[nb]) == 1:\n nxt.append(nb)\n leaves = nxt\n return leaves\n```\n", "starter": {"go": "package main\n\nfunc FindMinHeightTrees(n int, edges [][]int) []int {\n return nil\n}", "python": "from typing import List\nclass Solution:\n def findMinHeightTrees(self, n: int, edges: List[List[int]]) -> List[int]:\n ", "cpp": "#include <vector>\nusing namespace std;\n\nclass Solution {\npublic:\n vector<int> findMinHeightTrees(int n, vector<vector<int>>& edges) {\n return {};\n }\n};"}, "fn": "findMinHeightTrees", "params": [{"name": "n", "type": "int"}, {"name": "edges", "type": "int_array_2d"}], "outputType": "int_array", "tests": [["4", "[[1,0],[1,2],[1,3]]"], ["6", "[[3,0],[3,1],[3,2],[3,4],[5,4]]"], ["1", "[]"], ["2", "[[0,1]]"], ["3", "[[0,1],[0,2]]"], ["7", "[[0,1],[1,2],[1,3],[2,4],[3,5],[4,6]]"], ["5", "[[0,1],[0,2],[0,3],[0,4]]"], ["6", "[[0,1],[0,2],[0,3],[3,4],[4,5]]"], ["4", "[[0,1],[1,2],[1,3]]"], ["8", "[[0,1],[1,2],[2,3],[0,4],[4,5],[4,6],[6,7]]"], ["3", "[[0,1],[1,2]]"], ["4", "[[0,1],[1,2],[2,3]]"], ["4", "[[0,1],[0,2],[0,3]]"], ["5", "[[0,1],[1,2],[2,3],[3,4]]"], ["5", "[[0,1],[1,2],[1,3],[1,4]]"], ["6", "[[0,1],[1,2],[2,3],[3,4],[4,5]]"], ["6", "[[0,1],[0,2],[0,3],[0,4],[0,5]]"], ["7", "[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6]]"], ["7", "[[0,1],[0,2],[0,3],[0,4],[0,5],[0,6]]"], ["7", "[[0,1],[0,2],[1,3],[1,4],[2,5],[2,6]]"], ["8", "[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[6,7]]"], ["8", "[[0,1],[0,2],[0,3],[0,4],[0,5],[0,6],[0,7]]"], ["8", "[[0,1],[0,2],[1,3],[1,4],[2,5],[3,6],[3,7]]"], ["9", "[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[6,7],[7,8]]"], ["9", "[[0,1],[0,2],[0,3],[0,4],[0,5],[0,6],[0,7],[0,8]]"], ["9", "[[0,1],[0,2],[1,3],[1,4],[2,5],[2,6],[3,7],[3,8]]"], ["10", "[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[6,7],[7,8],[8,9]]"], ["10", "[[0,1],[0,2],[0,3],[0,4],[0,5],[0,6],[0,7],[0,8],[0,9]]"], ["6", "[[0,1],[1,2],[2,3],[2,4],[2,5]]"], ["6", "[[0,1],[0,2],[1,3],[1,4],[2,5]]"]], "expected": [[1], [3, 4], [0], [0, 1], [0], [1, 2], [0], [3], [1], [0], [1], [1, 2], [0], [2], [1], [2, 3], [0], [3], [0], [0], [3, 4], [0], [0, 1], [4], [0], [0, 1], [4, 5], [0], [1, 2], [0]], "loose": true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "932", "slug": "minimum-increment-to-make-array-unique", "id": 932, "title": "Minimum Increment to Make Array Unique", "difficulty": "Medium", "category": "array", "link": "https://leetcode.com/problems/minimum-increment-to-make-array-unique/", "examples": [{"input": "nums = [1,2,2]", "output": "1", "explanation": "Raise one duplicate 2 to 3."}, {"input": "nums = [3,2,1,2,1,7]", "output": "6", "explanation": "Finish at values such as 3,4,1,2,5,7."}], "hints": ["Sort first so equal and nearly-equal values sit next to each other.", "Sweep left to right keeping the smallest free value: whenever the current entry is taken, lift it exactly to that free value and add the gap to the cost."], "statement": "Raise duplicates just enough to make every entry different.\n\nIn one move you may pick any position and add one to its value. Repeating moves, turn the array into one with all distinct numbers while using as few moves as possible.\n\nGiven an integer array `nums`, return that smallest possible move count.\n\n**Constraints:**\n- `1 <= nums.length <= 10^5`\n- `0 <= nums[i] <= 10^5`\n- The answer fits in a 32-bit signed integer.\n", "solution": "## Approach\n\nSort a copy of the array so clashes become neighbours. Then sweep from left to right: each entry must end up strictly above the previous final value, so whenever it is at or below that value, raise it to exactly one more than the predecessor and charge the difference. This greedy lift is minimal because every duplicate has to move at least that far.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n log n), dominated by sorting.\n- **Space Complexity:** O(n) for the sorted copy.\n\n## Implementation\n\n```python\nfrom typing import List\nclass Solution:\n def minIncrementForUnique(self, nums: List[int]) -> int:\n a = sorted(nums)\n moves = 0\n for i in range(1, len(a)):\n if a[i] <= a[i - 1]:\n need = a[i - 1] + 1\n moves += need - a[i]\n a[i] = need\n return moves\n```\n", "starter": {"go": "package main\n\nfunc MinIncrementForUnique(nums []int) int {\n return 0\n}", "python": "from typing import List\nclass Solution:\n def minIncrementForUnique(self, nums: List[int]) -> int:\n pass", "cpp": "#include <vector>\n#include <string>\nusing namespace std;\n\nclass Solution {\npublic:\n int minIncrementForUnique(vector<int>& nums) {\n return 0;\n }\n};"}, "fn": "minIncrementForUnique", "params": [{"name": "nums", "type": "int_array"}], "outputType": "int", "tests": [["[1, 2, 2]"], ["[3, 2, 1, 2, 1, 7]"], ["[0]"], ["[0, 0]"], ["[1, 1, 1]"], ["[1, 2, 3, 4]"], ["[0, 0, 0, 0]"], ["[5, 5, 5, 5, 5]"], ["[3, 3, 3, 3]"], ["[1, 1, 2, 2, 3, 3]"], ["[0, 2, 2]"], ["[7, 7, 7, 1, 2, 3]"], ["[100000, 100000]"], ["[0, 1, 1, 1, 2]"], ["[2, 2, 2, 2, 2, 2]"], ["[5, 4, 3, 2, 1]"], ["[1, 3, 5, 7, 9]"], ["[0, 0, 1, 1, 2, 2]"], ["[10, 10, 10, 10, 10, 10, 10]"], ["[1, 2, 3, 3, 3, 4]"], ["[4, 4, 4, 9]"], ["[0, 5, 5, 5, 10]"], ["[2, 1, 2, 1, 2, 1]"], ["[8, 8, 9, 9, 10]"], ["[0, 0, 0, 1, 1, 2]"], ["[6, 6, 1, 1, 6]"], ["[9, 7, 5, 3, 1, 1]"], ["[3, 0, 0, 0, 3]"]], "expected": [1, 6, 0, 1, 3, 0, 6, 10, 6, 9, 1, 3, 1, 5, 15, 0, 0, 9, 21, 5, 3, 3, 12, 6, 11, 4, 1, 4], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "638", "slug": "minimum-index-sum-of-two-lists", "id": 638, "title": "Minimum Index Sum of Two Lists", "difficulty": "Easy", "category": "array", "link": "https://leetcode.com/problems/minimum-index-sum-of-two-lists/", "examples": [{"input": "list1 = [\"Shogun\",\"Tapioca Express\",\"Burger King\",\"KFC\"], list2 = [\"Piatti\",\"The Grill at Torrey Pines\",\"Hungry Hunter Steakhouse\",\"Shogun\"]", "output": "[\"Shogun\"]", "explanation": "Only Shogun appears in both."}, {"input": "list1 = [\"Shogun\",\"Tapioca Express\",\"Burger King\",\"KFC\"], list2 = [\"KFC\",\"Shogun\",\"Burger King\"]", "output": "[\"Shogun\"]", "explanation": "Sums are 3, 4 and 4, so Shogun wins alone."}, {"input": "list1 = [\"happy\",\"sad\",\"good\"], list2 = [\"sad\",\"happy\",\"good\"]", "output": "[\"sad\",\"happy\"]", "explanation": "Sad and happy both sum to 1."}], "hints": ["Index the second list for O(1) lookups.", "Scan the first list, adding indices for shared names and tracking the smallest sum.", "Collect every shared name reaching that minimum."], "statement": "Two friends each rank favorite eateries in order. The combined rank of a shared name is its index in the first list plus its index in the second. Return all shared names with the smallest combined rank, in any order.\n\n**Constraints:**\n- Each list holds 1 to 1000 distinct names.\n- At least one name is shared.\n", "solution": "## Approach\n\nMap every name in the second list to its index, then scan the first list computing combined ranks for shared names. Keep the smallest rank seen and all names reaching it.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n+m).\n- **Space Complexity:** O(m) for the index map.\n\n## Implementation\n\n```python\nfrom typing import List\nclass Solution:\n def findRestaurant(self, list1: List[str], list2: List[str]) -> List[str]:\n pos = {w: i for i, w in enumerate(list2)}\n best = 10 ** 9\n ans = []\n for i, w in enumerate(list1):\n if w in pos:\n s = i + pos[w]\n if s < best:\n best = s; ans = [w]\n elif s == best:\n ans.append(w)\n return ans\n```\n", "starter": {"go": "package main\n\nfunc FindRestaurant(list1 []string, list2 []string) []string {\n return []string{}\n}", "python": "from typing import List\nclass Solution:\n def findRestaurant(self, list1: List[str], list2: List[str]) -> List[str]:\n pass", "cpp": "#include <string>\n#include <vector>\nusing namespace std;\nclass Solution {\npublic:\n vector<string> findRestaurant(vector<string>& list1, vector<string>& list2) {\n return {};\n }\n};"}, "fn": "findRestaurant", "params": [{"name": "list1", "type": "string_array"}, {"name": "list2", "type": "string_array"}], "outputType": "string_list", "tests": [["[\"Shogun\",\"Tapioca Express\",\"Burger King\",\"KFC\"]", "[\"Piatti\",\"The Grill at Torrey Pines\",\"Hungry Hunter Steakhouse\",\"Shogun\"]"], ["[\"Shogun\",\"Tapioca Express\",\"Burger King\",\"KFC\"]", "[\"KFC\",\"Shogun\",\"Burger King\"]"], ["[\"happy\",\"sad\",\"good\"]", "[\"sad\",\"happy\",\"good\"]"], ["[\"a\"]", "[\"a\"]"], ["[\"a\",\"b\"]", "[\"b\",\"a\"]"], ["[\"x\",\"y\",\"z\"]", "[\"z\",\"y\",\"x\"]"], ["[\"one\",\"two\",\"three\"]", "[\"three\",\"two\",\"one\"]"], ["[\"kfc\"]", "[\"kfc\",\"mcd\"]"], ["[\"a\",\"b\",\"c\"]", "[\"c\",\"b\",\"a\"]"], ["[\"aa\",\"bb\"]", "[\"bb\",\"aa\",\"cc\"]"], ["[\"a\",\"b\",\"c\",\"d\"]", "[\"d\",\"c\",\"b\",\"a\"]"], ["[\"vacation\",\"work\",\"play\"]", "[\"play\",\"work\",\"vacation\"]"], ["[\"n1\",\"n2\",\"n3\",\"n4\",\"n5\"]", "[\"n5\",\"n4\",\"n3\",\"n2\",\"n1\"]"], ["[\"A\",\"B\"]", "[\"B\",\"A\"]"], ["[\"q\",\"w\",\"e\",\"r\"]", "[\"r\",\"e\",\"w\",\"q\"]"], ["[\"apple\",\"banana\"]", "[\"banana\",\"apple\"]"], ["[\"a1\",\"a2\",\"a3\"]", "[\"a3\",\"a1\",\"a2\"]"], ["[\"m\",\"n\"]", "[\"n\",\"m\",\"o\"]"], ["[\"t1\",\"t2\"]", "[\"t2\",\"t1\"]"], ["[\"p\",\"q\",\"r\",\"s\"]", "[\"s\",\"p\",\"q\",\"r\"]"], ["[\"u\",\"v\",\"w\"]", "[\"w\",\"v\",\"u\"]"], ["[\"ab\",\"cd\",\"ef\"]", "[\"ef\",\"cd\",\"ab\"]"], ["[\"1\",\"2\",\"3\",\"4\"]", "[\"4\",\"3\",\"2\",\"1\"]"], ["[\"alpha\",\"beta\"]", "[\"beta\",\"alpha\"]"], ["[\"x1\"]", "[\"x1\",\"x2\",\"x3\"]"], ["[\"a\",\"b\",\"c\",\"d\",\"e\"]", "[\"e\",\"d\",\"c\",\"b\",\"a\"]"], ["[\"sun\",\"moon\"]", "[\"moon\",\"sun\"]"], ["[\"aa\",\"bb\",\"cc\"]", "[\"cc\",\"bb\",\"aa\"]"]], "expected": [["Shogun"], ["Shogun"], ["happy", "sad"], ["a"], ["a", "b"], ["x", "y", "z"], ["one", "two", "three"], ["kfc"], ["a", "b", "c"], ["aa", "bb"], ["a", "b", "c", "d"], ["vacation", "work", "play"], ["n1", "n2", "n3", "n4", "n5"], ["A", "B"], ["q", "w", "e", "r"], ["apple", "banana"], ["a1"], ["m", "n"], ["t1", "t2"], ["p"], ["u", "v", "w"], ["ab", "cd", "ef"], ["1", "2", "3", "4"], ["alpha", "beta"], ["x1"], ["a", "b", "c", "d", "e"], ["sun", "moon"], ["aa", "bb", "cc"]], "loose": true}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "138", "slug": "minimum-interval-to-include-each-query", "id": 138, "title": "Minimum Interval to Include Each Query", "difficulty": "Hard", "category": "interval", "link": "https://leetcode.com/problems/minimum-interval-to-include-each-query/", "examples": [{"input": "intervals = [[1,4],[2,4],[3,6],[4,4]], queries = [2,3,4,5]", "output": "[3,3,1,4]", "explanation": "The smallest covering intervals are [2,4], [2,4], [4,4], and [3,6]."}, {"input": "intervals = [[2,3],[2,5],[1,8],[20,25]], queries = [2,19,5,22]", "output": "[2,-1,4,6]", "explanation": "Query 2 is covered by [2,3] (size 2), [2,5] (size 4), and [1,8] (size 8) \u2014 smallest is [2,3] size 2. Query 19 has no covering interval, so -1. Query 5 is covered by [2,5] (size 4) and [1,8] (size 8) \u2014 smallest is [2,5] size 4. Query 22 is covered only by [20,25] (size 6)."}, {"input": "intervals = [[1,1]], queries = [1,2]", "output": "[1,-1]", "explanation": "Query 1 is covered by [1,1] (size 1). Query 2 has no covering interval, so -1."}], "hints": ["Process queries in sorted order while separately preserving each query's original index.", "Before answering query q, add every interval whose left endpoint is at most q to a min-heap ordered by interval size.", "Remove heap entries whose right endpoint is less than q; the remaining smallest entry gives the answer."], "statement": "You are given a collection of closed intervals with `intervals[i] = [left, right]`, plus an array `queries`. Define the length of an interval as `right - left + 1`.\n\nFor every query value, identify the shortest interval from the collection that covers it (that is, `left <= query <= right`). When several intervals cover the same query, keep the one with the smallest length; when none covers it, record `-1` for that query. Collect these answers in an array that preserves the incoming order of `queries`.\n\n**Constraints:**\n\n- `1 <= intervals.length, queries.length <= 100000`\n- Every interval row has the form `[left, right]` with `1 <= left <= right <= 10000000`.\n- `1 <= queries[i] <= 10000000`\n", "solution": "## Approach\n\nSort the intervals by left endpoint and process query indices in increasing query-value order. Before answering a query, add every interval whose left endpoint is at most the query to a min-heap keyed by `(length, right endpoint)`. Remove intervals whose right endpoint is before the query. The heap top is then the smallest interval containing that query, and storing answers by original index preserves query order.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n log n + q log q + (n + q) log n) for sorting and heap operations.\n- **Space Complexity:** O(n + q) for the heap, sorted query indices, and result.\n\n## Implementation\n\n```python\nimport heapq\nfrom typing import List\n\n\nclass Solution:\n def minInterval(self, intervals: List[List[int]], queries: List[int]) -> List[int]:\n intervals.sort()\n order = sorted(range(len(queries)), key=queries.__getitem__)\n answer = [-1] * len(queries)\n active = []\n interval_index = 0\n\n for query_index in order:\n query = queries[query_index]\n while interval_index < len(intervals) and intervals[interval_index][0] <= query:\n left, right = intervals[interval_index]\n heapq.heappush(active, (right - left + 1, right))\n interval_index += 1\n while active and active[0][1] < query:\n heapq.heappop(active)\n if active:\n answer[query_index] = active[0][0]\n return answer\n```\n", "starter": {"go": "package main\n\nfunc MinInterval(intervals [][]int, queries []int) []int {\n \n}", "python": "from typing import List\nclass Solution:\n def minInterval(self, intervals: List[List[int]], queries: List[int]) -> List[int]:\n pass\n", "cpp": "#include <vector>\nusing namespace std;\n\nclass Solution {\npublic:\n vector<int> minInterval(vector<vector<int>>& intervals, vector<int>& queries) {\n return {};\n }\n};"}, "fn": "minInterval", "params": [{"name": "intervals", "type": "int_array_2d"}, {"name": "queries", "type": "int_array"}], "outputType": "int_array", "tests": [["[[1,4],[2,4],[3,6],[4,4]]", "[2,3,4,5]"], ["[[2,3],[2,5],[1,8],[20,25]]", "[2,19,5,22]"], ["[[1,1]]", "[1]"], ["[[1,2]]", "[3]"], ["[[5,10]]", "[5,10,7,4,11]"], ["[[1,5],[2,3]]", "[2,4]"], ["[[10,12],[1,2],[5,8]]", "[1,6,11,4,13]"], ["[[1,3],[3,5],[5,7]]", "[3,5,4,8]"], ["[[2,2],[4,4],[6,6]]", "[2,3,4,6]"], ["[[1,4],[1,4],[2,2]]", "[1,2,4]"], ["[[1,10],[3,3]]", "[3,3,3,9]"], ["[[1,100],[50,50],[49,51]]", "[50,1,100]"], ["[[3,8],[4,6],[5,5]]", "[3,4,5,6,8]"], ["[[1,2],[2,2],[2,3]]", "[2]"], ["[[7,9],[1,20],[10,12]]", "[8,11,15]"], ["[[100,200],[150,160]]", "[99,100,155,200,201]"], ["[[1,1],[1,2],[1,3],[1,4]]", "[1,2,3,4]"], ["[[4,4],[3,4],[2,4],[1,4]]", "[1,2,3,4]"], ["[[2,6],[4,8],[6,10]]", "[2,4,6,8,10]"], ["[[1,10],[2,9],[3,8],[4,7]]", "[1,4,5,10]"], ["[[1,5],[6,10],[11,15]]", "[5,6,10,11]"], ["[[8,15],[1,7],[3,10]]", "[2,8,14]"], ["[[5,5],[5,6],[4,5]]", "[5,6]"], ["[[1,1000]]", "[1,250,500,750,1000]"], ["[[9,12],[3,14],[7,8]]", "[7,9,13,15]"], ["[[1,2],[4,5],[7,8],[10,11]]", "[2,3,5,6,8,9,11]"], ["[[1,6],[2,7],[3,8],[4,9]]", "[1,5,9]"], ["[[20,30],[1,50],[25,25]]", "[20,25,30,40]"], ["[[2,9],[3,3],[7,7]]", "[3,5,7]"], ["[[1,4],[6,9],[2,8]]", "[1,5,9]"], ["[[30,40],[10,20],[15,35]]", "[10,18,25,38]"], ["[[1,1],[3,3],[5,5],[7,7]]", "[1,2,3,4,5,6,7]"], ["[[2,100],[40,60],[50,55]]", "[2,45,52,80,100]"], ["[[6,6],[1,9],[4,7]]", "[6]"], ["[[1,3],[2,6],[4,4],[5,9]]", "[3,4,5,6]"], ["[[12,18],[2,8],[7,13]]", "[2,7,12,18]"], ["[[1,20],[5,15],[8,12],[10,10]]", "[10,11,16]"], ["[[4,10],[1,5],[11,16]]", "[4,5,10,11,16]"], ["[[1,2],[2,4],[4,8],[8,16]]", "[1,2,4,8,16]"], ["[[13,17],[5,9],[1,20],[10,12]]", "[6,11,14,19]"], ["[[1,7],[8,14],[15,21],[4,18]]", "[7,8,14,15]"], ["[[2,5],[2,8],[2,11]]", "[2,5,8,11]"], ["[[5,9],[3,9],[1,9]]", "[1,3,5,9]"], ["[[1,30],[10,20],[12,18],[14,16]]", "[13,15,17,25]"], ["[[50,70],[60,80],[65,65]]", "[49,50,65,75,81]"], ["[[1,5],[1,5],[1,5]]", "[1,3,5]"], ["[[3,6],[6,9],[9,12]]", "[6,9]"], ["[[2,4],[8,10],[4,8]]", "[2,4,6,8,10]"], ["[[1,99],[25,75],[40,60]]", "[20,30,50,70,80]"], ["[[6,12],[1,3],[14,20],[2,18]]", "[1,4,10,19,21]"], ["[[1000,2000],[1500,1500]]", "[1000,1499,1500,2000]"], ["[[1,10],[10,10]]", "[10]"], ["[[5,15],[1,5],[15,20]]", "[5,15]"], ["[[3,100],[20,30],[25,25],[90,95]]", "[3,25,50,92,100]"], ["[[1,4],[7,7],[9,13],[2,12]]", "[1,6,7,8,10,13,14]"], ["[[1,1],[1,10000000],[10000000,10000000]]", "[1,9999999,10000000]"], ["@javascript:Array.from({length:20000},(_,i)=>[i+1,10000000])", "@javascript:Array.from({length:20000},(_,i)=>i===19999?10000000:i+1)"]], "expected": [[3, 3, 1, 4], [2, -1, 4, 6], [1], [-1], [6, 6, 6, -1, -1], [2, 5], [2, 4, 3, -1, -1], [3, 3, 3, -1], [1, -1, 1, 1], [4, 1, 4], [1, 1, 1, 10], [1, 100, 100], [6, 3, 1, 3, 6], [1], [3, 3, 20], [-1, 101, 11, 101, -1], [1, 2, 3, 4], [4, 3, 2, 1], [5, 5, 5, 5, 5], [10, 4, 4, 10], [5, 5, 5, 5], [7, 8, 8], [1, 2], [1000, 1000, 1000, 1000, 1000], [2, 4, 12, -1], [2, -1, 2, -1, 2, -1, 2], [6, 6, 6], [11, 1, 11, 50], [1, 8, 1], [4, 7, 4], [11, 11, 21, 11], [1, -1, 1, -1, 1, -1, 1], [99, 21, 6, 99, 99], [1], [3, 1, 5, 5], [7, 7, 7, 7], [1, 5, 20], [5, 5, 7, 6, 6], [2, 2, 3, 5, 9], [5, 3, 5, 20], [7, 7, 7, 7], [4, 4, 7, 10], [9, 7, 5, 5], [7, 3, 7, 30], [-1, 21, 1, 21, -1], [5, 5, 5], [4, 4], [3, 3, 5, 3, 3], [99, 51, 21, 51, 99], [3, 17, 7, 7, -1], [1001, 1001, 1, 1001], [1], [5, 6], [98, 1, 98, 6, 98], [4, 11, 1, 11, 5, 5, -1], [1, 10000000, 1], [10000000, 9999999, 9999998, 9999997, 9999996, 9999995, 9999994, 9999993, 9999992, 9999991, 9999990, 9999989, 9999988, 9999987, 9999986, 9999985, 9999984, 9999983, 9999982, 9999981, 9999980, 9999979, 9999978, 9999977, 9999976, 9999975, 9999974, 9999973, 9999972, 9999971, 9999970, 9999969, 9999968, 9999967, 9999966, 9999965, 9999964, 9999963, 9999962, 9999961, 9999960, 9999959, 9999958, 9999957, 9999956, 9999955, 9999954, 9999953, 9999952, 9999951, 9999950, 9999949, 9999948, 9999947, 9999946, 9999945, 9999944, 9999943, 9999942, 9999941, 9999940, 9999939, 9999938, 9999937, 9999936, 9999935, 9999934, 9999933, 9999932, 9999931, 9999930, 9999929, 9999928, 9999927, 9999926, 9999925, 9999924, 9999923, 9999922, 9999921, 9999920, 9999919, 9999918, 9999917, 9999916, 9999915, 9999914, 9999913, 9999912, 9999911, 9999910, 9999909, 9999908, 9999907, 9999906, 9999905, 9999904, 9999903, 9999902, 9999901, 9999900, 9999899, 9999898, 9999897, 9999896, 9999895, 9999894, 9999893, 9999892, 9999891, 9999890, 9999889, 9999888, 9999887, 9999886, 9999885, 9999884, 9999883, 9999882, 9999881, 9999880, 9999879, 9999878, 9999877, 9999876, 9999875, 9999874, 9999873, 9999872, 9999871, 9999870, 9999869, 9999868, 9999867, 9999866, 9999865, 9999864, 9999863, 9999862, 9999861, 9999860, 9999859, 9999858, 9999857, 9999856, 9999855, 9999854, 9999853, 9999852, 9999851, 9999850, 9999849, 9999848, 9999847, 9999846, 9999845, 9999844, 9999843, 9999842, 9999841, 9999840, 9999839, 9999838, 9999837, 9999836, 9999835, 9999834, 9999833, 9999832, 9999831, 9999830, 9999829, 9999828, 9999827, 9999826, 9999825, 9999824, 9999823, 9999822, 9999821, 9999820, 9999819, 9999818, 9999817, 9999816, 9999815, 9999814, 9999813, 9999812, 9999811, 9999810, 9999809, 9999808, 9999807, 9999806, 9999805, 9999804, 9999803, 9999802, 9999801, 9999800, 9999799, 9999798, 9999797, 9999796, 9999795, 9999794, 9999793, 9999792, 9999791, 9999790, 9999789, 9999788, 9999787, 9999786, 9999785, 9999784, 9999783, 9999782, 9999781, 9999780, 9999779, 9999778, 9999777, 9999776, 9999775, 9999774, 9999773, 9999772, 9999771, 9999770, 9999769, 9999768, 9999767, 9999766, 9999765, 9999764, 9999763, 9999762, 9999761, 9999760, 9999759, 9999758, 9999757, 9999756, 9999755, 9999754, 9999753, 9999752, 9999751, 9999750, 9999749, 9999748, 9999747, 9999746, 9999745, 9999744, 9999743, 9999742, 9999741, 9999740, 9999739, 9999738, 9999737, 9999736, 9999735, 9999734, 9999733, 9999732, 9999731, 9999730, 9999729, 9999728, 9999727, 9999726, 9999725, 9999724, 9999723, 9999722, 9999721, 9999720, 9999719, 9999718, 9999717, 9999716, 9999715, 9999714, 9999713, 9999712, 9999711, 9999710, 9999709, 9999708, 9999707, 9999706, 9999705, 9999704, 9999703, 9999702, 9999701, 9999700, 9999699, 9999698, 9999697, 9999696, 9999695, 9999694, 9999693, 9999692, 9999691, 9999690, 9999689, 9999688, 9999687, 9999686, 9999685, 9999684, 9999683, 9999682, 9999681, 9999680, 9999679, 9999678, 9999677, 9999676, 9999675, 9999674, 9999673, 9999672, 9999671, 9999670, 9999669, 9999668, 9999667, 9999666, 9999665, 9999664, 9999663, 9999662, 9999661, 9999660, 9999659, 9999658, 9999657, 9999656, 9999655, 9999654, 9999653, 9999652, 9999651, 9999650, 9999649, 9999648, 9999647, 9999646, 9999645, 9999644, 9999643, 9999642, 9999641, 9999640, 9999639, 9999638, 9999637, 9999636, 9999635, 9999634, 9999633, 9999632, 9999631, 9999630, 9999629, 9999628, 9999627, 9999626, 9999625, 9999624, 9999623, 9999622, 9999621, 9999620, 9999619, 9999618, 9999617, 9999616, 9999615, 9999614, 9999613, 9999612, 9999611, 9999610, 9999609, 9999608, 9999607, 9999606, 9999605, 9999604, 9999603, 9999602, 9999601, 9999600, 9999599, 9999598, 9999597, 9999596, 9999595, 9999594, 9999593, 9999592, 9999591, 9999590, 9999589, 9999588, 9999587, 9999586, 9999585, 9999584, 9999583, 9999582, 9999581, 9999580, 9999579, 9999578, 9999577, 9999576, 9999575, 9999574, 9999573, 9999572, 9999571, 9999570, 9999569, 9999568, 9999567, 9999566, 9999565, 9999564, 9999563, 9999562, 9999561, 9999560, 9999559, 9999558, 9999557, 9999556, 9999555, 9999554, 9999553, 9999552, 9999551, 9999550, 9999549, 9999548, 9999547, 9999546, 9999545, 9999544, 9999543, 9999542, 9999541, 9999540, 9999539, 9999538, 9999537, 9999536, 9999535, 9999534, 9999533, 9999532, 9999531, 9999530, 9999529, 9999528, 9999527, 9999526, 9999525, 9999524, 9999523, 9999522, 9999521, 9999520, 9999519, 9999518, 9999517, 9999516, 9999515, 9999514, 9999513, 9999512, 9999511, 9999510, 9999509, 9999508, 9999507, 9999506, 9999505, 9999504, 9999503, 9999502, 9999501, 9999500, 9999499, 9999498, 9999497, 9999496, 9999495, 9999494, 9999493, 9999492, 9999491, 9999490, 9999489, 9999488, 9999487, 9999486, 9999485, 9999484, 9999483, 9999482, 9999481, 9999480, 9999479, 9999478, 9999477, 9999476, 9999475, 9999474, 9999473, 9999472, 9999471, 9999470, 9999469, 9999468, 9999467, 9999466, 9999465, 9999464, 9999463, 9999462, 9999461, 9999460, 9999459, 9999458, 9999457, 9999456, 9999455, 9999454, 9999453, 9999452, 9999451, 9999450, 9999449, 9999448, 9999447, 9999446, 9999445, 9999444, 9999443, 9999442, 9999441, 9999440, 9999439, 9999438, 9999437, 9999436, 9999435, 9999434, 9999433, 9999432, 9999431, 9999430, 9999429, 9999428, 9999427, 9999426, 9999425, 9999424, 9999423, 9999422, 9999421, 9999420, 9999419, 9999418, 9999417, 9999416, 9999415, 9999414, 9999413, 9999412, 9999411, 9999410, 9999409, 9999408, 9999407, 9999406, 9999405, 9999404, 9999403, 9999402, 9999401, 9999400, 9999399, 9999398, 9999397, 9999396, 9999395, 9999394, 9999393, 9999392, 9999391, 9999390, 9999389, 9999388, 9999387, 9999386, 9999385, 9999384, 9999383, 9999382, 9999381, 9999380, 9999379, 9999378, 9999377, 9999376, 9999375, 9999374, 9999373, 9999372, 9999371, 9999370, 9999369, 9999368, 9999367, 9999366, 9999365, 9999364, 9999363, 9999362, 9999361, 9999360, 9999359, 9999358, 9999357, 9999356, 9999355, 9999354, 9999353, 9999352, 9999351, 9999350, 9999349, 9999348, 9999347, 9999346, 9999345, 9999344, 9999343, 9999342, 9999341, 9999340, 9999339, 9999338, 9999337, 9999336, 9999335, 9999334, 9999333, 9999332, 9999331, 9999330, 9999329, 9999328, 9999327, 9999326, 9999325, 9999324, 9999323, 9999322, 9999321, 9999320, 9999319, 9999318, 9999317, 9999316, 9999315, 9999314, 9999313, 9999312, 9999311, 9999310, 9999309, 9999308, 9999307, 9999306, 9999305, 9999304, 9999303, 9999302, 9999301, 9999300, 9999299, 9999298, 9999297, 9999296, 9999295, 9999294, 9999293, 9999292, 9999291, 9999290, 9999289, 9999288, 9999287, 9999286, 9999285, 9999284, 9999283, 9999282, 9999281, 9999280, 9999279, 9999278, 9999277, 9999276, 9999275, 9999274, 9999273, 9999272, 9999271, 9999270, 9999269, 9999268, 9999267, 9999266, 9999265, 9999264, 9999263, 9999262, 9999261, 9999260, 9999259, 9999258, 9999257, 9999256, 9999255, 9999254, 9999253, 9999252, 9999251, 9999250, 9999249, 9999248, 9999247, 9999246, 9999245, 9999244, 9999243, 9999242, 9999241, 9999240, 9999239, 9999238, 9999237, 9999236, 9999235, 9999234, 9999233, 9999232, 9999231, 9999230, 9999229, 9999228, 9999227, 9999226, 9999225, 9999224, 9999223, 9999222, 9999221, 9999220, 9999219, 9999218, 9999217, 9999216, 9999215, 9999214, 9999213, 9999212, 9999211, 9999210, 9999209, 9999208, 9999207, 9999206, 9999205, 9999204, 9999203, 9999202, 9999201, 9999200, 9999199, 9999198, 9999197, 9999196, 9999195, 9999194, 9999193, 9999192, 9999191, 9999190, 9999189, 9999188, 9999187, 9999186, 9999185, 9999184, 9999183, 9999182, 9999181, 9999180, 9999179, 9999178, 9999177, 9999176, 9999175, 9999174, 9999173, 9999172, 9999171, 9999170, 9999169, 9999168, 9999167, 9999166, 9999165, 9999164, 9999163, 9999162, 9999161, 9999160, 9999159, 9999158, 9999157, 9999156, 9999155, 9999154, 9999153, 9999152, 9999151, 9999150, 9999149, 9999148, 9999147, 9999146, 9999145, 9999144, 9999143, 9999142, 9999141, 9999140, 9999139, 9999138, 9999137, 9999136, 9999135, 9999134, 9999133, 9999132, 9999131, 9999130, 9999129, 9999128, 9999127, 9999126, 9999125, 9999124, 9999123, 9999122, 9999121, 9999120, 9999119, 9999118, 9999117, 9999116, 9999115, 9999114, 9999113, 9999112, 9999111, 9999110, 9999109, 9999108, 9999107, 9999106, 9999105, 9999104, 9999103, 9999102, 9999101, 9999100, 9999099, 9999098, 9999097, 9999096, 9999095, 9999094, 9999093, 9999092, 9999091, 9999090, 9999089, 9999088, 9999087, 9999086, 9999085, 9999084, 9999083, 9999082, 9999081, 9999080, 9999079, 9999078, 9999077, 9999076, 9999075, 9999074, 9999073, 9999072, 9999071, 9999070, 9999069, 9999068, 9999067, 9999066, 9999065, 9999064, 9999063, 9999062, 9999061, 9999060, 9999059, 9999058, 9999057, 9999056, 9999055, 9999054, 9999053, 9999052, 9999051, 9999050, 9999049, 9999048, 9999047, 9999046, 9999045, 9999044, 9999043, 9999042, 9999041, 9999040, 9999039, 9999038, 9999037, 9999036, 9999035, 9999034, 9999033, 9999032, 9999031, 9999030, 9999029, 9999028, 9999027, 9999026, 9999025, 9999024, 9999023, 9999022, 9999021, 9999020, 9999019, 9999018, 9999017, 9999016, 9999015, 9999014, 9999013, 9999012, 9999011, 9999010, 9999009, 9999008, 9999007, 9999006, 9999005, 9999004, 9999003, 9999002, 9999001, 9999000, 9998999, 9998998, 9998997, 9998996, 9998995, 9998994, 9998993, 9998992, 9998991, 9998990, 9998989, 9998988, 9998987, 9998986, 9998985, 9998984, 9998983, 9998982, 9998981, 9998980, 9998979, 9998978, 9998977, 9998976, 9998975, 9998974, 9998973, 9998972, 9998971, 9998970, 9998969, 9998968, 9998967, 9998966, 9998965, 9998964, 9998963, 9998962, 9998961, 9998960, 9998959, 9998958, 9998957, 9998956, 9998955, 9998954, 9998953, 9998952, 9998951, 9998950, 9998949, 9998948, 9998947, 9998946, 9998945, 9998944, 9998943, 9998942, 9998941, 9998940, 9998939, 9998938, 9998937, 9998936, 9998935, 9998934, 9998933, 9998932, 9998931, 9998930, 9998929, 9998928, 9998927, 9998926, 9998925, 9998924, 9998923, 9998922, 9998921, 9998920, 9998919, 9998918, 9998917, 9998916, 9998915, 9998914, 9998913, 9998912, 9998911, 9998910, 9998909, 9998908, 9998907, 9998906, 9998905, 9998904, 9998903, 9998902, 9998901, 9998900, 9998899, 9998898, 9998897, 9998896, 9998895, 9998894, 9998893, 9998892, 9998891, 9998890, 9998889, 9998888, 9998887, 9998886, 9998885, 9998884, 9998883, 9998882, 9998881, 9998880, 9998879, 9998878, 9998877, 9998876, 9998875, 9998874, 9998873, 9998872, 9998871, 9998870, 9998869, 9998868, 9998867, 9998866, 9998865, 9998864, 9998863, 9998862, 9998861, 9998860, 9998859, 9998858, 9998857, 9998856, 9998855, 9998854, 9998853, 9998852, 9998851, 9998850, 9998849, 9998848, 9998847, 9998846, 9998845, 9998844, 9998843, 9998842, 9998841, 9998840, 9998839, 9998838, 9998837, 9998836, 9998835, 9998834, 9998833, 9998832, 9998831, 9998830, 9998829, 9998828, 9998827, 9998826, 9998825, 9998824, 9998823, 9998822, 9998821, 9998820, 9998819, 9998818, 9998817, 9998816, 9998815, 9998814, 9998813, 9998812, 9998811, 9998810, 9998809, 9998808, 9998807, 9998806, 9998805, 9998804, 9998803, 9998802, 9998801, 9998800, 9998799, 9998798, 9998797, 9998796, 9998795, 9998794, 9998793, 9998792, 9998791, 9998790, 9998789, 9998788, 9998787, 9998786, 9998785, 9998784, 9998783, 9998782, 9998781, 9998780, 9998779, 9998778, 9998777, 9998776, 9998775, 9998774, 9998773, 9998772, 9998771, 9998770, 9998769, 9998768, 9998767, 9998766, 9998765, 9998764, 9998763, 9998762, 9998761, 9998760, 9998759, 9998758, 9998757, 9998756, 9998755, 9998754, 9998753, 9998752, 9998751, 9998750, 9998749, 9998748, 9998747, 9998746, 9998745, 9998744, 9998743, 9998742, 9998741, 9998740, 9998739, 9998738, 9998737, 9998736, 9998735, 9998734, 9998733, 9998732, 9998731, 9998730, 9998729, 9998728, 9998727, 9998726, 9998725, 9998724, 9998723, 9998722, 9998721, 9998720, 9998719, 9998718, 9998717, 9998716, 9998715, 9998714, 9998713, 9998712, 9998711, 9998710, 9998709, 9998708, 9998707, 9998706, 9998705, 9998704, 9998703, 9998702, 9998701, 9998700, 9998699, 9998698, 9998697, 9998696, 9998695, 9998694, 9998693, 9998692, 9998691, 9998690, 9998689, 9998688, 9998687, 9998686, 9998685, 9998684, 9998683, 9998682, 9998681, 9998680, 9998679, 9998678, 9998677, 9998676, 9998675, 9998674, 9998673, 9998672, 9998671, 9998670, 9998669, 9998668, 9998667, 9998666, 9998665, 9998664, 9998663, 9998662, 9998661, 9998660, 9998659, 9998658, 9998657, 9998656, 9998655, 9998654, 9998653, 9998652, 9998651, 9998650, 9998649, 9998648, 9998647, 9998646, 9998645, 9998644, 9998643, 9998642, 9998641, 9998640, 9998639, 9998638, 9998637, 9998636, 9998635, 9998634, 9998633, 9998632, 9998631, 9998630, 9998629, 9998628, 9998627, 9998626, 9998625, 9998624, 9998623, 9998622, 9998621, 9998620, 9998619, 9998618, 9998617, 9998616, 9998615, 9998614, 9998613, 9998612, 9998611, 9998610, 9998609, 9998608, 9998607, 9998606, 9998605, 9998604, 9998603, 9998602, 9998601, 9998600, 9998599, 9998598, 9998597, 9998596, 9998595, 9998594, 9998593, 9998592, 9998591, 9998590, 9998589, 9998588, 9998587, 9998586, 9998585, 9998584, 9998583, 9998582, 9998581, 9998580, 9998579, 9998578, 9998577, 9998576, 9998575, 9998574, 9998573, 9998572, 9998571, 9998570, 9998569, 9998568, 9998567, 9998566, 9998565, 9998564, 9998563, 9998562, 9998561, 9998560, 9998559, 9998558, 9998557, 9998556, 9998555, 9998554, 9998553, 9998552, 9998551, 9998550, 9998549, 9998548, 9998547, 9998546, 9998545, 9998544, 9998543, 9998542, 9998541, 9998540, 9998539, 9998538, 9998537, 9998536, 9998535, 9998534, 9998533, 9998532, 9998531, 9998530, 9998529, 9998528, 9998527, 9998526, 9998525, 9998524, 9998523, 9998522, 9998521, 9998520, 9998519, 9998518, 9998517, 9998516, 9998515, 9998514, 9998513, 9998512, 9998511, 9998510, 9998509, 9998508, 9998507, 9998506, 9998505, 9998504, 9998503, 9998502, 9998501, 9998500, 9998499, 9998498, 9998497, 9998496, 9998495, 9998494, 9998493, 9998492, 9998491, 9998490, 9998489, 9998488, 9998487, 9998486, 9998485, 9998484, 9998483, 9998482, 9998481, 9998480, 9998479, 9998478, 9998477, 9998476, 9998475, 9998474, 9998473, 9998472, 9998471, 9998470, 9998469, 9998468, 9998467, 9998466, 9998465, 9998464, 9998463, 9998462, 9998461, 9998460, 9998459, 9998458, 9998457, 9998456, 9998455, 9998454, 9998453, 9998452, 9998451, 9998450, 9998449, 9998448, 9998447, 9998446, 9998445, 9998444, 9998443, 9998442, 9998441, 9998440, 9998439, 9998438, 9998437, 9998436, 9998435, 9998434, 9998433, 9998432, 9998431, 9998430, 9998429, 9998428, 9998427, 9998426, 9998425, 9998424, 9998423, 9998422, 9998421, 9998420, 9998419, 9998418, 9998417, 9998416, 9998415, 9998414, 9998413, 9998412, 9998411, 9998410, 9998409, 9998408, 9998407, 9998406, 9998405, 9998404, 9998403, 9998402, 9998401, 9998400, 9998399, 9998398, 9998397, 9998396, 9998395, 9998394, 9998393, 9998392, 9998391, 9998390, 9998389, 9998388, 9998387, 9998386, 9998385, 9998384, 9998383, 9998382, 9998381, 9998380, 9998379, 9998378, 9998377, 9998376, 9998375, 9998374, 9998373, 9998372, 9998371, 9998370, 9998369, 9998368, 9998367, 9998366, 9998365, 9998364, 9998363, 9998362, 9998361, 9998360, 9998359, 9998358, 9998357, 9998356, 9998355, 9998354, 9998353, 9998352, 9998351, 9998350, 9998349, 9998348, 9998347, 9998346, 9998345, 9998344, 9998343, 9998342, 9998341, 9998340, 9998339, 9998338, 9998337, 9998336, 9998335, 9998334, 9998333, 9998332, 9998331, 9998330, 9998329, 9998328, 9998327, 9998326, 9998325, 9998324, 9998323, 9998322, 9998321, 9998320, 9998319, 9998318, 9998317, 9998316, 9998315, 9998314, 9998313, 9998312, 9998311, 9998310, 9998309, 9998308, 9998307, 9998306, 9998305, 9998304, 9998303, 9998302, 9998301, 9998300, 9998299, 9998298, 9998297, 9998296, 9998295, 9998294, 9998293, 9998292, 9998291, 9998290, 9998289, 9998288, 9998287, 9998286, 9998285, 9998284, 9998283, 9998282, 9998281, 9998280, 9998279, 9998278, 9998277, 9998276, 9998275, 9998274, 9998273, 9998272, 9998271, 9998270, 9998269, 9998268, 9998267, 9998266, 9998265, 9998264, 9998263, 9998262, 9998261, 9998260, 9998259, 9998258, 9998257, 9998256, 9998255, 9998254, 9998253, 9998252, 9998251, 9998250, 9998249, 9998248, 9998247, 9998246, 9998245, 9998244, 9998243, 9998242, 9998241, 9998240, 9998239, 9998238, 9998237, 9998236, 9998235, 9998234, 9998233, 9998232, 9998231, 9998230, 9998229, 9998228, 9998227, 9998226, 9998225, 9998224, 9998223, 9998222, 9998221, 9998220, 9998219, 9998218, 9998217, 9998216, 9998215, 9998214, 9998213, 9998212, 9998211, 9998210, 9998209, 9998208, 9998207, 9998206, 9998205, 9998204, 9998203, 9998202, 9998201, 9998200, 9998199, 9998198, 9998197, 9998196, 9998195, 9998194, 9998193, 9998192, 9998191, 9998190, 9998189, 9998188, 9998187, 9998186, 9998185, 9998184, 9998183, 9998182, 9998181, 9998180, 9998179, 9998178, 9998177, 9998176, 9998175, 9998174, 9998173, 9998172, 9998171, 9998170, 9998169, 9998168, 9998167, 9998166, 9998165, 9998164, 9998163, 9998162, 9998161, 9998160, 9998159, 9998158, 9998157, 9998156, 9998155, 9998154, 9998153, 9998152, 9998151, 9998150, 9998149, 9998148, 9998147, 9998146, 9998145, 9998144, 9998143, 9998142, 9998141, 9998140, 9998139, 9998138, 9998137, 9998136, 9998135, 9998134, 9998133, 9998132, 9998131, 9998130, 9998129, 9998128, 9998127, 9998126, 9998125, 9998124, 9998123, 9998122, 9998121, 9998120, 9998119, 9998118, 9998117, 9998116, 9998115, 9998114, 9998113, 9998112, 9998111, 9998110, 9998109, 9998108, 9998107, 9998106, 9998105, 9998104, 9998103, 9998102, 9998101, 9998100, 9998099, 9998098, 9998097, 9998096, 9998095, 9998094, 9998093, 9998092, 9998091, 9998090, 9998089, 9998088, 9998087, 9998086, 9998085, 9998084, 9998083, 9998082, 9998081, 9998080, 9998079, 9998078, 9998077, 9998076, 9998075, 9998074, 9998073, 9998072, 9998071, 9998070, 9998069, 9998068, 9998067, 9998066, 9998065, 9998064, 9998063, 9998062, 9998061, 9998060, 9998059, 9998058, 9998057, 9998056, 9998055, 9998054, 9998053, 9998052, 9998051, 9998050, 9998049, 9998048, 9998047, 9998046, 9998045, 9998044, 9998043, 9998042, 9998041, 9998040, 9998039, 9998038, 9998037, 9998036, 9998035, 9998034, 9998033, 9998032, 9998031, 9998030, 9998029, 9998028, 9998027, 9998026, 9998025, 9998024, 9998023, 9998022, 9998021, 9998020, 9998019, 9998018, 9998017, 9998016, 9998015, 9998014, 9998013, 9998012, 9998011, 9998010, 9998009, 9998008, 9998007, 9998006, 9998005, 9998004, 9998003, 9998002, 9998001, 9998000, 9997999, 9997998, 9997997, 9997996, 9997995, 9997994, 9997993, 9997992, 9997991, 9997990, 9997989, 9997988, 9997987, 9997986, 9997985, 9997984, 9997983, 9997982, 9997981, 9997980, 9997979, 9997978, 9997977, 9997976, 9997975, 9997974, 9997973, 9997972, 9997971, 9997970, 9997969, 9997968, 9997967, 9997966, 9997965, 9997964, 9997963, 9997962, 9997961, 9997960, 9997959, 9997958, 9997957, 9997956, 9997955, 9997954, 9997953, 9997952, 9997951, 9997950, 9997949, 9997948, 9997947, 9997946, 9997945, 9997944, 9997943, 9997942, 9997941, 9997940, 9997939, 9997938, 9997937, 9997936, 9997935, 9997934, 9997933, 9997932, 9997931, 9997930, 9997929, 9997928, 9997927, 9997926, 9997925, 9997924, 9997923, 9997922, 9997921, 9997920, 9997919, 9997918, 9997917, 9997916, 9997915, 9997914, 9997913, 9997912, 9997911, 9997910, 9997909, 9997908, 9997907, 9997906, 9997905, 9997904, 9997903, 9997902, 9997901, 9997900, 9997899, 9997898, 9997897, 9997896, 9997895, 9997894, 9997893, 9997892, 9997891, 9997890, 9997889, 9997888, 9997887, 9997886, 9997885, 9997884, 9997883, 9997882, 9997881, 9997880, 9997879, 9997878, 9997877, 9997876, 9997875, 9997874, 9997873, 9997872, 9997871, 9997870, 9997869, 9997868, 9997867, 9997866, 9997865, 9997864, 9997863, 9997862, 9997861, 9997860, 9997859, 9997858, 9997857, 9997856, 9997855, 9997854, 9997853, 9997852, 9997851, 9997850, 9997849, 9997848, 9997847, 9997846, 9997845, 9997844, 9997843, 9997842, 9997841, 9997840, 9997839, 9997838, 9997837, 9997836, 9997835, 9997834, 9997833, 9997832, 9997831, 9997830, 9997829, 9997828, 9997827, 9997826, 9997825, 9997824, 9997823, 9997822, 9997821, 9997820, 9997819, 9997818, 9997817, 9997816, 9997815, 9997814, 9997813, 9997812, 9997811, 9997810, 9997809, 9997808, 9997807, 9997806, 9997805, 9997804, 9997803, 9997802, 9997801, 9997800, 9997799, 9997798, 9997797, 9997796, 9997795, 9997794, 9997793, 9997792, 9997791, 9997790, 9997789, 9997788, 9997787, 9997786, 9997785, 9997784, 9997783, 9997782, 9997781, 9997780, 9997779, 9997778, 9997777, 9997776, 9997775, 9997774, 9997773, 9997772, 9997771, 9997770, 9997769, 9997768, 9997767, 9997766, 9997765, 9997764, 9997763, 9997762, 9997761, 9997760, 9997759, 9997758, 9997757, 9997756, 9997755, 9997754, 9997753, 9997752, 9997751, 9997750, 9997749, 9997748, 9997747, 9997746, 9997745, 9997744, 9997743, 9997742, 9997741, 9997740, 9997739, 9997738, 9997737, 9997736, 9997735, 9997734, 9997733, 9997732, 9997731, 9997730, 9997729, 9997728, 9997727, 9997726, 9997725, 9997724, 9997723, 9997722, 9997721, 9997720, 9997719, 9997718, 9997717, 9997716, 9997715, 9997714, 9997713, 9997712, 9997711, 9997710, 9997709, 9997708, 9997707, 9997706, 9997705, 9997704, 9997703, 9997702, 9997701, 9997700, 9997699, 9997698, 9997697, 9997696, 9997695, 9997694, 9997693, 9997692, 9997691, 9997690, 9997689, 9997688, 9997687, 9997686, 9997685, 9997684, 9997683, 9997682, 9997681, 9997680, 9997679, 9997678, 9997677, 9997676, 9997675, 9997674, 9997673, 9997672, 9997671, 9997670, 9997669, 9997668, 9997667, 9997666, 9997665, 9997664, 9997663, 9997662, 9997661, 9997660, 9997659, 9997658, 9997657, 9997656, 9997655, 9997654, 9997653, 9997652, 9997651, 9997650, 9997649, 9997648, 9997647, 9997646, 9997645, 9997644, 9997643, 9997642, 9997641, 9997640, 9997639, 9997638, 9997637, 9997636, 9997635, 9997634, 9997633, 9997632, 9997631, 9997630, 9997629, 9997628, 9997627, 9997626, 9997625, 9997624, 9997623, 9997622, 9997621, 9997620, 9997619, 9997618, 9997617, 9997616, 9997615, 9997614, 9997613, 9997612, 9997611, 9997610, 9997609, 9997608, 9997607, 9997606, 9997605, 9997604, 9997603, 9997602, 9997601, 9997600, 9997599, 9997598, 9997597, 9997596, 9997595, 9997594, 9997593, 9997592, 9997591, 9997590, 9997589, 9997588, 9997587, 9997586, 9997585, 9997584, 9997583, 9997582, 9997581, 9997580, 9997579, 9997578, 9997577, 9997576, 9997575, 9997574, 9997573, 9997572, 9997571, 9997570, 9997569, 9997568, 9997567, 9997566, 9997565, 9997564, 9997563, 9997562, 9997561, 9997560, 9997559, 9997558, 9997557, 9997556, 9997555, 9997554, 9997553, 9997552, 9997551, 9997550, 9997549, 9997548, 9997547, 9997546, 9997545, 9997544, 9997543, 9997542, 9997541, 9997540, 9997539, 9997538, 9997537, 9997536, 9997535, 9997534, 9997533, 9997532, 9997531, 9997530, 9997529, 9997528, 9997527, 9997526, 9997525, 9997524, 9997523, 9997522, 9997521, 9997520, 9997519, 9997518, 9997517, 9997516, 9997515, 9997514, 9997513, 9997512, 9997511, 9997510, 9997509, 9997508, 9997507, 9997506, 9997505, 9997504, 9997503, 9997502, 9997501, 9997500, 9997499, 9997498, 9997497, 9997496, 9997495, 9997494, 9997493, 9997492, 9997491, 9997490, 9997489, 9997488, 9997487, 9997486, 9997485, 9997484, 9997483, 9997482, 9997481, 9997480, 9997479, 9997478, 9997477, 9997476, 9997475, 9997474, 9997473, 9997472, 9997471, 9997470, 9997469, 9997468, 9997467, 9997466, 9997465, 9997464, 9997463, 9997462, 9997461, 9997460, 9997459, 9997458, 9997457, 9997456, 9997455, 9997454, 9997453, 9997452, 9997451, 9997450, 9997449, 9997448, 9997447, 9997446, 9997445, 9997444, 9997443, 9997442, 9997441, 9997440, 9997439, 9997438, 9997437, 9997436, 9997435, 9997434, 9997433, 9997432, 9997431, 9997430, 9997429, 9997428, 9997427, 9997426, 9997425, 9997424, 9997423, 9997422, 9997421, 9997420, 9997419, 9997418, 9997417, 9997416, 9997415, 9997414, 9997413, 9997412, 9997411, 9997410, 9997409, 9997408, 9997407, 9997406, 9997405, 9997404, 9997403, 9997402, 9997401, 9997400, 9997399, 9997398, 9997397, 9997396, 9997395, 9997394, 9997393, 9997392, 9997391, 9997390, 9997389, 9997388, 9997387, 9997386, 9997385, 9997384, 9997383, 9997382, 9997381, 9997380, 9997379, 9997378, 9997377, 9997376, 9997375, 9997374, 9997373, 9997372, 9997371, 9997370, 9997369, 9997368, 9997367, 9997366, 9997365, 9997364, 9997363, 9997362, 9997361, 9997360, 9997359, 9997358, 9997357, 9997356, 9997355, 9997354, 9997353, 9997352, 9997351, 9997350, 9997349, 9997348, 9997347, 9997346, 9997345, 9997344, 9997343, 9997342, 9997341, 9997340, 9997339, 9997338, 9997337, 9997336, 9997335, 9997334, 9997333, 9997332, 9997331, 9997330, 9997329, 9997328, 9997327, 9997326, 9997325, 9997324, 9997323, 9997322, 9997321, 9997320, 9997319, 9997318, 9997317, 9997316, 9997315, 9997314, 9997313, 9997312, 9997311, 9997310, 9997309, 9997308, 9997307, 9997306, 9997305, 9997304, 9997303, 9997302, 9997301, 9997300, 9997299, 9997298, 9997297, 9997296, 9997295, 9997294, 9997293, 9997292, 9997291, 9997290, 9997289, 9997288, 9997287, 9997286, 9997285, 9997284, 9997283, 9997282, 9997281, 9997280, 9997279, 9997278, 9997277, 9997276, 9997275, 9997274, 9997273, 9997272, 9997271, 9997270, 9997269, 9997268, 9997267, 9997266, 9997265, 9997264, 9997263, 9997262, 9997261, 9997260, 9997259, 9997258, 9997257, 9997256, 9997255, 9997254, 9997253, 9997252, 9997251, 9997250, 9997249, 9997248, 9997247, 9997246, 9997245, 9997244, 9997243, 9997242, 9997241, 9997240, 9997239, 9997238, 9997237, 9997236, 9997235, 9997234, 9997233, 9997232, 9997231, 9997230, 9997229, 9997228, 9997227, 9997226, 9997225, 9997224, 9997223, 9997222, 9997221, 9997220, 9997219, 9997218, 9997217, 9997216, 9997215, 9997214, 9997213, 9997212, 9997211, 9997210, 9997209, 9997208, 9997207, 9997206, 9997205, 9997204, 9997203, 9997202, 9997201, 9997200, 9997199, 9997198, 9997197, 9997196, 9997195, 9997194, 9997193, 9997192, 9997191, 9997190, 9997189, 9997188, 9997187, 9997186, 9997185, 9997184, 9997183, 9997182, 9997181, 9997180, 9997179, 9997178, 9997177, 9997176, 9997175, 9997174, 9997173, 9997172, 9997171, 9997170, 9997169, 9997168, 9997167, 9997166, 9997165, 9997164, 9997163, 9997162, 9997161, 9997160, 9997159, 9997158, 9997157, 9997156, 9997155, 9997154, 9997153, 9997152, 9997151, 9997150, 9997149, 9997148, 9997147, 9997146, 9997145, 9997144, 9997143, 9997142, 9997141, 9997140, 9997139, 9997138, 9997137, 9997136, 9997135, 9997134, 9997133, 9997132, 9997131, 9997130, 9997129, 9997128, 9997127, 9997126, 9997125, 9997124, 9997123, 9997122, 9997121, 9997120, 9997119, 9997118, 9997117, 9997116, 9997115, 9997114, 9997113, 9997112, 9997111, 9997110, 9997109, 9997108, 9997107, 9997106, 9997105, 9997104, 9997103, 9997102, 9997101, 9997100, 9997099, 9997098, 9997097, 9997096, 9997095, 9997094, 9997093, 9997092, 9997091, 9997090, 9997089, 9997088, 9997087, 9997086, 9997085, 9997084, 9997083, 9997082, 9997081, 9997080, 9997079, 9997078, 9997077, 9997076, 9997075, 9997074, 9997073, 9997072, 9997071, 9997070, 9997069, 9997068, 9997067, 9997066, 9997065, 9997064, 9997063, 9997062, 9997061, 9997060, 9997059, 9997058, 9997057, 9997056, 9997055, 9997054, 9997053, 9997052, 9997051, 9997050, 9997049, 9997048, 9997047, 9997046, 9997045, 9997044, 9997043, 9997042, 9997041, 9997040, 9997039, 9997038, 9997037, 9997036, 9997035, 9997034, 9997033, 9997032, 9997031, 9997030, 9997029, 9997028, 9997027, 9997026, 9997025, 9997024, 9997023, 9997022, 9997021, 9997020, 9997019, 9997018, 9997017, 9997016, 9997015, 9997014, 9997013, 9997012, 9997011, 9997010, 9997009, 9997008, 9997007, 9997006, 9997005, 9997004, 9997003, 9997002, 9997001, 9997000, 9996999, 9996998, 9996997, 9996996, 9996995, 9996994, 9996993, 9996992, 9996991, 9996990, 9996989, 9996988, 9996987, 9996986, 9996985, 9996984, 9996983, 9996982, 9996981, 9996980, 9996979, 9996978, 9996977, 9996976, 9996975, 9996974, 9996973, 9996972, 9996971, 9996970, 9996969, 9996968, 9996967, 9996966, 9996965, 9996964, 9996963, 9996962, 9996961, 9996960, 9996959, 9996958, 9996957, 9996956, 9996955, 9996954, 9996953, 9996952, 9996951, 9996950, 9996949, 9996948, 9996947, 9996946, 9996945, 9996944, 9996943, 9996942, 9996941, 9996940, 9996939, 9996938, 9996937, 9996936, 9996935, 9996934, 9996933, 9996932, 9996931, 9996930, 9996929, 9996928, 9996927, 9996926, 9996925, 9996924, 9996923, 9996922, 9996921, 9996920, 9996919, 9996918, 9996917, 9996916, 9996915, 9996914, 9996913, 9996912, 9996911, 9996910, 9996909, 9996908, 9996907, 9996906, 9996905, 9996904, 9996903, 9996902, 9996901, 9996900, 9996899, 9996898, 9996897, 9996896, 9996895, 9996894, 9996893, 9996892, 9996891, 9996890, 9996889, 9996888, 9996887, 9996886, 9996885, 9996884, 9996883, 9996882, 9996881, 9996880, 9996879, 9996878, 9996877, 9996876, 9996875, 9996874, 9996873, 9996872, 9996871, 9996870, 9996869, 9996868, 9996867, 9996866, 9996865, 9996864, 9996863, 9996862, 9996861, 9996860, 9996859, 9996858, 9996857, 9996856, 9996855, 9996854, 9996853, 9996852, 9996851, 9996850, 9996849, 9996848, 9996847, 9996846, 9996845, 9996844, 9996843, 9996842, 9996841, 9996840, 9996839, 9996838, 9996837, 9996836, 9996835, 9996834, 9996833, 9996832, 9996831, 9996830, 9996829, 9996828, 9996827, 9996826, 9996825, 9996824, 9996823, 9996822, 9996821, 9996820, 9996819, 9996818, 9996817, 9996816, 9996815, 9996814, 9996813, 9996812, 9996811, 9996810, 9996809, 9996808, 9996807, 9996806, 9996805, 9996804, 9996803, 9996802, 9996801, 9996800, 9996799, 9996798, 9996797, 9996796, 9996795, 9996794, 9996793, 9996792, 9996791, 9996790, 9996789, 9996788, 9996787, 9996786, 9996785, 9996784, 9996783, 9996782, 9996781, 9996780, 9996779, 9996778, 9996777, 9996776, 9996775, 9996774, 9996773, 9996772, 9996771, 9996770, 9996769, 9996768, 9996767, 9996766, 9996765, 9996764, 9996763, 9996762, 9996761, 9996760, 9996759, 9996758, 9996757, 9996756, 9996755, 9996754, 9996753, 9996752, 9996751, 9996750, 9996749, 9996748, 9996747, 9996746, 9996745, 9996744, 9996743, 9996742, 9996741, 9996740, 9996739, 9996738, 9996737, 9996736, 9996735, 9996734, 9996733, 9996732, 9996731, 9996730, 9996729, 9996728, 9996727, 9996726, 9996725, 9996724, 9996723, 9996722, 9996721, 9996720, 9996719, 9996718, 9996717, 9996716, 9996715, 9996714, 9996713, 9996712, 9996711, 9996710, 9996709, 9996708, 9996707, 9996706, 9996705, 9996704, 9996703, 9996702, 9996701, 9996700, 9996699, 9996698, 9996697, 9996696, 9996695, 9996694, 9996693, 9996692, 9996691, 9996690, 9996689, 9996688, 9996687, 9996686, 9996685, 9996684, 9996683, 9996682, 9996681, 9996680, 9996679, 9996678, 9996677, 9996676, 9996675, 9996674, 9996673, 9996672, 9996671, 9996670, 9996669, 9996668, 9996667, 9996666, 9996665, 9996664, 9996663, 9996662, 9996661, 9996660, 9996659, 9996658, 9996657, 9996656, 9996655, 9996654, 9996653, 9996652, 9996651, 9996650, 9996649, 9996648, 9996647, 9996646, 9996645, 9996644, 9996643, 9996642, 9996641, 9996640, 9996639, 9996638, 9996637, 9996636, 9996635, 9996634, 9996633, 9996632, 9996631, 9996630, 9996629, 9996628, 9996627, 9996626, 9996625, 9996624, 9996623, 9996622, 9996621, 9996620, 9996619, 9996618, 9996617, 9996616, 9996615, 9996614, 9996613, 9996612, 9996611, 9996610, 9996609, 9996608, 9996607, 9996606, 9996605, 9996604, 9996603, 9996602, 9996601, 9996600, 9996599, 9996598, 9996597, 9996596, 9996595, 9996594, 9996593, 9996592, 9996591, 9996590, 9996589, 9996588, 9996587, 9996586, 9996585, 9996584, 9996583, 9996582, 9996581, 9996580, 9996579, 9996578, 9996577, 9996576, 9996575, 9996574, 9996573, 9996572, 9996571, 9996570, 9996569, 9996568, 9996567, 9996566, 9996565, 9996564, 9996563, 9996562, 9996561, 9996560, 9996559, 9996558, 9996557, 9996556, 9996555, 9996554, 9996553, 9996552, 9996551, 9996550, 9996549, 9996548, 9996547, 9996546, 9996545, 9996544, 9996543, 9996542, 9996541, 9996540, 9996539, 9996538, 9996537, 9996536, 9996535, 9996534, 9996533, 9996532, 9996531, 9996530, 9996529, 9996528, 9996527, 9996526, 9996525, 9996524, 9996523, 9996522, 9996521, 9996520, 9996519, 9996518, 9996517, 9996516, 9996515, 9996514, 9996513, 9996512, 9996511, 9996510, 9996509, 9996508, 9996507, 9996506, 9996505, 9996504, 9996503, 9996502, 9996501, 9996500, 9996499, 9996498, 9996497, 9996496, 9996495, 9996494, 9996493, 9996492, 9996491, 9996490, 9996489, 9996488, 9996487, 9996486, 9996485, 9996484, 9996483, 9996482, 9996481, 9996480, 9996479, 9996478, 9996477, 9996476, 9996475, 9996474, 9996473, 9996472, 9996471, 9996470, 9996469, 9996468, 9996467, 9996466, 9996465, 9996464, 9996463, 9996462, 9996461, 9996460, 9996459, 9996458, 9996457, 9996456, 9996455, 9996454, 9996453, 9996452, 9996451, 9996450, 9996449, 9996448, 9996447, 9996446, 9996445, 9996444, 9996443, 9996442, 9996441, 9996440, 9996439, 9996438, 9996437, 9996436, 9996435, 9996434, 9996433, 9996432, 9996431, 9996430, 9996429, 9996428, 9996427, 9996426, 9996425, 9996424, 9996423, 9996422, 9996421, 9996420, 9996419, 9996418, 9996417, 9996416, 9996415, 9996414, 9996413, 9996412, 9996411, 9996410, 9996409, 9996408, 9996407, 9996406, 9996405, 9996404, 9996403, 9996402, 9996401, 9996400, 9996399, 9996398, 9996397, 9996396, 9996395, 9996394, 9996393, 9996392, 9996391, 9996390, 9996389, 9996388, 9996387, 9996386, 9996385, 9996384, 9996383, 9996382, 9996381, 9996380, 9996379, 9996378, 9996377, 9996376, 9996375, 9996374, 9996373, 9996372, 9996371, 9996370, 9996369, 9996368, 9996367, 9996366, 9996365, 9996364, 9996363, 9996362, 9996361, 9996360, 9996359, 9996358, 9996357, 9996356, 9996355, 9996354, 9996353, 9996352, 9996351, 9996350, 9996349, 9996348, 9996347, 9996346, 9996345, 9996344, 9996343, 9996342, 9996341, 9996340, 9996339, 9996338, 9996337, 9996336, 9996335, 9996334, 9996333, 9996332, 9996331, 9996330, 9996329, 9996328, 9996327, 9996326, 9996325, 9996324, 9996323, 9996322, 9996321, 9996320, 9996319, 9996318, 9996317, 9996316, 9996315, 9996314, 9996313, 9996312, 9996311, 9996310, 9996309, 9996308, 9996307, 9996306, 9996305, 9996304, 9996303, 9996302, 9996301, 9996300, 9996299, 9996298, 9996297, 9996296, 9996295, 9996294, 9996293, 9996292, 9996291, 9996290, 9996289, 9996288, 9996287, 9996286, 9996285, 9996284, 9996283, 9996282, 9996281, 9996280, 9996279, 9996278, 9996277, 9996276, 9996275, 9996274, 9996273, 9996272, 9996271, 9996270, 9996269, 9996268, 9996267, 9996266, 9996265, 9996264, 9996263, 9996262, 9996261, 9996260, 9996259, 9996258, 9996257, 9996256, 9996255, 9996254, 9996253, 9996252, 9996251, 9996250, 9996249, 9996248, 9996247, 9996246, 9996245, 9996244, 9996243, 9996242, 9996241, 9996240, 9996239, 9996238, 9996237, 9996236, 9996235, 9996234, 9996233, 9996232, 9996231, 9996230, 9996229, 9996228, 9996227, 9996226, 9996225, 9996224, 9996223, 9996222, 9996221, 9996220, 9996219, 9996218, 9996217, 9996216, 9996215, 9996214, 9996213, 9996212, 9996211, 9996210, 9996209, 9996208, 9996207, 9996206, 9996205, 9996204, 9996203, 9996202, 9996201, 9996200, 9996199, 9996198, 9996197, 9996196, 9996195, 9996194, 9996193, 9996192, 9996191, 9996190, 9996189, 9996188, 9996187, 9996186, 9996185, 9996184, 9996183, 9996182, 9996181, 9996180, 9996179, 9996178, 9996177, 9996176, 9996175, 9996174, 9996173, 9996172, 9996171, 9996170, 9996169, 9996168, 9996167, 9996166, 9996165, 9996164, 9996163, 9996162, 9996161, 9996160, 9996159, 9996158, 9996157, 9996156, 9996155, 9996154, 9996153, 9996152, 9996151, 9996150, 9996149, 9996148, 9996147, 9996146, 9996145, 9996144, 9996143, 9996142, 9996141, 9996140, 9996139, 9996138, 9996137, 9996136, 9996135, 9996134, 9996133, 9996132, 9996131, 9996130, 9996129, 9996128, 9996127, 9996126, 9996125, 9996124, 9996123, 9996122, 9996121, 9996120, 9996119, 9996118, 9996117, 9996116, 9996115, 9996114, 9996113, 9996112, 9996111, 9996110, 9996109, 9996108, 9996107, 9996106, 9996105, 9996104, 9996103, 9996102, 9996101, 9996100, 9996099, 9996098, 9996097, 9996096, 9996095, 9996094, 9996093, 9996092, 9996091, 9996090, 9996089, 9996088, 9996087, 9996086, 9996085, 9996084, 9996083, 9996082, 9996081, 9996080, 9996079, 9996078, 9996077, 9996076, 9996075, 9996074, 9996073, 9996072, 9996071, 9996070, 9996069, 9996068, 9996067, 9996066, 9996065, 9996064, 9996063, 9996062, 9996061, 9996060, 9996059, 9996058, 9996057, 9996056, 9996055, 9996054, 9996053, 9996052, 9996051, 9996050, 9996049, 9996048, 9996047, 9996046, 9996045, 9996044, 9996043, 9996042, 9996041, 9996040, 9996039, 9996038, 9996037, 9996036, 9996035, 9996034, 9996033, 9996032, 9996031, 9996030, 9996029, 9996028, 9996027, 9996026, 9996025, 9996024, 9996023, 9996022, 9996021, 9996020, 9996019, 9996018, 9996017, 9996016, 9996015, 9996014, 9996013, 9996012, 9996011, 9996010, 9996009, 9996008, 9996007, 9996006, 9996005, 9996004, 9996003, 9996002, 9996001, 9996000, 9995999, 9995998, 9995997, 9995996, 9995995, 9995994, 9995993, 9995992, 9995991, 9995990, 9995989, 9995988, 9995987, 9995986, 9995985, 9995984, 9995983, 9995982, 9995981, 9995980, 9995979, 9995978, 9995977, 9995976, 9995975, 9995974, 9995973, 9995972, 9995971, 9995970, 9995969, 9995968, 9995967, 9995966, 9995965, 9995964, 9995963, 9995962, 9995961, 9995960, 9995959, 9995958, 9995957, 9995956, 9995955, 9995954, 9995953, 9995952, 9995951, 9995950, 9995949, 9995948, 9995947, 9995946, 9995945, 9995944, 9995943, 9995942, 9995941, 9995940, 9995939, 9995938, 9995937, 9995936, 9995935, 9995934, 9995933, 9995932, 9995931, 9995930, 9995929, 9995928, 9995927, 9995926, 9995925, 9995924, 9995923, 9995922, 9995921, 9995920, 9995919, 9995918, 9995917, 9995916, 9995915, 9995914, 9995913, 9995912, 9995911, 9995910, 9995909, 9995908, 9995907, 9995906, 9995905, 9995904, 9995903, 9995902, 9995901, 9995900, 9995899, 9995898, 9995897, 9995896, 9995895, 9995894, 9995893, 9995892, 9995891, 9995890, 9995889, 9995888, 9995887, 9995886, 9995885, 9995884, 9995883, 9995882, 9995881, 9995880, 9995879, 9995878, 9995877, 9995876, 9995875, 9995874, 9995873, 9995872, 9995871, 9995870, 9995869, 9995868, 9995867, 9995866, 9995865, 9995864, 9995863, 9995862, 9995861, 9995860, 9995859, 9995858, 9995857, 9995856, 9995855, 9995854, 9995853, 9995852, 9995851, 9995850, 9995849, 9995848, 9995847, 9995846, 9995845, 9995844, 9995843, 9995842, 9995841, 9995840, 9995839, 9995838, 9995837, 9995836, 9995835, 9995834, 9995833, 9995832, 9995831, 9995830, 9995829, 9995828, 9995827, 9995826, 9995825, 9995824, 9995823, 9995822, 9995821, 9995820, 9995819, 9995818, 9995817, 9995816, 9995815, 9995814, 9995813, 9995812, 9995811, 9995810, 9995809, 9995808, 9995807, 9995806, 9995805, 9995804, 9995803, 9995802, 9995801, 9995800, 9995799, 9995798, 9995797, 9995796, 9995795, 9995794, 9995793, 9995792, 9995791, 9995790, 9995789, 9995788, 9995787, 9995786, 9995785, 9995784, 9995783, 9995782, 9995781, 9995780, 9995779, 9995778, 9995777, 9995776, 9995775, 9995774, 9995773, 9995772, 9995771, 9995770, 9995769, 9995768, 9995767, 9995766, 9995765, 9995764, 9995763, 9995762, 9995761, 9995760, 9995759, 9995758, 9995757, 9995756, 9995755, 9995754, 9995753, 9995752, 9995751, 9995750, 9995749, 9995748, 9995747, 9995746, 9995745, 9995744, 9995743, 9995742, 9995741, 9995740, 9995739, 9995738, 9995737, 9995736, 9995735, 9995734, 9995733, 9995732, 9995731, 9995730, 9995729, 9995728, 9995727, 9995726, 9995725, 9995724, 9995723, 9995722, 9995721, 9995720, 9995719, 9995718, 9995717, 9995716, 9995715, 9995714, 9995713, 9995712, 9995711, 9995710, 9995709, 9995708, 9995707, 9995706, 9995705, 9995704, 9995703, 9995702, 9995701, 9995700, 9995699, 9995698, 9995697, 9995696, 9995695, 9995694, 9995693, 9995692, 9995691, 9995690, 9995689, 9995688, 9995687, 9995686, 9995685, 9995684, 9995683, 9995682, 9995681, 9995680, 9995679, 9995678, 9995677, 9995676, 9995675, 9995674, 9995673, 9995672, 9995671, 9995670, 9995669, 9995668, 9995667, 9995666, 9995665, 9995664, 9995663, 9995662, 9995661, 9995660, 9995659, 9995658, 9995657, 9995656, 9995655, 9995654, 9995653, 9995652, 9995651, 9995650, 9995649, 9995648, 9995647, 9995646, 9995645, 9995644, 9995643, 9995642, 9995641, 9995640, 9995639, 9995638, 9995637, 9995636, 9995635, 9995634, 9995633, 9995632, 9995631, 9995630, 9995629, 9995628, 9995627, 9995626, 9995625, 9995624, 9995623, 9995622, 9995621, 9995620, 9995619, 9995618, 9995617, 9995616, 9995615, 9995614, 9995613, 9995612, 9995611, 9995610, 9995609, 9995608, 9995607, 9995606, 9995605, 9995604, 9995603, 9995602, 9995601, 9995600, 9995599, 9995598, 9995597, 9995596, 9995595, 9995594, 9995593, 9995592, 9995591, 9995590, 9995589, 9995588, 9995587, 9995586, 9995585, 9995584, 9995583, 9995582, 9995581, 9995580, 9995579, 9995578, 9995577, 9995576, 9995575, 9995574, 9995573, 9995572, 9995571, 9995570, 9995569, 9995568, 9995567, 9995566, 9995565, 9995564, 9995563, 9995562, 9995561, 9995560, 9995559, 9995558, 9995557, 9995556, 9995555, 9995554, 9995553, 9995552, 9995551, 9995550, 9995549, 9995548, 9995547, 9995546, 9995545, 9995544, 9995543, 9995542, 9995541, 9995540, 9995539, 9995538, 9995537, 9995536, 9995535, 9995534, 9995533, 9995532, 9995531, 9995530, 9995529, 9995528, 9995527, 9995526, 9995525, 9995524, 9995523, 9995522, 9995521, 9995520, 9995519, 9995518, 9995517, 9995516, 9995515, 9995514, 9995513, 9995512, 9995511, 9995510, 9995509, 9995508, 9995507, 9995506, 9995505, 9995504, 9995503, 9995502, 9995501, 9995500, 9995499, 9995498, 9995497, 9995496, 9995495, 9995494, 9995493, 9995492, 9995491, 9995490, 9995489, 9995488, 9995487, 9995486, 9995485, 9995484, 9995483, 9995482, 9995481, 9995480, 9995479, 9995478, 9995477, 9995476, 9995475, 9995474, 9995473, 9995472, 9995471, 9995470, 9995469, 9995468, 9995467, 9995466, 9995465, 9995464, 9995463, 9995462, 9995461, 9995460, 9995459, 9995458, 9995457, 9995456, 9995455, 9995454, 9995453, 9995452, 9995451, 9995450, 9995449, 9995448, 9995447, 9995446, 9995445, 9995444, 9995443, 9995442, 9995441, 9995440, 9995439, 9995438, 9995437, 9995436, 9995435, 9995434, 9995433, 9995432, 9995431, 9995430, 9995429, 9995428, 9995427, 9995426, 9995425, 9995424, 9995423, 9995422, 9995421, 9995420, 9995419, 9995418, 9995417, 9995416, 9995415, 9995414, 9995413, 9995412, 9995411, 9995410, 9995409, 9995408, 9995407, 9995406, 9995405, 9995404, 9995403, 9995402, 9995401, 9995400, 9995399, 9995398, 9995397, 9995396, 9995395, 9995394, 9995393, 9995392, 9995391, 9995390, 9995389, 9995388, 9995387, 9995386, 9995385, 9995384, 9995383, 9995382, 9995381, 9995380, 9995379, 9995378, 9995377, 9995376, 9995375, 9995374, 9995373, 9995372, 9995371, 9995370, 9995369, 9995368, 9995367, 9995366, 9995365, 9995364, 9995363, 9995362, 9995361, 9995360, 9995359, 9995358, 9995357, 9995356, 9995355, 9995354, 9995353, 9995352, 9995351, 9995350, 9995349, 9995348, 9995347, 9995346, 9995345, 9995344, 9995343, 9995342, 9995341, 9995340, 9995339, 9995338, 9995337, 9995336, 9995335, 9995334, 9995333, 9995332, 9995331, 9995330, 9995329, 9995328, 9995327, 9995326, 9995325, 9995324, 9995323, 9995322, 9995321, 9995320, 9995319, 9995318, 9995317, 9995316, 9995315, 9995314, 9995313, 9995312, 9995311, 9995310, 9995309, 9995308, 9995307, 9995306, 9995305, 9995304, 9995303, 9995302, 9995301, 9995300, 9995299, 9995298, 9995297, 9995296, 9995295, 9995294, 9995293, 9995292, 9995291, 9995290, 9995289, 9995288, 9995287, 9995286, 9995285, 9995284, 9995283, 9995282, 9995281, 9995280, 9995279, 9995278, 9995277, 9995276, 9995275, 9995274, 9995273, 9995272, 9995271, 9995270, 9995269, 9995268, 9995267, 9995266, 9995265, 9995264, 9995263, 9995262, 9995261, 9995260, 9995259, 9995258, 9995257, 9995256, 9995255, 9995254, 9995253, 9995252, 9995251, 9995250, 9995249, 9995248, 9995247, 9995246, 9995245, 9995244, 9995243, 9995242, 9995241, 9995240, 9995239, 9995238, 9995237, 9995236, 9995235, 9995234, 9995233, 9995232, 9995231, 9995230, 9995229, 9995228, 9995227, 9995226, 9995225, 9995224, 9995223, 9995222, 9995221, 9995220, 9995219, 9995218, 9995217, 9995216, 9995215, 9995214, 9995213, 9995212, 9995211, 9995210, 9995209, 9995208, 9995207, 9995206, 9995205, 9995204, 9995203, 9995202, 9995201, 9995200, 9995199, 9995198, 9995197, 9995196, 9995195, 9995194, 9995193, 9995192, 9995191, 9995190, 9995189, 9995188, 9995187, 9995186, 9995185, 9995184, 9995183, 9995182, 9995181, 9995180, 9995179, 9995178, 9995177, 9995176, 9995175, 9995174, 9995173, 9995172, 9995171, 9995170, 9995169, 9995168, 9995167, 9995166, 9995165, 9995164, 9995163, 9995162, 9995161, 9995160, 9995159, 9995158, 9995157, 9995156, 9995155, 9995154, 9995153, 9995152, 9995151, 9995150, 9995149, 9995148, 9995147, 9995146, 9995145, 9995144, 9995143, 9995142, 9995141, 9995140, 9995139, 9995138, 9995137, 9995136, 9995135, 9995134, 9995133, 9995132, 9995131, 9995130, 9995129, 9995128, 9995127, 9995126, 9995125, 9995124, 9995123, 9995122, 9995121, 9995120, 9995119, 9995118, 9995117, 9995116, 9995115, 9995114, 9995113, 9995112, 9995111, 9995110, 9995109, 9995108, 9995107, 9995106, 9995105, 9995104, 9995103, 9995102, 9995101, 9995100, 9995099, 9995098, 9995097, 9995096, 9995095, 9995094, 9995093, 9995092, 9995091, 9995090, 9995089, 9995088, 9995087, 9995086, 9995085, 9995084, 9995083, 9995082, 9995081, 9995080, 9995079, 9995078, 9995077, 9995076, 9995075, 9995074, 9995073, 9995072, 9995071, 9995070, 9995069, 9995068, 9995067, 9995066, 9995065, 9995064, 9995063, 9995062, 9995061, 9995060, 9995059, 9995058, 9995057, 9995056, 9995055, 9995054, 9995053, 9995052, 9995051, 9995050, 9995049, 9995048, 9995047, 9995046, 9995045, 9995044, 9995043, 9995042, 9995041, 9995040, 9995039, 9995038, 9995037, 9995036, 9995035, 9995034, 9995033, 9995032, 9995031, 9995030, 9995029, 9995028, 9995027, 9995026, 9995025, 9995024, 9995023, 9995022, 9995021, 9995020, 9995019, 9995018, 9995017, 9995016, 9995015, 9995014, 9995013, 9995012, 9995011, 9995010, 9995009, 9995008, 9995007, 9995006, 9995005, 9995004, 9995003, 9995002, 9995001, 9995000, 9994999, 9994998, 9994997, 9994996, 9994995, 9994994, 9994993, 9994992, 9994991, 9994990, 9994989, 9994988, 9994987, 9994986, 9994985, 9994984, 9994983, 9994982, 9994981, 9994980, 9994979, 9994978, 9994977, 9994976, 9994975, 9994974, 9994973, 9994972, 9994971, 9994970, 9994969, 9994968, 9994967, 9994966, 9994965, 9994964, 9994963, 9994962, 9994961, 9994960, 9994959, 9994958, 9994957, 9994956, 9994955, 9994954, 9994953, 9994952, 9994951, 9994950, 9994949, 9994948, 9994947, 9994946, 9994945, 9994944, 9994943, 9994942, 9994941, 9994940, 9994939, 9994938, 9994937, 9994936, 9994935, 9994934, 9994933, 9994932, 9994931, 9994930, 9994929, 9994928, 9994927, 9994926, 9994925, 9994924, 9994923, 9994922, 9994921, 9994920, 9994919, 9994918, 9994917, 9994916, 9994915, 9994914, 9994913, 9994912, 9994911, 9994910, 9994909, 9994908, 9994907, 9994906, 9994905, 9994904, 9994903, 9994902, 9994901, 9994900, 9994899, 9994898, 9994897, 9994896, 9994895, 9994894, 9994893, 9994892, 9994891, 9994890, 9994889, 9994888, 9994887, 9994886, 9994885, 9994884, 9994883, 9994882, 9994881, 9994880, 9994879, 9994878, 9994877, 9994876, 9994875, 9994874, 9994873, 9994872, 9994871, 9994870, 9994869, 9994868, 9994867, 9994866, 9994865, 9994864, 9994863, 9994862, 9994861, 9994860, 9994859, 9994858, 9994857, 9994856, 9994855, 9994854, 9994853, 9994852, 9994851, 9994850, 9994849, 9994848, 9994847, 9994846, 9994845, 9994844, 9994843, 9994842, 9994841, 9994840, 9994839, 9994838, 9994837, 9994836, 9994835, 9994834, 9994833, 9994832, 9994831, 9994830, 9994829, 9994828, 9994827, 9994826, 9994825, 9994824, 9994823, 9994822, 9994821, 9994820, 9994819, 9994818, 9994817, 9994816, 9994815, 9994814, 9994813, 9994812, 9994811, 9994810, 9994809, 9994808, 9994807, 9994806, 9994805, 9994804, 9994803, 9994802, 9994801, 9994800, 9994799, 9994798, 9994797, 9994796, 9994795, 9994794, 9994793, 9994792, 9994791, 9994790, 9994789, 9994788, 9994787, 9994786, 9994785, 9994784, 9994783, 9994782, 9994781, 9994780, 9994779, 9994778, 9994777, 9994776, 9994775, 9994774, 9994773, 9994772, 9994771, 9994770, 9994769, 9994768, 9994767, 9994766, 9994765, 9994764, 9994763, 9994762, 9994761, 9994760, 9994759, 9994758, 9994757, 9994756, 9994755, 9994754, 9994753, 9994752, 9994751, 9994750, 9994749, 9994748, 9994747, 9994746, 9994745, 9994744, 9994743, 9994742, 9994741, 9994740, 9994739, 9994738, 9994737, 9994736, 9994735, 9994734, 9994733, 9994732, 9994731, 9994730, 9994729, 9994728, 9994727, 9994726, 9994725, 9994724, 9994723, 9994722, 9994721, 9994720, 9994719, 9994718, 9994717, 9994716, 9994715, 9994714, 9994713, 9994712, 9994711, 9994710, 9994709, 9994708, 9994707, 9994706, 9994705, 9994704, 9994703, 9994702, 9994701, 9994700, 9994699, 9994698, 9994697, 9994696, 9994695, 9994694, 9994693, 9994692, 9994691, 9994690, 9994689, 9994688, 9994687, 9994686, 9994685, 9994684, 9994683, 9994682, 9994681, 9994680, 9994679, 9994678, 9994677, 9994676, 9994675, 9994674, 9994673, 9994672, 9994671, 9994670, 9994669, 9994668, 9994667, 9994666, 9994665, 9994664, 9994663, 9994662, 9994661, 9994660, 9994659, 9994658, 9994657, 9994656, 9994655, 9994654, 9994653, 9994652, 9994651, 9994650, 9994649, 9994648, 9994647, 9994646, 9994645, 9994644, 9994643, 9994642, 9994641, 9994640, 9994639, 9994638, 9994637, 9994636, 9994635, 9994634, 9994633, 9994632, 9994631, 9994630, 9994629, 9994628, 9994627, 9994626, 9994625, 9994624, 9994623, 9994622, 9994621, 9994620, 9994619, 9994618, 9994617, 9994616, 9994615, 9994614, 9994613, 9994612, 9994611, 9994610, 9994609, 9994608, 9994607, 9994606, 9994605, 9994604, 9994603, 9994602, 9994601, 9994600, 9994599, 9994598, 9994597, 9994596, 9994595, 9994594, 9994593, 9994592, 9994591, 9994590, 9994589, 9994588, 9994587, 9994586, 9994585, 9994584, 9994583, 9994582, 9994581, 9994580, 9994579, 9994578, 9994577, 9994576, 9994575, 9994574, 9994573, 9994572, 9994571, 9994570, 9994569, 9994568, 9994567, 9994566, 9994565, 9994564, 9994563, 9994562, 9994561, 9994560, 9994559, 9994558, 9994557, 9994556, 9994555, 9994554, 9994553, 9994552, 9994551, 9994550, 9994549, 9994548, 9994547, 9994546, 9994545, 9994544, 9994543, 9994542, 9994541, 9994540, 9994539, 9994538, 9994537, 9994536, 9994535, 9994534, 9994533, 9994532, 9994531, 9994530, 9994529, 9994528, 9994527, 9994526, 9994525, 9994524, 9994523, 9994522, 9994521, 9994520, 9994519, 9994518, 9994517, 9994516, 9994515, 9994514, 9994513, 9994512, 9994511, 9994510, 9994509, 9994508, 9994507, 9994506, 9994505, 9994504, 9994503, 9994502, 9994501, 9994500, 9994499, 9994498, 9994497, 9994496, 9994495, 9994494, 9994493, 9994492, 9994491, 9994490, 9994489, 9994488, 9994487, 9994486, 9994485, 9994484, 9994483, 9994482, 9994481, 9994480, 9994479, 9994478, 9994477, 9994476, 9994475, 9994474, 9994473, 9994472, 9994471, 9994470, 9994469, 9994468, 9994467, 9994466, 9994465, 9994464, 9994463, 9994462, 9994461, 9994460, 9994459, 9994458, 9994457, 9994456, 9994455, 9994454, 9994453, 9994452, 9994451, 9994450, 9994449, 9994448, 9994447, 9994446, 9994445, 9994444, 9994443, 9994442, 9994441, 9994440, 9994439, 9994438, 9994437, 9994436, 9994435, 9994434, 9994433, 9994432, 9994431, 9994430, 9994429, 9994428, 9994427, 9994426, 9994425, 9994424, 9994423, 9994422, 9994421, 9994420, 9994419, 9994418, 9994417, 9994416, 9994415, 9994414, 9994413, 9994412, 9994411, 9994410, 9994409, 9994408, 9994407, 9994406, 9994405, 9994404, 9994403, 9994402, 9994401, 9994400, 9994399, 9994398, 9994397, 9994396, 9994395, 9994394, 9994393, 9994392, 9994391, 9994390, 9994389, 9994388, 9994387, 9994386, 9994385, 9994384, 9994383, 9994382, 9994381, 9994380, 9994379, 9994378, 9994377, 9994376, 9994375, 9994374, 9994373, 9994372, 9994371, 9994370, 9994369, 9994368, 9994367, 9994366, 9994365, 9994364, 9994363, 9994362, 9994361, 9994360, 9994359, 9994358, 9994357, 9994356, 9994355, 9994354, 9994353, 9994352, 9994351, 9994350, 9994349, 9994348, 9994347, 9994346, 9994345, 9994344, 9994343, 9994342, 9994341, 9994340, 9994339, 9994338, 9994337, 9994336, 9994335, 9994334, 9994333, 9994332, 9994331, 9994330, 9994329, 9994328, 9994327, 9994326, 9994325, 9994324, 9994323, 9994322, 9994321, 9994320, 9994319, 9994318, 9994317, 9994316, 9994315, 9994314, 9994313, 9994312, 9994311, 9994310, 9994309, 9994308, 9994307, 9994306, 9994305, 9994304, 9994303, 9994302, 9994301, 9994300, 9994299, 9994298, 9994297, 9994296, 9994295, 9994294, 9994293, 9994292, 9994291, 9994290, 9994289, 9994288, 9994287, 9994286, 9994285, 9994284, 9994283, 9994282, 9994281, 9994280, 9994279, 9994278, 9994277, 9994276, 9994275, 9994274, 9994273, 9994272, 9994271, 9994270, 9994269, 9994268, 9994267, 9994266, 9994265, 9994264, 9994263, 9994262, 9994261, 9994260, 9994259, 9994258, 9994257, 9994256, 9994255, 9994254, 9994253, 9994252, 9994251, 9994250, 9994249, 9994248, 9994247, 9994246, 9994245, 9994244, 9994243, 9994242, 9994241, 9994240, 9994239, 9994238, 9994237, 9994236, 9994235, 9994234, 9994233, 9994232, 9994231, 9994230, 9994229, 9994228, 9994227, 9994226, 9994225, 9994224, 9994223, 9994222, 9994221, 9994220, 9994219, 9994218, 9994217, 9994216, 9994215, 9994214, 9994213, 9994212, 9994211, 9994210, 9994209, 9994208, 9994207, 9994206, 9994205, 9994204, 9994203, 9994202, 9994201, 9994200, 9994199, 9994198, 9994197, 9994196, 9994195, 9994194, 9994193, 9994192, 9994191, 9994190, 9994189, 9994188, 9994187, 9994186, 9994185, 9994184, 9994183, 9994182, 9994181, 9994180, 9994179, 9994178, 9994177, 9994176, 9994175, 9994174, 9994173, 9994172, 9994171, 9994170, 9994169, 9994168, 9994167, 9994166, 9994165, 9994164, 9994163, 9994162, 9994161, 9994160, 9994159, 9994158, 9994157, 9994156, 9994155, 9994154, 9994153, 9994152, 9994151, 9994150, 9994149, 9994148, 9994147, 9994146, 9994145, 9994144, 9994143, 9994142, 9994141, 9994140, 9994139, 9994138, 9994137, 9994136, 9994135, 9994134, 9994133, 9994132, 9994131, 9994130, 9994129, 9994128, 9994127, 9994126, 9994125, 9994124, 9994123, 9994122, 9994121, 9994120, 9994119, 9994118, 9994117, 9994116, 9994115, 9994114, 9994113, 9994112, 9994111, 9994110, 9994109, 9994108, 9994107, 9994106, 9994105, 9994104, 9994103, 9994102, 9994101, 9994100, 9994099, 9994098, 9994097, 9994096, 9994095, 9994094, 9994093, 9994092, 9994091, 9994090, 9994089, 9994088, 9994087, 9994086, 9994085, 9994084, 9994083, 9994082, 9994081, 9994080, 9994079, 9994078, 9994077, 9994076, 9994075, 9994074, 9994073, 9994072, 9994071, 9994070, 9994069, 9994068, 9994067, 9994066, 9994065, 9994064, 9994063, 9994062, 9994061, 9994060, 9994059, 9994058, 9994057, 9994056, 9994055, 9994054, 9994053, 9994052, 9994051, 9994050, 9994049, 9994048, 9994047, 9994046, 9994045, 9994044, 9994043, 9994042, 9994041, 9994040, 9994039, 9994038, 9994037, 9994036, 9994035, 9994034, 9994033, 9994032, 9994031, 9994030, 9994029, 9994028, 9994027, 9994026, 9994025, 9994024, 9994023, 9994022, 9994021, 9994020, 9994019, 9994018, 9994017, 9994016, 9994015, 9994014, 9994013, 9994012, 9994011, 9994010, 9994009, 9994008, 9994007, 9994006, 9994005, 9994004, 9994003, 9994002, 9994001, 9994000, 9993999, 9993998, 9993997, 9993996, 9993995, 9993994, 9993993, 9993992, 9993991, 9993990, 9993989, 9993988, 9993987, 9993986, 9993985, 9993984, 9993983, 9993982, 9993981, 9993980, 9993979, 9993978, 9993977, 9993976, 9993975, 9993974, 9993973, 9993972, 9993971, 9993970, 9993969, 9993968, 9993967, 9993966, 9993965, 9993964, 9993963, 9993962, 9993961, 9993960, 9993959, 9993958, 9993957, 9993956, 9993955, 9993954, 9993953, 9993952, 9993951, 9993950, 9993949, 9993948, 9993947, 9993946, 9993945, 9993944, 9993943, 9993942, 9993941, 9993940, 9993939, 9993938, 9993937, 9993936, 9993935, 9993934, 9993933, 9993932, 9993931, 9993930, 9993929, 9993928, 9993927, 9993926, 9993925, 9993924, 9993923, 9993922, 9993921, 9993920, 9993919, 9993918, 9993917, 9993916, 9993915, 9993914, 9993913, 9993912, 9993911, 9993910, 9993909, 9993908, 9993907, 9993906, 9993905, 9993904, 9993903, 9993902, 9993901, 9993900, 9993899, 9993898, 9993897, 9993896, 9993895, 9993894, 9993893, 9993892, 9993891, 9993890, 9993889, 9993888, 9993887, 9993886, 9993885, 9993884, 9993883, 9993882, 9993881, 9993880, 9993879, 9993878, 9993877, 9993876, 9993875, 9993874, 9993873, 9993872, 9993871, 9993870, 9993869, 9993868, 9993867, 9993866, 9993865, 9993864, 9993863, 9993862, 9993861, 9993860, 9993859, 9993858, 9993857, 9993856, 9993855, 9993854, 9993853, 9993852, 9993851, 9993850, 9993849, 9993848, 9993847, 9993846, 9993845, 9993844, 9993843, 9993842, 9993841, 9993840, 9993839, 9993838, 9993837, 9993836, 9993835, 9993834, 9993833, 9993832, 9993831, 9993830, 9993829, 9993828, 9993827, 9993826, 9993825, 9993824, 9993823, 9993822, 9993821, 9993820, 9993819, 9993818, 9993817, 9993816, 9993815, 9993814, 9993813, 9993812, 9993811, 9993810, 9993809, 9993808, 9993807, 9993806, 9993805, 9993804, 9993803, 9993802, 9993801, 9993800, 9993799, 9993798, 9993797, 9993796, 9993795, 9993794, 9993793, 9993792, 9993791, 9993790, 9993789, 9993788, 9993787, 9993786, 9993785, 9993784, 9993783, 9993782, 9993781, 9993780, 9993779, 9993778, 9993777, 9993776, 9993775, 9993774, 9993773, 9993772, 9993771, 9993770, 9993769, 9993768, 9993767, 9993766, 9993765, 9993764, 9993763, 9993762, 9993761, 9993760, 9993759, 9993758, 9993757, 9993756, 9993755, 9993754, 9993753, 9993752, 9993751, 9993750, 9993749, 9993748, 9993747, 9993746, 9993745, 9993744, 9993743, 9993742, 9993741, 9993740, 9993739, 9993738, 9993737, 9993736, 9993735, 9993734, 9993733, 9993732, 9993731, 9993730, 9993729, 9993728, 9993727, 9993726, 9993725, 9993724, 9993723, 9993722, 9993721, 9993720, 9993719, 9993718, 9993717, 9993716, 9993715, 9993714, 9993713, 9993712, 9993711, 9993710, 9993709, 9993708, 9993707, 9993706, 9993705, 9993704, 9993703, 9993702, 9993701, 9993700, 9993699, 9993698, 9993697, 9993696, 9993695, 9993694, 9993693, 9993692, 9993691, 9993690, 9993689, 9993688, 9993687, 9993686, 9993685, 9993684, 9993683, 9993682, 9993681, 9993680, 9993679, 9993678, 9993677, 9993676, 9993675, 9993674, 9993673, 9993672, 9993671, 9993670, 9993669, 9993668, 9993667, 9993666, 9993665, 9993664, 9993663, 9993662, 9993661, 9993660, 9993659, 9993658, 9993657, 9993656, 9993655, 9993654, 9993653, 9993652, 9993651, 9993650, 9993649, 9993648, 9993647, 9993646, 9993645, 9993644, 9993643, 9993642, 9993641, 9993640, 9993639, 9993638, 9993637, 9993636, 9993635, 9993634, 9993633, 9993632, 9993631, 9993630, 9993629, 9993628, 9993627, 9993626, 9993625, 9993624, 9993623, 9993622, 9993621, 9993620, 9993619, 9993618, 9993617, 9993616, 9993615, 9993614, 9993613, 9993612, 9993611, 9993610, 9993609, 9993608, 9993607, 9993606, 9993605, 9993604, 9993603, 9993602, 9993601, 9993600, 9993599, 9993598, 9993597, 9993596, 9993595, 9993594, 9993593, 9993592, 9993591, 9993590, 9993589, 9993588, 9993587, 9993586, 9993585, 9993584, 9993583, 9993582, 9993581, 9993580, 9993579, 9993578, 9993577, 9993576, 9993575, 9993574, 9993573, 9993572, 9993571, 9993570, 9993569, 9993568, 9993567, 9993566, 9993565, 9993564, 9993563, 9993562, 9993561, 9993560, 9993559, 9993558, 9993557, 9993556, 9993555, 9993554, 9993553, 9993552, 9993551, 9993550, 9993549, 9993548, 9993547, 9993546, 9993545, 9993544, 9993543, 9993542, 9993541, 9993540, 9993539, 9993538, 9993537, 9993536, 9993535, 9993534, 9993533, 9993532, 9993531, 9993530, 9993529, 9993528, 9993527, 9993526, 9993525, 9993524, 9993523, 9993522, 9993521, 9993520, 9993519, 9993518, 9993517, 9993516, 9993515, 9993514, 9993513, 9993512, 9993511, 9993510, 9993509, 9993508, 9993507, 9993506, 9993505, 9993504, 9993503, 9993502, 9993501, 9993500, 9993499, 9993498, 9993497, 9993496, 9993495, 9993494, 9993493, 9993492, 9993491, 9993490, 9993489, 9993488, 9993487, 9993486, 9993485, 9993484, 9993483, 9993482, 9993481, 9993480, 9993479, 9993478, 9993477, 9993476, 9993475, 9993474, 9993473, 9993472, 9993471, 9993470, 9993469, 9993468, 9993467, 9993466, 9993465, 9993464, 9993463, 9993462, 9993461, 9993460, 9993459, 9993458, 9993457, 9993456, 9993455, 9993454, 9993453, 9993452, 9993451, 9993450, 9993449, 9993448, 9993447, 9993446, 9993445, 9993444, 9993443, 9993442, 9993441, 9993440, 9993439, 9993438, 9993437, 9993436, 9993435, 9993434, 9993433, 9993432, 9993431, 9993430, 9993429, 9993428, 9993427, 9993426, 9993425, 9993424, 9993423, 9993422, 9993421, 9993420, 9993419, 9993418, 9993417, 9993416, 9993415, 9993414, 9993413, 9993412, 9993411, 9993410, 9993409, 9993408, 9993407, 9993406, 9993405, 9993404, 9993403, 9993402, 9993401, 9993400, 9993399, 9993398, 9993397, 9993396, 9993395, 9993394, 9993393, 9993392, 9993391, 9993390, 9993389, 9993388, 9993387, 9993386, 9993385, 9993384, 9993383, 9993382, 9993381, 9993380, 9993379, 9993378, 9993377, 9993376, 9993375, 9993374, 9993373, 9993372, 9993371, 9993370, 9993369, 9993368, 9993367, 9993366, 9993365, 9993364, 9993363, 9993362, 9993361, 9993360, 9993359, 9993358, 9993357, 9993356, 9993355, 9993354, 9993353, 9993352, 9993351, 9993350, 9993349, 9993348, 9993347, 9993346, 9993345, 9993344, 9993343, 9993342, 9993341, 9993340, 9993339, 9993338, 9993337, 9993336, 9993335, 9993334, 9993333, 9993332, 9993331, 9993330, 9993329, 9993328, 9993327, 9993326, 9993325, 9993324, 9993323, 9993322, 9993321, 9993320, 9993319, 9993318, 9993317, 9993316, 9993315, 9993314, 9993313, 9993312, 9993311, 9993310, 9993309, 9993308, 9993307, 9993306, 9993305, 9993304, 9993303, 9993302, 9993301, 9993300, 9993299, 9993298, 9993297, 9993296, 9993295, 9993294, 9993293, 9993292, 9993291, 9993290, 9993289, 9993288, 9993287, 9993286, 9993285, 9993284, 9993283, 9993282, 9993281, 9993280, 9993279, 9993278, 9993277, 9993276, 9993275, 9993274, 9993273, 9993272, 9993271, 9993270, 9993269, 9993268, 9993267, 9993266, 9993265, 9993264, 9993263, 9993262, 9993261, 9993260, 9993259, 9993258, 9993257, 9993256, 9993255, 9993254, 9993253, 9993252, 9993251, 9993250, 9993249, 9993248, 9993247, 9993246, 9993245, 9993244, 9993243, 9993242, 9993241, 9993240, 9993239, 9993238, 9993237, 9993236, 9993235, 9993234, 9993233, 9993232, 9993231, 9993230, 9993229, 9993228, 9993227, 9993226, 9993225, 9993224, 9993223, 9993222, 9993221, 9993220, 9993219, 9993218, 9993217, 9993216, 9993215, 9993214, 9993213, 9993212, 9993211, 9993210, 9993209, 9993208, 9993207, 9993206, 9993205, 9993204, 9993203, 9993202, 9993201, 9993200, 9993199, 9993198, 9993197, 9993196, 9993195, 9993194, 9993193, 9993192, 9993191, 9993190, 9993189, 9993188, 9993187, 9993186, 9993185, 9993184, 9993183, 9993182, 9993181, 9993180, 9993179, 9993178, 9993177, 9993176, 9993175, 9993174, 9993173, 9993172, 9993171, 9993170, 9993169, 9993168, 9993167, 9993166, 9993165, 9993164, 9993163, 9993162, 9993161, 9993160, 9993159, 9993158, 9993157, 9993156, 9993155, 9993154, 9993153, 9993152, 9993151, 9993150, 9993149, 9993148, 9993147, 9993146, 9993145, 9993144, 9993143, 9993142, 9993141, 9993140, 9993139, 9993138, 9993137, 9993136, 9993135, 9993134, 9993133, 9993132, 9993131, 9993130, 9993129, 9993128, 9993127, 9993126, 9993125, 9993124, 9993123, 9993122, 9993121, 9993120, 9993119, 9993118, 9993117, 9993116, 9993115, 9993114, 9993113, 9993112, 9993111, 9993110, 9993109, 9993108, 9993107, 9993106, 9993105, 9993104, 9993103, 9993102, 9993101, 9993100, 9993099, 9993098, 9993097, 9993096, 9993095, 9993094, 9993093, 9993092, 9993091, 9993090, 9993089, 9993088, 9993087, 9993086, 9993085, 9993084, 9993083, 9993082, 9993081, 9993080, 9993079, 9993078, 9993077, 9993076, 9993075, 9993074, 9993073, 9993072, 9993071, 9993070, 9993069, 9993068, 9993067, 9993066, 9993065, 9993064, 9993063, 9993062, 9993061, 9993060, 9993059, 9993058, 9993057, 9993056, 9993055, 9993054, 9993053, 9993052, 9993051, 9993050, 9993049, 9993048, 9993047, 9993046, 9993045, 9993044, 9993043, 9993042, 9993041, 9993040, 9993039, 9993038, 9993037, 9993036, 9993035, 9993034, 9993033, 9993032, 9993031, 9993030, 9993029, 9993028, 9993027, 9993026, 9993025, 9993024, 9993023, 9993022, 9993021, 9993020, 9993019, 9993018, 9993017, 9993016, 9993015, 9993014, 9993013, 9993012, 9993011, 9993010, 9993009, 9993008, 9993007, 9993006, 9993005, 9993004, 9993003, 9993002, 9993001, 9993000, 9992999, 9992998, 9992997, 9992996, 9992995, 9992994, 9992993, 9992992, 9992991, 9992990, 9992989, 9992988, 9992987, 9992986, 9992985, 9992984, 9992983, 9992982, 9992981, 9992980, 9992979, 9992978, 9992977, 9992976, 9992975, 9992974, 9992973, 9992972, 9992971, 9992970, 9992969, 9992968, 9992967, 9992966, 9992965, 9992964, 9992963, 9992962, 9992961, 9992960, 9992959, 9992958, 9992957, 9992956, 9992955, 9992954, 9992953, 9992952, 9992951, 9992950, 9992949, 9992948, 9992947, 9992946, 9992945, 9992944, 9992943, 9992942, 9992941, 9992940, 9992939, 9992938, 9992937, 9992936, 9992935, 9992934, 9992933, 9992932, 9992931, 9992930, 9992929, 9992928, 9992927, 9992926, 9992925, 9992924, 9992923, 9992922, 9992921, 9992920, 9992919, 9992918, 9992917, 9992916, 9992915, 9992914, 9992913, 9992912, 9992911, 9992910, 9992909, 9992908, 9992907, 9992906, 9992905, 9992904, 9992903, 9992902, 9992901, 9992900, 9992899, 9992898, 9992897, 9992896, 9992895, 9992894, 9992893, 9992892, 9992891, 9992890, 9992889, 9992888, 9992887, 9992886, 9992885, 9992884, 9992883, 9992882, 9992881, 9992880, 9992879, 9992878, 9992877, 9992876, 9992875, 9992874, 9992873, 9992872, 9992871, 9992870, 9992869, 9992868, 9992867, 9992866, 9992865, 9992864, 9992863, 9992862, 9992861, 9992860, 9992859, 9992858, 9992857, 9992856, 9992855, 9992854, 9992853, 9992852, 9992851, 9992850, 9992849, 9992848, 9992847, 9992846, 9992845, 9992844, 9992843, 9992842, 9992841, 9992840, 9992839, 9992838, 9992837, 9992836, 9992835, 9992834, 9992833, 9992832, 9992831, 9992830, 9992829, 9992828, 9992827, 9992826, 9992825, 9992824, 9992823, 9992822, 9992821, 9992820, 9992819, 9992818, 9992817, 9992816, 9992815, 9992814, 9992813, 9992812, 9992811, 9992810, 9992809, 9992808, 9992807, 9992806, 9992805, 9992804, 9992803, 9992802, 9992801, 9992800, 9992799, 9992798, 9992797, 9992796, 9992795, 9992794, 9992793, 9992792, 9992791, 9992790, 9992789, 9992788, 9992787, 9992786, 9992785, 9992784, 9992783, 9992782, 9992781, 9992780, 9992779, 9992778, 9992777, 9992776, 9992775, 9992774, 9992773, 9992772, 9992771, 9992770, 9992769, 9992768, 9992767, 9992766, 9992765, 9992764, 9992763, 9992762, 9992761, 9992760, 9992759, 9992758, 9992757, 9992756, 9992755, 9992754, 9992753, 9992752, 9992751, 9992750, 9992749, 9992748, 9992747, 9992746, 9992745, 9992744, 9992743, 9992742, 9992741, 9992740, 9992739, 9992738, 9992737, 9992736, 9992735, 9992734, 9992733, 9992732, 9992731, 9992730, 9992729, 9992728, 9992727, 9992726, 9992725, 9992724, 9992723, 9992722, 9992721, 9992720, 9992719, 9992718, 9992717, 9992716, 9992715, 9992714, 9992713, 9992712, 9992711, 9992710, 9992709, 9992708, 9992707, 9992706, 9992705, 9992704, 9992703, 9992702, 9992701, 9992700, 9992699, 9992698, 9992697, 9992696, 9992695, 9992694, 9992693, 9992692, 9992691, 9992690, 9992689, 9992688, 9992687, 9992686, 9992685, 9992684, 9992683, 9992682, 9992681, 9992680, 9992679, 9992678, 9992677, 9992676, 9992675, 9992674, 9992673, 9992672, 9992671, 9992670, 9992669, 9992668, 9992667, 9992666, 9992665, 9992664, 9992663, 9992662, 9992661, 9992660, 9992659, 9992658, 9992657, 9992656, 9992655, 9992654, 9992653, 9992652, 9992651, 9992650, 9992649, 9992648, 9992647, 9992646, 9992645, 9992644, 9992643, 9992642, 9992641, 9992640, 9992639, 9992638, 9992637, 9992636, 9992635, 9992634, 9992633, 9992632, 9992631, 9992630, 9992629, 9992628, 9992627, 9992626, 9992625, 9992624, 9992623, 9992622, 9992621, 9992620, 9992619, 9992618, 9992617, 9992616, 9992615, 9992614, 9992613, 9992612, 9992611, 9992610, 9992609, 9992608, 9992607, 9992606, 9992605, 9992604, 9992603, 9992602, 9992601, 9992600, 9992599, 9992598, 9992597, 9992596, 9992595, 9992594, 9992593, 9992592, 9992591, 9992590, 9992589, 9992588, 9992587, 9992586, 9992585, 9992584, 9992583, 9992582, 9992581, 9992580, 9992579, 9992578, 9992577, 9992576, 9992575, 9992574, 9992573, 9992572, 9992571, 9992570, 9992569, 9992568, 9992567, 9992566, 9992565, 9992564, 9992563, 9992562, 9992561, 9992560, 9992559, 9992558, 9992557, 9992556, 9992555, 9992554, 9992553, 9992552, 9992551, 9992550, 9992549, 9992548, 9992547, 9992546, 9992545, 9992544, 9992543, 9992542, 9992541, 9992540, 9992539, 9992538, 9992537, 9992536, 9992535, 9992534, 9992533, 9992532, 9992531, 9992530, 9992529, 9992528, 9992527, 9992526, 9992525, 9992524, 9992523, 9992522, 9992521, 9992520, 9992519, 9992518, 9992517, 9992516, 9992515, 9992514, 9992513, 9992512, 9992511, 9992510, 9992509, 9992508, 9992507, 9992506, 9992505, 9992504, 9992503, 9992502, 9992501, 9992500, 9992499, 9992498, 9992497, 9992496, 9992495, 9992494, 9992493, 9992492, 9992491, 9992490, 9992489, 9992488, 9992487, 9992486, 9992485, 9992484, 9992483, 9992482, 9992481, 9992480, 9992479, 9992478, 9992477, 9992476, 9992475, 9992474, 9992473, 9992472, 9992471, 9992470, 9992469, 9992468, 9992467, 9992466, 9992465, 9992464, 9992463, 9992462, 9992461, 9992460, 9992459, 9992458, 9992457, 9992456, 9992455, 9992454, 9992453, 9992452, 9992451, 9992450, 9992449, 9992448, 9992447, 9992446, 9992445, 9992444, 9992443, 9992442, 9992441, 9992440, 9992439, 9992438, 9992437, 9992436, 9992435, 9992434, 9992433, 9992432, 9992431, 9992430, 9992429, 9992428, 9992427, 9992426, 9992425, 9992424, 9992423, 9992422, 9992421, 9992420, 9992419, 9992418, 9992417, 9992416, 9992415, 9992414, 9992413, 9992412, 9992411, 9992410, 9992409, 9992408, 9992407, 9992406, 9992405, 9992404, 9992403, 9992402, 9992401, 9992400, 9992399, 9992398, 9992397, 9992396, 9992395, 9992394, 9992393, 9992392, 9992391, 9992390, 9992389, 9992388, 9992387, 9992386, 9992385, 9992384, 9992383, 9992382, 9992381, 9992380, 9992379, 9992378, 9992377, 9992376, 9992375, 9992374, 9992373, 9992372, 9992371, 9992370, 9992369, 9992368, 9992367, 9992366, 9992365, 9992364, 9992363, 9992362, 9992361, 9992360, 9992359, 9992358, 9992357, 9992356, 9992355, 9992354, 9992353, 9992352, 9992351, 9992350, 9992349, 9992348, 9992347, 9992346, 9992345, 9992344, 9992343, 9992342, 9992341, 9992340, 9992339, 9992338, 9992337, 9992336, 9992335, 9992334, 9992333, 9992332, 9992331, 9992330, 9992329, 9992328, 9992327, 9992326, 9992325, 9992324, 9992323, 9992322, 9992321, 9992320, 9992319, 9992318, 9992317, 9992316, 9992315, 9992314, 9992313, 9992312, 9992311, 9992310, 9992309, 9992308, 9992307, 9992306, 9992305, 9992304, 9992303, 9992302, 9992301, 9992300, 9992299, 9992298, 9992297, 9992296, 9992295, 9992294, 9992293, 9992292, 9992291, 9992290, 9992289, 9992288, 9992287, 9992286, 9992285, 9992284, 9992283, 9992282, 9992281, 9992280, 9992279, 9992278, 9992277, 9992276, 9992275, 9992274, 9992273, 9992272, 9992271, 9992270, 9992269, 9992268, 9992267, 9992266, 9992265, 9992264, 9992263, 9992262, 9992261, 9992260, 9992259, 9992258, 9992257, 9992256, 9992255, 9992254, 9992253, 9992252, 9992251, 9992250, 9992249, 9992248, 9992247, 9992246, 9992245, 9992244, 9992243, 9992242, 9992241, 9992240, 9992239, 9992238, 9992237, 9992236, 9992235, 9992234, 9992233, 9992232, 9992231, 9992230, 9992229, 9992228, 9992227, 9992226, 9992225, 9992224, 9992223, 9992222, 9992221, 9992220, 9992219, 9992218, 9992217, 9992216, 9992215, 9992214, 9992213, 9992212, 9992211, 9992210, 9992209, 9992208, 9992207, 9992206, 9992205, 9992204, 9992203, 9992202, 9992201, 9992200, 9992199, 9992198, 9992197, 9992196, 9992195, 9992194, 9992193, 9992192, 9992191, 9992190, 9992189, 9992188, 9992187, 9992186, 9992185, 9992184, 9992183, 9992182, 9992181, 9992180, 9992179, 9992178, 9992177, 9992176, 9992175, 9992174, 9992173, 9992172, 9992171, 9992170, 9992169, 9992168, 9992167, 9992166, 9992165, 9992164, 9992163, 9992162, 9992161, 9992160, 9992159, 9992158, 9992157, 9992156, 9992155, 9992154, 9992153, 9992152, 9992151, 9992150, 9992149, 9992148, 9992147, 9992146, 9992145, 9992144, 9992143, 9992142, 9992141, 9992140, 9992139, 9992138, 9992137, 9992136, 9992135, 9992134, 9992133, 9992132, 9992131, 9992130, 9992129, 9992128, 9992127, 9992126, 9992125, 9992124, 9992123, 9992122, 9992121, 9992120, 9992119, 9992118, 9992117, 9992116, 9992115, 9992114, 9992113, 9992112, 9992111, 9992110, 9992109, 9992108, 9992107, 9992106, 9992105, 9992104, 9992103, 9992102, 9992101, 9992100, 9992099, 9992098, 9992097, 9992096, 9992095, 9992094, 9992093, 9992092, 9992091, 9992090, 9992089, 9992088, 9992087, 9992086, 9992085, 9992084, 9992083, 9992082, 9992081, 9992080, 9992079, 9992078, 9992077, 9992076, 9992075, 9992074, 9992073, 9992072, 9992071, 9992070, 9992069, 9992068, 9992067, 9992066, 9992065, 9992064, 9992063, 9992062, 9992061, 9992060, 9992059, 9992058, 9992057, 9992056, 9992055, 9992054, 9992053, 9992052, 9992051, 9992050, 9992049, 9992048, 9992047, 9992046, 9992045, 9992044, 9992043, 9992042, 9992041, 9992040, 9992039, 9992038, 9992037, 9992036, 9992035, 9992034, 9992033, 9992032, 9992031, 9992030, 9992029, 9992028, 9992027, 9992026, 9992025, 9992024, 9992023, 9992022, 9992021, 9992020, 9992019, 9992018, 9992017, 9992016, 9992015, 9992014, 9992013, 9992012, 9992011, 9992010, 9992009, 9992008, 9992007, 9992006, 9992005, 9992004, 9992003, 9992002, 9992001, 9992000, 9991999, 9991998, 9991997, 9991996, 9991995, 9991994, 9991993, 9991992, 9991991, 9991990, 9991989, 9991988, 9991987, 9991986, 9991985, 9991984, 9991983, 9991982, 9991981, 9991980, 9991979, 9991978, 9991977, 9991976, 9991975, 9991974, 9991973, 9991972, 9991971, 9991970, 9991969, 9991968, 9991967, 9991966, 9991965, 9991964, 9991963, 9991962, 9991961, 9991960, 9991959, 9991958, 9991957, 9991956, 9991955, 9991954, 9991953, 9991952, 9991951, 9991950, 9991949, 9991948, 9991947, 9991946, 9991945, 9991944, 9991943, 9991942, 9991941, 9991940, 9991939, 9991938, 9991937, 9991936, 9991935, 9991934, 9991933, 9991932, 9991931, 9991930, 9991929, 9991928, 9991927, 9991926, 9991925, 9991924, 9991923, 9991922, 9991921, 9991920, 9991919, 9991918, 9991917, 9991916, 9991915, 9991914, 9991913, 9991912, 9991911, 9991910, 9991909, 9991908, 9991907, 9991906, 9991905, 9991904, 9991903, 9991902, 9991901, 9991900, 9991899, 9991898, 9991897, 9991896, 9991895, 9991894, 9991893, 9991892, 9991891, 9991890, 9991889, 9991888, 9991887, 9991886, 9991885, 9991884, 9991883, 9991882, 9991881, 9991880, 9991879, 9991878, 9991877, 9991876, 9991875, 9991874, 9991873, 9991872, 9991871, 9991870, 9991869, 9991868, 9991867, 9991866, 9991865, 9991864, 9991863, 9991862, 9991861, 9991860, 9991859, 9991858, 9991857, 9991856, 9991855, 9991854, 9991853, 9991852, 9991851, 9991850, 9991849, 9991848, 9991847, 9991846, 9991845, 9991844, 9991843, 9991842, 9991841, 9991840, 9991839, 9991838, 9991837, 9991836, 9991835, 9991834, 9991833, 9991832, 9991831, 9991830, 9991829, 9991828, 9991827, 9991826, 9991825, 9991824, 9991823, 9991822, 9991821, 9991820, 9991819, 9991818, 9991817, 9991816, 9991815, 9991814, 9991813, 9991812, 9991811, 9991810, 9991809, 9991808, 9991807, 9991806, 9991805, 9991804, 9991803, 9991802, 9991801, 9991800, 9991799, 9991798, 9991797, 9991796, 9991795, 9991794, 9991793, 9991792, 9991791, 9991790, 9991789, 9991788, 9991787, 9991786, 9991785, 9991784, 9991783, 9991782, 9991781, 9991780, 9991779, 9991778, 9991777, 9991776, 9991775, 9991774, 9991773, 9991772, 9991771, 9991770, 9991769, 9991768, 9991767, 9991766, 9991765, 9991764, 9991763, 9991762, 9991761, 9991760, 9991759, 9991758, 9991757, 9991756, 9991755, 9991754, 9991753, 9991752, 9991751, 9991750, 9991749, 9991748, 9991747, 9991746, 9991745, 9991744, 9991743, 9991742, 9991741, 9991740, 9991739, 9991738, 9991737, 9991736, 9991735, 9991734, 9991733, 9991732, 9991731, 9991730, 9991729, 9991728, 9991727, 9991726, 9991725, 9991724, 9991723, 9991722, 9991721, 9991720, 9991719, 9991718, 9991717, 9991716, 9991715, 9991714, 9991713, 9991712, 9991711, 9991710, 9991709, 9991708, 9991707, 9991706, 9991705, 9991704, 9991703, 9991702, 9991701, 9991700, 9991699, 9991698, 9991697, 9991696, 9991695, 9991694, 9991693, 9991692, 9991691, 9991690, 9991689, 9991688, 9991687, 9991686, 9991685, 9991684, 9991683, 9991682, 9991681, 9991680, 9991679, 9991678, 9991677, 9991676, 9991675, 9991674, 9991673, 9991672, 9991671, 9991670, 9991669, 9991668, 9991667, 9991666, 9991665, 9991664, 9991663, 9991662, 9991661, 9991660, 9991659, 9991658, 9991657, 9991656, 9991655, 9991654, 9991653, 9991652, 9991651, 9991650, 9991649, 9991648, 9991647, 9991646, 9991645, 9991644, 9991643, 9991642, 9991641, 9991640, 9991639, 9991638, 9991637, 9991636, 9991635, 9991634, 9991633, 9991632, 9991631, 9991630, 9991629, 9991628, 9991627, 9991626, 9991625, 9991624, 9991623, 9991622, 9991621, 9991620, 9991619, 9991618, 9991617, 9991616, 9991615, 9991614, 9991613, 9991612, 9991611, 9991610, 9991609, 9991608, 9991607, 9991606, 9991605, 9991604, 9991603, 9991602, 9991601, 9991600, 9991599, 9991598, 9991597, 9991596, 9991595, 9991594, 9991593, 9991592, 9991591, 9991590, 9991589, 9991588, 9991587, 9991586, 9991585, 9991584, 9991583, 9991582, 9991581, 9991580, 9991579, 9991578, 9991577, 9991576, 9991575, 9991574, 9991573, 9991572, 9991571, 9991570, 9991569, 9991568, 9991567, 9991566, 9991565, 9991564, 9991563, 9991562, 9991561, 9991560, 9991559, 9991558, 9991557, 9991556, 9991555, 9991554, 9991553, 9991552, 9991551, 9991550, 9991549, 9991548, 9991547, 9991546, 9991545, 9991544, 9991543, 9991542, 9991541, 9991540, 9991539, 9991538, 9991537, 9991536, 9991535, 9991534, 9991533, 9991532, 9991531, 9991530, 9991529, 9991528, 9991527, 9991526, 9991525, 9991524, 9991523, 9991522, 9991521, 9991520, 9991519, 9991518, 9991517, 9991516, 9991515, 9991514, 9991513, 9991512, 9991511, 9991510, 9991509, 9991508, 9991507, 9991506, 9991505, 9991504, 9991503, 9991502, 9991501, 9991500, 9991499, 9991498, 9991497, 9991496, 9991495, 9991494, 9991493, 9991492, 9991491, 9991490, 9991489, 9991488, 9991487, 9991486, 9991485, 9991484, 9991483, 9991482, 9991481, 9991480, 9991479, 9991478, 9991477, 9991476, 9991475, 9991474, 9991473, 9991472, 9991471, 9991470, 9991469, 9991468, 9991467, 9991466, 9991465, 9991464, 9991463, 9991462, 9991461, 9991460, 9991459, 9991458, 9991457, 9991456, 9991455, 9991454, 9991453, 9991452, 9991451, 9991450, 9991449, 9991448, 9991447, 9991446, 9991445, 9991444, 9991443, 9991442, 9991441, 9991440, 9991439, 9991438, 9991437, 9991436, 9991435, 9991434, 9991433, 9991432, 9991431, 9991430, 9991429, 9991428, 9991427, 9991426, 9991425, 9991424, 9991423, 9991422, 9991421, 9991420, 9991419, 9991418, 9991417, 9991416, 9991415, 9991414, 9991413, 9991412, 9991411, 9991410, 9991409, 9991408, 9991407, 9991406, 9991405, 9991404, 9991403, 9991402, 9991401, 9991400, 9991399, 9991398, 9991397, 9991396, 9991395, 9991394, 9991393, 9991392, 9991391, 9991390, 9991389, 9991388, 9991387, 9991386, 9991385, 9991384, 9991383, 9991382, 9991381, 9991380, 9991379, 9991378, 9991377, 9991376, 9991375, 9991374, 9991373, 9991372, 9991371, 9991370, 9991369, 9991368, 9991367, 9991366, 9991365, 9991364, 9991363, 9991362, 9991361, 9991360, 9991359, 9991358, 9991357, 9991356, 9991355, 9991354, 9991353, 9991352, 9991351, 9991350, 9991349, 9991348, 9991347, 9991346, 9991345, 9991344, 9991343, 9991342, 9991341, 9991340, 9991339, 9991338, 9991337, 9991336, 9991335, 9991334, 9991333, 9991332, 9991331, 9991330, 9991329, 9991328, 9991327, 9991326, 9991325, 9991324, 9991323, 9991322, 9991321, 9991320, 9991319, 9991318, 9991317, 9991316, 9991315, 9991314, 9991313, 9991312, 9991311, 9991310, 9991309, 9991308, 9991307, 9991306, 9991305, 9991304, 9991303, 9991302, 9991301, 9991300, 9991299, 9991298, 9991297, 9991296, 9991295, 9991294, 9991293, 9991292, 9991291, 9991290, 9991289, 9991288, 9991287, 9991286, 9991285, 9991284, 9991283, 9991282, 9991281, 9991280, 9991279, 9991278, 9991277, 9991276, 9991275, 9991274, 9991273, 9991272, 9991271, 9991270, 9991269, 9991268, 9991267, 9991266, 9991265, 9991264, 9991263, 9991262, 9991261, 9991260, 9991259, 9991258, 9991257, 9991256, 9991255, 9991254, 9991253, 9991252, 9991251, 9991250, 9991249, 9991248, 9991247, 9991246, 9991245, 9991244, 9991243, 9991242, 9991241, 9991240, 9991239, 9991238, 9991237, 9991236, 9991235, 9991234, 9991233, 9991232, 9991231, 9991230, 9991229, 9991228, 9991227, 9991226, 9991225, 9991224, 9991223, 9991222, 9991221, 9991220, 9991219, 9991218, 9991217, 9991216, 9991215, 9991214, 9991213, 9991212, 9991211, 9991210, 9991209, 9991208, 9991207, 9991206, 9991205, 9991204, 9991203, 9991202, 9991201, 9991200, 9991199, 9991198, 9991197, 9991196, 9991195, 9991194, 9991193, 9991192, 9991191, 9991190, 9991189, 9991188, 9991187, 9991186, 9991185, 9991184, 9991183, 9991182, 9991181, 9991180, 9991179, 9991178, 9991177, 9991176, 9991175, 9991174, 9991173, 9991172, 9991171, 9991170, 9991169, 9991168, 9991167, 9991166, 9991165, 9991164, 9991163, 9991162, 9991161, 9991160, 9991159, 9991158, 9991157, 9991156, 9991155, 9991154, 9991153, 9991152, 9991151, 9991150, 9991149, 9991148, 9991147, 9991146, 9991145, 9991144, 9991143, 9991142, 9991141, 9991140, 9991139, 9991138, 9991137, 9991136, 9991135, 9991134, 9991133, 9991132, 9991131, 9991130, 9991129, 9991128, 9991127, 9991126, 9991125, 9991124, 9991123, 9991122, 9991121, 9991120, 9991119, 9991118, 9991117, 9991116, 9991115, 9991114, 9991113, 9991112, 9991111, 9991110, 9991109, 9991108, 9991107, 9991106, 9991105, 9991104, 9991103, 9991102, 9991101, 9991100, 9991099, 9991098, 9991097, 9991096, 9991095, 9991094, 9991093, 9991092, 9991091, 9991090, 9991089, 9991088, 9991087, 9991086, 9991085, 9991084, 9991083, 9991082, 9991081, 9991080, 9991079, 9991078, 9991077, 9991076, 9991075, 9991074, 9991073, 9991072, 9991071, 9991070, 9991069, 9991068, 9991067, 9991066, 9991065, 9991064, 9991063, 9991062, 9991061, 9991060, 9991059, 9991058, 9991057, 9991056, 9991055, 9991054, 9991053, 9991052, 9991051, 9991050, 9991049, 9991048, 9991047, 9991046, 9991045, 9991044, 9991043, 9991042, 9991041, 9991040, 9991039, 9991038, 9991037, 9991036, 9991035, 9991034, 9991033, 9991032, 9991031, 9991030, 9991029, 9991028, 9991027, 9991026, 9991025, 9991024, 9991023, 9991022, 9991021, 9991020, 9991019, 9991018, 9991017, 9991016, 9991015, 9991014, 9991013, 9991012, 9991011, 9991010, 9991009, 9991008, 9991007, 9991006, 9991005, 9991004, 9991003, 9991002, 9991001, 9991000, 9990999, 9990998, 9990997, 9990996, 9990995, 9990994, 9990993, 9990992, 9990991, 9990990, 9990989, 9990988, 9990987, 9990986, 9990985, 9990984, 9990983, 9990982, 9990981, 9990980, 9990979, 9990978, 9990977, 9990976, 9990975, 9990974, 9990973, 9990972, 9990971, 9990970, 9990969, 9990968, 9990967, 9990966, 9990965, 9990964, 9990963, 9990962, 9990961, 9990960, 9990959, 9990958, 9990957, 9990956, 9990955, 9990954, 9990953, 9990952, 9990951, 9990950, 9990949, 9990948, 9990947, 9990946, 9990945, 9990944, 9990943, 9990942, 9990941, 9990940, 9990939, 9990938, 9990937, 9990936, 9990935, 9990934, 9990933, 9990932, 9990931, 9990930, 9990929, 9990928, 9990927, 9990926, 9990925, 9990924, 9990923, 9990922, 9990921, 9990920, 9990919, 9990918, 9990917, 9990916, 9990915, 9990914, 9990913, 9990912, 9990911, 9990910, 9990909, 9990908, 9990907, 9990906, 9990905, 9990904, 9990903, 9990902, 9990901, 9990900, 9990899, 9990898, 9990897, 9990896, 9990895, 9990894, 9990893, 9990892, 9990891, 9990890, 9990889, 9990888, 9990887, 9990886, 9990885, 9990884, 9990883, 9990882, 9990881, 9990880, 9990879, 9990878, 9990877, 9990876, 9990875, 9990874, 9990873, 9990872, 9990871, 9990870, 9990869, 9990868, 9990867, 9990866, 9990865, 9990864, 9990863, 9990862, 9990861, 9990860, 9990859, 9990858, 9990857, 9990856, 9990855, 9990854, 9990853, 9990852, 9990851, 9990850, 9990849, 9990848, 9990847, 9990846, 9990845, 9990844, 9990843, 9990842, 9990841, 9990840, 9990839, 9990838, 9990837, 9990836, 9990835, 9990834, 9990833, 9990832, 9990831, 9990830, 9990829, 9990828, 9990827, 9990826, 9990825, 9990824, 9990823, 9990822, 9990821, 9990820, 9990819, 9990818, 9990817, 9990816, 9990815, 9990814, 9990813, 9990812, 9990811, 9990810, 9990809, 9990808, 9990807, 9990806, 9990805, 9990804, 9990803, 9990802, 9990801, 9990800, 9990799, 9990798, 9990797, 9990796, 9990795, 9990794, 9990793, 9990792, 9990791, 9990790, 9990789, 9990788, 9990787, 9990786, 9990785, 9990784, 9990783, 9990782, 9990781, 9990780, 9990779, 9990778, 9990777, 9990776, 9990775, 9990774, 9990773, 9990772, 9990771, 9990770, 9990769, 9990768, 9990767, 9990766, 9990765, 9990764, 9990763, 9990762, 9990761, 9990760, 9990759, 9990758, 9990757, 9990756, 9990755, 9990754, 9990753, 9990752, 9990751, 9990750, 9990749, 9990748, 9990747, 9990746, 9990745, 9990744, 9990743, 9990742, 9990741, 9990740, 9990739, 9990738, 9990737, 9990736, 9990735, 9990734, 9990733, 9990732, 9990731, 9990730, 9990729, 9990728, 9990727, 9990726, 9990725, 9990724, 9990723, 9990722, 9990721, 9990720, 9990719, 9990718, 9990717, 9990716, 9990715, 9990714, 9990713, 9990712, 9990711, 9990710, 9990709, 9990708, 9990707, 9990706, 9990705, 9990704, 9990703, 9990702, 9990701, 9990700, 9990699, 9990698, 9990697, 9990696, 9990695, 9990694, 9990693, 9990692, 9990691, 9990690, 9990689, 9990688, 9990687, 9990686, 9990685, 9990684, 9990683, 9990682, 9990681, 9990680, 9990679, 9990678, 9990677, 9990676, 9990675, 9990674, 9990673, 9990672, 9990671, 9990670, 9990669, 9990668, 9990667, 9990666, 9990665, 9990664, 9990663, 9990662, 9990661, 9990660, 9990659, 9990658, 9990657, 9990656, 9990655, 9990654, 9990653, 9990652, 9990651, 9990650, 9990649, 9990648, 9990647, 9990646, 9990645, 9990644, 9990643, 9990642, 9990641, 9990640, 9990639, 9990638, 9990637, 9990636, 9990635, 9990634, 9990633, 9990632, 9990631, 9990630, 9990629, 9990628, 9990627, 9990626, 9990625, 9990624, 9990623, 9990622, 9990621, 9990620, 9990619, 9990618, 9990617, 9990616, 9990615, 9990614, 9990613, 9990612, 9990611, 9990610, 9990609, 9990608, 9990607, 9990606, 9990605, 9990604, 9990603, 9990602, 9990601, 9990600, 9990599, 9990598, 9990597, 9990596, 9990595, 9990594, 9990593, 9990592, 9990591, 9990590, 9990589, 9990588, 9990587, 9990586, 9990585, 9990584, 9990583, 9990582, 9990581, 9990580, 9990579, 9990578, 9990577, 9990576, 9990575, 9990574, 9990573, 9990572, 9990571, 9990570, 9990569, 9990568, 9990567, 9990566, 9990565, 9990564, 9990563, 9990562, 9990561, 9990560, 9990559, 9990558, 9990557, 9990556, 9990555, 9990554, 9990553, 9990552, 9990551, 9990550, 9990549, 9990548, 9990547, 9990546, 9990545, 9990544, 9990543, 9990542, 9990541, 9990540, 9990539, 9990538, 9990537, 9990536, 9990535, 9990534, 9990533, 9990532, 9990531, 9990530, 9990529, 9990528, 9990527, 9990526, 9990525, 9990524, 9990523, 9990522, 9990521, 9990520, 9990519, 9990518, 9990517, 9990516, 9990515, 9990514, 9990513, 9990512, 9990511, 9990510, 9990509, 9990508, 9990507, 9990506, 9990505, 9990504, 9990503, 9990502, 9990501, 9990500, 9990499, 9990498, 9990497, 9990496, 9990495, 9990494, 9990493, 9990492, 9990491, 9990490, 9990489, 9990488, 9990487, 9990486, 9990485, 9990484, 9990483, 9990482, 9990481, 9990480, 9990479, 9990478, 9990477, 9990476, 9990475, 9990474, 9990473, 9990472, 9990471, 9990470, 9990469, 9990468, 9990467, 9990466, 9990465, 9990464, 9990463, 9990462, 9990461, 9990460, 9990459, 9990458, 9990457, 9990456, 9990455, 9990454, 9990453, 9990452, 9990451, 9990450, 9990449, 9990448, 9990447, 9990446, 9990445, 9990444, 9990443, 9990442, 9990441, 9990440, 9990439, 9990438, 9990437, 9990436, 9990435, 9990434, 9990433, 9990432, 9990431, 9990430, 9990429, 9990428, 9990427, 9990426, 9990425, 9990424, 9990423, 9990422, 9990421, 9990420, 9990419, 9990418, 9990417, 9990416, 9990415, 9990414, 9990413, 9990412, 9990411, 9990410, 9990409, 9990408, 9990407, 9990406, 9990405, 9990404, 9990403, 9990402, 9990401, 9990400, 9990399, 9990398, 9990397, 9990396, 9990395, 9990394, 9990393, 9990392, 9990391, 9990390, 9990389, 9990388, 9990387, 9990386, 9990385, 9990384, 9990383, 9990382, 9990381, 9990380, 9990379, 9990378, 9990377, 9990376, 9990375, 9990374, 9990373, 9990372, 9990371, 9990370, 9990369, 9990368, 9990367, 9990366, 9990365, 9990364, 9990363, 9990362, 9990361, 9990360, 9990359, 9990358, 9990357, 9990356, 9990355, 9990354, 9990353, 9990352, 9990351, 9990350, 9990349, 9990348, 9990347, 9990346, 9990345, 9990344, 9990343, 9990342, 9990341, 9990340, 9990339, 9990338, 9990337, 9990336, 9990335, 9990334, 9990333, 9990332, 9990331, 9990330, 9990329, 9990328, 9990327, 9990326, 9990325, 9990324, 9990323, 9990322, 9990321, 9990320, 9990319, 9990318, 9990317, 9990316, 9990315, 9990314, 9990313, 9990312, 9990311, 9990310, 9990309, 9990308, 9990307, 9990306, 9990305, 9990304, 9990303, 9990302, 9990301, 9990300, 9990299, 9990298, 9990297, 9990296, 9990295, 9990294, 9990293, 9990292, 9990291, 9990290, 9990289, 9990288, 9990287, 9990286, 9990285, 9990284, 9990283, 9990282, 9990281, 9990280, 9990279, 9990278, 9990277, 9990276, 9990275, 9990274, 9990273, 9990272, 9990271, 9990270, 9990269, 9990268, 9990267, 9990266, 9990265, 9990264, 9990263, 9990262, 9990261, 9990260, 9990259, 9990258, 9990257, 9990256, 9990255, 9990254, 9990253, 9990252, 9990251, 9990250, 9990249, 9990248, 9990247, 9990246, 9990245, 9990244, 9990243, 9990242, 9990241, 9990240, 9990239, 9990238, 9990237, 9990236, 9990235, 9990234, 9990233, 9990232, 9990231, 9990230, 9990229, 9990228, 9990227, 9990226, 9990225, 9990224, 9990223, 9990222, 9990221, 9990220, 9990219, 9990218, 9990217, 9990216, 9990215, 9990214, 9990213, 9990212, 9990211, 9990210, 9990209, 9990208, 9990207, 9990206, 9990205, 9990204, 9990203, 9990202, 9990201, 9990200, 9990199, 9990198, 9990197, 9990196, 9990195, 9990194, 9990193, 9990192, 9990191, 9990190, 9990189, 9990188, 9990187, 9990186, 9990185, 9990184, 9990183, 9990182, 9990181, 9990180, 9990179, 9990178, 9990177, 9990176, 9990175, 9990174, 9990173, 9990172, 9990171, 9990170, 9990169, 9990168, 9990167, 9990166, 9990165, 9990164, 9990163, 9990162, 9990161, 9990160, 9990159, 9990158, 9990157, 9990156, 9990155, 9990154, 9990153, 9990152, 9990151, 9990150, 9990149, 9990148, 9990147, 9990146, 9990145, 9990144, 9990143, 9990142, 9990141, 9990140, 9990139, 9990138, 9990137, 9990136, 9990135, 9990134, 9990133, 9990132, 9990131, 9990130, 9990129, 9990128, 9990127, 9990126, 9990125, 9990124, 9990123, 9990122, 9990121, 9990120, 9990119, 9990118, 9990117, 9990116, 9990115, 9990114, 9990113, 9990112, 9990111, 9990110, 9990109, 9990108, 9990107, 9990106, 9990105, 9990104, 9990103, 9990102, 9990101, 9990100, 9990099, 9990098, 9990097, 9990096, 9990095, 9990094, 9990093, 9990092, 9990091, 9990090, 9990089, 9990088, 9990087, 9990086, 9990085, 9990084, 9990083, 9990082, 9990081, 9990080, 9990079, 9990078, 9990077, 9990076, 9990075, 9990074, 9990073, 9990072, 9990071, 9990070, 9990069, 9990068, 9990067, 9990066, 9990065, 9990064, 9990063, 9990062, 9990061, 9990060, 9990059, 9990058, 9990057, 9990056, 9990055, 9990054, 9990053, 9990052, 9990051, 9990050, 9990049, 9990048, 9990047, 9990046, 9990045, 9990044, 9990043, 9990042, 9990041, 9990040, 9990039, 9990038, 9990037, 9990036, 9990035, 9990034, 9990033, 9990032, 9990031, 9990030, 9990029, 9990028, 9990027, 9990026, 9990025, 9990024, 9990023, 9990022, 9990021, 9990020, 9990019, 9990018, 9990017, 9990016, 9990015, 9990014, 9990013, 9990012, 9990011, 9990010, 9990009, 9990008, 9990007, 9990006, 9990005, 9990004, 9990003, 9990002, 9990001, 9990000, 9989999, 9989998, 9989997, 9989996, 9989995, 9989994, 9989993, 9989992, 9989991, 9989990, 9989989, 9989988, 9989987, 9989986, 9989985, 9989984, 9989983, 9989982, 9989981, 9989980, 9989979, 9989978, 9989977, 9989976, 9989975, 9989974, 9989973, 9989972, 9989971, 9989970, 9989969, 9989968, 9989967, 9989966, 9989965, 9989964, 9989963, 9989962, 9989961, 9989960, 9989959, 9989958, 9989957, 9989956, 9989955, 9989954, 9989953, 9989952, 9989951, 9989950, 9989949, 9989948, 9989947, 9989946, 9989945, 9989944, 9989943, 9989942, 9989941, 9989940, 9989939, 9989938, 9989937, 9989936, 9989935, 9989934, 9989933, 9989932, 9989931, 9989930, 9989929, 9989928, 9989927, 9989926, 9989925, 9989924, 9989923, 9989922, 9989921, 9989920, 9989919, 9989918, 9989917, 9989916, 9989915, 9989914, 9989913, 9989912, 9989911, 9989910, 9989909, 9989908, 9989907, 9989906, 9989905, 9989904, 9989903, 9989902, 9989901, 9989900, 9989899, 9989898, 9989897, 9989896, 9989895, 9989894, 9989893, 9989892, 9989891, 9989890, 9989889, 9989888, 9989887, 9989886, 9989885, 9989884, 9989883, 9989882, 9989881, 9989880, 9989879, 9989878, 9989877, 9989876, 9989875, 9989874, 9989873, 9989872, 9989871, 9989870, 9989869, 9989868, 9989867, 9989866, 9989865, 9989864, 9989863, 9989862, 9989861, 9989860, 9989859, 9989858, 9989857, 9989856, 9989855, 9989854, 9989853, 9989852, 9989851, 9989850, 9989849, 9989848, 9989847, 9989846, 9989845, 9989844, 9989843, 9989842, 9989841, 9989840, 9989839, 9989838, 9989837, 9989836, 9989835, 9989834, 9989833, 9989832, 9989831, 9989830, 9989829, 9989828, 9989827, 9989826, 9989825, 9989824, 9989823, 9989822, 9989821, 9989820, 9989819, 9989818, 9989817, 9989816, 9989815, 9989814, 9989813, 9989812, 9989811, 9989810, 9989809, 9989808, 9989807, 9989806, 9989805, 9989804, 9989803, 9989802, 9989801, 9989800, 9989799, 9989798, 9989797, 9989796, 9989795, 9989794, 9989793, 9989792, 9989791, 9989790, 9989789, 9989788, 9989787, 9989786, 9989785, 9989784, 9989783, 9989782, 9989781, 9989780, 9989779, 9989778, 9989777, 9989776, 9989775, 9989774, 9989773, 9989772, 9989771, 9989770, 9989769, 9989768, 9989767, 9989766, 9989765, 9989764, 9989763, 9989762, 9989761, 9989760, 9989759, 9989758, 9989757, 9989756, 9989755, 9989754, 9989753, 9989752, 9989751, 9989750, 9989749, 9989748, 9989747, 9989746, 9989745, 9989744, 9989743, 9989742, 9989741, 9989740, 9989739, 9989738, 9989737, 9989736, 9989735, 9989734, 9989733, 9989732, 9989731, 9989730, 9989729, 9989728, 9989727, 9989726, 9989725, 9989724, 9989723, 9989722, 9989721, 9989720, 9989719, 9989718, 9989717, 9989716, 9989715, 9989714, 9989713, 9989712, 9989711, 9989710, 9989709, 9989708, 9989707, 9989706, 9989705, 9989704, 9989703, 9989702, 9989701, 9989700, 9989699, 9989698, 9989697, 9989696, 9989695, 9989694, 9989693, 9989692, 9989691, 9989690, 9989689, 9989688, 9989687, 9989686, 9989685, 9989684, 9989683, 9989682, 9989681, 9989680, 9989679, 9989678, 9989677, 9989676, 9989675, 9989674, 9989673, 9989672, 9989671, 9989670, 9989669, 9989668, 9989667, 9989666, 9989665, 9989664, 9989663, 9989662, 9989661, 9989660, 9989659, 9989658, 9989657, 9989656, 9989655, 9989654, 9989653, 9989652, 9989651, 9989650, 9989649, 9989648, 9989647, 9989646, 9989645, 9989644, 9989643, 9989642, 9989641, 9989640, 9989639, 9989638, 9989637, 9989636, 9989635, 9989634, 9989633, 9989632, 9989631, 9989630, 9989629, 9989628, 9989627, 9989626, 9989625, 9989624, 9989623, 9989622, 9989621, 9989620, 9989619, 9989618, 9989617, 9989616, 9989615, 9989614, 9989613, 9989612, 9989611, 9989610, 9989609, 9989608, 9989607, 9989606, 9989605, 9989604, 9989603, 9989602, 9989601, 9989600, 9989599, 9989598, 9989597, 9989596, 9989595, 9989594, 9989593, 9989592, 9989591, 9989590, 9989589, 9989588, 9989587, 9989586, 9989585, 9989584, 9989583, 9989582, 9989581, 9989580, 9989579, 9989578, 9989577, 9989576, 9989575, 9989574, 9989573, 9989572, 9989571, 9989570, 9989569, 9989568, 9989567, 9989566, 9989565, 9989564, 9989563, 9989562, 9989561, 9989560, 9989559, 9989558, 9989557, 9989556, 9989555, 9989554, 9989553, 9989552, 9989551, 9989550, 9989549, 9989548, 9989547, 9989546, 9989545, 9989544, 9989543, 9989542, 9989541, 9989540, 9989539, 9989538, 9989537, 9989536, 9989535, 9989534, 9989533, 9989532, 9989531, 9989530, 9989529, 9989528, 9989527, 9989526, 9989525, 9989524, 9989523, 9989522, 9989521, 9989520, 9989519, 9989518, 9989517, 9989516, 9989515, 9989514, 9989513, 9989512, 9989511, 9989510, 9989509, 9989508, 9989507, 9989506, 9989505, 9989504, 9989503, 9989502, 9989501, 9989500, 9989499, 9989498, 9989497, 9989496, 9989495, 9989494, 9989493, 9989492, 9989491, 9989490, 9989489, 9989488, 9989487, 9989486, 9989485, 9989484, 9989483, 9989482, 9989481, 9989480, 9989479, 9989478, 9989477, 9989476, 9989475, 9989474, 9989473, 9989472, 9989471, 9989470, 9989469, 9989468, 9989467, 9989466, 9989465, 9989464, 9989463, 9989462, 9989461, 9989460, 9989459, 9989458, 9989457, 9989456, 9989455, 9989454, 9989453, 9989452, 9989451, 9989450, 9989449, 9989448, 9989447, 9989446, 9989445, 9989444, 9989443, 9989442, 9989441, 9989440, 9989439, 9989438, 9989437, 9989436, 9989435, 9989434, 9989433, 9989432, 9989431, 9989430, 9989429, 9989428, 9989427, 9989426, 9989425, 9989424, 9989423, 9989422, 9989421, 9989420, 9989419, 9989418, 9989417, 9989416, 9989415, 9989414, 9989413, 9989412, 9989411, 9989410, 9989409, 9989408, 9989407, 9989406, 9989405, 9989404, 9989403, 9989402, 9989401, 9989400, 9989399, 9989398, 9989397, 9989396, 9989395, 9989394, 9989393, 9989392, 9989391, 9989390, 9989389, 9989388, 9989387, 9989386, 9989385, 9989384, 9989383, 9989382, 9989381, 9989380, 9989379, 9989378, 9989377, 9989376, 9989375, 9989374, 9989373, 9989372, 9989371, 9989370, 9989369, 9989368, 9989367, 9989366, 9989365, 9989364, 9989363, 9989362, 9989361, 9989360, 9989359, 9989358, 9989357, 9989356, 9989355, 9989354, 9989353, 9989352, 9989351, 9989350, 9989349, 9989348, 9989347, 9989346, 9989345, 9989344, 9989343, 9989342, 9989341, 9989340, 9989339, 9989338, 9989337, 9989336, 9989335, 9989334, 9989333, 9989332, 9989331, 9989330, 9989329, 9989328, 9989327, 9989326, 9989325, 9989324, 9989323, 9989322, 9989321, 9989320, 9989319, 9989318, 9989317, 9989316, 9989315, 9989314, 9989313, 9989312, 9989311, 9989310, 9989309, 9989308, 9989307, 9989306, 9989305, 9989304, 9989303, 9989302, 9989301, 9989300, 9989299, 9989298, 9989297, 9989296, 9989295, 9989294, 9989293, 9989292, 9989291, 9989290, 9989289, 9989288, 9989287, 9989286, 9989285, 9989284, 9989283, 9989282, 9989281, 9989280, 9989279, 9989278, 9989277, 9989276, 9989275, 9989274, 9989273, 9989272, 9989271, 9989270, 9989269, 9989268, 9989267, 9989266, 9989265, 9989264, 9989263, 9989262, 9989261, 9989260, 9989259, 9989258, 9989257, 9989256, 9989255, 9989254, 9989253, 9989252, 9989251, 9989250, 9989249, 9989248, 9989247, 9989246, 9989245, 9989244, 9989243, 9989242, 9989241, 9989240, 9989239, 9989238, 9989237, 9989236, 9989235, 9989234, 9989233, 9989232, 9989231, 9989230, 9989229, 9989228, 9989227, 9989226, 9989225, 9989224, 9989223, 9989222, 9989221, 9989220, 9989219, 9989218, 9989217, 9989216, 9989215, 9989214, 9989213, 9989212, 9989211, 9989210, 9989209, 9989208, 9989207, 9989206, 9989205, 9989204, 9989203, 9989202, 9989201, 9989200, 9989199, 9989198, 9989197, 9989196, 9989195, 9989194, 9989193, 9989192, 9989191, 9989190, 9989189, 9989188, 9989187, 9989186, 9989185, 9989184, 9989183, 9989182, 9989181, 9989180, 9989179, 9989178, 9989177, 9989176, 9989175, 9989174, 9989173, 9989172, 9989171, 9989170, 9989169, 9989168, 9989167, 9989166, 9989165, 9989164, 9989163, 9989162, 9989161, 9989160, 9989159, 9989158, 9989157, 9989156, 9989155, 9989154, 9989153, 9989152, 9989151, 9989150, 9989149, 9989148, 9989147, 9989146, 9989145, 9989144, 9989143, 9989142, 9989141, 9989140, 9989139, 9989138, 9989137, 9989136, 9989135, 9989134, 9989133, 9989132, 9989131, 9989130, 9989129, 9989128, 9989127, 9989126, 9989125, 9989124, 9989123, 9989122, 9989121, 9989120, 9989119, 9989118, 9989117, 9989116, 9989115, 9989114, 9989113, 9989112, 9989111, 9989110, 9989109, 9989108, 9989107, 9989106, 9989105, 9989104, 9989103, 9989102, 9989101, 9989100, 9989099, 9989098, 9989097, 9989096, 9989095, 9989094, 9989093, 9989092, 9989091, 9989090, 9989089, 9989088, 9989087, 9989086, 9989085, 9989084, 9989083, 9989082, 9989081, 9989080, 9989079, 9989078, 9989077, 9989076, 9989075, 9989074, 9989073, 9989072, 9989071, 9989070, 9989069, 9989068, 9989067, 9989066, 9989065, 9989064, 9989063, 9989062, 9989061, 9989060, 9989059, 9989058, 9989057, 9989056, 9989055, 9989054, 9989053, 9989052, 9989051, 9989050, 9989049, 9989048, 9989047, 9989046, 9989045, 9989044, 9989043, 9989042, 9989041, 9989040, 9989039, 9989038, 9989037, 9989036, 9989035, 9989034, 9989033, 9989032, 9989031, 9989030, 9989029, 9989028, 9989027, 9989026, 9989025, 9989024, 9989023, 9989022, 9989021, 9989020, 9989019, 9989018, 9989017, 9989016, 9989015, 9989014, 9989013, 9989012, 9989011, 9989010, 9989009, 9989008, 9989007, 9989006, 9989005, 9989004, 9989003, 9989002, 9989001, 9989000, 9988999, 9988998, 9988997, 9988996, 9988995, 9988994, 9988993, 9988992, 9988991, 9988990, 9988989, 9988988, 9988987, 9988986, 9988985, 9988984, 9988983, 9988982, 9988981, 9988980, 9988979, 9988978, 9988977, 9988976, 9988975, 9988974, 9988973, 9988972, 9988971, 9988970, 9988969, 9988968, 9988967, 9988966, 9988965, 9988964, 9988963, 9988962, 9988961, 9988960, 9988959, 9988958, 9988957, 9988956, 9988955, 9988954, 9988953, 9988952, 9988951, 9988950, 9988949, 9988948, 9988947, 9988946, 9988945, 9988944, 9988943, 9988942, 9988941, 9988940, 9988939, 9988938, 9988937, 9988936, 9988935, 9988934, 9988933, 9988932, 9988931, 9988930, 9988929, 9988928, 9988927, 9988926, 9988925, 9988924, 9988923, 9988922, 9988921, 9988920, 9988919, 9988918, 9988917, 9988916, 9988915, 9988914, 9988913, 9988912, 9988911, 9988910, 9988909, 9988908, 9988907, 9988906, 9988905, 9988904, 9988903, 9988902, 9988901, 9988900, 9988899, 9988898, 9988897, 9988896, 9988895, 9988894, 9988893, 9988892, 9988891, 9988890, 9988889, 9988888, 9988887, 9988886, 9988885, 9988884, 9988883, 9988882, 9988881, 9988880, 9988879, 9988878, 9988877, 9988876, 9988875, 9988874, 9988873, 9988872, 9988871, 9988870, 9988869, 9988868, 9988867, 9988866, 9988865, 9988864, 9988863, 9988862, 9988861, 9988860, 9988859, 9988858, 9988857, 9988856, 9988855, 9988854, 9988853, 9988852, 9988851, 9988850, 9988849, 9988848, 9988847, 9988846, 9988845, 9988844, 9988843, 9988842, 9988841, 9988840, 9988839, 9988838, 9988837, 9988836, 9988835, 9988834, 9988833, 9988832, 9988831, 9988830, 9988829, 9988828, 9988827, 9988826, 9988825, 9988824, 9988823, 9988822, 9988821, 9988820, 9988819, 9988818, 9988817, 9988816, 9988815, 9988814, 9988813, 9988812, 9988811, 9988810, 9988809, 9988808, 9988807, 9988806, 9988805, 9988804, 9988803, 9988802, 9988801, 9988800, 9988799, 9988798, 9988797, 9988796, 9988795, 9988794, 9988793, 9988792, 9988791, 9988790, 9988789, 9988788, 9988787, 9988786, 9988785, 9988784, 9988783, 9988782, 9988781, 9988780, 9988779, 9988778, 9988777, 9988776, 9988775, 9988774, 9988773, 9988772, 9988771, 9988770, 9988769, 9988768, 9988767, 9988766, 9988765, 9988764, 9988763, 9988762, 9988761, 9988760, 9988759, 9988758, 9988757, 9988756, 9988755, 9988754, 9988753, 9988752, 9988751, 9988750, 9988749, 9988748, 9988747, 9988746, 9988745, 9988744, 9988743, 9988742, 9988741, 9988740, 9988739, 9988738, 9988737, 9988736, 9988735, 9988734, 9988733, 9988732, 9988731, 9988730, 9988729, 9988728, 9988727, 9988726, 9988725, 9988724, 9988723, 9988722, 9988721, 9988720, 9988719, 9988718, 9988717, 9988716, 9988715, 9988714, 9988713, 9988712, 9988711, 9988710, 9988709, 9988708, 9988707, 9988706, 9988705, 9988704, 9988703, 9988702, 9988701, 9988700, 9988699, 9988698, 9988697, 9988696, 9988695, 9988694, 9988693, 9988692, 9988691, 9988690, 9988689, 9988688, 9988687, 9988686, 9988685, 9988684, 9988683, 9988682, 9988681, 9988680, 9988679, 9988678, 9988677, 9988676, 9988675, 9988674, 9988673, 9988672, 9988671, 9988670, 9988669, 9988668, 9988667, 9988666, 9988665, 9988664, 9988663, 9988662, 9988661, 9988660, 9988659, 9988658, 9988657, 9988656, 9988655, 9988654, 9988653, 9988652, 9988651, 9988650, 9988649, 9988648, 9988647, 9988646, 9988645, 9988644, 9988643, 9988642, 9988641, 9988640, 9988639, 9988638, 9988637, 9988636, 9988635, 9988634, 9988633, 9988632, 9988631, 9988630, 9988629, 9988628, 9988627, 9988626, 9988625, 9988624, 9988623, 9988622, 9988621, 9988620, 9988619, 9988618, 9988617, 9988616, 9988615, 9988614, 9988613, 9988612, 9988611, 9988610, 9988609, 9988608, 9988607, 9988606, 9988605, 9988604, 9988603, 9988602, 9988601, 9988600, 9988599, 9988598, 9988597, 9988596, 9988595, 9988594, 9988593, 9988592, 9988591, 9988590, 9988589, 9988588, 9988587, 9988586, 9988585, 9988584, 9988583, 9988582, 9988581, 9988580, 9988579, 9988578, 9988577, 9988576, 9988575, 9988574, 9988573, 9988572, 9988571, 9988570, 9988569, 9988568, 9988567, 9988566, 9988565, 9988564, 9988563, 9988562, 9988561, 9988560, 9988559, 9988558, 9988557, 9988556, 9988555, 9988554, 9988553, 9988552, 9988551, 9988550, 9988549, 9988548, 9988547, 9988546, 9988545, 9988544, 9988543, 9988542, 9988541, 9988540, 9988539, 9988538, 9988537, 9988536, 9988535, 9988534, 9988533, 9988532, 9988531, 9988530, 9988529, 9988528, 9988527, 9988526, 9988525, 9988524, 9988523, 9988522, 9988521, 9988520, 9988519, 9988518, 9988517, 9988516, 9988515, 9988514, 9988513, 9988512, 9988511, 9988510, 9988509, 9988508, 9988507, 9988506, 9988505, 9988504, 9988503, 9988502, 9988501, 9988500, 9988499, 9988498, 9988497, 9988496, 9988495, 9988494, 9988493, 9988492, 9988491, 9988490, 9988489, 9988488, 9988487, 9988486, 9988485, 9988484, 9988483, 9988482, 9988481, 9988480, 9988479, 9988478, 9988477, 9988476, 9988475, 9988474, 9988473, 9988472, 9988471, 9988470, 9988469, 9988468, 9988467, 9988466, 9988465, 9988464, 9988463, 9988462, 9988461, 9988460, 9988459, 9988458, 9988457, 9988456, 9988455, 9988454, 9988453, 9988452, 9988451, 9988450, 9988449, 9988448, 9988447, 9988446, 9988445, 9988444, 9988443, 9988442, 9988441, 9988440, 9988439, 9988438, 9988437, 9988436, 9988435, 9988434, 9988433, 9988432, 9988431, 9988430, 9988429, 9988428, 9988427, 9988426, 9988425, 9988424, 9988423, 9988422, 9988421, 9988420, 9988419, 9988418, 9988417, 9988416, 9988415, 9988414, 9988413, 9988412, 9988411, 9988410, 9988409, 9988408, 9988407, 9988406, 9988405, 9988404, 9988403, 9988402, 9988401, 9988400, 9988399, 9988398, 9988397, 9988396, 9988395, 9988394, 9988393, 9988392, 9988391, 9988390, 9988389, 9988388, 9988387, 9988386, 9988385, 9988384, 9988383, 9988382, 9988381, 9988380, 9988379, 9988378, 9988377, 9988376, 9988375, 9988374, 9988373, 9988372, 9988371, 9988370, 9988369, 9988368, 9988367, 9988366, 9988365, 9988364, 9988363, 9988362, 9988361, 9988360, 9988359, 9988358, 9988357, 9988356, 9988355, 9988354, 9988353, 9988352, 9988351, 9988350, 9988349, 9988348, 9988347, 9988346, 9988345, 9988344, 9988343, 9988342, 9988341, 9988340, 9988339, 9988338, 9988337, 9988336, 9988335, 9988334, 9988333, 9988332, 9988331, 9988330, 9988329, 9988328, 9988327, 9988326, 9988325, 9988324, 9988323, 9988322, 9988321, 9988320, 9988319, 9988318, 9988317, 9988316, 9988315, 9988314, 9988313, 9988312, 9988311, 9988310, 9988309, 9988308, 9988307, 9988306, 9988305, 9988304, 9988303, 9988302, 9988301, 9988300, 9988299, 9988298, 9988297, 9988296, 9988295, 9988294, 9988293, 9988292, 9988291, 9988290, 9988289, 9988288, 9988287, 9988286, 9988285, 9988284, 9988283, 9988282, 9988281, 9988280, 9988279, 9988278, 9988277, 9988276, 9988275, 9988274, 9988273, 9988272, 9988271, 9988270, 9988269, 9988268, 9988267, 9988266, 9988265, 9988264, 9988263, 9988262, 9988261, 9988260, 9988259, 9988258, 9988257, 9988256, 9988255, 9988254, 9988253, 9988252, 9988251, 9988250, 9988249, 9988248, 9988247, 9988246, 9988245, 9988244, 9988243, 9988242, 9988241, 9988240, 9988239, 9988238, 9988237, 9988236, 9988235, 9988234, 9988233, 9988232, 9988231, 9988230, 9988229, 9988228, 9988227, 9988226, 9988225, 9988224, 9988223, 9988222, 9988221, 9988220, 9988219, 9988218, 9988217, 9988216, 9988215, 9988214, 9988213, 9988212, 9988211, 9988210, 9988209, 9988208, 9988207, 9988206, 9988205, 9988204, 9988203, 9988202, 9988201, 9988200, 9988199, 9988198, 9988197, 9988196, 9988195, 9988194, 9988193, 9988192, 9988191, 9988190, 9988189, 9988188, 9988187, 9988186, 9988185, 9988184, 9988183, 9988182, 9988181, 9988180, 9988179, 9988178, 9988177, 9988176, 9988175, 9988174, 9988173, 9988172, 9988171, 9988170, 9988169, 9988168, 9988167, 9988166, 9988165, 9988164, 9988163, 9988162, 9988161, 9988160, 9988159, 9988158, 9988157, 9988156, 9988155, 9988154, 9988153, 9988152, 9988151, 9988150, 9988149, 9988148, 9988147, 9988146, 9988145, 9988144, 9988143, 9988142, 9988141, 9988140, 9988139, 9988138, 9988137, 9988136, 9988135, 9988134, 9988133, 9988132, 9988131, 9988130, 9988129, 9988128, 9988127, 9988126, 9988125, 9988124, 9988123, 9988122, 9988121, 9988120, 9988119, 9988118, 9988117, 9988116, 9988115, 9988114, 9988113, 9988112, 9988111, 9988110, 9988109, 9988108, 9988107, 9988106, 9988105, 9988104, 9988103, 9988102, 9988101, 9988100, 9988099, 9988098, 9988097, 9988096, 9988095, 9988094, 9988093, 9988092, 9988091, 9988090, 9988089, 9988088, 9988087, 9988086, 9988085, 9988084, 9988083, 9988082, 9988081, 9988080, 9988079, 9988078, 9988077, 9988076, 9988075, 9988074, 9988073, 9988072, 9988071, 9988070, 9988069, 9988068, 9988067, 9988066, 9988065, 9988064, 9988063, 9988062, 9988061, 9988060, 9988059, 9988058, 9988057, 9988056, 9988055, 9988054, 9988053, 9988052, 9988051, 9988050, 9988049, 9988048, 9988047, 9988046, 9988045, 9988044, 9988043, 9988042, 9988041, 9988040, 9988039, 9988038, 9988037, 9988036, 9988035, 9988034, 9988033, 9988032, 9988031, 9988030, 9988029, 9988028, 9988027, 9988026, 9988025, 9988024, 9988023, 9988022, 9988021, 9988020, 9988019, 9988018, 9988017, 9988016, 9988015, 9988014, 9988013, 9988012, 9988011, 9988010, 9988009, 9988008, 9988007, 9988006, 9988005, 9988004, 9988003, 9988002, 9988001, 9988000, 9987999, 9987998, 9987997, 9987996, 9987995, 9987994, 9987993, 9987992, 9987991, 9987990, 9987989, 9987988, 9987987, 9987986, 9987985, 9987984, 9987983, 9987982, 9987981, 9987980, 9987979, 9987978, 9987977, 9987976, 9987975, 9987974, 9987973, 9987972, 9987971, 9987970, 9987969, 9987968, 9987967, 9987966, 9987965, 9987964, 9987963, 9987962, 9987961, 9987960, 9987959, 9987958, 9987957, 9987956, 9987955, 9987954, 9987953, 9987952, 9987951, 9987950, 9987949, 9987948, 9987947, 9987946, 9987945, 9987944, 9987943, 9987942, 9987941, 9987940, 9987939, 9987938, 9987937, 9987936, 9987935, 9987934, 9987933, 9987932, 9987931, 9987930, 9987929, 9987928, 9987927, 9987926, 9987925, 9987924, 9987923, 9987922, 9987921, 9987920, 9987919, 9987918, 9987917, 9987916, 9987915, 9987914, 9987913, 9987912, 9987911, 9987910, 9987909, 9987908, 9987907, 9987906, 9987905, 9987904, 9987903, 9987902, 9987901, 9987900, 9987899, 9987898, 9987897, 9987896, 9987895, 9987894, 9987893, 9987892, 9987891, 9987890, 9987889, 9987888, 9987887, 9987886, 9987885, 9987884, 9987883, 9987882, 9987881, 9987880, 9987879, 9987878, 9987877, 9987876, 9987875, 9987874, 9987873, 9987872, 9987871, 9987870, 9987869, 9987868, 9987867, 9987866, 9987865, 9987864, 9987863, 9987862, 9987861, 9987860, 9987859, 9987858, 9987857, 9987856, 9987855, 9987854, 9987853, 9987852, 9987851, 9987850, 9987849, 9987848, 9987847, 9987846, 9987845, 9987844, 9987843, 9987842, 9987841, 9987840, 9987839, 9987838, 9987837, 9987836, 9987835, 9987834, 9987833, 9987832, 9987831, 9987830, 9987829, 9987828, 9987827, 9987826, 9987825, 9987824, 9987823, 9987822, 9987821, 9987820, 9987819, 9987818, 9987817, 9987816, 9987815, 9987814, 9987813, 9987812, 9987811, 9987810, 9987809, 9987808, 9987807, 9987806, 9987805, 9987804, 9987803, 9987802, 9987801, 9987800, 9987799, 9987798, 9987797, 9987796, 9987795, 9987794, 9987793, 9987792, 9987791, 9987790, 9987789, 9987788, 9987787, 9987786, 9987785, 9987784, 9987783, 9987782, 9987781, 9987780, 9987779, 9987778, 9987777, 9987776, 9987775, 9987774, 9987773, 9987772, 9987771, 9987770, 9987769, 9987768, 9987767, 9987766, 9987765, 9987764, 9987763, 9987762, 9987761, 9987760, 9987759, 9987758, 9987757, 9987756, 9987755, 9987754, 9987753, 9987752, 9987751, 9987750, 9987749, 9987748, 9987747, 9987746, 9987745, 9987744, 9987743, 9987742, 9987741, 9987740, 9987739, 9987738, 9987737, 9987736, 9987735, 9987734, 9987733, 9987732, 9987731, 9987730, 9987729, 9987728, 9987727, 9987726, 9987725, 9987724, 9987723, 9987722, 9987721, 9987720, 9987719, 9987718, 9987717, 9987716, 9987715, 9987714, 9987713, 9987712, 9987711, 9987710, 9987709, 9987708, 9987707, 9987706, 9987705, 9987704, 9987703, 9987702, 9987701, 9987700, 9987699, 9987698, 9987697, 9987696, 9987695, 9987694, 9987693, 9987692, 9987691, 9987690, 9987689, 9987688, 9987687, 9987686, 9987685, 9987684, 9987683, 9987682, 9987681, 9987680, 9987679, 9987678, 9987677, 9987676, 9987675, 9987674, 9987673, 9987672, 9987671, 9987670, 9987669, 9987668, 9987667, 9987666, 9987665, 9987664, 9987663, 9987662, 9987661, 9987660, 9987659, 9987658, 9987657, 9987656, 9987655, 9987654, 9987653, 9987652, 9987651, 9987650, 9987649, 9987648, 9987647, 9987646, 9987645, 9987644, 9987643, 9987642, 9987641, 9987640, 9987639, 9987638, 9987637, 9987636, 9987635, 9987634, 9987633, 9987632, 9987631, 9987630, 9987629, 9987628, 9987627, 9987626, 9987625, 9987624, 9987623, 9987622, 9987621, 9987620, 9987619, 9987618, 9987617, 9987616, 9987615, 9987614, 9987613, 9987612, 9987611, 9987610, 9987609, 9987608, 9987607, 9987606, 9987605, 9987604, 9987603, 9987602, 9987601, 9987600, 9987599, 9987598, 9987597, 9987596, 9987595, 9987594, 9987593, 9987592, 9987591, 9987590, 9987589, 9987588, 9987587, 9987586, 9987585, 9987584, 9987583, 9987582, 9987581, 9987580, 9987579, 9987578, 9987577, 9987576, 9987575, 9987574, 9987573, 9987572, 9987571, 9987570, 9987569, 9987568, 9987567, 9987566, 9987565, 9987564, 9987563, 9987562, 9987561, 9987560, 9987559, 9987558, 9987557, 9987556, 9987555, 9987554, 9987553, 9987552, 9987551, 9987550, 9987549, 9987548, 9987547, 9987546, 9987545, 9987544, 9987543, 9987542, 9987541, 9987540, 9987539, 9987538, 9987537, 9987536, 9987535, 9987534, 9987533, 9987532, 9987531, 9987530, 9987529, 9987528, 9987527, 9987526, 9987525, 9987524, 9987523, 9987522, 9987521, 9987520, 9987519, 9987518, 9987517, 9987516, 9987515, 9987514, 9987513, 9987512, 9987511, 9987510, 9987509, 9987508, 9987507, 9987506, 9987505, 9987504, 9987503, 9987502, 9987501, 9987500, 9987499, 9987498, 9987497, 9987496, 9987495, 9987494, 9987493, 9987492, 9987491, 9987490, 9987489, 9987488, 9987487, 9987486, 9987485, 9987484, 9987483, 9987482, 9987481, 9987480, 9987479, 9987478, 9987477, 9987476, 9987475, 9987474, 9987473, 9987472, 9987471, 9987470, 9987469, 9987468, 9987467, 9987466, 9987465, 9987464, 9987463, 9987462, 9987461, 9987460, 9987459, 9987458, 9987457, 9987456, 9987455, 9987454, 9987453, 9987452, 9987451, 9987450, 9987449, 9987448, 9987447, 9987446, 9987445, 9987444, 9987443, 9987442, 9987441, 9987440, 9987439, 9987438, 9987437, 9987436, 9987435, 9987434, 9987433, 9987432, 9987431, 9987430, 9987429, 9987428, 9987427, 9987426, 9987425, 9987424, 9987423, 9987422, 9987421, 9987420, 9987419, 9987418, 9987417, 9987416, 9987415, 9987414, 9987413, 9987412, 9987411, 9987410, 9987409, 9987408, 9987407, 9987406, 9987405, 9987404, 9987403, 9987402, 9987401, 9987400, 9987399, 9987398, 9987397, 9987396, 9987395, 9987394, 9987393, 9987392, 9987391, 9987390, 9987389, 9987388, 9987387, 9987386, 9987385, 9987384, 9987383, 9987382, 9987381, 9987380, 9987379, 9987378, 9987377, 9987376, 9987375, 9987374, 9987373, 9987372, 9987371, 9987370, 9987369, 9987368, 9987367, 9987366, 9987365, 9987364, 9987363, 9987362, 9987361, 9987360, 9987359, 9987358, 9987357, 9987356, 9987355, 9987354, 9987353, 9987352, 9987351, 9987350, 9987349, 9987348, 9987347, 9987346, 9987345, 9987344, 9987343, 9987342, 9987341, 9987340, 9987339, 9987338, 9987337, 9987336, 9987335, 9987334, 9987333, 9987332, 9987331, 9987330, 9987329, 9987328, 9987327, 9987326, 9987325, 9987324, 9987323, 9987322, 9987321, 9987320, 9987319, 9987318, 9987317, 9987316, 9987315, 9987314, 9987313, 9987312, 9987311, 9987310, 9987309, 9987308, 9987307, 9987306, 9987305, 9987304, 9987303, 9987302, 9987301, 9987300, 9987299, 9987298, 9987297, 9987296, 9987295, 9987294, 9987293, 9987292, 9987291, 9987290, 9987289, 9987288, 9987287, 9987286, 9987285, 9987284, 9987283, 9987282, 9987281, 9987280, 9987279, 9987278, 9987277, 9987276, 9987275, 9987274, 9987273, 9987272, 9987271, 9987270, 9987269, 9987268, 9987267, 9987266, 9987265, 9987264, 9987263, 9987262, 9987261, 9987260, 9987259, 9987258, 9987257, 9987256, 9987255, 9987254, 9987253, 9987252, 9987251, 9987250, 9987249, 9987248, 9987247, 9987246, 9987245, 9987244, 9987243, 9987242, 9987241, 9987240, 9987239, 9987238, 9987237, 9987236, 9987235, 9987234, 9987233, 9987232, 9987231, 9987230, 9987229, 9987228, 9987227, 9987226, 9987225, 9987224, 9987223, 9987222, 9987221, 9987220, 9987219, 9987218, 9987217, 9987216, 9987215, 9987214, 9987213, 9987212, 9987211, 9987210, 9987209, 9987208, 9987207, 9987206, 9987205, 9987204, 9987203, 9987202, 9987201, 9987200, 9987199, 9987198, 9987197, 9987196, 9987195, 9987194, 9987193, 9987192, 9987191, 9987190, 9987189, 9987188, 9987187, 9987186, 9987185, 9987184, 9987183, 9987182, 9987181, 9987180, 9987179, 9987178, 9987177, 9987176, 9987175, 9987174, 9987173, 9987172, 9987171, 9987170, 9987169, 9987168, 9987167, 9987166, 9987165, 9987164, 9987163, 9987162, 9987161, 9987160, 9987159, 9987158, 9987157, 9987156, 9987155, 9987154, 9987153, 9987152, 9987151, 9987150, 9987149, 9987148, 9987147, 9987146, 9987145, 9987144, 9987143, 9987142, 9987141, 9987140, 9987139, 9987138, 9987137, 9987136, 9987135, 9987134, 9987133, 9987132, 9987131, 9987130, 9987129, 9987128, 9987127, 9987126, 9987125, 9987124, 9987123, 9987122, 9987121, 9987120, 9987119, 9987118, 9987117, 9987116, 9987115, 9987114, 9987113, 9987112, 9987111, 9987110, 9987109, 9987108, 9987107, 9987106, 9987105, 9987104, 9987103, 9987102, 9987101, 9987100, 9987099, 9987098, 9987097, 9987096, 9987095, 9987094, 9987093, 9987092, 9987091, 9987090, 9987089, 9987088, 9987087, 9987086, 9987085, 9987084, 9987083, 9987082, 9987081, 9987080, 9987079, 9987078, 9987077, 9987076, 9987075, 9987074, 9987073, 9987072, 9987071, 9987070, 9987069, 9987068, 9987067, 9987066, 9987065, 9987064, 9987063, 9987062, 9987061, 9987060, 9987059, 9987058, 9987057, 9987056, 9987055, 9987054, 9987053, 9987052, 9987051, 9987050, 9987049, 9987048, 9987047, 9987046, 9987045, 9987044, 9987043, 9987042, 9987041, 9987040, 9987039, 9987038, 9987037, 9987036, 9987035, 9987034, 9987033, 9987032, 9987031, 9987030, 9987029, 9987028, 9987027, 9987026, 9987025, 9987024, 9987023, 9987022, 9987021, 9987020, 9987019, 9987018, 9987017, 9987016, 9987015, 9987014, 9987013, 9987012, 9987011, 9987010, 9987009, 9987008, 9987007, 9987006, 9987005, 9987004, 9987003, 9987002, 9987001, 9987000, 9986999, 9986998, 9986997, 9986996, 9986995, 9986994, 9986993, 9986992, 9986991, 9986990, 9986989, 9986988, 9986987, 9986986, 9986985, 9986984, 9986983, 9986982, 9986981, 9986980, 9986979, 9986978, 9986977, 9986976, 9986975, 9986974, 9986973, 9986972, 9986971, 9986970, 9986969, 9986968, 9986967, 9986966, 9986965, 9986964, 9986963, 9986962, 9986961, 9986960, 9986959, 9986958, 9986957, 9986956, 9986955, 9986954, 9986953, 9986952, 9986951, 9986950, 9986949, 9986948, 9986947, 9986946, 9986945, 9986944, 9986943, 9986942, 9986941, 9986940, 9986939, 9986938, 9986937, 9986936, 9986935, 9986934, 9986933, 9986932, 9986931, 9986930, 9986929, 9986928, 9986927, 9986926, 9986925, 9986924, 9986923, 9986922, 9986921, 9986920, 9986919, 9986918, 9986917, 9986916, 9986915, 9986914, 9986913, 9986912, 9986911, 9986910, 9986909, 9986908, 9986907, 9986906, 9986905, 9986904, 9986903, 9986902, 9986901, 9986900, 9986899, 9986898, 9986897, 9986896, 9986895, 9986894, 9986893, 9986892, 9986891, 9986890, 9986889, 9986888, 9986887, 9986886, 9986885, 9986884, 9986883, 9986882, 9986881, 9986880, 9986879, 9986878, 9986877, 9986876, 9986875, 9986874, 9986873, 9986872, 9986871, 9986870, 9986869, 9986868, 9986867, 9986866, 9986865, 9986864, 9986863, 9986862, 9986861, 9986860, 9986859, 9986858, 9986857, 9986856, 9986855, 9986854, 9986853, 9986852, 9986851, 9986850, 9986849, 9986848, 9986847, 9986846, 9986845, 9986844, 9986843, 9986842, 9986841, 9986840, 9986839, 9986838, 9986837, 9986836, 9986835, 9986834, 9986833, 9986832, 9986831, 9986830, 9986829, 9986828, 9986827, 9986826, 9986825, 9986824, 9986823, 9986822, 9986821, 9986820, 9986819, 9986818, 9986817, 9986816, 9986815, 9986814, 9986813, 9986812, 9986811, 9986810, 9986809, 9986808, 9986807, 9986806, 9986805, 9986804, 9986803, 9986802, 9986801, 9986800, 9986799, 9986798, 9986797, 9986796, 9986795, 9986794, 9986793, 9986792, 9986791, 9986790, 9986789, 9986788, 9986787, 9986786, 9986785, 9986784, 9986783, 9986782, 9986781, 9986780, 9986779, 9986778, 9986777, 9986776, 9986775, 9986774, 9986773, 9986772, 9986771, 9986770, 9986769, 9986768, 9986767, 9986766, 9986765, 9986764, 9986763, 9986762, 9986761, 9986760, 9986759, 9986758, 9986757, 9986756, 9986755, 9986754, 9986753, 9986752, 9986751, 9986750, 9986749, 9986748, 9986747, 9986746, 9986745, 9986744, 9986743, 9986742, 9986741, 9986740, 9986739, 9986738, 9986737, 9986736, 9986735, 9986734, 9986733, 9986732, 9986731, 9986730, 9986729, 9986728, 9986727, 9986726, 9986725, 9986724, 9986723, 9986722, 9986721, 9986720, 9986719, 9986718, 9986717, 9986716, 9986715, 9986714, 9986713, 9986712, 9986711, 9986710, 9986709, 9986708, 9986707, 9986706, 9986705, 9986704, 9986703, 9986702, 9986701, 9986700, 9986699, 9986698, 9986697, 9986696, 9986695, 9986694, 9986693, 9986692, 9986691, 9986690, 9986689, 9986688, 9986687, 9986686, 9986685, 9986684, 9986683, 9986682, 9986681, 9986680, 9986679, 9986678, 9986677, 9986676, 9986675, 9986674, 9986673, 9986672, 9986671, 9986670, 9986669, 9986668, 9986667, 9986666, 9986665, 9986664, 9986663, 9986662, 9986661, 9986660, 9986659, 9986658, 9986657, 9986656, 9986655, 9986654, 9986653, 9986652, 9986651, 9986650, 9986649, 9986648, 9986647, 9986646, 9986645, 9986644, 9986643, 9986642, 9986641, 9986640, 9986639, 9986638, 9986637, 9986636, 9986635, 9986634, 9986633, 9986632, 9986631, 9986630, 9986629, 9986628, 9986627, 9986626, 9986625, 9986624, 9986623, 9986622, 9986621, 9986620, 9986619, 9986618, 9986617, 9986616, 9986615, 9986614, 9986613, 9986612, 9986611, 9986610, 9986609, 9986608, 9986607, 9986606, 9986605, 9986604, 9986603, 9986602, 9986601, 9986600, 9986599, 9986598, 9986597, 9986596, 9986595, 9986594, 9986593, 9986592, 9986591, 9986590, 9986589, 9986588, 9986587, 9986586, 9986585, 9986584, 9986583, 9986582, 9986581, 9986580, 9986579, 9986578, 9986577, 9986576, 9986575, 9986574, 9986573, 9986572, 9986571, 9986570, 9986569, 9986568, 9986567, 9986566, 9986565, 9986564, 9986563, 9986562, 9986561, 9986560, 9986559, 9986558, 9986557, 9986556, 9986555, 9986554, 9986553, 9986552, 9986551, 9986550, 9986549, 9986548, 9986547, 9986546, 9986545, 9986544, 9986543, 9986542, 9986541, 9986540, 9986539, 9986538, 9986537, 9986536, 9986535, 9986534, 9986533, 9986532, 9986531, 9986530, 9986529, 9986528, 9986527, 9986526, 9986525, 9986524, 9986523, 9986522, 9986521, 9986520, 9986519, 9986518, 9986517, 9986516, 9986515, 9986514, 9986513, 9986512, 9986511, 9986510, 9986509, 9986508, 9986507, 9986506, 9986505, 9986504, 9986503, 9986502, 9986501, 9986500, 9986499, 9986498, 9986497, 9986496, 9986495, 9986494, 9986493, 9986492, 9986491, 9986490, 9986489, 9986488, 9986487, 9986486, 9986485, 9986484, 9986483, 9986482, 9986481, 9986480, 9986479, 9986478, 9986477, 9986476, 9986475, 9986474, 9986473, 9986472, 9986471, 9986470, 9986469, 9986468, 9986467, 9986466, 9986465, 9986464, 9986463, 9986462, 9986461, 9986460, 9986459, 9986458, 9986457, 9986456, 9986455, 9986454, 9986453, 9986452, 9986451, 9986450, 9986449, 9986448, 9986447, 9986446, 9986445, 9986444, 9986443, 9986442, 9986441, 9986440, 9986439, 9986438, 9986437, 9986436, 9986435, 9986434, 9986433, 9986432, 9986431, 9986430, 9986429, 9986428, 9986427, 9986426, 9986425, 9986424, 9986423, 9986422, 9986421, 9986420, 9986419, 9986418, 9986417, 9986416, 9986415, 9986414, 9986413, 9986412, 9986411, 9986410, 9986409, 9986408, 9986407, 9986406, 9986405, 9986404, 9986403, 9986402, 9986401, 9986400, 9986399, 9986398, 9986397, 9986396, 9986395, 9986394, 9986393, 9986392, 9986391, 9986390, 9986389, 9986388, 9986387, 9986386, 9986385, 9986384, 9986383, 9986382, 9986381, 9986380, 9986379, 9986378, 9986377, 9986376, 9986375, 9986374, 9986373, 9986372, 9986371, 9986370, 9986369, 9986368, 9986367, 9986366, 9986365, 9986364, 9986363, 9986362, 9986361, 9986360, 9986359, 9986358, 9986357, 9986356, 9986355, 9986354, 9986353, 9986352, 9986351, 9986350, 9986349, 9986348, 9986347, 9986346, 9986345, 9986344, 9986343, 9986342, 9986341, 9986340, 9986339, 9986338, 9986337, 9986336, 9986335, 9986334, 9986333, 9986332, 9986331, 9986330, 9986329, 9986328, 9986327, 9986326, 9986325, 9986324, 9986323, 9986322, 9986321, 9986320, 9986319, 9986318, 9986317, 9986316, 9986315, 9986314, 9986313, 9986312, 9986311, 9986310, 9986309, 9986308, 9986307, 9986306, 9986305, 9986304, 9986303, 9986302, 9986301, 9986300, 9986299, 9986298, 9986297, 9986296, 9986295, 9986294, 9986293, 9986292, 9986291, 9986290, 9986289, 9986288, 9986287, 9986286, 9986285, 9986284, 9986283, 9986282, 9986281, 9986280, 9986279, 9986278, 9986277, 9986276, 9986275, 9986274, 9986273, 9986272, 9986271, 9986270, 9986269, 9986268, 9986267, 9986266, 9986265, 9986264, 9986263, 9986262, 9986261, 9986260, 9986259, 9986258, 9986257, 9986256, 9986255, 9986254, 9986253, 9986252, 9986251, 9986250, 9986249, 9986248, 9986247, 9986246, 9986245, 9986244, 9986243, 9986242, 9986241, 9986240, 9986239, 9986238, 9986237, 9986236, 9986235, 9986234, 9986233, 9986232, 9986231, 9986230, 9986229, 9986228, 9986227, 9986226, 9986225, 9986224, 9986223, 9986222, 9986221, 9986220, 9986219, 9986218, 9986217, 9986216, 9986215, 9986214, 9986213, 9986212, 9986211, 9986210, 9986209, 9986208, 9986207, 9986206, 9986205, 9986204, 9986203, 9986202, 9986201, 9986200, 9986199, 9986198, 9986197, 9986196, 9986195, 9986194, 9986193, 9986192, 9986191, 9986190, 9986189, 9986188, 9986187, 9986186, 9986185, 9986184, 9986183, 9986182, 9986181, 9986180, 9986179, 9986178, 9986177, 9986176, 9986175, 9986174, 9986173, 9986172, 9986171, 9986170, 9986169, 9986168, 9986167, 9986166, 9986165, 9986164, 9986163, 9986162, 9986161, 9986160, 9986159, 9986158, 9986157, 9986156, 9986155, 9986154, 9986153, 9986152, 9986151, 9986150, 9986149, 9986148, 9986147, 9986146, 9986145, 9986144, 9986143, 9986142, 9986141, 9986140, 9986139, 9986138, 9986137, 9986136, 9986135, 9986134, 9986133, 9986132, 9986131, 9986130, 9986129, 9986128, 9986127, 9986126, 9986125, 9986124, 9986123, 9986122, 9986121, 9986120, 9986119, 9986118, 9986117, 9986116, 9986115, 9986114, 9986113, 9986112, 9986111, 9986110, 9986109, 9986108, 9986107, 9986106, 9986105, 9986104, 9986103, 9986102, 9986101, 9986100, 9986099, 9986098, 9986097, 9986096, 9986095, 9986094, 9986093, 9986092, 9986091, 9986090, 9986089, 9986088, 9986087, 9986086, 9986085, 9986084, 9986083, 9986082, 9986081, 9986080, 9986079, 9986078, 9986077, 9986076, 9986075, 9986074, 9986073, 9986072, 9986071, 9986070, 9986069, 9986068, 9986067, 9986066, 9986065, 9986064, 9986063, 9986062, 9986061, 9986060, 9986059, 9986058, 9986057, 9986056, 9986055, 9986054, 9986053, 9986052, 9986051, 9986050, 9986049, 9986048, 9986047, 9986046, 9986045, 9986044, 9986043, 9986042, 9986041, 9986040, 9986039, 9986038, 9986037, 9986036, 9986035, 9986034, 9986033, 9986032, 9986031, 9986030, 9986029, 9986028, 9986027, 9986026, 9986025, 9986024, 9986023, 9986022, 9986021, 9986020, 9986019, 9986018, 9986017, 9986016, 9986015, 9986014, 9986013, 9986012, 9986011, 9986010, 9986009, 9986008, 9986007, 9986006, 9986005, 9986004, 9986003, 9986002, 9986001, 9986000, 9985999, 9985998, 9985997, 9985996, 9985995, 9985994, 9985993, 9985992, 9985991, 9985990, 9985989, 9985988, 9985987, 9985986, 9985985, 9985984, 9985983, 9985982, 9985981, 9985980, 9985979, 9985978, 9985977, 9985976, 9985975, 9985974, 9985973, 9985972, 9985971, 9985970, 9985969, 9985968, 9985967, 9985966, 9985965, 9985964, 9985963, 9985962, 9985961, 9985960, 9985959, 9985958, 9985957, 9985956, 9985955, 9985954, 9985953, 9985952, 9985951, 9985950, 9985949, 9985948, 9985947, 9985946, 9985945, 9985944, 9985943, 9985942, 9985941, 9985940, 9985939, 9985938, 9985937, 9985936, 9985935, 9985934, 9985933, 9985932, 9985931, 9985930, 9985929, 9985928, 9985927, 9985926, 9985925, 9985924, 9985923, 9985922, 9985921, 9985920, 9985919, 9985918, 9985917, 9985916, 9985915, 9985914, 9985913, 9985912, 9985911, 9985910, 9985909, 9985908, 9985907, 9985906, 9985905, 9985904, 9985903, 9985902, 9985901, 9985900, 9985899, 9985898, 9985897, 9985896, 9985895, 9985894, 9985893, 9985892, 9985891, 9985890, 9985889, 9985888, 9985887, 9985886, 9985885, 9985884, 9985883, 9985882, 9985881, 9985880, 9985879, 9985878, 9985877, 9985876, 9985875, 9985874, 9985873, 9985872, 9985871, 9985870, 9985869, 9985868, 9985867, 9985866, 9985865, 9985864, 9985863, 9985862, 9985861, 9985860, 9985859, 9985858, 9985857, 9985856, 9985855, 9985854, 9985853, 9985852, 9985851, 9985850, 9985849, 9985848, 9985847, 9985846, 9985845, 9985844, 9985843, 9985842, 9985841, 9985840, 9985839, 9985838, 9985837, 9985836, 9985835, 9985834, 9985833, 9985832, 9985831, 9985830, 9985829, 9985828, 9985827, 9985826, 9985825, 9985824, 9985823, 9985822, 9985821, 9985820, 9985819, 9985818, 9985817, 9985816, 9985815, 9985814, 9985813, 9985812, 9985811, 9985810, 9985809, 9985808, 9985807, 9985806, 9985805, 9985804, 9985803, 9985802, 9985801, 9985800, 9985799, 9985798, 9985797, 9985796, 9985795, 9985794, 9985793, 9985792, 9985791, 9985790, 9985789, 9985788, 9985787, 9985786, 9985785, 9985784, 9985783, 9985782, 9985781, 9985780, 9985779, 9985778, 9985777, 9985776, 9985775, 9985774, 9985773, 9985772, 9985771, 9985770, 9985769, 9985768, 9985767, 9985766, 9985765, 9985764, 9985763, 9985762, 9985761, 9985760, 9985759, 9985758, 9985757, 9985756, 9985755, 9985754, 9985753, 9985752, 9985751, 9985750, 9985749, 9985748, 9985747, 9985746, 9985745, 9985744, 9985743, 9985742, 9985741, 9985740, 9985739, 9985738, 9985737, 9985736, 9985735, 9985734, 9985733, 9985732, 9985731, 9985730, 9985729, 9985728, 9985727, 9985726, 9985725, 9985724, 9985723, 9985722, 9985721, 9985720, 9985719, 9985718, 9985717, 9985716, 9985715, 9985714, 9985713, 9985712, 9985711, 9985710, 9985709, 9985708, 9985707, 9985706, 9985705, 9985704, 9985703, 9985702, 9985701, 9985700, 9985699, 9985698, 9985697, 9985696, 9985695, 9985694, 9985693, 9985692, 9985691, 9985690, 9985689, 9985688, 9985687, 9985686, 9985685, 9985684, 9985683, 9985682, 9985681, 9985680, 9985679, 9985678, 9985677, 9985676, 9985675, 9985674, 9985673, 9985672, 9985671, 9985670, 9985669, 9985668, 9985667, 9985666, 9985665, 9985664, 9985663, 9985662, 9985661, 9985660, 9985659, 9985658, 9985657, 9985656, 9985655, 9985654, 9985653, 9985652, 9985651, 9985650, 9985649, 9985648, 9985647, 9985646, 9985645, 9985644, 9985643, 9985642, 9985641, 9985640, 9985639, 9985638, 9985637, 9985636, 9985635, 9985634, 9985633, 9985632, 9985631, 9985630, 9985629, 9985628, 9985627, 9985626, 9985625, 9985624, 9985623, 9985622, 9985621, 9985620, 9985619, 9985618, 9985617, 9985616, 9985615, 9985614, 9985613, 9985612, 9985611, 9985610, 9985609, 9985608, 9985607, 9985606, 9985605, 9985604, 9985603, 9985602, 9985601, 9985600, 9985599, 9985598, 9985597, 9985596, 9985595, 9985594, 9985593, 9985592, 9985591, 9985590, 9985589, 9985588, 9985587, 9985586, 9985585, 9985584, 9985583, 9985582, 9985581, 9985580, 9985579, 9985578, 9985577, 9985576, 9985575, 9985574, 9985573, 9985572, 9985571, 9985570, 9985569, 9985568, 9985567, 9985566, 9985565, 9985564, 9985563, 9985562, 9985561, 9985560, 9985559, 9985558, 9985557, 9985556, 9985555, 9985554, 9985553, 9985552, 9985551, 9985550, 9985549, 9985548, 9985547, 9985546, 9985545, 9985544, 9985543, 9985542, 9985541, 9985540, 9985539, 9985538, 9985537, 9985536, 9985535, 9985534, 9985533, 9985532, 9985531, 9985530, 9985529, 9985528, 9985527, 9985526, 9985525, 9985524, 9985523, 9985522, 9985521, 9985520, 9985519, 9985518, 9985517, 9985516, 9985515, 9985514, 9985513, 9985512, 9985511, 9985510, 9985509, 9985508, 9985507, 9985506, 9985505, 9985504, 9985503, 9985502, 9985501, 9985500, 9985499, 9985498, 9985497, 9985496, 9985495, 9985494, 9985493, 9985492, 9985491, 9985490, 9985489, 9985488, 9985487, 9985486, 9985485, 9985484, 9985483, 9985482, 9985481, 9985480, 9985479, 9985478, 9985477, 9985476, 9985475, 9985474, 9985473, 9985472, 9985471, 9985470, 9985469, 9985468, 9985467, 9985466, 9985465, 9985464, 9985463, 9985462, 9985461, 9985460, 9985459, 9985458, 9985457, 9985456, 9985455, 9985454, 9985453, 9985452, 9985451, 9985450, 9985449, 9985448, 9985447, 9985446, 9985445, 9985444, 9985443, 9985442, 9985441, 9985440, 9985439, 9985438, 9985437, 9985436, 9985435, 9985434, 9985433, 9985432, 9985431, 9985430, 9985429, 9985428, 9985427, 9985426, 9985425, 9985424, 9985423, 9985422, 9985421, 9985420, 9985419, 9985418, 9985417, 9985416, 9985415, 9985414, 9985413, 9985412, 9985411, 9985410, 9985409, 9985408, 9985407, 9985406, 9985405, 9985404, 9985403, 9985402, 9985401, 9985400, 9985399, 9985398, 9985397, 9985396, 9985395, 9985394, 9985393, 9985392, 9985391, 9985390, 9985389, 9985388, 9985387, 9985386, 9985385, 9985384, 9985383, 9985382, 9985381, 9985380, 9985379, 9985378, 9985377, 9985376, 9985375, 9985374, 9985373, 9985372, 9985371, 9985370, 9985369, 9985368, 9985367, 9985366, 9985365, 9985364, 9985363, 9985362, 9985361, 9985360, 9985359, 9985358, 9985357, 9985356, 9985355, 9985354, 9985353, 9985352, 9985351, 9985350, 9985349, 9985348, 9985347, 9985346, 9985345, 9985344, 9985343, 9985342, 9985341, 9985340, 9985339, 9985338, 9985337, 9985336, 9985335, 9985334, 9985333, 9985332, 9985331, 9985330, 9985329, 9985328, 9985327, 9985326, 9985325, 9985324, 9985323, 9985322, 9985321, 9985320, 9985319, 9985318, 9985317, 9985316, 9985315, 9985314, 9985313, 9985312, 9985311, 9985310, 9985309, 9985308, 9985307, 9985306, 9985305, 9985304, 9985303, 9985302, 9985301, 9985300, 9985299, 9985298, 9985297, 9985296, 9985295, 9985294, 9985293, 9985292, 9985291, 9985290, 9985289, 9985288, 9985287, 9985286, 9985285, 9985284, 9985283, 9985282, 9985281, 9985280, 9985279, 9985278, 9985277, 9985276, 9985275, 9985274, 9985273, 9985272, 9985271, 9985270, 9985269, 9985268, 9985267, 9985266, 9985265, 9985264, 9985263, 9985262, 9985261, 9985260, 9985259, 9985258, 9985257, 9985256, 9985255, 9985254, 9985253, 9985252, 9985251, 9985250, 9985249, 9985248, 9985247, 9985246, 9985245, 9985244, 9985243, 9985242, 9985241, 9985240, 9985239, 9985238, 9985237, 9985236, 9985235, 9985234, 9985233, 9985232, 9985231, 9985230, 9985229, 9985228, 9985227, 9985226, 9985225, 9985224, 9985223, 9985222, 9985221, 9985220, 9985219, 9985218, 9985217, 9985216, 9985215, 9985214, 9985213, 9985212, 9985211, 9985210, 9985209, 9985208, 9985207, 9985206, 9985205, 9985204, 9985203, 9985202, 9985201, 9985200, 9985199, 9985198, 9985197, 9985196, 9985195, 9985194, 9985193, 9985192, 9985191, 9985190, 9985189, 9985188, 9985187, 9985186, 9985185, 9985184, 9985183, 9985182, 9985181, 9985180, 9985179, 9985178, 9985177, 9985176, 9985175, 9985174, 9985173, 9985172, 9985171, 9985170, 9985169, 9985168, 9985167, 9985166, 9985165, 9985164, 9985163, 9985162, 9985161, 9985160, 9985159, 9985158, 9985157, 9985156, 9985155, 9985154, 9985153, 9985152, 9985151, 9985150, 9985149, 9985148, 9985147, 9985146, 9985145, 9985144, 9985143, 9985142, 9985141, 9985140, 9985139, 9985138, 9985137, 9985136, 9985135, 9985134, 9985133, 9985132, 9985131, 9985130, 9985129, 9985128, 9985127, 9985126, 9985125, 9985124, 9985123, 9985122, 9985121, 9985120, 9985119, 9985118, 9985117, 9985116, 9985115, 9985114, 9985113, 9985112, 9985111, 9985110, 9985109, 9985108, 9985107, 9985106, 9985105, 9985104, 9985103, 9985102, 9985101, 9985100, 9985099, 9985098, 9985097, 9985096, 9985095, 9985094, 9985093, 9985092, 9985091, 9985090, 9985089, 9985088, 9985087, 9985086, 9985085, 9985084, 9985083, 9985082, 9985081, 9985080, 9985079, 9985078, 9985077, 9985076, 9985075, 9985074, 9985073, 9985072, 9985071, 9985070, 9985069, 9985068, 9985067, 9985066, 9985065, 9985064, 9985063, 9985062, 9985061, 9985060, 9985059, 9985058, 9985057, 9985056, 9985055, 9985054, 9985053, 9985052, 9985051, 9985050, 9985049, 9985048, 9985047, 9985046, 9985045, 9985044, 9985043, 9985042, 9985041, 9985040, 9985039, 9985038, 9985037, 9985036, 9985035, 9985034, 9985033, 9985032, 9985031, 9985030, 9985029, 9985028, 9985027, 9985026, 9985025, 9985024, 9985023, 9985022, 9985021, 9985020, 9985019, 9985018, 9985017, 9985016, 9985015, 9985014, 9985013, 9985012, 9985011, 9985010, 9985009, 9985008, 9985007, 9985006, 9985005, 9985004, 9985003, 9985002, 9985001, 9985000, 9984999, 9984998, 9984997, 9984996, 9984995, 9984994, 9984993, 9984992, 9984991, 9984990, 9984989, 9984988, 9984987, 9984986, 9984985, 9984984, 9984983, 9984982, 9984981, 9984980, 9984979, 9984978, 9984977, 9984976, 9984975, 9984974, 9984973, 9984972, 9984971, 9984970, 9984969, 9984968, 9984967, 9984966, 9984965, 9984964, 9984963, 9984962, 9984961, 9984960, 9984959, 9984958, 9984957, 9984956, 9984955, 9984954, 9984953, 9984952, 9984951, 9984950, 9984949, 9984948, 9984947, 9984946, 9984945, 9984944, 9984943, 9984942, 9984941, 9984940, 9984939, 9984938, 9984937, 9984936, 9984935, 9984934, 9984933, 9984932, 9984931, 9984930, 9984929, 9984928, 9984927, 9984926, 9984925, 9984924, 9984923, 9984922, 9984921, 9984920, 9984919, 9984918, 9984917, 9984916, 9984915, 9984914, 9984913, 9984912, 9984911, 9984910, 9984909, 9984908, 9984907, 9984906, 9984905, 9984904, 9984903, 9984902, 9984901, 9984900, 9984899, 9984898, 9984897, 9984896, 9984895, 9984894, 9984893, 9984892, 9984891, 9984890, 9984889, 9984888, 9984887, 9984886, 9984885, 9984884, 9984883, 9984882, 9984881, 9984880, 9984879, 9984878, 9984877, 9984876, 9984875, 9984874, 9984873, 9984872, 9984871, 9984870, 9984869, 9984868, 9984867, 9984866, 9984865, 9984864, 9984863, 9984862, 9984861, 9984860, 9984859, 9984858, 9984857, 9984856, 9984855, 9984854, 9984853, 9984852, 9984851, 9984850, 9984849, 9984848, 9984847, 9984846, 9984845, 9984844, 9984843, 9984842, 9984841, 9984840, 9984839, 9984838, 9984837, 9984836, 9984835, 9984834, 9984833, 9984832, 9984831, 9984830, 9984829, 9984828, 9984827, 9984826, 9984825, 9984824, 9984823, 9984822, 9984821, 9984820, 9984819, 9984818, 9984817, 9984816, 9984815, 9984814, 9984813, 9984812, 9984811, 9984810, 9984809, 9984808, 9984807, 9984806, 9984805, 9984804, 9984803, 9984802, 9984801, 9984800, 9984799, 9984798, 9984797, 9984796, 9984795, 9984794, 9984793, 9984792, 9984791, 9984790, 9984789, 9984788, 9984787, 9984786, 9984785, 9984784, 9984783, 9984782, 9984781, 9984780, 9984779, 9984778, 9984777, 9984776, 9984775, 9984774, 9984773, 9984772, 9984771, 9984770, 9984769, 9984768, 9984767, 9984766, 9984765, 9984764, 9984763, 9984762, 9984761, 9984760, 9984759, 9984758, 9984757, 9984756, 9984755, 9984754, 9984753, 9984752, 9984751, 9984750, 9984749, 9984748, 9984747, 9984746, 9984745, 9984744, 9984743, 9984742, 9984741, 9984740, 9984739, 9984738, 9984737, 9984736, 9984735, 9984734, 9984733, 9984732, 9984731, 9984730, 9984729, 9984728, 9984727, 9984726, 9984725, 9984724, 9984723, 9984722, 9984721, 9984720, 9984719, 9984718, 9984717, 9984716, 9984715, 9984714, 9984713, 9984712, 9984711, 9984710, 9984709, 9984708, 9984707, 9984706, 9984705, 9984704, 9984703, 9984702, 9984701, 9984700, 9984699, 9984698, 9984697, 9984696, 9984695, 9984694, 9984693, 9984692, 9984691, 9984690, 9984689, 9984688, 9984687, 9984686, 9984685, 9984684, 9984683, 9984682, 9984681, 9984680, 9984679, 9984678, 9984677, 9984676, 9984675, 9984674, 9984673, 9984672, 9984671, 9984670, 9984669, 9984668, 9984667, 9984666, 9984665, 9984664, 9984663, 9984662, 9984661, 9984660, 9984659, 9984658, 9984657, 9984656, 9984655, 9984654, 9984653, 9984652, 9984651, 9984650, 9984649, 9984648, 9984647, 9984646, 9984645, 9984644, 9984643, 9984642, 9984641, 9984640, 9984639, 9984638, 9984637, 9984636, 9984635, 9984634, 9984633, 9984632, 9984631, 9984630, 9984629, 9984628, 9984627, 9984626, 9984625, 9984624, 9984623, 9984622, 9984621, 9984620, 9984619, 9984618, 9984617, 9984616, 9984615, 9984614, 9984613, 9984612, 9984611, 9984610, 9984609, 9984608, 9984607, 9984606, 9984605, 9984604, 9984603, 9984602, 9984601, 9984600, 9984599, 9984598, 9984597, 9984596, 9984595, 9984594, 9984593, 9984592, 9984591, 9984590, 9984589, 9984588, 9984587, 9984586, 9984585, 9984584, 9984583, 9984582, 9984581, 9984580, 9984579, 9984578, 9984577, 9984576, 9984575, 9984574, 9984573, 9984572, 9984571, 9984570, 9984569, 9984568, 9984567, 9984566, 9984565, 9984564, 9984563, 9984562, 9984561, 9984560, 9984559, 9984558, 9984557, 9984556, 9984555, 9984554, 9984553, 9984552, 9984551, 9984550, 9984549, 9984548, 9984547, 9984546, 9984545, 9984544, 9984543, 9984542, 9984541, 9984540, 9984539, 9984538, 9984537, 9984536, 9984535, 9984534, 9984533, 9984532, 9984531, 9984530, 9984529, 9984528, 9984527, 9984526, 9984525, 9984524, 9984523, 9984522, 9984521, 9984520, 9984519, 9984518, 9984517, 9984516, 9984515, 9984514, 9984513, 9984512, 9984511, 9984510, 9984509, 9984508, 9984507, 9984506, 9984505, 9984504, 9984503, 9984502, 9984501, 9984500, 9984499, 9984498, 9984497, 9984496, 9984495, 9984494, 9984493, 9984492, 9984491, 9984490, 9984489, 9984488, 9984487, 9984486, 9984485, 9984484, 9984483, 9984482, 9984481, 9984480, 9984479, 9984478, 9984477, 9984476, 9984475, 9984474, 9984473, 9984472, 9984471, 9984470, 9984469, 9984468, 9984467, 9984466, 9984465, 9984464, 9984463, 9984462, 9984461, 9984460, 9984459, 9984458, 9984457, 9984456, 9984455, 9984454, 9984453, 9984452, 9984451, 9984450, 9984449, 9984448, 9984447, 9984446, 9984445, 9984444, 9984443, 9984442, 9984441, 9984440, 9984439, 9984438, 9984437, 9984436, 9984435, 9984434, 9984433, 9984432, 9984431, 9984430, 9984429, 9984428, 9984427, 9984426, 9984425, 9984424, 9984423, 9984422, 9984421, 9984420, 9984419, 9984418, 9984417, 9984416, 9984415, 9984414, 9984413, 9984412, 9984411, 9984410, 9984409, 9984408, 9984407, 9984406, 9984405, 9984404, 9984403, 9984402, 9984401, 9984400, 9984399, 9984398, 9984397, 9984396, 9984395, 9984394, 9984393, 9984392, 9984391, 9984390, 9984389, 9984388, 9984387, 9984386, 9984385, 9984384, 9984383, 9984382, 9984381, 9984380, 9984379, 9984378, 9984377, 9984376, 9984375, 9984374, 9984373, 9984372, 9984371, 9984370, 9984369, 9984368, 9984367, 9984366, 9984365, 9984364, 9984363, 9984362, 9984361, 9984360, 9984359, 9984358, 9984357, 9984356, 9984355, 9984354, 9984353, 9984352, 9984351, 9984350, 9984349, 9984348, 9984347, 9984346, 9984345, 9984344, 9984343, 9984342, 9984341, 9984340, 9984339, 9984338, 9984337, 9984336, 9984335, 9984334, 9984333, 9984332, 9984331, 9984330, 9984329, 9984328, 9984327, 9984326, 9984325, 9984324, 9984323, 9984322, 9984321, 9984320, 9984319, 9984318, 9984317, 9984316, 9984315, 9984314, 9984313, 9984312, 9984311, 9984310, 9984309, 9984308, 9984307, 9984306, 9984305, 9984304, 9984303, 9984302, 9984301, 9984300, 9984299, 9984298, 9984297, 9984296, 9984295, 9984294, 9984293, 9984292, 9984291, 9984290, 9984289, 9984288, 9984287, 9984286, 9984285, 9984284, 9984283, 9984282, 9984281, 9984280, 9984279, 9984278, 9984277, 9984276, 9984275, 9984274, 9984273, 9984272, 9984271, 9984270, 9984269, 9984268, 9984267, 9984266, 9984265, 9984264, 9984263, 9984262, 9984261, 9984260, 9984259, 9984258, 9984257, 9984256, 9984255, 9984254, 9984253, 9984252, 9984251, 9984250, 9984249, 9984248, 9984247, 9984246, 9984245, 9984244, 9984243, 9984242, 9984241, 9984240, 9984239, 9984238, 9984237, 9984236, 9984235, 9984234, 9984233, 9984232, 9984231, 9984230, 9984229, 9984228, 9984227, 9984226, 9984225, 9984224, 9984223, 9984222, 9984221, 9984220, 9984219, 9984218, 9984217, 9984216, 9984215, 9984214, 9984213, 9984212, 9984211, 9984210, 9984209, 9984208, 9984207, 9984206, 9984205, 9984204, 9984203, 9984202, 9984201, 9984200, 9984199, 9984198, 9984197, 9984196, 9984195, 9984194, 9984193, 9984192, 9984191, 9984190, 9984189, 9984188, 9984187, 9984186, 9984185, 9984184, 9984183, 9984182, 9984181, 9984180, 9984179, 9984178, 9984177, 9984176, 9984175, 9984174, 9984173, 9984172, 9984171, 9984170, 9984169, 9984168, 9984167, 9984166, 9984165, 9984164, 9984163, 9984162, 9984161, 9984160, 9984159, 9984158, 9984157, 9984156, 9984155, 9984154, 9984153, 9984152, 9984151, 9984150, 9984149, 9984148, 9984147, 9984146, 9984145, 9984144, 9984143, 9984142, 9984141, 9984140, 9984139, 9984138, 9984137, 9984136, 9984135, 9984134, 9984133, 9984132, 9984131, 9984130, 9984129, 9984128, 9984127, 9984126, 9984125, 9984124, 9984123, 9984122, 9984121, 9984120, 9984119, 9984118, 9984117, 9984116, 9984115, 9984114, 9984113, 9984112, 9984111, 9984110, 9984109, 9984108, 9984107, 9984106, 9984105, 9984104, 9984103, 9984102, 9984101, 9984100, 9984099, 9984098, 9984097, 9984096, 9984095, 9984094, 9984093, 9984092, 9984091, 9984090, 9984089, 9984088, 9984087, 9984086, 9984085, 9984084, 9984083, 9984082, 9984081, 9984080, 9984079, 9984078, 9984077, 9984076, 9984075, 9984074, 9984073, 9984072, 9984071, 9984070, 9984069, 9984068, 9984067, 9984066, 9984065, 9984064, 9984063, 9984062, 9984061, 9984060, 9984059, 9984058, 9984057, 9984056, 9984055, 9984054, 9984053, 9984052, 9984051, 9984050, 9984049, 9984048, 9984047, 9984046, 9984045, 9984044, 9984043, 9984042, 9984041, 9984040, 9984039, 9984038, 9984037, 9984036, 9984035, 9984034, 9984033, 9984032, 9984031, 9984030, 9984029, 9984028, 9984027, 9984026, 9984025, 9984024, 9984023, 9984022, 9984021, 9984020, 9984019, 9984018, 9984017, 9984016, 9984015, 9984014, 9984013, 9984012, 9984011, 9984010, 9984009, 9984008, 9984007, 9984006, 9984005, 9984004, 9984003, 9984002, 9984001, 9984000, 9983999, 9983998, 9983997, 9983996, 9983995, 9983994, 9983993, 9983992, 9983991, 9983990, 9983989, 9983988, 9983987, 9983986, 9983985, 9983984, 9983983, 9983982, 9983981, 9983980, 9983979, 9983978, 9983977, 9983976, 9983975, 9983974, 9983973, 9983972, 9983971, 9983970, 9983969, 9983968, 9983967, 9983966, 9983965, 9983964, 9983963, 9983962, 9983961, 9983960, 9983959, 9983958, 9983957, 9983956, 9983955, 9983954, 9983953, 9983952, 9983951, 9983950, 9983949, 9983948, 9983947, 9983946, 9983945, 9983944, 9983943, 9983942, 9983941, 9983940, 9983939, 9983938, 9983937, 9983936, 9983935, 9983934, 9983933, 9983932, 9983931, 9983930, 9983929, 9983928, 9983927, 9983926, 9983925, 9983924, 9983923, 9983922, 9983921, 9983920, 9983919, 9983918, 9983917, 9983916, 9983915, 9983914, 9983913, 9983912, 9983911, 9983910, 9983909, 9983908, 9983907, 9983906, 9983905, 9983904, 9983903, 9983902, 9983901, 9983900, 9983899, 9983898, 9983897, 9983896, 9983895, 9983894, 9983893, 9983892, 9983891, 9983890, 9983889, 9983888, 9983887, 9983886, 9983885, 9983884, 9983883, 9983882, 9983881, 9983880, 9983879, 9983878, 9983877, 9983876, 9983875, 9983874, 9983873, 9983872, 9983871, 9983870, 9983869, 9983868, 9983867, 9983866, 9983865, 9983864, 9983863, 9983862, 9983861, 9983860, 9983859, 9983858, 9983857, 9983856, 9983855, 9983854, 9983853, 9983852, 9983851, 9983850, 9983849, 9983848, 9983847, 9983846, 9983845, 9983844, 9983843, 9983842, 9983841, 9983840, 9983839, 9983838, 9983837, 9983836, 9983835, 9983834, 9983833, 9983832, 9983831, 9983830, 9983829, 9983828, 9983827, 9983826, 9983825, 9983824, 9983823, 9983822, 9983821, 9983820, 9983819, 9983818, 9983817, 9983816, 9983815, 9983814, 9983813, 9983812, 9983811, 9983810, 9983809, 9983808, 9983807, 9983806, 9983805, 9983804, 9983803, 9983802, 9983801, 9983800, 9983799, 9983798, 9983797, 9983796, 9983795, 9983794, 9983793, 9983792, 9983791, 9983790, 9983789, 9983788, 9983787, 9983786, 9983785, 9983784, 9983783, 9983782, 9983781, 9983780, 9983779, 9983778, 9983777, 9983776, 9983775, 9983774, 9983773, 9983772, 9983771, 9983770, 9983769, 9983768, 9983767, 9983766, 9983765, 9983764, 9983763, 9983762, 9983761, 9983760, 9983759, 9983758, 9983757, 9983756, 9983755, 9983754, 9983753, 9983752, 9983751, 9983750, 9983749, 9983748, 9983747, 9983746, 9983745, 9983744, 9983743, 9983742, 9983741, 9983740, 9983739, 9983738, 9983737, 9983736, 9983735, 9983734, 9983733, 9983732, 9983731, 9983730, 9983729, 9983728, 9983727, 9983726, 9983725, 9983724, 9983723, 9983722, 9983721, 9983720, 9983719, 9983718, 9983717, 9983716, 9983715, 9983714, 9983713, 9983712, 9983711, 9983710, 9983709, 9983708, 9983707, 9983706, 9983705, 9983704, 9983703, 9983702, 9983701, 9983700, 9983699, 9983698, 9983697, 9983696, 9983695, 9983694, 9983693, 9983692, 9983691, 9983690, 9983689, 9983688, 9983687, 9983686, 9983685, 9983684, 9983683, 9983682, 9983681, 9983680, 9983679, 9983678, 9983677, 9983676, 9983675, 9983674, 9983673, 9983672, 9983671, 9983670, 9983669, 9983668, 9983667, 9983666, 9983665, 9983664, 9983663, 9983662, 9983661, 9983660, 9983659, 9983658, 9983657, 9983656, 9983655, 9983654, 9983653, 9983652, 9983651, 9983650, 9983649, 9983648, 9983647, 9983646, 9983645, 9983644, 9983643, 9983642, 9983641, 9983640, 9983639, 9983638, 9983637, 9983636, 9983635, 9983634, 9983633, 9983632, 9983631, 9983630, 9983629, 9983628, 9983627, 9983626, 9983625, 9983624, 9983623, 9983622, 9983621, 9983620, 9983619, 9983618, 9983617, 9983616, 9983615, 9983614, 9983613, 9983612, 9983611, 9983610, 9983609, 9983608, 9983607, 9983606, 9983605, 9983604, 9983603, 9983602, 9983601, 9983600, 9983599, 9983598, 9983597, 9983596, 9983595, 9983594, 9983593, 9983592, 9983591, 9983590, 9983589, 9983588, 9983587, 9983586, 9983585, 9983584, 9983583, 9983582, 9983581, 9983580, 9983579, 9983578, 9983577, 9983576, 9983575, 9983574, 9983573, 9983572, 9983571, 9983570, 9983569, 9983568, 9983567, 9983566, 9983565, 9983564, 9983563, 9983562, 9983561, 9983560, 9983559, 9983558, 9983557, 9983556, 9983555, 9983554, 9983553, 9983552, 9983551, 9983550, 9983549, 9983548, 9983547, 9983546, 9983545, 9983544, 9983543, 9983542, 9983541, 9983540, 9983539, 9983538, 9983537, 9983536, 9983535, 9983534, 9983533, 9983532, 9983531, 9983530, 9983529, 9983528, 9983527, 9983526, 9983525, 9983524, 9983523, 9983522, 9983521, 9983520, 9983519, 9983518, 9983517, 9983516, 9983515, 9983514, 9983513, 9983512, 9983511, 9983510, 9983509, 9983508, 9983507, 9983506, 9983505, 9983504, 9983503, 9983502, 9983501, 9983500, 9983499, 9983498, 9983497, 9983496, 9983495, 9983494, 9983493, 9983492, 9983491, 9983490, 9983489, 9983488, 9983487, 9983486, 9983485, 9983484, 9983483, 9983482, 9983481, 9983480, 9983479, 9983478, 9983477, 9983476, 9983475, 9983474, 9983473, 9983472, 9983471, 9983470, 9983469, 9983468, 9983467, 9983466, 9983465, 9983464, 9983463, 9983462, 9983461, 9983460, 9983459, 9983458, 9983457, 9983456, 9983455, 9983454, 9983453, 9983452, 9983451, 9983450, 9983449, 9983448, 9983447, 9983446, 9983445, 9983444, 9983443, 9983442, 9983441, 9983440, 9983439, 9983438, 9983437, 9983436, 9983435, 9983434, 9983433, 9983432, 9983431, 9983430, 9983429, 9983428, 9983427, 9983426, 9983425, 9983424, 9983423, 9983422, 9983421, 9983420, 9983419, 9983418, 9983417, 9983416, 9983415, 9983414, 9983413, 9983412, 9983411, 9983410, 9983409, 9983408, 9983407, 9983406, 9983405, 9983404, 9983403, 9983402, 9983401, 9983400, 9983399, 9983398, 9983397, 9983396, 9983395, 9983394, 9983393, 9983392, 9983391, 9983390, 9983389, 9983388, 9983387, 9983386, 9983385, 9983384, 9983383, 9983382, 9983381, 9983380, 9983379, 9983378, 9983377, 9983376, 9983375, 9983374, 9983373, 9983372, 9983371, 9983370, 9983369, 9983368, 9983367, 9983366, 9983365, 9983364, 9983363, 9983362, 9983361, 9983360, 9983359, 9983358, 9983357, 9983356, 9983355, 9983354, 9983353, 9983352, 9983351, 9983350, 9983349, 9983348, 9983347, 9983346, 9983345, 9983344, 9983343, 9983342, 9983341, 9983340, 9983339, 9983338, 9983337, 9983336, 9983335, 9983334, 9983333, 9983332, 9983331, 9983330, 9983329, 9983328, 9983327, 9983326, 9983325, 9983324, 9983323, 9983322, 9983321, 9983320, 9983319, 9983318, 9983317, 9983316, 9983315, 9983314, 9983313, 9983312, 9983311, 9983310, 9983309, 9983308, 9983307, 9983306, 9983305, 9983304, 9983303, 9983302, 9983301, 9983300, 9983299, 9983298, 9983297, 9983296, 9983295, 9983294, 9983293, 9983292, 9983291, 9983290, 9983289, 9983288, 9983287, 9983286, 9983285, 9983284, 9983283, 9983282, 9983281, 9983280, 9983279, 9983278, 9983277, 9983276, 9983275, 9983274, 9983273, 9983272, 9983271, 9983270, 9983269, 9983268, 9983267, 9983266, 9983265, 9983264, 9983263, 9983262, 9983261, 9983260, 9983259, 9983258, 9983257, 9983256, 9983255, 9983254, 9983253, 9983252, 9983251, 9983250, 9983249, 9983248, 9983247, 9983246, 9983245, 9983244, 9983243, 9983242, 9983241, 9983240, 9983239, 9983238, 9983237, 9983236, 9983235, 9983234, 9983233, 9983232, 9983231, 9983230, 9983229, 9983228, 9983227, 9983226, 9983225, 9983224, 9983223, 9983222, 9983221, 9983220, 9983219, 9983218, 9983217, 9983216, 9983215, 9983214, 9983213, 9983212, 9983211, 9983210, 9983209, 9983208, 9983207, 9983206, 9983205, 9983204, 9983203, 9983202, 9983201, 9983200, 9983199, 9983198, 9983197, 9983196, 9983195, 9983194, 9983193, 9983192, 9983191, 9983190, 9983189, 9983188, 9983187, 9983186, 9983185, 9983184, 9983183, 9983182, 9983181, 9983180, 9983179, 9983178, 9983177, 9983176, 9983175, 9983174, 9983173, 9983172, 9983171, 9983170, 9983169, 9983168, 9983167, 9983166, 9983165, 9983164, 9983163, 9983162, 9983161, 9983160, 9983159, 9983158, 9983157, 9983156, 9983155, 9983154, 9983153, 9983152, 9983151, 9983150, 9983149, 9983148, 9983147, 9983146, 9983145, 9983144, 9983143, 9983142, 9983141, 9983140, 9983139, 9983138, 9983137, 9983136, 9983135, 9983134, 9983133, 9983132, 9983131, 9983130, 9983129, 9983128, 9983127, 9983126, 9983125, 9983124, 9983123, 9983122, 9983121, 9983120, 9983119, 9983118, 9983117, 9983116, 9983115, 9983114, 9983113, 9983112, 9983111, 9983110, 9983109, 9983108, 9983107, 9983106, 9983105, 9983104, 9983103, 9983102, 9983101, 9983100, 9983099, 9983098, 9983097, 9983096, 9983095, 9983094, 9983093, 9983092, 9983091, 9983090, 9983089, 9983088, 9983087, 9983086, 9983085, 9983084, 9983083, 9983082, 9983081, 9983080, 9983079, 9983078, 9983077, 9983076, 9983075, 9983074, 9983073, 9983072, 9983071, 9983070, 9983069, 9983068, 9983067, 9983066, 9983065, 9983064, 9983063, 9983062, 9983061, 9983060, 9983059, 9983058, 9983057, 9983056, 9983055, 9983054, 9983053, 9983052, 9983051, 9983050, 9983049, 9983048, 9983047, 9983046, 9983045, 9983044, 9983043, 9983042, 9983041, 9983040, 9983039, 9983038, 9983037, 9983036, 9983035, 9983034, 9983033, 9983032, 9983031, 9983030, 9983029, 9983028, 9983027, 9983026, 9983025, 9983024, 9983023, 9983022, 9983021, 9983020, 9983019, 9983018, 9983017, 9983016, 9983015, 9983014, 9983013, 9983012, 9983011, 9983010, 9983009, 9983008, 9983007, 9983006, 9983005, 9983004, 9983003, 9983002, 9983001, 9983000, 9982999, 9982998, 9982997, 9982996, 9982995, 9982994, 9982993, 9982992, 9982991, 9982990, 9982989, 9982988, 9982987, 9982986, 9982985, 9982984, 9982983, 9982982, 9982981, 9982980, 9982979, 9982978, 9982977, 9982976, 9982975, 9982974, 9982973, 9982972, 9982971, 9982970, 9982969, 9982968, 9982967, 9982966, 9982965, 9982964, 9982963, 9982962, 9982961, 9982960, 9982959, 9982958, 9982957, 9982956, 9982955, 9982954, 9982953, 9982952, 9982951, 9982950, 9982949, 9982948, 9982947, 9982946, 9982945, 9982944, 9982943, 9982942, 9982941, 9982940, 9982939, 9982938, 9982937, 9982936, 9982935, 9982934, 9982933, 9982932, 9982931, 9982930, 9982929, 9982928, 9982927, 9982926, 9982925, 9982924, 9982923, 9982922, 9982921, 9982920, 9982919, 9982918, 9982917, 9982916, 9982915, 9982914, 9982913, 9982912, 9982911, 9982910, 9982909, 9982908, 9982907, 9982906, 9982905, 9982904, 9982903, 9982902, 9982901, 9982900, 9982899, 9982898, 9982897, 9982896, 9982895, 9982894, 9982893, 9982892, 9982891, 9982890, 9982889, 9982888, 9982887, 9982886, 9982885, 9982884, 9982883, 9982882, 9982881, 9982880, 9982879, 9982878, 9982877, 9982876, 9982875, 9982874, 9982873, 9982872, 9982871, 9982870, 9982869, 9982868, 9982867, 9982866, 9982865, 9982864, 9982863, 9982862, 9982861, 9982860, 9982859, 9982858, 9982857, 9982856, 9982855, 9982854, 9982853, 9982852, 9982851, 9982850, 9982849, 9982848, 9982847, 9982846, 9982845, 9982844, 9982843, 9982842, 9982841, 9982840, 9982839, 9982838, 9982837, 9982836, 9982835, 9982834, 9982833, 9982832, 9982831, 9982830, 9982829, 9982828, 9982827, 9982826, 9982825, 9982824, 9982823, 9982822, 9982821, 9982820, 9982819, 9982818, 9982817, 9982816, 9982815, 9982814, 9982813, 9982812, 9982811, 9982810, 9982809, 9982808, 9982807, 9982806, 9982805, 9982804, 9982803, 9982802, 9982801, 9982800, 9982799, 9982798, 9982797, 9982796, 9982795, 9982794, 9982793, 9982792, 9982791, 9982790, 9982789, 9982788, 9982787, 9982786, 9982785, 9982784, 9982783, 9982782, 9982781, 9982780, 9982779, 9982778, 9982777, 9982776, 9982775, 9982774, 9982773, 9982772, 9982771, 9982770, 9982769, 9982768, 9982767, 9982766, 9982765, 9982764, 9982763, 9982762, 9982761, 9982760, 9982759, 9982758, 9982757, 9982756, 9982755, 9982754, 9982753, 9982752, 9982751, 9982750, 9982749, 9982748, 9982747, 9982746, 9982745, 9982744, 9982743, 9982742, 9982741, 9982740, 9982739, 9982738, 9982737, 9982736, 9982735, 9982734, 9982733, 9982732, 9982731, 9982730, 9982729, 9982728, 9982727, 9982726, 9982725, 9982724, 9982723, 9982722, 9982721, 9982720, 9982719, 9982718, 9982717, 9982716, 9982715, 9982714, 9982713, 9982712, 9982711, 9982710, 9982709, 9982708, 9982707, 9982706, 9982705, 9982704, 9982703, 9982702, 9982701, 9982700, 9982699, 9982698, 9982697, 9982696, 9982695, 9982694, 9982693, 9982692, 9982691, 9982690, 9982689, 9982688, 9982687, 9982686, 9982685, 9982684, 9982683, 9982682, 9982681, 9982680, 9982679, 9982678, 9982677, 9982676, 9982675, 9982674, 9982673, 9982672, 9982671, 9982670, 9982669, 9982668, 9982667, 9982666, 9982665, 9982664, 9982663, 9982662, 9982661, 9982660, 9982659, 9982658, 9982657, 9982656, 9982655, 9982654, 9982653, 9982652, 9982651, 9982650, 9982649, 9982648, 9982647, 9982646, 9982645, 9982644, 9982643, 9982642, 9982641, 9982640, 9982639, 9982638, 9982637, 9982636, 9982635, 9982634, 9982633, 9982632, 9982631, 9982630, 9982629, 9982628, 9982627, 9982626, 9982625, 9982624, 9982623, 9982622, 9982621, 9982620, 9982619, 9982618, 9982617, 9982616, 9982615, 9982614, 9982613, 9982612, 9982611, 9982610, 9982609, 9982608, 9982607, 9982606, 9982605, 9982604, 9982603, 9982602, 9982601, 9982600, 9982599, 9982598, 9982597, 9982596, 9982595, 9982594, 9982593, 9982592, 9982591, 9982590, 9982589, 9982588, 9982587, 9982586, 9982585, 9982584, 9982583, 9982582, 9982581, 9982580, 9982579, 9982578, 9982577, 9982576, 9982575, 9982574, 9982573, 9982572, 9982571, 9982570, 9982569, 9982568, 9982567, 9982566, 9982565, 9982564, 9982563, 9982562, 9982561, 9982560, 9982559, 9982558, 9982557, 9982556, 9982555, 9982554, 9982553, 9982552, 9982551, 9982550, 9982549, 9982548, 9982547, 9982546, 9982545, 9982544, 9982543, 9982542, 9982541, 9982540, 9982539, 9982538, 9982537, 9982536, 9982535, 9982534, 9982533, 9982532, 9982531, 9982530, 9982529, 9982528, 9982527, 9982526, 9982525, 9982524, 9982523, 9982522, 9982521, 9982520, 9982519, 9982518, 9982517, 9982516, 9982515, 9982514, 9982513, 9982512, 9982511, 9982510, 9982509, 9982508, 9982507, 9982506, 9982505, 9982504, 9982503, 9982502, 9982501, 9982500, 9982499, 9982498, 9982497, 9982496, 9982495, 9982494, 9982493, 9982492, 9982491, 9982490, 9982489, 9982488, 9982487, 9982486, 9982485, 9982484, 9982483, 9982482, 9982481, 9982480, 9982479, 9982478, 9982477, 9982476, 9982475, 9982474, 9982473, 9982472, 9982471, 9982470, 9982469, 9982468, 9982467, 9982466, 9982465, 9982464, 9982463, 9982462, 9982461, 9982460, 9982459, 9982458, 9982457, 9982456, 9982455, 9982454, 9982453, 9982452, 9982451, 9982450, 9982449, 9982448, 9982447, 9982446, 9982445, 9982444, 9982443, 9982442, 9982441, 9982440, 9982439, 9982438, 9982437, 9982436, 9982435, 9982434, 9982433, 9982432, 9982431, 9982430, 9982429, 9982428, 9982427, 9982426, 9982425, 9982424, 9982423, 9982422, 9982421, 9982420, 9982419, 9982418, 9982417, 9982416, 9982415, 9982414, 9982413, 9982412, 9982411, 9982410, 9982409, 9982408, 9982407, 9982406, 9982405, 9982404, 9982403, 9982402, 9982401, 9982400, 9982399, 9982398, 9982397, 9982396, 9982395, 9982394, 9982393, 9982392, 9982391, 9982390, 9982389, 9982388, 9982387, 9982386, 9982385, 9982384, 9982383, 9982382, 9982381, 9982380, 9982379, 9982378, 9982377, 9982376, 9982375, 9982374, 9982373, 9982372, 9982371, 9982370, 9982369, 9982368, 9982367, 9982366, 9982365, 9982364, 9982363, 9982362, 9982361, 9982360, 9982359, 9982358, 9982357, 9982356, 9982355, 9982354, 9982353, 9982352, 9982351, 9982350, 9982349, 9982348, 9982347, 9982346, 9982345, 9982344, 9982343, 9982342, 9982341, 9982340, 9982339, 9982338, 9982337, 9982336, 9982335, 9982334, 9982333, 9982332, 9982331, 9982330, 9982329, 9982328, 9982327, 9982326, 9982325, 9982324, 9982323, 9982322, 9982321, 9982320, 9982319, 9982318, 9982317, 9982316, 9982315, 9982314, 9982313, 9982312, 9982311, 9982310, 9982309, 9982308, 9982307, 9982306, 9982305, 9982304, 9982303, 9982302, 9982301, 9982300, 9982299, 9982298, 9982297, 9982296, 9982295, 9982294, 9982293, 9982292, 9982291, 9982290, 9982289, 9982288, 9982287, 9982286, 9982285, 9982284, 9982283, 9982282, 9982281, 9982280, 9982279, 9982278, 9982277, 9982276, 9982275, 9982274, 9982273, 9982272, 9982271, 9982270, 9982269, 9982268, 9982267, 9982266, 9982265, 9982264, 9982263, 9982262, 9982261, 9982260, 9982259, 9982258, 9982257, 9982256, 9982255, 9982254, 9982253, 9982252, 9982251, 9982250, 9982249, 9982248, 9982247, 9982246, 9982245, 9982244, 9982243, 9982242, 9982241, 9982240, 9982239, 9982238, 9982237, 9982236, 9982235, 9982234, 9982233, 9982232, 9982231, 9982230, 9982229, 9982228, 9982227, 9982226, 9982225, 9982224, 9982223, 9982222, 9982221, 9982220, 9982219, 9982218, 9982217, 9982216, 9982215, 9982214, 9982213, 9982212, 9982211, 9982210, 9982209, 9982208, 9982207, 9982206, 9982205, 9982204, 9982203, 9982202, 9982201, 9982200, 9982199, 9982198, 9982197, 9982196, 9982195, 9982194, 9982193, 9982192, 9982191, 9982190, 9982189, 9982188, 9982187, 9982186, 9982185, 9982184, 9982183, 9982182, 9982181, 9982180, 9982179, 9982178, 9982177, 9982176, 9982175, 9982174, 9982173, 9982172, 9982171, 9982170, 9982169, 9982168, 9982167, 9982166, 9982165, 9982164, 9982163, 9982162, 9982161, 9982160, 9982159, 9982158, 9982157, 9982156, 9982155, 9982154, 9982153, 9982152, 9982151, 9982150, 9982149, 9982148, 9982147, 9982146, 9982145, 9982144, 9982143, 9982142, 9982141, 9982140, 9982139, 9982138, 9982137, 9982136, 9982135, 9982134, 9982133, 9982132, 9982131, 9982130, 9982129, 9982128, 9982127, 9982126, 9982125, 9982124, 9982123, 9982122, 9982121, 9982120, 9982119, 9982118, 9982117, 9982116, 9982115, 9982114, 9982113, 9982112, 9982111, 9982110, 9982109, 9982108, 9982107, 9982106, 9982105, 9982104, 9982103, 9982102, 9982101, 9982100, 9982099, 9982098, 9982097, 9982096, 9982095, 9982094, 9982093, 9982092, 9982091, 9982090, 9982089, 9982088, 9982087, 9982086, 9982085, 9982084, 9982083, 9982082, 9982081, 9982080, 9982079, 9982078, 9982077, 9982076, 9982075, 9982074, 9982073, 9982072, 9982071, 9982070, 9982069, 9982068, 9982067, 9982066, 9982065, 9982064, 9982063, 9982062, 9982061, 9982060, 9982059, 9982058, 9982057, 9982056, 9982055, 9982054, 9982053, 9982052, 9982051, 9982050, 9982049, 9982048, 9982047, 9982046, 9982045, 9982044, 9982043, 9982042, 9982041, 9982040, 9982039, 9982038, 9982037, 9982036, 9982035, 9982034, 9982033, 9982032, 9982031, 9982030, 9982029, 9982028, 9982027, 9982026, 9982025, 9982024, 9982023, 9982022, 9982021, 9982020, 9982019, 9982018, 9982017, 9982016, 9982015, 9982014, 9982013, 9982012, 9982011, 9982010, 9982009, 9982008, 9982007, 9982006, 9982005, 9982004, 9982003, 9982002, 9982001, 9982000, 9981999, 9981998, 9981997, 9981996, 9981995, 9981994, 9981993, 9981992, 9981991, 9981990, 9981989, 9981988, 9981987, 9981986, 9981985, 9981984, 9981983, 9981982, 9981981, 9981980, 9981979, 9981978, 9981977, 9981976, 9981975, 9981974, 9981973, 9981972, 9981971, 9981970, 9981969, 9981968, 9981967, 9981966, 9981965, 9981964, 9981963, 9981962, 9981961, 9981960, 9981959, 9981958, 9981957, 9981956, 9981955, 9981954, 9981953, 9981952, 9981951, 9981950, 9981949, 9981948, 9981947, 9981946, 9981945, 9981944, 9981943, 9981942, 9981941, 9981940, 9981939, 9981938, 9981937, 9981936, 9981935, 9981934, 9981933, 9981932, 9981931, 9981930, 9981929, 9981928, 9981927, 9981926, 9981925, 9981924, 9981923, 9981922, 9981921, 9981920, 9981919, 9981918, 9981917, 9981916, 9981915, 9981914, 9981913, 9981912, 9981911, 9981910, 9981909, 9981908, 9981907, 9981906, 9981905, 9981904, 9981903, 9981902, 9981901, 9981900, 9981899, 9981898, 9981897, 9981896, 9981895, 9981894, 9981893, 9981892, 9981891, 9981890, 9981889, 9981888, 9981887, 9981886, 9981885, 9981884, 9981883, 9981882, 9981881, 9981880, 9981879, 9981878, 9981877, 9981876, 9981875, 9981874, 9981873, 9981872, 9981871, 9981870, 9981869, 9981868, 9981867, 9981866, 9981865, 9981864, 9981863, 9981862, 9981861, 9981860, 9981859, 9981858, 9981857, 9981856, 9981855, 9981854, 9981853, 9981852, 9981851, 9981850, 9981849, 9981848, 9981847, 9981846, 9981845, 9981844, 9981843, 9981842, 9981841, 9981840, 9981839, 9981838, 9981837, 9981836, 9981835, 9981834, 9981833, 9981832, 9981831, 9981830, 9981829, 9981828, 9981827, 9981826, 9981825, 9981824, 9981823, 9981822, 9981821, 9981820, 9981819, 9981818, 9981817, 9981816, 9981815, 9981814, 9981813, 9981812, 9981811, 9981810, 9981809, 9981808, 9981807, 9981806, 9981805, 9981804, 9981803, 9981802, 9981801, 9981800, 9981799, 9981798, 9981797, 9981796, 9981795, 9981794, 9981793, 9981792, 9981791, 9981790, 9981789, 9981788, 9981787, 9981786, 9981785, 9981784, 9981783, 9981782, 9981781, 9981780, 9981779, 9981778, 9981777, 9981776, 9981775, 9981774, 9981773, 9981772, 9981771, 9981770, 9981769, 9981768, 9981767, 9981766, 9981765, 9981764, 9981763, 9981762, 9981761, 9981760, 9981759, 9981758, 9981757, 9981756, 9981755, 9981754, 9981753, 9981752, 9981751, 9981750, 9981749, 9981748, 9981747, 9981746, 9981745, 9981744, 9981743, 9981742, 9981741, 9981740, 9981739, 9981738, 9981737, 9981736, 9981735, 9981734, 9981733, 9981732, 9981731, 9981730, 9981729, 9981728, 9981727, 9981726, 9981725, 9981724, 9981723, 9981722, 9981721, 9981720, 9981719, 9981718, 9981717, 9981716, 9981715, 9981714, 9981713, 9981712, 9981711, 9981710, 9981709, 9981708, 9981707, 9981706, 9981705, 9981704, 9981703, 9981702, 9981701, 9981700, 9981699, 9981698, 9981697, 9981696, 9981695, 9981694, 9981693, 9981692, 9981691, 9981690, 9981689, 9981688, 9981687, 9981686, 9981685, 9981684, 9981683, 9981682, 9981681, 9981680, 9981679, 9981678, 9981677, 9981676, 9981675, 9981674, 9981673, 9981672, 9981671, 9981670, 9981669, 9981668, 9981667, 9981666, 9981665, 9981664, 9981663, 9981662, 9981661, 9981660, 9981659, 9981658, 9981657, 9981656, 9981655, 9981654, 9981653, 9981652, 9981651, 9981650, 9981649, 9981648, 9981647, 9981646, 9981645, 9981644, 9981643, 9981642, 9981641, 9981640, 9981639, 9981638, 9981637, 9981636, 9981635, 9981634, 9981633, 9981632, 9981631, 9981630, 9981629, 9981628, 9981627, 9981626, 9981625, 9981624, 9981623, 9981622, 9981621, 9981620, 9981619, 9981618, 9981617, 9981616, 9981615, 9981614, 9981613, 9981612, 9981611, 9981610, 9981609, 9981608, 9981607, 9981606, 9981605, 9981604, 9981603, 9981602, 9981601, 9981600, 9981599, 9981598, 9981597, 9981596, 9981595, 9981594, 9981593, 9981592, 9981591, 9981590, 9981589, 9981588, 9981587, 9981586, 9981585, 9981584, 9981583, 9981582, 9981581, 9981580, 9981579, 9981578, 9981577, 9981576, 9981575, 9981574, 9981573, 9981572, 9981571, 9981570, 9981569, 9981568, 9981567, 9981566, 9981565, 9981564, 9981563, 9981562, 9981561, 9981560, 9981559, 9981558, 9981557, 9981556, 9981555, 9981554, 9981553, 9981552, 9981551, 9981550, 9981549, 9981548, 9981547, 9981546, 9981545, 9981544, 9981543, 9981542, 9981541, 9981540, 9981539, 9981538, 9981537, 9981536, 9981535, 9981534, 9981533, 9981532, 9981531, 9981530, 9981529, 9981528, 9981527, 9981526, 9981525, 9981524, 9981523, 9981522, 9981521, 9981520, 9981519, 9981518, 9981517, 9981516, 9981515, 9981514, 9981513, 9981512, 9981511, 9981510, 9981509, 9981508, 9981507, 9981506, 9981505, 9981504, 9981503, 9981502, 9981501, 9981500, 9981499, 9981498, 9981497, 9981496, 9981495, 9981494, 9981493, 9981492, 9981491, 9981490, 9981489, 9981488, 9981487, 9981486, 9981485, 9981484, 9981483, 9981482, 9981481, 9981480, 9981479, 9981478, 9981477, 9981476, 9981475, 9981474, 9981473, 9981472, 9981471, 9981470, 9981469, 9981468, 9981467, 9981466, 9981465, 9981464, 9981463, 9981462, 9981461, 9981460, 9981459, 9981458, 9981457, 9981456, 9981455, 9981454, 9981453, 9981452, 9981451, 9981450, 9981449, 9981448, 9981447, 9981446, 9981445, 9981444, 9981443, 9981442, 9981441, 9981440, 9981439, 9981438, 9981437, 9981436, 9981435, 9981434, 9981433, 9981432, 9981431, 9981430, 9981429, 9981428, 9981427, 9981426, 9981425, 9981424, 9981423, 9981422, 9981421, 9981420, 9981419, 9981418, 9981417, 9981416, 9981415, 9981414, 9981413, 9981412, 9981411, 9981410, 9981409, 9981408, 9981407, 9981406, 9981405, 9981404, 9981403, 9981402, 9981401, 9981400, 9981399, 9981398, 9981397, 9981396, 9981395, 9981394, 9981393, 9981392, 9981391, 9981390, 9981389, 9981388, 9981387, 9981386, 9981385, 9981384, 9981383, 9981382, 9981381, 9981380, 9981379, 9981378, 9981377, 9981376, 9981375, 9981374, 9981373, 9981372, 9981371, 9981370, 9981369, 9981368, 9981367, 9981366, 9981365, 9981364, 9981363, 9981362, 9981361, 9981360, 9981359, 9981358, 9981357, 9981356, 9981355, 9981354, 9981353, 9981352, 9981351, 9981350, 9981349, 9981348, 9981347, 9981346, 9981345, 9981344, 9981343, 9981342, 9981341, 9981340, 9981339, 9981338, 9981337, 9981336, 9981335, 9981334, 9981333, 9981332, 9981331, 9981330, 9981329, 9981328, 9981327, 9981326, 9981325, 9981324, 9981323, 9981322, 9981321, 9981320, 9981319, 9981318, 9981317, 9981316, 9981315, 9981314, 9981313, 9981312, 9981311, 9981310, 9981309, 9981308, 9981307, 9981306, 9981305, 9981304, 9981303, 9981302, 9981301, 9981300, 9981299, 9981298, 9981297, 9981296, 9981295, 9981294, 9981293, 9981292, 9981291, 9981290, 9981289, 9981288, 9981287, 9981286, 9981285, 9981284, 9981283, 9981282, 9981281, 9981280, 9981279, 9981278, 9981277, 9981276, 9981275, 9981274, 9981273, 9981272, 9981271, 9981270, 9981269, 9981268, 9981267, 9981266, 9981265, 9981264, 9981263, 9981262, 9981261, 9981260, 9981259, 9981258, 9981257, 9981256, 9981255, 9981254, 9981253, 9981252, 9981251, 9981250, 9981249, 9981248, 9981247, 9981246, 9981245, 9981244, 9981243, 9981242, 9981241, 9981240, 9981239, 9981238, 9981237, 9981236, 9981235, 9981234, 9981233, 9981232, 9981231, 9981230, 9981229, 9981228, 9981227, 9981226, 9981225, 9981224, 9981223, 9981222, 9981221, 9981220, 9981219, 9981218, 9981217, 9981216, 9981215, 9981214, 9981213, 9981212, 9981211, 9981210, 9981209, 9981208, 9981207, 9981206, 9981205, 9981204, 9981203, 9981202, 9981201, 9981200, 9981199, 9981198, 9981197, 9981196, 9981195, 9981194, 9981193, 9981192, 9981191, 9981190, 9981189, 9981188, 9981187, 9981186, 9981185, 9981184, 9981183, 9981182, 9981181, 9981180, 9981179, 9981178, 9981177, 9981176, 9981175, 9981174, 9981173, 9981172, 9981171, 9981170, 9981169, 9981168, 9981167, 9981166, 9981165, 9981164, 9981163, 9981162, 9981161, 9981160, 9981159, 9981158, 9981157, 9981156, 9981155, 9981154, 9981153, 9981152, 9981151, 9981150, 9981149, 9981148, 9981147, 9981146, 9981145, 9981144, 9981143, 9981142, 9981141, 9981140, 9981139, 9981138, 9981137, 9981136, 9981135, 9981134, 9981133, 9981132, 9981131, 9981130, 9981129, 9981128, 9981127, 9981126, 9981125, 9981124, 9981123, 9981122, 9981121, 9981120, 9981119, 9981118, 9981117, 9981116, 9981115, 9981114, 9981113, 9981112, 9981111, 9981110, 9981109, 9981108, 9981107, 9981106, 9981105, 9981104, 9981103, 9981102, 9981101, 9981100, 9981099, 9981098, 9981097, 9981096, 9981095, 9981094, 9981093, 9981092, 9981091, 9981090, 9981089, 9981088, 9981087, 9981086, 9981085, 9981084, 9981083, 9981082, 9981081, 9981080, 9981079, 9981078, 9981077, 9981076, 9981075, 9981074, 9981073, 9981072, 9981071, 9981070, 9981069, 9981068, 9981067, 9981066, 9981065, 9981064, 9981063, 9981062, 9981061, 9981060, 9981059, 9981058, 9981057, 9981056, 9981055, 9981054, 9981053, 9981052, 9981051, 9981050, 9981049, 9981048, 9981047, 9981046, 9981045, 9981044, 9981043, 9981042, 9981041, 9981040, 9981039, 9981038, 9981037, 9981036, 9981035, 9981034, 9981033, 9981032, 9981031, 9981030, 9981029, 9981028, 9981027, 9981026, 9981025, 9981024, 9981023, 9981022, 9981021, 9981020, 9981019, 9981018, 9981017, 9981016, 9981015, 9981014, 9981013, 9981012, 9981011, 9981010, 9981009, 9981008, 9981007, 9981006, 9981005, 9981004, 9981003, 9981002, 9981001, 9981000, 9980999, 9980998, 9980997, 9980996, 9980995, 9980994, 9980993, 9980992, 9980991, 9980990, 9980989, 9980988, 9980987, 9980986, 9980985, 9980984, 9980983, 9980982, 9980981, 9980980, 9980979, 9980978, 9980977, 9980976, 9980975, 9980974, 9980973, 9980972, 9980971, 9980970, 9980969, 9980968, 9980967, 9980966, 9980965, 9980964, 9980963, 9980962, 9980961, 9980960, 9980959, 9980958, 9980957, 9980956, 9980955, 9980954, 9980953, 9980952, 9980951, 9980950, 9980949, 9980948, 9980947, 9980946, 9980945, 9980944, 9980943, 9980942, 9980941, 9980940, 9980939, 9980938, 9980937, 9980936, 9980935, 9980934, 9980933, 9980932, 9980931, 9980930, 9980929, 9980928, 9980927, 9980926, 9980925, 9980924, 9980923, 9980922, 9980921, 9980920, 9980919, 9980918, 9980917, 9980916, 9980915, 9980914, 9980913, 9980912, 9980911, 9980910, 9980909, 9980908, 9980907, 9980906, 9980905, 9980904, 9980903, 9980902, 9980901, 9980900, 9980899, 9980898, 9980897, 9980896, 9980895, 9980894, 9980893, 9980892, 9980891, 9980890, 9980889, 9980888, 9980887, 9980886, 9980885, 9980884, 9980883, 9980882, 9980881, 9980880, 9980879, 9980878, 9980877, 9980876, 9980875, 9980874, 9980873, 9980872, 9980871, 9980870, 9980869, 9980868, 9980867, 9980866, 9980865, 9980864, 9980863, 9980862, 9980861, 9980860, 9980859, 9980858, 9980857, 9980856, 9980855, 9980854, 9980853, 9980852, 9980851, 9980850, 9980849, 9980848, 9980847, 9980846, 9980845, 9980844, 9980843, 9980842, 9980841, 9980840, 9980839, 9980838, 9980837, 9980836, 9980835, 9980834, 9980833, 9980832, 9980831, 9980830, 9980829, 9980828, 9980827, 9980826, 9980825, 9980824, 9980823, 9980822, 9980821, 9980820, 9980819, 9980818, 9980817, 9980816, 9980815, 9980814, 9980813, 9980812, 9980811, 9980810, 9980809, 9980808, 9980807, 9980806, 9980805, 9980804, 9980803, 9980802, 9980801, 9980800, 9980799, 9980798, 9980797, 9980796, 9980795, 9980794, 9980793, 9980792, 9980791, 9980790, 9980789, 9980788, 9980787, 9980786, 9980785, 9980784, 9980783, 9980782, 9980781, 9980780, 9980779, 9980778, 9980777, 9980776, 9980775, 9980774, 9980773, 9980772, 9980771, 9980770, 9980769, 9980768, 9980767, 9980766, 9980765, 9980764, 9980763, 9980762, 9980761, 9980760, 9980759, 9980758, 9980757, 9980756, 9980755, 9980754, 9980753, 9980752, 9980751, 9980750, 9980749, 9980748, 9980747, 9980746, 9980745, 9980744, 9980743, 9980742, 9980741, 9980740, 9980739, 9980738, 9980737, 9980736, 9980735, 9980734, 9980733, 9980732, 9980731, 9980730, 9980729, 9980728, 9980727, 9980726, 9980725, 9980724, 9980723, 9980722, 9980721, 9980720, 9980719, 9980718, 9980717, 9980716, 9980715, 9980714, 9980713, 9980712, 9980711, 9980710, 9980709, 9980708, 9980707, 9980706, 9980705, 9980704, 9980703, 9980702, 9980701, 9980700, 9980699, 9980698, 9980697, 9980696, 9980695, 9980694, 9980693, 9980692, 9980691, 9980690, 9980689, 9980688, 9980687, 9980686, 9980685, 9980684, 9980683, 9980682, 9980681, 9980680, 9980679, 9980678, 9980677, 9980676, 9980675, 9980674, 9980673, 9980672, 9980671, 9980670, 9980669, 9980668, 9980667, 9980666, 9980665, 9980664, 9980663, 9980662, 9980661, 9980660, 9980659, 9980658, 9980657, 9980656, 9980655, 9980654, 9980653, 9980652, 9980651, 9980650, 9980649, 9980648, 9980647, 9980646, 9980645, 9980644, 9980643, 9980642, 9980641, 9980640, 9980639, 9980638, 9980637, 9980636, 9980635, 9980634, 9980633, 9980632, 9980631, 9980630, 9980629, 9980628, 9980627, 9980626, 9980625, 9980624, 9980623, 9980622, 9980621, 9980620, 9980619, 9980618, 9980617, 9980616, 9980615, 9980614, 9980613, 9980612, 9980611, 9980610, 9980609, 9980608, 9980607, 9980606, 9980605, 9980604, 9980603, 9980602, 9980601, 9980600, 9980599, 9980598, 9980597, 9980596, 9980595, 9980594, 9980593, 9980592, 9980591, 9980590, 9980589, 9980588, 9980587, 9980586, 9980585, 9980584, 9980583, 9980582, 9980581, 9980580, 9980579, 9980578, 9980577, 9980576, 9980575, 9980574, 9980573, 9980572, 9980571, 9980570, 9980569, 9980568, 9980567, 9980566, 9980565, 9980564, 9980563, 9980562, 9980561, 9980560, 9980559, 9980558, 9980557, 9980556, 9980555, 9980554, 9980553, 9980552, 9980551, 9980550, 9980549, 9980548, 9980547, 9980546, 9980545, 9980544, 9980543, 9980542, 9980541, 9980540, 9980539, 9980538, 9980537, 9980536, 9980535, 9980534, 9980533, 9980532, 9980531, 9980530, 9980529, 9980528, 9980527, 9980526, 9980525, 9980524, 9980523, 9980522, 9980521, 9980520, 9980519, 9980518, 9980517, 9980516, 9980515, 9980514, 9980513, 9980512, 9980511, 9980510, 9980509, 9980508, 9980507, 9980506, 9980505, 9980504, 9980503, 9980502, 9980501, 9980500, 9980499, 9980498, 9980497, 9980496, 9980495, 9980494, 9980493, 9980492, 9980491, 9980490, 9980489, 9980488, 9980487, 9980486, 9980485, 9980484, 9980483, 9980482, 9980481, 9980480, 9980479, 9980478, 9980477, 9980476, 9980475, 9980474, 9980473, 9980472, 9980471, 9980470, 9980469, 9980468, 9980467, 9980466, 9980465, 9980464, 9980463, 9980462, 9980461, 9980460, 9980459, 9980458, 9980457, 9980456, 9980455, 9980454, 9980453, 9980452, 9980451, 9980450, 9980449, 9980448, 9980447, 9980446, 9980445, 9980444, 9980443, 9980442, 9980441, 9980440, 9980439, 9980438, 9980437, 9980436, 9980435, 9980434, 9980433, 9980432, 9980431, 9980430, 9980429, 9980428, 9980427, 9980426, 9980425, 9980424, 9980423, 9980422, 9980421, 9980420, 9980419, 9980418, 9980417, 9980416, 9980415, 9980414, 9980413, 9980412, 9980411, 9980410, 9980409, 9980408, 9980407, 9980406, 9980405, 9980404, 9980403, 9980402, 9980401, 9980400, 9980399, 9980398, 9980397, 9980396, 9980395, 9980394, 9980393, 9980392, 9980391, 9980390, 9980389, 9980388, 9980387, 9980386, 9980385, 9980384, 9980383, 9980382, 9980381, 9980380, 9980379, 9980378, 9980377, 9980376, 9980375, 9980374, 9980373, 9980372, 9980371, 9980370, 9980369, 9980368, 9980367, 9980366, 9980365, 9980364, 9980363, 9980362, 9980361, 9980360, 9980359, 9980358, 9980357, 9980356, 9980355, 9980354, 9980353, 9980352, 9980351, 9980350, 9980349, 9980348, 9980347, 9980346, 9980345, 9980344, 9980343, 9980342, 9980341, 9980340, 9980339, 9980338, 9980337, 9980336, 9980335, 9980334, 9980333, 9980332, 9980331, 9980330, 9980329, 9980328, 9980327, 9980326, 9980325, 9980324, 9980323, 9980322, 9980321, 9980320, 9980319, 9980318, 9980317, 9980316, 9980315, 9980314, 9980313, 9980312, 9980311, 9980310, 9980309, 9980308, 9980307, 9980306, 9980305, 9980304, 9980303, 9980302, 9980301, 9980300, 9980299, 9980298, 9980297, 9980296, 9980295, 9980294, 9980293, 9980292, 9980291, 9980290, 9980289, 9980288, 9980287, 9980286, 9980285, 9980284, 9980283, 9980282, 9980281, 9980280, 9980279, 9980278, 9980277, 9980276, 9980275, 9980274, 9980273, 9980272, 9980271, 9980270, 9980269, 9980268, 9980267, 9980266, 9980265, 9980264, 9980263, 9980262, 9980261, 9980260, 9980259, 9980258, 9980257, 9980256, 9980255, 9980254, 9980253, 9980252, 9980251, 9980250, 9980249, 9980248, 9980247, 9980246, 9980245, 9980244, 9980243, 9980242, 9980241, 9980240, 9980239, 9980238, 9980237, 9980236, 9980235, 9980234, 9980233, 9980232, 9980231, 9980230, 9980229, 9980228, 9980227, 9980226, 9980225, 9980224, 9980223, 9980222, 9980221, 9980220, 9980219, 9980218, 9980217, 9980216, 9980215, 9980214, 9980213, 9980212, 9980211, 9980210, 9980209, 9980208, 9980207, 9980206, 9980205, 9980204, 9980203, 9980202, 9980201, 9980200, 9980199, 9980198, 9980197, 9980196, 9980195, 9980194, 9980193, 9980192, 9980191, 9980190, 9980189, 9980188, 9980187, 9980186, 9980185, 9980184, 9980183, 9980182, 9980181, 9980180, 9980179, 9980178, 9980177, 9980176, 9980175, 9980174, 9980173, 9980172, 9980171, 9980170, 9980169, 9980168, 9980167, 9980166, 9980165, 9980164, 9980163, 9980162, 9980161, 9980160, 9980159, 9980158, 9980157, 9980156, 9980155, 9980154, 9980153, 9980152, 9980151, 9980150, 9980149, 9980148, 9980147, 9980146, 9980145, 9980144, 9980143, 9980142, 9980141, 9980140, 9980139, 9980138, 9980137, 9980136, 9980135, 9980134, 9980133, 9980132, 9980131, 9980130, 9980129, 9980128, 9980127, 9980126, 9980125, 9980124, 9980123, 9980122, 9980121, 9980120, 9980119, 9980118, 9980117, 9980116, 9980115, 9980114, 9980113, 9980112, 9980111, 9980110, 9980109, 9980108, 9980107, 9980106, 9980105, 9980104, 9980103, 9980102, 9980101, 9980100, 9980099, 9980098, 9980097, 9980096, 9980095, 9980094, 9980093, 9980092, 9980091, 9980090, 9980089, 9980088, 9980087, 9980086, 9980085, 9980084, 9980083, 9980082, 9980081, 9980080, 9980079, 9980078, 9980077, 9980076, 9980075, 9980074, 9980073, 9980072, 9980071, 9980070, 9980069, 9980068, 9980067, 9980066, 9980065, 9980064, 9980063, 9980062, 9980061, 9980060, 9980059, 9980058, 9980057, 9980056, 9980055, 9980054, 9980053, 9980052, 9980051, 9980050, 9980049, 9980048, 9980047, 9980046, 9980045, 9980044, 9980043, 9980042, 9980041, 9980040, 9980039, 9980038, 9980037, 9980036, 9980035, 9980034, 9980033, 9980032, 9980031, 9980030, 9980029, 9980028, 9980027, 9980026, 9980025, 9980024, 9980023, 9980022, 9980021, 9980020, 9980019, 9980018, 9980017, 9980016, 9980015, 9980014, 9980013, 9980012, 9980011, 9980010, 9980009, 9980008, 9980007, 9980006, 9980005, 9980004, 9980003, 9980002, 9980001]], "loose": false}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"basic": false, "label": "528", "slug": "minimum-moves-to-equal-array-elements-ii", "id": 528, "title": "Minimum Moves to Equal Array Elements II", "difficulty": "Medium", "category": "math", "link": "https://leetcode.com/problems/minimum-moves-to-equal-array-elements-ii/", "examples": [{"input": "nums = [1,2,3]", "output": "2", "explanation": "Equalize at 2: one move raises 1 to 2 and one move lowers 3 to 2."}, {"input": "nums = [1,10,2,9]", "output": "16", "explanation": "Equalizing at any value between 2 and 9 costs 16 moves; for example target 5 needs 4 + 5 + 3 + 4 moves."}], "hints": ["The total travel distance is minimized by picking a median of the array as the common target.", "Sort the array, take the middle element, and add up absolute differences to it."], "statement": "You are given an integer array `nums`. In one move you may increment or decrement a single element by 1.\n\nReturn the smallest number of moves needed to make all elements equal.\n\n**Constraints:**\n- `1 <= nums.length <= 10^5`\n- `-10^9 <= nums[i] <= 10^9`\n", "solution": "## Approach\n\nMoving every element to a shared target costs the sum of absolute deviations, and that sum is minimized at any median of the data. Sort the array, read off the middle element, and accumulate the absolute gaps to it. Shifting the target away from the median raises as much distance on one side as it saves on the other, so the median choice is optimal.\n\n## Complexity Analysis\n\n- **Time Complexity:** O(n log n) for sorting.\n- **Space Complexity:** O(1) extra space besides sorting.\n\n## Implementation\n\n```python\nclass Solution:\n def minMoves2(self, nums: list) -> int:\n nums = sorted(nums)\n med = nums[len(nums) // 2]\n return sum(abs(v - med) for v in nums)\n```\n", "starter": {"go": "package main\n\nfunc MinMoves2(nums []int) int {\n \n}", "python": "from typing import List\nclass Solution:\n def minMoves2(self, nums: List[int]) -> int:\n pass", "cpp": "#include <vector>\nusing namespace std;\n\nclass Solution {\npublic:\n int minMoves2(vector<int>& nums) {\n return 0;\n }\n};"}, "fn": "minMoves2", "params": [{"name": "nums", "type": "int_array"}], "outputType": "int", "tests": [["[1,2,3]"], ["[1,10,2,9]"], ["[1]"], ["[1,1,1]"], ["[1,0,0,8,6]"], ["[1,2]"], ["[1,1000000]"], ["[4,9,4,9]"], ["[-100,100]"], ["[1,2,3,4,5,6,7,8,9,10]"], ["[5,5,5,10]"], ["@javascript:JSON.stringify(Array(100000).fill(1))"], ["[1,2,3,4,5]"], ["[10,10,10]"], ["[0,0,0,0]"], ["[5,1,5,1,5]"], ["[100,200,300]"], ["[-1,0,1]"], ["[7,3]"], ["[2,2,3,3,3]"], ["[8,8,9,9,10]"], ["[0,10]"], ["[1,3,5,7,9]"], ["[4,4,4,5]"], ["[6,1,2,3,4]"], ["[50,50,51,52]"], ["[9,9,9,9,9]"], ["[-5,5]"]], "expected": [2, 16, 0, 0, 14, 1, 999999, 10, 200, 25, 5, 0, 6, 0, 0, 8, 200, 2, 4, 2, 3, 10, 12, 1, 7, 3, 0, 10], "loose": false}
|