Major refactor to return defaults in closure