added setup functions