public override State Transition(StateMarsh newState) { return newState; }
public abstract State Transition(StateMarsh newState);
public override State Transition(StateMarsh newState) { Debug.Log("Such a transition is impossible"); return this; }