<% use itertools::Itertools as _; const MAX_TIPSETS: usize = 10; const MAX_TIPSET_KEYS: usize = 2; %>Instance: <%= cert.instance %> Power Table: Next: <%= cert.supplemental_data.power_table.to_string() %> Delta: <%= cert.power_table_delta_string() %> Finalized Chain: Length: <%= cert.ec_chain.len() %> Epochs: <%= cert.chain_base().epoch %>-<%= cert.chain_head().epoch %> Chain: <% for (i, ts) in cert.ec_chain.iter().take(MAX_TIPSETS).enumerate() { let tsk = ts.ec_tipset_key(); %> <% if i + 1 == cert.ec_chain.len() { %>└──<% } else { %>├──<% } %><%= ts.epoch %> (length: <%= tsk.len() %>): [<%= tsk.iter().take(MAX_TIPSET_KEYS).map(|i| i.to_string()).join(", ") %><% if tsk.len() > MAX_TIPSET_KEYS { %>, ...<% } %>] <% } %><% if cert.ec_chain.len() > MAX_TIPSETS { let n_remaining = cert.ec_chain.len() - MAX_TIPSETS; %> └──...omitted the remaining <%= n_remaining %> tipsets. <% } %>Signed by <%= cert.signers.len() %> miner(s).