cleaned return value madness