Files
Nelson_Matsinhe a1b553372e
tests / ci (push) Canceled after 0s
ajuste do tamanho da navbar
2026-10-22 15:26:56 +02:00

342 lines
244 KiB
XML

<?xml version='1.0' encoding='utf-8'?>
<mxfile host="Electron" agent="Codex" modified="2026-10-13T00:00:00.000Z">
<diagram name="Modelo relacional do projecto — página única" id="opportunities-erd-complete">
<mxGraphModel dx="22800" dy="6800" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="22800" pageHeight="6800" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="area_context" parent="1" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=55;" value="CONTEXTO E CLASSIFICAÇÕES" vertex="1">
<mxGeometry height="3500" width="1240" x="35" y="65" as="geometry" />
</mxCell>
<mxCell id="area_core" parent="1" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#f8fafc;strokeColor=#94a3b8;dashed=1;opacity=55;" value="OPORTUNIDADE CENTRAL" vertex="1">
<mxGeometry height="2200" width="1050" x="1250" y="65" as="geometry" />
</mxCell>
<mxCell id="area_interest" parent="1" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#fff7ed;strokeColor=#fdba74;dashed=1;opacity=55;" value=" " vertex="1">
<mxGeometry height="2500" width="2140" x="2380" y="65" as="geometry" />
</mxCell>
<mxCell id="area_zones" parent="1" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#f0fdf4;strokeColor=#86efac;dashed=1;opacity=55;" value="IDENTIDADE DE INVESTIMENTO E ZONAS" vertex="1">
<mxGeometry height="1280" width="2950" x="2380" y="2600" as="geometry" />
</mxCell>
<mxCell id="area_dossier" parent="1" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#faf5ff;strokeColor=#c4b5fd;dashed=1;opacity=55;" value="DOSSIER E RELAÇÕES ESTRUTURAIS" vertex="1">
<mxGeometry height="1600" width="1050" x="1300" y="2320" as="geometry" />
</mxCell>
<mxCell id="heading" parent="1" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" value="Modelo relacional do projecto — fluxo actual de oportunidades e módulos" vertex="1">
<mxGeometry height="45" width="3800" x="40" y="10" as="geometry" />
</mxCell>
<mxCell id="legend" parent="1" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=middle;spacing=10;strokeColor=#64748b;fillColor=#ffffff;fontColor=#334155;fontSize=13;" value="Cardinalidade nas extremidades: | = exactamente 1; O| = zero ou um; pé-de-galinha = muitos; O + pé-de-galinha = zero ou muitos. Tabelas de ligação representam relações N:M. interest_requests pode apontar para opportunities ou existing_businesses; zonas ligam-se através de investment_items." vertex="1">
<mxGeometry height="55" width="5200" x="40" y="4120" as="geometry" />
</mxCell>
<mxCell id="tbl_sectors" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="sectors" vertex="1">
<mxGeometry height="268" width="455" x="100" y="100" as="geometry" />
</mxCell>
<mxCell id="tbl_sectors_attrs" parent="tbl_sectors" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id bigint&#10;name varchar\(150\)&#10;slug varchar\(180\) UNIQUE&#10;short_description varchar\(255\) NULL&#10;description text NULL&#10;icon varchar\(100\) NULL&#10;sort_order int&#10;is_active boolean&#10;published_at timestamp NULL&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="230" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_profiles" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunity_profiles" vertex="1">
<mxGeometry height="247" width="455" x="1550" y="180" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_profiles_attrs" parent="tbl_opportunity_profiles" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK opportunity_id → opportunities.id&#10;is_education boolean&#10;version int&#10;business_model text NULL&#10;requirements text NULL&#10;risks text NULL&#10;target_date date NULL&#10;source_reference text NULL&#10;created_at, updated_at" vertex="1">
<mxGeometry height="209" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunities" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunities" vertex="1">
<mxGeometry height="520" width="455" x="1550" y="1100" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunities_attrs" parent="tbl_opportunities" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id bigint&#10;FK sector_id → sectors.id&#10;reference varchar\(80\) UNIQUE&#10;title varchar\(200\)&#10;slug varchar\(220\) UNIQUE&#10;summary varchar\(500\) NULL&#10;description text NULL&#10;province, district varchar\(100\) NULL&#10;promoter_name, promoter_type NULL&#10;maturity_level tinyint NULL&#10;maturity_label varchar\(120\) NULL&#10;estimated_investment_amount decimal\(18,2\) NULL&#10;estimated_investment_currency varchar\(10\)&#10;financing_modality varchar\(120\) NULL&#10;expected_impact text NULL&#10;status varchar\(50\)&#10;is_featured boolean&#10;published_at, last_validated_at NULL&#10;FK primary_territory_id → geo_locations.id NULL&#10;territory_version int&#10;geography_scope: unspecified/specific/multiple/national/digital&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="482" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_projects" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunity_projects" vertex="1">
<mxGeometry height="100" width="455" x="750" y="800" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_projects_attrs" parent="tbl_opportunity_projects" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK opportunity_id → opportunities.id&#10;PK/FK project_id → projects.id" vertex="1">
<mxGeometry height="62" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_clusters" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunity_clusters" vertex="1">
<mxGeometry height="100" width="455" x="750" y="1400" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_clusters_attrs" parent="tbl_opportunity_clusters" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK opportunity_id → opportunities.id&#10;PK/FK cluster_id → economic_clusters.id" vertex="1">
<mxGeometry height="62" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_corridors" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunity_corridors" vertex="1">
<mxGeometry height="100" width="455" x="750" y="2000" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_corridors_attrs" parent="tbl_opportunity_corridors" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK opportunity_id → opportunities.id&#10;PK/FK corridor_id → development_corridors.id" vertex="1">
<mxGeometry height="62" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_locations" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunity_locations" vertex="1">
<mxGeometry height="100" width="455" x="750" y="2600" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_locations_attrs" parent="tbl_opportunity_locations" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK opportunity_id → opportunities.id&#10;PK/FK geo_location_id → geo_locations.id" vertex="1">
<mxGeometry height="62" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_facets" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunity_facets" vertex="1">
<mxGeometry height="100" width="455" x="750" y="3200" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_facets_attrs" parent="tbl_opportunity_facets" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK opportunity_id → opportunities.id&#10;PK/FK option_id → investment_reference_options.id" vertex="1">
<mxGeometry height="62" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_interest_requests" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="interest_requests" vertex="1">
<mxGeometry height="520" width="455" x="2500" y="1100" as="geometry" />
</mxCell>
<mxCell id="tbl_interest_requests_attrs" parent="tbl_interest_requests" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id bigint&#10;FK opportunity_id → opportunities.id NULL&#10;reference varchar\(80\) UNIQUE&#10;full_name, email, phone&#10;investor_type, country, sector_interest&#10;opportunity_reference, investment_range NULL&#10;message text&#10;privacy_consent boolean&#10;consented_at timestamp NULL&#10;status varchar\(50\)&#10;source_page, ip_address, user_agent NULL&#10;metadata jsonb NULL&#10;reviewed_at timestamp NULL&#10;FK reviewed_by → users.id NULL&#10;integration_id uuid UNIQUE NULL&#10;FK existing_business_id → existing_businesses.id NULL&#10;FK investor_id → investors.id NULL&#10;modality, requested_percentage NULL&#10;ticket_min, ticket_max, ticket_currency NULL&#10;FK assigned_to → users.id NULL&#10;next_action, next_action_due_at NULL&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="482" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investors" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investors" vertex="1">
<mxGeometry height="247" width="455" x="3200" y="400" as="geometry" />
</mxCell>
<mxCell id="tbl_investors_attrs" parent="tbl_investors" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;organization_id uuid NULL&#10;legal_name text&#10;investor_type: domestic/foreign/institutional/individual&#10;status: prospect/active/inactive&#10;source_system, external_id&#10;version_no, data_classification&#10;correlation_id uuid NULL&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="209" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_users" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="users" vertex="1">
<mxGeometry height="226" width="455" x="3900" y="1000" as="geometry" />
</mxCell>
<mxCell id="tbl_users_attrs" parent="tbl_users" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id bigint&#10;name&#10;email UNIQUE&#10;email_verified_at NULL&#10;password&#10;remember_token NULL&#10;created_at, updated_at&#10;\(utilizador da aplicação\)" vertex="1">
<mxGeometry height="188" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_existing_businesses" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="existing_businesses" vertex="1">
<mxGeometry height="310" width="455" x="3900" y="1800" as="geometry" />
</mxCell>
<mxCell id="tbl_existing_businesses_attrs" parent="tbl_existing_businesses" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;code UNIQUE&#10;source_system, legacy_id NULL&#10;FK owner_user_id → users.id&#10;organization_id uuid NULL&#10;FK investment_item_id → investment_items.id UNIQUE NULL&#10;modality&#10;status: draft&#10;classification&#10;version_no int&#10;payload text&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="272" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_favourites" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="opportunity_favourites" vertex="1">
<mxGeometry height="121" width="455" x="2500" y="1850" as="geometry" />
</mxCell>
<mxCell id="tbl_opportunity_favourites_attrs" parent="tbl_opportunity_favourites" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK user_id → users.id&#10;PK/FK opportunity_id → opportunities.id&#10;created_at, updated_at" vertex="1">
<mxGeometry height="83" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_submissions" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investment_submissions" vertex="1">
<mxGeometry height="268" width="455" x="3200" y="2200" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_submissions_attrs" parent="tbl_investment_submissions" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;FK user_id → users.id&#10;FK opportunity_id → opportunities.id NULL&#10;FK dossier_id → investment_dossiers.id NULL&#10;FK interest_request_id → interest_requests.id UNIQUE NULL&#10;payload text&#10;status: draft/submitted&#10;version int&#10;created_at, updated_at&#10;CHECK: opportunity_id ou dossier_id, no máximo um" vertex="1">
<mxGeometry height="230" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_dossiers" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investment_dossiers" vertex="1">
<mxGeometry height="310" width="455" x="1550" y="3600" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_dossiers_attrs" parent="tbl_investment_dossiers" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;FK project_id → projects.id UNIQUE NULL&#10;FK cluster_id → economic_clusters.id UNIQUE NULL&#10;FK corridor_id → development_corridors.id UNIQUE NULL&#10;title&#10;content jsonb&#10;source text&#10;publication_status: draft/published&#10;FK editor_id, reviewer_id → users.id NULL&#10;approval_evidence, published_at NULL&#10;created_at, updated_at, deleted_at&#10;CHECK: exactamente uma entidade alvo" vertex="1">
<mxGeometry height="272" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_item_opportunities" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investment_item_opportunities" vertex="1">
<mxGeometry height="142" width="455" x="2500" y="3250" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_item_opportunities_attrs" parent="tbl_investment_item_opportunities" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK/FK item_id → investment_items.id&#10;PK/FK opportunity_id → opportunities.id UNIQUE&#10;mapping_evidence text&#10;created_at, updated_at" vertex="1">
<mxGeometry height="104" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_items" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investment_items" vertex="1">
<mxGeometry height="205" width="455" x="3200" y="3250" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_items_attrs" parent="tbl_investment_items" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;code UNIQUE&#10;title&#10;kind&#10;validation_status&#10;version_no int&#10;created_at, updated_at" vertex="1">
<mxGeometry height="167" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_zone_links" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investment_zone_links" vertex="1">
<mxGeometry height="310" width="455" x="3900" y="3250" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_zone_links_attrs" parent="tbl_investment_zone_links" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;FK item_id → investment_items.id&#10;FK zone_id → investment_zones.id&#10;association_type: official/influence/proximity/potential/historical&#10;validation_status: pending/validated/revoked&#10;source_reference text&#10;legal_source_id uuid NULL&#10;valid_from, valid_until NULL&#10;editor_id, validator_id NULL&#10;version_no int&#10;created_at, updated_at&#10;UNIQUE \(item_id, zone_id\)" vertex="1">
<mxGeometry height="272" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_zones" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investment_zones" vertex="1">
<mxGeometry height="310" width="455" x="4600" y="3250" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_zones_attrs" parent="tbl_investment_zones" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;code UNIQUE&#10;category: zee/zfi/industrial_park/pending&#10;name, name_en NULL&#10;description, description_en NULL&#10;province, district NULL&#10;operator_id, legal_source_id NULL&#10;publication_status, validation_status&#10;editor_id, reviewer_id NULL&#10;published_at NULL&#10;version_no int&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="272" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_projects" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="projects" vertex="1">
<mxGeometry height="352" width="455" x="100" y="674" as="geometry" />
</mxCell>
<mxCell id="tbl_projects_attrs" parent="tbl_projects" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;source_system, external_id&#10;version_no int&#10;data_classification&#10;correlation_id uuid NULL&#10;code, name, status&#10;description text NULL&#10;budget_amount numeric\(20,2\) NULL&#10;budget_currency char\(3\) NULL&#10;start_date, end_date date NULL&#10;metadata jsonb&#10;primary_territory_id uuid NULL&#10;territory_version int&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="314" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_economic_clusters" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="economic_clusters" vertex="1">
<mxGeometry height="268" width="455" x="100" y="1316" as="geometry" />
</mxCell>
<mxCell id="tbl_economic_clusters_attrs" parent="tbl_economic_clusters" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;source_system, external_id&#10;version_no int&#10;data_classification&#10;correlation_id uuid NULL&#10;code, name, sector, status&#10;metadata jsonb&#10;primary_territory_id uuid NULL&#10;territory_version int&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="230" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_development_corridors" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="development_corridors" vertex="1">
<mxGeometry height="268" width="455" x="100" y="1916" as="geometry" />
</mxCell>
<mxCell id="tbl_development_corridors_attrs" parent="tbl_development_corridors" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;source_system, external_id&#10;version_no int&#10;data_classification&#10;correlation_id uuid NULL&#10;code, name, status&#10;description text NULL&#10;primary_territory_id uuid NULL&#10;territory_version int&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="230" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_geo_locations" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="geo_locations" vertex="1">
<mxGeometry height="268" width="455" x="100" y="2516" as="geometry" />
</mxCell>
<mxCell id="tbl_geo_locations_attrs" parent="tbl_geo_locations" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id uuid&#10;source_system, external_id&#10;version_no int&#10;data_classification&#10;correlation_id uuid NULL&#10;name text&#10;location_type: country/province/district/municipality/site&#10;FK parent_id → geo_locations.id NULL&#10;code text&#10;created_at, updated_at, deleted_at" vertex="1">
<mxGeometry height="230" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_reference_options" parent="1" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" value="investment_reference_options" vertex="1">
<mxGeometry height="247" width="455" x="100" y="3127" as="geometry" />
</mxCell>
<mxCell id="tbl_investment_reference_options_attrs" parent="tbl_investment_reference_options" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" value="PK id bigint&#10;group varchar&#10;code varchar&#10;label varchar&#10;active boolean&#10;requires_description boolean&#10;sort_order int&#10;created_at, updated_at&#10;UNIQUE \(group, code\)" vertex="1">
<mxGeometry height="209" width="455" y="38" as="geometry" />
</mxCell>
<mxCell id="rel_0" edge="1" parent="1" source="tbl_sectors" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0.5;exitY=0;entryX=0.2;entryY=0;" target="tbl_opportunities" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="327" y="70" />
<mxPoint x="2200" y="70" />
<mxPoint x="2200" y="1050" />
<mxPoint x="1641" y="1050" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_1" edge="1" parent="1" source="tbl_opportunity_profiles" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToOne;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0.5;exitY=1;entryX=0.5;entryY=0;" target="tbl_opportunities" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_2" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.106;entryX=1;entryY=0.5;" target="tbl_opportunity_locations" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="1260" y="1155" />
<mxPoint x="1260" y="2650" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_3" edge="1" parent="1" source="tbl_geo_locations" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_opportunity_locations" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_4" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.298;entryX=1;entryY=0.5;" target="tbl_opportunity_projects" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="1320" y="1255" />
<mxPoint x="1320" y="850" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_5" edge="1" parent="1" source="tbl_projects" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_opportunity_projects" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_6" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.490;entryX=1;entryY=0.5;" target="tbl_opportunity_clusters" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="1380" y="1355" />
<mxPoint x="1380" y="1450" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_7" edge="1" parent="1" source="tbl_economic_clusters" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_opportunity_clusters" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_8" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.683;entryX=1;entryY=0.5;" target="tbl_opportunity_corridors" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="1440" y="1455" />
<mxPoint x="1440" y="2050" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_9" edge="1" parent="1" source="tbl_development_corridors" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_opportunity_corridors" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_10" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.875;entryX=1;entryY=0.5;" target="tbl_opportunity_facets" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="1500" y="1555" />
<mxPoint x="1500" y="3250" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_11" edge="1" parent="1" source="tbl_investment_reference_options" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_opportunity_facets" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_12" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_interest_requests" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_13" edge="1" parent="1" source="tbl_investors" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.5;entryX=1;entryY=0.2;" target="tbl_interest_requests" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_14" edge="1" parent="1" source="tbl_users" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.3;entryX=1;entryY=0.5;" target="tbl_opportunity_favourites" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_15" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.8;entryX=0;entryY=0.5;" target="tbl_opportunity_favourites" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_16" edge="1" parent="1" source="tbl_users" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.7;entryX=1;entryY=0.5;" target="tbl_investment_submissions" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_17" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.95;entryX=0;entryY=0.2;" target="tbl_investment_submissions" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_18" edge="1" parent="1" source="tbl_investment_dossiers" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.8;" target="tbl_investment_submissions" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_19" edge="1" parent="1" source="tbl_interest_requests" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToOne;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.8;entryX=0;entryY=0.5;" target="tbl_investment_submissions" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_20" edge="1" parent="1" source="tbl_projects" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToOne;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.5;entryX=0;entryY=0.18;" target="tbl_investment_dossiers" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="40" y="850" />
<mxPoint x="40" y="3660" />
<mxPoint x="1550" y="3660" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_21" edge="1" parent="1" source="tbl_economic_clusters" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToOne;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_investment_dossiers" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="55" y="1450" />
<mxPoint x="55" y="3750" />
<mxPoint x="1550" y="3750" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_22" edge="1" parent="1" source="tbl_development_corridors" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToOne;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.5;entryX=0;entryY=0.82;" target="tbl_investment_dossiers" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="70" y="2050" />
<mxPoint x="70" y="3840" />
<mxPoint x="1550" y="3840" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_23" edge="1" parent="1" source="tbl_opportunities" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToOne;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.95;entryX=0;entryY=0.5;" target="tbl_investment_item_opportunities" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="2290" y="1360" />
<mxPoint x="2290" y="3370" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_24" edge="1" parent="1" source="tbl_investment_items" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.5;entryX=1;entryY=0.5;" target="tbl_investment_item_opportunities" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_25" edge="1" parent="1" source="tbl_investment_items" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.5;entryX=0;entryY=0.5;" target="tbl_investment_zone_links" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_26" edge="1" parent="1" source="tbl_investment_zones" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.5;entryX=1;entryY=0.5;" target="tbl_investment_zone_links" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_27" edge="1" parent="1" source="tbl_geo_locations" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0.5;exitY=1;entryX=0.35;entryY=1;" target="tbl_opportunities" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="327" y="2850" />
<mxPoint x="1530" y="2850" />
<mxPoint x="1530" y="1665" />
<mxPoint x="1710" y="1665" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="rel_28" edge="1" parent="1" source="tbl_geo_locations" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0.5;exitY=0;entryX=0.85;entryY=0;" target="tbl_geo_locations" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_29" edge="1" parent="1" source="tbl_users" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.3;entryX=1;entryY=0.8;" target="tbl_interest_requests" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_30" edge="1" parent="1" source="tbl_existing_businesses" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0;exitY=0.3;entryX=1;entryY=0.95;" target="tbl_interest_requests" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_31" edge="1" parent="1" source="tbl_users" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=0.5;exitY=1;entryX=0.5;entryY=0;" target="tbl_existing_businesses" value="">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="rel_32" edge="1" parent="1" source="tbl_investment_items" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERzeroToOne;startFill=0;startSize=10;endArrow=ERzeroToOne;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;exitX=1;exitY=0.2;entryX=0;entryY=0.8;" target="tbl_existing_businesses" value="">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="3800" y="1950" />
<mxPoint x="3800" y="3370" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="area_1" value="SUBMISSÕES E CARTEIRA DE INVESTIMENTO" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="5715" y="205" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_1" value="Modelo de dados — Submissões e carteira de investimento" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="5735" y="108" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_1" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="5735" y="158" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_1_0" value="interest_submission_receipts" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="5745" y="265" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_0_attrs" value="PK key_hash char&#10;payload_hash char&#10;FK → interest_requests.id interest_request_id bigint&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_0"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_1_1" value="investment_accounts" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="6395" y="265" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_1_attrs" value="PK FK → users.id user_id bigint&#10;payload text&#10;version integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_1"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_1_2" value="investment_company_declarations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7045" y="265" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_2_attrs" value="PK id uuid&#10;FK → users.id user_id bigint&#10;payload text&#10;version integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_2"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_1_3" value="investment_gaps" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7695" y="265" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_1_3_attrs" value="PK id uuid&#10;FK → economic_clusters.id cluster_id uuid&#10;FK → value_chains.id value_chain_id uuid&#10;title varchar&#10;location text&#10;required_capacity text&#10;rationale text&#10;status varchar&#10;call_to_action text&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL&#10;deleted_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_3"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_1_4" value="investment_messages" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="5745" y="546.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_4_attrs" value="PK id uuid&#10;FK → investment_submissions.id UNIQUE submission_id uuid&#10;FK → users.id UNIQUE actor_id bigint&#10;UNIQUE client_key uuid&#10;sender_role varchar&#10;body text&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_4"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_1_5" value="investment_notifications" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="6395" y="546.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_1_5_attrs" value="PK id uuid&#10;FK → users.id UNIQUE user_id bigint&#10;FK → investment_submissions.id submission_id uuid&#10;kind varchar&#10;payload text&#10;UNIQUE event_key varchar&#10;read_at timestamptz NULL&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_5"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_1_6" value="investment_specific_needs" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7045" y="546.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_1_6_attrs" value="PK id bigint&#10;FK → investment_submissions.id submission_id uuid&#10;FK → investment_reference_options.id category_id bigint&#10;FK → investment_reference_options.id option_id bigint&#10;FK → investment_reference_options.id NULL unit_id bigint NULL&#10;FK → investment_reference_options.id NULL priority_id bigint NULL&#10;quantity numeric NULL&#10;deadline date NULL&#10;details text&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_6"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_1_7" value="investment_submission_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7695" y="546.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_7_attrs" value="PK id bigint&#10;FK → investment_submissions.id submission_id uuid&#10;FK → users.id actor_id bigint&#10;action varchar&#10;version integer&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_7"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_1_8" value="investment_submission_revisions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="5745" y="810.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_8_attrs" value="PK id bigint&#10;FK → investment_submissions.id UNIQUE submission_id uuid&#10;UNIQUE version integer&#10;snapshot text&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_8"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_1_9" value="investment_submission_zones" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="6395" y="810.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_9_attrs" value="PK FK → investment_submissions.id submission_id uuid&#10;FK → investment_zones.id zone_id uuid&#10;zone_version integer&#10;intent varchar&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_9"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_1_10" value="investor_accounts" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7045" y="810.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_1_10_attrs" value="PK FK → users.id user_id bigint&#10;FK → investors.id UNIQUE investor_id uuid&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_1_10"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="area_2" value="PROJECTOS, TERRITÓRIO E CATÁLOGOS" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="8565" y="205" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_2" value="Modelo de dados — Projectos, território e catálogos" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="8585" y="108" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_2" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="8585" y="158" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_2_0" value="anchor_project_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="265" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_2_0_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → projects.id UNIQUE anchor_project_id uuid&#10;FK → economic_clusters.id UNIQUE cluster_id uuid&#10;rationale text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_0"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_2_1" value="authorities" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="265" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_2_1_attrs" value="PK id uuid&#10;FK → reference_catalog_versions.id UNIQUE catalog_version_id uuid&#10;FK → organizations.id organization_id uuid&#10;FK → geo_locations.id NULL jurisdiction_id uuid NULL&#10;UNIQUE code varchar&#10;authority_type varchar&#10;label_pt_mz varchar&#10;source_reference text&#10;version_no integer&#10;valid_from date&#10;valid_to date NULL&#10;status varchar&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_1"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_2_2" value="cluster_projects" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9895" y="265" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_2_2_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → economic_clusters.id UNIQUE cluster_id uuid&#10;FK → projects.id UNIQUE project_id uuid&#10;role text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_2"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_2_3" value="complementary_project_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="10545" y="265" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_2_3_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → projects.id UNIQUE anchor_project_id uuid&#10;FK → projects.id UNIQUE complementary_project_id uuid&#10;UNIQUE relation_type text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_3"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_2_4" value="corridor_clusters" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="580.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_2_4_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → development_corridors.id UNIQUE corridor_id uuid&#10;FK → economic_clusters.id UNIQUE cluster_id uuid" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_4"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_2_5" value="corridor_locations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="580.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_2_5_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → development_corridors.id UNIQUE corridor_id uuid&#10;FK → geo_locations.id UNIQUE geo_location_id uuid&#10;UNIQUE sequence_no integer" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_5"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_2_6" value="corridor_projects" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9895" y="580.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_2_6_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → development_corridors.id UNIQUE corridor_id uuid&#10;FK → projects.id UNIQUE project_id uuid" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_6"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_2_7" value="economic_activities" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="10545" y="580.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_2_7_attrs" value="PK UNIQUE id uuid&#10;FK → reference_catalog_versions.id UNIQUE catalog_version_id uuid&#10;parent_id uuid NULL&#10;FK → sectors.id sector_id bigint&#10;UNIQUE code varchar&#10;label_pt_mz varchar&#10;description_pt_mz text NULL&#10;version_no integer&#10;valid_from date&#10;valid_to date NULL&#10;status varchar&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_7"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_2_8" value="geo_geometries" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="878.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_2_8_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → geo_locations.id UNIQUE geo_location_id uuid&#10;UNIQUE geometry_type text&#10;geom geometry&#10;properties jsonb" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_8"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_2_9" value="geo_names" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="878.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_2_9_attrs" value="PK id uuid&#10;FK → geo_locations.id UNIQUE geo_location_id uuid&#10;UNIQUE language varchar&#10;name varchar&#10;UNIQUE normalized_name varchar&#10;official boolean&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_9"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_2_10" value="geo_sources" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9895" y="878.0" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_2_10_attrs" value="PK id uuid&#10;name varchar&#10;responsible_entity varchar NULL&#10;reference text&#10;license text NULL&#10;UNIQUE checksum char&#10;UNIQUE source_version varchar&#10;collected_at date&#10;original_crs varchar NULL&#10;status varchar&#10;FK → users.id editor_id bigint&#10;FK → users.id NULL reviewer_id bigint NULL&#10;approval_reference text NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_10"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="new_2_11" value="geo_territory_profiles" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="10545" y="878.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_2_11_attrs" value="PK FK → geo_locations.id geo_location_id uuid&#10;FK → geo_sources.id source_id uuid&#10;UNIQUE iso2 char NULL&#10;UNIQUE iso3 char NULL&#10;FK → geo_locations.id NULL capital_territory_id uuid NULL&#10;valid_from date&#10;valid_to date NULL&#10;status varchar&#10;FK → users.id editor_id bigint&#10;FK → users.id NULL reviewer_id bigint NULL&#10;FK → users.id NULL publisher_id bigint NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_11"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_2_12" value="geo_territory_revisions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="1210.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_2_12_attrs" value="PK id uuid&#10;FK → geo_locations.id UNIQUE geo_location_id uuid&#10;UNIQUE version_no integer&#10;FK → users.id actor_id bigint&#10;reason text&#10;snapshot text&#10;checksum char&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_12"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_2_13" value="geo_write_receipts" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="1210.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_2_13_attrs" value="PK id uuid&#10;FK → users.id UNIQUE actor_id bigint&#10;UNIQUE idempotency_key uuid&#10;UNIQUE scope varchar&#10;request_hash char&#10;response text&#10;http_status integer&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_13"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_2_14" value="project_locations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9895" y="1210.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_2_14_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → projects.id UNIQUE project_id uuid&#10;FK → geo_locations.id UNIQUE geo_location_id uuid&#10;UNIQUE role text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_14"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_2_15" value="reference_catalog_versions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="10545" y="1210.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_2_15_attrs" value="PK id uuid&#10;UNIQUE catalog_code varchar&#10;UNIQUE version_no integer&#10;UNIQUE locale varchar&#10;source_system varchar&#10;source_version varchar&#10;source_reference text&#10;source_sha256 char NULL&#10;valid_from date NULL&#10;valid_to date NULL&#10;status varchar&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_15"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_2_16" value="value_chain_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="1508.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_2_16_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → value_chains.id UNIQUE from_value_chain_id uuid&#10;FK → value_chains.id UNIQUE to_value_chain_id uuid&#10;UNIQUE link_type text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_16"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_2_17" value="value_chains" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="1508.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_2_17_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → economic_clusters.id UNIQUE cluster_id uuid&#10;UNIQUE code text&#10;name text&#10;stage text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_2_17"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="newrel_2_1" edge="1" parent="1" source="new_2_15" target="new_2_1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_2_2" edge="1" parent="1" source="new_2_15" target="new_2_7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_2_3" edge="1" parent="1" source="new_2_10" target="new_2_11" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_2_4" edge="1" parent="1" source="new_2_17" target="new_2_16" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_2_5" edge="1" parent="1" source="new_2_17" target="new_2_16" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_3" value="ZONAS E FONTES LEGAIS" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="11415" y="205" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_3" value="Modelo de dados — Zonas e fontes legais" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="11435" y="108" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_3" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="11435" y="158" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_3_0" value="investment_item_projects" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="11445" y="265" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_3_0_attrs" value="PK FK → investment_items.id item_id uuid&#10;PK FK → projects.id project_id uuid&#10;mapping_evidence text&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_0"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_3_1" value="investment_legal_sources" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="12095" y="265" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_3_1_attrs" value="PK id uuid&#10;title varchar&#10;url text&#10;diploma varchar&#10;article varchar&#10;competent_entity varchar&#10;valid_from date&#10;valid_until date NULL&#10;validation_status varchar&#10;FK → users.id owner_id bigint&#10;FK → users.id NULL validator_id bigint NULL&#10;validated_at timestamptz NULL&#10;version_no integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_1"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="new_3_2" value="investment_zone_attachment_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="12745" y="265" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_3_2_attrs" value="PK id uuid&#10;FK → investment_zone_attachments.id attachment_id uuid&#10;FK → users.id actor_id bigint&#10;action varchar&#10;version_no integer&#10;metadata jsonb&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_2"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_3_3" value="investment_zone_attachments" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="13395" y="265" width="455" height="399" as="geometry" /></mxCell><mxCell id="new_3_3_attrs" value="PK id uuid&#10;FK → investment_zones.id zone_id uuid&#10;FK → documents.id UNIQUE document_id uuid&#10;kind varchar&#10;caption varchar&#10;source_reference text&#10;source_date date NULL&#10;rights_status varchar&#10;rights_basis text NULL&#10;personal_data_status varchar&#10;review_status varchar&#10;FK → users.id uploaded_by bigint&#10;FK → users.id NULL reviewed_by bigint NULL&#10;reviewed_at timestamptz NULL&#10;independent_review boolean&#10;publicly_selected boolean&#10;publicly_selected_at timestamptz NULL&#10;FK → users.id NULL publicly_selected_by bigint NULL&#10;version_no integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_3"><mxGeometry x="0" y="38" width="455" height="361" as="geometry" /></mxCell><mxCell id="new_3_4" value="investment_zone_geometries" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="11445" y="699.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_3_4_attrs" value="PK id uuid&#10;FK → investment_zones.id UNIQUE zone_id uuid&#10;FK → geo_geometries.id UNIQUE geometry_id uuid&#10;FK → investment_legal_sources.id NULL legal_source_id uuid NULL&#10;purpose varchar&#10;source_reference text&#10;validating_entity varchar&#10;observed_at date&#10;publication_authorized boolean&#10;validation_status varchar&#10;version_no integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_4"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_3_5" value="investment_zone_locations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="12095" y="699.0" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_3_5_attrs" value="PK id uuid&#10;FK → investment_zones.id UNIQUE zone_id uuid&#10;FK → geo_locations.id UNIQUE geo_location_id uuid&#10;UNIQUE scope_type varchar&#10;source_reference text&#10;FK → investment_legal_sources.id NULL legal_source_id uuid NULL&#10;valid_from date NULL&#10;valid_until date NULL&#10;validation_status varchar&#10;FK → users.id editor_id bigint&#10;FK → users.id NULL reviewer_id bigint NULL&#10;version_no integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_5"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_3_6" value="investment_zone_relations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="12745" y="699.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_3_6_attrs" value="PK id uuid&#10;FK → investment_zones.id zone_id uuid&#10;FK → economic_clusters.id NULL cluster_id uuid NULL&#10;FK → development_corridors.id NULL corridor_id uuid NULL&#10;FK → projects.id NULL project_id uuid NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_6"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_3_7" value="investment_zone_revisions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="13395" y="699.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_3_7_attrs" value="PK id uuid&#10;FK → investment_zones.id UNIQUE zone_id uuid&#10;UNIQUE version_no integer&#10;FK → users.id actor_id bigint&#10;action varchar&#10;snapshot text&#10;sha256 char&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_3_7"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="newrel_3_1" edge="1" parent="1" source="new_3_3" target="new_3_2" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_3_2" edge="1" parent="1" source="new_3_1" target="new_3_4" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_3_3" edge="1" parent="1" source="new_3_1" target="new_3_5" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_4" value="NEGÓCIOS EXISTENTES E ASSISTÊNCIA FUNDIÁRIA" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="14265" y="205" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_4" value="Modelo de dados — Negócios existentes e assistência fundiária" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="14285" y="108" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_4" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="14285" y="158" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_4_0" value="business_workflow_transitions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="265" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_4_0_attrs" value="PK id uuid&#10;FK → existing_businesses.id NULL existing_business_id uuid NULL&#10;FK → interest_requests.id NULL interest_request_id bigint NULL&#10;from_status varchar NULL&#10;to_status varchar&#10;FK → users.id NULL actor_id bigint NULL&#10;reason text NULL&#10;correlation_id uuid&#10;metadata jsonb&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_0"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_4_1" value="existing_business_document_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14945" y="265" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_4_1_attrs" value="PK id uuid&#10;FK → existing_businesses.id NULL UNIQUE existing_business_id uuid NULL&#10;FK → interest_requests.id NULL UNIQUE interest_request_id bigint NULL&#10;FK → documents.id UNIQUE document_id uuid&#10;FK → users.id NULL uploaded_by bigint NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_1"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_4_2" value="existing_business_locations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="15595" y="265" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_4_2_attrs" value="PK id uuid&#10;FK → existing_businesses.id existing_business_id uuid&#10;FK → geo_locations.id NULL province_id uuid NULL&#10;FK → geo_locations.id NULL district_id uuid NULL&#10;FK → geo_locations.id NULL admin_post_id uuid NULL&#10;FK → geo_locations.id NULL locality_id uuid NULL&#10;precision_level varchar&#10;is_primary boolean&#10;is_public boolean&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_2"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_4_3" value="existing_business_mandates" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="16245" y="265" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_4_3_attrs" value="PK id uuid&#10;FK → existing_businesses.id business_id uuid&#10;FK → users.id representative_user_id bigint&#10;FK → documents.id document_id uuid&#10;valid_from date&#10;valid_until date&#10;verification_status varchar&#10;payload text&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_3"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_4_4" value="existing_business_objects" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="529.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_4_4_attrs" value="PK id uuid&#10;FK → existing_businesses.id business_id uuid&#10;kind varchar&#10;classification varchar&#10;verification_status varchar&#10;payload text&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_4"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_4_5" value="existing_business_reviews" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14945" y="529.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_4_5_attrs" value="PK id uuid&#10;FK → existing_businesses.id UNIQUE business_id uuid&#10;FK → users.id actor_id bigint&#10;UNIQUE version_no integer&#10;action varchar&#10;note text&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_5"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_4_6" value="existing_business_revisions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="15595" y="529.0" width="455" height="195" as="geometry" /></mxCell><mxCell id="new_4_6_attrs" value="PK id uuid&#10;FK → existing_businesses.id UNIQUE business_id uuid&#10;UNIQUE version_no integer&#10;FK → users.id actor_id bigint&#10;action varchar&#10;reason text&#10;snapshot text&#10;sha256 char&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_6"><mxGeometry x="0" y="38" width="455" height="157" as="geometry" /></mxCell><mxCell id="new_4_7" value="existing_business_rights" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="16245" y="529.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_4_7_attrs" value="PK id uuid&#10;FK → existing_businesses.id existing_business_id uuid&#10;FK → existing_business_objects.id NULL business_object_id uuid NULL&#10;right_type varchar&#10;reference varchar NULL&#10;issuer varchar NULL&#10;valid_from date NULL&#10;valid_until date NULL&#10;verified_at timestamptz NULL&#10;confidential_payload text NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_7"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_4_8" value="external_record_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="810.0" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_4_8_attrs" value="PK id uuid&#10;FK → existing_businesses.id NULL existing_business_id uuid NULL&#10;FK → interest_requests.id NULL interest_request_id bigint NULL&#10;FK → investors.id NULL investor_id uuid NULL&#10;UNIQUE crm_system varchar&#10;UNIQUE remote_id varchar&#10;last_synced_at timestamptz NULL&#10;sync_hash char NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_8"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_4_9" value="land_assistance_cases" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14945" y="810.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_4_9_attrs" value="PK id uuid&#10;FK → users.id user_id bigint&#10;UNIQUE reference varchar&#10;status varchar&#10;version integer&#10;payload text&#10;UNIQUE crm_submission_key uuid&#10;FK → interest_requests.id NULL UNIQUE interest_request_id bigint NULL&#10;FK → users.id NULL assigned_to bigint NULL&#10;support_requested_at timestamptz NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_9"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_4_10" value="land_assistance_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="15595" y="810.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_4_10_attrs" value="PK id bigint&#10;FK → land_assistance_cases.id case_id uuid&#10;FK → users.id actor_id bigint&#10;action varchar&#10;version integer&#10;metadata jsonb&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_10"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_4_11" value="land_assistance_revisions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="16245" y="810.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_4_11_attrs" value="PK id bigint&#10;FK → land_assistance_cases.id UNIQUE case_id uuid&#10;UNIQUE version integer&#10;snapshot text&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_4_11"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="newrel_4_1" edge="1" parent="1" source="new_4_4" target="new_4_7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_4_2" edge="1" parent="1" source="new_4_9" target="new_4_10" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_4_3" edge="1" parent="1" source="new_4_9" target="new_4_11" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_5" value="DOCUMENTOS E PORTAL" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="17115" y="205" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_5" value="Modelo de dados — Documentos e portal" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="17135" y="108" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_5" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="17135" y="158" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_5_0" value="aftercare_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="265" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_0_attrs" value="PK FK → aftercare_plans.id aftercare_plan_id uuid&#10;PK FK → documents.id document_id uuid&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_0"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_1" value="desk_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="265" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_5_1_attrs" value="PK id uuid&#10;FK → desk_cases.id UNIQUE case_id uuid&#10;FK → documents.id UNIQUE document_id uuid&#10;FK → desk_requests.id NULL request_id uuid NULL&#10;category varchar&#10;stage varchar NULL&#10;valid_until date NULL&#10;source_reference text&#10;FK → users.id linked_by bigint&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_1"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_5_2" value="document_malware_scans" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="18445" y="265" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_5_2_attrs" value="PK id uuid&#10;FK → documents.id document_id uuid&#10;file_sha256 char&#10;result varchar&#10;reason_code varchar NULL&#10;engine varchar&#10;engine_version varchar&#10;signatures_at timestamptz NULL&#10;started_at timestamptz&#10;finished_at timestamptz NULL&#10;duration_ms integer NULL&#10;file_size_bytes integer NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_2"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_5_3" value="documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19095" y="265" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_5_3_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;file_name text&#10;media_type text&#10;UNIQUE storage_key text&#10;status text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_3"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_5_4" value="education_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="580.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_4_attrs" value="PK FK → education_opportunities.id education_opportunity_id uuid&#10;PK FK → documents.id document_id uuid&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_4"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_5" value="investment_submission_attachments" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="580.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_5_attrs" value="PK id uuid&#10;FK → investment_submissions.id submission_id uuid&#10;FK → documents.id document_id uuid&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_5"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_6" value="investor_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="18445" y="580.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_6_attrs" value="PK FK → investors.id investor_id uuid&#10;PK FK → documents.id document_id uuid&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_6"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_7" value="journey_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19095" y="580.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_7_attrs" value="PK FK → investor_journeys.id journey_id uuid&#10;PK FK → documents.id document_id uuid&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_7"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_8" value="land_assistance_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="785.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_8_attrs" value="PK id uuid&#10;FK → land_assistance_cases.id UNIQUE case_id uuid&#10;FK → documents.id UNIQUE document_id uuid&#10;category varchar&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_8"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_9" value="partnership_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="785.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_9_attrs" value="PK id bigint&#10;FK → partnership_rooms.id UNIQUE room_id bigint&#10;FK → documents.id UNIQUE document_id uuid&#10;FK → users.id owner_id bigint&#10;shared boolean&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_9"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_10" value="portal_partnerships" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="18445" y="785.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_5_10_attrs" value="PK id bigint&#10;FK → users.id user_id bigint&#10;title varchar&#10;sector varchar&#10;province varchar&#10;offer text&#10;seeking text&#10;status varchar&#10;FK → users.id NULL reviewed_by bigint NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_10"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_5_11" value="portal_resource_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19095" y="785.0" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_5_11_attrs" value="PK id bigint&#10;FK → portal_resources.id UNIQUE resource_id bigint&#10;UNIQUE target_type varchar&#10;UNIQUE target_key varchar&#10;UNIQUE relationship varchar&#10;applicability varchar&#10;condition_text text NULL&#10;basis_reference text NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_11"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_5_12" value="portal_resource_revisions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="1049.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_12_attrs" value="PK id bigint&#10;FK → portal_resources.id UNIQUE resource_id bigint&#10;UNIQUE revision_no integer&#10;change_type varchar&#10;snapshot jsonb&#10;FK → users.id NULL actor_user_id bigint NULL&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_12"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_5_13" value="portal_resources" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="1049.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_5_13_attrs" value="PK id bigint&#10;FK → documents.id document_id uuid&#10;title varchar&#10;category varchar&#10;topic varchar&#10;legislation boolean&#10;essential boolean&#10;published boolean&#10;source_reference text&#10;FK → users.id approved_by bigint&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_13"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_5_14" value="project_documents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="18445" y="1049.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_5_14_attrs" value="PK FK → projects.id project_id uuid&#10;PK FK → documents.id document_id uuid&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_5_14"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="newrel_5_1" edge="1" parent="1" source="new_5_3" target="new_5_0" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_2" edge="1" parent="1" source="new_5_3" target="new_5_1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_3" edge="1" parent="1" source="new_5_3" target="new_5_2" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_4" edge="1" parent="1" source="new_5_3" target="new_5_4" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_5" edge="1" parent="1" source="new_5_3" target="new_5_5" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_6" edge="1" parent="1" source="new_5_3" target="new_5_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_7" edge="1" parent="1" source="new_5_3" target="new_5_7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_8" edge="1" parent="1" source="new_5_3" target="new_5_8" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_9" edge="1" parent="1" source="new_5_3" target="new_5_9" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_10" edge="1" parent="1" source="new_5_13" target="new_5_11" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_11" edge="1" parent="1" source="new_5_13" target="new_5_12" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_12" edge="1" parent="1" source="new_5_3" target="new_5_13" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_5_13" edge="1" parent="1" source="new_5_3" target="new_5_14" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_6" value="CRM E JORNADA DO INVESTIDOR" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="19965" y="205" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_6" value="Modelo de dados — CRM e jornada do investidor" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="19985" y="108" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_6" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="19985" y="158" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_6_0" value="activities" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19995" y="265" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_6_0_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → investors.id NULL investor_id uuid NULL&#10;FK → crm_opportunities.id NULL opportunity_id uuid NULL&#10;FK → users.id NULL actor_user_id bigint NULL&#10;activity_type text&#10;occurred_at timestamptz&#10;summary text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_0"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="new_6_1" value="aftercare_plans" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="20645" y="265" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_6_1_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → investors.id investor_id uuid&#10;FK → projects.id NULL project_id uuid NULL&#10;FK → users.id NULL owner_user_id bigint NULL&#10;status text&#10;review_date date NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_1"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_6_2" value="constraints" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="21295" y="265" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_6_2_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → aftercare_plans.id aftercare_plan_id uuid&#10;category text&#10;description text&#10;severity text&#10;status text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_2"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_6_3" value="contacts" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="21945" y="265" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_6_3_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;full_name text&#10;email text NULL&#10;phone text NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_3"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_6_4" value="crm_opportunities" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19995" y="597.0" width="455" height="314" as="geometry" /></mxCell><mxCell id="new_6_4_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → leads.id NULL lead_id uuid NULL&#10;FK → projects.id NULL project_id uuid NULL&#10;FK → users.id NULL owner_user_id bigint NULL&#10;stage text&#10;amount numeric NULL&#10;currency char NULL&#10;probability numeric NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_4"><mxGeometry x="0" y="38" width="455" height="276" as="geometry" /></mxCell><mxCell id="new_6_5" value="escalations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="20645" y="597.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_6_5_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → users.id NULL escalated_by bigint NULL&#10;level text&#10;status text&#10;escalated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_5"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_6_6" value="investor_contacts" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="21295" y="597.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_6_6_attrs" value="PK FK → investors.id investor_id uuid&#10;PK FK → contacts.id contact_id uuid&#10;is_primary boolean&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_6"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_6_7" value="investor_journeys" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="21945" y="597.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_6_7_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → investors.id investor_id uuid&#10;FK → crm_opportunities.id NULL opportunity_id uuid NULL&#10;status text&#10;started_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_7"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_6_8" value="journey_steps" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19995" y="946.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_6_8_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → investor_journeys.id UNIQUE journey_id uuid&#10;UNIQUE step_code text&#10;UNIQUE sequence_no integer&#10;status text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_8"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_6_9" value="leads" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="20645" y="946.0" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_6_9_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → investors.id NULL investor_id uuid NULL&#10;FK → users.id NULL owner_user_id bigint NULL&#10;title text&#10;status text&#10;estimated_amount numeric NULL&#10;currency char NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_9"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="new_6_10" value="submissions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="21295" y="946.0" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_6_10_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → journey_steps.id journey_step_id uuid&#10;FK → users.id NULL submitted_by bigint NULL&#10;status text&#10;payload jsonb&#10;submitted_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_10"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_6_11" value="tasks" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="21945" y="946.0" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_6_11_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → users.id NULL assignee_user_id bigint NULL&#10;FK → crm_opportunities.id NULL opportunity_id uuid NULL&#10;title text&#10;status text&#10;due_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_6_11"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="newrel_6_1" edge="1" parent="1" source="new_6_4" target="new_6_0" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_2" edge="1" parent="1" source="new_6_1" target="new_6_2" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_3" edge="1" parent="1" source="new_6_9" target="new_6_4" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_4" edge="1" parent="1" source="new_6_2" target="new_6_5" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_5" edge="1" parent="1" source="new_6_3" target="new_6_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_6" edge="1" parent="1" source="new_6_4" target="new_6_7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_7" edge="1" parent="1" source="new_6_7" target="new_6_8" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_8" edge="1" parent="1" source="new_6_8" target="new_6_10" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_6_9" edge="1" parent="1" source="new_6_4" target="new_6_11" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_7" value="EDUCAÇÃO E FORÇA DE TRABALHO" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="5715" y="3755" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_7" value="Modelo de dados — Educação e força de trabalho" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="5735" y="3658" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_7" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="5735" y="3708" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_7_0" value="courses" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="5745" y="3815" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_7_0_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → training_providers.id UNIQUE provider_id uuid&#10;UNIQUE code text&#10;title text&#10;status text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_0"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_7_1" value="education_investment_proposals" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="6395" y="3815" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_7_1_attrs" value="PK id uuid&#10;FK → labour_demands.id UNIQUE labour_demand_id uuid&#10;demand_version integer&#10;FK → opportunities.id UNIQUE opportunity_id bigint&#10;FK → users.id created_by bigint&#10;intervention text&#10;equipment_needs text NULL&#10;trainer_needs text NULL&#10;funding_plan text NULL&#10;risks text&#10;source text&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL&#10;deleted_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_1"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_7_2" value="education_opportunities" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7045" y="3815" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_7_2_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → courses.id course_id uuid&#10;FK → geo_locations.id NULL geo_location_id uuid NULL&#10;start_date date&#10;end_date date NULL&#10;capacity integer NULL&#10;status text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_2"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="new_7_3" value="labour_demands" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7695" y="3815" width="455" height="399" as="geometry" /></mxCell><mxCell id="new_7_3_attrs" value="PK id uuid&#10;FK → occupations.id occupation_id uuid&#10;FK → skills.id skill_id uuid&#10;FK → geo_locations.id geo_location_id uuid&#10;FK → projects.id project_id uuid&#10;employer varchar&#10;qualification varchar&#10;quantity integer&#10;period_start date&#10;period_end date&#10;source text&#10;reference_date date&#10;valid_until date&#10;status varchar&#10;version_no integer&#10;FK → users.id submitted_by bigint&#10;FK → users.id NULL reviewed_by bigint NULL&#10;review_reason text NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_3"><mxGeometry x="0" y="38" width="455" height="361" as="geometry" /></mxCell><mxCell id="new_7_4" value="occupations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="5745" y="4249.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_7_4_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;UNIQUE code text&#10;name text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_4"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_7_5" value="skills" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="6395" y="4249.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_7_5_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;UNIQUE code text&#10;name text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_5"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_7_6" value="training_capacities" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7045" y="4249.0" width="455" height="382" as="geometry" /></mxCell><mxCell id="new_7_6_attrs" value="PK id uuid&#10;FK → occupations.id occupation_id uuid&#10;FK → skills.id skill_id uuid&#10;FK → geo_locations.id geo_location_id uuid&#10;FK → courses.id course_id uuid&#10;qualification varchar&#10;quantity integer&#10;period_start date&#10;period_end date&#10;source text&#10;reference_date date&#10;valid_until date&#10;status varchar&#10;version_no integer&#10;FK → users.id submitted_by bigint&#10;FK → users.id NULL reviewed_by bigint NULL&#10;review_reason text NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_6"><mxGeometry x="0" y="38" width="455" height="344" as="geometry" /></mxCell><mxCell id="new_7_7" value="training_needs" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="7695" y="4249.0" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_7_7_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → projects.id NULL project_id uuid NULL&#10;FK → occupations.id NULL occupation_id uuid NULL&#10;FK → skills.id NULL skill_id uuid NULL&#10;quantity integer&#10;priority text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_7"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_7_8" value="training_providers" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="5745" y="4666.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_7_8_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → organizations.id NULL organization_id uuid NULL&#10;name text&#10;status text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_7_8"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="newrel_7_1" edge="1" parent="1" source="new_7_8" target="new_7_0" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_2" edge="1" parent="1" source="new_7_3" target="new_7_1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_3" edge="1" parent="1" source="new_7_0" target="new_7_2" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_4" edge="1" parent="1" source="new_7_4" target="new_7_3" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_5" edge="1" parent="1" source="new_7_5" target="new_7_3" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_6" edge="1" parent="1" source="new_7_4" target="new_7_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_7" edge="1" parent="1" source="new_7_5" target="new_7_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_8" edge="1" parent="1" source="new_7_0" target="new_7_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_9" edge="1" parent="1" source="new_7_4" target="new_7_7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_7_10" edge="1" parent="1" source="new_7_5" target="new_7_7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_8" value="SIMULAÇÃO E GOVERNAÇÃO FISCAL" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="8565" y="3755" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_8" value="Modelo de dados — Simulação e governação fiscal" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="8585" y="3658" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_8" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="8585" y="3708" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_8_0" value="questionnaire_versions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="3815" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_8_0_attrs" value="PK id uuid&#10;code text&#10;version_no integer&#10;locale text&#10;schema_snapshot jsonb&#10;status text&#10;valid_from date NULL&#10;valid_to date NULL&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_0"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_8_1" value="simulation_audit_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_8_1_attrs" value="PK id uuid&#10;FK → simulations.id simulation_id uuid&#10;FK → users.id NULL actor_user_id bigint NULL&#10;action text&#10;correlation_id uuid&#10;data jsonb&#10;occurred_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_1"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_8_2" value="simulation_draft_business_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9895" y="3815" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_8_2_attrs" value="PK id uuid&#10;FK → simulation_form_drafts.id draft_id uuid&#10;FK → existing_businesses.id business_id uuid&#10;FK → users.id owner_user_id bigint&#10;FK → users.id linked_by bigint&#10;FK → users.id NULL unlinked_by bigint NULL&#10;linked_at timestamptz&#10;unlinked_at timestamptz NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_2"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_8_3" value="simulation_form_drafts" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="10545" y="3815" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_8_3_attrs" value="PK id uuid&#10;FK → users.id NULL owner_user_id bigint NULL&#10;anonymous_token_hash char NULL&#10;version_no integer&#10;create_key_hash char&#10;create_payload_hash char&#10;personal_snapshot text&#10;economic_snapshot text&#10;deleted_at timestamptz NULL&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_3"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_8_4" value="simulation_idempotency" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="4079.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_8_4_attrs" value="PK id uuid&#10;scope_hash char&#10;key_hash char&#10;payload_hash char&#10;FK → simulations.id NULL simulation_id uuid NULL&#10;response_snapshot jsonb NULL&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_4"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_8_5" value="simulation_jobs" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="4079.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_8_5_attrs" value="PK id uuid&#10;FK → simulations.id simulation_id uuid&#10;job_type text&#10;status text&#10;attempts smallint&#10;available_at timestamptz&#10;started_at timestamptz NULL&#10;finished_at timestamptz NULL&#10;error_code text NULL&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_5"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_8_6" value="simulation_obligations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9895" y="4079.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_8_6_attrs" value="PK id uuid&#10;FK → simulations.id simulation_id uuid&#10;FK → simulation_scenarios.id NULL scenario_id uuid NULL&#10;code text&#10;label text&#10;source_reference text NULL&#10;source_version text NULL&#10;status text&#10;snapshot jsonb&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_6"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_8_7" value="simulation_reports" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="10545" y="4079.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_8_7_attrs" value="PK id uuid&#10;FK → simulations.id simulation_id uuid&#10;version_no integer&#10;status text&#10;report_snapshot jsonb NULL&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_7"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_8_8" value="simulation_result_sources" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="4343.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_8_8_attrs" value="PK id uuid&#10;FK → simulation_results.id result_id uuid&#10;source_type text&#10;source_id text&#10;source_version text&#10;source_snapshot jsonb&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_8"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_8_9" value="simulation_results" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9245" y="4343.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_8_9_attrs" value="PK id uuid&#10;FK → simulations.id simulation_id uuid&#10;FK → simulation_scenarios.id scenario_id uuid&#10;engine_version text&#10;result_snapshot jsonb&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_9"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_8_10" value="simulation_scenarios" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="9895" y="4343.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_8_10_attrs" value="PK id uuid&#10;FK → simulations.id simulation_id uuid&#10;code text&#10;label text&#10;version_no integer&#10;parameters jsonb&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_10"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_8_11" value="simulation_tax_rule_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="10545" y="4343.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_8_11_attrs" value="PK id uuid&#10;FK → simulation_tax_rule_versions.id UNIQUE rule_version_id uuid&#10;UNIQUE version_no integer&#10;FK → users.id actor_user_id bigint&#10;action varchar&#10;snapshot jsonb&#10;sha256 char&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_11"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_8_12" value="simulation_tax_rule_versions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="8595" y="4556.0" width="455" height="430" as="geometry" /></mxCell><mxCell id="new_8_12_attrs" value="PK id uuid&#10;UNIQUE rule_code varchar&#10;UNIQUE rule_version integer&#10;component varchar&#10;UNIQUE scope_key varchar&#10;valid_from date&#10;valid_until date NULL&#10;status varchar&#10;rule_definition jsonb&#10;parameters jsonb&#10;rounding_policy jsonb&#10;FK → investment_legal_sources.id legal_source_id uuid&#10;source_version_no integer&#10;source_sha256 char&#10;FK → users.id author_id bigint&#10;FK → users.id NULL reviewer_id bigint NULL&#10;FK → users.id NULL approver_id bigint NULL&#10;FK → users.id NULL publisher_id bigint NULL&#10;review_evidence text NULL&#10;approval_evidence text NULL&#10;publication_evidence text NULL&#10;closure_evidence text NULL&#10;submitted_at timestamptz NULL&#10;reviewed_at timestamptz NULL&#10;approved_at timestamptz NULL&#10;published_at timestamptz NULL&#10;suspended_at timestamptz NULL&#10;archived_at timestamptz NULL&#10;version_no integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_8_12"><mxGeometry x="0" y="38" width="455" height="392" as="geometry" /></mxCell><mxCell id="newrel_8_1" edge="1" parent="1" source="new_8_3" target="new_8_2" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_8_2" edge="1" parent="1" source="new_8_10" target="new_8_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_8_3" edge="1" parent="1" source="new_8_9" target="new_8_8" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_8_4" edge="1" parent="1" source="new_8_10" target="new_8_9" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_8_5" edge="1" parent="1" source="new_8_12" target="new_8_11" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_9" value="INTELIGÊNCIA ARTIFICIAL" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="11415" y="3755" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_9" value="Modelo de dados — Inteligência artificial" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="11435" y="3658" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_9" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="11435" y="3708" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_9_0" value="ai_chunks" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="11445" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_9_0_attrs" value="PK id uuid&#10;FK → ai_sources.id UNIQUE source_id uuid&#10;UNIQUE position integer&#10;language varchar&#10;content text&#10;UNIQUE checksum char" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_9_0"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_9_1" value="ai_controls" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="12095" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_9_1_attrs" value="PK capability varchar&#10;suspended boolean&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_9_1"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_9_2" value="ai_feedback" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="12745" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_9_2_attrs" value="PK id bigint&#10;FK → ai_runs.id UNIQUE run_id uuid&#10;FK → users.id UNIQUE user_id bigint&#10;rating varchar&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_9_2"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_9_3" value="ai_runs" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="13395" y="3815" width="455" height="348" as="geometry" /></mxCell><mxCell id="new_9_3_attrs" value="PK id uuid&#10;FK → users.id actor_id bigint&#10;capability varchar&#10;purpose varchar&#10;mode varchar&#10;rules_version varchar&#10;prompt_version varchar&#10;input_hash char&#10;result text&#10;source_ids jsonb&#10;latency_ms integer&#10;review_requested boolean&#10;review_status varchar&#10;FK → users.id NULL reviewed_by bigint NULL&#10;reviewed_at timestamptz NULL&#10;version_no integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_9_3"><mxGeometry x="0" y="38" width="455" height="310" as="geometry" /></mxCell><mxCell id="new_9_4" value="ai_sources" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="11445" y="4198.0" width="455" height="365" as="geometry" /></mxCell><mxCell id="new_9_4_attrs" value="PK id uuid&#10;FK → documents.id UNIQUE document_id uuid&#10;UNIQUE document_version integer&#10;document_checksum char&#10;title varchar&#10;language varchar&#10;nature varchar&#10;source_url text&#10;source_owner varchar&#10;evidence_reference text&#10;source_date date&#10;valid_until date&#10;purpose varchar&#10;status varchar&#10;FK → users.id submitted_by bigint&#10;FK → users.id NULL reviewed_by bigint NULL&#10;reviewed_at timestamptz NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_9_4"><mxGeometry x="0" y="38" width="455" height="327" as="geometry" /></mxCell><mxCell id="newrel_9_1" edge="1" parent="1" source="new_9_4" target="new_9_0" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_9_2" edge="1" parent="1" source="new_9_3" target="new_9_2" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_10" value="PARCERIAS E ATENDIMENTO VIRTUAL" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="14265" y="3755" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_10" value="Modelo de dados — Parcerias e atendimento virtual" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="14285" y="3658" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_10" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="14285" y="3708" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_10_0" value="desk_cases" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="3815" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_10_0_attrs" value="PK id uuid&#10;FK → users.id UNIQUE user_id bigint&#10;FK → organizations.id NULL organization_id uuid NULL&#10;FK → investment_company_declarations.id NULL company_id uuid NULL&#10;FK → investment_submissions.id NULL submission_id uuid NULL&#10;simulation_id uuid NULL&#10;title varchar&#10;UNIQUE client_key uuid&#10;version integer&#10;payload text&#10;workflow jsonb&#10;closed_at timestamptz NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_0"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_10_1" value="desk_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14945" y="3815" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_10_1_attrs" value="PK id uuid&#10;FK → desk_cases.id case_id uuid&#10;FK → desk_requests.id NULL request_id uuid NULL&#10;FK → users.id actor_id bigint&#10;action varchar&#10;version integer&#10;payload text&#10;created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_1"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_10_2" value="desk_institutional_links" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="15595" y="3815" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_10_2_attrs" value="PK id uuid&#10;stage varchar&#10;entity varchar&#10;purpose varchar&#10;url text&#10;contact varchar NULL&#10;status varchar&#10;version integer&#10;source_reference text&#10;verified_at timestamptz NULL&#10;FK → users.id NULL verified_by bigint NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_2"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_10_3" value="desk_messages" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="16245" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_3_attrs" value="PK id uuid&#10;FK → desk_requests.id UNIQUE request_id uuid&#10;FK → users.id UNIQUE actor_id bigint&#10;UNIQUE client_key uuid&#10;body text&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_3"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_4" value="desk_notifications" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="4130.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_4_attrs" value="PK id bigint&#10;FK → desk_events.id UNIQUE event_id uuid&#10;FK → users.id UNIQUE user_id bigint&#10;title varchar&#10;href varchar&#10;UNIQUE read_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_4"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_5" value="desk_payments" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14945" y="4130.0" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_10_5_attrs" value="PK id uuid&#10;FK → desk_requests.id request_id uuid&#10;UNIQUE reference varchar&#10;amount numeric&#10;currency varchar&#10;source_reference text&#10;status varchar&#10;FK → documents.id NULL document_id uuid NULL&#10;FK → users.id NULL verified_by bigint NULL&#10;reason text NULL&#10;version integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_5"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_10_6" value="desk_requests" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="15595" y="4130.0" width="455" height="314" as="geometry" /></mxCell><mxCell id="new_10_6_attrs" value="PK id uuid&#10;FK → desk_cases.id UNIQUE case_id uuid&#10;FK → desk_service_versions.id service_version_id uuid&#10;FK → users.id NULL analyst_id bigint NULL&#10;status varchar&#10;version integer&#10;UNIQUE client_key uuid&#10;payload text&#10;UNIQUE protocol varchar NULL&#10;submitted_snapshot text NULL&#10;editable_fields jsonb NULL&#10;submitted_at timestamptz NULL&#10;due_at timestamptz NULL&#10;closed_at timestamptz NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_6"><mxGeometry x="0" y="38" width="455" height="276" as="geometry" /></mxCell><mxCell id="new_10_7" value="desk_revisions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="16245" y="4130.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_7_attrs" value="PK id bigint&#10;FK → desk_requests.id UNIQUE request_id uuid&#10;UNIQUE version integer&#10;snapshot text&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_7"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_8" value="desk_service_versions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="4479.0" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_10_8_attrs" value="PK id uuid&#10;UNIQUE code varchar&#10;UNIQUE version integer&#10;status varchar&#10;definition jsonb&#10;source jsonb&#10;FK → users.id author_id bigint&#10;FK → users.id NULL published_by bigint NULL&#10;published_at timestamptz NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_8"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="new_10_9" value="partnership_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14945" y="4479.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_9_attrs" value="PK id uuid&#10;FK → portal_partnerships.id partnership_id bigint&#10;FK → users.id actor_id bigint&#10;event_type varchar&#10;aggregate_version integer&#10;payload jsonb&#10;occurred_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_9"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_10" value="partnership_interests" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="15595" y="4479.0" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_10_10_attrs" value="PK id bigint&#10;FK → portal_partnerships.id UNIQUE partnership_id bigint&#10;FK → users.id UNIQUE user_id bigint&#10;FK → organizations.id NULL organization_id uuid NULL&#10;proposal text&#10;status varchar&#10;version integer&#10;payload jsonb&#10;assessment jsonb&#10;decision_reason text NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_10"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_10_11" value="partnership_locations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="16245" y="4479.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_11_attrs" value="PK id bigint&#10;FK → portal_partnerships.id UNIQUE partnership_id bigint&#10;FK → geo_locations.id UNIQUE geo_location_id uuid&#10;UNIQUE role varchar&#10;UNIQUE source_reference text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_11"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_12" value="partnership_messages" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="4760.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_12_attrs" value="PK id bigint&#10;FK → partnership_rooms.id UNIQUE room_id bigint&#10;FK → users.id UNIQUE author_id bigint&#10;UNIQUE client_key uuid&#10;body text&#10;UNIQUE created_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_12"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_13" value="partnership_milestones" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14945" y="4760.0" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_10_13_attrs" value="PK id bigint&#10;FK → partnership_rooms.id room_id bigint&#10;FK → users.id responsible_id bigint&#10;title varchar&#10;due_date date NULL&#10;status varchar&#10;evidence text NULL&#10;version integer&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_13"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_10_14" value="partnership_notifications" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="15595" y="4760.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_14_attrs" value="PK id bigint&#10;FK → partnership_events.id UNIQUE event_id uuid&#10;FK → users.id UNIQUE user_id bigint&#10;title varchar&#10;href varchar&#10;UNIQUE read_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_14"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_15" value="partnership_origins" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="16245" y="4760.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_15_attrs" value="PK id bigint&#10;FK → portal_partnerships.id UNIQUE partnership_id bigint&#10;UNIQUE type varchar&#10;UNIQUE target_id varchar" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_15"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_10_16" value="partnership_rooms" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="14295" y="5007.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_10_16_attrs" value="PK id bigint&#10;FK → partnership_interests.id UNIQUE interest_id bigint&#10;status varchar&#10;version integer&#10;agreement jsonb NULL&#10;created_at timestamptz NULL&#10;updated_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_10_16"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="newrel_10_1" edge="1" parent="1" source="new_10_0" target="new_10_1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_2" edge="1" parent="1" source="new_10_6" target="new_10_1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_3" edge="1" parent="1" source="new_10_6" target="new_10_3" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_4" edge="1" parent="1" source="new_10_1" target="new_10_4" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_5" edge="1" parent="1" source="new_10_6" target="new_10_5" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_6" edge="1" parent="1" source="new_10_0" target="new_10_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_7" edge="1" parent="1" source="new_10_8" target="new_10_6" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_8" edge="1" parent="1" source="new_10_6" target="new_10_7" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_9" edge="1" parent="1" source="new_10_16" target="new_10_12" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_10" edge="1" parent="1" source="new_10_16" target="new_10_13" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_11" edge="1" parent="1" source="new_10_9" target="new_10_14" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="newrel_10_12" edge="1" parent="1" source="new_10_10" target="new_10_16" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_11" value="GOVERNAÇÃO E INTEGRAÇÕES" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="17115" y="3755" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_11" value="Modelo de dados — Governação e integrações" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="17135" y="3658" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_11" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="17135" y="3708" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_11_0" value="audit_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="3815" width="455" height="263" as="geometry" /></mxCell><mxCell id="new_11_0_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;FK → users.id NULL actor_user_id bigint NULL&#10;entity_type text&#10;entity_id uuid NULL&#10;action text&#10;occurred_at timestamptz&#10;before_data jsonb NULL&#10;after_data jsonb NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_0"><mxGeometry x="0" y="38" width="455" height="225" as="geometry" /></mxCell><mxCell id="new_11_1" value="cache" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_11_1_attrs" value="PK key varchar&#10;value text&#10;expiration bigint" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_1"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_11_2" value="cache_locks" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="18445" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_11_2_attrs" value="PK key varchar&#10;owner varchar&#10;expiration bigint" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_2"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_11_3" value="failed_jobs" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19095" y="3815" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_11_3_attrs" value="PK id bigint&#10;UNIQUE uuid varchar&#10;connection varchar&#10;queue varchar&#10;payload text&#10;exception text&#10;failed_at timestamp" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_3"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_11_4" value="inbox_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="4113.0" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_11_4_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;UNIQUE message_id text&#10;event_type text&#10;payload jsonb&#10;status text&#10;received_at timestamptz&#10;processed_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_4"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_11_5" value="job_batches" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="4113.0" width="455" height="212" as="geometry" /></mxCell><mxCell id="new_11_5_attrs" value="PK id varchar&#10;name varchar&#10;total_jobs integer&#10;pending_jobs integer&#10;failed_jobs integer&#10;failed_job_ids text&#10;options text NULL&#10;cancelled_at integer NULL&#10;created_at integer&#10;finished_at integer NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_5"><mxGeometry x="0" y="38" width="455" height="174" as="geometry" /></mxCell><mxCell id="new_11_6" value="jobs" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="18445" y="4113.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_11_6_attrs" value="PK id bigint&#10;queue varchar&#10;payload text&#10;attempts smallint&#10;reserved_at integer NULL&#10;available_at integer&#10;created_at integer" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_6"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_11_7" value="outbox_events" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19095" y="4113.0" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_11_7_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;aggregate_type text&#10;aggregate_id uuid&#10;event_type text&#10;payload jsonb&#10;status text&#10;available_at timestamptz&#10;published_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_7"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="new_11_8" value="passkeys" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="4445.0" width="455" height="178" as="geometry" /></mxCell><mxCell id="new_11_8_attrs" value="PK id bigint&#10;FK → users.id user_id bigint&#10;name varchar&#10;UNIQUE credential_id varchar&#10;credential json&#10;last_used_at timestamp NULL&#10;created_at timestamp NULL&#10;updated_at timestamp NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_8"><mxGeometry x="0" y="38" width="455" height="140" as="geometry" /></mxCell><mxCell id="new_11_9" value="password_reset_tokens" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="4445.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_11_9_attrs" value="PK email varchar&#10;token varchar&#10;created_at timestamp NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_9"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_11_10" value="reconciliation_issues" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="18445" y="4445.0" width="455" height="314" as="geometry" /></mxCell><mxCell id="new_11_10_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → sync_runs.id sync_run_id uuid&#10;entity_type text&#10;external_id_ref text NULL&#10;issue_type text&#10;severity text&#10;status text&#10;details jsonb" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_10"><mxGeometry x="0" y="38" width="455" height="276" as="geometry" /></mxCell><mxCell id="new_11_11" value="sessions" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19095" y="4445.0" width="455" height="170" as="geometry" /></mxCell><mxCell id="new_11_11_attrs" value="PK id varchar&#10;user_id bigint NULL&#10;ip_address varchar NULL&#10;user_agent text NULL&#10;payload text&#10;last_activity integer" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_11"><mxGeometry x="0" y="38" width="455" height="132" as="geometry" /></mxCell><mxCell id="new_11_12" value="simulations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17145" y="4794.0" width="455" height="280" as="geometry" /></mxCell><mxCell id="new_11_12_attrs" value="PK id uuid&#10;FK → questionnaire_versions.id NULL questionnaire_version_id uuid NULL&#10;FK → users.id NULL owner_user_id bigint NULL&#10;FK → organizations.id NULL organization_id uuid NULL&#10;anonymous_token_hash char NULL&#10;version_no integer&#10;status text&#10;input_snapshot jsonb&#10;result_snapshot jsonb NULL&#10;calculation_snapshot jsonb NULL&#10;error_code text NULL&#10;deleted_at timestamptz NULL&#10;created_at timestamptz&#10;updated_at timestamptz" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_12"><mxGeometry x="0" y="38" width="455" height="242" as="geometry" /></mxCell><mxCell id="new_11_13" value="sync_runs" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="17795" y="4794.0" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_11_13_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;integration_name text&#10;direction text&#10;status text&#10;started_at timestamptz&#10;ended_at timestamptz NULL&#10;totals jsonb" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_11_13"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="newrel_11_1" edge="1" parent="1" source="new_11_13" target="new_11_10" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="area_12" value="IDENTIDADE E ACESSO" style="rounded=1;whiteSpace=wrap;html=1;align=left;verticalAlign=top;spacing=12;fontSize=16;fontStyle=1;fontColor=#334155;fillColor=#eff6ff;strokeColor=#93c5fd;dashed=1;opacity=45;" vertex="1" parent="1"><mxGeometry x="19965" y="3755" width="2680" height="2085" as="geometry" /></mxCell><mxCell id="heading_12" value="Modelo de dados — Identidade e acesso" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=24;fontStyle=1;fontColor=#0f172a;" vertex="1" parent="1"><mxGeometry x="19985" y="3658" width="2600" height="45" as="geometry" /></mxCell><mxCell id="note_12" value="As entidades e referências abaixo vêm das migrations e do manifesto de esquema. FKs para entidades do diagrama principal ou de outra página ficam identificadas no campo." style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=11;fontColor=#475569;" vertex="1" parent="1"><mxGeometry x="19985" y="3708" width="2600" height="42" as="geometry" /></mxCell><mxCell id="new_12_0" value="consents" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="19995" y="3815" width="455" height="297" as="geometry" /></mxCell><mxCell id="new_12_0_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → users.id NULL user_id bigint NULL&#10;subject_ref text&#10;purpose text&#10;status text&#10;granted_at timestamptz NULL&#10;withdrawn_at timestamptz NULL" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_12_0"><mxGeometry x="0" y="38" width="455" height="259" as="geometry" /></mxCell><mxCell id="new_12_1" value="memberships" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="20645" y="3815" width="455" height="246" as="geometry" /></mxCell><mxCell id="new_12_1_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;FK → users.id UNIQUE user_id bigint&#10;FK → organizations.id UNIQUE organization_id uuid&#10;role text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_12_1"><mxGeometry x="0" y="38" width="455" height="208" as="geometry" /></mxCell><mxCell id="new_12_2" value="organizations" style="swimlane;childLayout=stackLayout;horizontal=1;startSize=38;horizontalStack=0;rounded=1;fontSize=14;fontStyle=1;strokeWidth=2;resizeParent=0;resizeLast=1;shadow=0;dashed=0;align=center;arcSize=4;whiteSpace=wrap;html=1;" vertex="1" parent="1"><mxGeometry x="21295" y="3815" width="455" height="229" as="geometry" /></mxCell><mxCell id="new_12_2_attrs" value="PK id uuid&#10;UNIQUE source_system text&#10;UNIQUE external_id text NULL&#10;version_no integer&#10;data_classification text&#10;correlation_id uuid NULL&#10;created_at timestamptz&#10;updated_at timestamptz&#10;deleted_at timestamptz NULL&#10;name text&#10;organization_type text" style="align=left;strokeColor=none;fillColor=none;spacingLeft=6;spacingRight=4;spacingTop=4;fontSize=11;verticalAlign=top;rotatable=0;part=1;html=1;whiteSpace=wrap;" vertex="1" parent="new_12_2"><mxGeometry x="0" y="38" width="455" height="191" as="geometry" /></mxCell><mxCell id="newrel_12_1" edge="1" parent="1" source="new_12_2" target="new_12_1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#334155;strokeWidth=1.4;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="added_fk_24" edge="1" parent="1" source="tbl_opportunities" target="tbl_opportunity_profiles" value="opportunity_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_1" edge="1" parent="1" source="new_6_1" target="new_5_0" value="aftercare_plan_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_14" edge="1" parent="1" source="new_5_3" target="new_4_3" value="document_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_21" edge="1" parent="1" source="tbl_economic_clusters" target="new_1_3" value="cluster_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_23" edge="1" parent="1" source="new_7_2" target="new_5_4" value="education_opportunity_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_24" edge="1" parent="1" source="tbl_existing_businesses" target="new_4_2" value="existing_business_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_25" edge="1" parent="1" source="tbl_existing_businesses" target="new_4_3" value="business_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_26" edge="1" parent="1" source="tbl_existing_businesses" target="new_4_4" value="business_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_27" edge="1" parent="1" source="tbl_existing_businesses" target="new_4_7" value="existing_business_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_29" edge="1" parent="1" source="tbl_existing_businesses" target="new_8_2" value="business_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_30" edge="1" parent="1" source="tbl_geo_locations" target="new_2_11" value="geo_location_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_31" edge="1" parent="1" source="tbl_geo_locations" target="new_7_3" value="geo_location_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_34" edge="1" parent="1" source="tbl_geo_locations" target="new_7_6" value="geo_location_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_36" edge="1" parent="1" source="tbl_interest_requests" target="new_1_0" value="interest_request_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_41" edge="1" parent="1" source="tbl_investment_items" target="new_3_0" value="item_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_43" edge="1" parent="1" source="new_3_1" target="new_8_12" value="legal_source_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_44" edge="1" parent="1" source="tbl_investment_reference_options" target="new_1_6" value="category_id, option_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_46" edge="1" parent="1" source="tbl_investment_submissions" target="new_1_5" value="submission_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_47" edge="1" parent="1" source="tbl_investment_submissions" target="new_1_6" value="submission_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_48" edge="1" parent="1" source="tbl_investment_submissions" target="new_5_5" value="submission_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_49" edge="1" parent="1" source="tbl_investment_submissions" target="new_1_7" value="submission_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_50" edge="1" parent="1" source="tbl_investment_submissions" target="new_1_9" value="submission_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_52" edge="1" parent="1" source="tbl_investment_zones" target="new_1_9" value="zone_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_53" edge="1" parent="1" source="tbl_investment_zones" target="new_3_3" value="zone_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_55" edge="1" parent="1" source="tbl_investment_zones" target="new_3_6" value="zone_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_56" edge="1" parent="1" source="new_6_7" target="new_5_7" value="journey_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_57" edge="1" parent="1" source="tbl_investors" target="new_6_1" value="investor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_59" edge="1" parent="1" source="tbl_investors" target="new_6_6" value="investor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_60" edge="1" parent="1" source="tbl_investors" target="new_5_6" value="investor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_61" edge="1" parent="1" source="tbl_investors" target="new_6_7" value="investor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_76" edge="1" parent="1" source="new_12_2" target="new_2_1" value="organization_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_78" edge="1" parent="1" source="new_5_10" target="new_10_9" value="partnership_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_80" edge="1" parent="1" source="tbl_projects" target="new_3_0" value="project_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_81" edge="1" parent="1" source="tbl_projects" target="new_7_3" value="project_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_83" edge="1" parent="1" source="tbl_projects" target="new_5_14" value="project_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_84" edge="1" parent="1" source="tbl_sectors" target="new_2_7" value="sector_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_89" edge="1" parent="1" source="new_11_12" target="new_8_1" value="simulation_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_90" edge="1" parent="1" source="new_11_12" target="new_8_5" value="simulation_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_91" edge="1" parent="1" source="new_11_12" target="new_8_6" value="simulation_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_92" edge="1" parent="1" source="new_11_12" target="new_8_7" value="simulation_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_93" edge="1" parent="1" source="new_11_12" target="new_8_9" value="simulation_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_94" edge="1" parent="1" source="new_11_12" target="new_8_10" value="simulation_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_98" edge="1" parent="1" source="tbl_users" target="new_9_3" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_99" edge="1" parent="1" source="tbl_users" target="new_9_4" value="submitted_by" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_100" edge="1" parent="1" source="tbl_users" target="new_5_1" value="linked_by" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_101" edge="1" parent="1" source="tbl_users" target="new_10_1" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_102" edge="1" parent="1" source="tbl_users" target="new_10_8" value="author_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_103" edge="1" parent="1" source="tbl_users" target="new_7_1" value="created_by" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_104" edge="1" parent="1" source="tbl_users" target="new_4_3" value="representative_user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_105" edge="1" parent="1" source="tbl_users" target="new_4_5" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_106" edge="1" parent="1" source="tbl_users" target="new_4_6" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_108" edge="1" parent="1" source="tbl_users" target="new_2_10" value="editor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_109" edge="1" parent="1" source="tbl_users" target="new_2_11" value="editor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_110" edge="1" parent="1" source="tbl_users" target="new_2_12" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_112" edge="1" parent="1" source="tbl_users" target="new_1_1" value="user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_113" edge="1" parent="1" source="tbl_users" target="new_1_2" value="user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_114" edge="1" parent="1" source="tbl_users" target="new_3_1" value="owner_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_115" edge="1" parent="1" source="tbl_users" target="new_1_7" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_117" edge="1" parent="1" source="tbl_users" target="new_3_2" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_118" edge="1" parent="1" source="tbl_users" target="new_3_3" value="uploaded_by" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_119" edge="1" parent="1" source="tbl_users" target="new_3_5" value="editor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_120" edge="1" parent="1" source="tbl_users" target="new_3_7" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_121" edge="1" parent="1" source="tbl_users" target="new_1_10" value="user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_122" edge="1" parent="1" source="tbl_users" target="new_7_3" value="submitted_by" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_123" edge="1" parent="1" source="tbl_users" target="new_4_9" value="user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_124" edge="1" parent="1" source="tbl_users" target="new_4_10" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_126" edge="1" parent="1" source="tbl_users" target="new_5_9" value="owner_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_127" edge="1" parent="1" source="tbl_users" target="new_10_9" value="actor_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_128" edge="1" parent="1" source="tbl_users" target="new_10_13" value="responsible_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_129" edge="1" parent="1" source="tbl_users" target="new_11_8" value="user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_130" edge="1" parent="1" source="tbl_users" target="new_5_10" value="user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_131" edge="1" parent="1" source="tbl_users" target="new_5_13" value="approved_by" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_132" edge="1" parent="1" source="tbl_users" target="new_8_2" value="linked_by, owner_user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_133" edge="1" parent="1" source="tbl_users" target="new_8_11" value="actor_user_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_134" edge="1" parent="1" source="tbl_users" target="new_8_12" value="author_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_135" edge="1" parent="1" source="tbl_users" target="new_7_6" value="submitted_by" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell><mxCell id="final_fk_136" edge="1" parent="1" source="new_2_17" target="new_1_3" value="value_chain_id" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;startArrow=ERone;startFill=0;startSize=10;endArrow=ERzeroToMany;endFill=0;endSize=10;strokeColor=#64748b;strokeWidth=1.2;fontSize=10;labelBackgroundColor=#ffffff;"><mxGeometry relative="1" as="geometry" /></mxCell></root>
</mxGraphModel>
</diagram>
</mxfile>