not clean code