Added test case.
Added comments.
Added comments.