ParagonIE_Sodium_Core32_Int32::
fromInt(self::
$d2[3
]),
ParagonIE_Sodium_Core32_Int32::
fromInt(self::
$d2[4
]),
ParagonIE_Sodium_Core32_Int32::
fromInt(self::
$d2[5
]),
ParagonIE_Sodium_Core32_Int32::
fromInt(self::
$d2[6
]),
ParagonIE_Sodium_Core32_Int32::
fromInt(self::
$d2[7
]),
ParagonIE_Sodium_Core32_Int32::
fromInt(self::
$d2[8
]),
ParagonIE_Sodium_Core32_Int32::
fromInt(self::
$d2[9
]) ) );
} /** @var ParagonIE_Sodium_Core32_Curve25519_Fe $d2 */
$r =
new ParagonIE_Sodium_Core32_Curve25519_Ge_Cached();
$r->YplusX = self::
fe_add($p->Y,
$p->X
);
$r->YminusX = self::
fe_sub($p->Y,
$p->X
);
$r->Z = self::
fe_copy($p->Z
);
$r->T2d = self::
fe_mul($p->T,
$d2);
return $r;
} /**
* @internal You should not use this directly from another application
*
* @param ParagonIE_Sodium_Core32_Curve25519_Ge_P3 $p
* @return ParagonIE_Sodium_Core32_Curve25519_Ge_P2
*/