Move worker into parser