added volume functions