exception handling on permisson errors and stuff like that