Prefer a more functional, less classy approach