updated declarations/definitions