      (.setItem
       (into {}
             (for [[k v] item]
-              [(name k) (to-attr-value v)])))
+              [(name k) (clj-val->db-val v)])))
      (set-expected-value! expected))))
 
 (defn- item-key

    {:consumed-capacity-units (.getConsumedCapacityUnits result)
     :items (some->> (.getItems result)
                     (into [])
                     (utils/fmap #(utils/fmap get-value (into {} %))))})
  KeysAndAttributes
  (as-map [result]
    (merge

  (when expected
    (.setExpected req (utils/fmap #(if (instance? Boolean %)
                                     (ExpectedAttributeValue. %)
                                     (ExpectedAttributeValue. (clj-val->db-val %)))
                                  expected))))

(defn put-item
