"Is overlapping" has a built-in "for each". It was the same in CC, although "overlapping at offset" just was a filter.
If "Is overlapping" was just a filter your conditions would look like this:
p_det | carrying=0
p_pickup | is overlapping o_carrot
for each o_carrot
System | pick a random o_carrot instance