       (instance? IRecord form) form
       (map? form) (list 'clojure.core/apply 'clojure.core/hash-map
                         (list 'clojure.core/seq (cons 'clojure.core/concat (expand-list
-                                                                            (seq (flatten-map form))))))
+                                                                            (flatten-map form)))))
       (vector? form) (list 'clojure.core/apply 'clojure.core/vector
                            (list 'clojure.core/seq (cons 'clojure.core/concat
                                                          (expand-list (seq form)))))


(defn read-list
  [rdr _]
  (let [[line column] (if (satisfies? IndexingReader rdr)
                        [(get-line-number rdr) (dec (get-column-number rdr))])
        the-list (read-delimited-list \) rdr true)]
    (if (empty? the-list)


(defn read-meta
  [rdr _]
  (let [[line column] (if (instance? IndexingPushbackReader (class rdr))
                        [(get-line-number rdr) (dec (get-column-number rdr))])
        m (desugar-meta (read rdr true nil true))]
    (when-not (map? m)
