Detailed proof