added bulk functions