<mxfile host="Electron" version="29.6.1">
  <diagram name="Page-1" id="diagram-gmail-drive-hybrid">
    <mxGraphModel dx="2400" dy="1000" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="2500" pageHeight="1000" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />

        <mxCell id="title-group" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="1">
          <mxGeometry height="83" width="2390" x="40" y="20" as="geometry" />
        </mxCell>
        <mxCell id="title-text" style="text;html=1;resizable=1;points=[];autosize=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=30;fontStyle=1;fontFamily=Helvetica;" value="Gmail and Drive hybrid retrieval" vertex="1" parent="title-group">
          <mxGeometry height="42" width="1400" as="geometry" />
        </mxCell>
        <mxCell id="subtitle-text" style="text;html=1;resizable=0;points=[];autosize=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=16;fontFamily=Helvetica;" value="Live search by default. A curated Bedrock Knowledge Base on S3 Vectors for the questions that miss." vertex="1" parent="title-group">
          <mxGeometry height="25" width="1600" x="5" y="40" as="geometry" />
        </mxCell>
        <mxCell id="title-separator" style="line;strokeWidth=2;html=1;fontSize=14;strokeColor=#FF9900;fontFamily=Helvetica;" value="" vertex="1" parent="title-group">
          <mxGeometry height="10" width="2380" x="5" y="70" as="geometry" />
        </mxCell>

        <mxCell id="users-container" style="fillColor=#f5f5f5;strokeColor=light-dark(#666666,#D4D4D4);rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#333333;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1;perimeterSpacing=0;" value="Operator" vertex="1" parent="1">
          <mxGeometry x="40" y="200" width="120" height="110" as="geometry" />
        </mxCell>
        <mxCell id="users-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#232F3D;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.users;fontFamily=Helvetica;" value="" vertex="1" parent="users-container">
          <mxGeometry x="36" y="34" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="google-boundary" style="rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;align=left;spacingLeft=12;fontStyle=1;fontSize=14;fontColor=#666666;fontFamily=Helvetica;strokeColor=#666666;fillColor=light-dark(#F5F5F50D,#F5F5F50D);fillStyle=auto;dashed=1;container=0;pointerEvents=0;collapsible=0;" value="Google Workspace" vertex="1" parent="1">
          <mxGeometry x="40" y="390" width="280" height="450" as="geometry" />
        </mxCell>

        <mxCell id="grp-gmail" style="fillColor=#FCE4EC;strokeColor=#E7157B;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#E7157B;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Mailbox" vertex="1" parent="1">
          <mxGeometry x="90" y="440" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="gmail-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#E7157B;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.generic_application;fontFamily=Helvetica;shadow=1;" value="Gmail API&lt;div&gt;&lt;i&gt;live search&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-gmail">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-drive" style="fillColor=#E8F5E9;strokeColor=#3F8624;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#3F8624;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Files" vertex="1" parent="1">
          <mxGeometry x="90" y="680" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="drive-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#3F8624;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.generic_application;fontFamily=Helvetica;shadow=1;" value="Drive API&lt;div&gt;&lt;i&gt;live search&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-drive">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="aws-cloud" style="points=[[0,0],[0.25,0],[0.5,0],[0.75,0],[1,0],[1,0.25],[1,0.5],[1,0.75],[1,1],[0.75,1],[0.5,1],[0.25,1],[0,1],[0,0.75],[0,0.5],[0,0.25]];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_aws_cloud;strokeColor=#232F3E;fillColor=light-dark(#232F3E0D,#232F3E0D);fillStyle=auto;verticalAlign=top;align=left;spacingLeft=30;fontColor=#232F3E;dashed=0;container=1;pointerEvents=0;collapsible=0;recursiveResize=0;fontFamily=Helvetica;" value="AWS Cloud" vertex="1" parent="1">
          <mxGeometry x="560" y="150" width="1180" height="720" as="geometry" />
        </mxCell>

        <mxCell id="grp-router" style="fillColor=#FFF2E8;strokeColor=#ED7100;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#ED7100;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Router" vertex="1" parent="aws-cloud">
          <mxGeometry x="40" y="80" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="router-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#ED7100;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.lambda;fontFamily=Helvetica;shadow=1;" value="AWS Lambda&lt;div&gt;&lt;i&gt;route the question&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-router">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-kb" style="fillColor=#E0F2F1;strokeColor=#01A88D;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#01A88D;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Retrieval" vertex="1" parent="aws-cloud">
          <mxGeometry x="430" y="80" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="kb-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#01A88D;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.bedrock;fontFamily=Helvetica;shadow=1;" value="Knowledge Bases&lt;div&gt;&lt;i&gt;curated retrieve&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-kb">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-answer" style="fillColor=#E0F2F1;strokeColor=#01A88D;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#01A88D;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Answer" vertex="1" parent="aws-cloud">
          <mxGeometry x="820" y="80" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="answer-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#01A88D;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.bedrock;fontFamily=Helvetica;shadow=1;" value="Amazon Bedrock&lt;div&gt;&lt;i&gt;cited answer&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-answer">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-ingest" style="fillColor=#FFF2E8;strokeColor=#ED7100;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#ED7100;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Ingestion" vertex="1" parent="aws-cloud">
          <mxGeometry x="40" y="460" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="ingest-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#ED7100;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.lambda;fontFamily=Helvetica;shadow=1;" value="AWS Lambda&lt;div&gt;&lt;i&gt;select and normalize&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-ingest">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-s3" style="fillColor=#E8F5E9;strokeColor=#3F8624;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#3F8624;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Corpus" vertex="1" parent="aws-cloud">
          <mxGeometry x="430" y="460" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="s3-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#3F8624;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.s3;fontFamily=Helvetica;shadow=1;" value="Amazon S3&lt;div&gt;&lt;i&gt;approved objects&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-s3">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-vectors" style="fillColor=#E8F5E9;strokeColor=#3F8624;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#3F8624;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;strokeWidth=1.5;" value="Vectors" vertex="1" parent="aws-cloud">
          <mxGeometry x="820" y="460" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="vectors-icon" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#3F8624;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.s3;fontFamily=Helvetica;shadow=1;" value="Amazon S3&lt;div&gt;&lt;i&gt;vector index&lt;/i&gt;&lt;/div&gt;" vertex="1" parent="grp-vectors">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="e1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="users-container" target="router-icon">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="e1-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;question&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e1">
          <mxGeometry relative="1" x="-0.2" y="0" as="geometry">
            <mxPoint as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="e2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=0;exitY=0.35;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="router-icon" target="gmail-icon">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="460" y="277" />
              <mxPoint x="460" y="494" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="e2-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;current mail fact&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e2">
          <mxGeometry relative="1" x="0" y="0" as="geometry">
            <mxPoint x="12" y="-12" as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="e3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=0;exitY=0.75;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="router-icon" target="drive-icon">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="400" y="296" />
              <mxPoint x="400" y="734" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="e3-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;current file fact&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e3">
          <mxGeometry relative="1" x="0" y="0" as="geometry">
            <mxPoint x="16" y="-12" as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="e4" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="router-icon" target="kb-icon">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="e4-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;specialized question&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e4">
          <mxGeometry relative="1" x="0" y="0" as="geometry">
            <mxPoint y="-14" as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="e5" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="ingest-icon" target="s3-icon">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="e5-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;approved objects&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e5">
          <mxGeometry relative="1" x="0" y="0" as="geometry">
            <mxPoint y="-14" as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="e6" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="s3-icon" target="vectors-icon">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="e6-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;embed on sync&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e6">
          <mxGeometry relative="1" x="0" y="0" as="geometry">
            <mxPoint y="-14" as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="e7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=0;exitY=0.25;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="vectors-icon" target="kb-icon">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1250" y="652" />
              <mxPoint x="1250" y="480" />
              <mxPoint x="1050" y="480" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="e7-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;index&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e7">
          <mxGeometry relative="1" x="0" y="0" as="geometry">
            <mxPoint x="16" as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="e8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=block;endFill=1;strokeColor=#545B64;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="kb-icon" target="answer-icon">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="e8-label" value="&lt;span style=&quot;color: light-dark(rgb(35,47,62), rgb(245,245,245));&quot;&gt;chunks&lt;/span&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontFamily=Helvetica;fontSize=11;labelBackgroundColor=none;" connectable="0" vertex="1" parent="e8">
          <mxGeometry relative="1" x="0" y="0" as="geometry">
            <mxPoint y="-14" as="offset" />
          </mxGeometry>
        </mxCell>

        <mxCell id="step-1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=16;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;align=center;verticalAlign=middle;labelBackgroundColor=none;" value="1" vertex="1" parent="1">
          <mxGeometry x="218.0" y="176.0" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="step-2" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=16;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;align=center;verticalAlign=middle;labelBackgroundColor=none;" value="2" vertex="1" parent="1">
          <mxGeometry x="470" y="248" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="step-3" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=16;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;align=center;verticalAlign=middle;labelBackgroundColor=none;" value="3" vertex="1" parent="1">
          <mxGeometry x="360" y="360" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="step-4" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=16;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;align=center;verticalAlign=middle;labelBackgroundColor=none;" value="4" vertex="1" parent="1">
          <mxGeometry x="800" y="230" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="step-5" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=16;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;align=center;verticalAlign=middle;labelBackgroundColor=none;" value="5" vertex="1" parent="1">
          <mxGeometry x="800" y="620" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="step-6" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=16;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;align=center;verticalAlign=middle;labelBackgroundColor=none;" value="6" vertex="1" parent="1">
          <mxGeometry x="1160" y="620" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="step-7" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=16;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;align=center;verticalAlign=middle;labelBackgroundColor=none;" value="7" vertex="1" parent="1">
          <mxGeometry x="1160" y="230" width="28" height="28" as="geometry" />
        </mxCell>

        <mxCell id="legend-bg" style="verticalLabelPosition=bottom;verticalAlign=top;html=1;shape=mxgraph.basic.rect;fillColor2=none;strokeWidth=1;size=20;indent=5;fillColor=light-dark(#EDF3FF,#305363);strokeColor=#6c8ebf;fontFamily=Helvetica;" value="" vertex="1" parent="1">
          <mxGeometry x="1780" y="30" width="650" height="860" as="geometry" />
        </mxCell>
        <mxCell id="legend-container" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="1">
          <mxGeometry x="1800" y="50" width="610" height="820" as="geometry" />
        </mxCell>

        <mxCell id="step-1-legend" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="0" width="600" height="88" as="geometry" />
        </mxCell>
        <mxCell id="step-1-badge-legend" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=22;labelBackgroundColor=none;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;" value="1" vertex="1" parent="step-1-legend">
          <mxGeometry y="2" width="40" height="38" as="geometry" />
        </mxCell>
        <mxCell id="step-1-desc-legend" style="text;html=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=14;labelBackgroundColor=none;whiteSpace=wrap;fontFamily=Helvetica;" value="&lt;div&gt;&lt;b&gt;Classify the question&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;Deterministic rules choose live Gmail, live Drive, the curated index, or both.&lt;/span&gt;&lt;/div&gt;" vertex="1" parent="step-1-legend">
          <mxGeometry x="52" width="540" height="80" as="geometry" />
        </mxCell>

        <mxCell id="step-2-legend" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="96" width="600" height="88" as="geometry" />
        </mxCell>
        <mxCell id="step-2-badge-legend" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=22;labelBackgroundColor=none;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;" value="2" vertex="1" parent="step-2-legend">
          <mxGeometry y="2" width="40" height="38" as="geometry" />
        </mxCell>
        <mxCell id="step-2-desc-legend" style="text;html=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=14;labelBackgroundColor=none;whiteSpace=wrap;fontFamily=Helvetica;" value="&lt;div&gt;&lt;b&gt;Search Gmail live&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;messages.list with a Gmail query, then the thread, when the fact is in the mailbox.&lt;/span&gt;&lt;/div&gt;" vertex="1" parent="step-2-legend">
          <mxGeometry x="52" width="540" height="80" as="geometry" />
        </mxCell>

        <mxCell id="step-3-legend" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="192" width="600" height="88" as="geometry" />
        </mxCell>
        <mxCell id="step-3-badge-legend" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=22;labelBackgroundColor=none;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;" value="3" vertex="1" parent="step-3-legend">
          <mxGeometry y="2" width="40" height="38" as="geometry" />
        </mxCell>
        <mxCell id="step-3-desc-legend" style="text;html=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=14;labelBackgroundColor=none;whiteSpace=wrap;fontFamily=Helvetica;" value="&lt;div&gt;&lt;b&gt;Search Drive live&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;files.list scoped by folder, MIME type, and modified time.&lt;/span&gt;&lt;/div&gt;" vertex="1" parent="step-3-legend">
          <mxGeometry x="52" width="540" height="80" as="geometry" />
        </mxCell>

        <mxCell id="step-4-legend" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="288" width="600" height="88" as="geometry" />
        </mxCell>
        <mxCell id="step-4-badge-legend" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=22;labelBackgroundColor=none;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;" value="4" vertex="1" parent="step-4-legend">
          <mxGeometry y="2" width="40" height="38" as="geometry" />
        </mxCell>
        <mxCell id="step-4-desc-legend" style="text;html=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=14;labelBackgroundColor=none;whiteSpace=wrap;fontFamily=Helvetica;" value="&lt;div&gt;&lt;b&gt;Retrieve the curated index&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;Knowledge Bases Retrieve for questions that need semantic search across approved documents.&lt;/span&gt;&lt;/div&gt;" vertex="1" parent="step-4-legend">
          <mxGeometry x="52" width="540" height="80" as="geometry" />
        </mxCell>

        <mxCell id="step-5-legend" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="384" width="600" height="88" as="geometry" />
        </mxCell>
        <mxCell id="step-5-badge-legend" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=22;labelBackgroundColor=none;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;" value="5" vertex="1" parent="step-5-legend">
          <mxGeometry y="2" width="40" height="38" as="geometry" />
        </mxCell>
        <mxCell id="step-5-desc-legend" style="text;html=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=14;labelBackgroundColor=none;whiteSpace=wrap;fontFamily=Helvetica;" value="&lt;div&gt;&lt;b&gt;Select what to keep&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;Ingestion writes only approved folders, labels, and threads to S3.&lt;/span&gt;&lt;/div&gt;" vertex="1" parent="step-5-legend">
          <mxGeometry x="52" width="540" height="80" as="geometry" />
        </mxCell>

        <mxCell id="step-6-legend" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="480" width="600" height="88" as="geometry" />
        </mxCell>
        <mxCell id="step-6-badge-legend" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=22;labelBackgroundColor=none;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;" value="6" vertex="1" parent="step-6-legend">
          <mxGeometry y="2" width="40" height="38" as="geometry" />
        </mxCell>
        <mxCell id="step-6-desc-legend" style="text;html=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=14;labelBackgroundColor=none;whiteSpace=wrap;fontFamily=Helvetica;" value="&lt;div&gt;&lt;b&gt;Embed into S3 Vectors&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;The knowledge base sync stores vectors for that curated corpus. Semantic search only.&lt;/span&gt;&lt;/div&gt;" vertex="1" parent="step-6-legend">
          <mxGeometry x="52" width="540" height="80" as="geometry" />
        </mxCell>

        <mxCell id="step-7-legend" connectable="0" style="group;fontFamily=Helvetica;" value="" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="576" width="600" height="88" as="geometry" />
        </mxCell>
        <mxCell id="step-7-badge-legend" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#007CBD;strokeColor=default;fontColor=#FFFFFF;fontStyle=1;fontSize=22;labelBackgroundColor=none;fontFamily=Helvetica;shadow=1;glass=0;strokeWidth=2;" value="7" vertex="1" parent="step-7-legend">
          <mxGeometry y="2" width="40" height="38" as="geometry" />
        </mxCell>
        <mxCell id="step-7-desc-legend" style="text;html=1;align=left;verticalAlign=top;spacingTop=-4;fontSize=14;labelBackgroundColor=none;whiteSpace=wrap;fontFamily=Helvetica;" value="&lt;div&gt;&lt;b&gt;Answer or refuse&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;The model cites the message, file, or chunk. Missing evidence stays missing.&lt;/span&gt;&lt;/div&gt;" vertex="1" parent="step-7-legend">
          <mxGeometry x="52" width="540" height="80" as="geometry" />
        </mxCell>

        <mxCell id="legend-note" style="text;html=1;align=left;verticalAlign=top;fontSize=13;fontFamily=Helvetica;whiteSpace=wrap;" value="&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255));&quot;&gt;Solid arrows are the request path. Gmail and Drive stay outside the index until a question class fails live search. CloudWatch and Budgets are operational controls, not retrieval steps.&lt;/span&gt;" vertex="1" parent="legend-container">
          <mxGeometry x="0" y="680" width="580" height="90" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>