arm-ka-docs/model/diagrams/part04_files_jobs.svg
Andrey Epifancev c2c95012ea model: DBML v5.18 — stored_file.consolidation_id, рабочий стол консоли (#90)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 23:24:57 +04:00

793 lines
94 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.47.0 (20210316.0004)
-->
<!-- Title: dbml Pages: 1 -->
<svg width="3716pt" height="4195pt"
viewBox="0.00 0.00 3715.82 4195.36" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 4191.36)">
<title>dbml</title>
<!-- document_type -->
<g id="document_type" class="node">
<title>document_type</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="1345.56" cy="-2129.68" rx="260.84" ry="257.27"/>
<polygon fill="#29235c" stroke="transparent" points="1163.56,-2249.68 1163.56,-2309.68 1528.56,-2309.68 1528.56,-2249.68 1163.56,-2249.68"/>
<polygon fill="none" stroke="#29235c" points="1163.56,-2249.68 1163.56,-2309.68 1528.56,-2309.68 1528.56,-2249.68 1163.56,-2249.68"/>
<text text-anchor="start" x="1174.44" y="-2270.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;document_type &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1163.56,-2189.68 1163.56,-2249.68 1528.56,-2249.68 1528.56,-2189.68 1163.56,-2189.68"/>
<polygon fill="none" stroke="#29235c" points="1163.56,-2189.68 1163.56,-2249.68 1528.56,-2249.68 1528.56,-2189.68 1163.56,-2189.68"/>
<text text-anchor="start" x="1235.81" y="-2210.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;BALANCE &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1163.56,-2129.68 1163.56,-2189.68 1528.56,-2189.68 1528.56,-2129.68 1163.56,-2129.68"/>
<polygon fill="none" stroke="#29235c" points="1163.56,-2129.68 1163.56,-2189.68 1528.56,-2189.68 1528.56,-2129.68 1163.56,-2129.68"/>
<text text-anchor="start" x="1246.5" y="-2150.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;INCOME &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1163.56,-2069.68 1163.56,-2129.68 1528.56,-2129.68 1528.56,-2069.68 1163.56,-2069.68"/>
<polygon fill="none" stroke="#29235c" points="1163.56,-2069.68 1163.56,-2129.68 1528.56,-2129.68 1528.56,-2069.68 1163.56,-2069.68"/>
<text text-anchor="start" x="1276.7" y="-2090.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;OSV &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1163.56,-2009.68 1163.56,-2069.68 1528.56,-2069.68 1528.56,-2009.68 1163.56,-2009.68"/>
<polygon fill="none" stroke="#29235c" points="1163.56,-2009.68 1163.56,-2069.68 1528.56,-2069.68 1528.56,-2009.68 1163.56,-2009.68"/>
<text text-anchor="start" x="1206.49" y="-2030.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;DISCLOSURE &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1163.56,-1949.68 1163.56,-2009.68 1528.56,-2009.68 1528.56,-1949.68 1163.56,-1949.68"/>
<polygon fill="none" stroke="#29235c" points="1163.56,-1949.68 1163.56,-2009.68 1528.56,-2009.68 1528.56,-1949.68 1163.56,-1949.68"/>
<text text-anchor="start" x="1254.5" y="-1970.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;OTHER &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1162.06,-1948.68 1162.06,-2310.68 1529.06,-2310.68 1529.06,-1948.68 1162.06,-1948.68"/>
</g>
<!-- file_type -->
<g id="file_type" class="node">
<title>file_type</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="2084.43" cy="-1063.68" rx="190.42" ry="299.63"/>
<polygon fill="#29235c" stroke="transparent" points="1952.43,-1213.68 1952.43,-1273.68 2217.43,-1273.68 2217.43,-1213.68 1952.43,-1213.68"/>
<polygon fill="none" stroke="#29235c" points="1952.43,-1213.68 1952.43,-1273.68 2217.43,-1273.68 2217.43,-1213.68 1952.43,-1213.68"/>
<text text-anchor="start" x="1963.11" y="-1234.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;file_type &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1952.43,-1153.68 1952.43,-1213.68 2217.43,-1213.68 2217.43,-1153.68 1952.43,-1153.68"/>
<polygon fill="none" stroke="#29235c" points="1952.43,-1153.68 1952.43,-1213.68 2217.43,-1213.68 2217.43,-1153.68 1952.43,-1153.68"/>
<text text-anchor="start" x="2019.12" y="-1174.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;XLS &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1952.43,-1093.68 1952.43,-1153.68 2217.43,-1153.68 2217.43,-1093.68 1952.43,-1093.68"/>
<polygon fill="none" stroke="#29235c" points="1952.43,-1093.68 1952.43,-1153.68 2217.43,-1153.68 2217.43,-1093.68 1952.43,-1093.68"/>
<text text-anchor="start" x="2008.45" y="-1114.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;XLSX &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1952.43,-1033.68 1952.43,-1093.68 2217.43,-1093.68 2217.43,-1033.68 1952.43,-1033.68"/>
<polygon fill="none" stroke="#29235c" points="1952.43,-1033.68 1952.43,-1093.68 2217.43,-1093.68 2217.43,-1033.68 1952.43,-1033.68"/>
<text text-anchor="start" x="2008.45" y="-1054.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;XLSB &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1952.43,-973.68 1952.43,-1033.68 2217.43,-1033.68 2217.43,-973.68 1952.43,-973.68"/>
<polygon fill="none" stroke="#29235c" points="1952.43,-973.68 1952.43,-1033.68 2217.43,-1033.68 2217.43,-973.68 1952.43,-973.68"/>
<text text-anchor="start" x="2017.36" y="-994.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;PDF &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1952.43,-913.68 1952.43,-973.68 2217.43,-973.68 2217.43,-913.68 1952.43,-913.68"/>
<polygon fill="none" stroke="#29235c" points="1952.43,-913.68 1952.43,-973.68 2217.43,-973.68 2217.43,-913.68 1952.43,-913.68"/>
<text text-anchor="start" x="2014.69" y="-934.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;PNG &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1952.43,-853.68 1952.43,-913.68 2217.43,-913.68 2217.43,-853.68 1952.43,-853.68"/>
<polygon fill="none" stroke="#29235c" points="1952.43,-853.68 1952.43,-913.68 2217.43,-913.68 2217.43,-853.68 1952.43,-853.68"/>
<text text-anchor="start" x="2018.24" y="-874.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;JPG &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1950.93,-852.68 1950.93,-1274.68 2217.93,-1274.68 2217.93,-852.68 1950.93,-852.68"/>
</g>
<!-- recognition_pipeline -->
<g id="recognition_pipeline" class="node">
<title>recognition_pipeline</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="2811.98" cy="-2716.68" rx="307.68" ry="130.22"/>
<polygon fill="#29235c" stroke="transparent" points="2596.98,-2746.68 2596.98,-2806.68 3027.98,-2806.68 3027.98,-2746.68 2596.98,-2746.68"/>
<polygon fill="none" stroke="#29235c" points="2596.98,-2746.68 2596.98,-2806.68 3027.98,-2806.68 3027.98,-2746.68 2596.98,-2746.68"/>
<text text-anchor="start" x="2607.97" y="-2767.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;recognition_pipeline &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2596.98,-2686.68 2596.98,-2746.68 3027.98,-2746.68 3027.98,-2686.68 2596.98,-2686.68"/>
<polygon fill="none" stroke="#29235c" points="2596.98,-2686.68 2596.98,-2746.68 3027.98,-2746.68 3027.98,-2686.68 2596.98,-2686.68"/>
<text text-anchor="start" x="2728" y="-2707.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;tabular &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2596.98,-2626.68 2596.98,-2686.68 3027.98,-2686.68 3027.98,-2626.68 2596.98,-2626.68"/>
<polygon fill="none" stroke="#29235c" points="2596.98,-2626.68 2596.98,-2686.68 3027.98,-2686.68 3027.98,-2626.68 2596.98,-2626.68"/>
<text text-anchor="start" x="2733.35" y="-2647.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;image &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="2595.48,-2625.68 2595.48,-2807.68 3028.48,-2807.68 3028.48,-2625.68 2595.48,-2625.68"/>
</g>
<!-- period_quarter -->
<g id="period_quarter" class="node">
<title>period_quarter</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="1345.56" cy="-1639.68" rx="253.29" ry="214.92"/>
<polygon fill="#29235c" stroke="transparent" points="1168.56,-1729.68 1168.56,-1789.68 1522.56,-1789.68 1522.56,-1729.68 1168.56,-1729.68"/>
<polygon fill="none" stroke="#29235c" points="1168.56,-1729.68 1168.56,-1789.68 1522.56,-1789.68 1522.56,-1729.68 1168.56,-1729.68"/>
<text text-anchor="start" x="1179.29" y="-1750.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;period_quarter &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1168.56,-1669.68 1168.56,-1729.68 1522.56,-1729.68 1522.56,-1669.68 1168.56,-1669.68"/>
<polygon fill="none" stroke="#29235c" points="1168.56,-1669.68 1168.56,-1729.68 1522.56,-1729.68 1522.56,-1669.68 1168.56,-1669.68"/>
<text text-anchor="start" x="1288.65" y="-1690.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;Q1 &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1168.56,-1609.68 1168.56,-1669.68 1522.56,-1669.68 1522.56,-1609.68 1168.56,-1609.68"/>
<polygon fill="none" stroke="#29235c" points="1168.56,-1609.68 1168.56,-1669.68 1522.56,-1669.68 1522.56,-1609.68 1168.56,-1609.68"/>
<text text-anchor="start" x="1288.65" y="-1630.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;Q2 &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1168.56,-1549.68 1168.56,-1609.68 1522.56,-1609.68 1522.56,-1549.68 1168.56,-1549.68"/>
<polygon fill="none" stroke="#29235c" points="1168.56,-1549.68 1168.56,-1609.68 1522.56,-1609.68 1522.56,-1549.68 1168.56,-1549.68"/>
<text text-anchor="start" x="1288.65" y="-1570.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;Q3 &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1168.56,-1489.68 1168.56,-1549.68 1522.56,-1549.68 1522.56,-1489.68 1168.56,-1489.68"/>
<polygon fill="none" stroke="#29235c" points="1168.56,-1489.68 1168.56,-1549.68 1522.56,-1549.68 1522.56,-1489.68 1168.56,-1489.68"/>
<text text-anchor="start" x="1288.65" y="-1510.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;Q4 &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1167.56,-1488.68 1167.56,-1790.68 1523.56,-1790.68 1523.56,-1488.68 1167.56,-1488.68"/>
</g>
<!-- file_status -->
<g id="file_status" class="node">
<title>file_status</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="2084.43" cy="-450.68" rx="224.31" ry="257.27"/>
<polygon fill="#29235c" stroke="transparent" points="1928.43,-570.68 1928.43,-630.68 2241.43,-630.68 2241.43,-570.68 1928.43,-570.68"/>
<polygon fill="none" stroke="#29235c" points="1928.43,-570.68 1928.43,-630.68 2241.43,-630.68 2241.43,-570.68 1928.43,-570.68"/>
<text text-anchor="start" x="1950.66" y="-591.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;file_status &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1928.43,-510.68 1928.43,-570.68 2241.43,-570.68 2241.43,-510.68 1928.43,-510.68"/>
<polygon fill="none" stroke="#29235c" points="1928.43,-510.68 1928.43,-570.68 2241.43,-570.68 2241.43,-510.68 1928.43,-510.68"/>
<text text-anchor="start" x="1961.35" y="-531.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;UPLOADED &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1928.43,-450.68 1928.43,-510.68 2241.43,-510.68 2241.43,-450.68 1928.43,-450.68"/>
<polygon fill="none" stroke="#29235c" points="1928.43,-450.68 1928.43,-510.68 2241.43,-510.68 2241.43,-450.68 1928.43,-450.68"/>
<text text-anchor="start" x="1942.68" y="-471.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;PROCESSING &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1928.43,-390.68 1928.43,-450.68 2241.43,-450.68 2241.43,-390.68 1928.43,-390.68"/>
<polygon fill="none" stroke="#29235c" points="1928.43,-390.68 1928.43,-450.68 2241.43,-450.68 2241.43,-390.68 1928.43,-390.68"/>
<text text-anchor="start" x="1948.91" y="-411.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;PROCESSED &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1928.43,-330.68 1928.43,-390.68 2241.43,-390.68 2241.43,-330.68 1928.43,-330.68"/>
<polygon fill="none" stroke="#29235c" points="1928.43,-330.68 1928.43,-390.68 2241.43,-390.68 2241.43,-330.68 1928.43,-330.68"/>
<text text-anchor="start" x="1991.59" y="-351.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;ERROR &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1928.43,-270.68 1928.43,-330.68 2241.43,-330.68 2241.43,-270.68 1928.43,-270.68"/>
<polygon fill="none" stroke="#29235c" points="1928.43,-270.68 1928.43,-330.68 2241.43,-330.68 2241.43,-270.68 1928.43,-270.68"/>
<text text-anchor="start" x="1939.13" y="-291.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;SUPERSEDED &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1926.93,-269.68 1926.93,-631.68 2241.93,-631.68 2241.93,-269.68 1926.93,-269.68"/>
</g>
<!-- document_status -->
<g id="document_status" class="node">
<title>document_status</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="1345.56" cy="-1191.68" rx="278.7" ry="214.92"/>
<polygon fill="#29235c" stroke="transparent" points="1150.56,-1281.68 1150.56,-1341.68 1540.56,-1341.68 1540.56,-1281.68 1150.56,-1281.68"/>
<polygon fill="none" stroke="#29235c" points="1150.56,-1281.68 1150.56,-1341.68 1540.56,-1341.68 1540.56,-1281.68 1150.56,-1281.68"/>
<text text-anchor="start" x="1161.49" y="-1302.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;document_status &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1150.56,-1221.68 1150.56,-1281.68 1540.56,-1281.68 1540.56,-1221.68 1150.56,-1221.68"/>
<polygon fill="none" stroke="#29235c" points="1150.56,-1221.68 1150.56,-1281.68 1540.56,-1281.68 1540.56,-1221.68 1150.56,-1221.68"/>
<text text-anchor="start" x="1203.33" y="-1242.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;RECOGNIZED &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1150.56,-1161.68 1150.56,-1221.68 1540.56,-1221.68 1540.56,-1161.68 1150.56,-1161.68"/>
<polygon fill="none" stroke="#29235c" points="1150.56,-1161.68 1150.56,-1221.68 1540.56,-1221.68 1540.56,-1161.68 1150.56,-1161.68"/>
<text text-anchor="start" x="1189.99" y="-1182.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;NEEDS_CHECK &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1150.56,-1101.68 1150.56,-1161.68 1540.56,-1161.68 1540.56,-1101.68 1150.56,-1101.68"/>
<polygon fill="none" stroke="#29235c" points="1150.56,-1101.68 1150.56,-1161.68 1540.56,-1161.68 1540.56,-1101.68 1150.56,-1101.68"/>
<text text-anchor="start" x="1213.12" y="-1122.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;CONFIRMED &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1150.56,-1041.68 1150.56,-1101.68 1540.56,-1101.68 1540.56,-1041.68 1150.56,-1041.68"/>
<polygon fill="none" stroke="#29235c" points="1150.56,-1041.68 1150.56,-1101.68 1540.56,-1101.68 1540.56,-1041.68 1150.56,-1041.68"/>
<text text-anchor="start" x="1252.22" y="-1062.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;ERROR &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1149.56,-1040.68 1149.56,-1342.68 1541.56,-1342.68 1541.56,-1040.68 1149.56,-1040.68"/>
</g>
<!-- s3_bucket_role -->
<g id="s3_bucket_role" class="node">
<title>s3_bucket_role</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="3448.31" cy="-3538.68" rx="259.52" ry="214.92"/>
<polygon fill="#29235c" stroke="transparent" points="3267.31,-3628.68 3267.31,-3688.68 3630.31,-3688.68 3630.31,-3628.68 3267.31,-3628.68"/>
<polygon fill="none" stroke="#29235c" points="3267.31,-3628.68 3267.31,-3688.68 3630.31,-3688.68 3630.31,-3628.68 3267.31,-3628.68"/>
<text text-anchor="start" x="3278.08" y="-3649.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;s3_bucket_role &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="3267.31,-3568.68 3267.31,-3628.68 3630.31,-3628.68 3630.31,-3568.68 3267.31,-3568.68"/>
<polygon fill="none" stroke="#29235c" points="3267.31,-3568.68 3267.31,-3628.68 3630.31,-3628.68 3630.31,-3568.68 3267.31,-3568.68"/>
<text text-anchor="start" x="3357.22" y="-3589.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;uploads &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="3267.31,-3508.68 3267.31,-3568.68 3630.31,-3568.68 3630.31,-3508.68 3267.31,-3508.68"/>
<polygon fill="none" stroke="#29235c" points="3267.31,-3508.68 3267.31,-3568.68 3630.31,-3568.68 3630.31,-3508.68 3267.31,-3508.68"/>
<text text-anchor="start" x="3366.13" y="-3529.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;results &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="3267.31,-3448.68 3267.31,-3508.68 3630.31,-3508.68 3630.31,-3448.68 3267.31,-3448.68"/>
<polygon fill="none" stroke="#29235c" points="3267.31,-3448.68 3267.31,-3508.68 3630.31,-3508.68 3630.31,-3448.68 3267.31,-3448.68"/>
<text text-anchor="start" x="3360.78" y="-3469.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;exports &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="3267.31,-3388.68 3267.31,-3448.68 3630.31,-3448.68 3630.31,-3388.68 3267.31,-3388.68"/>
<polygon fill="none" stroke="#29235c" points="3267.31,-3388.68 3267.31,-3448.68 3630.31,-3448.68 3630.31,-3388.68 3267.31,-3388.68"/>
<text text-anchor="start" x="3361.68" y="-3409.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;archive &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="3265.81,-3387.68 3265.81,-3689.68 3630.81,-3689.68 3630.81,-3387.68 3265.81,-3387.68"/>
</g>
<!-- recognition_status -->
<g id="recognition_status" class="node">
<title>recognition_status</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="2811.98" cy="-2183.68" rx="289.83" ry="384.83"/>
<polygon fill="#29235c" stroke="transparent" points="2608.98,-2393.68 2608.98,-2453.68 3014.98,-2453.68 3014.98,-2393.68 2608.98,-2393.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-2393.68 2608.98,-2453.68 3014.98,-2453.68 3014.98,-2393.68 2608.98,-2393.68"/>
<text text-anchor="start" x="2619.91" y="-2414.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;recognition_status &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-2333.68 2608.98,-2393.68 3014.98,-2393.68 3014.98,-2333.68 2608.98,-2333.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-2333.68 2608.98,-2393.68 3014.98,-2393.68 3014.98,-2333.68 2608.98,-2333.68"/>
<text text-anchor="start" x="2723.04" y="-2354.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;queued &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-2273.68 2608.98,-2333.68 3014.98,-2333.68 3014.98,-2273.68 2608.98,-2273.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-2273.68 2608.98,-2333.68 3014.98,-2333.68 3014.98,-2273.68 2608.98,-2273.68"/>
<text text-anchor="start" x="2707.94" y="-2294.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;published &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-2213.68 2608.98,-2273.68 3014.98,-2273.68 3014.98,-2213.68 2608.98,-2213.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-2213.68 2608.98,-2273.68 3014.98,-2273.68 3014.98,-2213.68 2608.98,-2213.68"/>
<text text-anchor="start" x="2699.06" y="-2234.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;processing &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-2153.68 2608.98,-2213.68 3014.98,-2213.68 3014.98,-2153.68 2608.98,-2153.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-2153.68 2608.98,-2213.68 3014.98,-2213.68 3014.98,-2153.68 2608.98,-2153.68"/>
<text text-anchor="start" x="2740.83" y="-2174.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;done &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-2093.68 2608.98,-2153.68 3014.98,-2153.68 3014.98,-2093.68 2608.98,-2093.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-2093.68 2608.98,-2153.68 3014.98,-2153.68 3014.98,-2093.68 2608.98,-2093.68"/>
<text text-anchor="start" x="2682.14" y="-2114.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;needs_check &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-2033.68 2608.98,-2093.68 3014.98,-2093.68 3014.98,-2033.68 2608.98,-2033.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-2033.68 2608.98,-2093.68 3014.98,-2093.68 3014.98,-2033.68 2608.98,-2033.68"/>
<text text-anchor="start" x="2742.64" y="-2054.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;error &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-1973.68 2608.98,-2033.68 3014.98,-2033.68 3014.98,-1973.68 2608.98,-1973.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-1973.68 2608.98,-2033.68 3014.98,-2033.68 3014.98,-1973.68 2608.98,-1973.68"/>
<text text-anchor="start" x="2723.95" y="-1994.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;timeout &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2608.98,-1913.68 2608.98,-1973.68 3014.98,-1973.68 3014.98,-1913.68 2608.98,-1913.68"/>
<polygon fill="none" stroke="#29235c" points="2608.98,-1913.68 2608.98,-1973.68 3014.98,-1973.68 3014.98,-1913.68 2608.98,-1913.68"/>
<text text-anchor="start" x="2755.07" y="-1934.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;dlq &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="2607.98,-1912.68 2607.98,-2454.68 3015.98,-2454.68 3015.98,-1912.68 2607.98,-1912.68"/>
</g>
<!-- document_check_result -->
<g id="document_check_result" class="node">
<title>document_check_result</title>
<ellipse fill="none" stroke="black" stroke-width="0" cx="1345.56" cy="-786.68" rx="345.14" ry="172.57"/>
<polygon fill="#29235c" stroke="transparent" points="1103.56,-846.68 1103.56,-906.68 1587.56,-906.68 1587.56,-846.68 1103.56,-846.68"/>
<polygon fill="none" stroke="#29235c" points="1103.56,-846.68 1103.56,-906.68 1587.56,-906.68 1587.56,-846.68 1103.56,-846.68"/>
<text text-anchor="start" x="1114.38" y="-867.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;document_check_result &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1103.56,-786.68 1103.56,-846.68 1587.56,-846.68 1587.56,-786.68 1103.56,-786.68"/>
<polygon fill="none" stroke="#29235c" points="1103.56,-786.68 1103.56,-846.68 1587.56,-846.68 1587.56,-786.68 1103.56,-786.68"/>
<text text-anchor="start" x="1253.12" y="-807.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;MATCH &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1103.56,-726.68 1103.56,-786.68 1587.56,-786.68 1587.56,-726.68 1103.56,-726.68"/>
<polygon fill="none" stroke="#29235c" points="1103.56,-726.68 1103.56,-786.68 1587.56,-786.68 1587.56,-726.68 1103.56,-726.68"/>
<text text-anchor="start" x="1224.68" y="-747.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;MISMATCH &#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1103.56,-666.68 1103.56,-726.68 1587.56,-726.68 1587.56,-666.68 1103.56,-666.68"/>
<polygon fill="none" stroke="#29235c" points="1103.56,-666.68 1103.56,-726.68 1587.56,-726.68 1587.56,-666.68 1103.56,-666.68"/>
<text text-anchor="start" x="1225.57" y="-687.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#1d71b8"> &#160;&#160;&#160;UNKNOWN &#160;&#160;&#160;</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1102.56,-665.68 1102.56,-907.68 1588.56,-907.68 1588.56,-665.68 1102.56,-665.68"/>
</g>
<!-- app_user -->
<g id="app_user" class="node">
<title>app_user</title>
<g id="a_app_user"><a xlink:title="app_user&#10;STUB — полное определение в part02_users_access">
<ellipse fill="none" stroke="black" stroke-width="0" cx="2084.43" cy="-87.68" rx="200.22" ry="87.86"/>
<polygon fill="#1d71b8" stroke="transparent" points="1945.43,-87.68 1945.43,-147.68 2224.43,-147.68 2224.43,-87.68 1945.43,-87.68"/>
<polygon fill="none" stroke="#29235c" points="1945.43,-87.68 1945.43,-147.68 2224.43,-147.68 2224.43,-87.68 1945.43,-87.68"/>
<text text-anchor="start" x="1955.98" y="-108.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;app_user &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1945.43,-27.68 1945.43,-87.68 2224.43,-87.68 2224.43,-27.68 1945.43,-27.68"/>
<polygon fill="none" stroke="#29235c" points="1945.43,-27.68 1945.43,-87.68 2224.43,-87.68 2224.43,-27.68 1945.43,-27.68"/>
<text text-anchor="start" x="1956.43" y="-48.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">id</text>
<text text-anchor="start" x="1981.32" y="-48.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> &#160;&#160;&#160;</text>
<text text-anchor="start" x="2152.96" y="-48.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1943.93,-26.68 1943.93,-148.68 2224.93,-148.68 2224.93,-26.68 1943.93,-26.68"/>
</a>
</g>
</g>
<!-- consolidation -->
<g id="consolidation" class="node">
<title>consolidation</title>
<g id="a_consolidation"><a xlink:title="consolidation&#10;STUB — полное определение в part07_consolidation">
<ellipse fill="none" stroke="black" stroke-width="0" cx="2084.43" cy="-1468.68" rx="238.09" ry="87.86"/>
<polygon fill="#1d71b8" stroke="transparent" points="1918.43,-1468.68 1918.43,-1528.68 2251.43,-1528.68 2251.43,-1468.68 1918.43,-1468.68"/>
<polygon fill="none" stroke="#29235c" points="1918.43,-1468.68 1918.43,-1528.68 2251.43,-1528.68 2251.43,-1468.68 1918.43,-1468.68"/>
<text text-anchor="start" x="1929.32" y="-1489.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;consolidation &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1918.43,-1408.68 1918.43,-1468.68 2251.43,-1468.68 2251.43,-1408.68 1918.43,-1408.68"/>
<polygon fill="none" stroke="#29235c" points="1918.43,-1408.68 1918.43,-1468.68 2251.43,-1468.68 2251.43,-1408.68 1918.43,-1408.68"/>
<text text-anchor="start" x="1929.43" y="-1429.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">id</text>
<text text-anchor="start" x="1954.32" y="-1429.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> &#160;&#160;&#160;</text>
<text text-anchor="start" x="2179.96" y="-1429.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1916.93,-1407.68 1916.93,-1529.68 2251.93,-1529.68 2251.93,-1407.68 1916.93,-1407.68"/>
</a>
</g>
</g>
<!-- legal_entity -->
<g id="legal_entity" class="node">
<title>legal_entity</title>
<g id="a_legal_entity"><a xlink:title="legal_entity&#10;STUB — полное определение в part01_groups_entities">
<ellipse fill="none" stroke="black" stroke-width="0" cx="2084.43" cy="-4099.68" rx="220.73" ry="87.86"/>
<polygon fill="#1d71b8" stroke="transparent" points="1930.43,-4099.68 1930.43,-4159.68 2238.43,-4159.68 2238.43,-4099.68 1930.43,-4099.68"/>
<polygon fill="none" stroke="#29235c" points="1930.43,-4099.68 1930.43,-4159.68 2238.43,-4159.68 2238.43,-4099.68 1930.43,-4099.68"/>
<text text-anchor="start" x="1941.27" y="-4120.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;legal_entity &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1930.43,-4039.68 1930.43,-4099.68 2238.43,-4099.68 2238.43,-4039.68 1930.43,-4039.68"/>
<polygon fill="none" stroke="#29235c" points="1930.43,-4039.68 1930.43,-4099.68 2238.43,-4099.68 2238.43,-4039.68 1930.43,-4039.68"/>
<text text-anchor="start" x="1941.43" y="-4060.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">id</text>
<text text-anchor="start" x="1966.32" y="-4060.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> &#160;&#160;&#160;</text>
<text text-anchor="start" x="2166.96" y="-4060.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1929.43,-4038.68 1929.43,-4160.68 2239.43,-4160.68 2239.43,-4038.68 1929.43,-4038.68"/>
</a>
</g>
</g>
<!-- s3_object -->
<g id="s3_object" class="node">
<title>s3_object</title>
<g id="a_s3_object"><a xlink:title="s3_object&#10;Реестр объектов S3. stored_file / recognition_job ссылаются сюда FK">
<ellipse fill="none" stroke="black" stroke-width="0" cx="2811.98" cy="-3418.68" rx="340.65" ry="554.24"/>
<polygon fill="#1d71b8" stroke="transparent" points="2572.98,-3748.68 2572.98,-3808.68 3050.98,-3808.68 3050.98,-3748.68 2572.98,-3748.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3748.68 2572.98,-3808.68 3050.98,-3808.68 3050.98,-3748.68 2572.98,-3748.68"/>
<text text-anchor="start" x="2681.26" y="-3769.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;s3_object &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3688.68 2572.98,-3748.68 3050.98,-3748.68 3050.98,-3688.68 2572.98,-3688.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3688.68 2572.98,-3748.68 3050.98,-3748.68 3050.98,-3688.68 2572.98,-3688.68"/>
<text text-anchor="start" x="2583.98" y="-3709.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">id</text>
<text text-anchor="start" x="2608.87" y="-3709.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> &#160;&#160;&#160;</text>
<text text-anchor="start" x="2979.51" y="-3709.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3628.68 2572.98,-3688.68 3050.98,-3688.68 3050.98,-3628.68 2572.98,-3628.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3628.68 2572.98,-3688.68 3050.98,-3688.68 3050.98,-3628.68 2572.98,-3628.68"/>
<text text-anchor="start" x="2583.5" y="-3648.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">bucket_role &#160;&#160;&#160;</text>
<text text-anchor="start" x="2783.95" y="-3649.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">s3_bucket_role</text>
<text text-anchor="start" x="3000.91" y="-3649.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="3009.8" y="-3649.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3568.68 2572.98,-3628.68 3050.98,-3628.68 3050.98,-3568.68 2572.98,-3568.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3568.68 2572.98,-3628.68 3050.98,-3628.68 3050.98,-3568.68 2572.98,-3568.68"/>
<text text-anchor="start" x="2583.98" y="-3588.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">bucket &#160;&#160;&#160;</text>
<text text-anchor="start" x="2894.21" y="-3589.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<text text-anchor="start" x="3000.89" y="-3589.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="3009.78" y="-3589.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3508.68 2572.98,-3568.68 3050.98,-3568.68 3050.98,-3508.68 2572.98,-3508.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3508.68 2572.98,-3568.68 3050.98,-3568.68 3050.98,-3508.68 2572.98,-3508.68"/>
<text text-anchor="start" x="2583.98" y="-3528.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">key &#160;&#160;&#160;</text>
<text text-anchor="start" x="2894.21" y="-3529.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<text text-anchor="start" x="3000.89" y="-3529.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="3009.78" y="-3529.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3448.68 2572.98,-3508.68 3050.98,-3508.68 3050.98,-3448.68 2572.98,-3448.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3448.68 2572.98,-3508.68 3050.98,-3508.68 3050.98,-3448.68 2572.98,-3448.68"/>
<text text-anchor="start" x="2583.98" y="-3468.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">content_type &#160;&#160;&#160;</text>
<text text-anchor="start" x="2933.3" y="-3469.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3388.68 2572.98,-3448.68 3050.98,-3448.68 3050.98,-3388.68 2572.98,-3388.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3388.68 2572.98,-3448.68 3050.98,-3448.68 3050.98,-3388.68 2572.98,-3388.68"/>
<text text-anchor="start" x="2583.98" y="-3408.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">size_bytes &#160;&#160;&#160;</text>
<text text-anchor="start" x="2963.52" y="-3409.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">bigint</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3328.68 2572.98,-3388.68 3050.98,-3388.68 3050.98,-3328.68 2572.98,-3328.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3328.68 2572.98,-3388.68 3050.98,-3388.68 3050.98,-3328.68 2572.98,-3328.68"/>
<text text-anchor="start" x="2583.98" y="-3348.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">sha256 &#160;&#160;&#160;</text>
<text text-anchor="start" x="2933.3" y="-3349.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3268.68 2572.98,-3328.68 3050.98,-3328.68 3050.98,-3268.68 2572.98,-3268.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3268.68 2572.98,-3328.68 3050.98,-3328.68 3050.98,-3268.68 2572.98,-3268.68"/>
<text text-anchor="start" x="2583.98" y="-3288.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">version_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="2933.3" y="-3289.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3208.68 2572.98,-3268.68 3050.98,-3268.68 3050.98,-3208.68 2572.98,-3208.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3208.68 2572.98,-3268.68 3050.98,-3268.68 3050.98,-3208.68 2572.98,-3208.68"/>
<text text-anchor="start" x="2583.98" y="-3228.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">created_by &#160;&#160;&#160;</text>
<text text-anchor="start" x="2933.3" y="-3229.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3148.68 2572.98,-3208.68 3050.98,-3208.68 3050.98,-3148.68 2572.98,-3148.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3148.68 2572.98,-3208.68 3050.98,-3208.68 3050.98,-3148.68 2572.98,-3148.68"/>
<text text-anchor="start" x="2583.98" y="-3168.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">created_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="2828.43" y="-3169.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<text text-anchor="start" x="3000.89" y="-3169.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="3009.78" y="-3169.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3088.68 2572.98,-3148.68 3050.98,-3148.68 3050.98,-3088.68 2572.98,-3088.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3088.68 2572.98,-3148.68 3050.98,-3148.68 3050.98,-3088.68 2572.98,-3088.68"/>
<text text-anchor="start" x="2583.98" y="-3108.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">expires_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="2867.53" y="-3109.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="2572.98,-3028.68 2572.98,-3088.68 3050.98,-3088.68 3050.98,-3028.68 2572.98,-3028.68"/>
<polygon fill="none" stroke="#29235c" points="2572.98,-3028.68 2572.98,-3088.68 3050.98,-3088.68 3050.98,-3028.68 2572.98,-3028.68"/>
<text text-anchor="start" x="2583.98" y="-3048.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">archived_to &#160;&#160;&#160;</text>
<text text-anchor="start" x="2933.3" y="-3049.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="2571.98,-3027.68 2571.98,-3809.68 3051.98,-3809.68 3051.98,-3027.68 2571.98,-3027.68"/>
</a>
</g>
</g>
<!-- s3_object&#45;&gt;s3_bucket_role -->
<g id="edge23" class="edge">
<title>s3_object:e&#45;&gt;s3_bucket_role:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M3051.98,-3658.68C3147.24,-3658.68 3171.05,-3658.68 3266.31,-3658.68"/>
</g>
<!-- stored_file -->
<g id="stored_file" class="node">
<title>stored_file</title>
<g id="a_stored_file"><a xlink:title="stored_file&#10;v5.13: физический файл одной загрузки (S3 — только ссылка). Что внутри — document (1:N). Первичка не редактируется. Удаление физическое запрещено после INITIATED — только SUPERSEDED (ANL&#45;020). v5.18: consolidation_id — где загружен; что использует версия — consolidation_document">
<ellipse fill="none" stroke="black" stroke-width="0" cx="1345.56" cy="-3124.68" rx="352.28" ry="681.8"/>
<polygon fill="#1d71b8" stroke="transparent" points="1098.56,-3544.68 1098.56,-3604.68 1592.56,-3604.68 1592.56,-3544.68 1098.56,-3544.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3544.68 1098.56,-3604.68 1592.56,-3604.68 1592.56,-3544.68 1098.56,-3544.68"/>
<text text-anchor="start" x="1209.52" y="-3565.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;stored_file &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3484.68 1098.56,-3544.68 1592.56,-3544.68 1592.56,-3484.68 1098.56,-3484.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3484.68 1098.56,-3544.68 1592.56,-3544.68 1592.56,-3484.68 1098.56,-3484.68"/>
<text text-anchor="start" x="1109.56" y="-3505.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">id</text>
<text text-anchor="start" x="1134.45" y="-3505.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> &#160;&#160;&#160;</text>
<text text-anchor="start" x="1521.09" y="-3505.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3424.68 1098.56,-3484.68 1592.56,-3484.68 1592.56,-3424.68 1098.56,-3424.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3424.68 1098.56,-3484.68 1592.56,-3484.68 1592.56,-3424.68 1098.56,-3424.68"/>
<text text-anchor="start" x="1109.56" y="-3444.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">legal_entity_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="1482" y="-3445.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<text text-anchor="start" x="1542.47" y="-3445.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="1551.36" y="-3445.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3364.68 1098.56,-3424.68 1592.56,-3424.68 1592.56,-3364.68 1098.56,-3364.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3364.68 1098.56,-3424.68 1592.56,-3424.68 1592.56,-3364.68 1098.56,-3364.68"/>
<text text-anchor="start" x="1109.56" y="-3384.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">consolidation_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="1521.09" y="-3385.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3304.68 1098.56,-3364.68 1592.56,-3364.68 1592.56,-3304.68 1098.56,-3304.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3304.68 1098.56,-3364.68 1592.56,-3364.68 1592.56,-3304.68 1098.56,-3304.68"/>
<text text-anchor="start" x="1109.56" y="-3324.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">file_type &#160;&#160;&#160;</text>
<text text-anchor="start" x="1423.33" y="-3325.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">file_type</text>
<text text-anchor="start" x="1542.47" y="-3325.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="1551.36" y="-3325.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3244.68 1098.56,-3304.68 1592.56,-3304.68 1592.56,-3244.68 1098.56,-3244.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3244.68 1098.56,-3304.68 1592.56,-3304.68 1592.56,-3244.68 1098.56,-3244.68"/>
<text text-anchor="start" x="1109.56" y="-3264.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">original_name &#160;&#160;&#160;</text>
<text text-anchor="start" x="1474.89" y="-3265.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3184.68 1098.56,-3244.68 1592.56,-3244.68 1592.56,-3184.68 1098.56,-3184.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3184.68 1098.56,-3244.68 1592.56,-3244.68 1592.56,-3184.68 1098.56,-3184.68"/>
<text text-anchor="start" x="1109.56" y="-3204.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">s3_object_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="1482" y="-3205.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<text text-anchor="start" x="1542.47" y="-3205.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="1551.36" y="-3205.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3124.68 1098.56,-3184.68 1592.56,-3184.68 1592.56,-3124.68 1098.56,-3124.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3124.68 1098.56,-3184.68 1592.56,-3184.68 1592.56,-3124.68 1098.56,-3124.68"/>
<text text-anchor="start" x="1109.56" y="-3144.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">content_hash &#160;&#160;&#160;</text>
<text text-anchor="start" x="1474.89" y="-3145.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3064.68 1098.56,-3124.68 1592.56,-3124.68 1592.56,-3064.68 1098.56,-3064.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3064.68 1098.56,-3124.68 1592.56,-3124.68 1592.56,-3064.68 1098.56,-3064.68"/>
<text text-anchor="start" x="1109.56" y="-3084.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">size_bytes &#160;&#160;&#160;</text>
<text text-anchor="start" x="1505.1" y="-3085.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">bigint</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-3004.68 1098.56,-3064.68 1592.56,-3064.68 1592.56,-3004.68 1098.56,-3004.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-3004.68 1098.56,-3064.68 1592.56,-3064.68 1592.56,-3004.68 1098.56,-3004.68"/>
<text text-anchor="start" x="1109.56" y="-3024.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">status &#160;&#160;&#160;</text>
<text text-anchor="start" x="1398.44" y="-3025.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">file_status</text>
<text text-anchor="start" x="1542.47" y="-3025.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="1551.36" y="-3025.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-2944.68 1098.56,-3004.68 1592.56,-3004.68 1592.56,-2944.68 1098.56,-2944.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-2944.68 1098.56,-3004.68 1592.56,-3004.68 1592.56,-2944.68 1098.56,-2944.68"/>
<text text-anchor="start" x="1109.56" y="-2964.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">version_no &#160;&#160;&#160;</text>
<text text-anchor="start" x="1508.69" y="-2965.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">int</text>
<text text-anchor="start" x="1542.47" y="-2965.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="1551.36" y="-2965.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-2884.68 1098.56,-2944.68 1592.56,-2944.68 1592.56,-2884.68 1098.56,-2884.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-2884.68 1098.56,-2944.68 1592.56,-2944.68 1592.56,-2884.68 1098.56,-2884.68"/>
<text text-anchor="start" x="1109.56" y="-2904.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">superseded_by_file_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="1521.09" y="-2905.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-2824.68 1098.56,-2884.68 1592.56,-2884.68 1592.56,-2824.68 1098.56,-2824.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-2824.68 1098.56,-2884.68 1592.56,-2884.68 1592.56,-2824.68 1098.56,-2824.68"/>
<text text-anchor="start" x="1109.29" y="-2844.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">current_recognition_job_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="1521.33" y="-2845.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-2764.68 1098.56,-2824.68 1592.56,-2824.68 1592.56,-2764.68 1098.56,-2764.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-2764.68 1098.56,-2824.68 1592.56,-2824.68 1592.56,-2764.68 1098.56,-2764.68"/>
<text text-anchor="start" x="1109.56" y="-2784.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">uploaded_by &#160;&#160;&#160;</text>
<text text-anchor="start" x="1521.09" y="-2785.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-2704.68 1098.56,-2764.68 1592.56,-2764.68 1592.56,-2704.68 1098.56,-2704.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-2704.68 1098.56,-2764.68 1592.56,-2764.68 1592.56,-2704.68 1098.56,-2704.68"/>
<text text-anchor="start" x="1109.56" y="-2724.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">uploaded_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="1409.11" y="-2725.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1098.56,-2644.68 1098.56,-2704.68 1592.56,-2704.68 1592.56,-2644.68 1098.56,-2644.68"/>
<polygon fill="none" stroke="#29235c" points="1098.56,-2644.68 1098.56,-2704.68 1592.56,-2704.68 1592.56,-2644.68 1098.56,-2644.68"/>
<text text-anchor="start" x="1109.56" y="-2664.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">updated_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="1409.11" y="-2665.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1097.56,-2643.68 1097.56,-3605.68 1593.56,-3605.68 1593.56,-2643.68 1097.56,-2643.68"/>
</a>
</g>
</g>
<!-- stored_file&#45;&gt;file_type -->
<g id="edge24" class="edge">
<title>stored_file:e&#45;&gt;file_type:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1593.56,-3334.68C1796.22,-3334.68 1682.67,-2630.78 1697.7,-2428.68 1702.06,-2370.09 1703.66,-1422.18 1733.7,-1371.68 1791.09,-1275.21 1839.18,-1243.68 1951.43,-1243.68"/>
</g>
<!-- stored_file&#45;&gt;file_status -->
<g id="edge25" class="edge">
<title>stored_file:e&#45;&gt;file_status:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1593.56,-3034.68C1730.2,-3034.68 1684.65,-2564.7 1697.7,-2428.68 1706.76,-2334.26 1686.83,-804.15 1733.7,-721.68 1783.86,-633.42 1825.91,-600.68 1927.43,-600.68"/>
</g>
<!-- stored_file&#45;&gt;app_user -->
<!-- stored_file&#45;&gt;app_user -->
<g id="edge12" class="edge">
<title>stored_file:e&#45;&gt;app_user:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1593.56,-2794.68C1762.68,-2794.68 1672.99,-2595.99 1697.7,-2428.68 1715.92,-2305.34 1671.51,-292.75 1733.7,-184.68 1786.54,-92.87 1832.14,-59.76 1934.36,-57.78"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1934.46,-61.28 1944.43,-57.68 1934.39,-54.28 1934.46,-61.28"/>
<text text-anchor="middle" x="1935.53" y="-28.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="1587.34" y="-2804.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- stored_file&#45;&gt;consolidation -->
<!-- stored_file&#45;&gt;consolidation -->
<g id="edge4" class="edge">
<title>stored_file:e&#45;&gt;consolidation:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1593.56,-3394.68C1797.49,-3394.68 1634.92,-1743.09 1733.7,-1564.68 1779.97,-1481.1 1815.81,-1441.51 1907.21,-1438.83"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1907.48,-1442.32 1917.43,-1438.68 1907.38,-1435.32 1907.48,-1442.32"/>
<text text-anchor="middle" x="1908.53" y="-1448.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="1587.34" y="-3404.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- stored_file&#45;&gt;legal_entity -->
<!-- stored_file&#45;&gt;legal_entity -->
<g id="edge2" class="edge">
<title>stored_file:e&#45;&gt;legal_entity:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1593.56,-3454.68C1842.8,-3454.68 1566.48,-3812.86 1733.7,-3997.68 1793.58,-4063.86 1833.68,-4069.35 1919.32,-4069.66"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1919.42,-4073.16 1929.43,-4069.68 1919.43,-4066.16 1919.42,-4073.16"/>
<text text-anchor="middle" x="1920.53" y="-4079.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="1587.34" y="-3464.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- stored_file&#45;&gt;s3_object -->
<!-- stored_file&#45;&gt;s3_object -->
<g id="edge6" class="edge">
<title>stored_file:e&#45;&gt;s3_object:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1593.56,-3214.68C1769.75,-3214.68 1684.22,-2604.36 1697.7,-2428.68 1701.26,-2382.31 1700.46,-787.21 1733.7,-754.68 1761.55,-727.42 2407.36,-727.36 2435.15,-754.68 2476.78,-795.6 2467.26,-2797.44 2471.15,-2855.68 2483.79,-3044.85 2382.65,-3694.62 2561.8,-3718.03"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="2561.77,-3721.54 2571.98,-3718.68 2562.22,-3714.55 2561.77,-3721.54"/>
<text text-anchor="middle" x="2580.87" y="-3728.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="1587.34" y="-3224.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- stored_file&#45;&gt;stored_file -->
<!-- stored_file&#45;&gt;stored_file -->
<g id="edge8" class="edge">
<title>stored_file:e&#45;&gt;stored_file:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1592.56,-2914.68C1777.06,-3147.9 1777.06,-3824.33 1345.56,-3824.33 919.12,-3824.33 914.12,-3749.68 1092.15,-3522.82"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1095.12,-3524.7 1098.56,-3514.68 1089.62,-3520.37 1095.12,-3524.7"/>
<text text-anchor="middle" x="1089.67" y="-3524.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="1586.34" y="-2924.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- recognition_job -->
<g id="recognition_job" class="node">
<title>recognition_job</title>
<g id="a_recognition_job"><a xlink:title="recognition_job&#10;РЕШЕНИЕ v5.4: единственная точка обмена с NATS. Запись = outbox: создаётся в queued в одной транзакции с stored_file, фоновый публикатор переводит в published (при сбое публикации — повтор по queued старше N сек); результат приходит по NATS, дедуп по result_msg_id UNIQUE; redelivery после max_deliver → status=dlq, replay = сброс в queued с attempt+1. Ядро маппит JSON из S3 в document → osv_entry / financial_statement_*">
<ellipse fill="none" stroke="black" stroke-width="0" cx="2084.43" cy="-2764.68" rx="350.95" ry="1190.54"/>
<polygon fill="#1d71b8" stroke="transparent" points="1838.43,-3544.68 1838.43,-3604.68 2330.43,-3604.68 2330.43,-3544.68 1838.43,-3544.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3544.68 1838.43,-3604.68 2330.43,-3604.68 2330.43,-3544.68 1838.43,-3544.68"/>
<text text-anchor="start" x="1913.7" y="-3565.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;recognition_job &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3484.68 1838.43,-3544.68 2330.43,-3544.68 2330.43,-3484.68 1838.43,-3484.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3484.68 1838.43,-3544.68 2330.43,-3544.68 2330.43,-3484.68 1838.43,-3484.68"/>
<text text-anchor="start" x="1849.43" y="-3505.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">id</text>
<text text-anchor="start" x="1874.32" y="-3505.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> &#160;&#160;&#160;</text>
<text text-anchor="start" x="2258.96" y="-3505.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3424.68 1838.43,-3484.68 2330.43,-3484.68 2330.43,-3424.68 1838.43,-3424.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3424.68 1838.43,-3484.68 2330.43,-3484.68 2330.43,-3424.68 1838.43,-3424.68"/>
<text text-anchor="start" x="1849.43" y="-3444.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">file_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="2219.87" y="-3445.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<text text-anchor="start" x="2280.33" y="-3445.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="2289.23" y="-3445.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3364.68 1838.43,-3424.68 2330.43,-3424.68 2330.43,-3364.68 1838.43,-3364.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3364.68 1838.43,-3424.68 2330.43,-3424.68 2330.43,-3364.68 1838.43,-3364.68"/>
<text text-anchor="start" x="1849.43" y="-3384.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">pipeline &#160;&#160;&#160;</text>
<text text-anchor="start" x="1995.82" y="-3385.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">recognition_pipeline</text>
<text text-anchor="start" x="2280.33" y="-3385.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="2289.23" y="-3385.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3304.68 1838.43,-3364.68 2330.43,-3364.68 2330.43,-3304.68 1838.43,-3304.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3304.68 1838.43,-3364.68 2330.43,-3364.68 2330.43,-3304.68 1838.43,-3304.68"/>
<text text-anchor="start" x="1849.43" y="-3324.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">request_subject &#160;&#160;&#160;</text>
<text text-anchor="start" x="2173.66" y="-3325.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<text text-anchor="start" x="2280.33" y="-3325.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="2289.23" y="-3325.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3244.68 1838.43,-3304.68 2330.43,-3304.68 2330.43,-3244.68 1838.43,-3244.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3244.68 1838.43,-3304.68 2330.43,-3304.68 2330.43,-3244.68 1838.43,-3244.68"/>
<text text-anchor="start" x="1849.43" y="-3264.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">request_msg_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="2212.75" y="-3265.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3184.68 1838.43,-3244.68 2330.43,-3244.68 2330.43,-3184.68 1838.43,-3184.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3184.68 1838.43,-3244.68 2330.43,-3244.68 2330.43,-3184.68 1838.43,-3184.68"/>
<text text-anchor="start" x="1849.43" y="-3204.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">result_msg_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="2212.75" y="-3205.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3124.68 1838.43,-3184.68 2330.43,-3184.68 2330.43,-3124.68 1838.43,-3124.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3124.68 1838.43,-3184.68 2330.43,-3184.68 2330.43,-3124.68 1838.43,-3124.68"/>
<text text-anchor="start" x="1849.43" y="-3144.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">schema_version &#160;&#160;&#160;</text>
<text text-anchor="start" x="2173.66" y="-3145.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<text text-anchor="start" x="2280.33" y="-3145.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="2289.23" y="-3145.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3064.68 1838.43,-3124.68 2330.43,-3124.68 2330.43,-3064.68 1838.43,-3064.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3064.68 1838.43,-3124.68 2330.43,-3124.68 2330.43,-3064.68 1838.43,-3064.68"/>
<text text-anchor="start" x="1849.43" y="-3084.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">service_name &#160;&#160;&#160;</text>
<text text-anchor="start" x="2212.75" y="-3085.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-3004.68 1838.43,-3064.68 2330.43,-3064.68 2330.43,-3004.68 1838.43,-3004.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-3004.68 1838.43,-3064.68 2330.43,-3064.68 2330.43,-3004.68 1838.43,-3004.68"/>
<text text-anchor="start" x="1849.43" y="-3024.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">service_version &#160;&#160;&#160;</text>
<text text-anchor="start" x="2212.75" y="-3025.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2944.68 1838.43,-3004.68 2330.43,-3004.68 2330.43,-2944.68 1838.43,-2944.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2944.68 1838.43,-3004.68 2330.43,-3004.68 2330.43,-2944.68 1838.43,-2944.68"/>
<text text-anchor="start" x="1849.43" y="-2964.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">status &#160;&#160;&#160;</text>
<text text-anchor="start" x="2020.7" y="-2965.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">recognition_status</text>
<text text-anchor="start" x="2280.33" y="-2965.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="2289.23" y="-2965.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2884.68 1838.43,-2944.68 2330.43,-2944.68 2330.43,-2884.68 1838.43,-2884.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2884.68 1838.43,-2944.68 2330.43,-2944.68 2330.43,-2884.68 1838.43,-2884.68"/>
<text text-anchor="start" x="1849.43" y="-2904.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">attempt &#160;&#160;&#160;</text>
<text text-anchor="start" x="2171.91" y="-2905.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">smallint</text>
<text text-anchor="start" x="2280.33" y="-2905.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="2289.23" y="-2905.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2824.68 1838.43,-2884.68 2330.43,-2884.68 2330.43,-2824.68 1838.43,-2824.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2824.68 1838.43,-2884.68 2330.43,-2884.68 2330.43,-2824.68 1838.43,-2824.68"/>
<text text-anchor="start" x="1849.43" y="-2844.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">max_attempts &#160;&#160;&#160;</text>
<text text-anchor="start" x="2171.91" y="-2845.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">smallint</text>
<text text-anchor="start" x="2280.33" y="-2845.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="2289.23" y="-2845.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2764.68 1838.43,-2824.68 2330.43,-2824.68 2330.43,-2764.68 1838.43,-2764.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2764.68 1838.43,-2824.68 2330.43,-2824.68 2330.43,-2764.68 1838.43,-2764.68"/>
<text text-anchor="start" x="1849.43" y="-2784.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">requested_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="2146.97" y="-2785.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2704.68 1838.43,-2764.68 2330.43,-2764.68 2330.43,-2704.68 1838.43,-2704.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2704.68 1838.43,-2764.68 2330.43,-2764.68 2330.43,-2704.68 1838.43,-2704.68"/>
<text text-anchor="start" x="1849.43" y="-2724.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">published_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="2146.97" y="-2725.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2644.68 1838.43,-2704.68 2330.43,-2704.68 2330.43,-2644.68 1838.43,-2644.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2644.68 1838.43,-2704.68 2330.43,-2704.68 2330.43,-2644.68 1838.43,-2644.68"/>
<text text-anchor="start" x="1849.43" y="-2664.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">started_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="2146.97" y="-2665.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2584.68 1838.43,-2644.68 2330.43,-2644.68 2330.43,-2584.68 1838.43,-2584.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2584.68 1838.43,-2644.68 2330.43,-2644.68 2330.43,-2584.68 1838.43,-2584.68"/>
<text text-anchor="start" x="1849.43" y="-2604.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">finished_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="2146.97" y="-2605.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2524.68 1838.43,-2584.68 2330.43,-2584.68 2330.43,-2524.68 1838.43,-2524.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2524.68 1838.43,-2584.68 2330.43,-2584.68 2330.43,-2524.68 1838.43,-2524.68"/>
<text text-anchor="start" x="1849.43" y="-2544.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">reply_deadline &#160;&#160;&#160;</text>
<text text-anchor="start" x="2146.97" y="-2545.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2464.68 1838.43,-2524.68 2330.43,-2524.68 2330.43,-2464.68 1838.43,-2464.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2464.68 1838.43,-2524.68 2330.43,-2524.68 2330.43,-2464.68 1838.43,-2464.68"/>
<text text-anchor="start" x="1849.43" y="-2484.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">external_task_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="2212.75" y="-2485.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2404.68 1838.43,-2464.68 2330.43,-2464.68 2330.43,-2404.68 1838.43,-2404.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2404.68 1838.43,-2464.68 2330.43,-2464.68 2330.43,-2404.68 1838.43,-2404.68"/>
<text text-anchor="start" x="1849.43" y="-2424.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">error_code &#160;&#160;&#160;</text>
<text text-anchor="start" x="2212.75" y="-2425.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2344.68 1838.43,-2404.68 2330.43,-2404.68 2330.43,-2344.68 1838.43,-2344.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2344.68 1838.43,-2404.68 2330.43,-2404.68 2330.43,-2344.68 1838.43,-2344.68"/>
<text text-anchor="start" x="1849.43" y="-2364.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">error_message &#160;&#160;&#160;</text>
<text text-anchor="start" x="2267.85" y="-2365.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">text</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2284.68 1838.43,-2344.68 2330.43,-2344.68 2330.43,-2284.68 1838.43,-2284.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2284.68 1838.43,-2344.68 2330.43,-2344.68 2330.43,-2284.68 1838.43,-2284.68"/>
<text text-anchor="start" x="1849.43" y="-2304.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">result_s3_object_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="2258.96" y="-2305.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2224.68 1838.43,-2284.68 2330.43,-2284.68 2330.43,-2224.68 1838.43,-2224.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2224.68 1838.43,-2284.68 2330.43,-2284.68 2330.43,-2224.68 1838.43,-2224.68"/>
<text text-anchor="start" x="1849.17" y="-2244.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">result_schema_version &#160;&#160;&#160;</text>
<text text-anchor="start" x="2213.09" y="-2245.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2164.68 1838.43,-2224.68 2330.43,-2224.68 2330.43,-2164.68 1838.43,-2164.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2164.68 1838.43,-2224.68 2330.43,-2224.68 2330.43,-2164.68 1838.43,-2164.68"/>
<text text-anchor="start" x="1849.43" y="-2184.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">group_schema &#160;&#160;&#160;</text>
<text text-anchor="start" x="2242.96" y="-2185.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">jsonb</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2104.68 1838.43,-2164.68 2330.43,-2164.68 2330.43,-2104.68 1838.43,-2104.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2104.68 1838.43,-2164.68 2330.43,-2164.68 2330.43,-2104.68 1838.43,-2104.68"/>
<text text-anchor="start" x="1849.43" y="-2124.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">metrics &#160;&#160;&#160;</text>
<text text-anchor="start" x="2242.96" y="-2125.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">jsonb</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-2044.68 1838.43,-2104.68 2330.43,-2104.68 2330.43,-2044.68 1838.43,-2044.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-2044.68 1838.43,-2104.68 2330.43,-2104.68 2330.43,-2044.68 1838.43,-2044.68"/>
<text text-anchor="start" x="1849.43" y="-2064.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">fields_total &#160;&#160;&#160;</text>
<text text-anchor="start" x="2285.64" y="-2065.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">int</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-1984.68 1838.43,-2044.68 2330.43,-2044.68 2330.43,-1984.68 1838.43,-1984.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-1984.68 1838.43,-2044.68 2330.43,-2044.68 2330.43,-1984.68 1838.43,-1984.68"/>
<text text-anchor="start" x="1849.43" y="-2004.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">fields_low_confidence &#160;&#160;&#160;</text>
<text text-anchor="start" x="2285.64" y="-2005.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">int</text>
<polygon fill="#e7e2dd" stroke="transparent" points="1838.43,-1924.68 1838.43,-1984.68 2330.43,-1984.68 2330.43,-1924.68 1838.43,-1924.68"/>
<polygon fill="none" stroke="#29235c" points="1838.43,-1924.68 1838.43,-1984.68 2330.43,-1984.68 2330.43,-1924.68 1838.43,-1924.68"/>
<text text-anchor="start" x="1849.43" y="-1944.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">fields_unrecognized &#160;&#160;&#160;</text>
<text text-anchor="start" x="2285.64" y="-1945.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">int</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="1837.43,-1923.68 1837.43,-3605.68 2331.43,-3605.68 2331.43,-1923.68 1837.43,-1923.68"/>
</a>
</g>
</g>
<!-- stored_file&#45;&gt;recognition_job -->
<!-- stored_file&#45;&gt;recognition_job -->
<g id="edge10" class="edge">
<title>stored_file:e&#45;&gt;recognition_job:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M1593.56,-2854.68C1902.77,-2854.68 1533.19,-3499.94 1827.15,-3514.43"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1827.34,-3517.94 1837.43,-3514.68 1827.51,-3510.94 1827.34,-3517.94"/>
<text text-anchor="middle" x="1828.53" y="-3524.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="1587.34" y="-2864.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- document -->
<g id="document" class="node">
<title>document</title>
<g id="a_document"><a xlink:title="document&#10;Логический документ внутри файла. Создаётся ядром при маппинге результата recognition_job. Разобранные данные: OSV → osv_entry; BALANCE/INCOME → financial_statement_meta. Счётчики «исправлено полей» — COUNT(is_modified) по данным, не хранятся">
<ellipse fill="none" stroke="black" stroke-width="0" cx="478.71" cy="-3064.68" rx="478.92" ry="766.51"/>
<polygon fill="#1d71b8" stroke="transparent" points="142.71,-3544.68 142.71,-3604.68 815.71,-3604.68 815.71,-3544.68 142.71,-3544.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3544.68 142.71,-3604.68 815.71,-3604.68 815.71,-3544.68 142.71,-3544.68"/>
<text text-anchor="start" x="346.72" y="-3565.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#ffffff"> &#160;&#160;&#160;&#160;&#160;&#160;document &#160;&#160;&#160;&#160;&#160;&#160;</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3484.68 142.71,-3544.68 815.71,-3544.68 815.71,-3484.68 142.71,-3484.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3484.68 142.71,-3544.68 815.71,-3544.68 815.71,-3484.68 142.71,-3484.68"/>
<text text-anchor="start" x="153.71" y="-3505.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">id</text>
<text text-anchor="start" x="178.6" y="-3505.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> &#160;&#160;&#160;</text>
<text text-anchor="start" x="744.24" y="-3505.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3424.68 142.71,-3484.68 815.71,-3484.68 815.71,-3424.68 142.71,-3424.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3424.68 142.71,-3484.68 815.71,-3484.68 815.71,-3424.68 142.71,-3424.68"/>
<text text-anchor="start" x="153.71" y="-3444.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">stored_file_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="705.15" y="-3445.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<text text-anchor="start" x="765.62" y="-3445.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="774.51" y="-3445.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3364.68 142.71,-3424.68 815.71,-3424.68 815.71,-3364.68 142.71,-3364.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3364.68 142.71,-3424.68 815.71,-3424.68 815.71,-3364.68 142.71,-3364.68"/>
<text text-anchor="start" x="153.71" y="-3384.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">legal_entity_id &#160;&#160;&#160;</text>
<text text-anchor="start" x="705.15" y="-3385.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<text text-anchor="start" x="765.62" y="-3385.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="774.51" y="-3385.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3304.68 142.71,-3364.68 815.71,-3364.68 815.71,-3304.68 142.71,-3304.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3304.68 142.71,-3364.68 815.71,-3364.68 815.71,-3304.68 142.71,-3304.68"/>
<text text-anchor="start" x="153.71" y="-3324.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">document_type &#160;&#160;&#160;</text>
<text text-anchor="start" x="546.87" y="-3325.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">document_type</text>
<text text-anchor="start" x="765.62" y="-3325.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="774.51" y="-3325.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3244.68 142.71,-3304.68 815.71,-3304.68 815.71,-3244.68 142.71,-3244.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3244.68 142.71,-3304.68 815.71,-3304.68 815.71,-3244.68 142.71,-3244.68"/>
<text text-anchor="start" x="153.71" y="-3264.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">osv_account_code &#160;&#160;&#160;</text>
<text text-anchor="start" x="698.04" y="-3265.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3184.68 142.71,-3244.68 815.71,-3244.68 815.71,-3184.68 142.71,-3184.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3184.68 142.71,-3244.68 815.71,-3244.68 815.71,-3184.68 142.71,-3184.68"/>
<text text-anchor="start" x="153.71" y="-3204.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">period_year &#160;&#160;&#160;</text>
<text text-anchor="start" x="696.29" y="-3205.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">smallint</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3124.68 142.71,-3184.68 815.71,-3184.68 815.71,-3124.68 142.71,-3124.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3124.68 142.71,-3184.68 815.71,-3184.68 815.71,-3124.68 142.71,-3124.68"/>
<text text-anchor="start" x="153.71" y="-3144.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">period_quarter &#160;&#160;&#160;</text>
<text text-anchor="start" x="596.66" y="-3145.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">period_quarter</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3064.68 142.71,-3124.68 815.71,-3124.68 815.71,-3064.68 142.71,-3064.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3064.68 142.71,-3124.68 815.71,-3124.68 815.71,-3064.68 142.71,-3064.68"/>
<text text-anchor="start" x="153.71" y="-3084.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">is_cumulative &#160;&#160;&#160;</text>
<text text-anchor="start" x="690.88" y="-3085.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">boolean</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-3004.68 142.71,-3064.68 815.71,-3064.68 815.71,-3004.68 142.71,-3004.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-3004.68 142.71,-3064.68 815.71,-3064.68 815.71,-3004.68 142.71,-3004.68"/>
<text text-anchor="start" x="153.71" y="-3024.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">reporting_date &#160;&#160;&#160;</text>
<text text-anchor="start" x="742.45" y="-3025.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">date</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2944.68 142.71,-3004.68 815.71,-3004.68 815.71,-2944.68 142.71,-2944.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2944.68 142.71,-3004.68 815.71,-3004.68 815.71,-2944.68 142.71,-2944.68"/>
<text text-anchor="start" x="153.71" y="-2964.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">locator &#160;&#160;&#160;</text>
<text text-anchor="start" x="698.04" y="-2965.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">varchar</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2884.68 142.71,-2944.68 815.71,-2944.68 815.71,-2884.68 142.71,-2884.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2884.68 142.71,-2944.68 815.71,-2944.68 815.71,-2884.68 142.71,-2884.68"/>
<text text-anchor="start" x="153.71" y="-2904.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">status &#160;&#160;&#160;</text>
<text text-anchor="start" x="521.98" y="-2905.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">document_status</text>
<text text-anchor="start" x="765.62" y="-2905.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c"> </text>
<text text-anchor="start" x="774.51" y="-2905.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="32.00" fill="#29235c">(!)</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2824.68 142.71,-2884.68 815.71,-2884.68 815.71,-2824.68 142.71,-2824.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2824.68 142.71,-2884.68 815.71,-2884.68 815.71,-2824.68 142.71,-2824.68"/>
<text text-anchor="start" x="153.71" y="-2844.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">period_check &#160;&#160;&#160;</text>
<text text-anchor="start" x="466.84" y="-2845.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">document_check_result</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2764.68 142.71,-2824.68 815.71,-2824.68 815.71,-2764.68 142.71,-2764.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2764.68 142.71,-2824.68 815.71,-2824.68 815.71,-2764.68 142.71,-2764.68"/>
<text text-anchor="start" x="153.33" y="-2784.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">counterparty_check &#160;&#160;&#160;</text>
<text text-anchor="start" x="467.28" y="-2785.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">document_check_result</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2704.68 142.71,-2764.68 815.71,-2764.68 815.71,-2704.68 142.71,-2704.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2704.68 142.71,-2764.68 815.71,-2764.68 815.71,-2704.68 142.71,-2704.68"/>
<text text-anchor="start" x="153.71" y="-2724.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">confirmed_by &#160;&#160;&#160;</text>
<text text-anchor="start" x="744.24" y="-2725.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">uuid</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2644.68 142.71,-2704.68 815.71,-2704.68 815.71,-2644.68 142.71,-2644.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2644.68 142.71,-2704.68 815.71,-2704.68 815.71,-2644.68 142.71,-2644.68"/>
<text text-anchor="start" x="153.71" y="-2664.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">confirmed_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="632.26" y="-2665.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2584.68 142.71,-2644.68 815.71,-2644.68 815.71,-2584.68 142.71,-2584.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2584.68 142.71,-2644.68 815.71,-2644.68 815.71,-2584.68 142.71,-2584.68"/>
<text text-anchor="start" x="153.71" y="-2604.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">created_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="632.26" y="-2605.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="#e7e2dd" stroke="transparent" points="142.71,-2524.68 142.71,-2584.68 815.71,-2584.68 815.71,-2524.68 142.71,-2524.68"/>
<polygon fill="none" stroke="#29235c" points="142.71,-2524.68 142.71,-2584.68 815.71,-2584.68 815.71,-2524.68 142.71,-2524.68"/>
<text text-anchor="start" x="153.71" y="-2544.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">updated_at &#160;&#160;&#160;</text>
<text text-anchor="start" x="632.26" y="-2545.88" font-family="Helvetica,sans-Serif" font-style="italic" font-size="32.00" fill="#29235c">timestamptz</text>
<polygon fill="none" stroke="#29235c" stroke-width="2" points="141.21,-2523.68 141.21,-3605.68 816.21,-3605.68 816.21,-2523.68 141.21,-2523.68"/>
</a>
</g>
</g>
<!-- document&#45;&gt;document_type -->
<g id="edge26" class="edge">
<title>document:e&#45;&gt;document_type:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-3334.68C1027.95,-3334.68 879.72,-2578.7 993.42,-2400.68 1043.18,-2322.79 1070.13,-2279.68 1162.56,-2279.68"/>
</g>
<!-- document&#45;&gt;period_quarter -->
<g id="edge27" class="edge">
<title>document:e&#45;&gt;period_quarter:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-3154.68C1106.28,-3154.68 833.71,-2105.22 993.42,-1863.68 1043.14,-1788.49 1077.41,-1759.68 1167.56,-1759.68"/>
</g>
<!-- document&#45;&gt;document_status -->
<g id="edge28" class="edge">
<title>document:e&#45;&gt;document_status:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-2914.68C1152.13,-2914.68 818.03,-1701.58 993.42,-1415.68 1037.02,-1344.61 1066.18,-1311.68 1149.56,-1311.68"/>
</g>
<!-- document&#45;&gt;document_check_result -->
<g id="edge29" class="edge">
<title>document:e&#45;&gt;document_check_result:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-2854.68C1260.83,-2854.68 658.44,-876.68 1102.56,-876.68"/>
</g>
<!-- document&#45;&gt;document_check_result -->
<g id="edge30" class="edge">
<title>document:e&#45;&gt;document_check_result:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-2794.68C1247.64,-2794.68 671.63,-876.68 1102.56,-876.68"/>
</g>
<!-- document&#45;&gt;app_user -->
<!-- document&#45;&gt;app_user -->
<g id="edge18" class="edge">
<title>document:e&#45;&gt;app_user:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-2734.68C1054.19,-2734.68 866.11,-805.15 993.42,-604.68 1252.97,-195.98 1453.96,-59.61 1934.11,-57.7"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1934.43,-61.2 1944.43,-57.68 1934.42,-54.2 1934.43,-61.2"/>
<text text-anchor="middle" x="1953.32" y="-28.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="810.49" y="-2744.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- document&#45;&gt;legal_entity -->
<!-- document&#45;&gt;legal_entity -->
<g id="edge16" class="edge">
<title>document:e&#45;&gt;legal_entity:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-3394.68C1027.04,-3394.68 831.59,-3699.34 993.42,-3833.68 1239.04,-4037.58 1396.92,-3867.74 1697.7,-3974.68 1714.75,-3980.74 1717.24,-3986.17 1733.7,-3993.68 1815.45,-4030.98 1834.72,-4066.91 1919.34,-4069.53"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1919.37,-4073.03 1929.43,-4069.68 1919.48,-4066.03 1919.37,-4073.03"/>
<text text-anchor="middle" x="1938.32" y="-4079.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="810.49" y="-3404.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- document&#45;&gt;stored_file -->
<!-- document&#45;&gt;stored_file -->
<g id="edge14" class="edge">
<title>document:e&#45;&gt;stored_file:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M816.71,-3454.68C940.86,-3454.68 968.45,-3511.44 1087.32,-3514.55"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1087.52,-3518.05 1097.56,-3514.68 1087.61,-3511.05 1087.52,-3518.05"/>
<text text-anchor="middle" x="1088.67" y="-3485.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="810.49" y="-3464.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- recognition_job&#45;&gt;recognition_pipeline -->
<g id="edge31" class="edge">
<title>recognition_job:e&#45;&gt;recognition_pipeline:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M2331.43,-3394.68C2578.9,-3394.68 2325.33,-3055.63 2471.15,-2855.68 2509.84,-2802.63 2530.32,-2776.68 2595.98,-2776.68"/>
</g>
<!-- recognition_job&#45;&gt;recognition_status -->
<g id="edge32" class="edge">
<title>recognition_job:e&#45;&gt;recognition_status:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M2331.43,-2974.68C2518.48,-2974.68 2376.2,-2738.84 2471.15,-2577.68 2517.63,-2498.8 2516.42,-2423.68 2607.98,-2423.68"/>
</g>
<!-- recognition_job&#45;&gt;s3_object -->
<!-- recognition_job&#45;&gt;s3_object -->
<g id="edge22" class="edge">
<title>recognition_job:e&#45;&gt;s3_object:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M2331.43,-2314.68C2644.42,-2314.68 2264.16,-3687.32 2561.58,-3718.15"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="2561.81,-3721.67 2571.98,-3718.68 2562.17,-3714.68 2561.81,-3721.67"/>
<text text-anchor="middle" x="2580.87" y="-3689.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="2325.2" y="-2324.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
<!-- recognition_job&#45;&gt;stored_file -->
<!-- recognition_job&#45;&gt;stored_file -->
<g id="edge20" class="edge">
<title>recognition_job:e&#45;&gt;stored_file:w</title>
<path fill="none" stroke="#29235c" stroke-width="3" d="M2331.43,-3454.68C2442.71,-3454.68 2409.19,-3876.84 2330.43,-3955.45 2306.96,-3978.87 1766.63,-3959.26 1733.7,-3955.45 1724.7,-3954.41 1104.2,-3813.42 1098.56,-3806.33 1020.09,-3707.65 970.69,-3525.02 1087.33,-3515.1"/>
<polygon fill="#29235c" stroke="#29235c" stroke-width="3" points="1087.71,-3518.59 1097.56,-3514.68 1087.43,-3511.6 1087.71,-3518.59"/>
<text text-anchor="middle" x="1106.46" y="-3485.88" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">1</text>
<text text-anchor="middle" x="2325.2" y="-3464.28" font-family="Helvetica,sans-Serif" font-size="32.00" fill="#29235c">*</text>
</g>
</g>
</svg>