implementing deliver