   (if (= ind 0)
     (first l)
     (getN (rest l) (- ind 1))))
+
+(def columnSeparator " | ")
 
 (defn columnLength [headerStr resultsStrs ind]
   (max


(defmethod toString String [x]
  x)

(defmethod toString ClassOrInterfaceDeclaration [x]
  (getQName x))

    ""
    (str
      (padStr (first values) (first lengths))
      (if (not (empty? (rest lengths)))
        columnSeparator
        "")
      (rowStr (rest lengths) (rest values)))))

(defn sum [v]
  (apply + v))

(defn separatorStr [lengths]
  (let [sumLenRows (sum lengths)
        sumLenSeparators (* (- (.length lengths) 1) (.length columnSeparator))
        n (+ sumLenRows sumLenSeparators)]
    (clojure.string/join (repeat n "-"))))

(defn printTable [headers results]
