more clean code