public DoubleTriggerBeforeElement(
     List <Value> parentA,
     List <DoubleTriggerDoElement.Value> parentB,
     List <DoubleTriggerAfterElement.Value> parentC,
     Def.BeforeFunc func)
 {
     parentA.Add(new Value(func));
     doParent    = parentB;
     afterParent = parentC;
 }
 public Value(Def.BeforeFunc func)
 {
     this.func = func;
 }
 public DoubleTriggerBeforeElement @before(Def.BeforeFunc func)
 {
     return(new DoubleTriggerBeforeElement(value.beforeElements, value.doElements, value.afterElements, func));
 }