support Shield'ing a list of promises as 2nd param