        (round-info 7)
        (tournament-probabilities
          pick-scoring
-         upset-scoring)))+         upset-scoring)
+       compute-expected-value))
      :root)))

(defmulti #^{:private true} compute-round
  compute-round-dispatch)
(defmethod compute-round :default [_ node]
  node)
(defmethod compute-round :branch [_ node]

    :branch))

(defmulti #^{:private true} compute-matchup
          "Compute a matchup.  The first argument is an associative structure that gives the points per a correct pick
           for each round.  The second argument is an associative structure that gives the points per an upset pick for each
           round.  The third and final argument is the matchup data to perform the computation on."
          compute-matchup-dispatch)
(defmethod compute-matchup :default [_ _ node]
  node)
(defmethod compute-matchup :branch [pick-pts-fn upset-pts-fn node]
