code: function orPair(first, second) {
    const inState = new NFAState();
    const outState = new NFAState();
  
    inState.addTransition(EPSILON, first.in);
    inState.addTransition(EPSILON, second.in);
  
    outState.accepting = true;
    first.out.accepting = false;
    second.out.accepting = false;
  
    first.out.addTransition(EPSILON, outState);
    second.out.addTransition(EPSILON, outState);
  
    return new NFA(inState, outState);
  }
docs: ----------------------------------------------------------------------------- Disjunction NFA fragment: `a|b` 
  Creates a disjunction choice between two fragments.