                  movements (gen/vector (gen-next key-len))] ;; TODO use gen-movement once Treeterator supports seek
                 (run-self-join-prop min-keys key-len actions movements)))
 
-
 (comment
   (dc/quick-check 1000 (least-prop 1))
   (dc/quick-check 1000 (least-prop 2))

  (dc/quick-check 10000 (trie-tree-prop 2))
  (dc/quick-check 10000 (trie-tree-prop 3))
  (dc/quick-check 10000 (self-join-prop 1))
  (dc/quick-check 100 (self-join-prop 2))
  (dc/quick-check 100 (self-join-prop 3))


  (defn f []

  (search [this current]
          (when (false? end?)
            (loop [current current]
              (prn :current current (.key this))
              (let [max-key (.key (aget iterators (mod (- current 1) (alength iterators))))
                    min-key (.key (aget iterators current))]
                (when-not (== min-key max-key)
