return() within eval{} is evil :-)