Fermat's Two-Squares Theorem