implement daves work