Status: PARTIAL — incomplete — unset metrics listed below; Currency: MXN; Amounts unit: millions; Forms: ✓ ✓ —
Report published: Not stored for this period — set financial_report_date on the row (EDGAR filingDate, KASE change_date, or manual_catalog).
Full financial report: Link
PDF (local): /home/ubuntu/projects/frontier/data/raw_pdfs/MX_LAB/2023-03-31_Q1_LAB.pdf
To recalculate statement detection and previews from the PDF, use this link The default link runs in the background: a status panel shows phase, elapsed time, rough ETA, CUDA vs CPU, and OOM hints, then loads the finished report. Heavy mode with refresh does this automatically so reverse proxies do not return 502. Add &sync=1 only for one long blocking request (not recommended). You can use ?refresh=1, ?recalc=1, ?nocache=1, or ?recompute=1 on the URL. (block in the browser until done: synchronous refresh)
Metric values use dashboard units where applicable; evidence is the stored snippet from the PDF text layer or OCR used during extraction.
| Metric | Value | Evidence / page extract |
|---|---|---|
| Revenue | 4 178.2 | Row: revenue (mln MXN, batch apply) · dashboard=4,178.200 mln — [DeepSeek] revenue (mln MXN, batch apply) |
| Operating profit | 803.8 | Row: operating_profit (mln MXN, batch apply) · dashboard=803.800 mln — [DeepSeek] operating_profit (mln MXN, batch apply) |
| D&A | 0 | Row: derived: same-row components · dashboard=0.000 mln — derived: same-row components |
| EBITDA | 803.8 | Row: computed as operating_profit + D&A (D&A not split out in source → 0) · dashboard=803.800 mln — computed as operating_profit + D&A (D&A not split out in source → 0) |
| Net profit | 358 | Row: net_profit (mln MXN, batch apply) · dashboard=358.000 mln — [DeepSeek] net_profit (mln MXN, batch apply) |
| Cash | — | — |
| Debt short | 0 | Row: debt_short (mln MXN, batch apply) · dashboard=0.000 mln — [DeepSeek] debt_short (mln MXN, batch apply) |
| Debt long | 0 | Row: debt_long (mln MXN, batch apply) · dashboard=0.000 mln — [DeepSeek] debt_long (mln MXN, batch apply) |
| Net debt | 0 | Components: short debt 0 + long debt 0 + other financial liab. 0 + NCI 0 − cash 0 = net debt 0.Row: net_debt (mln MXN, batch apply) · dashboard=0.000 mln — [DeepSeek] net_debt (mln MXN, batch apply) |
| Operating CF | — | — |
| Investing CF | — | — |
| Assets | — | — |
| Equity | — | — |
| ✓ | Net debt formula | net_debt 0 matches |debt_short|+|debt_long|+|other|+|NCI|−|cash| = 0. |
| ✓ | EBITDA = OP + D&A | EBITDA (804) ≈ OP (804) + D&A (0) = 804. |
| ✓ | Net profit vs operating profit | Net profit (358) sits within a plausible band vs operating profit (804). |
| Form | Pages |
|---|---|
| P&L | 4, 5, 6 |
| BS | — |
| CF | — |
Highlights Yellow row = matched stored evidence label; orange cell = exact number used for that metric (hover row for details). Revenue Operating profit D&A EBITDA Net profit cash debt_short debt_long Assets Equity Operating CF Investing CF
Green / amber / red bars on the label column mark subtotal rows where summed detail lines match the reported total (heuristic). The table under each reconstructed grid lists every check (Σ detail vs reported, status).
Extracted metrics for this form (this period row)
| Metric | Value |
|---|---|
| Revenue | 4 178.2 |
| Operating profit | 803.8 |
| EBITDA | 803.8 |
| Net profit | 358 |
| D&A | 0 |
Tables and checks run on 2 of 3 PDF pages for this form (timeout budget). Raise REPORT_REVIEW_HEAVY_RECON_PAGES for more.
No Camelot table — OCR (v8) below.
v8 OCR page 4: empty rows.
No Camelot table — OCR (v8) below.
v8 OCR page 5: empty rows.