master: golfed away over 100 characters by refactoring methods carefully.