Make function names more clear.
Added NOTREACHED comment.