tests with decorator
some code cleaning
more code cleaning