Added protected members to be able to inherit from this class and add some custom behaviours