First refactoring, extract some identical properties