private static GenesisFileModule createGenesisModule(final String genesisConfig) {
    final JsonObject genesis = new JsonObject(genesisConfig);
    final JsonObject config = genesis.getJsonObject("config");
    if (config.containsKey("ibft") || config.containsKey("clique") || config.containsKey("qbft")) {
      throw new RuntimeException("Only Ethash and Merge configs accepted as genesis files");
    }
    return new MainnetGenesisFileModule(genesisConfig);
  }
Constructs a new GenesisFileModule with the specified genesis configuration.

@param genesisConfig The configuration for the genesis file. This is typically a JSON string
    that specifies various parameters for the genesis block of the blockchain.
ethereum/evmtool/src/main/java/org/hyperledger/besu/evmtool/GenesisFileModule.java