authentication stuff. Might break stuff