   to the input index"
   ([^Series srs i] (get srs i nil))
   ([^Series srs i or-else] (get srs i or-else)))
-
-
-(defn update-key
-  "If the series has the given key,
-  return a series with the value
-  for that key updated to the given
-  value.
-  Otherwise, do nothing and return
-  the given series"
-  [^Series srs k v]
-  (if (contains? srs k)
-    (series (assoc (values srs) (.. srs lookup (get k)) v)
-            (index srs))
-    srs))
 
 
 (defn set-index

    frame with a new row added corresponding
    to the input index and column map."
    (if (contains? this idx)
      (update-key this idx val)
      (series (conj values val) (conj index idx)))))

; Constructor

(declare series
         update-key)

; A Series is a data structure that maps an index
; A Series is a data structure that maps an index
; to valus.  It supports:
; - Order 1 access to values by index
