   (add-tokens! [memory node join-bindings tokens]
     (let [key [:beta-memory (:id node) join-bindings]
           current-tokens (get content key [])]
-      (assoc-mem! key (concat current-tokens tokens))))
+		(set! content (assoc! content key (concat current-tokens tokens)))))
 
   (remove-tokens! [memory node join-bindings tokens]
     (let [key [:beta-memory (:id node) join-bindings]

  (add-elements! [memory node join-bindings elements]
    (let [key [:alpha-memory (:id node) join-bindings]
          current-facts (get content key [])]
      (assoc-mem! key (concat current-facts elements)) ))

  (remove-elements! [memory node join-bindings elements]
    (let [key [:alpha-memory (:id node) join-bindings]

          token-set (set tokens)
          filtered-tokens (remove-first-of-each token-set current-tokens)]

      (set! content (assoc! content key filtered-tokens))
      (s/intersection token-set (set current-tokens))))

  (add-accum-reduced! [memory node join-bindings accum-result fact-bindings]
