public abstract void Update(ObjectState fromState, ObjectState toState);
public abstract void Parse(ObjectState state, JObject json, ObjectState baseState);
public abstract void FindStates(float time, out ObjectState currentState, out ObjectState nextState);
public override void Parse(ObjectState state, JObject json, ObjectState baseState) { Parse((TS)state, json, (TS)baseState); }