clean code
dark version