provide a better interface for the protections