Source: https://web.cecs.pdx.edu/~whitlock/pdf/reflect-2x2.pdf