# Uncomment the below [linea] section for finalized L2 block tag [linea] contract-address = "0xB218f8A4Bc926cF1cA7b3423c154a0D627Bdb7E5" l1-eth-api = { endpoint = "${L1_RPC}" } l1-polling-interval = "6 seconds" l1-highest-block-tag = "finalized" [persistence] data-path = "/opt/maru/data" private-key-path = "/opt/maru/private-key" [p2p] port = ${P2P_PORT} # Default port (can be same as discovery) ip-address = "0.0.0.0" static-peers = [ "/ip4/3.129.120.128/tcp/31005/p2p/16Uiu2HAmR33t8RZiAHovuH9iH2UuUrajrbfyYowiYDAQo3D5Y9wg", "/ip4/3.129.120.128/tcp/31006/p2p/16Uiu2HAm9HB5oNmnmj8yY6T7dfhLVidVzYqa8QVDtEthkMr6b8tx" ] reconnect-delay = "500ms" [p2p.discovery] port = ${P2P_PORT} advertise-ip = ${IP} bootnodes = [] refresh-interval = "3s" [payload-validator] # Besu and Geth node as execution layer client engine-api-endpoint = { endpoint = "http://${EL_HOST}:8551", jwt-secret-path = "/jwtsecret" } eth-api-endpoint = { endpoint = "http://${EL_HOST}:8545" } payload-validation-enabled = false [observability] port = 9090 jvm-metrics-enabled = true prometheus-metrics-enabled = true [api] port = 8080 [syncing] peer-chain-height-polling-interval = "5s" el-sync-status-refresh-interval = "5s" sync-target-selection = "Highest" desync-tolerance = 0 [syncing.download] block-range-request-timeout = "10s" blocks-batch-size = 10 blocks-parallelism = 10 max-retries = 5 backoff-delay = "1s" use-unconditional-random-download-peer = false