[refactoring] Better field names, shorter code, better javadoc