public void writeTo(final RLPOutput out) {
      /*
       * (eth/68): `[version, networkId, td, blockHash, genesis, forkId]`
       * (eth/69): `[version, networkId, genesis, forkId, earliestBlock, latestBlock, blockHash]`
       */
      out.startList();
      out.writeIntScalar(protocolVersion);
      out.writeBigIntegerScalar(networkId);
      // if total Difficulty is not null, then this is a pre 69 message
      if (totalDifficulty != null) {
        out.writeUInt256Scalar(totalDifficulty);
        out.writeBytes(bestHash);
        out.writeBytes(genesisHash);
        forkId.writeTo(out);
      } else {
        out.writeBytes(genesisHash);
        forkId.writeTo(out);
        out.writeLongScalar(blockRange.earliestBlock());
        out.writeLongScalar(blockRange.latestBlock());
        out.writeBytes(bestHash);
      }
      out.endList();
    }
Return The block range of the associated node's local blockchain. (Eth/69)

@return The block range of the associated node's local blockchain.
ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/messages/StatusMessage.java