Comments added for explaining what private methods do