          (< y 0)
          (>= x grid-w)
          (>= y grid-h))))
-(def in-bounds? (memoize in-bounds?))
 
 (defn gen-map-from-charmat
   "Generates map representation of blabla"

          right-streak-count
          right-partial-streak-count
          right-direct-streak)))))

(def compute-path-value (memoize compute-path-value))



(defn negamax
  ""
  [is-first-player state got-time? grid-width grid-height ret-chan]
  ;(async/>!! ret-chan {:best-move [0 0]})
  (try
    (loop
        [deepness 2]
      (if @got-time?
        (let [point (negamax-inner state
                                   Double/NEGATIVE_INFINITY
                                   Double/POSITIVE_INFINITY
