//! This module assembles the Moonbeam service components, executes them, and manages communication
//! PartialComponents: For maintence tasks without a complete node (eg import/export blocks, purge)
//! Full Service: A complete parachain node including the pool, rpc, network, embedded relay chain
/// Use this function if you don't actually need the full service, but just the partial in order to
if let Some(block_number) = Customizations::first_block_number_compatible_with_ed25519_zebra() {
let frontier_backend = Arc::new(open_frontier_backend(client.clone(), config, rpc_config)?);
// The MappingSyncWorker sends through the channel on block import and the subscription emits a