filled in basic run method