fix emit function