multi state hmm