public BlockResultVoid Retry(object overrideInput)
 {
     return(new BlockResultVoid
     {
         Target = new BlockResultTarget
         {
             FlowTarget = BlockFlowTarget.Retry,
             OverrideInput = Emptyable.Create(overrideInput)
         }
     });
 }
 public BlockResultVoid Complete(object overrideResult)
 {
     return(new BlockResultVoid
     {
         Target = new BlockResultTarget
         {
             FlowTarget = BlockFlowTarget.Complete,
             OverrideResult = Emptyable.Create(overrideResult)
         }
     });
 }
 public BlockResultVoid Goto(int index, object overrideInput)
 {
     return(new BlockResultVoid
     {
         Target = new BlockResultTarget
         {
             FlowTarget = BlockFlowTarget.Goto,
             TargetIndex = index,
             OverrideInput = Emptyable.Create(overrideInput)
         }
     });
 }
 public BlockResultVoid Goto(string tag, object overrideInput)
 {
     return(new BlockResultVoid
     {
         Target = new BlockResultTarget
         {
             FlowTarget = BlockFlowTarget.Goto,
             TargetTag = tag,
             OverrideInput = Emptyable.Create(overrideInput)
         }
     });
 }
 public BlockResultVoid Skip(int i, object overrideInput)
 {
     return(new BlockResultVoid
     {
         Target = new BlockResultTarget
         {
             FlowTarget = BlockFlowTarget.Skip,
             TargetIndex = i,
             OverrideInput = Emptyable.Create(overrideInput)
         }
     });
 }