allow possibility of empty callback array