Refactoring:
* comments etc...