privatised methods that didnt needed to be public
removed non necessary logic