emit* todo