.output .into_iter() .nth(satpoint.outpoint.vout.try_into().unwrap()) .ok_or_not_found(|| format!("inscription {inscription_id} current transaction output"))?, ) }; let previous = if let Some(n) = entry.sequence_number.checked_sub(1) { index.get_inscription_id_by_sequence_number(n)? } else { None }; let next = index.get_inscription_id_by_sequence_number(entry.sequence_number + 1)?; let (children, _more_children) = index.get_children_by_sequence_number_paginated(entry.sequence_number, 4, 0)?; let rune = index.get_rune_by_sequence_number(entry.sequence_number)?; let parent = match entry.parent { Some(parent) => index.get_inscription_id_by_sequence_number(parent)?, None => None, }; let mut charms = entry.charms; if satpoint.outpoint == OutPoint::null() { Charm::Lost.set(&mut charms); } Ok(if accept_json.0 { Json(InscriptionJson { inscription_id, children,