move to rx EventEmitter-based parsing