<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.5 Safari/605.1.15" version="27.1.3">
  <diagram name="Page-1" id="2wM_E3gajh0l9eDS2-Z1">
    <mxGraphModel dx="2711" dy="882" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1200" pageHeight="1600" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="MIGGKoW3_32xeX6fXyql-11" value="trait&amp;nbsp;DisplaySourceError" style="swimlane;fontStyle=0;childLayout=stackLayout;horizontal=1;startSize=26;fillColor=none;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
          <mxGeometry x="810" y="860" width="600" height="156" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-12" value="fn source_info(&amp;amp;self) -&amp;gt; SourceInfo;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry y="26" width="600" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-21" value="fn description(&amp;amp;self) -&amp;gt; String;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry y="52" width="600" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-22" value="fn fixme(&amp;amp;self, content: &amp;amp;[&amp;amp;str]) -&amp;gt; StyledString;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry y="78" width="600" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-23" value="fn message(&amp;amp;self, content: &amp;amp;[&amp;amp;str]) -&amp;gt; StyledString" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry y="104" width="600" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-26" value="fn to_string(&amp;amp;self, filename: &amp;amp;str, content: &amp;amp;str, entry_src_info: Option&amp;lt;SourceInfo&amp;gt;, format: OutputFormat)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry y="130" width="600" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-28" value="struct Logger" style="swimlane;fontStyle=0;childLayout=stackLayout;horizontal=1;startSize=26;fillColor=none;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
          <mxGeometry x="-50" y="850" width="770" height="104" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-29" value="pub fn error_parsing_rich&amp;lt;E: DisplaySourceError&amp;gt;(&amp;amp;mut self, content: &amp;amp;str, filename: Option&amp;lt;&amp;amp;Input&amp;gt;, error: &amp;amp;E)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-28">
          <mxGeometry y="26" width="770" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-30" value="pub fn error_runtime_rich&amp;lt;E: DisplaySourceError&amp;gt;(&amp;amp;mut self, content: &amp;amp;str, filename: Option&amp;lt;&amp;amp;Input&amp;gt;, error: &amp;amp;E, entry_src_info: SourceInfo)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-28">
          <mxGeometry y="52" width="770" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-31" value="pub fn debug_error&amp;lt;E: DisplaySourceError&amp;gt;(&amp;amp;mut self, content: &amp;amp;str, filename: Option&amp;lt;&amp;amp;Input&amp;gt;, error: &amp;amp;E, entry_src_info: SourceInfo)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-28">
          <mxGeometry y="78" width="770" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-35" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="MIGGKoW3_32xeX6fXyql-30" target="MIGGKoW3_32xeX6fXyql-26">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-42" value="struct OutputError" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
          <mxGeometry x="1050" y="570" width="165" height="164" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-43" value="&lt;div&gt;source_info: SourceInfo,&lt;br&gt;&lt;/div&gt;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-42">
          <mxGeometry y="26" width="165" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-46" value="kind: OutputErrorKind," style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-42">
          <mxGeometry y="52" width="165" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-44" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-42">
          <mxGeometry y="78" width="165" height="8" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-45" value="fn source_info()&amp;nbsp;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-42">
          <mxGeometry y="86" width="165" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-47" value="fn description()" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-42">
          <mxGeometry y="112" width="165" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-48" value="fn fixme()" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-42">
          <mxGeometry y="138" width="165" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-49" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;entryX=0.332;entryY=0.013;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="MIGGKoW3_32xeX6fXyql-48" target="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry width="160" relative="1" as="geometry">
            <mxPoint x="910" y="800" as="sourcePoint" />
            <mxPoint x="1060" y="750" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-51" value="struct&amp;nbsp;ParseError" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
          <mxGeometry x="640" y="570" width="160" height="190" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-52" value="pos: Pos" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-51">
          <mxGeometry y="26" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-55" value="recoverable: bool" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-51">
          <mxGeometry y="52" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-56" value="kind: ParseErrorKind" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-51">
          <mxGeometry y="78" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-53" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-51">
          <mxGeometry y="104" width="160" height="8" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-54" value="fn source_info()&amp;nbsp;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-51">
          <mxGeometry y="112" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-57" value="fn description()" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-51">
          <mxGeometry y="138" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-59" value="fn fixme()" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-51">
          <mxGeometry y="164" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-60" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.494;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.098;entryY=0.019;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="MIGGKoW3_32xeX6fXyql-59" target="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry width="160" relative="1" as="geometry">
            <mxPoint x="730" y="890" as="sourcePoint" />
            <mxPoint x="890" y="890" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-61" value="struct RunnerError" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
          <mxGeometry x="850" y="570" width="160" height="216" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-62" value="source_info: SourceInfo" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="26" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-66" value="kind: RunnerErrorKind" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="52" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-67" value="assert: bool" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="78" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-63" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="104" width="160" height="8" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-64" value="fn source_info()&amp;nbsp;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="112" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-65" value="fn description()" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="138" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-68" value="fn fixme()" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="164" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-69" value="fn message()" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" vertex="1" parent="MIGGKoW3_32xeX6fXyql-61">
          <mxGeometry y="190" width="160" height="26" as="geometry" />
        </mxCell>
        <mxCell id="MIGGKoW3_32xeX6fXyql-70" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.475;exitY=1.077;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.25;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="MIGGKoW3_32xeX6fXyql-69" target="MIGGKoW3_32xeX6fXyql-11">
          <mxGeometry width="160" relative="1" as="geometry">
            <mxPoint x="590" y="890" as="sourcePoint" />
            <mxPoint x="750" y="890" as="targetPoint" />
          </mxGeometry>
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
