remove done() callback parameter; add events