                    (at-most 4))})
 
 (def LandDeck
-  {:type (is? :land)
+  {:type (s/eq :land)
    :cards (s/both [(s/either BasicLandDeckCard
                              NonBasicLandDeckCard)]
                   (total-amount-at-least 30))})

(def Spell
  (merge Card
         {:cost [Mana]
          :type (s/either SpellTypes #{SpellTypes})
          (s/optional-key :sub-type) s/Str}))

(def Cards [(s/either BasicLand NonBasicLand Spell)])


(def Colours (s/enum :none :green :blue :red :white))

(def Mana
  "Can have no colour at all, a single colour, or any amount of
   colours. More than one colour makes this mana 'hybrid' mana.
   A lack of a colour is the same as providing the :none colour."
  {(s/optional-key :colour) (one-or-many Colours)
   :amount s/Int})

(def Card
