Separated hash, BM and FSM.