public abstract ResponseNode GetValidResponse(BaseNode parent, State state);
public abstract IList <ResponseNode> GetValidResponses(BaseNode parent, State state);
public override ResponseNode GetValidResponse(BaseNode parent, State state) { return(IsValid(state) ? this : null); }