public virtual void Accept(IStateControllerVisitor <ISubWorkflowHook, IDeviceSubStateController> visitor)
 {
 }
 public void Accept(IStateControllerVisitor <ISubWorkflowHook, IDeviceSubStateController> visitor)
 => visitor.Visit(context as ISubWorkflowHook, this);