extended emit to accept any number of arguments