for clean code