Refactored.

Refactored.