added permission manipulation