Getting close to a cleaner version.