Assigning Principal Refactored/Encapsulated