Supreme Court rules Trump has immunity for official acts