                                 \A "all"
                                 \f "full"
                                 \r "random"
-                                \h "help"
-                                }
+                                \h "help"}
                         :has-data #{:full :random}
                         } args)
         opt #(get-in ac [:opts %])

(defn read-all
  ([] (read-all *in*))
  ([input]
   (binding [*read-eval* false] ;; probably useless with edn...
     (let [eof (Object.)]
       (take-while #(not= % eof) (repeatedly #(edn/read {:eof eof} input)))))))


(defn read-pairs [] (read-all))

                                 "full" :full ;; full, random graph: for testing etc.
                                 "random" :random ;; full, random: takes num of vertices as argument
                                 "help" :help
                                 "version" :version}
                        :shorts{\b "bidirectional"
                                \d "directed"
                                \p "pairs"
