Implements Lookahead