IHCS3UOEC5GJ55P7SIUJ2QUX6L6UZWJOFKAX73LTGAELGUJ7CHKAC
(ns day5
(:require [clojure.string :as str]))
(defn init-stacks [number-of-stacks]
(repeat number-of-stacks []))
(defn put-in-stacks [stacks line]
(map-indexed (fn [i cargo] (conj (nth stacks i) cargo)) line))
(defn fill-in-stacks [lines]
(loop [stacks (init-stacks (count (first lines)))
l lines]
(if (empty? l)
stacks
(recur (put-in-stacks stacks (first l)) (rest l)))))
(defn extract-cargo [line]
(map second line))
(defn parse-ints [v]
(map #(Integer/parseInt %) v))
(defn parse-input []
(let [in-str (slurp "resources/day5.in")
lines (str/split-lines in-str)
lines-with-stacks (reverse (drop-last (take-while #(not= % "") lines)))
split-stacks (map #(partition 4 4 " " %) lines-with-stacks)
clean-stacks (map extract-cargo split-stacks)
stacks (fill-in-stacks clean-stacks)
stacks (map #(take-while (fn [x] (not= x \space)) %) stacks)
lines-with-transitions (rest (drop-while #(not= % "") lines))
transitions (map #(str/replace % #"[(move)(from)(to)]" "") lines-with-transitions)
transitions (map str/trim transitions)
transitions (map #(str/split % #" ") transitions)]
{:stacks (map vec stacks), :transitions (map parse-ints transitions)}))
(defn replace-in-coll [coll n replacement]
(concat (take n coll) (list replacement) (nthnext coll (inc n))))
(defn move-cargo [stacks from to]
(let [from-idx (- from 1)
to-idx (- to 1)
from-stack (nth stacks from-idx)
to-stack (nth stacks to-idx)
cargo (last from-stack)
new-from-stack (vec (drop-last from-stack))
new-to-stack (vec (conj to-stack cargo))
replaced-from (replace-in-coll stacks from-idx new-from-stack)
new-stacks (replace-in-coll replaced-from to-idx new-to-stack)]
new-stacks))
(defn batch-cargo [stack batch-size]
(let [start-idx (- (count stack) batch-size)]
(nthnext stack start-idx)))
(defn move-cargo-in-batches [stacks [batch-size from to]]
(let [from-idx (- from 1)
to-idx (- to 1)
from-stack (nth stacks from-idx)
to-stack (nth stacks to-idx)
cargo (batch-cargo from-stack batch-size)
new-from-stack (vec (drop-last batch-size from-stack))
new-to-stack (vec (concat to-stack cargo))
replaced-from (replace-in-coll stacks from-idx new-from-stack)
new-stacks (replace-in-coll replaced-from to-idx new-to-stack)]
new-stacks))
(defn expand-transition [[how-many from to]]
(repeat how-many [from to]))
(defn expand-transitions [transitions]
(->> transitions
(map expand-transition)
(flatten)
(partition 2)))
(defn top-from-stacks [stacks]
(apply str (map last stacks)))
(defn do-transitions [stacks transitions]
(loop [s stacks
t transitions]
(let [transition (first t)
from (first transition)
to (second transition)]
(if (empty? t)
s
(recur (move-cargo s from to) (rest t))))))
(defn do-batch-transitions [stacks transitions]
(loop [s stacks
t transitions]
(let [transition (first t)]
(if (empty? t)
s
(recur (move-cargo-in-batches s transition) (rest t))))))
(defn part1-solution []
(let [input (parse-input)
stacks (:stacks input)
transitions (:transitions input)
after-moving (->> (expand-transitions transitions)
(do-transitions stacks))]
(top-from-stacks after-moving)))
(defn part2-solution []
(let [input (parse-input)
stacks (:stacks input)
transitions (:transitions input)
after-moving (do-batch-transitions stacks transitions)]
(top-from-stacks after-moving)))
(comment
(parse-input)
(put-in-stacks (init-stacks 9) '(\B \W \N \P \D \V \G \L \T))
(put-in-stacks '([\B] [\W] [\N] [\P] [\D] [\V] [\G] [\L] [\T]) '(\P \G \R \Z \Z \C \Z \G \P))
(:stacks (parse-input))
(move-cargo (:stacks (parse-input)) 1 2)
(expand-transitions (take 1 (:transitions (parse-input))))
(expand-transitions (:transitions (parse-input)))
(top-from-stacks (:stacks (parse-input)))
(top-from-stacks (do-transitions (:stacks (parse-input)) (expand-transitions (:transitions (parse-input)))))
(part1-solution)
(batch-cargo [1 2 3 4 5 6] 2)
(batch-cargo [1 2 3 4 5 6] 3)
(batch-cargo [1 2 3 4 5 6] 4)
(batch-cargo [1 2 3 4 5 6] 1)
(move-cargo-in-batches (:stacks (parse-input)) (first (:transitions (parse-input))))
(part2-solution)
)
(ns edition2022.day4
(:require [clojure.string :as str]))
(defn parse-range [p]
(map #(Integer/parseInt %) (str/split p #"-")))
(defn parse-ranges [[p1 p2]]
[(parse-range p1) (parse-range p2)])
(defn read-ranges []
(let [in-str (slurp "resources/day4.in")
lines (str/split-lines in-str)
pairs (map #(str/split % #",") lines)
ranges (map parse-ranges pairs)]
ranges))
(defn fully-contains? [[section1 section2]]
(and
(<= (first section1) (first section2))
(>= (second section1) (second section2))))
(defn one-or-other-fully-contains? [sections]
(or
(fully-contains? sections)
(fully-contains? (reverse sections))))
(defn count-fully-contained [ranges]
(->> ranges
(filter one-or-other-fully-contains?)
(count)))
(defn overlaps? [[section1 section2]]
(and
(<= (first section1) (first section2))
(>= (second section1) (first section2))))
(defn one-or-other-overlaps? [sections]
(or
(overlaps? sections)
(overlaps? (reverse sections))))
(defn count-overlapping [ranges]
(->> ranges
(filter one-or-other-overlaps?)
(count)))
(comment
(fully-contains? [[3 6] [3 4]])
(fully-contains? [[3 6] [2 4]])
(fully-contains? [[3 6] [3 7]])
(fully-contains? [[3 6] [2 7]])
(one-or-other-fully-contains? [[3 6] [2 7]])
(read-ranges)
(count-fully-contained (read-ranges))
(count-overlapping (read-ranges))
)
(ns edition2022.day3
(:require [clojure.string :as str]
[clojure.set :as s]))
(defn read-input []
(slurp "resources/day3.in"))
(defn create-rucksacks [in-str]
(let [lines (str/split-lines in-str)
rucksacks (map seq lines)]
rucksacks))
(defn split-compartments [rucksack]
(partition (/ (count rucksack) 2) rucksack))
(defn find-shared-item [x]
(apply s/intersection (map #(apply hash-set %) x)))
(defn calculate-priority [item]
(let [num-val (int item)]
(if (> num-val 90)
(- num-val 96)
(- num-val 64 -26)
)))
(defn sum-priorities-for-compartments [rucksacks]
(->> rucksacks
(map split-compartments)
(map find-shared-item)
(map seq)
(flatten)
(map calculate-priority)
(apply +)
))
(defn sum-priorities-for-groups [rucksacks]
(->> rucksacks
(partition 3)
(map find-shared-item)
(map seq)
(flatten)
(map calculate-priority)
(apply +)))
(comment
(read-input)
(first (create-rucksacks))
(split-compartments (first (create-rucksacks)))
(find-shared-item (split-compartments (first (create-rucksacks))))
(calculate-priority \Z)
(sum-priorities-for-compartments (create-rucksacks "vJrwpWtwJgWrhcsFMMfFFhFp\njqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL\nPmmdzqPrVvPwwTWBwg\nwMqvLMZHhHMvwLHjbvcjnnSBnvTQFn\nttgJtRGJQctTZtZT\nCrZsJsPPZsGzwwsLwLmpwMDw"))
(sum-priorities-for-compartments (create-rucksacks "aa\naa"))
(sum-priorities-for-compartments (create-rucksacks (read-input)))
(sum-priorities-for-groups (create-rucksacks (read-input))))
(ns edition2022.day2
(:require [clojure.string :as str]))
(def input-mapping
{"A" :rock
"B" :paper
"C" :scissors
"X" :rock
"Y" :paper
"Z" :scissors})
(def need-for-win-mapping
{:rock {"X" :scissors, "Y" :rock, "Z" :paper}
:paper {"X" :rock, "Y" :paper, "Z" :scissors}
:scissors {"X" :paper, "Y" :scissors, "Z" :rock}})
(defn read-input []
(let [in-str (slurp "resources/day2.in")
rows (str/split-lines in-str)
split-rows (map #(str/split % #" ") rows)]
split-rows))
(defn translate-input-part1 [rounds]
(map #(map input-mapping %) rounds))
(defn translate-round-part2 [[opponent need-for-win]]
(let [opponent-trn (input-mapping opponent)
you-tn (get-in need-for-win-mapping [opponent-trn need-for-win])]
[opponent-trn you-tn]))
(defn translate-input-part2 [rounds]
(map translate-round-part2 rounds))
(def selected-score
{:rock 1, :paper 2, :scissors 3})
(defn result-score [round]
(let [table {[:rock :rock] 3,
[:paper :paper] 3,
[:scissors :scissors] 3,
[:rock :paper] 6,
[:paper :scissors] 6,
[:scissors :rock] 6}
score (table round)]
(or score 0)))
(defn compute-round-score [round]
(let [selected (selected-score (second round))
result (result-score round)]
(+ selected result)))
(defn compute-total-score [rounds]
(apply + (map compute-round-score rounds)))
(comment
(compute-total-score [[:rock :paper] [:paper :rock] [:scissors :scissors]])
(read-input)
(compute-total-score (translate-input-part1 (read-input)))
(translate-round-part2 ["A" "Y"])
(compute-total-score (translate-input-part2 (read-input))))
(ns edition2022.day1
(:require [clojure.string :as str]))
;https://adventofcode.com/2022/day/1
(defn read-input []
(let [input-str (slurp "resources/day1.in")
input (str/split-lines input-str)]
(loop [in input
result []]
(if (empty? in)
result
(recur (rest (drop-while #(not= "" %) in)) (conj result (map #(Integer/parseInt %) (take-while #(not= "" %) in))))))))
(defn calculate-calories [backpack]
(apply + backpack))
(defn find-max-calories [backpacks]
(apply max (map calculate-calories backpacks)))
(defn top-3-calories [backpacks]
(->> (map calculate-calories backpacks)
(sort)
(take-last 3)
(apply +)))
(comment
(calculate-calories [1 2 3 4])
(find-max-calories [[1 2] [3 4]])
(top-3-calories [[1 2] [3 4] [5 6] [7 8]])
(read-input)
(find-max-calories (read-input))
(top-3-calories (read-input)))
[T] [Q] [S]
[R] [M] [L] [V] [G]
[D] [V] [V] [Q] [N] [C]
[H] [T] [S] [C] [V] [D] [Z]
[Q] [J] [D] [M] [Z] [C] [M] [F]
[N] [B] [H] [N] [B] [W] [N] [J] [M]
[P] [G] [R] [Z] [Z] [C] [Z] [G] [P]
[B] [W] [N] [P] [D] [V] [G] [L] [T]
1 2 3 4 5 6 7 8 9
move 5 from 4 to 9
move 3 from 5 to 1
move 12 from 9 to 6
move 1 from 6 to 9
move 3 from 2 to 8
move 6 from 3 to 9
move 2 from 2 to 9
move 2 from 3 to 5
move 9 from 8 to 1
move 1 from 6 to 9
move 1 from 8 to 3
move 14 from 1 to 2
move 8 from 2 to 6
move 2 from 2 to 7
move 2 from 5 to 8
move 5 from 2 to 6
move 9 from 7 to 8
move 1 from 9 to 8
move 5 from 6 to 9
move 1 from 3 to 8
move 1 from 7 to 5
move 1 from 1 to 5
move 4 from 1 to 7
move 15 from 6 to 1
move 4 from 7 to 6
move 2 from 5 to 7
move 9 from 8 to 7
move 13 from 1 to 3
move 8 from 6 to 9
move 1 from 6 to 8
move 1 from 7 to 5
move 2 from 1 to 3
move 4 from 7 to 1
move 13 from 3 to 6
move 2 from 1 to 3
move 1 from 5 to 8
move 2 from 3 to 4
move 5 from 7 to 1
move 4 from 1 to 9
move 2 from 4 to 5
move 4 from 6 to 2
move 3 from 2 to 5
move 6 from 8 to 1
move 7 from 6 to 7
move 1 from 3 to 5
move 1 from 2 to 4
move 8 from 1 to 8
move 4 from 6 to 2
move 3 from 5 to 3
move 1 from 4 to 3
move 2 from 1 to 3
move 8 from 8 to 5
move 2 from 3 to 8
move 4 from 5 to 3
move 1 from 9 to 2
move 1 from 8 to 3
move 1 from 2 to 1
move 15 from 9 to 3
move 6 from 7 to 5
move 1 from 7 to 3
move 2 from 2 to 8
move 6 from 9 to 4
move 22 from 3 to 6
move 3 from 8 to 6
move 1 from 1 to 2
move 2 from 9 to 8
move 6 from 4 to 7
move 6 from 7 to 2
move 16 from 6 to 9
move 8 from 2 to 1
move 4 from 6 to 1
move 2 from 3 to 4
move 9 from 5 to 4
move 1 from 7 to 9
move 1 from 6 to 2
move 3 from 5 to 7
move 16 from 9 to 4
move 2 from 7 to 1
move 4 from 6 to 3
move 1 from 9 to 5
move 1 from 9 to 7
move 1 from 7 to 6
move 1 from 7 to 9
move 2 from 9 to 2
move 1 from 6 to 1
move 2 from 8 to 1
move 11 from 4 to 2
move 9 from 2 to 6
move 9 from 6 to 1
move 15 from 4 to 6
move 1 from 4 to 2
move 1 from 5 to 3
move 6 from 6 to 4
move 3 from 2 to 1
move 2 from 4 to 6
move 3 from 6 to 2
move 7 from 6 to 2
move 1 from 4 to 7
move 1 from 7 to 2
move 5 from 3 to 6
move 1 from 5 to 4
move 1 from 4 to 5
move 8 from 1 to 6
move 1 from 4 to 8
move 12 from 6 to 1
move 1 from 3 to 4
move 1 from 4 to 1
move 1 from 3 to 4
move 2 from 6 to 5
move 31 from 1 to 7
move 2 from 5 to 7
move 1 from 8 to 2
move 1 from 5 to 8
move 1 from 8 to 6
move 3 from 4 to 9
move 3 from 9 to 4
move 2 from 4 to 3
move 2 from 1 to 6
move 2 from 3 to 8
move 1 from 4 to 9
move 4 from 2 to 9
move 17 from 7 to 8
move 3 from 8 to 2
move 2 from 9 to 4
move 4 from 2 to 5
move 1 from 1 to 4
move 1 from 9 to 3
move 8 from 8 to 4
move 1 from 9 to 4
move 4 from 8 to 3
move 8 from 2 to 5
move 2 from 2 to 3
move 1 from 2 to 1
move 1 from 8 to 4
move 2 from 8 to 1
move 1 from 7 to 2
move 1 from 8 to 6
move 3 from 4 to 5
move 8 from 4 to 7
move 1 from 2 to 8
move 1 from 8 to 1
move 2 from 4 to 7
move 8 from 5 to 9
move 7 from 5 to 2
move 6 from 3 to 1
move 6 from 1 to 2
move 9 from 9 to 4
move 5 from 7 to 4
move 2 from 1 to 2
move 9 from 4 to 2
move 3 from 6 to 2
move 1 from 6 to 8
move 1 from 8 to 9
move 1 from 3 to 5
move 6 from 7 to 5
move 4 from 4 to 2
move 19 from 2 to 3
move 1 from 4 to 6
move 7 from 7 to 5
move 2 from 1 to 8
move 12 from 3 to 4
move 3 from 4 to 1
move 1 from 6 to 3
move 8 from 5 to 9
move 3 from 9 to 7
move 6 from 4 to 3
move 3 from 1 to 2
move 13 from 3 to 7
move 3 from 4 to 6
move 4 from 9 to 4
move 14 from 7 to 8
move 3 from 5 to 2
move 3 from 2 to 6
move 1 from 6 to 2
move 1 from 3 to 9
move 4 from 4 to 6
move 11 from 2 to 7
move 2 from 9 to 6
move 3 from 5 to 6
move 1 from 9 to 7
move 14 from 6 to 5
move 1 from 5 to 1
move 4 from 5 to 8
move 2 from 5 to 6
move 4 from 2 to 5
move 1 from 2 to 9
move 14 from 8 to 5
move 2 from 8 to 4
move 3 from 8 to 7
move 5 from 5 to 4
move 13 from 5 to 7
move 5 from 7 to 6
move 31 from 7 to 9
move 7 from 6 to 7
move 6 from 5 to 7
move 1 from 8 to 9
move 1 from 5 to 3
move 1 from 3 to 5
move 1 from 1 to 8
move 6 from 4 to 3
move 1 from 8 to 5
move 1 from 4 to 1
move 33 from 9 to 3
move 13 from 7 to 1
move 29 from 3 to 2
move 3 from 3 to 8
move 1 from 5 to 2
move 20 from 2 to 6
move 19 from 6 to 4
move 1 from 7 to 4
move 5 from 1 to 7
move 1 from 8 to 7
move 2 from 8 to 5
move 10 from 2 to 8
move 6 from 3 to 9
move 4 from 7 to 1
move 1 from 3 to 5
move 1 from 1 to 2
move 1 from 7 to 6
move 1 from 2 to 8
move 1 from 8 to 7
move 4 from 9 to 7
move 2 from 5 to 2
move 1 from 8 to 5
move 1 from 8 to 6
move 7 from 8 to 3
move 2 from 9 to 4
move 3 from 5 to 1
move 2 from 2 to 5
move 5 from 7 to 8
move 10 from 4 to 1
move 5 from 8 to 5
move 10 from 1 to 3
move 2 from 6 to 4
move 1 from 7 to 3
move 1 from 8 to 1
move 3 from 5 to 8
move 12 from 4 to 7
move 3 from 5 to 3
move 16 from 1 to 7
move 2 from 3 to 7
move 1 from 5 to 6
move 3 from 8 to 4
move 1 from 4 to 7
move 1 from 6 to 3
move 14 from 3 to 1
move 5 from 3 to 8
move 1 from 3 to 5
move 1 from 7 to 6
move 1 from 6 to 2
move 13 from 7 to 2
move 1 from 5 to 3
move 3 from 4 to 2
move 1 from 3 to 5
move 3 from 8 to 9
move 2 from 8 to 9
move 1 from 6 to 4
move 5 from 2 to 4
move 3 from 2 to 5
move 7 from 7 to 3
move 7 from 4 to 7
move 5 from 3 to 7
move 8 from 2 to 3
move 5 from 9 to 5
move 11 from 1 to 9
move 4 from 3 to 1
move 1 from 2 to 7
move 4 from 1 to 7
move 22 from 7 to 3
move 5 from 3 to 4
move 1 from 7 to 1
move 1 from 1 to 4
move 3 from 4 to 6
move 3 from 1 to 3
move 2 from 6 to 1
move 2 from 4 to 9
move 13 from 9 to 1
move 1 from 6 to 5
move 4 from 7 to 1
move 3 from 1 to 6
move 19 from 3 to 9
move 5 from 3 to 1
move 18 from 9 to 8
move 1 from 9 to 3
move 11 from 1 to 7
move 1 from 4 to 5
move 13 from 8 to 1
move 7 from 5 to 8
move 7 from 8 to 5
move 3 from 6 to 5
move 2 from 3 to 9
move 1 from 3 to 7
move 5 from 5 to 2
move 10 from 1 to 5
move 9 from 7 to 9
move 11 from 5 to 2
move 2 from 8 to 4
move 1 from 4 to 3
move 2 from 7 to 3
move 1 from 7 to 4
move 3 from 8 to 3
move 8 from 5 to 2
move 2 from 3 to 8
move 4 from 3 to 8
move 6 from 2 to 6
move 5 from 1 to 8
move 8 from 2 to 7
move 2 from 4 to 7
move 9 from 2 to 9
move 4 from 7 to 8
move 5 from 1 to 8
move 3 from 7 to 4
move 1 from 8 to 3
move 3 from 7 to 2
move 3 from 1 to 9
move 1 from 4 to 9
move 1 from 6 to 3
move 18 from 8 to 5
move 1 from 8 to 2
move 2 from 4 to 9
move 3 from 2 to 1
move 2 from 2 to 3
move 24 from 9 to 8
move 3 from 3 to 7
move 15 from 8 to 2
move 12 from 2 to 5
move 1 from 7 to 4
move 1 from 3 to 1
move 28 from 5 to 4
move 1 from 7 to 9
move 2 from 2 to 1
move 4 from 6 to 3
move 1 from 5 to 3
move 1 from 5 to 9
move 1 from 2 to 6
move 5 from 3 to 5
move 8 from 4 to 2
move 2 from 6 to 2
move 1 from 7 to 3
move 4 from 2 to 8
move 3 from 1 to 2
move 5 from 2 to 5
move 3 from 5 to 4
move 2 from 1 to 5
move 2 from 2 to 1
move 4 from 9 to 2
move 7 from 8 to 9
move 1 from 3 to 1
move 1 from 1 to 7
move 2 from 8 to 3
move 4 from 9 to 3
move 9 from 5 to 7
move 3 from 3 to 5
move 1 from 5 to 3
move 7 from 7 to 9
move 1 from 7 to 9
move 1 from 5 to 9
move 1 from 5 to 1
move 1 from 8 to 5
move 9 from 9 to 1
move 2 from 7 to 2
move 1 from 5 to 6
move 4 from 3 to 2
move 11 from 2 to 4
move 1 from 8 to 4
move 1 from 8 to 2
move 1 from 2 to 8
move 1 from 6 to 5
move 1 from 8 to 6
move 6 from 1 to 7
move 1 from 5 to 6
move 1 from 6 to 5
move 3 from 9 to 8
move 3 from 8 to 1
move 3 from 7 to 8
move 1 from 6 to 9
move 1 from 2 to 4
move 1 from 9 to 7
move 2 from 7 to 9
move 10 from 1 to 6
move 2 from 9 to 3
move 1 from 5 to 7
move 3 from 7 to 5
move 3 from 5 to 3
move 4 from 6 to 3
move 18 from 4 to 2
move 3 from 4 to 1
move 1 from 1 to 3
move 2 from 1 to 2
move 8 from 2 to 9
move 1 from 4 to 7
move 1 from 7 to 1
move 3 from 9 to 2
move 3 from 8 to 6
move 1 from 4 to 9
move 7 from 2 to 8
move 7 from 6 to 7
move 3 from 9 to 2
move 3 from 2 to 5
move 6 from 4 to 6
move 2 from 5 to 6
move 3 from 3 to 6
move 6 from 6 to 3
move 5 from 7 to 5
move 2 from 4 to 8
move 5 from 5 to 2
move 1 from 7 to 2
move 4 from 6 to 4
move 1 from 7 to 8
move 1 from 6 to 4
move 1 from 5 to 7
move 1 from 3 to 4
move 1 from 6 to 4
move 2 from 9 to 1
move 3 from 1 to 3
move 1 from 3 to 1
move 9 from 2 to 1
move 8 from 1 to 5
move 1 from 7 to 1
move 1 from 9 to 1
move 4 from 5 to 7
move 4 from 7 to 5
move 1 from 1 to 9
move 5 from 2 to 4
move 1 from 9 to 6
move 8 from 8 to 9
move 18 from 4 to 9
move 3 from 5 to 4
move 2 from 6 to 5
move 1 from 8 to 5
move 17 from 9 to 6
move 2 from 8 to 1
move 1 from 4 to 6
move 8 from 6 to 3
move 1 from 1 to 8
move 5 from 5 to 3
move 1 from 1 to 7
move 1 from 8 to 6
move 2 from 4 to 5
move 6 from 9 to 4
move 1 from 7 to 5
move 7 from 6 to 8
move 2 from 6 to 5
move 6 from 8 to 3
move 1 from 9 to 6
move 2 from 9 to 5
move 1 from 3 to 1
move 1 from 8 to 6
move 7 from 5 to 6
move 7 from 6 to 7
move 5 from 4 to 9
move 1 from 4 to 5
move 2 from 9 to 6
move 3 from 1 to 7
move 5 from 6 to 8
move 1 from 1 to 5
move 21 from 3 to 6
move 3 from 7 to 2
move 2 from 9 to 3
move 1 from 9 to 7
move 5 from 5 to 7
move 7 from 6 to 7
move 14 from 7 to 1
move 3 from 2 to 8
move 12 from 1 to 4
move 5 from 7 to 6
move 1 from 7 to 4
move 8 from 8 to 3
move 8 from 3 to 5
move 6 from 5 to 6
move 1 from 5 to 3
move 2 from 1 to 8
move 2 from 8 to 3
move 10 from 3 to 7
move 8 from 4 to 3
move 3 from 4 to 9
move 3 from 9 to 2
move 1 from 2 to 5
move 2 from 2 to 9
move 13 from 3 to 1
move 1 from 4 to 1
move 2 from 1 to 7
move 1 from 5 to 8
move 1 from 9 to 6
move 1 from 9 to 2
move 1 from 4 to 9
move 8 from 6 to 2
move 1 from 9 to 5
move 1 from 2 to 8
move 1 from 5 to 9
move 2 from 2 to 3
move 12 from 6 to 8
move 1 from 3 to 7
move 8 from 8 to 4
move 1 from 9 to 1
move 13 from 1 to 3
move 2 from 4 to 5
move 12 from 7 to 2
move 1 from 5 to 8
move 3 from 3 to 8
move 2 from 4 to 1
move 1 from 1 to 9
8-17,16-49
17-38,18-36
17-43,43-43
86-94,7-87
23-97,22-85
8-50,7-50
82-84,1-83
43-95,51-94
7-89,8-90
85-90,21-70
46-69,7-46
93-98,18-99
42-85,53-92
25-65,64-65
13-53,12-53
59-90,60-95
1-79,58-78
99-99,16-96
56-86,86-86
49-50,50-51
79-83,80-83
31-86,8-20
8-85,9-86
34-81,35-35
7-87,8-95
14-50,49-51
2-65,1-1
37-37,35-44
17-72,3-39
6-25,24-26
56-94,37-93
49-76,36-75
26-37,25-53
98-98,10-97
48-87,49-97
31-82,30-90
5-98,4-93
77-97,76-94
96-98,1-97
67-67,68-95
26-51,50-50
43-67,66-67
31-68,30-90
36-64,65-92
2-2,3-11
57-60,22-58
43-55,44-56
8-81,80-84
2-52,2-2
28-83,76-77
20-83,13-82
23-87,22-72
11-92,91-91
52-84,5-51
74-78,67-97
48-66,67-67
86-86,39-87
5-6,7-54
14-15,14-98
48-89,59-74
51-75,52-67
6-35,16-74
65-98,44-96
10-85,84-84
26-96,95-95
21-96,22-22
13-69,12-68
67-67,47-66
64-70,71-71
59-96,16-59
69-69,56-70
12-90,20-97
6-45,5-98
89-89,39-88
2-69,1-3
19-33,27-33
69-97,94-94
2-98,97-99
22-88,22-38
2-80,1-1
64-64,63-63
21-22,21-79
18-88,19-89
44-57,43-56
55-56,3-55
40-76,39-84
71-94,70-94
22-23,22-83
2-12,15-26
37-72,12-45
4-79,3-61
2-33,33-34
33-82,18-32
1-99,2-95
7-79,7-79
62-99,2-99
88-94,18-96
35-38,38-38
26-27,26-56
8-64,2-8
11-11,13-88
69-90,17-44
21-22,22-42
38-38,37-37
16-52,10-15
24-82,24-82
9-85,2-26
28-99,1-97
86-86,25-85
9-66,9-27
73-73,74-90
18-99,19-98
85-93,92-92
23-55,23-97
6-79,80-96
31-62,37-42
42-44,43-49
20-85,73-86
56-96,13-94
2-17,8-16
1-59,5-84
46-55,4-77
65-87,16-87
41-87,41-42
1-94,2-92
24-91,24-24
8-67,6-25
89-99,84-96
23-67,2-24
6-38,1-2
67-92,72-98
3-22,7-80
11-53,5-11
62-62,33-62
30-96,31-96
32-99,31-32
15-15,14-70
2-3,14-75
37-56,38-44
46-82,82-82
58-59,32-58
7-43,6-42
25-26,26-84
6-91,92-94
3-69,2-70
11-80,3-9
56-57,57-82
26-68,25-67
43-47,7-46
39-49,2-38
50-51,32-50
85-85,86-98
8-56,5-57
16-83,17-83
43-93,44-92
65-67,18-66
19-76,19-75
33-55,39-68
43-44,38-43
22-26,21-27
1-4,3-68
50-65,26-64
33-94,98-99
52-99,50-50
26-43,20-42
19-37,37-50
2-99,99-99
4-94,3-93
88-95,3-87
71-98,88-98
11-58,10-11
7-93,5-92
98-98,62-82
22-43,43-44
21-28,25-28
56-56,58-63
9-10,9-85
66-87,66-67
8-79,78-78
25-79,78-80
40-40,40-62
5-98,6-99
3-34,28-99
22-93,21-97
26-42,25-97
39-48,38-42
32-50,32-32
14-91,93-93
8-62,7-89
27-93,26-93
64-66,59-65
7-77,76-78
11-72,63-71
54-81,22-80
3-89,89-89
28-80,81-81
9-91,19-43
17-90,90-90
24-75,76-81
31-52,15-24
38-75,39-76
40-55,42-91
95-95,67-94
12-95,11-95
8-54,54-55
18-29,28-53
41-41,42-76
98-98,13-98
23-99,14-27
45-45,10-46
2-70,81-98
14-88,13-90
21-58,28-66
23-24,23-90
12-70,11-85
15-15,16-75
46-48,26-45
78-86,41-98
84-84,83-84
73-81,54-84
19-65,66-88
74-97,74-98
7-86,6-7
18-27,27-29
91-91,10-90
4-8,7-32
21-42,21-42
19-69,20-99
67-68,17-67
30-79,29-89
2-86,1-2
38-54,40-65
28-48,20-29
1-42,43-43
20-41,16-41
8-14,1-13
19-90,18-20
90-91,4-91
1-89,1-89
81-93,83-94
29-66,29-29
28-50,10-50
2-28,2-84
25-67,24-26
35-53,36-37
9-99,6-9
20-78,23-91
36-61,62-62
15-39,14-31
67-73,15-66
33-99,62-90
42-69,70-70
79-80,80-81
88-88,41-89
2-84,84-84
31-74,32-75
9-87,9-94
61-99,61-89
2-99,3-16
42-57,43-58
23-83,23-94
4-97,96-98
2-99,30-36
32-80,32-81
7-31,8-14
4-65,4-65
7-8,7-41
44-64,64-72
86-95,21-87
96-97,63-96
10-94,11-96
14-82,38-85
9-77,10-78
26-87,2-5
96-96,80-95
45-88,44-89
44-44,45-74
37-91,38-89
68-86,85-85
54-67,66-98
24-73,23-72
89-90,88-89
51-71,1-51
10-25,24-26
85-86,36-88
72-72,55-71
2-4,4-50
68-92,67-91
83-86,82-88
71-71,67-70
95-96,6-96
7-99,2-98
77-82,65-78
57-97,19-47
81-91,82-82
11-17,16-55
95-98,50-54
66-98,65-67
1-94,93-96
9-47,10-48
91-95,13-92
4-64,8-63
26-27,26-96
11-60,6-11
28-28,27-82
49-87,50-76
2-96,1-97
29-73,20-29
72-72,73-82
12-68,67-67
98-99,1-97
12-13,13-78
33-65,66-73
34-62,36-67
63-93,64-92
2-45,8-42
11-99,12-97
11-88,6-89
23-61,58-58
16-96,24-95
2-70,6-69
31-90,90-91
9-25,7-8
23-69,23-24
54-64,53-54
15-22,22-56
3-80,2-40
35-39,34-39
20-45,8-64
19-96,18-99
11-72,1-16
24-73,42-73
23-48,47-89
13-82,14-83
42-64,42-63
6-20,5-17
2-6,3-7
35-96,99-99
33-83,34-83
6-6,57-93
67-81,82-82
13-97,12-84
5-64,5-97
31-91,30-97
76-95,75-77
30-92,91-92
19-86,19-20
11-45,3-46
2-37,19-98
11-20,12-32
28-98,97-98
2-94,2-94
1-99,99-99
28-44,40-49
8-46,7-9
36-95,35-94
14-91,15-91
23-74,24-75
24-45,27-46
39-62,26-38
13-15,14-95
22-84,21-21
2-89,88-99
12-69,68-83
24-92,10-60
4-97,9-94
29-74,34-51
9-9,10-91
97-98,33-96
21-66,67-67
2-95,1-89
34-35,36-57
84-84,13-85
5-49,6-50
47-97,48-75
23-96,24-76
4-59,2-3
4-99,5-92
2-95,1-99
14-72,9-71
40-95,41-75
15-96,97-97
9-50,49-51
55-77,76-78
97-97,7-96
92-93,3-92
40-74,39-84
82-87,4-83
2-81,3-77
18-82,17-80
13-80,81-81
20-81,80-80
9-96,1-6
84-89,88-88
6-77,5-76
37-74,69-76
95-98,3-96
26-87,87-88
2-43,44-44
5-89,58-94
34-75,75-75
88-91,19-83
23-78,28-77
64-75,76-76
32-46,31-46
2-13,12-76
51-96,50-99
91-91,32-90
3-76,66-81
10-94,8-96
88-89,14-89
2-40,91-98
29-84,30-85
13-14,13-79
2-97,98-99
1-52,2-51
75-98,40-93
90-98,19-91
47-49,8-48
20-96,20-21
20-87,21-43
50-87,97-99
1-38,77-84
86-92,85-91
15-15,14-14
19-87,71-88
22-66,65-67
9-96,1-97
12-94,13-76
43-68,69-92
18-60,59-97
3-91,1-1
8-26,7-27
7-99,7-98
22-65,65-87
98-99,8-99
78-93,35-79
3-18,17-76
82-86,81-85
2-5,6-95
38-63,64-86
13-54,6-93
37-90,37-89
21-35,36-94
34-95,33-91
4-37,3-8
1-3,3-82
99-99,40-99
7-8,7-94
49-49,3-50
16-72,71-73
3-6,6-13
11-92,10-10
12-12,11-88
42-75,43-91
99-99,88-97
46-48,7-47
20-91,17-20
75-76,27-75
93-95,34-94
26-63,62-62
45-50,46-59
7-70,8-68
41-42,42-60
50-51,51-86
34-59,58-88
53-94,63-99
4-79,5-91
20-23,14-78
98-99,15-99
15-15,14-53
33-40,63-86
8-91,14-91
94-95,3-94
55-83,74-84
17-18,17-91
4-81,3-3
26-26,27-84
85-87,48-86
32-41,42-42
98-99,42-97
80-87,81-84
93-96,1-94
31-87,33-87
26-27,18-26
40-40,41-89
86-88,25-87
6-14,14-15
32-67,31-68
45-45,44-90
96-96,5-95
61-76,62-75
46-78,45-96
4-92,3-93
48-56,61-70
83-85,82-98
89-89,73-90
2-56,20-28
45-55,45-54
12-87,87-87
2-91,1-94
91-92,32-92
2-85,1-84
98-98,51-97
90-91,81-91
15-90,17-37
3-97,1-3
7-74,8-77
46-75,45-45
82-83,24-83
17-25,24-80
11-96,11-12
32-81,31-69
21-96,21-22
76-98,76-77
42-88,48-82
60-61,18-61
7-73,74-79
24-99,25-80
85-85,2-84
92-92,93-93
59-59,60-99
95-96,9-94
23-92,19-91
11-94,93-97
14-91,90-95
46-77,77-77
46-47,47-53
3-47,2-3
12-47,48-65
4-44,4-5
26-33,32-77
31-81,81-81
3-48,48-49
4-7,7-93
34-80,80-80
50-77,51-78
28-43,75-82
36-89,51-60
10-87,86-87
1-99,1-99
2-89,49-99
23-36,37-37
8-13,13-62
22-24,23-68
18-18,18-93
32-49,33-51
73-91,74-92
10-59,44-58
2-59,2-59
3-89,89-90
15-94,5-95
42-88,88-88
7-95,7-7
1-75,1-75
12-12,12-86
93-94,2-93
80-89,80-89
14-91,95-95
38-98,38-97
96-99,11-97
69-70,50-70
13-81,80-82
25-89,26-81
47-48,32-47
4-19,3-27
34-64,33-33
10-90,2-11
5-98,4-99
6-90,89-91
41-52,41-53
48-87,49-77
2-53,5-74
82-99,66-84
59-60,11-59
22-57,21-56
38-81,81-81
51-81,3-51
25-73,26-36
98-98,3-99
96-96,1-95
50-72,49-49
91-91,2-90
61-96,60-61
10-45,11-15
65-66,49-66
82-87,45-83
59-59,3-59
5-72,4-73
56-95,55-56
13-83,14-96
52-59,52-59
44-46,42-45
11-93,11-35
74-92,16-81
98-99,17-99
20-99,1-93
37-86,46-51
15-16,16-98
1-97,96-99
73-75,23-74
94-99,24-95
94-99,26-95
39-39,40-80
58-89,57-59
84-93,19-93
7-43,43-98
23-82,21-23
2-59,1-98
93-93,12-73
9-99,9-39
42-61,53-81
12-79,11-69
33-62,34-80
11-99,8-10
44-89,43-82
7-71,70-71
11-99,98-99
87-91,92-97
2-93,3-94
58-79,64-80
24-62,24-25
3-86,3-3
4-90,2-2
3-90,4-91
9-87,9-87
23-57,22-57
4-13,14-87
11-23,24-24
35-68,7-46
3-3,4-80
6-47,36-71
21-93,92-97
6-65,5-86
21-22,8-21
22-55,56-78
51-85,84-84
17-95,94-98
32-61,32-60
63-63,63-63
48-65,56-66
3-33,4-32
7-76,71-79
34-66,37-82
21-65,25-66
3-79,4-80
17-88,95-99
26-26,27-92
81-95,3-80
56-97,3-55
58-86,23-86
84-84,21-84
82-84,29-82
26-80,79-79
40-41,39-52
27-85,26-86
39-39,6-39
29-89,28-28
11-42,11-12
1-66,67-67
15-83,82-83
50-93,51-92
78-80,83-96
6-96,7-94
10-11,10-45
18-40,12-19
31-55,7-32
18-19,29-83
29-29,30-80
35-37,36-99
94-94,28-94
48-98,49-99
63-66,60-62
4-62,62-62
77-84,85-85
34-34,35-47
68-90,20-69
6-68,39-88
8-99,7-99
49-50,17-49
74-85,73-85
88-94,27-87
4-89,88-88
8-84,7-83
60-64,60-64
94-94,95-99
43-91,41-99
92-92,91-91
67-67,19-66
19-99,18-96
47-79,78-79
8-48,22-38
35-59,32-35
5-45,6-46
20-90,19-89
14-55,12-13
34-34,34-43
3-96,4-99
39-40,40-65
83-83,25-82
15-92,14-91
12-12,13-82
43-57,43-57
3-98,99-99
30-66,65-67
92-95,86-92
48-52,13-42
1-7,10-64
60-98,44-59
64-86,65-85
29-97,96-96
49-85,2-50
35-38,33-37
6-8,7-63
1-90,90-91
7-56,8-74
2-61,2-3
79-93,41-96
6-47,5-6
10-87,11-42
93-99,35-94
13-62,21-62
11-49,10-10
2-55,54-54
59-68,3-27
1-96,1-96
38-75,39-76
29-51,51-92
6-61,7-60
24-25,25-90
27-32,28-31
16-47,1-46
20-88,7-18
24-74,25-25
40-86,41-90
8-97,3-97
95-95,1-94
11-36,12-79
8-98,3-99
28-28,29-30
20-86,21-85
42-58,61-88
43-58,52-69
67-92,32-75
81-97,44-89
19-90,89-90
12-92,11-13
27-89,28-89
16-97,17-98
91-93,27-90
15-95,14-95
84-84,10-83
35-35,34-87
14-65,15-78
25-90,91-95
19-21,20-93
12-92,11-95
48-60,47-61
11-92,10-93
6-68,67-69
19-57,20-20
33-45,23-46
6-6,11-99
2-96,2-3
11-21,7-12
9-48,47-48
19-57,2-19
15-96,14-44
78-82,12-79
21-76,5-7
8-31,24-59
52-99,52-53
9-90,89-89
1-3,3-89
18-92,15-93
15-35,16-99
1-7,6-83
7-86,61-85
19-89,19-89
57-98,56-97
22-22,12-23
1-1,1-20
21-23,22-94
44-46,45-47
10-90,4-11
30-84,29-83
55-73,55-73
62-73,14-63
59-81,47-58
27-64,28-28
33-79,55-84
14-50,13-50
77-98,76-95
23-69,24-70
80-82,1-81
27-92,17-28
4-49,50-71
42-85,41-98
97-99,15-98
21-59,20-58
64-98,99-99
90-90,62-91
58-69,70-94
90-96,10-90
95-96,65-96
4-55,3-62
19-71,70-83
1-2,2-2
13-99,12-14
98-99,43-98
3-35,36-36
26-88,27-54
1-99,2-98
11-11,9-10
94-99,19-93
16-85,66-86
53-65,53-65
42-63,63-71
87-87,57-87
35-60,34-60
31-84,38-55
7-76,8-77
1-78,2-2
78-93,52-79
83-96,83-96
82-84,83-85
1-25,1-19
97-97,19-98
78-78,24-77
7-81,6-6
18-84,81-88
46-89,47-90
20-93,61-93
11-51,2-52
94-94,56-94
8-99,98-99
1-2,3-51
6-96,95-97
9-10,9-66
98-98,69-97
64-64,65-78
38-98,97-97
46-52,40-50
74-78,1-75
2-56,5-55
48-54,47-53
35-67,68-98
8-68,68-83
95-97,35-94
13-69,14-91
42-71,71-72
24-40,23-39
65-98,64-89
4-95,5-86
53-84,84-84
29-98,30-99
4-98,3-5
96-96,1-95
50-84,85-85
41-78,25-78
4-84,84-85
15-47,1-45
86-89,50-93
41-82,15-94
18-32,33-35
27-93,26-27
2-90,89-92
52-55,51-77
34-43,33-42
3-3,3-99
93-97,33-94
74-99,5-75
27-99,24-99
27-28,6-27
1-2,1-57
19-82,19-83
37-73,36-72
29-53,5-53
21-94,94-94
8-57,57-91
58-59,57-58
3-3,2-3
43-80,12-27
81-99,82-91
48-49,14-49
13-98,12-95
14-98,13-79
67-98,97-99
31-84,32-32
1-91,91-94
2-2,3-96
1-99,1-1
22-93,22-90
1-92,1-2
28-88,1-1
16-94,15-16
36-70,69-70
14-85,84-86
21-54,15-98
39-61,39-60
54-56,9-55
9-45,45-46
14-19,14-20
2-53,53-53
58-69,68-68
76-98,77-99
21-73,22-49
9-96,8-95
1-50,1-49
28-67,29-98
41-78,40-79
95-99,46-96
9-88,8-10
19-73,7-74
29-65,29-66
98-99,23-97
44-44,43-47
9-60,61-61
39-64,38-65
56-81,55-56
74-75,74-90
72-95,10-66
3-86,2-2
16-26,25-26
13-61,6-51
4-17,39-46
39-97,40-76
36-52,37-51
41-96,40-40
23-70,69-71
10-90,10-87
29-81,30-76
89-89,89-89
11-96,12-97
11-80,55-80
4-94,93-97
11-94,10-93
78-78,22-77
53-98,53-98
6-53,33-63
13-14,13-30
94-96,22-93
22-96,95-95
40-40,41-78
66-66,4-66
40-91,50-76
61-91,87-88
2-50,3-49
98-98,1-99
10-28,14-31
44-95,51-54
31-59,30-31
10-94,9-92
40-47,39-40
3-88,4-89
64-86,7-86
33-37,32-35
10-11,10-60
95-95,3-94
16-84,16-99
96-97,20-96
25-91,91-92
3-3,4-95
15-91,20-91
59-90,16-60
5-53,52-54
3-99,4-4
23-43,24-44
26-91,53-91
4-73,4-5
64-64,2-64
74-74,51-75
35-51,34-34
72-87,86-88
3-92,2-2
55-87,56-56
69-81,70-82
42-78,17-42
51-58,54-58
76-93,94-96
4-88,3-88
53-60,54-64
2-75,3-15
13-56,55-72
3-26,9-9
17-55,18-54
39-75,40-55
12-31,13-52
91-97,46-91
35-56,35-72
46-46,47-47
10-10,11-47
19-54,18-82
1-97,2-97
13-46,13-46
6-95,94-95
16-33,16-33
26-26,26-99
42-83,78-79
5-17,4-67
GGVGlqWFgVfFqqVZGFlblJPMsDbbMrDMpDsJRn
LwzHtwdLHHwDrzPZzzsJbJ
wdLTBvSvHvZVGCjhfN
HsSSnZVHjjssZnJpSJjBHHWgQGcgqqQLQdQFqNgWgqGNDg
rmmRwrtfThtTrbCrGGGcLBDTqDBNQLdL
mwPrrbzPfwvbzhwMMnnjHnBjZlnzMM
gjjdMBgdqdTpJpBcjgRRRlqnvrqfnZtrtZDw
zHShWLhCszCWHVbVzQWCPtQvNZRwtfftfNnrnftlfR
PzPSssHbVhCLFMJFcMFJJMjdJw
ZqJdtpfpjmpJjpnwWdttTCDLLTQFNTzTzrcqrQqc
MsSlBGvBsSGGSlbGsCgggNTgzNLczFQNrNQVQcFzFF
sGHHSGllhvMGhSRGCjtjtjnjnnmHWpWWtJ
tMdjQlHPHsGjsCtsCpwwqfhfnnFMDMrpfD
SbNvWvBRJRWwFSgppgSrfg
RNcNbvzJRcVLRVzTRFLjdHCQttdZdPlHstPl
QWqgpdBflpHNCNWNHHPm
VVMbbJsLFVMhrMJMmRjFNHwHjjCTGSSRFj
mbMsZzsLmVhJZrcLcJhLMtnqvBnZdggplDffvlnlvnDn
prnNnsFnZpnBNdNtFrNnzNQQwTTQZqTHTQJQMwHDMDlZ
jgfgcSmbLmhmcPShghRdmwJTQjTlqGlJQJHqQqGHqQ
hRVhPfbCgbVggLVRSSmRhRPhrrrnCzzsvCvrnvFnNppsvBtd
QJLNDWSWQdLFFFhLdt
npHhHMsfsjpZjznRtmrMCdBwFBFrBdmt
HsjHqRRfnnHRsgfHffZspgzqDGQSWbQTDNGhQhSqNPhDWWbT
bsCmFDsGZCNsDmLDLZBSHSJTHnrZQMQSSQ
jqRpwvfqnnRQrftdBMHddB
phpchwpzjpvwRzwcsnlFsssPCCGzDlsD
rMqzVQfrfVZWZhTdRTQL
cgmtFtjFFJDDtFvSFRZdLlhpHZddmwTZWh
FbcSTtctcvFTJNgtJDGNPnCqMPMfMBfznGVsrMCq
wLJfGJJPZLBfwSLGHbqmhhDHHhFDzfhv
FsnpFjVjplTQCspNlCDbzhMMbqvMvsgmHDqb
lRdlTdTddllpRQFRltVVdFRcwrtrcWWcPrrWPrPSrZWLPc
VGVZhTppGTfPnJVJrFqbsmbSSshHqWqRHF
llzDCzlBLdNcCddlMMNBdCCtWHbFqFRRRsHjWtRwSWqbmjWm
NbcMBBvzzMQLCDBVTQQPVrPQPPZVPp
cdcgfmQdqlqhzzPjzfwpwf
GLBGBDvbvRzGwtnnmPpp
ZRCZBRFSRvLRLFvvbLLFQdHMTHTlQlNqNmqFlWdH
vzjzvHtcHvJcDStLLGSShCbbfF
MWFFTVZRMmMgdQdSQLwQrQwbGw
gFTmgmVZssRsWZRNzJlBHHnnJDvzNPlP
rHrvHpmHZfdGDDGGZd
cTlMsNhllMhGchNPCBlhMQgVDdgDSSWVbWVwRQwRSgbV
lnBjnNNTTMnCTcChPNhMvtzvFGLtJrjFtHHHzHJm
lgpdZZMmGVVzVZzt
HfHLrHqbPbzJJzRJJPTl
HsLWWbDqFrqlqfbsbDqDBncpgFmmvpnmmgpvdvjcdM
GpNVbTpJJNvMBMVvJTGvhnWQQScllnhhWlhVSznV
ZjswwHHLZzGnjWjSjl
sHdftLLtgLfwdtPmHtMbNpMTpNqGRbPvTqPv
sHSNNhNwsllGSGGlWSGWSsFrrVbQrdmFrVrrmnrHmrHr
QQMRZDDRcrcnmRcV
fJfCPMJCzTMZSGsWwsWBwqQf
HwQZZJsHdqqsdJQGRgCgVGgSqgpcGG
ljWWbnPhjBlGpCRCnScSGg
hrrztWlbPjltjMPSdJDZSsHttwsZwD
VzzbmzvpvNhvBDqc
QHSJSQGCwJCGrGQjjcgcBFhdgqdqFdDNNw
rCGJtZrHhhtLRsth
TMWwCLPpMTThrvtMRJjbjRvmJs
fDzcHFfSfFQfZzZRJbdmmqqssqtbSW
WWgGZglcllgPBBCBNVGPNr
wrwwhpTpbqhqrshrrfrFfwfzRJGdNJHNmcFzCCzCRJGzGR
vMggvjQvgPvQjVLMMPSZqWNJGCzcNGdcdzHPPzcmCzPz
qDZWvBZVfDhbTtrp
LpDvHdjVghnjbGrn
FBBBPwwlBlwSfFTWPHPWWhmgngmmnPnmbsngngbGrb
FwftBSCSfWCtwfVQDvHHCMVvdQLQ
ZrQpQlSpNlqQCVnQBmdDqmWDqmWWBDBB
HsZMsJvZzLMHTRwWhgDwmfDBgdhWdf
RZvTzJGzRjFrVNVjlQrS
mqjMwfqlSSPmSrlPhwhVpGRcppWcpcGRcGWv
ssJDJJNgZNDWrRWcRpvr
ZTsTnnsLJQgPnfMwmnMrfm
qsVBvZqWLdfbfvLj
mPNRgmHBBGQrCbSbrdfCCSbC
PlQTGcTTcgGFQQGPTGllpqMzwzpVJZwBMssZ
FWGcNRLRLhwJJQfV
nzbzlDBHSpTDbpDpzHwCqhqwJJghQqQMCCBw
JnzndzpmJFmNsrrFsc
gmRwwDwfnRDJgwZLFQFFNGNQrFBmFbbm
CCVHVWWThSrjVGvbNj
WpdqpplppHCWzlClMMTTZJcJsdscJLLdbDDfZDgL
VNtCCMDllpBqDvtdCczTSgjHlzGSHSGZTZ
hPFPsQhhFhLnbsRnLFssdzcHdsSHSSHgjzHG
QPWPQrPPmbdnbWLFPrrBVrVDBqqNMVwttDtBvD
PPNNRggwgRRgHBhDtwhTwbDs
SFGSFSMCJFMrcrCMSSsbtrTbbZhBvtHhrTHD
MFfSMpflQLQflfLjnLmddsLdddqq
RcgbcrrFscVrwZVCgVGGmHppNNndWnGdNqddqqNqND
jTlSTBSTjLTvlvjjPtvMLlhHnftphtDFNFqDnDHWNddn
QBMQvzzjzvJPjFQMmwZJrgmCCJVRVbbc
CzPJsWCpvsNszsJsNsHlDhMrrJGjhrRVhRGgDDjG
tFFdbqFLFdwctQdfVhjRRghTcrjVRTDW
bwQtFLdLBdFmwnHnWHPBNnHCnp
CNTstGNslRRRstlmNmmTZZqfFwtqgwqgfBPSwSWwqgWq
hpDbcHbpSrcgqqzhhWVfqg
DDcLDjbMjCSsZRNlMv
MhHMCMNbzbMHlcqmGmrmWc
tnPggdZPBPgdtttJpdnwVBnmqQcvlQrQlfGqmfWffBcqWD
VPPwPPLPwLGFGLzCbG
rqBcBmjHTGfPbcVgPG
dlDpsdshzlldlDvsWlWvLQbQBbfLFLbPvbBGQBgG
BlBznnRWzlphphBnhZjZtNNCNmrNqjCqHwHN
mQBvmvBmmLJvvrLtttQrfhGlcRGfRhVGWJVChlRG
MzPswTsbTPPsNgMNszgzMpbMfcRcGflVGRfWSpFRlWWWFhcC
bcPsTbgbbTTwNZzTZzvdjdjtQQndZvdrvdmZ
hQzTQJFFZJrcdcdZFFrGFSVWVRWRwRgRHVMWDCDSWc
lPmpNBnnnsNBnLnfbfnCDWMvwRvDCCMPwwHWvM
HpjmffNlnqqhddTddFZjGJ
BwsLFFbHLbVCSCSFbsbFLsJbqnTtZrRMHTZtrTrZTcRRRRTq
lGhNhpPmmhpztZTBrcpjRqpB
QPzdfzBQNgFJSCwsdLbS
ZsZsSBTgffSCqSSfrMnnMwjqmqmnnnqwMm
bbPPbzVclcPzGNlvzVtmnDBnQmtnQLBjJVLn
zPFGplGGvdPbHplcbzzvdlNBTThgRpCTCTfhfsCCsSRZhR
CVLSVCLVZRsHcnzSRpdZZRCdPlmcMWDDlPNqMqtDMmqPMlDt
TBnGjfQrQJjhfWlPPmPQDNlmlP
fjhhGvjvvrTTBhvTBTbvGVRLzVnbSRZpHddspHRzLs
DDtWjfRfftWMLzSQjzzhWjjwRVPHqFbBbZHVwZBFvFwZvZ
JGllgCJlJsrCGPrCNTPdslvZVVNVbvBqNbbpbbFHpBwZ
CcPdnCdmCJjfcftWhtSL
pgpfddDGHWzDNGNGpRCQjCTFHZZQFQjcRT
bJlhqmMvnlrRQFtTthPVhZ
lvbJrlJMBwfzGNTddB
wpbJGGZpsjvtdWvGWF
HqqhBhBqhhNQHTSHqqNzRHVPvTvddWrjtrjFvrvdTdVP
NRLCRzlqHQtNRBLzQllhhZcgbggwmLDZpsgssDpwwD
pDzFzJFcVMcWJFJFzpLBsqWLZssshsGLGbsS
wqHqfvnfrRwQtdQRthhBbBbZLhPLnBTGsh
CfQqlqvtfHNvMVmzmmMCFDMc
GcgpNHvcSNvpSLphdhsLdQTsdWThhQ
wwzttPrrhQswdhnT
tjJjMJRbRbjztmjtjbgcRsNlgglHpDFSlSvg
VVLvLqqPVlvcqLLdwLbHpzcHSsbRJppHbHpF
CfjjCNGmMWhWjhWHWb
ZmGZffggrDqZvZtlbTqL
TTmmhvBvvHWzHpsPpstpLVdwwsLb
qflfFgNctNcCnCCNDnfFFNDwrslwZbPswwZbJLJZbrlPLL
FgQDDcncStCgtqccjSDTHWMThvhTQMBQhWvWRG
SqhVghPccSBhgSBqWBFNQNsHQHMjCCQQWCwQHN
fLZftnlttcbbtZbZlpZtttQjwsCQjRwwRDQspMRMNNQs
TfLtvbJtZmlbTTTtlJbFvVqPSgBdPqPhFSGBcd
pPPNDptcqtpcDztLDhhngnnJgJTmJwNnwm
HVVCsSClHGBCHslWHbSCGGVngTrJwnnJnQRRBrhQhgJhdm
WTWWWsvVlvGbWCFvjDftPpjqZLLtDz
wWclwtDwRvflvffB
sMMsGdsSTMrJZNqczfdvhvnzCnfv
rspppMjMspSTSMpgLjcPFmwPLmPHwb
tCdSMHtHtRFHdWSSJQSgrrrnghTNJN
BGfcvDsfvsqcvqfGvfGnNLhggBNQJNJQmpgQJm
sGfQDPDZzfDZzclwDzwsDlfjtbdHClFRCMWjbMFMRFWbdj
pJNCcvqCccsVvFCpqsmvWJfCBWgSzBBRrrBRDDgDrSbbgQbQ
TMLnLjjffwfwGdjQjDDBjBrDtztRSb
MdPLGhHnMZhlPHHTFfZvVCpmmmcFcVFC
SwFMfCMRCdQDdMbmdFfdbbnlcVncVCcgLqWcNNnCcWlW
hPjQzzhGzhpPrtPJPpPHrVgnqVVncVVnNHlqVnncNB
ptjGrptztpthtrtJJhTsGwFDZZDQmSdfZSwsRZSwfZ
rSSWWCWrdllHWpjcnFNnRCNjQp
bGwwJqGVGbGJVVhgbBgttGmBQjFsMjpMcMnnMBcQFNnsssvv
bfthwmfJfgwwmmwZqVJPHNHSZHWzSlDPrdDdSH
nmJccvclcbwmlbbvVbvsHwJJPCPNCNPnLBhrBPPLBhLhBgBP
MdRGtdDRTqWDMqtMDtQDRWSdLLBsrhLgBCgrgCgNNLPBfNMf
dRZQdDdRRSQWGsjZmwzjmlzsZH
PBGGMrTQTrTBpPQpLpSlwjwfjtlnfwbmGttw
fCsJCWJcvRCtwwjbCl
NsqcsfcvDHFVDJvdLQTrpdTTzTPpHr
rltrwsBTlrfGZggGBLGGNN
jhMnRQJVphMnbhvQjDZNqqZDNTNHZVHGHq
MRvbhQRQQChpvbjvMSvQnMcsFsfwwmlCwFwWcTWwrmPc
DDvLLLBnvrzvbvbmtv
TMwRjTRMGCwGGwrjQQnmrQrrQdhZ
MJPFHFTwgCGqGqgJMGDfSWcsnBSccgVDlnpW
flzVzNrdLNLJzrGlfdlzjrQDgFTpDgDmmmgFmqFDQjQh
CbnBcsZnPZVSnwvVsZbRhhBDpgFphgmgDgTppq
ZWnsWSnncSZsntZCbsswwJMzdLzlMdNMLtMVfrllMt
ZffSgNfgJgGCHZcZrpHrNJTLhqvSLTqQnvVTLvzvLTjV
tWFtHMwlBlDqjjzjnqvvlV
DRMPDtWHPFDBFFwWMFBmFRPgZpJfsffNGJNrGcsprrsmfg
wRZRmpZmlPqZjzGrdrGq
bBhQQFPQbPDVNzVNzdGWNdrf
QFbcDcDbLHgHBPDFRsSSMtmvRttMpCLS
MpWJVVJMcWvpRShcwpLGflmqzSfNdfNLdQzN
CDBTtCgtbjgCRrBrPBTQqzflNqjGdLzzmqffzq
rFgnnBbttDTPtHCDPrPMnpwVJhJvMZvpMvppRZ
sWTTmpsfsWppPTTsTVZWHVVZNvVcdcJvdN
DjjBzjhRHvvvSzdc
rMBjjrjbjrGDlgMlMrGjBgRLPTTwHMsfnFwFQPMPMnmFFm
QRRbDjjmPzNQwFDNmrQmzCbVHrMhBVrJLJJfMGGLtfJBHh
dsWcsqqWSWvnWnWcWGPJLBqhLBqGhBJHHH
ZWnPWgWgPnlbCDDwmmDbRZ
nfPqqfLqQnfHBSqnzztQjVmjfGRWJNGRWsJWJfmJ
TTMlMMlFDMGVGRsVJH
CbDbFDbvgTFFwgTDlDprhlPSqBzSnPdLPtPPHgznQqBQ
fJmWVfHqjfjhZCQZ
NcNzBNvgszQmzjnthZQC
LsLsgBNFmFgTFgGBBgcdMdvPDPDJWrlpVbGpJWqHDlHJHD
SllDdvzgdFDdlPJvbFDDSzFScPTRTNcwfZRwRhcwwNnRZTtf
WBpWBCLGVpLjHrHGGVhZNwcTVcNhVnRcNZ
LHLQLspHWQGpWCHnBvdzDJFlqvdsqgSgqS
GcTctDMjMhpMDRjLsMMsfDWFfdPCFNbnCPnvCPgW
JmvwqlBwnmfdFPFP
SvZqHSZqqHZZZBlllBwSwsRsMHpLjpLsMGtsMspGRT
ClLnCLfClLVllfLLcQjLBCfCmSHVsttsmtsVStDNVdppdsSp
PFrRMbWqMRwFRqRSqwqvMvMsGtgsdmssrgNtdmpNdDGgdt
bwJbPWPwFFPFSczCZzZZCcfjBJ
MwmBmzwJQTcTmfPVfZPwhhwHPH
jlnrglFLvbrGRFGnvFZdNNFfPZddPThVhdPH
RjbjpgbnLGvpLgzBqBpmWmmzqTMS
FnsSpttPnPbNCFDtsPnFHQZTQZgcwgDDTfrfTHMZ
mRjzRzlvBvhjZrQmMMwfZZNN
ldzddlzLRlRWdhjdRLjhRWtJbJbNtJJpJPbCbGCWNG
wBwmNZBTmzzcVcmpzZqdMgPjnLSVlPgDPdbMdg
flJvGtHffHDddddbHjnb
RstrhfrhhRGFQtRhtftvQhvFZpsmpWwNlWqcWTccBNWswqNp
DPWhbzDlQLLlQbLDlLhPhLFNNJqCFGqnNJCCSCnGPnGN
wvwjtvtdwfssvSJgFFvGGSCFcp
mtdrZwwJsrtddrHRtZWbVThLlBzVTzhHQWhB
TsRRWctsTJMQZllggc
zDvhpbprgGvpvVlVQlZpQMJVlQ
rrrvFvGCDhDSrrrvChCgSstBNTSftWBjTdfWBN
JJdssBcLVGrgbBHWrH
QZTptvmvmlZpRDlMMMZCQvnjjFnrjWGFbjnrnFGWgZrz
TMRplDMggtwlppTlvhsJJqdcqwVPSSNcLd
JjTCCrcRvccPLmMP
NfGFPZlNnwBfPlbbbQZGqLHgzLghSmMBzSgvzmDMhv
ZfbnNQpQnZGlGlGpWTddjdTJdpRPTrCj
gWLblMMggdWsdRJlblMRMMqWDvPvcPPPccJPJVTZVZThmcDP
rQFfGfrCHrjnrtNTcPShTSPvvVLtmm
fQrCfLrpLHnCHwslqzqsslswzqRW
zpJtGlJPMPTlTjGJCDGCDljpdnvhhWnZnZnDwwmvnWDWWvdd
sHrVrSrRRRLNgLVBqSsZmWwvwcvwZjmwngmdbn
QsQQBrrLHTjPpTQzzP
JDlzHHzzptRDmbTMrrVQ
dRRNqnCBnmrQsVQQ
wFPCBNFgwjPwhgFNztftpJRPpzRvvHtZ
DlBhrDBPPwMWwhWchW
ntSqbbSJFJNqzVzjCfMvfSlSRWccRL
mVlHtNVtqldbJVmNHmdTTBBgrQQgGsPQdrDgsP
HWHNbBgvNLdcvQMnSf
wqqqVPDPhqwszFwrrszFfMdWthLcMdfhthSQfJSt
qVPVwTzFwFDpDrPDzDPFDPlCHjBGjTmZGjbWWGZBRTNjjH
GVgdWjllSqgjdgHqqlfmhwcpwCzhvZwMcScv
nsJQbLRQsNnzQDQQPPBbRBRhfZwpZcvwpvvmLCcvpcmfMM
DRJtnnRbBBnPztsrPzRBPbsFFHqqVrqggjFWqrgWjTGgFq
hhZJQPJFHGGlcWWslpNN
VwwwJjvwMtrCnwjDNDzlfscWszWW
nVStCrMqbVwqVqSqwnLPhTJFdRgJHZSFRLTP
vPgMbbRhhvMvNjjLWsWQsHQmHwBrmmBzww
tFctDnVFpppHVBTdzdTQwl
FtSFqSptfJCqqJStZCqDpDJMhvLLgLMgQgjgGZgGgMPLZg
zwsWgSGWLSVhPWhtLgLWhPVNQTmDrDQttZpdQtdpQDDQZQ
fjCHcvvjMDrppCQpVV
VMqRnVJMVLPzbRWhGh
mjRmzQlzDzNHWwDZ
FBfJBGqnnpfSVGnpJbJVfNtCsJHWZvrsNJCZrCNsvN
fZPBnfPqSBqdfpFbVnVSjgdcLLgRLjmgRhLLghlR
FSFnTcppdQtnnDhtzDfg
ZLGVmBLBVwZCVjjGqGhVwVVgzzbMDtNNvszMmMffNDDvtM
VZPJjBZVqBZZBjqwVqllpSTphhQFPShWSQcW
hTRdcLrCLgplLvBFGvlL
nZDZqzbDbDzRZtVNDzDWGwslsllBFpnlpGvJssFG
zbqjNWQVmVPrrRjRdRhS
VpNCbVHlHHZfflVfmchctqFcqQQjZmZM
WDSRGgsSvgJSRrnWgqQhmjBqmhqrtLqmQm
znSGTgDJnsDGzgwCwlpbCNwHzVtl
sTTTrpHFFFqTnQbbvfJdDzHHDLVV
CjMtgMgRvbPfjjvB
mhMvlhhWClvqshNTQQqsNN
tWFtFBzbwdFrpmdhdm
qTqDjJjJQQqMjTDLJjNqNqPNdmpcSmhdmhhmcrWZpdPGddcc
RjNQLJNTTJDDJRHHjQqnMWtlvvVvbtBvRVzgzgwgVg
CGdQjwdJrbBmpmZZZlRWcb
NgtMPVstgSzBLzhgzgLgDRlcmDWRmlZvcSmDSvvp
LhNsgPPLFPPsNzMhhVzPsGJBFqwQGfnqfQjdGdGfwr
CNbNdbzjCZpPNzjmzjsCMRJvnnMRGnsvJGRs
wrtdwTLWFcFWdFgwRRsnJGnGfTGJfMsq
FttcwgBtgVLgPldQSNZBzBpz
DjRZrrRmttRFDvDrFTZsnWnHVSTSSJVZJH
dNNhLqlLLqdCzfMMlCfSncTVVWcHdcVsVdSVnT
QqppMfzMfqWCwbRQrwFrrttQ
dwGjHrtjsdhfCHnPSpfMfDPpPDWS
lmNzzlLbFqcqNgzpWMSvbbvDQDGWDp
LBmglgmqBqmrwCGhCjVtBC
tvHgWZCCprlgpWglCtjPhLmPmhVdJFSzVzdJVmmQ
fBnTTnNNBnwfnNqcBbBBTbGJQQJhSSdQJJsmdJFSQGSmVV
cMcDwFbRfFRlHCRCZrrp
ZFWmgghzBgwgjWBzjzmRWWMmsVwnVrsdVdwNrrpnnVrPCnCP
GLLbtGqllctqvGJvSlQbJGsPnVdsdpsTPLsVppBCTVss
tJBStGSvctvDDfczmRgRZjzDjZmgzH
FMrLmsQQSWzCZBhpQJTQQZ
dPPVncVvPBJDCPhwJD
fvHbbVHvqnvvvBzgLbbGGmrbMr
mrZzrzqDrhZqDddSFrCGLLLPQPQBJPJJBnQq
TgbpGblWlMsjgWlgMfpNRgbRHHBnHHHtLpCJPCPBnBLJtQQL
sbTlblTlvRbbGblbFcdDzccVcDVvzzzd
zMzfzlGwSBMMSCMzhsPgfcPcfcbhjQPt
FHHqJVdJmFmdVrJdJppthscjGtqRPRcccgcQbR
rvNJJpLrvvLnJvNFFvZZZBWznBWGSDCMnCwz
C Z
C Z
A X
A X
B Z
B Z
B Z
A Z
B X
A X
A X
A X
C Z
C Z
C X
A X
A X
A X
C Z
B Z
C Z
A Y
B Z
A X
C Y
A X
A X
C Y
C Z
A Y
B Z
A X
C Y
B Z
B Z
B Z
A X
C X
C X
B Z
A X
C Z
A X
B Z
A Y
C X
A X
C Z
C Z
B Z
C Y
C X
C X
C X
C X
A Y
C Y
C Z
C Y
A X
C Y
A X
B Z
A Y
C X
A X
B Y
A X
C X
C X
C Z
A X
C X
A X
C X
B Z
A Z
B Y
B Z
B Z
A X
C Y
B X
A X
A X
B Z
A X
C X
C Z
C Z
A X
C Z
C Z
C Z
C X
C Z
A X
B Z
B Y
C Z
B Z
B Z
A X
B Z
C Y
C Z
A X
A Y
C Z
A X
B Y
C Y
C Z
A X
C Y
C X
A X
C X
A X
C Z
A X
C Y
A Y
C Z
C X
C Y
C Y
A Y
A Y
C Y
C Y
A Y
A X
C Z
C Z
C X
C X
C Z
A Y
C Z
C Z
A Y
A Y
B Z
A X
B Z
C Y
B Z
C Z
C Y
C Y
B Y
C X
A X
A X
A X
A Y
A X
C Z
C Z
C Z
A X
B Z
A X
B Z
C Y
C Z
A Y
C Y
A X
A X
C Z
B X
C Z
C Z
B Z
B Z
B Z
C Z
C X
C Z
A X
B Z
C Z
C X
A X
A Y
B Y
A X
B Z
A X
C Z
C Z
C X
B Z
C Z
C Z
C X
A X
A X
B Y
C Y
C Z
B Y
A X
B Z
A X
B X
B Z
C X
C X
C Y
C X
B Y
B Z
C X
A Y
C X
C Y
A X
C Z
C Z
C X
B Z
A Y
B Z
A Y
B X
A X
C Z
B Z
C X
C X
C X
A X
C X
B Z
C Z
B Y
B Z
A X
A X
C Z
B Z
A X
A Z
C Y
B Z
C X
C Z
A Y
C X
A X
A X
A Y
B Z
A X
B Z
A Y
B X
C X
C Y
A X
C Z
B X
C Z
C X
C X
C Z
A X
B Z
C Z
C X
C Z
B Y
A X
C X
C Y
A X
C Z
A X
B Z
C X
C X
B Z
C Z
C Z
C Y
A X
C Z
C X
A X
C Y
C Z
C Z
C Y
B Y
B Z
A X
B Y
C X
A X
A X
C Y
C Z
B Z
C X
C X
B Z
C Z
A X
A Y
A X
C Y
A Y
B Y
A X
A X
C X
C X
B Z
A Y
B Z
C Z
A X
A Y
A X
C X
A X
C Z
B Y
C Z
A X
B Z
C Z
C Z
A X
A X
B Z
B Z
B Z
A X
C X
A X
A X
C Y
C Y
C X
C X
A X
A Y
B Y
C Z
C Z
B Y
C X
C Z
A Y
C X
C Z
C X
B Z
C Y
C Z
C X
C Y
C Z
B Z
C Z
B Z
A X
B Y
B Y
C Z
B Z
C X
C Z
C Z
C Z
B Y
B Z
C Z
B Y
A X
A X
C X
A X
C X
A X
B Z
A X
A X
A X
C Z
A Y
A X
C Z
C X
A X
C X
A X
B Z
C Z
C Z
C Z
A X
A X
C Z
A X
B Z
C X
C Z
C Y
B Z
A X
B Z
A X
A Z
B Y
B Z
B Z
B Z
A Y
C Z
A X
B Y
C X
B X
B Z
C X
B Y
C Z
A X
C X
B Z
A X
B Z
A X
A X
B Y
C Y
C X
C X
C Z
A X
C Z
A X
B Y
C X
C Y
B Y
B Y
A Y
C X
A Y
C Z
C Y
A X
C Z
C Z
B Z
A X
A X
A X
A X
B Z
C Z
C X
C X
C Z
A X
B Z
B Y
C Y
A Y
C X
B Z
A Y
B Z
C Z
B Z
C X
A X
B Z
A X
A Y
C Y
B Z
B Z
C X
C Z
C Z
C Z
A X
B Z
A Y
A X
C Y
A Y
B Z
A Y
C Z
A Y
A Y
C X
A X
B Z
A Y
B Z
C X
A X
B Y
B Z
C Z
C Z
B Z
A X
A X
B Y
C Z
C Y
B Z
C Z
A Y
A X
C X
C Z
A X
A X
A Z
C X
C X
B X
B Z
A Y
C X
A Y
C X
C Z
A Y
B Z
A X
B X
A Y
C X
C Y
A Y
C X
B Y
C Y
A X
B Z
A X
C Z
A X
A X
C Z
C Z
B X
C X
A Y
B Z
C Z
A X
A X
C Z
C Y
A X
C X
C Z
C Y
C X
C Y
C X
C Z
C Z
B Z
A X
A Y
B Z
A X
B Z
C X
B Y
A X
A X
A X
A X
B Z
C Z
B Z
B Y
C Z
C X
C Z
C X
B Z
C Z
A X
C Z
C Z
A Y
C X
A X
B Z
A X
B Z
B Y
A X
A X
A X
A Y
C Z
A X
B Y
A Y
B Y
C Y
A X
A X
C Y
A X
C Z
B Z
C X
C Z
A X
B Z
C Z
B Z
B Z
B Z
C X
C Z
A X
A Y
C X
C Z
B Z
B Y
C Z
B Y
B Z
C Z
A Y
B Z
C X
C Y
A X
B Y
A X
C Z
C X
C Z
A X
C X
B Z
B X
C Z
B Z
A Y
A X
A Y
C Z
C Y
A X
B X
A Z
C Y
C X
C Y
C X
C Y
B Z
C X
B Y
C Z
C Y
B Z
A Y
B Y
C Z
C X
B Z
A Y
C Z
C Z
C Z
C Y
C X
C X
B Y
C Z
A Y
C Z
C X
B Y
C X
B Z
B Z
B Z
B Z
C Y
C Z
C X
B X
C Z
C Z
C Z
C X
B Y
B Z
C X
A X
C Y
B X
C X
C X
C Z
A X
A X
B Z
B Z
A X
C Z
A X
A Y
C X
B X
C Y
C Y
A X
A X
C Z
C Z
B Y
B Y
B Z
C X
A X
A Z
C Z
B Y
C Y
C X
C Y
B Z
C X
A X
A X
C Z
C Y
B X
C Z
B Z
A X
C X
A Y
C Y
C Z
B Z
C Z
A X
C Y
B Z
C Y
B X
C Z
C Z
A X
A X
C X
C Z
C X
C Y
C Z
A Y
C X
C Z
B Y
B Y
C Z
A X
C Y
A X
C X
C X
B Y
C Z
C Z
A X
A Y
C Z
B Z
C Y
A X
A X
C Z
C Z
A X
C Z
C Z
B Z
B Z
A X
A Y
A X
C Z
C X
A X
B X
C Z
C Z
B Y
A X
B Z
C X
C Z
C Z
C Z
C X
A Y
A X
A Y
A X
A Y
C Z
C Z
B Z
B Y
A X
B Z
C Z
C X
C Y
C Z
A X
C Y
B Y
B Z
C Z
B Y
C X
C Z
B Y
B Z
B Y
C X
C Z
C X
C Z
B Y
B Z
C X
A X
A Y
B Z
B Y
A X
A X
C Z
A X
A X
C X
A X
C Z
C X
A X
B X
A Y
C X
A X
C Y
A X
C Z
A X
A X
C Z
A X
A X
C Z
A X
B Y
B Z
A X
C X
A X
C X
B Z
C Y
A Y
C Z
B Z
A X
C X
A X
B Y
C X
B Y
B Z
A X
B Z
C X
B Z
A X
A X
C X
A X
C X
A Y
C Z
A X
B Y
B Z
C Z
C Z
A X
C Y
B Z
C X
B Z
B Z
C Z
A X
C X
C X
A Y
A X
C Z
B Z
A X
B X
A X
B Z
B Z
C Z
B Y
C Z
A X
C Z
C Z
C Z
C X
A X
A X
C Y
B Y
C Z
B Y
A X
B Z
A Y
C Y
B Y
C Z
C X
C X
A X
B Y
A X
A X
C Z
C X
C Y
A X
A X
A X
C X
B Z
B Y
A X
B Y
C X
C Z
B Z
A X
C X
C Z
B Y
A X
C Z
B Z
B Z
A X
B Y
A X
B Y
C Z
C Z
B Z
C Z
C Y
A X
B Z
C Z
A Y
C Z
B Z
B Z
C Z
B Y
C Z
C Z
B Z
A Y
C X
C Y
B Z
C X
C Z
A X
A X
C Y
A Z
C Z
C X
B Z
B Z
C Y
A X
A Y
C Z
A X
A X
B Z
A X
C X
C X
B X
B X
A Z
B Y
A X
A Y
C Z
A X
A X
B Z
B Z
C Y
A X
C Y
C Z
A Y
C Y
B X
C X
A X
B Z
A X
A X
A X
A X
A X
B X
A X
C Z
B Z
B Z
B X
A X
C Z
B Z
C Z
C Z
C Y
A X
C Y
C Y
C Z
A Y
C Z
A X
C X
C Z
A X
A Y
C Z
C X
A X
C X
B Y
C Z
B Z
A X
C Y
B Z
B Y
A X
C Z
A X
B Z
C Z
C Y
C Z
A X
A X
B Z
B Y
A X
C X
C Y
B X
C Z
A Y
C X
B Y
B Z
A Y
C Y
C Z
C Z
C X
A X
A X
C X
C X
C Z
C X
C X
B X
B Z
B Z
C X
C Z
C X
A X
A X
A X
C Z
C Y
B Z
C X
C X
A X
C X
C Y
A X
B Y
A X
C Z
C Z
B Z
A X
A X
A X
B Z
C X
A X
B Y
B Z
C X
B Y
C X
B Y
C Z
B X
A X
A X
B Z
A X
A X
A X
B Z
A X
C Z
C X
C Z
A X
C Y
C Y
C Z
C Z
C Z
A X
C Z
C X
C Z
C Z
A X
B Z
C X
C Y
B X
B Z
B Z
A X
C Y
B Y
C Z
B Z
C Z
C X
A Z
C Z
B X
C X
C Z
C Z
C X
C Z
C Z
A X
B Z
C Z
C X
A X
B Z
C Y
C Y
B Y
C X
A X
A X
C Z
B Z
C X
C X
C X
B Y
C Z
B X
C X
C Z
A X
A X
C Z
C Z
C X
C X
C Z
A X
C Z
C X
C Z
C Z
A X
C Z
A X
A X
A X
B Z
A X
B Z
C Z
C Z
A X
C Z
C Z
B Z
C Z
A Y
C X
A X
A X
C X
A X
C X
C X
A Y
B Y
C Z
B Z
C X
B Y
C Y
C X
C Z
A X
C Y
B Z
B Y
A X
B Y
B Y
A X
C X
C X
A X
A Y
C Y
B Z
A X
B Z
A Y
B Y
C Z
C Z
C Z
A Y
B Y
B Y
C Z
B Z
C Z
A X
C Y
A X
B Y
B Z
C X
C Y
A X
B Z
B Z
A X
B Z
C Y
A X
C X
C Z
C Z
A X
C Y
A X
C X
C X
B Z
B Y
A X
C Y
B Z
B Y
A X
C Z
A X
B Y
A X
A X
A X
C X
A X
C Z
B Z
C Z
A X
A X
B Y
C X
C Y
C Z
A X
C Z
B Z
A X
B Z
A X
B Y
B Z
C Z
C Z
C Y
C X
A X
C Z
A Y
A X
B Z
B Y
A X
C X
C Z
B Z
A X
C Z
C X
C Y
A X
A X
C Z
A X
A X
C X
C X
A X
C X
C Z
A X
A X
C Y
A Y
B Z
C X
C X
B Y
B Z
A X
B Z
C Z
C Z
A Y
C Y
C Z
A X
C Z
A X
C Y
C X
B X
B Z
A X
A X
B Z
A X
C X
C X
A Y
A X
A X
C Y
B Z
A X
B Y
C X
B Z
C Y
B Y
A X
C Z
B Y
B Z
A X
B Y
C X
C Z
A X
B Z
A X
C Y
C Z
A X
A X
C Y
C Y
C X
A Y
C Z
B Z
A X
A Y
C Z
C Z
C Z
C Z
B Y
A Y
A X
A X
C X
A X
B Y
C Z
B Z
A Y
C X
C X
A Y
A X
A X
C X
C Z
C X
A X
A Y
C X
C Z
C X
A X
A X
C Z
C X
A X
C X
C Z
A X
A X
C Z
B Y
A X
C Z
C Y
C Z
C Z
B X
B Z
B X
A X
C Z
B X
C Z
A X
C Z
A Y
A Z
B Z
C X
A X
A X
A X
A X
A X
C Z
A X
B X
A Y
A X
C X
A X
A Y
A Y
B Y
C X
A Y
A X
C Z
C Z
C Y
B Z
C X
C Z
A Y
C X
C Y
C X
A X
B Y
C Z
C Z
A X
C Z
B Z
B Z
C X
C X
A X
B Y
C X
C X
A X
C Z
B Y
C Y
C Z
A X
B Z
C Z
B Y
C X
A X
B Y
B Z
A X
C Y
B Z
C Z
C X
A X
C X
A X
B Y
C X
A X
C Y
B Z
B Z
B Z
C Y
A X
A X
A Y
C Z
B X
B Z
A X
A X
C X
A X
C X
A X
C X
A X
A X
A X
A Y
A Y
B Y
A X
B Y
A X
B Y
B Z
B Y
A Y
C Z
C Z
C Z
C Z
A X
C Z
C X
C Y
C Z
B Z
B Z
B Z
C Y
C Z
B Z
C X
A Y
A X
C X
C Y
A Y
B Y
C X
C X
B Y
C Z
A X
C X
C X
C X
C X
C X
C X
B Z
C Y
A X
A X
B Y
B Z
A X
C X
C Z
A X
B X
B Z
C Y
B Z
C Z
C Y
A X
C Z
B Y
C X
A X
A Y
A X
C X
A Y
A Y
C Z
B Z
C Z
C X
C Y
B Y
A X
C X
C Z
B Y
A X
B X
B Z
C Z
B Z
B Z
A X
A Y
A X
A X
B Z
C Z
A X
A Y
C Z
C Z
C Y
A X
B Z
C X
C X
A Y
A X
C X
C Y
C Z
C Y
C X
A X
B Z
C Y
B Z
C X
A X
A X
C X
C Z
C Y
C Y
A X
A Y
C Z
A Y
B Y
C Y
A Y
C Z
B Y
C X
A X
B Z
C Z
A X
A X
B Z
C X
B Z
C Z
C Z
A Y
A X
C X
A X
B Z
C X
A X
A X
B Y
A Z
B Z
C X
C Z
C X
C Z
C X
A X
C Z
B Y
C Y
C Z
A X
C Z
A X
A Z
A X
A X
C Z
A X
B Z
C X
B Z
A X
C X
A X
C X
C Z
B Z
A Y
C Y
C Z
C Z
C X
C Z
A X
A X
B Y
B Z
C Y
B Z
A Y
A X
A X
B Z
B X
A X
B Y
B Z
C X
A X
A X
C Z
B Y
C X
B Y
A Y
A Z
A X
B Y
C X
C Z
C Z
C Y
C Z
A X
B X
C X
A Y
A X
C Z
C Y
C X
B Z
A X
C X
C Z
A X
C Z
A X
C X
C X
A Y
C Z
A X
C X
C Z
C Y
A X
A Y
A Y
C Z
C X
A X
C Z
A Y
A Y
A X
B Z
C Z
B Y
C Z
B Y
C X
C Z
B Y
A X
A X
B Z
A X
C Z
A X
A X
B Y
A X
B Z
A Y
A X
A Y
C Z
B Z
A X
B X
B Y
B Z
A X
A Z
B Y
B Z
C X
B Z
A X
B Z
C Z
B Y
C X
A X
A Y
B Y
A Y
C X
C X
B Y
A Y
B Z
C Z
B Z
A Y
A X
B Z
B Z
A Y
C Z
C Z
B Z
C X
B Z
B Y
B Z
B Z
A X
A X
C X
C Z
B Z
A X
B Z
C Y
C Z
A Z
A X
A X
C Z
A X
C Z
C Z
C Z
B Z
A X
A Y
B X
A X
A X
A X
C Z
B X
B X
A X
C Z
A X
B X
A X
A X
B Z
A X
C Z
C Y
A X
B Z
A X
C Z
B Z
A X
A X
B Y
B Y
C Y
A X
B Z
C Y
A X
C Z
B Z
A X
C Z
B Z
C X
B X
B Z
C Z
A X
B Z
A X
A X
A X
A X
C Z
B Z
B Y
C Z
A X
C Z
A X
C X
C X
A X
B Y
C X
B Z
A Y
C Y
B Z
C Y
C X
A X
B Z
C X
B Y
A X
A Y
B Y
B Y
A X
C X
C Z
B Z
A Y
A X
B Y
C X
B Z
B X
C Y
B X
C X
B Y
C X
A X
C Z
B Z
B Y
B Y
A X
A X
A Z
B Z
B Z
C X
C Y
A Y
C Z
C X
A X
C Z
C X
B Z
A Y
B Z
C Z
B Z
B Z
C X
B Z
C X
C X
B Z
A X
B Y
B Z
A X
C X
A X
C Y
A X
C X
B X
C Z
C Y
C Z
B Z
C X
A X
A X
A Y
C Z
C Y
A Y
C Z
B Z
C Z
C Y
A X
A X
C X
C Z
C Z
A Z
C Z
A X
B Z
C X
C Z
A X
B Z
C X
A X
A Y
B Y
C X
A X
A X
C X
C Y
B Z
C X
A X
C X
B Z
B Y
A Y
C Z
A X
C Z
C Z
A X
C Y
B Z
A Y
B Y
B Y
A X
A X
C X
C X
B Y
C Z
C Z
C Z
C X
C Y
C Z
B Z
C Z
A Y
C Z
A X
B Z
B Y
B Z
A X
A X
A X
A X
C X
C Z
B Z
C X
B Z
C Z
A X
C X
C Z
B Y
A X
C X
A X
B Z
B Z
A X
A X
B Y
C Y
C Y
C X
A X
B Z
C Y
B Z
A Y
B Y
B Y
A X
B Z
A X
C X
C Z
A X
B Z
A Y
C Y
B Z
C Z
C Y
A X
C Y
A X
C X
B Z
C X
A X
C Z
A X
B Y
B Z
C X
C Y
B X
A X
B Z
A X
B Y
C X
C X
C Y
C Y
C X
B Y
C Z
C X
B Z
B Y
C X
A Y
C Z
C Z
C X
B X
B Y
A X
A X
C Z
C X
C Y
A X
C Y
A Y
C Z
C X
A X
C Z
C X
A X
B X
C X
C X
C X
B Y
B Z
C X
C Z
A Y
B Y
C X
C X
A X
B Z
C Z
A X
C Y
C Z
A Y
B Z
C X
C Z
A X
C Z
B Z
B Y
B Z
A X
C X
A Y
C X
C Z
B Y
C Y
C Z
C Z
A X
A X
A X
C Z
B Y
C Z
A X
A X
B Z
B Y
B Z
C Z
B Z
A Y
C Y
C Z
B Y
A X
A X
C Z
B Y
C Z
A X
C X
B Y
A Y
B Z
A X
A X
A X
B Y
A X
C Z
B Y
C Z
B Y
C Z
C X
C Y
C X
A X
A X
A X
C Z
C X
C X
B Y
A Y
B Z
B X
C Z
B Y
A X
C Y
B Z
C X
A X
A X
A X
A X
C X
B Y
A X
A X
B Y
A X
B Z
C Z
A X
A X
A X
A X
B Z
A X
C Z
C X
C Y
B Z
C Z
A X
C Y
C Z
A X
A X
C X
B Z
C X
B Z
C Z
A X
A X
A Y
B Y
C Z
B Y
A X
C X
C Z
C Z
C X
A X
A X
C Z
A X
A Y
A X
A X
C Z
C X
C X
C Z
C X
A X
C Z
C Z
B Z
A Y
A Y
B Y
A X
A X
C X
C X
A X
A X
C X
C X
B Y
C Z
A X
B Y
A X
A X
A X
C X
C Y
B Z
B Y
B Z
C Z
C Z
C X
C Z
A X
B Z
A Y
C Z
B Z
A X
C Y
B Z
C Z
C Y
A X
B Y
C Z
A X
A X
A X
C Z
C Z
C X
A Y
C X
B Z
B Y
A X
C X
C X
A Y
A Y
A X
B X
B Z
B Y
B Y
A X
C Y
A X
C Z
C X
C X
C Z
B Z
B Z
C Y
C X
B Z
C Z
A Y
C Y
A X
B Z
A X
C Y
B Z
B Y
C Z
A X
A X
C Z
B Z
B Z
C Z
C Y
C Z
C Z
C X
A Y
A Y
B Z
C Z
B Y
C X
C X
A Z
C Z
A X
A X
C X
A Y
C X
A X
A X
A X
C Y
A X
B Y
A X
B Y
A X
A X
A Y
C X
C Z
A X
C X
B Y
B Z
B Z
A Y
C Z
C X
C X
B Z
B Z
C X
B Y
A X
B Y
A X
A X
C Y
B X
C X
A Z
A Z
A X
C Z
C Y
C Z
C Y
7844
1892
10928
4800
9730
3485
7293
11956
2767
12893
2757
3026
9979
4507
4199
2855
1792
2041
4162
3855
2650
2165
5464
2125
4979
4878
6301
2546
3750
1192
4692
6809
2808
6505
2811
6448
4270
2919
1297
1678
2006
6163
5949
2074
5917
5796
3456
1161
6843
3988
4064
5591
17062
14531
5297
16033
18054
25935
3621
3121
5884
5199
4584
4796
1325
3374
5789
2545
5842
1760
5766
1882
3084
10364
1136
2256
5654
7065
5990
3621
8063
4334
1865
4485
4741
2591
2594
2991
3928
5849
6864
4932
6627
8318
11410
18778
14870
13264
8777
2567
15388
11837
11042
12115
11169
8021
4206
8637
2955
2115
2292
2759
6464
2843
3817
1628
6486
2499
3935
4944
1427
4870
14800
13942
2563
18543
8415
5943
6117
3863
7123
8666
9834
7437
12318
5577
8108
11695
2720
3413
4765
2805
2850
5241
3910
4837
5770
4998
3358
5141
1052
2281
4405
1714
7984
4685
12922
11579
4278
14877
4676
4571
9279
11337
1782
3009
14712
5936
5243
3849
1001
10728
3847
9986
1531
3707
3599
5533
4025
4651
3934
4205
2481
3462
1672
1806
3833
4072
1497
16920
25420
17042
43927
8193
3107
2831
4122
16336
7507
1665
8553
3231
2528
1046
3491
4631
3574
35988
29345
3520
4006
6327
1658
4714
1123
1938
3667
3807
1824
4808
4586
3275
4548
9989
32096
52470
1188
7694
7875
6114
6189
4343
6974
4812
1776
4794
8065
2364
4111
3663
4182
3667
5440
5482
2657
3931
5871
5403
5956
2659
2320
10249
13770
6331
7262
1498
1329
8943
1563
8197
6898
2300
5116
5930
8363
8908
6063
8325
1070
7829
8877
5631
6100
1007
4754
7353
8363
13160
16304
6155
15418
18068
24378
16529
8216
1918
3305
7698
5936
2012
2053
3575
5705
5372
3627
2860
3742
4117
5514
2590
4503
2494
4418
1908
4109
5255
5749
5061
14547
31905
4691
4268
3887
4136
5724
4507
2298
6660
5243
4719
5145
2949
1460
6324
1211
2329
4872
5530
1645
2989
3687
3925
2578
1153
4364
1864
8160
9219
6479
1098
9364
7442
9665
1522
3185
3657
5730
7979
8956
2138
8288
3524
7910
20487
4948
4419
3363
6742
1536
3809
4289
1861
2490
4842
1005
2083
3115
5872
2895
2163
6140
4962
1566
1502
6407
6241
7154
8910
5483
10358
10448
5912
9133
1919
5768
7887
1592
3503
6182
10088
12143
3897
4813
2087
2953
5308
1587
7320
4947
1366
6723
2720
16484
15947
2582
11421
2457
1498
4113
5639
3930
4950
4130
5475
6156
4966
1322
5749
5892
2257
24070
2634
2784
5289
1472
5770
4442
1733
2003
2281
4283
4183
3183
5405
5055
4089
6167
5650
6531
8255
11103
12421
8499
15327
4714
52582
8000
4408
4744
7665
3565
6676
4983
3282
1095
8269
6893
4008
2512
5249
6578
2231
7044
7903
3901
2480
1832
2278
5805
7783
1497
4503
5569
4260
7618
3310
8083
8025
17429
14782
12645
5914
1865
9622
4014
9577
1812
8287
10720
3848
12978
12735
3860
5562
11339
9051
6703
13290
10611
1232
1116
2620
2495
4198
4751
6099
3727
3111
2493
3780
2379
3042
4395
6100
62606
13357
13984
11428
18201
33875
5610
2504
19711
17021
5985
3759
5522
8815
2113
2333
9169
4805
2870
6419
6210
4186
3763
5633
5159
5116
4448
4570
5894
4045
1994
3044
10366
6706
11448
1927
10647
11786
11927
1350
10908
9325
2455
10527
8300
1312
1403
8155
8803
9663
7780
2118
5436
5909
4083
3714
3001
2226
2915
5627
6476
3578
6112
36649
6648
17271
23884
15032
16967
17931
2443
2520
1468
2779
6020
4477
4798
1894
2429
4645
5053
6478
5899
5824
2554
12614
11252
25055
3435
1317
5073
3082
4576
5006
2238
3055
4867
5079
4385
5723
2084
4307
6609
1556
2351
2301
4913
1820
1122
5398
4738
2377
2843
4704
1201
1092
1622
6094
1793
6521
8237
2848
5617
6585
3561
8072
3941
4432
4740
9292
8115
3586
5464
2926
6812
5551
3104
4369
7421
3774
1272
1492
1842
6058
1815
5555
2688
8859
8517
3338
1500
7276
8130
5984
6597
5544
4944
6402
1336
4243
4333
6374
6770
5346
7225
33323
17863
9174
21966
4835
4359
6074
4069
5984
11934
2577
1738
2317
6844
1672
4213
3930
4658
5785
8074
5695
3063
6287
7248
5656
1571
5468
1512
5555
3192
7892
5664
5819
28895
4407
5072
4733
2964
4073
5739
2423
6131
3999
1454
1221
1243
26391
35896
26888
1171
4136
1050
5788
1049
5686
5297
6035
2968
2274
2771
5596
4478
3401
5860
6699
15009
4368
13135
13609
6033
3972
1214
1549
3996
2251
3213
5217
5525
3656
2585
2710
6035
1903
1586
8651
4494
7096
7913
1024
1334
1353
2705
5405
1601
7386
18756
19801
24646
8490
5254
1932
3706
1980
6058
1961
3150
5200
1337
2846
6123
3274
4632
3068
5384
5842
2688
1307
3279
2424
4783
3932
2720
7808
5871
1416
7979
6594
7325
4214
5444
2132
2626
6949
6034
4887
6773
1111
3317
3388
4209
2809
2730
6578
2700
8995
10064
2134
5564
5889
3719
6357
3523
4600
2138
5976
6025
5689
5950
3745
1542
5545
5789
4295
6717
8612
3847
7911
3367
6867
5975
23119
18834
3134
7080
2729
4118
1407
7022
4796
8459
8530
7721
7333
5245
3739
1338
1245
2926
2695
4571
1492
4794
4380
3726
2225
2098
5942
6081
2192
2866
4690
4240
6512
1881
5789
1641
6017
4327
3688
6622
3555
12879
2468
13146
8534
10525
4590
8451
8697
11858
5657
4893
14019
13301
7206
13988
17234
22191
13894
6383
3682
5281
6335
5412
5474
8723
9536
8864
14888
9953
2464
5875
2484
1693
3441
5883
7835
34085
1997
9058
7144
6222
2930
3661
4107
8058
4938
3033
2420
5196
5152
1364
2192
3442
1149
3575
6916
6856
1995
6259
1331
1731
10757
3486
8823
2450
8018
9197
64329
25450
6652
4972
5085
1881
5555
1521
3723
1158
3260
1532
3131
2904
1088
14166
4490
15880
6439
19789
5274
7770
11329
64877
4256
5811
3538
8943
6164
7843
5400
14856
2882
2781
3829
8689
6347
8239
4232
8606
5770
10061
6576
19346
15720
9071
6842
5147
8570
4175
3801
6512
21045
29371
5646
1786
11347
11957
4226
12836
1786
1117
2905
5545
2759
3168
5993
1050
4096
1812
1036
3048
1602
5694
4123
4940
8115
8877
2063
7222
5281
5676
5429
5198
1480
7224
6453
2535
1894
2730
5489
6674
6091
3148
4124
5837
1575
4028
5943
2374
3307
4535
2008
2981
1251
1902
1689
1154
4931
1030
6793
9190
6920
6588
4759
5502
23727
1716
2529
6082
5333
2555
3710
4174
1747
1506
2434
2343
4019
5704
1253
3978
13129
11913
9504
11759
5353
9152
7685
7469
2376
2221
3446
2576
7992
2538
3572
1715
7268
15241
4735
10421
9976
1717
3460
5386
1806
3764
3019
4349
6319
6635
6608
7641
3249
2254
4624
2495
3325
1502
2347
1544
2806
2844
5702
3594
3448
4378
5474
4447
1251
1088
2070
4109
1029
5779
3795
1080
3589
3016
2793
2636
5946
4953
52518
5836
6177
4873
2860
4545
2793
3492
6810
2330
2067
3626
14370
14242
8644
16054
7313
8547
6827
1264
8991
1306
3829
6188
1566
6239
4931
5359
7314
7493
2898
4429
5609
3329
6747
3945
9283
10312
2925
11240
9133
14062
15257
12353
12534
17806
5580
7262
4311
3933
3798
4932
3040
1819
4434
5705
1293
4348
4241
3050
4471
4445
21451
9368
5252
6300
3548
7323
2328
2721
5001
1261
7357
1350
7024
5193
15832
15934
17497
7846
1647
6717
1323
5420
5063
2488
3298
1163
1205
3104
3644
4177
2730
6851
4735
2851
7015
2836
4052
6511
2413
4049
6620
1205
3131
8028
6431
8863
3411
3434
1509
4907
5244
2022
5347
2648
5479
1668
3461
1380
2991
4789
1003
3584
3947
2670
2718
7380
1243
2124
2825
5907
7608
4592
7236
3836
2137
1824
3283
4702
6791
6370
4781
1647
5176
6373
2526
5660
5065
1103
5031
1394
1948
2812
1240
4727
5359
3119
2511
2913
2763
25820
24769
2645
1917
5280
1864
5772
2984
1410
3052
3599
2034
4122
3678
1502
1107
3385
2149
2758
1895
6232
3858
6266
2861
6624
1078
6721
5652
6842
4520
4919
6678
3890
1823
6488
2575
5245
3696
4294
6071
5158
38153
4245
4359
6283
3510
2610
2592
4843
2179
1218
1895
3676
4307
1886
2495
2143
6751
6498
1546
4454
2203
6640
3713
6943
2324
3284
2277
1234
2005
1168
3585
1931
4371
5547
1237
6250
2722
6827
7366
7001
8320
8560
10331
7759
11634
4006
9406
12116
1403
10477
6213
6458
5178
9407
5651
5743
4120
9958
18260
9126
6239
3466
2939
4775
1326
6307
4255
2843
7634
5993
4585
6607
8754
9714
9844
12936
20048
24368
16320
6152
1868
2057
6981
6244
6557
2858
4943
2261
7241
6353
3362
1989
4154
6154
4409
5546
1202
6484
2812
4690
6080
2564
6001
1379
4859
7852
4538
1495
6904
7849
4937
2986
8593
4164
2338
1139
4118
2916
2087
2180
1476
1669
6375
2689
3890
6928
2032
2582
3926
2966
4326
1334
4264
1151
1513
3098
2618
4087
5318
5287
4176
2012
3358
12673
15745
13638
18797
6045
12915
10036
10932
11869
6686
2505
4998
2545
9353
24442
15660
1563
6832
6212
7249
5815
3135
4260
1632
1105
2628
1693
4728
5564
3863
2269
1623
3527
2445
4823
2271
1102
2110
3765
1731
4149
2924
3807
3049
8544
2753
1454
6543
2379
6571
3467
5347
4430
6186
8128
6013
8050
6688
5697
5250
3077
4775
5639
1567
4651
2362
1676
2033
2843
1577
5838
5545
5803
2561
1774
5371
4177
2934
4347
5400
1017
1907
5367
3233
3201
6389
3857
1884
2082
5091
1362
3574
1873
5995
3908
6154
5350
1856
5219
5865
4628
4904
1988
3336
3602
17499
8319
8975
4570
8463
8389
5896
6657
5300
2953
5541
3791
8065
2177
7674
10338
6861
7176
12012
5930
11051
4024
11264
7017
7432
3699
6920
5220
3483
7075
5240
2156
2838
7600
7522
3647
3466
1903
2400
6060
3414
1852
6822
5793
4895
2960
6642
1477
1240
3047
6426
11128
22839
20660
5889
3600
7076
4431
3604
4256
2548
5482
3501
5278
3410
3519
9965
12953
9463
6493
3949
5992
2986
2886
1598
3393
5766
3427
3750
2125
2819
2818
3033
5536
4458
9958
8583
3283
6782
10683
3178
4486
7674
1680
2315
7486
3096
4386
1553
3675
4100
7705
3479
6402
3133
3192
3227
2933
6881
3088
8628
2271
3697
4072
4962
6101
4711
2184
5168
3172
1076
4206
4876
6040
1844
2792
2138
5141
6671
7291
8327
9200
1479
2338
9402
4860
12944
3176
1343
8561
4339
4569
5435
4568
10420
6843
2642
11252
3981
7926
9800
6046
3747
3534
5597
1487
2726
3469
4202
5847
3297
6666
3832
10609
2492
1269
2012
5583
7277
4471
9874
4697
3030
3002
6541
1895
1254
2032
6218
2624
4494
3822
1077
5664
2566
2028
6227
5342
6013
5994
6331
5290
4154
1985
3748
3666
5745
1780
6074
5641
2102
5400
2585
6776
1732
6493
4095
2228
4647
5283
6675
6784
1759
6256
5952
2476
4176
3949
3097
5127
6465
2571
4670
5896
3916
8881
6058
10440
9862
10596
10471
7667
2665
10829
6934
2179
5155
3258
4634
6263
2398
6452
1536
3066
2195
3431
1245
2672
2692
1056
3313
7418
1070
2436
5831
4648
3358
2808
4966
5358
3868
2124
4779
5703
3827
4386
6424
4582
4501
2325
1586
1450
5306
6237
1210
4882
4275
1094
3855
5611
5650
2271
1769
5764
5895
2891
2344
5228
6017
4763
20686
14164
24547
26116
2047
64931
11106
11298
3236
2998
3995
10523
1230
3999
2775
2882
4474
2490
5185
3853
6045
1786
3372
3548
2217
1424
4424
2982
3616
1397
4217
3084
2641
2703
1247
1131
3372
1664
1351
2609
4200
10258
1295
10597
5712
8643
7976
5578
2924
1514
8050
4828
8746
5551
8739
1382
8218
6875
6039
45328
18784
21739
2884
7165
8039
3978
6701
2646
6171
3899
2700
6461
4227
7052
1458
6367
4403
2232
7085
3490
4126
6334
2320
4354
5981
4319
2031
1629
5536
3182
6285
1561
1215
2367
5133
2720
3062
6456
6160
3248
5430
3354
2124
7143
6779
2022
2034
9093
4122
1303
5054
{:deps {}
:paths ["src"]}