Refactoring and comments.
Refactoring and comments.

Refactoring and comments.