12345678910111213141516171819#![cfg_attr(not(feature = "std"), no_std)]2021#![recursion_limit = "1024"]22#![allow(clippy::from_over_into, clippy::identity_op)]23#![allow(clippy::fn_to_numeric_cast_with_truncation)]2425#[cfg(feature = "std")]26include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs"));2728use frame_support::parameter_types;2930use sp_version::RuntimeVersion;31use sp_runtime::create_runtime_str;3233use up_common::types::*;3435#[path = "../../common/mod.rs"]36mod runtime_common;3738pub mod xcm_barrier;3940#[cfg(test)]41mod tests;4243pub use runtime_common::*;4445#[cfg(feature = "become-sapphire")]46pub const RUNTIME_NAME: &str = "sapphire";47#[cfg(feature = "become-sapphire")]48pub const TOKEN_SYMBOL: &str = "QTZ";4950#[cfg(not(feature = "become-sapphire"))]51pub const RUNTIME_NAME: &str = "opal";52#[cfg(not(feature = "become-sapphire"))]53pub const TOKEN_SYMBOL: &str = "OPL";545556pub const VERSION: RuntimeVersion = RuntimeVersion {57 spec_name: create_runtime_str!(RUNTIME_NAME),58 impl_name: create_runtime_str!(RUNTIME_NAME),59 authoring_version: 1,60 spec_version: 933032,61 impl_version: 0,62 apis: RUNTIME_API_VERSIONS,63 transaction_version: 2,64 state_version: 0,65};6667parameter_types! {68 pub const Version: RuntimeVersion = VERSION;69}70#[cfg(feature = "become-sapphire")]71parameter_types! {72 pub const SS58Prefix: u16 = 8883;73 pub const ChainId: u64 = 8883;74}7576#[cfg(not(feature = "become-sapphire"))]77parameter_types! {78 pub const SS58Prefix: u16 = 42;79 pub const ChainId: u64 = 8882;80}8182construct_runtime!(opal);8384impl_common_runtime_apis!();8586cumulus_pallet_parachain_system::register_validate_block!(87 Runtime = Runtime,88 BlockExecutor = cumulus_pallet_aura_ext::BlockExecutor::<Runtime, Executive>,89 CheckInherents = CheckInherents,90);