#![no_std]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![cfg_attr(feature = "frozen-abi", feature(min_specialization))]
#![allow(clippy::arithmetic_side_effects)]
#[cfg(any(target_os = "solana", feature = "curve25519"))]
pub use solana_address::bytes_are_curve_point;
#[cfg(target_os = "solana")]
pub use solana_address::syscalls;
pub use solana_address::{
address as pubkey, declare_deprecated_id, declare_id,
error::{AddressError as PubkeyError, ParseAddressError as ParsePubkeyError},
Address as Pubkey, ADDRESS_BYTES as PUBKEY_BYTES, MAX_SEEDS, MAX_SEED_LEN,
};
#[cfg(all(feature = "rand", not(target_os = "solana")))]
pub use solana_address::{
AddressHasher as PubkeyHasher, AddressHasherBuilder as PubkeyHasherBuilder,
};
#[cfg(all(feature = "rand", not(target_os = "solana")))]
pub fn new_rand() -> Pubkey {
Pubkey::from(rand::random::<[u8; PUBKEY_BYTES]>())
}