async def _process_shape(self, shape: Any, title: Any) -> str:
        """Process a single shape and convert to markdown.

        Args:
            shape: PPTX shape object
            title: The slide's title shape for comparison

        Returns:
            Markdown content for this shape
        """
        # Pictures
        if self._is_picture(shape):
            alt_text = ""
            try:
                alt_text = shape._element._nvXxPr.cNvPr.attrib.get("descr", "")
            except Exception:
                pass
            filename = shape.name.replace(" ", "_") + ".jpg"
            return f"\n![{alt_text if alt_text else shape.name}]({filename})\n"

        # Tables
        if self._is_table(shape):
            return await self._convert_table_to_markdown(shape.table)

        # Text areas
        if shape.has_text_frame:
            if shape == title:
                return "# " + shape.text.strip() + "\n"
            else:
                return shape.text + "\n"

        return ""
Process a single shape and convert to markdown.

        Args:
            shape: PPTX shape object
            title: The slide's title shape for comparison

        Returns:
            Markdown content for this shape
        
backend/airweave/platform/file_handling/conversion/converters/pptx_converter.py