clean code for version 0.4