25#if defined(BOTAN_HAS_PCURVES_SECP256R1)
26 static std::shared_ptr<const PrimeOrderCurve> secp256r1();
29#if defined(BOTAN_HAS_PCURVES_SECP384R1)
30 static std::shared_ptr<const PrimeOrderCurve> secp384r1();
33#if defined(BOTAN_HAS_PCURVES_SECP521R1)
34 static std::shared_ptr<const PrimeOrderCurve> secp521r1();
37#if defined(BOTAN_HAS_PCURVES_BRAINPOOL256R1)
38 static std::shared_ptr<const PrimeOrderCurve> brainpool256r1();
41#if defined(BOTAN_HAS_PCURVES_BRAINPOOL384R1)
42 static std::shared_ptr<const PrimeOrderCurve> brainpool384r1();
45#if defined(BOTAN_HAS_PCURVES_BRAINPOOL512R1)
46 static std::shared_ptr<const PrimeOrderCurve> brainpool512r1();
49#if defined(BOTAN_HAS_PCURVES_FRP256V1)
50 static std::shared_ptr<const PrimeOrderCurve> frp256v1();
53#if defined(BOTAN_HAS_PCURVES_SECP192R1)
54 static std::shared_ptr<const PrimeOrderCurve> secp192r1();
57#if defined(BOTAN_HAS_PCURVES_SECP224R1)
58 static std::shared_ptr<const PrimeOrderCurve> secp224r1();
61#if defined(BOTAN_HAS_PCURVES_SECP256K1)
62 static std::shared_ptr<const PrimeOrderCurve> secp256k1();
65#if defined(BOTAN_HAS_PCURVES_SM2P256V1)
66 static std::shared_ptr<const PrimeOrderCurve> sm2p256v1();
69#if defined(BOTAN_HAS_PCURVES_NUMSP512D1)
70 static std::shared_ptr<const PrimeOrderCurve> numsp512d1();
73#if defined(BOTAN_HAS_PCURVES_GENERIC)
74 static std::shared_ptr<const PrimeOrderCurve> from_params(
const BigInt& p,