support BondStateMachine