private void PostDelayedClock(int index, Signal outputSignal)
 {
     TimeSpan p = periods[index];
     if(p.Equals(TimeSpan.Zero))
         return;
     ToggleValue tv = outputSignal.Value as ToggleValue;
     if(tv == null)
         tv = ToggleValue.InitialToggle;
     outputSignal.PostNewValue(tv.Toggle(), p);
 }