Refacotring
Refactored Class