refactored RegisterAssigner for readability