add another edge case test and run time analysis