def process_blocks_after(self, block):
        # Process any orphan blocks that depend on the current block
        for orphan in self.incoming_blocks.values():
            if orphan.previous_hash == block.id:
                del self.incoming_blocks[orphan.id]
                if self.process_block(orphan):
                    self.logger.debug('Added postponed block with %s contract(s)', len(orphan.contracts))
                    self.process_blocks_after(orphan)