Refactor using PatternSynonyms
Stylistic changes here and there