doesn't need to be privileged