Lempel-Ziv-Markov chain algorithm