fn sqrt(&self) -> CtOption<Self> {
        let tmp = self.pow(&[
            0x4f082305b61f3f52,
            0x65e05aa45a1c72a3,
            0x6e14116da0605617,
            0x0c19139cb84c680a,
        ]);

        CtOption::new(tmp, tmp.square().ct_eq(self))
    }
/// Computes the square root of this element, if it exists.
Computes the square root of this element, if it exists.
Computes the square root of this element if it exists .
fn sqrt(&self) -> CtOption<Self> {
        let tmp = self.pow(&[
            0x4f082305b61f3f52,
            0x65e05aa45a1c72a3,
            0x6e14116da0605617,
            0x0c19139cb84c680a,
        ]);
        CtOption::new(tmp, tmp.square().ct_eq(self))
    }
fn sqrt ( & self ) -> CtOption < Self > { let tmp = self . pow ( & [ 0x4f082305b61f3f52 , 0x65e05aa45a1c72a3 , 0x6e14116da0605617 , 0x0c19139cb84c680a , ] ) ; CtOption :: new ( tmp , tmp . square ( ) . ct_eq ( self ) ) }
Computes the square root of this element, if it exists.
Computes the square root of this element if it exists .
&self