Second, cleaner version.