code is made extensiable and more readable