#3 Implemented permissions