producer style of invoking