    :name s/Str
    :stats Stats
    :description s/Str
+   (s/optional-key :size) Size
    (s/optional-key :starting) Starting})
 
 (s/defschema Caste

          :Sense
          :Charm))

(s/defschema Check (s/enum
                     :Push :Pull :Jump :Catch :Throw :Run :Climb :Grab :Hold :Block :Melee-Attack
                     :Balance :Tumble :Dodge :Parry :Range-Attack :Hide
                     :Resist :Heal-Self
                     :Find :Recall :Learn :Triage :Cure
                     :Look :Smell :Taste :Touch :Hear :Detect-Psychic
                     :Inspire :Sway :Mock :Tame :Lie))

(s/defschema Stats {Stat Score})

(s/defschema Prerequisite
  (s/constrained

   :type [s/Str]
   (s/optional-key :lvl) s/Int
   (s/optional-key :prerequisites) Prerequisite
   (s/optional-key :effects) #{Effect}})

(s/defschema Skill-Set
  {:id Skill-Set-Id
