This has been refactored to remove some smells over it's version in the previous version.