differentiates between optional vs. conditional events,