branching Markov process