make the code cleaner