Removed ASCII art
handled the function with callbacks