}; let satpoint = rtx .open_table(SEQUENCE_NUMBER_TO_SATPOINT)? .get(sequence_number)? .map(|satpoint| Entry::load(*satpoint.value())); Ok(satpoint) } pub(crate) fn get_inscription_by_id( &self, inscription_id: InscriptionId, ) -> Result> { if !self.inscription_exists(inscription_id)? { return Ok(None); } Ok(self.get_transaction(inscription_id.txid)?.and_then(|tx| { ParsedEnvelope::from_transaction(&tx) .into_iter() .nth(inscription_id.index as usize) .map(|envelope| envelope.payload) })) } pub(crate) fn inscription_exists(&self, inscription_id: InscriptionId) -> Result { Ok( self .database .begin_read()? .open_table(INSCRIPTION_ID_TO_SEQUENCE_NUMBER)? .get(&inscription_id.store())? .is_some(), ) } pub(crate) fn get_inscriptions_on_output_with_satpoints( &self, outpoint: OutPoint, ) -> Result> {