better markov stuff