a significantly better way of dealing with authorization