Added interface to keep code cleaner and more understandable