Refactored. Better code base.