Added delegates
Refactoring
Refactoring
Refactoring