bonus case handled for the first time
working code , added new test cases